JPS62210542A - Register selecting system - Google Patents

Register selecting system

Info

Publication number
JPS62210542A
JPS62210542A JP5316786A JP5316786A JPS62210542A JP S62210542 A JPS62210542 A JP S62210542A JP 5316786 A JP5316786 A JP 5316786A JP 5316786 A JP5316786 A JP 5316786A JP S62210542 A JPS62210542 A JP S62210542A
Authority
JP
Japan
Prior art keywords
operand
register
microprogram
address
micro
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP5316786A
Other languages
Japanese (ja)
Other versions
JPH0738157B2 (en
Inventor
Koji Iida
飯田 弘司
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP5316786A priority Critical patent/JPH0738157B2/en
Publication of JPS62210542A publication Critical patent/JPS62210542A/en
Publication of JPH0738157B2 publication Critical patent/JPH0738157B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Abstract

PURPOSE:To refer to plural registers by providing a base register where a part of a micro operand address is stored as the base address before the start of execution of a software instruction. CONSTITUTION:The micro operand address given from a decoding part is transferred to a base register 1 and an operand pointer 3 through a signal line 12. A write permitting signal INSTBGN 21 is outputted when execution of a preceding software instruction is terminated, and values of the register 1 and the pointer 3 are settled at the time of the execution of a current software instruction is started. When the register 1 is referred, information of a microprogram latch 2 and the register 1 are used as the micro operand address to refer to a variable number of registers.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はレジスタ選択方式に関し、特にマイクロプログ
ラム制御の情報処理装置におけるレジスタ選択方式に関
する。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a register selection method, and particularly to a register selection method in a microprogram-controlled information processing device.

〔従来の技術〕[Conventional technology]

従来、マイクロプログラム制御の情報処理装置における
レジスタ選択方式では、マイクロプログラム中で参照す
るレジスタの指定はマイクロプログラム自身がマイクロ
オペランドアドレスをオペランドポインタに格納し、ま
たはデコード部で実行するソフトウェア命令の解読を行
い得られたマイクロオペランドアドレスをソフトウェア
命令の実行開始に先立ってオペランドポインタに格納し
、このオペランドポインタのマイクロオペランドアドレ
スをマイクロオペランドバスを介してマイクロオペラン
ドデコーダに転送することによって行われていた。
Conventionally, in register selection systems in microprogram-controlled information processing devices, registers to be referenced in a microprogram are designated by the microprogram itself by storing the microoperand address in an operand pointer or by decoding a software instruction to be executed by a decoder. This is done by storing the obtained micro-operand address in an operand pointer before starting execution of the software instruction, and transferring the micro-operand address of this operand pointer to the micro-operand decoder via the micro-operand bus.

〔発明が解決しようとする問題点〕[Problem that the invention seeks to solve]

上述した従来のマイクロプログラム制御の情報処理装置
におけるレジスタ選択方式では、オペランドポインタ中
の1つのマイクロオペランドアドレスに対して参照でき
るレジスタは1つに限られていたので、例えば多倍長演
算命令のように1オペランドとして複数のレジスタを参
照する場合にはマイクロプログラムにより逐次オペラン
ドポインタの値を書き換えなければならず、制御記憶の
容量を増加させるとともにソフトウェア命令の実行時間
を増大させる欠点がある。
In the register selection method in the conventional microprogram-controlled information processing device described above, only one register can be referenced for one microoperand address in the operand pointer. When referring to a plurality of registers as one operand, the value of the operand pointer must be sequentially rewritten by a microprogram, which has the drawback of increasing the capacity of control memory and increasing the execution time of software instructions.

本発明の目的は、上述の点に鑑み、オペランドポインタ
中の1つのマイクロオペランドアドレスに対して複数の
レジスタを参照することができるレジスタ選択方式を提
供することにある。
In view of the above points, an object of the present invention is to provide a register selection method that can refer to a plurality of registers for one micro-operand address in an operand pointer.

〔問題点を解決するための手段〕[Means for solving problems]

本発明のレジスタ選択方式は、マイクロプログラムを格
納する制御記憶と、デコード部でソフトウェア命令を解
読して得られたマイクロオペランドアドレスを前記ソフ
トウェア命令の実行開始時に格納するかまたは前記マイ
クロプログラムの制御によりデータバスの内容を格納す
るオペランドポインタと、前記マイクロオペランドアド
レスをマイクロオペランドデコーダに転送するマイクロ
オペランドバスとを備え、前記マイクロオペランドアド
レスを前記マイクロオペランドデコーダが解読すること
により参照すべきレジスタをアクセスするレジスタ選択
方式において、前記マイクロプログラムをその実行前毎
に保持するマイクロプログラムラッチと、前記マイクロ
オペランドアドレスの一部をベースアドレスとしてソフ
トウェア命令の実行開始に先立って格納するベースレジ
スタと、前記データバスから前記ベースレジスタへのデ
ータ転送ならびに前記マイクロプログラムラッチおよび
前記ベースレジスタから前記マイクロオペランドバスへ
の同時データ転送を制御するマイクロプログラム制御手
段とを有する。
The register selection method of the present invention includes a control memory that stores a microprogram, and a microoperand address obtained by decoding a software instruction in a decode section, which is stored at the start of execution of the software instruction, or by controlling the microprogram. It includes an operand pointer that stores the contents of a data bus, and a micro-operand bus that transfers the micro-operand address to a micro-operand decoder, and the micro-operand decoder decodes the micro-operand address to access a register to be referenced. In the register selection method, a microprogram latch that holds the microprogram each time before its execution, a base register that stores a part of the microoperand address as a base address before starting execution of a software instruction, and a microprogram control means for controlling data transfer to the base register and simultaneous data transfer from the microprogram latch and the base register to the microoperand bus.

〔実施例〕〔Example〕

次に、本発明について図面を参照して説明する。 Next, the present invention will be explained with reference to the drawings.

図は本発明の一実施例を示す構成図である0本実施例の
レジスタ選択方式は、マイクロオペランドアドレスのベ
ースアドレスを保持するベースレジスタ1と、制御記憶
(図示せず)からのマイクロプログラムを保持するマイ
クロプログラムラッチ2と、マイクロオペランドアドレ
スを保持するオペランドポインタ3と、マイクロプログ
ラムによって制御されるデータバス11と、ソースオペ
ランドに対するマイクロオペランドアドレスをマイクロ
オペランドデコーダ(図示せず)に転送するマイクロオ
ペランドソースバス18と、デストネーシッンオペラン
ドに対するマイクロオペランドアドレスをマイクロオペ
ランドデコーダに転送するマイクロオベランドデストネ
ーシッンバス19とから、その主要部が構成されている
The figure is a block diagram showing one embodiment of the present invention.The register selection method of this embodiment consists of a base register 1 that holds the base address of the microoperand address, and a microprogram from the control memory (not shown). A microprogram latch 2 for holding a microoperand address, an operand pointer 3 for holding a microoperand address, a data bus 11 controlled by the microprogram, and a microoperand for transferring the microoperand address for a source operand to a microoperand decoder (not shown). Its main parts are composed of a source bus 18 and a microoperand destination bus 19 that transfers a microoperand address for a destination operand to a microoperand decoder.

オペランドポインタ3は、7ビツト構成をとっており、
入力がデータバス11叫接続されているとともに、信号
線12を介してデコード部(図示せず)に接続されてい
る。オペランドポインタ3の出力は、マイクロオペラン
ドソースバス18およびマイクロオペランドデストネー
ションバス19に接続されている。
Operand pointer 3 has a 7-bit configuration,
An input is connected to a data bus 11, and is also connected to a decoding section (not shown) via a signal line 12. The output of operand pointer 3 is connected to micro-operand source bus 18 and micro-operand destination bus 19.

マイクロプログラムラッチ2は、ソースオペランド指定
用およびデストネーションオペランド指定用の各2ビツ
トずつ用意され、4ビツトの構成をとっている。マイク
ロプログラムラッチ2の入力は信号線13を介して制御
記憶に接続され、出力は信号線15ならびに出力信号線
16および17を介してマイクロオペランドソースバス
18およびマイクロオペランドデストネーションバス1
9に接続されている。
The microprogram latch 2 has a 4-bit configuration, with 2 bits each for specifying a source operand and 2 bits for specifying a destination operand. The input of the microprogram latch 2 is connected to the control store via a signal line 13, and the output is connected to a microoperand source bus 18 and a microoperand destination bus 1 via a signal line 15 and output signal lines 16 and 17.
9 is connected.

ベースレジスタ1は、5ビツト長で構成されており、入
力が信号線12を介してデコード部に接続されていると
ともに、データバス11に接続されている。ベースレジ
スタ1の出力は、信号線14ならびに出力信号線16お
よび17を介してマイクロオベランドソースバス18お
よびマイクロオベランドデストネーションバス19に接
続されている。
The base register 1 has a length of 5 bits, and has an input connected to a decoding section via a signal line 12, and is also connected to a data bus 11. The output of base register 1 is connected to microoverand source bus 18 and microoverando destination bus 19 via signal line 14 and output signal lines 16 and 17.

なお、5ビツトの信号線14と4ビツトの信号線15の
各2ビツトとが一緒になって各7ビントの信号線16お
よび17となっている。
Note that two bits each of the 5-bit signal line 14 and the 4-bit signal line 15 are combined to form 7-bit signal lines 16 and 17.

また、符号20〜23はベースレジスタ1、マイクロプ
ログラムラッチ2およびオペランドポインタ3に対する
書込み許可信号、24〜27はベースレジスタ1、マイ
クロプログラムラッチ2およびオペランドポインタ3に
対する出力許可信号をそれぞれ示す。
Reference numerals 20 to 23 indicate write permission signals for the base register 1, microprogram latch 2, and operand pointer 3, and 24 to 27 indicate output permission signals for the base register 1, microprogram latch 2, and operand pointer 3, respectively.

次に、このように構成された本実施例のレジスタ選択方
式の動作について説明する。
Next, the operation of the register selection system of this embodiment configured as described above will be explained.

まず、デコード部からソフトウェア命令のマイクロオペ
ランドアドレスを与えられる場合について説明する。
First, a case will be described in which a micro-operand address of a software instruction is given from the decoding section.

デコード部から与えられるマイクロオペランドアドレス
は、信号線12を介してベースレジスタ1およびオペラ
ンドポインタ3に転送される。書込み許可信号(INS
TBGN)21は、前ソフトウェア命令の実行終了時に
出力され、現ソフトウェア命令の実行開始時にはベース
レジスタ1およびオペランドポインタ3の値は確定して
いる。
The microoperand address given from the decoding section is transferred to the base register 1 and operand pointer 3 via the signal line 12. Write permission signal (INS
TBGN) 21 is output at the end of execution of the previous software instruction, and the values of base register 1 and operand pointer 3 are fixed at the start of execution of the current software instruction.

いま仮に、マイクロオペランドアドレスとして汎用レジ
スタ(OR)7を指す値である0000111B (B
は2進数であることを示す、以下同様)がデコード部で
指定されたとすると、オペランドポインタ3には000
0111 Bが格納されており、ベースレジスタ1には
00001 Bが格納されている。
Let's now assume that the microoperand address is 0000111B (B
is a binary number (the same applies hereafter) is specified in the decoding section, operand pointer 3 contains 000.
0111B is stored, and base register 1 stores 00001B.

現ソフトウェア命令が多倍長演算命令で1オペランドと
して4つのレジスタの参照が必要であるときには、マイ
クロプログラムではベースレジスタ1を用いたオペラン
ド指定を行う、ベースレジスタ1ぺのデータ転送は、デ
ータバス11を介してマイクロプログラム制御手段によ
って書込み許可信号(BRWR)20を働かせて行う、
ベースレジスタlへの書込みは、ソフトウェア命令の実
行開始時やリードルーチン中で行うことができる。
When the current software instruction is a multiple-length operation instruction that requires referencing four registers as one operand, the microprogram specifies the operand using base register 1. Data transfer for base register 1 is performed using data bus 11. The write permission signal (BRWR) 20 is activated by the microprogram control means via the
Writing to base register l can be performed at the start of execution of a software instruction or during a read routine.

ベースレジスタ1には、ベースアドレスとして0000
1 Bが保持されているので、OR4〜GR7が参照可
能である。これらGRのうちのいずれのレジスタを参照
するかは、マイクロプロゲラムラフチ2に保持されてい
る値によって定まる。
Base register 1 contains 0000 as the base address.
Since 1B is held, OR4 to GR7 can be referenced. Which register among these GRs is referred to is determined by the value held in the microprogerum rafter 2.

マイクロプログラム中でGR5の参照が指定されていた
とすれば、マイクロプログラムラッチ2のソースオペラ
ンド側にはOIBが保持され、マイクロプログラム制御
手段は出力許可信号(BR−3−3EL)25を働かせ
てマイクロオペランドソースバス18に0000101
 Bを出力する。このマイクロオペランドソースバスI
B上のマイクロオペランドアドレスをマイクロオペラン
ドデコーダがデコードしてGR5に対する参照を行うこ
とができる。
If reference to GR5 is specified in the microprogram, OIB is held on the source operand side of the microprogram latch 2, and the microprogram control means activates the output enable signal (BR-3-3EL) 25 to read the microprogram. 0000101 to operand source bus 18
Output B. This micro-operand source bus I
The micro-operand address on B can be decoded by the micro-operand decoder to make a reference to GR5.

続いて、マイクロプログラム中でGR6の参照が指定さ
れていたとすれば、マイクロプログラムラッチ2のソー
スオペランド側にはIQBが保持され、マイクロオペラ
ンドソースバス18には0000110Bが出力される
。したがって、GR6の参照が行われる。
Subsequently, if reference to GR6 is designated in the microprogram, IQB is held on the source operand side of the microprogram latch 2, and 0000110B is output to the microoperand source bus 18. Therefore, a reference to GR6 is made.

以下同様にして、オペランドポインタ3を書き換えるこ
となく、ベースレジスタ1に格納されたベースアドレス
を用いることにより多倍長演算命令におけるオペランド
参照を順次行うことができる。
Similarly, by using the base address stored in the base register 1 without rewriting the operand pointer 3, operand references in multiple-precision operation instructions can be sequentially performed.

ソフトウェア命令が通常の命令で1オペランドについて
ルジスタの参照を行うときには、マイクロプログラムで
はオペランドポインタ3を用いたオペランド指定を行う
、オペランドポインタ3には0000111 Bが保持
されているので、GR7の参照が可能である。マイクロ
プログラム制御手段は、信号m (PR−3−3EL)
24を働かセテGR7に対する参照を行うことができる
When a software instruction is a normal instruction and refers to the register for one operand, the microprogram specifies the operand using operand pointer 3. Since 0000111B is held in operand pointer 3, GR7 can be referenced. It is. The microprogram control means uses the signal m (PR-3-3EL)
24 can be used to make a reference to Sete GR7.

なお、上記動作の説明では、ソースオペランドとしてレ
ジスタを参照する場合について述べたが、デストネーシ
ッンオペランドとしてレジスタを参照する場合には、出
力許可信号25および240代わりに、出力許可信号線
(BR−D−3EL)27おヨヒ出力許可信号!I (
PR−D−3EL)26を働かせるようにすればよい。
Note that in the above description of the operation, the case where a register is referred to as a source operand is described, but when a register is referred to as a destination operand, the output permission signal line (BR -D-3EL) 27 Oyohi output permission signal! I (
PR-D-3EL) 26 may be activated.

また、オペランドポインタ3およびベースレジスタ1は
データバス11にも接続されているのでマイクロプログ
ラム制御手段により信号線(BRWR)20や信号線(
PRWR)23を働かせてオペランドポインタ3および
ベースレジスタ1の内容を書き換えることができ、この
ようにすることによってマイクロプログラムの実行中に
おいてもオペランドポインタ中の1つのマイクロオペラ
ンドアドレスについて複数のレジスタを参照することが
できる。
In addition, since the operand pointer 3 and the base register 1 are also connected to the data bus 11, the signal line (BRWR) 20 and the signal line (
PRWR) 23 can be used to rewrite the contents of operand pointer 3 and base register 1, and by doing this, multiple registers can be referenced for one microoperand address in the operand pointer even during execution of the microprogram. be able to.

〔発明の効果〕〔Effect of the invention〕

以上説明したように本発明は、実行するマイクロプログ
ラムを保持するマイクロプログラムラッチとソフトウェ
ア命令の実行開始に先立ってマイクロオペランドアドレ
スのベースアドレスを保持するベースレジスタとを設け
ることにより、レジスタの参照を行うときにマイクロプ
ログラムラッチとベースレジスタとの情報をマイクロオ
ペランドアドレスとして用いることによって可変数のレ
ジスタを参照することが可能となり、制御記憶の容量の
減少と命令実行時間の短縮化とを図ることができる効果
がある。
As explained above, the present invention performs register reference by providing a microprogram latch that holds a microprogram to be executed and a base register that holds a base address of a microoperand address prior to starting execution of a software instruction. Sometimes, by using information from the microprogram latch and base register as a microoperand address, it becomes possible to refer to a variable number of registers, reducing the control memory capacity and instruction execution time. effective.

【図面の簡単な説明】[Brief explanation of drawings]

図は本発明のレジスタ選択方式の一実施例を示す構成図
である。 図において、 1・・・ベースレジスタ、 2・・・マイクロプログラムラッチ 3・・・オペランドポインタ、 11・・・データバス、 18・・・マイクロオペランドソースバス、19・・・
マイクロオペランドデストネーシロンバスである。
The figure is a block diagram showing an embodiment of the register selection method of the present invention. In the figure, 1... Base register, 2... Micro program latch 3... Operand pointer, 11... Data bus, 18... Micro operand source bus, 19...
It is a micro-operando destination syllombus.

Claims (1)

【特許請求の範囲】 マイクロプログラムを格納する制御記憶と、デコード部
でソフトウェア命令を解読して得られたマイクロオペラ
ンドアドレスを前記ソフトウェア命令の実行開始時に格
納するかまたは前記マイクロプログラムの制御によりデ
ータバスの内容を格納するオペランドポインタと、前記
マイクロオペランドアドレスをマイクロオペランドデコ
ーダに転送するマイクロオペランドバスとを備え、前記
マイクロオペランドアドレスを前記マイクロオペランド
デコーダが解読することにより参照すべきレジスタをア
クセスするレジスタ選択方式において、 前記マイクロプログラムをその実行前毎に保持するマイ
クロプログラムラッチと、 前記マイクロオペランドアドレスの一部をベースアドレ
スとしてソフトウェア命令の実行開始に先立って格納す
るベースレジスタと、 前記データバスから前記ベースレジスタへのデータ転送
ならびに前記マイクロプログラムラッチおよび前記ベー
スレジスタから前記マイクロオペランドバスへの同時デ
ータ転送を制御するマイクロプログラム制御手段と、 を有することを特徴とするレジスタ選択方式。
[Scope of Claims] A control memory for storing a microprogram, and a microoperand address obtained by decoding a software instruction in a decoding section are stored at the start of execution of the software instruction, or a data bus is stored under the control of the microprogram. and a micro-operand bus that transfers the micro-operand address to a micro-operand decoder, and the micro-operand decoder decodes the micro-operand address to access a register to be referenced. The method includes: a microprogram latch that holds the microprogram each time before its execution; a base register that stores a part of the microoperand address as a base address before starting execution of a software instruction; A register selection method comprising: microprogram control means for controlling data transfer to a register and simultaneous data transfer from the microprogram latch and the base register to the microoperand bus.
JP5316786A 1986-03-11 1986-03-11 Register selection method Expired - Lifetime JPH0738157B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5316786A JPH0738157B2 (en) 1986-03-11 1986-03-11 Register selection method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5316786A JPH0738157B2 (en) 1986-03-11 1986-03-11 Register selection method

Publications (2)

Publication Number Publication Date
JPS62210542A true JPS62210542A (en) 1987-09-16
JPH0738157B2 JPH0738157B2 (en) 1995-04-26

Family

ID=12935297

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5316786A Expired - Lifetime JPH0738157B2 (en) 1986-03-11 1986-03-11 Register selection method

Country Status (1)

Country Link
JP (1) JPH0738157B2 (en)

Also Published As

Publication number Publication date
JPH0738157B2 (en) 1995-04-26

Similar Documents

Publication Publication Date Title
US5682531A (en) Central processing unit
JPH0346850B2 (en)
US5307300A (en) High speed processing unit
JPH0332818B2 (en)
US5019969A (en) Computer system for directly transferring vactor elements from register to register using a single instruction
EP0240606B1 (en) Pipe-line processing system and microprocessor using the system
JPS623461B2 (en)
EP0334131B1 (en) Data processor performing operation on data having length shorter than one-word length
JPS62210542A (en) Register selecting system
JPS623332A (en) Information processor having instruction containing direct value field
JPS6226055B2 (en)
JPH1091593A (en) Data processor provided with microprocessor and optional calculation unit
JPS62210541A (en) Register selecting system
JPS6320631A (en) Register selecting system
JPS62221030A (en) Microprogram control system
JPH0752416B2 (en) Microcomputer system
JPH0546581B2 (en)
JPS61249140A (en) Microprogram controller
JPH02110631A (en) Microprogram controlling method
JPS62221031A (en) Microprogram control system
JPS58186844A (en) Microprogram controller
JPH0792902A (en) Programmable controller
JPH04104349U (en) Microprogram information processing device
JPH02127743A (en) Memory control system
JPS63155328A (en) Information processor