JPH01239638A - 分岐予測を行う情報処理装置 - Google Patents
分岐予測を行う情報処理装置Info
- Publication number
- JPH01239638A JPH01239638A JP6649188A JP6649188A JPH01239638A JP H01239638 A JPH01239638 A JP H01239638A JP 6649188 A JP6649188 A JP 6649188A JP 6649188 A JP6649188 A JP 6649188A JP H01239638 A JPH01239638 A JP H01239638A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- branch
- address
- register
- address table
- 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
Links
- 230000010365 information processing Effects 0.000 claims description 17
- 238000000034 method Methods 0.000 description 5
- 238000012790 confirmation Methods 0.000 description 3
- 238000007796 conventional method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
Landscapes
- Advance Control (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は分岐予測を行う情報処理装置に関し、特に効果
的に命令の先取りを実行するため、無条件に分岐が行わ
れ、かつ、分岐先が動的に変]ヒしない命令については
後続する命令の実行を、当該分岐命令の実行が終了する
より以前に開始することにより、このような分岐命令の
処理を高速に行う分岐予測を行う情報処理装置に関する
、〔従来の技術〕 一般に、情報処理装置では、命令コードの取り込み(以
下、命令フエ・ソチ)、命令コードの解読(以下、命令
デコード)、命令実行という操作を各命令について行う
ことにより、プログラムを実行している。命令によって
は、この池に、オペランド・アドレスの計算、主記憶か
らのオペランドのアクセス(以下、オペランド・リード
)や白金実行結果の主記憶I\の書き戻しく以下、オペ
ランド・ライト)という操作を・ピ・要とするものもあ
る。
的に命令の先取りを実行するため、無条件に分岐が行わ
れ、かつ、分岐先が動的に変]ヒしない命令については
後続する命令の実行を、当該分岐命令の実行が終了する
より以前に開始することにより、このような分岐命令の
処理を高速に行う分岐予測を行う情報処理装置に関する
、〔従来の技術〕 一般に、情報処理装置では、命令コードの取り込み(以
下、命令フエ・ソチ)、命令コードの解読(以下、命令
デコード)、命令実行という操作を各命令について行う
ことにより、プログラムを実行している。命令によって
は、この池に、オペランド・アドレスの計算、主記憶か
らのオペランドのアクセス(以下、オペランド・リード
)や白金実行結果の主記憶I\の書き戻しく以下、オペ
ランド・ライト)という操作を・ピ・要とするものもあ
る。
一般に情報処理装置では、命令フエ・・lチ、命令のデ
コード、オペランド・アドレスの計算、オペランド・リ
ード、演算の実行、オペランド・ライトを行う必要があ
る、これらの操作は、情報処理装置内の各部分で分担し
て処理されるため、連続する数命令についてこれらの各
操作をオーバーラツプさせて並列に行うことが可能であ
る。この点に着目し、命令を高速に実行するなめに、数
命令分の操作を並列に処理するように制御することが広
く行われている。これをパイプライン制御といい、この
ような制御をとっている情報処理装置をパイプライン型
情報処理装置と呼ぶ。
コード、オペランド・アドレスの計算、オペランド・リ
ード、演算の実行、オペランド・ライトを行う必要があ
る、これらの操作は、情報処理装置内の各部分で分担し
て処理されるため、連続する数命令についてこれらの各
操作をオーバーラツプさせて並列に行うことが可能であ
る。この点に着目し、命令を高速に実行するなめに、数
命令分の操作を並列に処理するように制御することが広
く行われている。これをパイプライン制御といい、この
ような制御をとっている情報処理装置をパイプライン型
情報処理装置と呼ぶ。
パイプライン型情報処理装置で処理を高速に行うために
は、装置内の各部分が並列に動作する必要がある。分岐
命令においては、分岐先アドレスの計算が終了するまで
命令フエ・・lチを行うことがてきないため、パイプラ
インが有効に働かず、性能向上の妨げになっていた。こ
の問題を解決するため、過去に実行した分岐命令につい
て、情% 5理装置内に分岐命令の存在するアドレスと
分岐先アドレスの対を命令アドレス表および分岐先アド
レス表に記録しておくことにより、この分岐命令を再び
実行する際の命令フエ・ソチを分岐先アドレスの計算終
了以前に開始する、すなわち、分岐予測を行う方法が用
いられている。
は、装置内の各部分が並列に動作する必要がある。分岐
命令においては、分岐先アドレスの計算が終了するまで
命令フエ・・lチを行うことがてきないため、パイプラ
インが有効に働かず、性能向上の妨げになっていた。こ
の問題を解決するため、過去に実行した分岐命令につい
て、情% 5理装置内に分岐命令の存在するアドレスと
分岐先アドレスの対を命令アドレス表および分岐先アド
レス表に記録しておくことにより、この分岐命令を再び
実行する際の命令フエ・ソチを分岐先アドレスの計算終
了以前に開始する、すなわち、分岐予測を行う方法が用
いられている。
分岐予測を行う場合、従来の方法では、条件分岐命令や
分岐先が動的に変化する分岐命令については、誤ったア
ドレスから命令を先取りする可能性があるため、分岐命
令に後続する命令は実行を保留しておき、分岐が確定し
てから後続する命令の128哩を再開している。すなわ
ち、分岐予測が正しかった場合には処理を継続し、正し
くなかった場合には先取りして実行を保留しておいた命
令を破棄し、分岐命令の結果・実行すべき命令から実行
を行っていた。
分岐先が動的に変化する分岐命令については、誤ったア
ドレスから命令を先取りする可能性があるため、分岐命
令に後続する命令は実行を保留しておき、分岐が確定し
てから後続する命令の128哩を再開している。すなわ
ち、分岐予測が正しかった場合には処理を継続し、正し
くなかった場合には先取りして実行を保留しておいた命
令を破棄し、分岐命令の結果・実行すべき命令から実行
を行っていた。
分岐命令の存在するアドレスと分岐先アドレスを対にし
て記録しておく方法において従来の方法では、無条件に
分岐し、かつ、分岐先が動的に変化しない分岐命令と、
条件分岐や分岐先が動的に変(ヒする命令とを区別する
ことなく命令アドレス表及び分岐先アドレス表に記録し
ていたため、無条件に分岐し、かつ、分岐先が動的に変
化しない分岐命令についても、当該分岐命令の実行が終
了して分岐が確定するまで後続命令の処理を1−留する
必要があった、また、先行させた処理を取り消すためハ
ードウェアも投入する必要があった。このため、無条件
に分岐し、かつ、分岐先が動的に変化しない分岐命令に
ついては、分岐予測の効果を充分に発揮できず、性能向
上の大きな妨げになっているという問題点があった6 〔課題を解決するための手段〕 本発明による情報処理装置では前記の問題点を解決する
ため、実行しようとする命令が無条件に分岐し、かつ、
分岐先が動的に変化し、ない分岐命令であることを認識
する無条件分岐命令認識部と、命令アドレス表および分
岐先アドレス表に対応させて無条件分岐有効表とを有し
ている5〔作用〕 本発明の情報処理装置では実行した分岐命令が無条件に
分岐し、かつ、分岐先が動的に変化しない分岐命令のと
きには、命令アドレス表および分岐先アドレス表に各々
のアドレスを設定するとともに、無条件分岐有効表の内
容に有効を設定する5命令フエ・ソチのアドレスが命令
アドレス表に存在するときには、対応する分岐先アドレ
ス表に記録されたアドレスから命令フエ・・Iチを開始
することにより、分岐予測を行うが、このとき、命令ア
ドレス表に対応する無条件分岐有効表の内容が有効であ
れば、分岐命令に後続する命令の処理を保留することな
く命令実行を継続する7 〔実施例〕 次に本発明の実施例について図面を参照して詳糸田に説
明する 第1図は本発明の一実施例を示す。第1図において、本
発明の一実方麺例は先取りする命令のアドレスを保持す
る先取リアドレス・レジスタ11と、命令コートを保持
する命令レジスタ12と、分岐命令の存在する位置に関
係するアドレスを保持する命令アドレス表13と、命令
アドレス表13に対応して分岐先アドレスを保持する分
岐先アドレツ表14とを持ち、先取リアドレス・レジス
タ11に保持されたアドレスが命令アドレス表13に存
在するときには、前記アドレスが命令アドレス表内で存
在する位置に対応する分岐先アドレス表14内の位置に
保持された分岐先アドレスから命令の先取りを行う情報
処理装置で、命令レジスタ12に保持された命令が無条
件に分岐し、かつ、分岐先が動的に変化しない分岐命令
であることを認識する無条件分岐命令認識部15と、命
令アドレス表13および分岐先アドレス表14に対応さ
せて無条件分岐有効表16とが設けられている。
て記録しておく方法において従来の方法では、無条件に
分岐し、かつ、分岐先が動的に変化しない分岐命令と、
条件分岐や分岐先が動的に変(ヒする命令とを区別する
ことなく命令アドレス表及び分岐先アドレス表に記録し
ていたため、無条件に分岐し、かつ、分岐先が動的に変
化しない分岐命令についても、当該分岐命令の実行が終
了して分岐が確定するまで後続命令の処理を1−留する
必要があった、また、先行させた処理を取り消すためハ
ードウェアも投入する必要があった。このため、無条件
に分岐し、かつ、分岐先が動的に変化しない分岐命令に
ついては、分岐予測の効果を充分に発揮できず、性能向
上の大きな妨げになっているという問題点があった6 〔課題を解決するための手段〕 本発明による情報処理装置では前記の問題点を解決する
ため、実行しようとする命令が無条件に分岐し、かつ、
分岐先が動的に変化し、ない分岐命令であることを認識
する無条件分岐命令認識部と、命令アドレス表および分
岐先アドレス表に対応させて無条件分岐有効表とを有し
ている5〔作用〕 本発明の情報処理装置では実行した分岐命令が無条件に
分岐し、かつ、分岐先が動的に変化しない分岐命令のと
きには、命令アドレス表および分岐先アドレス表に各々
のアドレスを設定するとともに、無条件分岐有効表の内
容に有効を設定する5命令フエ・ソチのアドレスが命令
アドレス表に存在するときには、対応する分岐先アドレ
ス表に記録されたアドレスから命令フエ・・Iチを開始
することにより、分岐予測を行うが、このとき、命令ア
ドレス表に対応する無条件分岐有効表の内容が有効であ
れば、分岐命令に後続する命令の処理を保留することな
く命令実行を継続する7 〔実施例〕 次に本発明の実施例について図面を参照して詳糸田に説
明する 第1図は本発明の一実施例を示す。第1図において、本
発明の一実方麺例は先取りする命令のアドレスを保持す
る先取リアドレス・レジスタ11と、命令コートを保持
する命令レジスタ12と、分岐命令の存在する位置に関
係するアドレスを保持する命令アドレス表13と、命令
アドレス表13に対応して分岐先アドレスを保持する分
岐先アドレツ表14とを持ち、先取リアドレス・レジス
タ11に保持されたアドレスが命令アドレス表13に存
在するときには、前記アドレスが命令アドレス表内で存
在する位置に対応する分岐先アドレス表14内の位置に
保持された分岐先アドレスから命令の先取りを行う情報
処理装置で、命令レジスタ12に保持された命令が無条
件に分岐し、かつ、分岐先が動的に変化しない分岐命令
であることを認識する無条件分岐命令認識部15と、命
令アドレス表13および分岐先アドレス表14に対応さ
せて無条件分岐有効表16とが設けられている。
無条件分岐命令認識部15は、命令レジスタに保持され
ている命令が無条件に分岐し、かつ、分岐先が動的に変
化しない分岐命令であると認識したときには、命令アド
レス表13および分岐先アドレス表14の内容な設定す
るとともに無条件分岐有効表16に有効の値を書き込み
、さらに、先取リアドレス・レジスタ11に保持された
アドレスが命令アドレス表13に存在し、かつ、このア
ドレスが命令アドレス表13内で存在する位置に対応す
る無条件分岐有効表16内の位置に保持された内容が有
効を示しているときには1分岐の確定を待つことなく分
岐命令に後続する命令を実行するようにしたものである
。
ている命令が無条件に分岐し、かつ、分岐先が動的に変
化しない分岐命令であると認識したときには、命令アド
レス表13および分岐先アドレス表14の内容な設定す
るとともに無条件分岐有効表16に有効の値を書き込み
、さらに、先取リアドレス・レジスタ11に保持された
アドレスが命令アドレス表13に存在し、かつ、このア
ドレスが命令アドレス表13内で存在する位置に対応す
る無条件分岐有効表16内の位置に保持された内容が有
効を示しているときには1分岐の確定を待つことなく分
岐命令に後続する命令を実行するようにしたものである
。
第2図は本実施例における情報処理装置の内部を示す、
第2図において、先取リアドレス・レジスタ11は先取
りしている命令コードの存在するアドレスを示すレジス
タである。主記憶制御部20は主記憶21のアクセスを
行う部分である。主記憶制御部20の内部にメモリ管理
機構やキャッシュ・メモリを持つ情報処理装置も考えら
れる。
第2図において、先取リアドレス・レジスタ11は先取
りしている命令コードの存在するアドレスを示すレジス
タである。主記憶制御部20は主記憶21のアクセスを
行う部分である。主記憶制御部20の内部にメモリ管理
機構やキャッシュ・メモリを持つ情報処理装置も考えら
れる。
命令デコード部22は命令のデコードとアドレス計算を
行う部分であり、命令レジスタ12、アドレス計算部2
3、命令アドレス・レジスタ24、無条件分岐命令認識
部155分岐命令確定認識部25を内部に持つ、アドレ
ス計算部23は、命令レジスタ12に格納された命令コ
ードや命令アドレス・レジスタ24に格納されたアドレ
スや情報処理装置内のレジスタを用いてオペランド・ア
ドレスを計算する部分である、命令アドレス表13は連
想メモリで構成され、これに格納された総てのアドレス
と先取リアドレス・レジスタ11の内容との比較を行う
この比較の結果、一致するアドレスがあれば、このア
ドレスに対応する分岐先アドレスが有効な値として分岐
先アドレス表14から出力される。一致するアドレスが
ない場合は、この表からの出力は無効となる。分岐先ア
ドレス表14は、通常のメモリより構成される。なお、
26はアドレス選択部、27はアドレス加算部、28は
命令実行部である。
行う部分であり、命令レジスタ12、アドレス計算部2
3、命令アドレス・レジスタ24、無条件分岐命令認識
部155分岐命令確定認識部25を内部に持つ、アドレ
ス計算部23は、命令レジスタ12に格納された命令コ
ードや命令アドレス・レジスタ24に格納されたアドレ
スや情報処理装置内のレジスタを用いてオペランド・ア
ドレスを計算する部分である、命令アドレス表13は連
想メモリで構成され、これに格納された総てのアドレス
と先取リアドレス・レジスタ11の内容との比較を行う
この比較の結果、一致するアドレスがあれば、このア
ドレスに対応する分岐先アドレスが有効な値として分岐
先アドレス表14から出力される。一致するアドレスが
ない場合は、この表からの出力は無効となる。分岐先ア
ドレス表14は、通常のメモリより構成される。なお、
26はアドレス選択部、27はアドレス加算部、28は
命令実行部である。
つぎに本実施例における情報処理装置で命令を先取りす
る手順を示す。
る手順を示す。
先取リアドレス・レジスタ11に格納されたアドレスに
よりその位置を指定される主記憶21上の命令コードは
、主記憶制御部20によって命令レジスタに格納される
。この操作が終了すると、アドレス加算部27は後続す
る命令のアドレスを計算し、アドレス選択部26に入力
する。アドレス選択部26では、通常命令の実行時には
アドレス加算部27からの出力を選択し、先取リアドレ
ス・レジスタ11に送る。先取リアドレス・レジスタ1
1では、アドレス選択部26から送られるアドレスを格
納する。この結果、先取リアドレス・レジスタ11に格
納されたアドレスは、命令フエッチを行っているアドレ
スを示すことになる。
よりその位置を指定される主記憶21上の命令コードは
、主記憶制御部20によって命令レジスタに格納される
。この操作が終了すると、アドレス加算部27は後続す
る命令のアドレスを計算し、アドレス選択部26に入力
する。アドレス選択部26では、通常命令の実行時には
アドレス加算部27からの出力を選択し、先取リアドレ
ス・レジスタ11に送る。先取リアドレス・レジスタ1
1では、アドレス選択部26から送られるアドレスを格
納する。この結果、先取リアドレス・レジスタ11に格
納されたアドレスは、命令フエッチを行っているアドレ
スを示すことになる。
このときには、命令アドレス表13からの出力は無効で
あるため、予測中フラグの内容は常に無効が設定される
。命令デコード部22では、命令レジスタ12に格納さ
れた命令コードをデコードし。
あるため、予測中フラグの内容は常に無効が設定される
。命令デコード部22では、命令レジスタ12に格納さ
れた命令コードをデコードし。
予測中フラグが無効のときにはこれを保留することなく
デコード結果を命令実行部28に送る。命令実行部28
では、命令デコード部22におけるデコード結果に従い
、命令を実行する。
デコード結果を命令実行部28に送る。命令実行部28
では、命令デコード部22におけるデコード結果に従い
、命令を実行する。
命令デコード部22により実行すべき命令が分岐命令で
あると認識されたときには、命令レジスタ12に格納さ
れた命令コードの指定に従ってアドレス計算部23にお
いて分岐先アドレスが計算される3このアドレスは命令
アドレス・レジスタ24およびアドレス選択部26に送
られる。アドレス選択部26では、アドレス計算部23
から送られたアドレスを先取リアドレス・レジスタ11
に送ることで分岐が行なわれる。また、このときに、命
令アドレス・レジスタの値が命令アドレス表13、アド
レス計算部23の出力が分岐先アドレス表14、無条件
分岐命令認識部15の出力が無条件分岐有効表16に記
録される。
あると認識されたときには、命令レジスタ12に格納さ
れた命令コードの指定に従ってアドレス計算部23にお
いて分岐先アドレスが計算される3このアドレスは命令
アドレス・レジスタ24およびアドレス選択部26に送
られる。アドレス選択部26では、アドレス計算部23
から送られたアドレスを先取リアドレス・レジスタ11
に送ることで分岐が行なわれる。また、このときに、命
令アドレス・レジスタの値が命令アドレス表13、アド
レス計算部23の出力が分岐先アドレス表14、無条件
分岐命令認識部15の出力が無条件分岐有効表16に記
録される。
−度実行されて、上に示した手順で命令アドレス表13
と分岐先アドレス表14に格納されている命令を再び実
行する手順は以下のとおりである。
と分岐先アドレス表14に格納されている命令を再び実
行する手順は以下のとおりである。
このような分岐命令をここでは、再実行無条件分岐命令
と呼ぶ、先取リアドレス・レジスタ11に格納されたア
ドレスは、命令フェッチを行っているアドレスを示して
いるが、このアドレスは常に命令アドレス表13に記録
された総てのアドレスと比較されている。これを検索操
作と呼び、先取リアドレス・レジスタ11に格納された
アドレスと一致するアドレスが命令アドレス表13に存
在するときには検索操作が成功したものとする、再実行
無条件分岐命令の先取りを行うと、先取リアドレス・レ
ジスタ11に格納されたアドレスによる検索操作が成功
するため、一致したアドレスに対応する分岐先アドレス
が分岐先アドレス表14から有効な値として出力され、
アドレス選択部26に送られる。アドレス選択部26で
は、有効な値として出力された分岐先アドレスを受は取
ると、これを先取リアドレス・レジスタ11に送る。主
記憶制御部20では、先取リアドレス・レジスタ11に
設定されたアドレスから命令フェッチを行うため、命令
フェッチは分岐先から行われ、これ以降は、上記、命令
を先取りする手順により命令コードの先取りが行われる
。また、検索操作が成功した場合、予測中フラグ2つの
値は無条件分岐有効表16に記録された値に従って設定
される。
と呼ぶ、先取リアドレス・レジスタ11に格納されたア
ドレスは、命令フェッチを行っているアドレスを示して
いるが、このアドレスは常に命令アドレス表13に記録
された総てのアドレスと比較されている。これを検索操
作と呼び、先取リアドレス・レジスタ11に格納された
アドレスと一致するアドレスが命令アドレス表13に存
在するときには検索操作が成功したものとする、再実行
無条件分岐命令の先取りを行うと、先取リアドレス・レ
ジスタ11に格納されたアドレスによる検索操作が成功
するため、一致したアドレスに対応する分岐先アドレス
が分岐先アドレス表14から有効な値として出力され、
アドレス選択部26に送られる。アドレス選択部26で
は、有効な値として出力された分岐先アドレスを受は取
ると、これを先取リアドレス・レジスタ11に送る。主
記憶制御部20では、先取リアドレス・レジスタ11に
設定されたアドレスから命令フェッチを行うため、命令
フェッチは分岐先から行われ、これ以降は、上記、命令
を先取りする手順により命令コードの先取りが行われる
。また、検索操作が成功した場合、予測中フラグ2つの
値は無条件分岐有効表16に記録された値に従って設定
される。
すなわち、無条件分岐有効表16に記録された値が無効
のときには予測中フラグ2つの値は分岐未確定を示す値
となり、無条件分岐有効表16に記録された値が有効の
ときには予測中フラグ2つの値が分岐確定を示す値とな
る。検索操1乍が成功し予測中フラグ2つの値が分岐未
確定に設定される場合は1条件分岐命令や分岐先が動的
に変1ヒする分岐命令について分岐予測を行ったことを
示している。この場合、命令デコード部では分岐命令確
定認識部において当該分岐命令が確定したことを認識す
るまで、命令実行部28に対して命令デコデコード結果
の受渡しを保留する。すなわち、命令の実行を保留する
。
のときには予測中フラグ2つの値は分岐未確定を示す値
となり、無条件分岐有効表16に記録された値が有効の
ときには予測中フラグ2つの値が分岐確定を示す値とな
る。検索操1乍が成功し予測中フラグ2つの値が分岐未
確定に設定される場合は1条件分岐命令や分岐先が動的
に変1ヒする分岐命令について分岐予測を行ったことを
示している。この場合、命令デコード部では分岐命令確
定認識部において当該分岐命令が確定したことを認識す
るまで、命令実行部28に対して命令デコデコード結果
の受渡しを保留する。すなわち、命令の実行を保留する
。
これに対し、検索操作が成功した予測中フラグ2つの値
が分岐確定に設定される場合は、無条件に分岐し、かつ
、分岐先が動的に変化しない分岐命令について分岐予測
を行ったことを示している。命令デコード部22におい
ては、予測中フラグ29の値が分岐確定のときには、命
令実行部に対して命令デコード結果を保留することなく
受渡して、分岐命令に後続する命令を実行する。
が分岐確定に設定される場合は、無条件に分岐し、かつ
、分岐先が動的に変化しない分岐命令について分岐予測
を行ったことを示している。命令デコード部22におい
ては、予測中フラグ29の値が分岐確定のときには、命
令実行部に対して命令デコード結果を保留することなく
受渡して、分岐命令に後続する命令を実行する。
以上説明したように本発明は無条件に分岐し、かつ、分
岐先が動的に変化しない分岐命令について分岐予測を行
った場合、分岐命令に後続する命令の処理を保留するこ
となく実行するため、このような分岐命令の実行時間を
大幅に短縮された情報処理装置を構成することが可能と
なる。
岐先が動的に変化しない分岐命令について分岐予測を行
った場合、分岐命令に後続する命令の処理を保留するこ
となく実行するため、このような分岐命令の実行時間を
大幅に短縮された情報処理装置を構成することが可能と
なる。
第1図は、本発明の一実施例における構成要毒を示す図
である。第2図は、本発明の一実施例を示すプロ・ツク
図である9 11・・・先取リアドレス・レジスタ、12・・・命令
レジスタ、13・・・命令アドレス表、14・・・分岐
先アドレス表、15・・・無条件分岐認識部、16・・
・無条件分岐有効表、20・・・主記憶制御部、21・
・・主記憶、22・・・命令デコード部、28・・・命
令実行部−
である。第2図は、本発明の一実施例を示すプロ・ツク
図である9 11・・・先取リアドレス・レジスタ、12・・・命令
レジスタ、13・・・命令アドレス表、14・・・分岐
先アドレス表、15・・・無条件分岐認識部、16・・
・無条件分岐有効表、20・・・主記憶制御部、21・
・・主記憶、22・・・命令デコード部、28・・・命
令実行部−
Claims (1)
- 先取りする命令のアドレスを保持する先取リアドレス・
レジスタ、命令コードを保持する命令レジスタ、分岐命
令の存在する位置に関係するアドレスを保持する命令ア
ドレス表、命令アドレス表に対応して分岐先アドレスを
保持する分岐先アドレス表を持ち、先取リアドレス・レ
ジスタに保持されたアドレスが命令アドレス表に存在す
るときには、前記アドレスが命令アドレス表内で存在す
る位置に対応する分岐先アドレス表内の位置に保持され
た分岐先アドレスから命令の先取りを行う情報処理装置
において、命令レジスタに保持された命令が無条件に分
岐し、かつ、分岐先が動的に変化しない分岐命令である
ことを認識する無条件分岐命令認識部と、命令アドレス
表および分岐先アドレス表に対応されて無条件分岐有効
表とを設け、無条件分岐命令認識部により命令レジスタ
に保持されている命令が無条件に分岐し、かつ、分岐先
が動的に変化しない分岐命令であると認識されたときに
は、命令アドレス表および分岐先アドレス表の内容を設
定するとともに無条件有効表に有効の値を書き込み、さ
らに、先取リアドレス・レジスタに保持されたアドレス
が命令アドレス表に存在し、かつ、前記アドレスが命令
アドレス表内で存在する位置に対応する無条件分岐有効
表内の位置に保持された内容が有効を示しているときに
は、分岐の確定を待つことなく分岐命令に後続する命令
を実行することを特徴とする分岐予測を行う情報処理装
置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP6649188A JPH01239638A (ja) | 1988-03-18 | 1988-03-18 | 分岐予測を行う情報処理装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP6649188A JPH01239638A (ja) | 1988-03-18 | 1988-03-18 | 分岐予測を行う情報処理装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH01239638A true JPH01239638A (ja) | 1989-09-25 |
Family
ID=13317324
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP6649188A Pending JPH01239638A (ja) | 1988-03-18 | 1988-03-18 | 分岐予測を行う情報処理装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH01239638A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6662295B2 (en) | 1997-09-10 | 2003-12-09 | Ricoh Company, Ltd. | Method and system dynamically presenting the branch target address in conditional branch instruction |
-
1988
- 1988-03-18 JP JP6649188A patent/JPH01239638A/ja active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6662295B2 (en) | 1997-09-10 | 2003-12-09 | Ricoh Company, Ltd. | Method and system dynamically presenting the branch target address in conditional branch instruction |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2603626B2 (ja) | データ処理装置 | |
| JPH0283735A (ja) | 命令先取り装置 | |
| JPH056894B2 (ja) | ||
| JP2526017B2 (ja) | ランタイム遅延削減方法及びデ―タ処理システム | |
| JPH02287626A (ja) | パイプライン方式の分岐命令制御装置 | |
| US20060242394A1 (en) | Processor and processor instruction buffer operating method | |
| JPH06266556A (ja) | データ処理装置 | |
| JPH01239638A (ja) | 分岐予測を行う情報処理装置 | |
| JPH10124312A (ja) | 中央処理装置 | |
| JP2508021B2 (ja) | デ−タ処理装置 | |
| JP2555664B2 (ja) | 分岐ヒストリテーブル書込制御方式 | |
| JP3471691B2 (ja) | マイクロ命令における分岐命令制御方式 | |
| JP2534674B2 (ja) | 情報処理装置 | |
| JP2503223B2 (ja) | 先行制御方式 | |
| JP2532560B2 (ja) | 高機能な例外処理を行うデ―タ処理装置 | |
| JP2591325B2 (ja) | 分岐制御装置 | |
| JPS6336336A (ja) | 情報処理装置 | |
| JPS61273637A (ja) | 情報処理装置 | |
| JPH027128A (ja) | 情報処理装置 | |
| JP2944335B2 (ja) | 情報処理装置 | |
| JPH03113535A (ja) | パイプライン制御機構 | |
| JPH01263830A (ja) | 情報処理装置 | |
| JPH06168120A (ja) | 命令先取り装置 | |
| JPS6047618B2 (ja) | 情報処理装置 | |
| JPH0247725A (ja) | データ処理装置 |