JPH0342722A - 分岐ヒストリテーブルを用いた分岐予測方式 - Google Patents

分岐ヒストリテーブルを用いた分岐予測方式

Info

Publication number
JPH0342722A
JPH0342722A JP17703089A JP17703089A JPH0342722A JP H0342722 A JPH0342722 A JP H0342722A JP 17703089 A JP17703089 A JP 17703089A JP 17703089 A JP17703089 A JP 17703089A JP H0342722 A JPH0342722 A JP H0342722A
Authority
JP
Japan
Prior art keywords
address
branch
instruction
branching
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
JP17703089A
Other languages
English (en)
Inventor
Takeshi Morisada
森定 剛
Hideshi Ishii
石井 英志
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 Computertechno Ltd
Original Assignee
NEC Corp
NEC Computertechno 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 Computertechno Ltd filed Critical NEC Corp
Priority to JP17703089A priority Critical patent/JPH0342722A/ja
Publication of JPH0342722A publication Critical patent/JPH0342722A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は2分岐ヒストリテーブルを用いた分岐予atす
方式、特に分岐先アドレスが嚢更される分岐命令に対す
る分岐予測方式に関する。
[従来の技術] 分岐命令の高速処理には各種の方法がある。その1つで
ある分岐ヒストリテーブルを用いた分岐予測では1分岐
命令のアドレスとその分岐命令の分岐先アドレスを対に
して記憶することにより命令語の取出し時に分岐命令の
分岐先アドレスを知ることができ、高速に分岐命令を処
理することができる(特公昭5O−22384)。
[発明が解決しようとする課題] 上述した様な従来の分岐ヒストリテーブルでは。
単に分岐先アドレスを記憶しているだけであるため2分
岐先アドレスに変更が生じた場合1分岐予測の性能か発
揮できない。又、アドレスが変更されることにより分岐
命令の性能が低下する。
[課題を解決するための手段] 本発明は1分岐命令のアドレスと該分岐命令の分岐先ア
ドレスとを対にして記憶する分岐ヒストリテーブルを有
し、命令の先取りを行うデータ処理装置において、命令
取出しアドレスにより前記分岐ヒストリテーブルから分
岐命令のアドレスを読出し、命令取出しアドレスと比較
し、一致/不一致を検出する索引手段と、前記分岐ヒス
トリテーブルの各エントリに対応し1分岐ヒストリテー
ブルに記憶されている分岐命令の分岐先アドレスが分岐
命令の実行時に変化したかどうかについて過去複数回の
履歴を記憶する記憶手段と、前記命令取出しアドレスに
より、前記記憶手段から前記履歴を読出し、該庫歴の組
合せにより分岐先手11すの有効/無効を決定する組合
せ手段と、前記索弓手段により命令取出しアドレスと分
岐命令のアドレスの一致か検出されたとき、前記組合せ
手段により決定された有効/無効に応じて分岐先予測の
実行を制御する手段とを有することを特徴とする。
[実施例] 次に2本発明について図面を参照しながら動作を説明す
る。
第1図は本発明の一実施例である。
命令アドレスレジスタ1は、命令取出し時の命令アドレ
ス又は2分岐ヒストリテーブルに分岐命令を登録する際
の分岐命令の命令アドレスを受けるレジスタである。命
令アドレスレジスタ1は線101を介して入力される命
令アドレスを受け。
その下位部分を信号線102を介して分岐命令アドレス
記憶22分岐先アドレス記憶32分岐先変更履歴テーブ
ル4にアドレスとして送出すると共に、その上位部分に
ついては信号線103を介して分岐命令アドレス記憶2
1分岐命令アドレス比較回路5に送出する。
分岐命令アドレス記憶2は、過去に実行した分岐命令の
粘果に魁づいて分岐命令のアドレスを記憶する記憶回路
であり、信号線102を介して命令アドレスレジスタ1
より送出される命令アドレスの下位部分をアドレスとし
、読出し動作時は信号線106に過去の分岐命令のアド
レスを分岐命令アドレス比較回路5に出力する。一方、
書込み動作時は1分岐命令アドレス記憶2は信号線10
2を介して命令アドレスレジスタ1より送出される命令
アドレスの上位部分を書込む。
分岐先アドレス記憶3は分岐命令アドレス記憶2に対応
して分岐先アドレスを記憶する記憶回路であり、信号線
102を介し命令アドレスレジスタ1より送出される命
令アドレスの下位部分をアドレスとして、読出し動作時
には予測分岐先アドレスを信号線107を介し分岐先ア
ドレスレジスタ9に送出する。一方2分岐先アドレス記
憶3は。
その書込み動作時は、信号線104を介して人力される
分岐先アドレスを書込む。
分岐先変更履歴テーブル4は1分岐命令アドレス記憶2
に対応して分岐先アドレスの変更の履歴を記憶する記憶
回路であり、信号線102を介して命令アドレスレジス
タ1より送出される命令アドレスの下位部分をアドレス
として、読出し動作時は、信号線108を介して履歴組
合せ回路6と分岐先変更履歴レジスタ10に分岐先アド
レスの変更の履歴を送出する。一方1分岐先変更履歴テ
ブル4は、その書込み動作時には、信号線114を介し
て命令光変更履歴レジスタ10より送出される以前の履
歴に、信号線105を介して入力される今回の情報を追
加変更し書込む。
分岐命令アドレス比較回路5は1分岐命令のアドレスと
命令先取リアドレスとが一致するかどうかを検出する比
較器であり、信号線103を介して命令アドレスレジス
タ1より送出される命令アドレスの上位部分と、信号線
106を介して分岐命令アドレス記憶2より送出される
過去の分岐命令のアドレスとを比較し、その結果を信号
線115を介してアンド回路7にて送出する。
履歴組合せ回路6は1分岐先アドレスの変更履歴に基づ
いて現在分岐ヒストリテーブルに登録されている分岐先
アドレスか有効であるかどうかを決定する組合せ回路で
あり、信号線108を介して分岐先変更履歴テーブル4
より送出される分岐先アドレスの変更履歴に従って、現
在の検索が有効であるかどうかを示す情報を信号線10
9を介してアンド回路7に送出する。
アンド訓路7は、信号線115を介して分岐命令アドレ
ス比較回路5より送出される命令取出しアドレスと分岐
命令のアドレスとの一致情報と。
信号線109を介し履歴組合せ回路6より送出される分
岐先アドレスの変更履歴による検索の有効情報により、
信号線110を介し分岐先検出フラグ8に予測分岐先ア
ドレスを検出したことを示す情報を出力する。
分岐先検出フラグ8は、予測分岐先アドレスが検出され
たことを示すフラグであり、信号線110を介しアンド
回路7より送出された予測分岐先アドレスが検出された
ことを示す情報を受け、信号線112に送出する。
分岐先アドレスレジスタ9は2分岐先検出フラグ8に対
応して予測分岐先アドレスを受けるレジスタであり、信
号線107を介し分岐先アドレス記憶3より送出される
過去の分岐命令の分岐先アドレスを受け、信号線113
に送出する。
分岐先変更履歴レジスタ10は1分岐先変更履歴テーブ
ル14更新用のレジスタであり、更新時に1つ前の分岐
先アドレスの変更履歴を信号線108を介して分岐先変
更履歴テーブル4より受け。
信号線111を介し分岐先変更履歴テーブル4に送出す
る。
次に、この実施例について動作を簡単に説明する。
最初に分岐命令の登録時の動作について説明する。
登録時には1分岐命令アドレスが命令アドレスレジスタ
1にセットされる。そして、−度分岐先変更履歴テーブ
ル4を読出し、一つ前までの分岐先アドレスの変更履歴
を読出す。次に、信号線104に分岐先アドレスが、信
号線105には今回は分岐先アドレスが変更されたかど
うかの情報がそれぞれセットされ1分岐命令アドレス記
憶2に命令アドレスレジスタ1によって示さ“れる分岐
命令のアドレスが1分岐先アドレス記憶3には分岐先ア
ドレスが1分岐先変更履歴テーブル4には今回までの分
岐先アドレスの変更履歴がそれぞれ書込まれる。
次に、索引動作について説明する。
索引時には、命令取出しアドレスが命令アドレスレジス
タ1にセットされる。このアドレスをもとに分岐命令ア
ドレス記憶2を調べ、一致するアドレスがあれば信号線
115が“1”となる。これと同時に分岐先変更履歴テ
ーブル4を調べ、過去の分岐先アドレスの変更履歴によ
り、たとえば多数決などにより、有効てあれば“1”を
信号線109に送出する。このようになると信号線11
0か“1“になり1分岐先検出フラグ8が立ち予41す
分岐先か見つかったことが報告される。
[発明の効果コ 以上説明したように本発明は、過去の分岐先アドレスの
変更履歴に従って多数決などにより2分岐ヒストリテー
ブルのヒツトの有効を制御することにより2分岐先アド
レスか変更される分岐命令について効率良く分岐先アド
レスを予測でき、高速に分岐命令を処理できるといった
効果がある。
【図面の簡単な説明】
第1図は本発明の実施例である。 1・・・命令アドレスレジスタ、2・・分岐命令アドレ
ス記憶、3・・・分岐先アドレス記憶、4・・・分岐先
変更履歴テーブル、5・・・分岐命令アドレス比較回路
、6・・履歴組合せ回路、8 分岐先検出フラグ。 9・・・分岐先アドレスレジスタ、10・・・分岐先変
更履歴レジスタ。

Claims (1)

  1. 【特許請求の範囲】 1)分岐命令のアドレスと該分岐命令の分岐先アドレス
    とを対にして記憶する分岐ヒストリテーブルを有し、命
    令の先取りを行うデータ処理装置において; 命令取出しアドレスにより前記分岐ヒストリテーブルか
    ら分岐命令のアドレスを読出し、該命令取出しアドレス
    と比較し、一致/不一致を検出する索引手段と; 前記分岐ヒストリテーブルの各エントリに対応し、分岐
    ヒストリテーブルに記憶されている分岐命令の分岐先ア
    ドレスが前記分岐命令の実行時に変化したかどうかにつ
    いて過去複数回の履歴を記憶する記憶手段と; 前記命令取出しアドレスにより前記記憶手段から前記履
    歴を読出し、該履歴の組合せにより分岐先予測の有効/
    無効を決定する組合せ手段と;前記索引手段により命令
    取出しアドレスと分岐命令のアドレスの一致が検出され
    たとき、前記組合せ手段により決定された有効/無効に
    応じて分岐先予測の実行を制御する手段とから構成され
    ることを特徴とする分岐予測方式。
JP17703089A 1989-07-11 1989-07-11 分岐ヒストリテーブルを用いた分岐予測方式 Pending JPH0342722A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP17703089A JPH0342722A (ja) 1989-07-11 1989-07-11 分岐ヒストリテーブルを用いた分岐予測方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP17703089A JPH0342722A (ja) 1989-07-11 1989-07-11 分岐ヒストリテーブルを用いた分岐予測方式

Publications (1)

Publication Number Publication Date
JPH0342722A true JPH0342722A (ja) 1991-02-22

Family

ID=16023920

Family Applications (1)

Application Number Title Priority Date Filing Date
JP17703089A Pending JPH0342722A (ja) 1989-07-11 1989-07-11 分岐ヒストリテーブルを用いた分岐予測方式

Country Status (1)

Country Link
JP (1) JPH0342722A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5434985A (en) * 1992-08-11 1995-07-18 International Business Machines Corporation Simultaneous prediction of multiple branches for superscalar processing

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5434985A (en) * 1992-08-11 1995-07-18 International Business Machines Corporation Simultaneous prediction of multiple branches for superscalar processing

Similar Documents

Publication Publication Date Title
US7783868B2 (en) Instruction fetch control device and method thereof with dynamic configuration of instruction buffers
EP0118828B1 (en) Instruction fetch apparatus and method of operating same
JP3542021B2 (ja) セット予測によりセット連想キャッシュの遅延を少なくする方法及び装置
US4827402A (en) Branch advanced control apparatus for advanced control of a branch instruction in a data processing system
JP2003514299A5 (ja)
JPH03147022A (ja) 分岐命令処理装置および処理方法
CA1311304C (en) Apparatus for forcing a reload from main memory upon cache memory error
JP3729545B2 (ja) キャッシュメモリへのアクセス
KR970076253A (ko) 데이타 프로세싱 시스템 및 브랜치 인스트럭션의 결과 예측 방법
US7571305B2 (en) Reusing a buffer memory as a microcache for program instructions of a detected program loop
JP2570859B2 (ja) データ処理装置
JPH0342722A (ja) 分岐ヒストリテーブルを用いた分岐予測方式
US20040193843A1 (en) System and method for early branch prediction
JPS59223850A (ja) 命令先読み制御方式
JPS63191231A (ja) 命令の先取りを行なう情報処理装置
JPH06301537A (ja) 命令フェッチ回路
JPH0715662B2 (ja) 命令の先取りを行なう情報処理装置
JPS63157237A (ja) 命令の先取り制御を行なう情報処理装置
JPH0248733A (ja) 情報処理装置
JPH02188840A (ja) データ処理装置
JPS63157236A (ja) 命令の先取り制御を行なう情報処理装置
JPH01205340A (ja) データ処理装置
JPH02168323A (ja) 情報処理装置
JPH02239330A (ja) 情報処理装置
JPH0667881A (ja) 分岐予測アドレス処理方式