JPH0363726A - 階層型分岐ヒストリテーブル - Google Patents

階層型分岐ヒストリテーブル

Info

Publication number
JPH0363726A
JPH0363726A JP19798889A JP19798889A JPH0363726A JP H0363726 A JPH0363726 A JP H0363726A JP 19798889 A JP19798889 A JP 19798889A JP 19798889 A JP19798889 A JP 19798889A JP H0363726 A JPH0363726 A JP H0363726A
Authority
JP
Japan
Prior art keywords
branch
instruction
history table
address
branch history
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
JP19798889A
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 JP19798889A priority Critical patent/JPH0363726A/ja
Publication of JPH0363726A publication Critical patent/JPH0363726A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本特許は1分岐命令の高速処理に関し、特に分岐ヒスト
リテーブルを用いた分岐命令の高速処理に関する。
[従来の技術] 分岐命令の高速化は、ノイマン型コンピュータにおける
重要な問題であり、その解決として、過去の分岐命令の
アドレスと分岐先アドレスを対にして記憶する分岐ヒス
トリテーブル(特公昭50−22384号)や、過去の
分岐命令のアドレスとその分岐したかどうかの結果を記
憶する分岐デコードテーブル(米国特許4,477.8
72号)がある。
[発明が解決しようとする課題] 上述した従来の分岐高速化技術のうち1分岐ヒストリテ
ーブルは1分岐命令類度が25%程度というふうに異常
に多いため、どうしても多数の分岐命令について記憶し
なければならず、そのためどうしても容量が大きいメモ
リで構成することが多い。
しかしながら、今日の論理回路の著しい高速化に対して
、メモリはそれほど高速されていない。
そのため高速コンピュータの設計では、マシンサイクル
を小さく設定する必要があるため、メモリアクセスタイ
ムの遅さがネックとなってしまう。
このため分岐ヒストリテーブルの索引が遅れて分岐命令
の性能がでないという問題が発生する。特にループ用の
分岐命令のように、必ず複数回その分岐命令を実行する
場合には、そのループの性能を上げるために極力早目に
分岐ヒストリテーブルを索引する必要がある。
したがって1本発明は同じ分岐命令を繰返し実行する場
合に特に高速化の可能な分岐ヒストリテーブルを提供し
ようとするものである。
[課題を解決するための手段] 本発明の階層型分岐ヒストリテーブルは、命令語の先取
りを行うデータ処理装置において、過去の分岐命令の実
行履歴に従って分岐命令のアドレス情報とその分岐命令
に対応する分岐先アドレスを含む分岐情報を保持する。
高速にアクセス可能な第1の分岐ヒストリテーブル手段
と、過去の分岐命令の実行履歴に従って分岐命令のアド
レス情報とその分岐命令に対応する分岐先アドレスを含
む分岐情報を記憶する。第1分岐ヒストリテーブル手段
に比較して大容量な第2分岐ヒストリテーブル手段と、
命令語の先取りにおいて先取る命令語のアドレス情報が
前記第1分岐ヒストリテーブル手段に登録されているか
どうかを検出する第1検出手段と、命令語の先取りにお
いて先取る命令語のアドレス情報が前記第2の分岐ヒス
トリテーブルに登録されているかどうかを検出する第2
検出手段と、第1の検出手段により、第1分岐ヒストリ
テーブル手段に先取る命令語のアドレス情報が登録され
ていることが検出された場合はそれに対応する分岐先ア
ドレスを第1分岐ヒストリテーブル手段より読出し、第
2検出手段により登録されていることが検出された場合
はそれに対応する分岐先アドレスを第2分岐ヒストリテ
ーブル手段より読出す手段とから構成される。
[実施例] 次に1本発明について図面を参照して説明する。
第1図は本発明の一実施例である。第1図において、命
令アドレスレジスタa1は、命令語の先取リアドレスを
受けるレジスタであり、アナログレジスタ変換器(図示
せず)より線101を介して出力される命令語アドレス
を受け、信号線102を介してアドレス比較回路a4及
び命令アドレスレジスタb5に送出する。
分岐命令アドレスレジスタ2は、最近の分岐命令に対す
るその命令アドレスを保持するレジスタであり、そのア
ドレスを線103を介しアドレス比較回路a4に送出す
る。このレジスタは本発明において特に設けたもので、
1〜16ビツト程度の容量である。
分岐先アドレスレジスタ3は9分岐命令アドレスレジス
タ2に対応してその分岐先アドレスを保持するレジスタ
であり、そのアドレスを線104を介し分岐先アドレス
選択回路11に送出する。
これも上記と同じように本発明において特に設けたもの
であり、容量も上と同じである。
アドレス比較回路a4は、命令先取りアドレスと分岐ヒ
ストリテーブル中の分岐命令のアドレスを比較する比較
回路であり、命令アドレスレジスタa1より信号線10
2を介して入力される命令取出しアドレスと1分岐命令
アドレスレジスタ2より信号線10・3を介して入力さ
れる分岐命令のアドレスを比較し、一致したかどうかを
信号l1l105を介し優先度制御回路10に送出する
。これも本発明において特に設けたものである。
命令アドレスレジスタb5は、メモリで構成された分岐
ヒストリテーブルを索引するための命令取出しアドレス
を保持するレジスタであり、信号線102を介して命令
アドレスレジスタa1より送出される命令先取りアドレ
スを受け、その一部を信号線106を介しアドレスとし
て1分岐命令アドレスアレイ6及び分岐先アドレスアレ
イ7に。
その残りを信号線107を介してアドレス比較回路b8
に送出する。 分岐命令アドレスアレイ6は1分岐命令
のアドレスを記憶するメモリであり。
命令アドレスレジスタb5より信号線106を介して出
力される命令取出しアドレスの一部をアドレスとしてそ
の分岐命令アドレスを信号線108を介してアドレス比
較回路b8に送出する。容量はIK〜2にビット程度で
ある。
命令先アドレスアレイ7は1分岐命令アドレスアレイ6
に対応してその分岐先アドレスを記憶するメモリであり
、命令アドレスレジスタb5より信号線106を介して
出力される命令取出しアドレスの一部をアドレスとし、
その分岐先アドレスを信号線109を介して分岐先アド
レスアレイレジスタ9に送出する。これも前記と同じ(
IK〜2にビットのものである。
アドレス比較回路b8は、アドレス比較回路a4と同様
に、命令先取リアドレスと分岐ヒストリテーブル中の分
岐命令のアドレスを比較する比較回路であり、命令アド
レスレジスタb5より信号線107を介し送出される命
令取出しアドレスと信号線108を介し分岐命令アドレ
スアレイ6より送出される分岐命令のアドレスを比較し
、その結果を信号線110を介して優先度制御回路10
に送出する。
分岐先アドレスアレイレジスタ9は、予測される分岐先
アドレスを受けるレジスタであり、信号線109を介し
分岐先アドレスアレイ7より送出される分岐先アドレス
を受け、信号線111を介して分岐先アドレス選択回路
11に送出する。
優先度制御回路10は1分岐先アドレスレジスタ3に保
持されている分岐先アドレスと分岐先アドレスアレイ7
に保持されている分岐先アドレスのどちらを選択するか
を制御する回路であり、信号線105を介しアドレス比
較回路a4より送出された一致情報と信号線110を介
してアドレス比較回路b8より送出される一致情報とに
より。
予ハ1分岐先アドレス選択信号を信号線113を介して
分岐先アドレス選択回路11に送出し、又。
予測アドレスを検出したことを示す信号を信号線112
を介して命令先取り制御装置(図示せず)に送出する。
本発明において特に設けたものである。
命令先アドレス選択回路11は、予測分岐先アドレスを
選択する選択回路であり、信号線104を介し分岐先ア
ドレスレジスタ3より送出される予測アドレスと信号線
111を介して分岐先アドレスアレイレジスタ9より送
出される予測アドレスを選択し、信号線114を介しア
ナログディジタル変換器に送出する。これも前記と同じ
く本発明において特に設けたものである。
次に本例の動作について簡単に説明する。
分岐命令アドレスアレイ6及び分岐先アドレスアレイ7
のみにアドレスが登録されていた場合のタイムチャート
を第2図に示す。図の左側の括弧を付した数字は第1図
の装置の参照数字を示している。この場合の動作は従来
の方式と同じであり。
命令アドレスレジスタa1にT、で命令取出しアドレス
が保持されると1次のT2で命令アドレスレジスタb5
にそれが保持される。ここで命令アドレスレジスタb5
のアドレスと分岐命令アドレスアレイ6のアドレスがア
ドレス比較回路b8で比較されるが、それが一致すると
+T3ではその予測分岐先アドレスが分岐先アドレスア
レイレジスタ9に分岐先アドレスアレイ7より読出され
ているので、優先度制御回路10は信号線113により
分岐先アドレス選択回路11にこれを選択させる。
さて8本特許で追加した部分の動作を第3図に示す。こ
の場合、命令アドレスレジスタa1と分岐命令アドレス
レジスタ2の内容が直接アドレス比較回路a4で比較さ
れ、その結果により、優先度制御回路10は信号線11
3により分岐先アドレス選択回路11に分岐先アドレス
レジスタ3を選択させる。
[発明の効果] 以上説明したように本発明は、高速で動作可能な小容量
の分岐ヒストリテーブルと、低速ではあるが、大容量な
分岐ヒストリテーブルとを階層構造に持つことにより、
一部なりとも3Tかかつている処理をITに短縮するこ
とができる。これにより、短いループなどのように何度
も同じアドレスで分岐するような場合に、そのアドレス
を高速で動作可能な小容量の分岐ヒストリテーブルに入
れておくことにより、命令先取りの遅れによる分岐性能
の低下を抑えることができる。
す図である。
記号の説明=1・・・命令アドレスレジスタa、  2
・・・分岐命令アドレスレジスタ、3・・・分岐先アド
レスレジスタ、4・・・アドレス比較回路a、5・・・
命令アドレスレジスタb、6・・・分岐命令アドレスア
レイ、7・・・分岐先アドレスアレイ、8・・・アドレ
ス比較回路す、9・・・分岐先アドレスアレイレジスタ
10・・・優先度制御回路、11・・・分岐先アドレス
選択回路。
【図面の簡単な説明】
第1図は本発明の一実施例の構成を示す図、第2図およ
び第3図は実施例のタイムチャートを示第2図 T+  T2  T3T4  T5 虹工 ■ 出力   几 二t=X 出力     =nニー (1) (5) (2) (4)出力 (3) 第3図 T1T2  T3  T4  T5 I【 ■ 几 4烏

Claims (1)

  1. 【特許請求の範囲】 1、命令語の先取りを行うデータ処理装置において、 過去の分岐命令の実行履歴に従って分岐命令のアドレス
    情報と該分岐命令に対応する分岐先アドレスを含む分岐
    情報を保持する、高速にアクセスが可能な第1分岐ヒス
    トリテーブル手段と、過去の分岐命令の実行履歴に従っ
    て分岐命令のアドレス情報と該分岐命令に対応する分岐
    先アドレスを含む分岐情報を記憶する、第1分岐ヒスト
    リテーブル手段に比べて大容量な第2分岐ヒストリテー
    ブル手段と、 命令語の先取りにおいて先取る命令語のアドレス情報が
    前記第1分岐ヒストリテーブル手段に登録されているか
    どうかを検出する第1検出手段と、命令語の先取りにお
    いて先取る命令語のアドレス情報が前記第2分岐ヒスト
    リテーブル手段に登録されているかどうかを検出する第
    2検出手段と、第1検出手段により、第1分岐ヒストリ
    テーブル手段に先取る命令語のアドレス情報が登録され
    ていることが検出された場合はそれに対応する分岐先ア
    ドレスを第1分岐ヒストリテーブル手段より読出し、第
    2検出手段により登録されていることが検出されていた
    場合はそれに対応する分岐先アドレスを第2分岐ヒスト
    リテーブル手段より読出すことを特徴とする階層型分岐
    ヒストリテーブル。
JP19798889A 1989-08-01 1989-08-01 階層型分岐ヒストリテーブル Pending JPH0363726A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP19798889A JPH0363726A (ja) 1989-08-01 1989-08-01 階層型分岐ヒストリテーブル

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19798889A JPH0363726A (ja) 1989-08-01 1989-08-01 階層型分岐ヒストリテーブル

Publications (1)

Publication Number Publication Date
JPH0363726A true JPH0363726A (ja) 1991-03-19

Family

ID=16383643

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19798889A Pending JPH0363726A (ja) 1989-08-01 1989-08-01 階層型分岐ヒストリテーブル

Country Status (1)

Country Link
JP (1) JPH0363726A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7337271B2 (en) * 2003-12-01 2008-02-26 International Business Machines Corporation Context look ahead storage structures

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7337271B2 (en) * 2003-12-01 2008-02-26 International Business Machines Corporation Context look ahead storage structures

Similar Documents

Publication Publication Date Title
KR100875377B1 (ko) 처리 시스템에서 스택 팝 및 푸쉬 동작들을 수행하는 장치 및 방법
JP3729545B2 (ja) キャッシュメモリへのアクセス
WO1997030395A1 (fr) Memoire a acces multiples et processeur de donnees procurant l'acces a cette memoire
EP0592404A1 (en) Apparatus and method for providing a stall cache
CA2026225C (en) Apparatus for accelerating store operations in a risc computer
JPH0363726A (ja) 階層型分岐ヒストリテーブル
JP3145545B2 (ja) メモリアクセス装置
JPH06230963A (ja) メモリアクセス制御装置
JPH06342397A (ja) 論理的アドレス空間を写像するための回路装置
JPS59112479A (ja) キヤツシユメモリの高速アクセス方式
JP2727947B2 (ja) アドレストレース方式
JPH01235100A (ja) 半導体記憶装置
JP2762798B2 (ja) 命令キャッシュを有するパイプライン構成の情報処理装置
JPS63123145A (ja) バツフアメモリ装置
JPH03116345A (ja) データ処理装置
JPH04225429A (ja) データ処理装置
JPH08286914A (ja) メモリ制御装置
JPH0480824A (ja) データ処理装置
JPH09292995A (ja) 命令先取り装置
JPS6246353A (ja) メモリ読出し方式
JPH0433059B2 (ja)
JPS60118932A (ja) 命令再先取り制御方式
JPS6244838A (ja) 命令取出装置
JPH0553908A (ja) 高速アクセス記憶装置
JPS58181146A (ja) マイクロプログラム制御装置