JPH0621987B2 - Micro program controller - Google Patents
Micro program controllerInfo
- Publication number
- JPH0621987B2 JPH0621987B2 JP28657287A JP28657287A JPH0621987B2 JP H0621987 B2 JPH0621987 B2 JP H0621987B2 JP 28657287 A JP28657287 A JP 28657287A JP 28657287 A JP28657287 A JP 28657287A JP H0621987 B2 JPH0621987 B2 JP H0621987B2
- Authority
- JP
- Japan
- Prior art keywords
- address
- register
- microinstruction
- control
- held
- 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.)
- Expired - Lifetime
Links
- 230000009191 jumping Effects 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 8
- 230000010365 information processing Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 102100033029 Carbonic anhydrase-related protein 11 Human genes 0.000 description 1
- 101000867841 Homo sapiens Carbonic anhydrase-related protein 11 Proteins 0.000 description 1
- 101001075218 Homo sapiens Gastrokine-1 Proteins 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000000034 method Methods 0.000 description 1
Landscapes
- Advance Control (AREA)
Description
【発明の詳細な説明】 (産業上の利用分野) 本発明は、マイクロ命令の実行中に、次に実行すべきマ
イクロ命令の先取りを行うことを可能とするマイクロプ
ログラム制御装置に関する。Description: TECHNICAL FIELD The present invention relates to a microprogram control device capable of prefetching a microinstruction to be executed next during execution of a microinstruction.
(従来の技術) 従来、この種のマイクロプログラム制御装置は、制御記
憶から読出されたマイクロ命令をレジスタに保持し、こ
のレジスタからの出力により、制御記憶制御回路がハー
ドウェアの制御を行っていた。(Prior Art) Conventionally, this type of micro program control device holds a micro instruction read from a control memory in a register, and an output from this register causes a control memory control circuit to control hardware. .
(発明が解決しようとする問題点) 上述した従来のマイクロプログラム制御装置は、制御記
憶から読出されたマイクロ命令を保持するレジスタから
の出力により、制御記憶制御回路がハードウェアを制御
しているので、制御記憶制御回路がこのレジスタの内容
をデコードしてから実際にハードウェアの制御を完了す
るまでの時間が長くかかる。この時間が制御クロックの
周期を決定するので、制御クロックの周期を短くして性
能を向上させることができないという問題点があった。(Problems to be Solved by the Invention) In the conventional micro program control device described above, the control storage control circuit controls the hardware by the output from the register holding the micro instruction read from the control storage. It takes a long time until the control memory control circuit decodes the contents of this register until the hardware control is actually completed. Since this time determines the cycle of the control clock, there is a problem that the cycle of the control clock cannot be shortened to improve the performance.
(問題点を解決するための手段) 上述した従来の問題点を解決するために本発明が提供す
るマイクロプログラム制御装置は、制御記憶から読出さ
れたマイクロ命令を保持する第1のレジスタとは別に、
この第1のレジスタの出力の一部をデコードするための
情報を格納する記憶手段により第1のレジスタの内容を
デコードした結果を保持する第2のレジスタを設けてい
る。(Means for Solving Problems) In order to solve the above-mentioned conventional problems, a micro program control device provided by the present invention is different from a first register for holding a micro instruction read from a control memory. ,
A second register is provided for holding the result of decoding the contents of the first register by the storage means for storing the information for decoding a part of the output of the first register.
また、この第1のレジスタの出力の一部により動作する
分岐制御回路及びアドレス制御回路を有し、このアドレ
ス制御回路により制御されて第1のレジスタに保持する
マイクロ命令の制御記憶のアドレス及び第2のレジスタ
に保持するマイクロ命令の制御記憶のアドレスを保持す
る2つのアドレスレジスタを有している。In addition, a branch control circuit and an address control circuit which operate by a part of the output of the first register are provided, and the address and the address of the micro-instruction control memory which is controlled by the address control circuit and is held in the first register. It has two address registers for holding the addresses of the control memory of microinstructions held in the two registers.
第1のレジスタにマイクロ命令が保持されると、このマ
イクロ命令は前記記憶手段の内容に従ってデコードされ
て、デコード結果が第2のレジスタに保持される。この
とき同時に、第1のレジスタの出力により前記分岐制御
回路またはアドレス制御回路が動作し、次に実行すべき
マイクロ命令のアドレスを前記制御記憶に与え、この制
御記憶から読出されたマイクロ命令が第1のレジスタに
保持される。When the microinstruction is held in the first register, this microinstruction is decoded according to the contents of the storage means, and the decoding result is held in the second register. At this time, at the same time, the branch control circuit or the address control circuit is operated by the output of the first register to give the address of the microinstruction to be executed next to the control memory, and the microinstruction read from this control memory is Held in register 1.
第1のレジスタに保持される次に実行されるべきマイク
ロ命令のアドレスとしては、現在実行中のマイクロ命令
のアドレスの次のアドレス,ハードウェアにより生成さ
れるアドレスまたはサブルーチンコール等によるジャン
プ先アドレスが考えられる。本発明は、第1のレジスタ
に前記ジャンプ先アドレスが保持されている場合に、ジ
ャンプ先のマイクロ命令を実行した後に戻るべき戻りア
ドレスを保持するアドレススタックを有しており、この
アドレススタックに保持された戻りアドレスと第1のレ
ジスタに保持されたマイクロ命令の制御記憶のアドレス
とが一致したときに、この戻りアドレスを前記制御記憶
に与える。The address of the microinstruction to be executed next, which is held in the first register, is the address next to the address of the microinstruction currently being executed, the address generated by hardware, or the jump destination address by a subroutine call or the like. Conceivable. The present invention has an address stack for holding a return address to be returned after executing the jump destination micro instruction when the jump destination address is held in the first register. The return address is given to the control memory when the returned address and the address of the microinstruction control memory held in the first register match.
(実施例) 以下、本発明の一実施例について図面を参照して説明す
る。(Example) Hereinafter, one example of the present invention will be described with reference to the drawings.
第1図は本発明の一実施例のマイクロプログラム制御装
置のブロック回路図である。FIG. 1 is a block circuit diagram of a micro program controller according to an embodiment of the present invention.
制御記憶(CS)1にはマイクロ命令の集合体であるマ
イクロプログラムが記憶されている。本実施例では、分
岐時の命令の読出しを高速に実施するために4個のCS
1を並列的に配置しており、セレクタ2により、これら
の4個のCS1の出力のうちの1個が選択される。CS
R3は、セレクタ2により選択されて出力されたマイク
ロ命令を一時的に保持するレジスタである。RAMデコ
ーダ4は、CSR3の出力の一部をデコードするために
必要な情報を記憶している。普通にデコーダと呼ばれて
いる回路では、入力の1パターンにより出力信号のうち
1本が有効となるが、RAMデコーダでは、入力の1パ
ターンに対応して出力信号を1つの組み合わせとして有
効にできるから、少ないハードウエア量で複雑な制御が
可能となる。DR5は、CSR3の一部とRAMデコー
ダ4の一部とを一時的に保持するレジスタである。制御
記憶制御回路(CSC)6は、DR5の出力により実際
にハードウェアを制御する制御回路である。分岐制御回
路(BRC)7は、CSR3及びCSC6から情報を受
けて、マイクロプログラムにおける分岐命令時の制御を
行う制御回路である。ECC8は、CSR3の出力のエ
ラー訂正及び検出を行う回路である。CIA9及びCC
A11は、CS1に対するアドレス情報を保持するアドレ
スレジスタである。そのCCA11はCS1の読み出し
アドレスを与える。セレクタ10及び13は、このアドレス
情報を選択するレジスタである。アドレススタック14
は、マイクロ命令を実行した後の戻りアドレスを複数個
スタックするレジスタファイルである。加算器12は、C
CA11から出力されたアドレスに1をプラスする回路で
ある。アドレス制御回路(ARC)15は、CIA9,C
CA11,アドレススタック14,CEA16,セレクタ10及
び13を制御する回路である。CEA16は、アドレスを保
持するレジスタであり、一致回路17は、このCEA16と
CCA11との一致を検出する回路である。The control memory (CS) 1 stores a micro program, which is a set of micro instructions. In this embodiment, four CSs are provided in order to read instructions at the time of branch at high speed.
1 are arranged in parallel, and the selector 2 selects one of these four CS1 outputs. CS
R3 is a register that temporarily holds the microinstruction selected and output by the selector 2. The RAM decoder 4 stores information necessary for decoding a part of the output of the CSR 3. In a circuit usually called a decoder, one of the output signals is valid by one input pattern, but in the RAM decoder, the output signals can be validated as one combination corresponding to one input pattern. Therefore, complicated control is possible with a small amount of hardware. The DR 5 is a register that temporarily holds a part of the CSR 3 and a part of the RAM decoder 4. The control storage control circuit (CSC) 6 is a control circuit that actually controls the hardware by the output of DR5. The branch control circuit (BRC) 7 is a control circuit that receives information from the CSR 3 and the CSC 6 and performs control at the time of a branch instruction in the microprogram. The ECC 8 is a circuit that performs error correction and detection of the output of the CSR 3. CIA9 and CC
A11 is an address register that holds address information for CS1. The CCA11 provides the read address of CS1. The selectors 10 and 13 are registers that select this address information. Address stack 14
Is a register file that stacks a plurality of return addresses after executing a micro instruction. The adder 12 is C
This is a circuit that adds 1 to the address output from CA11. The address control circuit (ARC) 15 includes CIA9, C
It is a circuit for controlling CA 11, address stack 14, CEA 16, selectors 10 and 13. The CEA 16 is a register that holds an address, and the match circuit 17 is a circuit that detects a match between the CEA 16 and the CCA 11.
第2図は本実施例のマイクロプログラム制御装置を適用
した情報処理システムの構成図である。FIG. 2 is a block diagram of an information processing system to which the micro program controller of this embodiment is applied.
この情報処理システムは、主記憶装置(MM)20と、1
つまたは複数の中央処理装置(CPU)22と、1つまた
は複数のチャネル制御装置(IOP)23と、これらを接
続するバス21とからなる。本実施例のマイクロプログラ
ム制御装置は、CPU22の中に含まれている。This information processing system includes a main memory device (MM) 20 and 1
It comprises one or more central processing units (CPU) 22, one or more channel control units (IOPs) 23, and a bus 21 connecting them. The microprogram controller of this embodiment is included in the CPU 22.
第3図は第2図のCPU22の構成を示すブロック図であ
る。FIG. 3 is a block diagram showing the configuration of the CPU 22 of FIG.
CPU22は、主記憶アクセス制御部(MBU)30と演算
制御部(EXU)31と先取り制御部(PFU)32とマイ
クロプログラム制御部(CSU)33とからなり、本実施
例のマイクロプログラム制御装置はCSU33に該当する
ものである。MBU30は、バッファ記憶,アドレス変換
バッファ及びアドレス変換手段を有し、MM20へのアク
セス要求を制御する。EXU31は、演算回路を有し、演
算制御を行う。PFU32は、命令バッファ記憶を持ち、
命令の先取り制御を行う。The CPU 22 comprises a main memory access control unit (MBU) 30, an arithmetic control unit (EXU) 31, a prefetch control unit (PFU) 32, and a micro program control unit (CSU) 33. The micro program control device of this embodiment is It corresponds to CSU33. The MBU 30 has a buffer memory, an address translation buffer and an address translation means, and controls an access request to the MM 20. The EXU 31 has an arithmetic circuit and performs arithmetic control. PFU32 has instruction buffer storage,
Preemption control of instructions is performed.
第4図は第1図のBRC7の回路図である。BRC7
は、デコーダ40とカウンタ41と分岐判定回路42とフリッ
プフロップ43とANDゲート44,46,47とORゲート4
5,48,49とから構成されている。FIG. 4 is a circuit diagram of the BRC 7 of FIG. BRC7
Is a decoder 40, a counter 41, a branch decision circuit 42, a flip-flop 43, AND gates 44, 46, 47 and an OR gate 4.
It is composed of 5, 48 and 49.
次に、本実施例の動作について図面を参照して説明す
る。Next, the operation of this embodiment will be described with reference to the drawings.
第5図,第6図及び第7図はマイクロプログラムの処理
の例を示すフローチャートであり、第5図及び第6図は
それぞれのタイムチャートを示している。FIGS. 5, 6, and 7 are flowcharts showing an example of the processing of the microprogram, and FIGS. 5 and 6 show respective time charts.
最初に、CPU22のFPU32において、1つの命令がフ
ェッチされ、命令がデコードされ、CS1に対する開始
アドレスが生成されてセレクタ13に与えられる。このア
ドレスはCIA9にセットされ、セレクタ10に与えられ
る。ここで、FPU32からのハードウェア制御信号(H
WC)により、CIA9の出力がセレクタ10で選択さ
れ、セレクタ10の出力はCCA11に格納されてから
CCA11の出力としてCS1に与えられる。First, in the FPU 32 of the CPU 22, one instruction is fetched, the instruction is decoded, a start address for CS1 is generated and given to the selector 13. This address is set in the CIA 9 and given to the selector 10. Here, the hardware control signal (H
The output of the CIA 9 is selected by the selector 10 by WC), the output of the selector 10 is stored in the CCA 11, and then provided to the CS 1 as the output of the CCA 11.
例えば、第5図において、マイクロ命令A0のアドレスが
上述のようにしてCS1に与えられ、マイクロ命令A0が
CSR3に読出されたときには、次にはマイクロ命令A1
を実行するような指示がなされており、この指示がAR
C15でデコードされる。次に実行されるマイクロ命令A1
のアドレスは、マイクロ命令A0から取出されてARGと
して与えられる。セレクタ10は、ARC15の指示により
ARGの出力を選択する。これによりマイクロ命令A1の
アドレスがCS1に与えられ、マイクロ命令A1がCSR
3に読出される。このとき、マイクロ命令A0は、RAM
デコーダ4でデコードされてDR5に出力され、CSC
6の制御により実行されている。同様に、マイクロ命令
A1がDR5に出力されて実行されているときには、マイ
クロ命令A2がCSR3に読出されている。For example, in FIG. 5, when the address of the microinstruction A0 is given to the CS1 as described above and the microinstruction A0 is read to the CSR3, the next time the microinstruction A1 is read.
Has been instructed to execute
It is decoded by C15. Next microinstruction A1 executed
Address is fetched from microinstruction A0 and given as ARG. The selector 10 selects the output of the ARG according to the instruction of the ARC 15. As a result, the address of the microinstruction A1 is given to CS1 and the microinstruction A1 is
3 is read. At this time, the micro instruction A0 is
Decoded by decoder 4 and output to DR5, CSC
It is executed under the control of 6. Similarly, microinstructions
When A1 is output to DR5 and executed, microinstruction A2 is read to CSR3.
ここで、第5図の例において、マイクロ命令A2は条件分
岐命令となっているので、ARC15は、ARGの出力が
選択されるようセレクタ10に指示し、セレクタ2は、B
RC7における条件判定結果に従って、次に実行すべき
マイクロ命令B0またはB1をCSR3に読出すことにな
る。Here, in the example of FIG. 5, since the microinstruction A2 is a conditional branch instruction, the ARC 15 instructs the selector 10 to select the output of the ARG, and the selector 2 sets the B instruction to B.
According to the result of the condition judgment in RC7, the microinstruction B0 or B1 to be executed next is read into CSR3.
第6図は、カウンタを設定し、処理とともにカウンタの
値を減じていき、カウンタの値が“0”となったときに
次のマイクロ命令を実行するループ命令を示す例であ
る。FIG. 6 is an example showing a loop instruction for setting a counter, decrementing the value of the counter with processing, and executing the next microinstruction when the value of the counter becomes “0”.
第6図において、マイクロ命令C1で例えば“5”という
値がARGとして第4図のカウンタ41にセットされた場
合に、マイクロ命令D0では、カウンタ41から1を減じて
この結果の値を判定する処理が行われる。この処理を5
回繰返してカウンタ41の値が“0”になると、フリップ
フロップ43がセットされて、6回目にマイクロ命令D0が
実行されると分岐条件が成立してマイクロ命令D1へジャ
ンプすることとなる。In FIG. 6, when the value “5” is set as the ARG in the counter 41 of FIG. 4 by the microinstruction C1, the microinstruction D0 subtracts 1 from the counter 41 and determines the result value. Processing is performed. This process 5
When the value of the counter 41 becomes "0" by repeating the times, the flip-flop 43 is set, and when the microinstruction D0 is executed for the sixth time, the branch condition is satisfied and the instruction jumps to the microinstruction D1.
第7図は、マイクロ命令E0→E1→E2→E3→E4の後に他の
マイクロプログラムのマイクロ命令F1→F2→F3→F4を実
行してからマイクロ命令E5を実行するというケースを示
している。FIG. 7 shows a case in which the microinstruction E0 → E1 → E2 → E3 → E4 is followed by the microinstructions F1 → F2 → F3 → F4 of another microprogram and then the microinstruction E5.
これは、マイクロ命令E3でCEA16にマイクロ命令F4の
アドレスを設定し、マイクロ命令E4でCIA9に保持さ
れているマイクロ命令E4のアドレスに加算器12により1
を加算したアドレス(マイクロ命令E5のアドレス)をア
ドレススタック14にスタックしてから、マイクロ命令F1
へジャンプすることにより実行される。マイクロ命令F1
→F2→F3→F4を実行した後は、アドレススタック14から
の出力がセレクタ10で選択されてマイクロ命令E5が実行
されることとなる。マイクロ命令E4の実行後にマイクロ
命令F1だけを実行してからマイクロ命令E5を実行する場
合には、マイクロ命令E4でマイクロ命令F1へジャンプす
るとともに、CIA9にマイクロ命令E4のアドレスに加
算器12により1を加算したアドレス(マイクロ命令E5の
アドレス)を格納し、次にCIA9の出力をセレクタ10
で選択することにより実現できる。This is because the microinstruction E3 sets the address of the microinstruction F4 in CEA16, and the microinstruction E4 adds 1 to the address of the microinstruction E4 held in CIA9.
Add the address (the address of microinstruction E5) on the address stack 14, then add microinstruction F1
It is executed by jumping to. Micro instruction F1
After executing → F2 → F3 → F4, the output from the address stack 14 is selected by the selector 10 and the microinstruction E5 is executed. When only microinstruction F1 is executed after execution of microinstruction E4 and then microinstruction E5 is executed, jump to microinstruction F1 at microinstruction E4 and add 1 to address of microinstruction E4 to CIA 9 The address (the address of microinstruction E5) added with is stored, and then the output of CIA9 is stored in selector 10
It can be realized by selecting.
また、カウンタ41への入力は、CSR3からの出力のみ
ではなく、EXU31からの出力を選択して設定するよう
な構成にしてもよい。Further, the input to the counter 41 may be configured so that not only the output from the CSR3 but also the output from the EXU31 is selected and set.
これらは、いずれもCSR3の出力をDR5に保持し、
DR5に保持されたマイクロ命令を実行すると同時に、
次に実行すべきマイクロ命令のアドレスを制御してCS
R3に次に実行すべきマイクロ命令を保持することによ
り、性能を落とさずに処理ができる。All of them hold the output of CSR3 in DR5,
At the same time as executing the microinstruction held in DR5,
CS by controlling the address of the next microinstruction to be executed
By holding a microinstruction to be executed next in R3, processing can be performed without degrading performance.
(発明の効果) 以上に説明したように本発明は、制御記憶から読出した
マイクロ命令を保持する第1のレジスタと、このマイク
ロ命令をデコードした結果を保持する第2のレジスタと
の2段のレジスタを使用し、かつ、分岐制御回路及びア
ドレス制御回路が第1のレジスタからの出力により動作
し、カウンタ等による条件分岐及び繰返し実行後の分岐
判定回路を分岐制御回路中に備えることにより、単純に
2段のレジスタを持つだけでは著しい性能低下がある分
岐条件の判定を遅延することなく実行できる。そこで、
本発明によれば、2段レジスタ化による制御クロックの
高速化を実現できるという効果がある。(Effect of the Invention) As described above, the present invention has two stages of the first register for holding the microinstruction read from the control memory and the second register for holding the result of decoding the microinstruction. By using a register, the branch control circuit and the address control circuit operate by the output from the first register, and the branch control circuit after the conditional branch by the counter and the repeated execution is provided in the branch control circuit, it is simple. It is possible to execute the determination of a branch condition, which has a significant performance degradation, without delay by only having two stages of registers. Therefore,
According to the present invention, there is an effect that a control clock can be speeded up by using a two-stage register.
第1図は本発明の一実施例のマイクロプログラム制御装
置のブロック回路図、第2図は本実施例のマイクロプロ
グラム制御装置を適用した情報処理システムの構成図、
第3図は第2図の中央処理装置の構成を示すブロック
図、第4図は第1図の分岐制御回路の回路図、第5図,
第6図及び第7図はマイクロプログラムの処理の例を示
すフローチャートである。 1……制御記憶(CS)、2……セレクタ、3……CS
R、4……RAMデコーダ、5……DR、6……制御記
憶制御回路(CSC)、7……分岐制御回路(BR
C)、8……ECC、9……CIA、10,13……セレク
タ、11……CCA、12……加算器、14……アドレススタ
ック、15……アドレス制御回路(ARC)、16……CE
A、17……一致回路、20……主記憶装置(MM)、21…
…バス、22……中央処理装置(CPU)、23……チャネ
ル制御装置(IOP)、30……主記憶アクセス制御部
(MBU)、31……演算制御部(EXU)、32……先取
り制御部(PFU)、33……マイクロプログラム制御部
(CSU)、40……デコーダ、41……カウンタ、42……
分岐判定回路、43……フリップフロップ、44,46,47…
…ANDゲート、45,48,49……ORゲート。FIG. 1 is a block circuit diagram of a micro program controller according to an embodiment of the present invention, and FIG. 2 is a block diagram of an information processing system to which the micro program controller according to the present embodiment is applied.
FIG. 3 is a block diagram showing the configuration of the central processing unit of FIG. 2, FIG. 4 is a circuit diagram of the branch control circuit of FIG. 1, FIG.
6 and 7 are flowcharts showing an example of the processing of the microprogram. 1 ... Control memory (CS), 2 ... selector, 3 ... CS
R, 4 ... RAM decoder, 5 ... DR, 6 ... Control storage control circuit (CSC), 7 ... Branch control circuit (BR
C), 8 ... ECC, 9 ... CIA, 10, 13 ... Selector, 11 ... CCA, 12 ... Adder, 14 ... Address stack, 15 ... Address control circuit (ARC), 16 ... CE
A, 17 ... Matching circuit, 20 ... Main memory (MM), 21 ...
... bus, 22 ... Central processing unit (CPU), 23 ... Channel control unit (IOP), 30 ... Main memory access control unit (MBU), 31 ... Operation control unit (EXU), 32 ... Preemption control Unit (PFU), 33 ... Micro program control unit (CSU), 40 ... Decoder, 41 ... Counter, 42 ...
Branch decision circuit, 43 ... Flip-flop, 44, 46, 47 ...
… AND gate, 45,48,49 …… OR gate.
Claims (3)
持する第1のレジスタと、この第1のレジスタに保持さ
れたマイクロ命令の一部で示されるコマンドをデコード
するための情報を格納する記憶手段と、この記憶手段か
ら読出されたデコード結果を保持する第2のレジスタ
と、この第2のレジスタの出力に基づいてハードウェア
を制御する制御記憶制御回路と、前記第1のレジスタの
出力,分岐制御回路または前記制御記憶制御回路からの
指示により前記制御記憶から読出すべきマイクロ命令の
アドレスを与えるアドレス制御回路と、前記第1のレジ
スタの出力に基づいてカウンタ制御,分岐条件の判定及
び分岐制御を行う分岐制御回路と、現在実行中のマイク
ロ命令の前記制御記憶のアドレスを保持する第1のアド
レスレジスタと、この第1のアドレスレジスタに保持さ
れているアドレスに1を加えたアドレス,ハードウェア
生成アドレスまたは前記第1のアドレスレジスタの出力
の一部で示されるジャンプ先アドレスを保持する第2の
アドレスレジスタと、この第2のアドレスレジスタに保
持されているジャンプ先アドレスにジャンプしてジャン
プ先のマイクロ命令を実行した後に戻るべき戻りアドレ
スを保持するアドレススタックとを有することを特徴と
するマイクロプログラム制御装置。1. A first register for holding a microinstruction read from a control memory, and a memory for storing information for decoding a command indicated by a part of the microinstruction held in the first register. Means, a second register for holding the decoding result read from the storage means, a control storage control circuit for controlling hardware based on the output of the second register, an output of the first register, An address control circuit that gives an address of a microinstruction to be read from the control memory in accordance with an instruction from the branch control circuit or the control memory control circuit, and counter control based on the output of the first register, determination of a branch condition, and branching. A branch control circuit for controlling, a first address register for holding the address of the control memory of the microinstruction currently being executed, and A second address register holding an address obtained by adding 1 to the address held in the first address register, a hardware-generated address, or a jump destination address indicated by a part of the output of the first address register; An address stack for holding a return address to be returned after jumping to the jump destination address held in the second address register and executing the jump destination micro instruction.
アドレスレジスタの出力の一部で示されるジャンプ先ア
ドレスが保持されている場合に、前記アドレススタック
に保持されている戻りアドレスと等しいアドレスが前記
第1のアドレスレジスタに保持されたときに、この戻り
アドレスを前記制御記憶へ与えることを特徴とする特許
請求の範囲第1項に記載のマイクロプログラム制御装
置。2. An address equal to a return address held in the address stack when a jump destination address indicated by a part of the output of the first address register is held in the second address register. The microprogram controller according to claim 1, wherein the return address is provided to the control memory when is stored in the first address register.
レスレジスタに保持されているアドレスに1を加えたア
ドレスが保持されている場合に、前記第1のアドレスレ
ジスタに保持されているアドレスに対応するマイクロ命
令を前記制御記憶から読出して実行した後に、前記第2
のアドレスレジスタに保持されているアドレス対応する
マイクロ命令を前記制御記憶から読出して実行すること
を特徴とする特許請求の範囲第1項または第2項に記載
のマイクロプログラム制御装置。3. When an address obtained by adding 1 to the address held in the first address register is held in the second address register, the address held in the first address register becomes After reading the corresponding microinstruction from the control memory and executing it, the second
3. The microprogram controller according to claim 1, wherein the microinstruction corresponding to the address held in the address register is read from the control memory and executed.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP28657287A JPH0621987B2 (en) | 1987-11-12 | 1987-11-12 | Micro program controller |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP28657287A JPH0621987B2 (en) | 1987-11-12 | 1987-11-12 | Micro program controller |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH01128134A JPH01128134A (en) | 1989-05-19 |
| JPH0621987B2 true JPH0621987B2 (en) | 1994-03-23 |
Family
ID=17706147
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP28657287A Expired - Lifetime JPH0621987B2 (en) | 1987-11-12 | 1987-11-12 | Micro program controller |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0621987B2 (en) |
-
1987
- 1987-11-12 JP JP28657287A patent/JPH0621987B2/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JPH01128134A (en) | 1989-05-19 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5241679A (en) | Data processor for executing data saving and restoration register and data saving stack with corresponding stack storage for each register | |
| JP2810068B2 (en) | Processor system, computer system, and instruction processing method | |
| US5235686A (en) | Computer system having mixed macrocode and microcode | |
| JPH0374434B2 (en) | ||
| JPS6015746A (en) | Data processor | |
| JPH0348536B2 (en) | ||
| US5088030A (en) | Branch address calculating system for branch instructions | |
| US4685058A (en) | Two-stage pipelined execution unit and control stores | |
| KR880001418B1 (en) | Data processing device | |
| US3553655A (en) | Short forward conditional skip hardware | |
| US5247624A (en) | Microprogram controller including leading microinstruction from a generator executed while succeeding microinstruction from memory is read out | |
| US4674063A (en) | Information processing apparatus having a sequence control function | |
| US4799151A (en) | Microprogram control circuit | |
| US6044455A (en) | Central processing unit adapted for pipeline process | |
| JPH0621987B2 (en) | Micro program controller | |
| JPH0512751B2 (en) | ||
| JPH0218729B2 (en) | ||
| JP3335735B2 (en) | Arithmetic processing unit | |
| JPH01271840A (en) | Microcomputer | |
| JP2772100B2 (en) | Parallel instruction fetch mechanism | |
| JPS588011B2 (en) | Microprogram Seigiyohoshiki | |
| JPH01253032A (en) | Microprogram control type processor | |
| JPH0375904B2 (en) | ||
| JPS6134188B2 (en) | ||
| JP2825315B2 (en) | Information processing device |