JPH04239324A - Branch destination estimating system - Google Patents

Branch destination estimating system

Info

Publication number
JPH04239324A
JPH04239324A JP245791A JP245791A JPH04239324A JP H04239324 A JPH04239324 A JP H04239324A JP 245791 A JP245791 A JP 245791A JP 245791 A JP245791 A JP 245791A JP H04239324 A JPH04239324 A JP H04239324A
Authority
JP
Japan
Prior art keywords
branch
instruction
address
stored
compartment
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
JP245791A
Other languages
Japanese (ja)
Inventor
Shinichi Nagoya
名児耶真一
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
Original Assignee
NEC Corp
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 filed Critical NEC Corp
Priority to JP245791A priority Critical patent/JPH04239324A/en
Publication of JPH04239324A publication Critical patent/JPH04239324A/en
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Abstract

PURPOSE:To reduce the hardware quantity by storing the line address and the compartment number of an instruction cache storing a branch destination instruction into a branch destination estimating memory together with an intra- word address. CONSTITUTION:If the failure of branch is decided for the precedent result by reference to the branch destination estimating memories 1-5 and 1-6, the next instruction is taken out according to the contents of the next index address register 1-7. If the branch succeeds, the contents of the line addresses and the intra-word addresses stored in both memories 1-5 and 1-6 are set to the index address registers 1-7 and 1-8 via a selector 1-17. Then an instruction cache is retrieved and at the same time a compartment number is sent to a compartment selection signal generating circuit 1-11. Thus the next instruction is taken out. In such a constitution, the hardware quantity is decreased.

Description

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

【0001】0001

【産業上の利用分野】本発明は情報処理装置の命令の先
取り制御に使用される分岐先予測方式に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a branch destination prediction method used for preemption control of instructions in an information processing apparatus.

【0002】0002

【従来の技術】従来、この種の分岐先予測方式には、前
回に分岐命令を実行したときの分岐方向のみを記憶した
り、また分岐が成功した場合の分岐先命令の絶対アドレ
スを記憶することにより、次回に同一の分岐命令先取り
した時に、記憶した方向により分岐先アドレスを求めた
後、命令キャッシュを索引するか、または記憶した分岐
先命令の絶対アドレスにより命令キャッシュを索引する
ことにより次命令を先取りする方式がある。
[Background Art] Conventionally, this type of branch destination prediction method stores only the branch direction when the branch instruction was executed last time, or stores the absolute address of the branch destination instruction when the branch is successful. Therefore, the next time the same branch instruction is prefetched, either the instruction cache is indexed after finding the branch destination address based on the memorized direction, or the next instruction cache is indexed using the absolute address of the memorized branch destination instruction. There is a method to pre-empt orders.

【0003】0003

【発明が解決しようとする課題】上述した従来の分岐先
予測方式のうち、分岐方向のみを記憶する方式は、予測
した方向が分岐成功側であった場合には分岐先のアドレ
スを求めた後に命令キャッシュを索引する為、予測が成
功したとしても、分岐命令を先取りした後、次命令を先
取りする迄に数サイクル要する分だけ分岐命令の処理性
能が低下してしまうとしう問題点があった。
[Problems to be Solved by the Invention] Among the conventional branch destination prediction methods described above, the method that stores only the branch direction is a method that stores only the branch direction after determining the branch destination address if the predicted direction is a successful branch. Because the instruction cache is indexed, even if the prediction is successful, there is a problem in that the processing performance of branch instructions will deteriorate because it takes several cycles after the branch instruction is prefetched until the next instruction is prefetched. .

【0004】また、分岐先の命令の絶対アドレスを記憶
する方式は、上記の様な性能低下は無いものの、記憶す
る情報量が多い為、ハードウェア量が著しく増大すると
いう問題点があった。
Furthermore, although the method of storing the absolute address of the branch destination instruction does not cause the performance degradation described above, it has the problem that the amount of information to be stored is large, resulting in a significant increase in the amount of hardware.

【0005】[0005]

【課題を解決するための手段】本発明の方式は、先取り
した命令が分岐命令である場合に該分岐命令の前回の結
果に基づいて次命令を分岐成功側か不成功側かいずれか
を予測することにより先取りを行うパイプライン構成の
情報処理における分岐先予測方式において、先取りした
分岐命令を実行した結果、分岐が成功した場合に分岐先
の命令が命令キャッシュに格納されている場合は該格納
されている命令キャッシュのラインアドレス,コンパー
トメント番号を、また命令キャッシュに格納されていな
い場合はブロックロードにより格納されるラインアドレ
ス,コンパートメント番号を、また命令キャッシュに格
納されていない場合はブロックロードにより格納される
ラインアドレス,コンパートメント番号を、ワード内ア
ドレスとともに該分岐命令が格納されていた命令キャッ
シュのラインアドレス及びコンパートメント対応に記憶
する分岐先予測メモリを設け、次回に同一の分岐命令を
先取りした時に前記記憶した次命令が格納されているラ
インアドレス,コンパートメント及びワード内アドレス
より命令キャッシュを読み出すことにより次命令を取り
出すことを特徴とする。
[Means for Solving the Problems] The method of the present invention predicts whether the next instruction will be a successful branch or an unsuccessful branch based on the previous result of the branch instruction when the prefetched instruction is a branch instruction. In a branch destination prediction method in information processing with a pipeline configuration that prefetches by If the instruction cache is not stored in the instruction cache, the line address and compartment number stored in the instruction cache are stored by block loading. A branch destination prediction memory is provided that stores the line address and compartment number of the instruction cache where the branch instruction was stored, along with the intra-word address, in correspondence with the line address and compartment number of the instruction cache where the branch instruction was stored, so that when the same branch instruction is prefetched next time, The next instruction is retrieved by reading the instruction cache from the line address, compartment, and word address where the next instruction is stored.

【0006】[0006]

【実施例】以下、図面を参照しながら本発明の実施例に
ついて説明する。
Embodiments Hereinafter, embodiments of the present invention will be described with reference to the drawings.

【0007】図1は本発明の分岐先予測方式の一実施例
による命令取出し制御部を示し、命令キャッシュのコン
パートメント数が2の場合のブロック図である。
FIG. 1 shows an instruction fetch control section according to an embodiment of the branch destination prediction method of the present invention, and is a block diagram when the number of compartments of the instruction cache is two.

【0008】図において、1−1,1−2は各々命令キ
ャッシュのアドレスアレイ、1−3,1−4はデータア
レイ、1−5,1−6は分岐先予測メモリであり、アド
レスアレイ1−1,データアレイ1−3および分岐先予
測メモリ1−5はコンパートメント番号0に、アドレス
アレイ1−2,データアレイ1−4および分岐先予測メ
モリ1−6はコンパートメント番号1に対応している。
In the figure, 1-1 and 1-2 are instruction cache address arrays, 1-3 and 1-4 are data arrays, and 1-5 and 1-6 are branch destination prediction memories. -1, data array 1-3 and branch destination prediction memory 1-5 correspond to compartment number 0, and address array 1-2, data array 1-4 and branch destination prediction memory 1-6 correspond to compartment number 1. .

【0009】1−7,1−8は命令キャッシュの索引ア
ドレスレジスタであり、索引アドレスレジスタ1−7は
下位アドレスとして、アドレスアレイ、データアレイ、
分岐先予測メモリの索引アドレス、即ちラインアドレス
及びワード内アドレスとして使用される。また、索引ア
ドレスレジスタ1−8は上位アドレスとして、索引アド
レスレジスタ1−7により読み出されるアドレスアレイ
1−1,1−2の内容との一致比較に使用される。通常
の命令取り出し時には命令取り出しアドレスが信号1−
17より索引アドレスレジスタ1−7,1−8にセット
される。
Reference numerals 1-7 and 1-8 are index address registers of the instruction cache, and index address registers 1-7 serve as lower addresses for address array, data array,
It is used as an index address of the branch target prediction memory, that is, a line address and an intra-word address. Further, the index address register 1-8 is used as an upper address for comparison with the contents of the address arrays 1-1, 1-2 read by the index address register 1-7. During normal instruction fetching, the instruction fetching address is signal 1-
17, the index address registers 1-7 and 1-8 are set.

【0010】1−9,1−10は索引アドレスレジスタ
により読み出されたアドレスアレイ1−1,1−2の内
容を索引アドレスレジスタ1−8の内容と比較するため
のコンパレータであり、その比較結果はコンパートメン
トセレクト信号生成回路1−11に送られ、データアレ
イ1−3,1−4および分岐先予測メモリ1−5,1−
6を読み出した内容を選択するセレクタ1−12,1−
13のセレクト信号1−19が生成される。
1-9, 1-10 are comparators for comparing the contents of the address arrays 1-1, 1-2 read by the index address register with the contents of the index address register 1-8. The result is sent to the compartment select signal generation circuit 1-11, and data arrays 1-3, 1-4 and branch destination prediction memories 1-5, 1-
Selector 1-12, 1- for selecting the content read out from 6
Thirteen select signals 1-19 are generated.

【0011】コンパートメントセレクト信号生成回路1
−11では、コンパレータ1−9,1−10のいずれか
が一致を検出している場合(即ち命令キャッシュがヒッ
トした場合)には、一致が検出されたコンパートメント
のデータアレイ1−3,1−4及び分岐先予測メモリ1
−5,1−6を選択する様にセレクト信号1−19が生
成される。
Compartment select signal generation circuit 1
-11, if either of the comparators 1-9, 1-10 detects a match (that is, the instruction cache is hit), the data arrays 1-3, 1- 4 and branch destination prediction memory 1
A select signal 1-19 is generated to select -5, 1-6.

【0012】また、コンパレータ1−9,1−10のい
ずれもが一致を検出しなかった場合(即ち命令キャッシ
ュがミスヒットした場合)には、周知の様にブロックロ
ード処理により命令キャッシュにデータ(命令)を取り
込むが、この際、セレクト信号1−19は登録されるコ
ンパートメントを示す様に生成される。
Furthermore, if neither of the comparators 1-9 and 1-10 detects a match (that is, if the instruction cache misses), the data ( At this time, a select signal 1-19 is generated to indicate the compartment to be registered.

【0013】1−15は、分岐命令を取り出した後実行
される迄の間、即ち分岐判定が行われる迄の間、分岐先
の命令の命令キャッシュ内の位置を示すラインアドレス
とコンパートメント番号を保持するバッファ、1−16
は分岐先予測メモリ1−5,1−6のライトデータレジ
スタ、1−14は索引アドレスレジスタ1−7の入力情
報として信号1−17かセレクタ1−13の出力がセレ
クトするセレクタ、1−18は分岐判定の結果により分
岐成功であったことを示す分岐判定結果信号である。
1-15 holds the line address and compartment number indicating the location of the branch destination instruction in the instruction cache after the branch instruction is fetched until it is executed, that is, until the branch decision is made. buffer, 1-16
1-14 is the write data register of the branch destination prediction memory 1-5, 1-6, and 1-14 is the selector selected by the signal 1-17 or the output of the selector 1-13 as the input information of the index address register 1-7. is a branch determination result signal indicating that the branch was successful as a result of the branch determination.

【0014】図2は分岐先予測メモリ1−5,1−6内
に記憶されるワード内のフォーマットを示す。
FIG. 2 shows the format within the words stored in the branch target prediction memories 1-5, 1-6.

【0015】2−1は分岐先の命令が格納されている命
令キャッシュのラインアドレス及びワード内アドレス、
2−2は同じく命令キャッシュのコンパートメント番号
、2−3は“1”のときこのワードに対応するデータア
レイ1−3,1−4のいずれかに格納されている命令が
前回分岐命令であったことを示す分岐命令表示ビット、
2−4は“1”のとき該分岐命令が前回分岐成功であっ
たことを示す前回分岐方向表示ビット、2−5は“1”
のとき命令キャッシュに登録されていることを示す有効
表示ビットである。
2-1 is the line address and intra-word address of the instruction cache where the branch destination instruction is stored;
2-2 is also the instruction cache compartment number, and 2-3 is "1" if the instruction stored in either data array 1-3 or 1-4 corresponding to this word was the previous branch instruction. A branch instruction indicator bit indicating that
2-4 is a previous branch direction indicator bit that indicates that the branch instruction was a successful branch last time when it is “1”; 2-5 is “1”
This is a valid display bit that indicates that the instruction is registered in the instruction cache.

【0016】図3はバッファ1−15内にバッファされ
るワード内のフォーマットを示す。
FIG. 3 shows the format within the words buffered in buffers 1-15.

【0017】3−1は命令を取り出したとき命令キャッ
シュを索引したラインアドレス、3−3はラインアドレ
ス及びワード内アドレス2−1と同じく分岐先の命令を
取り出すため、命令キャッシュを索引したラインアドレ
ス及びワード内アドレスであり、3−4はコンパートメ
ント番号2−2と同じく命令キャッシュのコンパートメ
ント番号である。
3-1 is the line address that indexed the instruction cache when fetching the instruction; 3-3 is the line address and word address similarly to 2-1, the line address that indexed the instruction cache in order to fetch the branch destination instruction. and an intra-word address, and 3-4 is the compartment number of the instruction cache, same as the compartment number 2-2.

【0018】次に図1〜図3を参照しながら、本発明の
分岐先予測方式について詳述する。
Next, the branch destination prediction method of the present invention will be described in detail with reference to FIGS. 1 to 3.

【0019】始めに命令キャッシュがヒットし、かつ分
岐先予測メモリ1−5,1−6内の情報が無効、即ち分
岐命令表示ビット2−3ビットが“0”である場合を考
える。
First, consider a case where the instruction cache is hit and the information in the branch destination prediction memories 1-5, 1-6 is invalid, that is, the branch instruction display bits 2-3 are "0".

【0020】索引アドレスレジスタ1−7により命令キ
ャッシュを索引し、ヒットするとヒットしたコンパート
メントに応じたデータアレイ及び分岐先予測メモリの内
容がセレクタ1−12,1−13でセレクトされる。
The instruction cache is indexed by the index address register 1-7, and when there is a hit, the contents of the data array and branch destination prediction memory corresponding to the compartment hit are selected by the selectors 1-12 and 1-13.

【0021】このとき、バッファ1−15には命令キャ
ッシュを索引したラインアドレス即ち索引アドレスレジ
スタ1−7の内容及びコンパートメント番号が3−1,
3−2として格納される。
At this time, the buffer 1-15 contains the line address that indexed the instruction cache, that is, the contents of the index address register 1-7 and the compartment number 3-1,
3-2.

【0022】データアレイより読み出された命令が分岐
命令であると、分岐先予測メモリの内容を参照するが、
この場合は分岐命令表示2−3ビットが“0”である為
次の命令取り出しは抑止し、分岐先アドレスが求まるの
を待ち合わせる。ここで分岐先アドレスはパイプライン
の下位ステージにおいて該分岐命令が実行される迄の間
に求まるものとする。
If the instruction read from the data array is a branch instruction, the contents of the branch destination prediction memory are referred to;
In this case, since the branch instruction display bits 2-3 are "0", fetching of the next instruction is inhibited and the CPU waits until the branch destination address is determined. Here, it is assumed that the branch destination address is determined before the branch instruction is executed in the lower stage of the pipeline.

【0023】分岐先アドレスが求まると、信号1−17
により索引アドレスレジスタ1−8にセットされ、分岐
先アドレスにより命令キャッシュを索引する。これがヒ
ットすると、このときの下位アドレス即ち索引アドレス
レジスタ1−7の内容をラインアドレス及びワード内ア
ドレス3−3として、またヒットしたコンパートメント
番号、即ちセレクト信号1−19がコンパートメント番
号3−4としてバッファ1−15に格納され、分岐判定
が行われる迄保持される。
When the branch destination address is determined, the signal 1-17
is set in the index address register 1-8, and the instruction cache is indexed by the branch destination address. When this hits, the lower address at this time, that is, the contents of the index address register 1-7, is buffered as the line address and word address 3-3, and the compartment number that hit, that is, the select signal 1-19, is buffered as the compartment number 3-4. 1-15, and is held until a branch decision is made.

【0024】分岐判定の結果、分岐成功であれば分岐判
定結果信号1−18が“1”となり、バッファ1−15
に格納されているラインアドレス3−1,コンパートメ
ント番号3−2により示されるアドレス,コンパートメ
ントに対応した分岐先予測メモリに分岐命令表示ビット
2−3と前回分岐方向表示ビット2−4とを“1”、ラ
インアドレス及びワード内アドレス2−1とコンパート
メント番号2−2にはバッファ1−15のラインアドレ
ス及びワード内アドレスとコンパートメント番号を登録
する。
As a result of the branch judgment, if the branch is successful, the branch judgment result signal 1-18 becomes "1", and the buffer 1-15
The branch instruction display bit 2-3 and previous branch direction display bit 2-4 are set to "1" in the branch destination prediction memory corresponding to the address and compartment stored in the line address 3-1 and compartment number 3-2. ”, the line address, word address, and compartment number of the buffer 1-15 are registered in the line address, word address 2-1, and compartment number 2-2.

【0025】また分岐判定の結果、分岐不成功であれば
分岐判定結果信号1−18が“0”となり、分岐成功の
場合と同様にラインアドレス3−1,コンパートメント
番号3−2で示される位置に分岐命令表示ビット2−3
を“1”と前回分岐方向表示ビット2−4を“0”とし
て登録する。このとき、書き込むときのレジスタとして
ライトデータレジスタ1−16が使用される。
As a result of the branch judgment, if the branch is unsuccessful, the branch judgment result signal 1-18 becomes "0", and the position indicated by the line address 3-1 and the compartment number 3-2 is reached as in the case of a successful branch. Branch instruction display bits 2-3
is registered as "1" and the previous branch direction display bits 2-4 are registered as "0". At this time, write data registers 1-16 are used as registers for writing.

【0026】次に命令キャッシュがミスヒットする場合
を考える。
Next, consider the case where the instruction cache misses.

【0027】分岐命令の取り出しに於いて命令キャッシ
ュがミスヒットした場合、周知の様にブロックロード処
理により命令キャッシュへの登録動作が行われるが、バ
ッファ1−15に格納されるコンパートメント番号3−
2はブロックロード処理で登録されるコンパートメント
番号が採られ、また分岐先の命令取り出しに於いて命令
キャッシュがミスヒットした場合は同じくコンパートメ
ント番号3−4としてブロックロード処理で登録される
。コンパートメント番号が採られること以外は命令キャ
ッシュがヒットする場合と同じである。
If the instruction cache misses when fetching a branch instruction, as is well known, block load processing is performed to register the instruction cache, but the compartment number 3-1 stored in the buffer 1-15 is
2 is the compartment number registered in block load processing, and if the instruction cache misses when fetching a branch destination instruction, it is also registered as compartment number 3-4 in block load processing. It is the same as when the instruction cache is hit, except that the compartment number is taken.

【0028】最後に分岐先予測メモリの内容を参照した
結果、分岐命令表示ビット2−3が“1”である場合を
考えると、前回分岐方向表示ビット2−4が“0”であ
れば即ち前回の結果が分岐不成功であれば、次命令の取
り出しはそのまま次の索引アドレスレジスタ1−7の内
容により行われ、前回分岐方向表示ビットが“1”であ
れば、即ち前回の結果が分岐成功であれば分岐先予測メ
モリに記憶されているラインアドレス及びワード内アド
レス2−1の内容がセレクタ1−17を介して索引アド
レスレジスタ1−7にセットされ、命令キャッシュを索
引するとともにに同じくコンパートメント番号2−2の
内容がコンパートメントセレクト信号生成回路1−11
に送られることにより、命令キャッシュのヒットの有無
に拘らずコンパートメント番号2−2で示されるコンパ
ートメントに対応するデータアレイの内容をセレクトす
ることにより次命令の取り出しが行われる。
Considering the case where the branch instruction display bits 2-3 are "1" as a result of referring to the contents of the branch destination prediction memory at the end, if the previous branch direction display bits 2-4 are "0", that is, If the previous result was an unsuccessful branch, the next instruction is retrieved as is based on the contents of the next index address register 1-7, and if the previous branch direction display bit is "1", that is, the previous result is a branch. If successful, the contents of the line address and word address 2-1 stored in the branch destination prediction memory are set to the index address register 1-7 via the selector 1-17, and the instruction cache is indexed and The contents of compartment number 2-2 are compartment select signal generation circuit 1-11.
As a result, the next instruction is retrieved by selecting the contents of the data array corresponding to the compartment indicated by compartment number 2-2, regardless of whether there is a hit in the instruction cache.

【0029】[0029]

【発明の効果】以上説明したように、本発明は分岐先予
測メモリに、分岐先命令が格納されている命令キャッシ
ュのラインアドレス、コンパートメント番号をワード内
アドレスとともに記憶することにより、分岐方向のみを
予測する場合に比べ、より高性能に、しかも分岐先アド
レスを全て記憶する場合に比べてより少ないハードウェ
ア量でまた同等の性能を得ることができる。
As explained above, the present invention stores only the branch direction by storing the line address and compartment number of the instruction cache in which the branch destination instruction is stored in the branch destination prediction memory together with the in-word address. Compared to the case of prediction, it is possible to obtain higher performance, and the same performance can be obtained with a smaller amount of hardware than the case of storing all branch destination addresses.

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

【図1】本発明の分岐予測方式による命令取り出し制御
部のブロック図である。
FIG. 1 is a block diagram of an instruction fetch control unit using a branch prediction method according to the present invention.

【図2】分岐先予測メモリのワード内フォーマットを示
す図である。
FIG. 2 is a diagram showing an intra-word format of a branch target prediction memory.

【図3】バッファのワード内のフォーマットを示す図で
ある。
FIG. 3 shows the format within a word of a buffer.

【符号の説明】[Explanation of symbols]

1−1,1−2    アドレスアレイ1−3,1−4
    データアレイ 1−5,1−6    分岐先予測メモリ1−7,1−
8    索引アドレスレジスタ1−9,1−10  
  コンパレータ1−11    コンパートメントセ
レクト信号生成回路1−12,1−13,1−14  
  セレクタ1−15    バッファ 1−16    ライトデータレジスタ2−1    
ラインアドレス及びワード内アドレス2−2    コ
ンパートメント番号 2−3    分岐命令表示ビット 2−4    前回分岐方向表示ビット2−5    
有効性表示ビット 3−1    ラインアドレス
1-1, 1-2 Address array 1-3, 1-4
Data array 1-5, 1-6 Branch destination prediction memory 1-7, 1-
8 Index address register 1-9, 1-10
Comparator 1-11 Compartment select signal generation circuit 1-12, 1-13, 1-14
Selector 1-15 Buffer 1-16 Write data register 2-1
Line address and word address 2-2 Compartment number 2-3 Branch instruction display bit 2-4 Previous branch direction display bit 2-5
Validity display bit 3-1 Line address

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】  先取りした命令が分岐命令である場合
に該分岐命令の前回の結果に基づいて次命令を分岐成功
側か不成功側かいずれかを予測することにより先取りを
行うパイプライン構成の情報処理における分岐先予測方
式において、先取りした分岐命令を実行した結果、分岐
が成功した場合に分岐先の命令が命令キャッシュに格納
されている場合は該格納されている命令キャッシュのラ
インアドレス,コンパートメント番号を、また命令キャ
ッシュに格納されていない場合はブロックロードにより
格納されるラインアドレス,コンパートメント番号を、
また命令キャッシュに格納されていない場合はブロック
ロードにより格納されるラインアドレス,コンパートメ
ント番号を、ワード内アドレスとともに該分岐命令が格
納されていた命令キャッシュのラインアドレス及びコン
パートメント対応に記憶する分岐先予測メモリを設け、
次回に同一の分岐命令を先取りした時に前記記憶した次
命令が格納されているラインアドレス,コンパートメン
ト及びワード内アドレスより命令キャッシュを読み出す
ことにより次命令を取り出すことを特徴とする分岐先予
測方式。
1. A pipeline configuration that performs prefetching by predicting whether the next instruction will be a successful branch or an unsuccessful branch based on the previous result of the branch instruction when the prefetched instruction is a branch instruction. In a branch destination prediction method in information processing, when a prefetched branch instruction is executed and the branch is successful, if the branch destination instruction is stored in the instruction cache, the line address and compartment of the stored instruction cache are number, and if it is not stored in the instruction cache, the line address and compartment number stored by block load,
In addition, if the branch instruction is not stored in the instruction cache, the branch destination prediction memory stores the line address and compartment number stored by block loading, along with the in-word address, in correspondence with the line address and compartment of the instruction cache where the branch instruction was stored. established,
A branch destination prediction method characterized in that the next time the same branch instruction is prefetched, the next instruction is retrieved by reading the instruction cache from the line address, compartment, and word address where the stored next instruction is stored.
JP245791A 1991-01-14 1991-01-14 Branch destination estimating system Pending JPH04239324A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP245791A JPH04239324A (en) 1991-01-14 1991-01-14 Branch destination estimating system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP245791A JPH04239324A (en) 1991-01-14 1991-01-14 Branch destination estimating system

Publications (1)

Publication Number Publication Date
JPH04239324A true JPH04239324A (en) 1992-08-27

Family

ID=11529832

Family Applications (1)

Application Number Title Priority Date Filing Date
JP245791A Pending JPH04239324A (en) 1991-01-14 1991-01-14 Branch destination estimating system

Country Status (1)

Country Link
JP (1) JPH04239324A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6112299A (en) * 1997-12-31 2000-08-29 International Business Machines Corporation Method and apparatus to select the next instruction in a superscalar or a very long instruction word computer having N-way branching

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5785148A (en) * 1980-11-17 1982-05-27 Nec Corp Instruction sequence control device
JPS59206947A (en) * 1983-05-10 1984-11-22 Nec Corp Microprogram controlling device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5785148A (en) * 1980-11-17 1982-05-27 Nec Corp Instruction sequence control device
JPS59206947A (en) * 1983-05-10 1984-11-22 Nec Corp Microprogram controlling device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6112299A (en) * 1997-12-31 2000-08-29 International Business Machines Corporation Method and apparatus to select the next instruction in a superscalar or a very long instruction word computer having N-way branching

Similar Documents

Publication Publication Date Title
US4984154A (en) Instruction prefetching device with prediction of a branch destination address
US4980823A (en) Sequential prefetching with deconfirmation
US5235697A (en) Set prediction cache memory system using bits of the main memory address
EP2275939B1 (en) Processor and address translating method
US4827402A (en) Branch advanced control apparatus for advanced control of a branch instruction in a data processing system
US6098150A (en) Method and apparatus for fetching information from a cache memory
KR100335672B1 (en) Fast data retrieval from physical addressing data storage structures using memory page crossing prediction comments
US5097414A (en) Buffer-storage control system for simultaneously accessible partitions of tag and data blocks of buffer storage
JP2003514299A5 (en)
JP2008217353A (en) Data processor and lead active control method for memory
JPH1074166A (en) Multilevel dynamic set predicting method and its device
US6401180B1 (en) Bank history table for improved pre-charge scheduling of random access memory banks
JP2006018841A (en) Cache memory system and method capable of adaptively accommodating various memory line size
JPH0773104A (en) Cache system
US6678638B2 (en) Processor having execution result prediction function for instruction
US8595465B1 (en) Virtual address to physical address translation using prediction logic
US7111127B2 (en) System for supporting unlimited consecutive data stores into a cache memory
KR20010050703A (en) Information processing device
US6532534B1 (en) Information processing apparatus provided with branch history with plurality of designation ways
JPH04239324A (en) Branch destination estimating system
KR960015231A (en) Enhanced Addressing Method and System
JPH0646381B2 (en) Instruction fetching device
JP2864548B2 (en) Instruction cache device
JP3697990B2 (en) Vector processor operand cache
JP2001154845A (en) Memory bus access control system after cache miss

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 19970408