JPH01197839A - Data processor - Google Patents

Data processor

Info

Publication number
JPH01197839A
JPH01197839A JP2337788A JP2337788A JPH01197839A JP H01197839 A JPH01197839 A JP H01197839A JP 2337788 A JP2337788 A JP 2337788A JP 2337788 A JP2337788 A JP 2337788A JP H01197839 A JPH01197839 A JP H01197839A
Authority
JP
Japan
Prior art keywords
instruction
branch
address
destination address
branch destination
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.)
Pending
Application number
JP2337788A
Other languages
Japanese (ja)
Inventor
Masahiko Yamamouri
山毛利 雅彦
Toshihiro Nishioka
西岡 壽博
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
NEC Engineering Ltd
Original Assignee
NEC Corp
NEC Engineering Ltd
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, NEC Engineering Ltd filed Critical NEC Corp
Priority to JP2337788A priority Critical patent/JPH01197839A/en
Publication of JPH01197839A publication Critical patent/JPH01197839A/en
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Abstract

PURPOSE:To reduce the number of a hardware control circuit and to reduce a cost by allowing the existing micro-instruction controller to execute a control for retaking an instruction, when a predictive branching destination address and a branch destination address at the time of executing a branching a instruction do not coincide with each other. CONSTITUTION:When the discrepancy of addresses is reported, a micro instruction controller 8 stores a branch destination address being in an address stack 12, in an instruction counter 14 through a signal line 114, if the branch is successful, and outputs an instruction to an instruction prefetch controller 1 so as to retake an instruction from the address being in the instruction counter 14. If the branch is unsuccessful, count-up of the instruction counter is executed, and the processing of the succeeding instruction is continued as if the report of a discrepancy of addresses has not existed. Also, a control for retaking an instruction at the time when the predictive branching destination address and the branch destination address at the time of executing a branch destination instruction do not coincide with each other is executed by the existing micro- instruction controller 8. In such a way, the number of hardware control circuit is reduced and the cost can be reduced.

Description

【発明の詳細な説明】[Detailed description of the invention]

[産業上の利用分野] 本発明は、分岐命令のアドレスと該分岐命令の分岐先ア
ドレスを対にして記憶する分岐ヒストリテーブルと、命
令の実行を制御するマイクロ命令制御装置とを備え、命
令の先取りを行なうデータ処理装置に関する。 r従来の技術〕 分岐命令のアドレスと分岐先アドレスを対にして記憶す
る分岐ヒストリテーブルを持つデータ処理装置において
、分岐先アドレスの登録は分岐が成功した時に行なわれ
る。また、意図して分岐先アドレスを変更するような分
岐命令の場合、分岐ヒストリテーブル中の分岐先アドレ
スを変更する頻度は高い。分岐ヒストリテーブルを用い
た命令先取り制御方式においては、ただ単に分岐命令の
アドレスと分岐免アドレスを対にして記憶しているだけ
のため、分岐先アドレスがしばしば変更されるような分
岐命令の場合には間違ったアドレスの命令を先取りして
しまい、再度命令を取りなおす必要がある。 このような分岐予測方式の代表例が特開昭57−201
55+号公報に示されている。
[Industrial Application Field] The present invention includes a branch history table that stores the address of a branch instruction and a branch destination address of the branch instruction as a pair, and a microinstruction control device that controls the execution of instructions. The present invention relates to a data processing device that performs prefetching. rPrior Art] In a data processing device having a branch history table that stores a branch instruction address and a branch destination address in pairs, the branch destination address is registered when a branch is successful. Furthermore, in the case of a branch instruction that intentionally changes the branch destination address, the branch destination address in the branch history table is changed frequently. In the instruction prefetch control method using a branch history table, the address of the branch instruction and the branch release address are simply stored as a pair, so it is difficult to use the branch instruction when the branch destination address changes frequently. will prefetch the instruction at the wrong address, and it will be necessary to read the instruction again. A typical example of such a branch prediction method is JP-A-57-201.
No. 55+.

【発明が解決しようとする問題点】[Problems to be solved by the invention]

上述した従来のデータ処理装置は、命令の取りなおしの
制御をハードウェア制御回路で行なっているので、ハー
ドウェア量が非常に大きくなりコストが高くなるという
欠点がある。 [問題点を解決するための手段] 本発明の゛データ処理装置は、 分岐命令の分岐先アドレスを格納するアドレススタック
と、前記分岐ヒストリテーブルにより予測した分岐先ア
ドレスと、分岐命令の分岐先アドレスを比較する比較手
段と、前記比較手段の比較結果を前記マイクロ命令制御
装置に通知する手段とを備え、 前記比較結果が不一致であった場合、前記マイクロ命令
制御装置の制御により、前記アドレススタックに格納さ
れた分岐先アドレスにより、命令の先取りを再開する。 〔作 用〕 予測分岐先アドレスと分岐先命令実行時の分岐先アドレ
スが不一致のときの命令の取りなおしの制御を既存のマ
イクロ命令制御装置で行なうことにより、ハードウェア
制御回路を削減し、コストを下げることができる。 〔実施例] 次に、本発明の実施例について図面を参照して説明する
。 第1図は本発明のデータ処理装置の一実施例のブロック
図である。 命令アドレスタ2は命令アドレスが格納されるレジスタ
であり、命令先取り制御装置1より信号線101を介し
て送出される命令アドレスを受け、信号線102を介し
て、その命令アドレスを分岐ヒストリテーブル3、比較
器4および記憶装置9へ送出する0分岐ヒストリテーブ
ル3は分岐命令のアドレス情報と分岐先アドレスを対に
して記憶しており、命令アドレスレジスタ2から信号線
102を介して送出される命令アドレスの一部をアドレ
スとして入力し、分岐命令のアドレス情報を信号線10
3を介して比較器4に送出し、分岐先アドレスを信号線
104を介して分岐先アドレスレジスタ5へ送出する。 比較器4は分岐ヒストリテーブル3に命令先取りアドレ
スと一致する分岐命令のアドレスがあるかどうかを検出
する比較器であり、信号線102を介して命令アドレス
レジスタ2より送出される命令先取りアドレス情報と信
号線103を介して分岐ヒストリテーブル3より送出さ
れる分岐命令の°アドレス情報を比較し、一致している
時には、信号線105を介して一致していることを命令
先取り制御装置lおよび分岐先アドレスレジスタ5へ送
出する0分岐先アドレスレジスタ5は予測される分岐先
アドレスが格納されるレジスタであり、信号線105を
介して比較器4より一致するアドレスが分岐ヒストリテ
ーブル3にあることが報告されると、信号線104を介
して送出される分岐先アドレスを受け、信号線106を
介して分岐先アドレスバッファ6および命令先取り制御
装置1にその予測される分岐先アドレスを送出する。 分岐先アドレスバッファ6は予測した分岐先アドレスと
分岐命令実行時の分岐先アドレスが一致しているかチエ
ツクするために、実際に分岐命令で分岐先アドレスが計
算されるまで予測した分岐先アドレスを格納しておくバ
ッファであり、信号線106を介して分岐先アドレスレ
ジスタ5より送出される予測分岐先アドレスを受け、信
号線107を介して比較器7へ命令アドレスレジスタ2
にある分岐命令実行時の分岐先アドレスと対応する分岐
ヒストリテーブル3の予測分岐先アドレスを送出する。 比較器7は予測分岐先アドレスと分岐命令実行時の分岐
先アドレスを比較する回路であり、信号線102を介し
て命令アドレスレジスタ2より送出される分岐命令実行
時の分岐先アドレスと、信号線107を介してバッファ
アドレスバッファ6より送出される予測分岐先アドレス
を比較して、その一致/不一致を信号線108を介して
マイクロ命令制御装置8へ通知する。マイクロ命令制御
装置8は信号線108を介して比較器7より予測分岐先
アドレスと分岐命令実行時の分岐先アドレスが不一致で
あることを報告されると、命令取りなおしを信号線10
9を介して命令先取り制御装置1に通知し、また、命令
スタック13から次に実行する命令を信号線112を介
して受け、信号線116を介して命令カウンタ14の更
新を制御する。記憶装置9は命令アドレスレジスタ2よ
り信号線102を介して命令先取りアドレスを受け、そ
のアドレスの命令を信号線110を介して命令レジスタ
lOへ送出する。命令レジスタlOはオペランドのアド
レスを計算する間命令を保持するレジスタであり、信号
線110を介して記憶装置9より送出された命令が格納
され、−信号線111を介してアドレス計算回路11お
よび命令スタック13へ命令の一部または全部を送出す
る。アドレス計算回路11はオペランドのアドレスを計
算する回路であり、信号線111を介して送出される命
令の一部を用いてオペランドのアドレスを計算し、信号
線113を介して命令先取り制御装置1およびアドレス
スタック12へ送出し、命令レジスタlOに分岐命令が
ある場合、分岐先アドレスを計算する。アドレススタッ
ク12は命令実行時までオペランドアドレスを格納して
おくためのバッファであり、信号線113を介してアド
レス計算回路11より送出されるオペランドアドレスが
格納され、次に実行する命令に対応するオペランドアド
レスを信号線114を介して命令カウンタ14へ送出す
る。命令スタック13は命令実行時まで先取りした命令
を格納しておくためのバッファであり、信号線111を
介して命令レジスタlOより送出された命令が格納され
、信号線112を介して次に実行する命令をマイクロ命
令制御装置8へ送出する。命令カウンタ14はマイクロ
命令制御装置8で実行中の命令のアドレスを保持するカ
ウンタであり、信号線116を介してマイクロ命令制御
装置8から送出される指示によりカウントアツプする。 また、信号線116を介して分岐が成功したことが指示
されると信号線114を介してアドレススタック12よ
り送出される分岐アドレスが格納され、予測分岐先アド
レスと分岐命令実行時の分岐先アドレスとが不一致のと
き取りなおす命令のアドレスとして信号線115を介し
て命令先取り制御装置1へ送出する。命令先取り制御装
置1は命令先取りを制御する回路であり、信号線101
を介して命令アドレスレジスタ2に命令先取りアドレス
または分岐先アドレスを送出する。信号線105を介し
て比較器4から分岐ヒストリテーブル3に命令アドレス
レジスタ2に格納されている命令アドレスと一致するア
ドレスがあることが報告されると、分岐先アドレスレジ
スタ5より信□号線106を介して送出される分岐先ア
ドレスを受は命令先取りを行なう!分岐ヒストリテーブ
ル3に登録されていなかった分岐命令の場合、アドレス
計算回路11から信号線+13を介して送出される分岐
先アドレスを受は命令先取りを行なう。また、予測した
分岐先アドレスと分岐命令実行時の分岐先アドレスとが
不一致のため、命令の取りなおしをマイクロ命令制御装
置8から信号線109を介して指示されると、命令カウ
ンタ14より信号線115を介して命令アドレスを受は
命令先取りを行なう。 次に、本実施例の動作を説明する。 まず、命令の先取りを行なう時は先取る命令のアドレス
が信号線+01を介して命令アドレスレジスタ2へ送出
される。命令アドレスレジスタ2にある命令アドレスに
より分岐ヒストリテーブル3は各情報を送出し、一致す
るものがあった場合は比較器4より信号線105を介し
て命令先取り制御装置1にその一致が報告され、分岐先
アドレスレジスタ5は予測される分岐先アドレスを受け
る。 また、命令アドレスレジスタ2にある命令アドレスをも
とに記憶装置9から命令を取り出し、信号線110を介
して命令レジスタlOへ送出する。命令先取り制御装置
1は分岐先アドレスレジスタ5の命令アドレスをもとに
次の命令先取りアドレスを命令アドレスレジスタ2に送
出し、また分岐先アドレスバッファ6は分岐先アドレス
レジスタ5より送出される予測分岐先アドレスが格納さ
れる。 次に、実際に分岐命令が実行される時は、命令レジスタ
lOにある分岐命令のアドレス情報を用いて分岐先アド
レスがアドレス計算回路11で計算される。この分岐先
アドレスが命令先取り制御装置1を経由して命令アドレ
スレジスタ2へ送出される。比較器7は命令アドレスレ
ジスタ2の実際の分岐先アドレスと分岐先アドレスバッ
ファ6に蓄えられている対応する予測分岐先アドレスと
の比較を行ない、その一致/不一致を信号線108を介
してマイクロ命令制御装置8へ報告する。マイクロ命令
制御装置8はアドレスの一致が報告された場合、分岐が
成功すればアドレススタック12にある分岐先アドレス
を信号線114を介して命令カウンタ14に格納し、分
岐が失敗すれば信号線116を介して命令カウンタI4
のカウントアツプを指示する。アドレスの不一致が報告
された場合、分岐が成功すればアドレススタック12に
ある分岐先アドレスを信号線114を介して命令カウン
タ14に格納し、命令先取り制御装置1に対して命令カ
ウンタ14にあるアドレスから命令の取りなおしをする
よう指示を出す0分岐が失敗すれば命令カウンタ14の
カウントアツプを行ない、アドレスの不一致の報告がな
かったかのように後続命令の処理を続ける。 予測分岐先アドレスと実際の分岐先アドレスが不一致で
あることが報告されてからその分岐命令が実行されるま
で間隔がある場合、アドレスの不一致が報告されたこと
を保持しなければならない、アドレスの不一致が報告さ
れてから、その分岐命令が実行されるまでの間に第2の
分岐命令の分岐が成功したら、第2の分岐命令の分岐先
へ処理を移し、アドレスの不一致がなかったように処理
を継続する。 このように、アドレスの不一致が報告されても必ず命令
の取りなおしをするわけではないので、何らかの制御手
段が必要となる□。従来は、この制御手段を多量のハー
ドウェアを費やして構成していたが、本発明においては
これをマイクロプログラム化することによりハードウェ
ア量を削減することができる。また、マイクロプログラ
ム化することにより制御の変更等があった場合に容易に
追従することが可能となる。 〔発明の効果〕 以上説明したように本発明は、予測分岐先アドレスと分
岐命令実行時の分岐先アドレスが不一致のとき、命令の
取りなおしの制御を既存のマイクロ命令制御装置に行な
わせることにより、八−ドウエア制御回路を削減し、コ
ストを低減できる効果がある。
The above-described conventional data processing apparatus uses a hardware control circuit to control instruction retrieval, and therefore has the disadvantage that the amount of hardware is extremely large and the cost is high. [Means for Solving the Problems] The data processing device of the present invention includes an address stack storing a branch destination address of a branch instruction, a branch destination address predicted by the branch history table, and a branch destination address of the branch instruction. and means for notifying the microinstruction control device of the comparison result of the comparison device, and if the comparison result is a mismatch, the address stack is updated under the control of the microinstruction control device. Prefetching of instructions is resumed using the stored branch destination address. [Operation] By using the existing micro-instruction control device to control the retaking of instructions when the predicted branch destination address and the branch destination address at the time of execution of the branch destination instruction do not match, the hardware control circuit can be reduced and costs can be reduced. can be lowered. [Example] Next, an example of the present invention will be described with reference to the drawings. FIG. 1 is a block diagram of an embodiment of a data processing apparatus according to the present invention. The instruction address register 2 is a register in which an instruction address is stored, and receives an instruction address sent from the instruction prefetch control device 1 via the signal line 101, and transfers the instruction address to the branch history table 3 via the signal line 102. , the comparator 4 and the storage device 9. The 0 branch history table 3 stores the address information of branch instructions and the branch destination address in pairs, and stores the address information of the branch instruction and the branch destination address in pairs. Input part of the address as an address and send the address information of the branch instruction to the signal line 10.
3 to the comparator 4, and the branch destination address is sent to the branch destination address register 5 via the signal line 104. The comparator 4 is a comparator that detects whether there is an address of a branch instruction that matches the instruction prefetch address in the branch history table 3, and compares it with the instruction prefetch address information sent from the instruction address register 2 via the signal line 102. The address information of the branch instructions sent from the branch history table 3 via the signal line 103 is compared, and when they match, the instruction prefetch control unit 1 and the branch destination indicate the match via the signal line 105. The 0 branch destination address register 5 sent to the address register 5 is a register in which the predicted branch destination address is stored, and the comparator 4 reports via the signal line 105 that a matching address exists in the branch history table 3. Then, it receives the branch destination address sent via the signal line 104 and sends the predicted branch destination address to the branch destination address buffer 6 and the instruction prefetch control device 1 via the signal line 106. The branch destination address buffer 6 stores the predicted branch destination address until the branch destination address is actually calculated by the branch instruction in order to check whether the predicted branch destination address matches the branch destination address when the branch instruction is executed. This buffer receives the predicted branch destination address sent from the branch destination address register 5 via the signal line 106 and sends it to the comparator 7 via the signal line 107 from the instruction address register 2.
The predicted branch destination address in the branch history table 3 corresponding to the branch destination address at the time of execution of the branch instruction in . The comparator 7 is a circuit that compares the predicted branch destination address and the branch destination address when the branch instruction is executed, and compares the branch destination address when the branch instruction is executed, which is sent from the instruction address register 2 via the signal line 102, and the signal line It compares the predicted branch destination addresses sent from the buffer address buffer 6 via the buffer address buffer 107 and notifies the microinstruction control unit 8 of the match/mismatch via the signal line 108. When the microinstruction control unit 8 is informed by the comparator 7 via the signal line 108 that the predicted branch destination address and the branch destination address at the time of execution of the branch instruction do not match, the microinstruction control unit 8 sends an instruction to the signal line 10 to retake the instruction.
It notifies the instruction prefetch control device 1 via the signal line 112, receives the next instruction to be executed from the instruction stack 13 via the signal line 112, and controls updating of the instruction counter 14 via the signal line 116. Storage device 9 receives an instruction prefetch address from instruction address register 2 via signal line 102, and sends the instruction at that address to instruction register IO via signal line 110. The instruction register IO is a register that holds an instruction while calculating the address of an operand, and stores the instruction sent from the storage device 9 via the signal line 110. Send some or all of the instructions to the stack 13. The address calculation circuit 11 is a circuit that calculates the address of an operand, and calculates the address of the operand using a part of the instruction sent via the signal line 111. It is sent to the address stack 12, and if there is a branch instruction in the instruction register IO, the branch destination address is calculated. The address stack 12 is a buffer for storing operand addresses until the instruction is executed, and stores the operand addresses sent from the address calculation circuit 11 via the signal line 113, and stores the operand addresses corresponding to the next instruction to be executed. The address is sent to the instruction counter 14 via the signal line 114. The instruction stack 13 is a buffer for storing pre-fetched instructions until the instruction is executed, and the instructions sent from the instruction register IO via the signal line 111 are stored and are executed next via the signal line 112. The command is sent to the microinstruction controller 8. The instruction counter 14 is a counter that holds the address of the instruction being executed by the microinstruction control device 8, and is incremented by an instruction sent from the microinstruction control device 8 via a signal line 116. Further, when a successful branch is indicated via the signal line 116, the branch address sent from the address stack 12 via the signal line 114 is stored, and the predicted branch destination address and the branch destination address when the branch instruction is executed are stored. If these do not match, the address of the command to be retaken is sent to the command prefetch control device 1 via the signal line 115. The instruction prefetch control device 1 is a circuit that controls instruction prefetch, and the signal line 101
The instruction prefetch address or branch destination address is sent to the instruction address register 2 via the instruction address register 2. When the comparator 4 reports via the signal line 105 that there is an address in the branch history table 3 that matches the instruction address stored in the instruction address register 2, the branch destination address register 5 outputs the signal □ signal line 106. The branch destination address sent via the branch destination address is received and the instruction is prefetched! In the case of a branch instruction that has not been registered in the branch history table 3, the branch destination address sent from the address calculation circuit 11 via the signal line +13 is prefetched. Further, if the predicted branch destination address and the branch destination address at the time of execution of the branch instruction do not match, and the microinstruction control unit 8 instructs the instruction to be retaken via the signal line 109, the instruction counter 14 When the instruction address is received through 115, the instruction is prefetched. Next, the operation of this embodiment will be explained. First, when an instruction is prefetched, the address of the prefetched instruction is sent to the instruction address register 2 via the signal line +01. The branch history table 3 sends each piece of information according to the instruction address in the instruction address register 2, and if there is a match, the comparator 4 reports the match to the instruction prefetch control device 1 via the signal line 105. Branch destination address register 5 receives a predicted branch destination address. Furthermore, the instruction is taken out from the storage device 9 based on the instruction address in the instruction address register 2, and sent to the instruction register IO via the signal line 110. The instruction prefetch control device 1 sends the next instruction prefetch address to the instruction address register 2 based on the instruction address in the branch destination address register 5, and the branch destination address buffer 6 receives the predicted branch sent from the branch destination address register 5. The destination address is stored. Next, when the branch instruction is actually executed, the address calculation circuit 11 calculates the branch destination address using the address information of the branch instruction stored in the instruction register IO. This branch destination address is sent to the instruction address register 2 via the instruction prefetch control device 1. The comparator 7 compares the actual branch destination address in the instruction address register 2 with the corresponding predicted branch destination address stored in the branch destination address buffer 6, and sends the match/mismatch to the microinstruction via the signal line 108. Report to control device 8. When an address match is reported, the microinstruction control unit 8 stores the branch destination address in the address stack 12 in the instruction counter 14 via the signal line 114 if the branch is successful, and stores it in the instruction counter 14 via the signal line 116 if the branch fails. instruction counter I4 via
Instruct the count up. When address mismatch is reported, if the branch is successful, the branch destination address in the address stack 12 is stored in the instruction counter 14 via the signal line 114, and the address in the instruction counter 14 is sent to the instruction prefetch control device 1. If the 0 branch, which issues an instruction to retake an instruction, fails, the instruction counter 14 is incremented and processing of subsequent instructions continues as if no address mismatch had been reported. If there is an interval between the reported mismatch between the predicted branch target address and the actual branch target address and the execution of that branch instruction, the address mismatch must be maintained. If the second branch instruction is successfully branched between the time the mismatch is reported and the branch instruction is executed, processing is transferred to the branch destination of the second branch instruction, and the address mismatch is performed as if there had been no mismatch. Continue processing. In this way, even if an address mismatch is reported, the instruction is not necessarily retaken, so some kind of control means is required. Conventionally, this control means was constructed using a large amount of hardware, but in the present invention, the amount of hardware can be reduced by converting it into a microprogram. Furthermore, by creating a microprogram, it becomes possible to easily follow changes in control. [Effects of the Invention] As explained above, the present invention enables an existing microinstruction control device to control the retaking of instructions when the predicted branch destination address and the branch destination address at the time of execution of the branch instruction do not match. This has the effect of reducing the number of 8-doware control circuits and reducing costs.

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

第1図は本発明のデータ処理装置の一実施例の要部のブ
ロック図である。 1・・・・・・命令先取り制御装置、 2・・・・・・命令アドレスレジスタ、3・・・・・・
分岐ヒストリテーブル、4・・・・・・比較器、 5・・・・・・分岐先アドレスレジスタ、6・・・・・
・分岐先アドレスバッファ、7−−−−−−比較器、 8・・・・・・マイクロ命令制御装置、9・・・・・・
記憶装置、 10−・・・・・命令レジスタ、 ll・・・・・・アドレス計算回路、 12・・・・・・アドレススタック、 13・・・・・・命令スタック、 14・・・・・・命令カウンタ。
FIG. 1 is a block diagram of essential parts of an embodiment of a data processing apparatus according to the present invention. 1...Instruction prefetch control device, 2...Instruction address register, 3...
Branch history table, 4... Comparator, 5... Branch destination address register, 6...
・Branch destination address buffer, 7---Comparator, 8...Micro instruction control device, 9...
Storage device, 10--Instruction register, 11--Address calculation circuit, 12--Address stack, 13--Instruction stack, 14--・Instruction counter.

Claims (1)

【特許請求の範囲】  分岐命令のアドレスと該分岐命令の分岐先アドレスを
対にして記憶する分岐ヒストリテーブルと、命令の実行
を制御するマイクロ命令制御装置とを備え、命令の先取
りを行なうデータ処理装置において、 分岐命令の分岐先アドレスを格納するアドレススタック
と、前記分岐ヒストリテーブルにより予測した分岐先ア
ドレスと、分岐命令の分岐先アドレスを比較する比較手
段と、前記比較手段の比較結果を前記マイクロ命令制御
装置に通知する手段とを備え、 前記比較結果が不一致であった場合、前記マイクロ命令
制御装置の制御により、前記アドレススタックに格納さ
れた分岐先アドレスにより、命令の先取りを再開するこ
とを特徴とするデータ処理装置。
[Claims] Data processing that prefetches instructions, comprising a branch history table that stores the address of a branch instruction and a branch destination address of the branch instruction as a pair, and a microinstruction control device that controls execution of instructions. In the apparatus, an address stack for storing a branch destination address of a branch instruction, a comparison means for comparing a branch destination address predicted by the branch history table and a branch destination address of the branch instruction, and a comparison result of the comparison means for comparing the branch destination address with the branch destination address of the branch instruction. means for notifying an instruction control device, and if the comparison result is a mismatch, restarting prefetching of the instruction using the branch destination address stored in the address stack under the control of the microinstruction control device. Characteristic data processing device.
JP2337788A 1988-02-02 1988-02-02 Data processor Pending JPH01197839A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2337788A JPH01197839A (en) 1988-02-02 1988-02-02 Data processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2337788A JPH01197839A (en) 1988-02-02 1988-02-02 Data processor

Publications (1)

Publication Number Publication Date
JPH01197839A true JPH01197839A (en) 1989-08-09

Family

ID=12108844

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2337788A Pending JPH01197839A (en) 1988-02-02 1988-02-02 Data processor

Country Status (1)

Country Link
JP (1) JPH01197839A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06110684A (en) * 1992-08-11 1994-04-22 Internatl Business Mach Corp <Ibm> System and method for super-scalar processing

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5132481A (en) * 1974-09-13 1976-03-19 Matsushita Electric Ind Co Ltd YOZAIKAISHUHOHO
JPS51100972A (en) * 1975-03-04 1976-09-06 Toyo Boseki Haigasukarano yozaikaishuho
JPS52146778A (en) * 1976-05-31 1977-12-06 Toyobo Co Ltd Recovery of solvent
JPS5742319A (en) * 1980-08-26 1982-03-09 Zink Co John Method and device for recovering hydrocarbon from air-hydrocarbon vapor mixture
JPS58501269A (en) * 1981-08-14 1983-08-04 ロ−マン ゲ−エムベ−ハ− ウント コ− カ−ゲ− Method and apparatus for removing impurities from a gas stream containing solvent vapor
JPH03202120A (en) * 1989-12-28 1991-09-03 Kobe Steel Ltd Solvent recovery apparatus
JPH06304441A (en) * 1993-04-22 1994-11-01 Toray Ind Inc Organic solvent recovery device
JPH0739717A (en) * 1993-07-28 1995-02-10 Toray Ind Inc Organic solvent recovering apparatus

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5132481A (en) * 1974-09-13 1976-03-19 Matsushita Electric Ind Co Ltd YOZAIKAISHUHOHO
JPS51100972A (en) * 1975-03-04 1976-09-06 Toyo Boseki Haigasukarano yozaikaishuho
JPS52146778A (en) * 1976-05-31 1977-12-06 Toyobo Co Ltd Recovery of solvent
JPS5742319A (en) * 1980-08-26 1982-03-09 Zink Co John Method and device for recovering hydrocarbon from air-hydrocarbon vapor mixture
JPS58501269A (en) * 1981-08-14 1983-08-04 ロ−マン ゲ−エムベ−ハ− ウント コ− カ−ゲ− Method and apparatus for removing impurities from a gas stream containing solvent vapor
JPH03202120A (en) * 1989-12-28 1991-09-03 Kobe Steel Ltd Solvent recovery apparatus
JPH06304441A (en) * 1993-04-22 1994-11-01 Toray Ind Inc Organic solvent recovery device
JPH0739717A (en) * 1993-07-28 1995-02-10 Toray Ind Inc Organic solvent recovering apparatus

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06110684A (en) * 1992-08-11 1994-04-22 Internatl Business Mach Corp <Ibm> System and method for super-scalar processing

Similar Documents

Publication Publication Date Title
US5168571A (en) System for aligning bytes of variable multi-bytes length operand based on alu byte length and a number of unprocessed byte data
US5394530A (en) Arrangement for predicting a branch target address in the second iteration of a short loop
US4476525A (en) Pipeline-controlled data processing system capable of performing a plurality of instructions simultaneously
US6820216B2 (en) Method and apparatus for accelerating fault handling
JPH01197839A (en) Data processor
KR100930332B1 (en) Processors and Control Methods
JP2636088B2 (en) Information processing device
JP2534662B2 (en) Instruction cache control method
GB2527643A (en) Security domain prediction
JPS63147230A (en) Data processor for prefetch of instruction
JPH03175548A (en) Microprocessor and address control system
JPH0248733A (en) Information processor
JPH04264923A (en) Information processor
JPS63195736A (en) Branch instruction processor for pipeline control
JPH0773034A (en) Information processor
JP3251148B2 (en) Pipeline data processing device
JPS6220032A (en) Information processor
JPH08161226A (en) Data look-ahead control method, cache controller and data processor
JPS61175733A (en) Control system of branch estimation
JPH02100740A (en) Block loading operation system for cache memory unit
JPS61289464A (en) Scalar arithmetic processor
JPH04253241A (en) Branched predictive cache memory control system
JPH0277853A (en) Data processor
JPH02168324A (en) Information processing device
JPH04117528A (en) Data collation processor