JPH03235121A - Branch history table control system - Google Patents

Branch history table control system

Info

Publication number
JPH03235121A
JPH03235121A JP3193490A JP3193490A JPH03235121A JP H03235121 A JPH03235121 A JP H03235121A JP 3193490 A JP3193490 A JP 3193490A JP 3193490 A JP3193490 A JP 3193490A JP H03235121 A JPH03235121 A JP H03235121A
Authority
JP
Japan
Prior art keywords
branch
address
history table
instruction
register
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.)
Granted
Application number
JP3193490A
Other languages
Japanese (ja)
Other versions
JP2508341B2 (en
Inventor
Takeshi Morisada
森定 剛
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 JP3193490A priority Critical patent/JP2508341B2/en
Publication of JPH03235121A publication Critical patent/JPH03235121A/en
Application granted granted Critical
Publication of JP2508341B2 publication Critical patent/JP2508341B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PURPOSE:To curtail the overhead in a data processor to be generated by detecting an exception event such as virtual space absence, etc. by inhibiting a fact that a branch instruction for executing a branch between different virtual spaces hits against a branch history table. CONSTITUTION:The system is constituted of a write permitting flag (WEF) 1, an instruction address register (IAR) 2, a branch destination address register (DAR) 3, a virtual space number comparing circuit (WSC) 4, an instruction address array (IAA) 5, a branch address array (DAA) 6, a branch destination information array (DIA) 7, an instruction address comparing circuit (IAC) 8, an AND circuit 10, a branch detecting flag (BHF) 11, and a predicted branch destination address register (PDAR) 12. In such a state, it is inhibited that a branch instruction for executing a branch between different virtual spaces hits against a branch history table. In such a way, the overhead of a data processor generated by detecting an exception event such as virtual space absence, etc., can be curtailed.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は分岐ヒストリテーブル制御方式に関し、特に仮
想記憶方式を採用するデータ処理装置における分岐ヒス
トリテーブル制御方式に関する。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a branch history table control method, and particularly to a branch history table control method in a data processing device that employs a virtual storage method.

〔従来の技術〕 分岐ヒストリテーブルは、現在いろいろなデータ処理装
置で使用されており、分岐命令のアドレス(分岐命令ア
ドレス)とその分岐命令に係る分岐先命令のアドレス(
その分岐命令アドレスに対応する分岐先アドレス)とを
対にして記憶している(分岐ヒストリテーブルは、「特
公昭5o−22384JやrU、S、P、709426
」で紹介されている)。
[Prior Art] Branch history tables are currently used in various data processing devices, and store the address of a branch instruction (branch instruction address) and the address of the branch destination instruction related to that branch instruction (branch history table).
(The branch destination address corresponding to the branch instruction address) is stored as a pair (the branch history table is stored as a pair of
).

ところで、ある種の仮想記憶方式を採用するデータ処理
装置においては、仮想アドレス(VA。
By the way, in a data processing device that employs a certain kind of virtual memory method, virtual addresses (VA) are used.

Virtual  Address)は、第2図に示す
ように構成されている。すなわち、VAの上位ビットに
は仮想空間番号(WSN、Wo r k ing  5
pace  Number)があり、VAの下位ビット
(WSNに係るビット以外のビット)には相対仮想アド
レス(EVA、Ef f ec tive  Virt
ual  Address)がある。このような構成の
VAにおいて、WSNが異なるということは、VAに係
る仮想空間自体が異なるということを示している。
Virtual Address) is configured as shown in FIG. That is, the upper bit of VA contains a virtual space number (WSN, Working 5
The lower bits of VA (bits other than bits related to WSN) have a relative virtual address (EVA, Effec tive Virt
ual Address). In VAs with such configurations, the fact that the WSNs are different indicates that the virtual spaces themselves related to the VAs are different.

以上のようにVAが構成されている仮想記憶方式を採用
するデータ処理装置で使用される分岐ヒストリテーブル
では、O3(OperatingSystem)等によ
りある処理が行われている間に以前存在した仮想空間が
なくなったような場合に、異なる仮想空間の間の分岐を
行う分岐命令が分岐ヒストリテーブルにヒツトすると、
存在しない仮想空間の命令が先取りされる可能性が生じ
る。
As described above, in the branch history table used in a data processing device that adopts the virtual storage method in which VA is configured, the previously existing virtual space disappears while a certain process is being performed by O3 (Operating System) etc. In such a case, if a branch instruction that branches between different virtual spaces hits the branch history table,
There is a possibility that an instruction in a virtual space that does not exist may be prefetched.

〔発明が解決しようとする課題〕[Problem to be solved by the invention]

上述したように、第2図に示すようにVAが構成されて
いる仮想記憶方式を採用するデータ処理装置で使用され
る分岐ヒストリテーブルでは、異なる仮想空間の間の分
岐を行う分岐命令がヒツトし、存在しない仮想空間の命
令の先取りが行われる可能性がある。
As mentioned above, in the branch history table used in a data processing device that employs a virtual memory system in which VA is configured as shown in Figure 2, a branch instruction that branches between different virtual spaces is hit. , there is a possibility that an instruction in a virtual space that does not exist may be prefetched.

この場合に、仮想空間不在等の例外事象が検出されるが
、実際にはその分岐命令による分岐は実行されないので
その例外事象は無視される。
In this case, an exceptional event such as the absence of a virtual space is detected, but since the branch according to the branch instruction is not actually executed, the exceptional event is ignored.

したがって、例外事象の検出およびその例外事象の無視
によるオーバーヘッドがデータ処理装置に発生してしま
うという欠点がある。
Therefore, there is a drawback in that the data processing device incurs an overhead due to the detection of the exceptional event and the ignoring of the exceptional event.

本発明の目的は、上述の点に鑑み、異なる仮想空間の間
の分岐を行う分岐命令が分岐ヒストリテーブルにヒツト
することを抑止することができ、仮想空間不在等の例外
事象の検出により発生するデータ処理装置におけるオー
バーヘッドを削減することができる分岐ヒストリテーブ
ル制御方式を提供することにある。
In view of the above-mentioned points, an object of the present invention is to be able to prevent a branch instruction that branches between different virtual spaces from hitting a branch history table, and to prevent a branch instruction from hitting a branch history table, which occurs due to the detection of an exceptional event such as the absence of a virtual space. An object of the present invention is to provide a branch history table control method that can reduce overhead in a data processing device.

〔課題を解決するための手段〕[Means to solve the problem]

本発明の分岐ヒストリテーブル制御方式は、分岐命令ア
ドレスとその分岐命令アドレスに対応する分岐先アドレ
スとを対にして記憶する分岐ヒストリテーブルを有し仮
想記憶方式を採用するデータ処理装置において、分岐ヒ
ストリテーブル読出し時に命令取出しアドレスを保持し
分岐ヒストリテーブル書込み時に分岐命令アドレスを保
持する第1のレジスタと、分岐ヒストリテーブル書込み
時に前記第1のレジスタによって保持される分岐命令ア
ドレスに対応する分岐先アドレスを保持する第2のレジ
スタと、分岐ヒストリテーブル書込み時に前記第1のレ
ジスタによって保持される分岐命令アドレスの一部と前
記第2のレジスタによって保持される分岐先アドレスの
一部とを比較する第1の比較手段と、分岐ヒストリテー
ブルに対応して前記第1の比較手段の比較結果を記憶す
る記憶手段と、分岐ヒストリテーブル読出し時に前記第
1のレジスタによって保持される命令取出しアドレスと
分岐ヒストリテーブルに記憶されている分岐命令アドレ
スとを比較する第2の比較手段と、前記記憶手段によっ
て記憶されている前記第1の比較手段の比較結果が不一
致を示している場合に前記第2の比較手段の比較結果を
無効化して予測分岐先アドレスの検出を抑止する第1の
抑止手段とを有する。
The branch history table control method of the present invention is applicable to a data processing device that employs a virtual memory method and has a branch history table that stores a branch instruction address and a branch destination address corresponding to the branch instruction address in pairs. A first register that holds an instruction fetch address when reading the table and a branch instruction address when writing the branch history table, and a branch destination address that corresponds to the branch instruction address held by the first register when writing the branch history table. a second register to be held, and a first to compare a part of the branch instruction address held by the first register and a part of the branch destination address held by the second register when writing the branch history table; a comparison means for storing the comparison result of the first comparison means corresponding to the branch history table, and a storage means for storing the comparison result of the first comparison means corresponding to the branch history table, and an instruction fetch address held by the first register when reading the branch history table and the branch history table. If the comparison result between the second comparison means for comparing the stored branch instruction address and the first comparison means stored by the storage means indicates a mismatch, the second comparison means and a first inhibiting means for inhibiting detection of a predicted branch destination address by invalidating the comparison result.

また、本発明の分岐ヒストリテーブル制御方式は、分岐
命令アドレスとその分岐命令アドレスに対応する分岐先
アドレスとを対にして記憶する分岐ヒストリテーブルを
有し仮想記憶方式を採用するデータ処理装置において、
分岐ヒストリテーブル読出し時に命令取出しアドレスを
保持し分岐ヒストリテーブル書込み時に分岐命令アドレ
スを保持する第3のレジスタと、分岐ヒストリテーブル
読出し時に前記第3のレジスタによって保持される命令
取出しアドレスと分岐ヒストリテーブルによって記憶さ
れている分岐命令アドレスとを比較する第3の比較手段
と、分岐ヒストリテーブルに記憶されている分岐命令ア
ドレスの一部とその分岐命令アドレスに対応する分岐先
アドレスの一部とを比較する第4の比較手段と、この第
4の比較手段の比較結果が不一致を示している場合に前
記第3の比較手段の比較結果を無効化して予測分岐先ア
ドレスの検出を抑止する第2の抑止手段とを有する。
Further, the branch history table control method of the present invention provides a data processing device that employs a virtual storage method and has a branch history table that stores a branch instruction address and a branch destination address corresponding to the branch instruction address in pairs.
A third register that holds an instruction fetch address when reading the branch history table and a branch instruction address when writing the branch history table, and an instruction fetch address held by the third register when reading the branch history table and the branch history table. A third comparison means that compares a stored branch instruction address with a portion of the branch instruction address stored in the branch history table and a portion of the branch destination address corresponding to the branch instruction address. a fourth comparing means; and a second deterrent for inhibiting detection of a predicted branch destination address by invalidating the comparison result of the third comparing means when the comparison result of the fourth comparing means shows a mismatch; means.

〔作用〕[Effect]

本発明の分岐ヒストリテーブル制御方式では、第1のレ
ジスタが分岐ヒストリテーブル読出し時に命令取出しア
ドレスを保持し分岐ヒストリテーブル書込み時に分岐命
令アドレスを保持し、第2のレジスタが分岐ヒストリテ
ーブル書込み時に第1のレジスタによって保持される分
岐命令アドレスに対応する分岐先アドレスを保持し、第
1の比較手段が分岐ヒストリテーブル書込み時に第1の
レジスタによって保持される分岐命令アドレスの一部と
第2のレジスタによって保持される分岐先アドレスの一
部とを比較し、記憶手段が分岐ヒストリテーブルに対応
して第1の比較手段の比較結果を記憶し、第2の比較手
段が分岐ヒストリテーブル読出し時に第1のレジスタに
よって保持される命令取出しアドレスと分岐ヒストリテ
ーブルに記憶されている分岐命令アドレスとを比較し、
第1の抑止手段が記憶手段によって記憶されている第1
の比較手段の比較結果が不一致を示している場合に第2
の比較手段の比較結果を無効化して予測分岐先アドレス
の検出を抑止する。
In the branch history table control method of the present invention, the first register holds the instruction fetch address when reading the branch history table, holds the branch instruction address when writing the branch history table, and the second register holds the instruction fetch address when writing the branch history table. A branch target address corresponding to a branch instruction address held by a register of The storage means stores the comparison result of the first comparison means corresponding to the branch history table, and the second comparison means Compare the instruction fetch address held by the register with the branch instruction address stored in the branch history table,
The first deterrent means is stored by the storage means.
If the comparison result of the comparison means shows a discrepancy, the second
The comparison result of the comparing means is invalidated to suppress detection of the predicted branch destination address.

また、本発明の分岐ヒストリテーブル制御方式では、第
3のレジスタが分岐ヒストリテーブル読出し時に命令取
出しアドレスを保持し分岐ヒストリテーブル書込み時に
分岐命令アドレスを保持し、第3の比較手段が分岐ヒス
トリテーブル読出し時に第3のレジスタによって保持さ
れる命令取出しアドレスと分岐ヒストリテーブルによっ
て記憶されている分岐命令アドレスとを比較し、第4の
比較手段が分岐ヒストリテーブルに記憶されている分岐
命令アドレスの一部とその分岐命令アドレスに対応する
分岐先アドレスの一部とを比較し、第2の抑止手段が第
4の比較手段の比較結果が不一致を示している場合に第
3の比較手段の比較結果を無効化して予測分岐先アドレ
スの検出を抑止する。
Further, in the branch history table control method of the present invention, the third register holds the instruction fetch address when reading the branch history table and holds the branch instruction address when writing the branch history table, and the third comparing means holds the instruction fetch address when reading the branch history table. The instruction fetch address held by the third register is compared with the branch instruction address stored in the branch history table, and the fourth comparison means compares the instruction fetch address held by the third register with the branch instruction address stored in the branch history table. The second inhibiting means compares the branch instruction address with a part of the branch destination address corresponding to the branch instruction address, and invalidates the comparison result of the third comparing means when the comparison result of the fourth comparing means indicates a mismatch. to suppress detection of the predicted branch destination address.

〔実施例〕〔Example〕

次に、本発明について図面を参照して説明する。 Next, the present invention will be explained with reference to the drawings.

第1図(a)は、本発明の分岐ヒストリテーブル制御方
式の一実施例の構成を示すプロンク図である0本実施例
の分岐ヒストリテーブル制御方式は、書込み許可フラグ
(WEF、 Wr i t e  Enable  F
lag)1と、命令アドレスレジスタ(IAR,In5
truction  Address  Regist
er)2と、分岐先アドレスレジスタ(DAR,Des
tinationAddress  Register
)3と、仮想空間番号比較回路(WSCe Wo r 
k i n gSpace  number  Com
parat。
FIG. 1(a) is a block diagram showing the configuration of an embodiment of the branch history table control method of the present invention. Enable F
lag) 1 and the instruction address register (IAR, In5
traction Address Register
er)2 and branch destination address registers (DAR, Des
tinationAddress Register
) 3 and the virtual space number comparison circuit (WSCe Wor
kin gSpace number Com
Parat.

r)4と、命令アドレスアレイ (IAA、In5tr
uction  Address  Array)5と
、分岐先アドレスアレイ (DAA、De 5tina
tion  Address  Array)6と、分
岐先情報アレイ(D I A++ D e s t 1
nation  Informatjon  Arta
y)’rと、命令アドレス比較回路(IAC,1nst
ruction   Address   Compa
rator)8と、AND回路10と、分岐検出フラグ
(BHFa Branch  Hit  Flag)1
)と、予測分岐先アドレスレジスタ(PDAR* Pr
edicted  Destination  Add
ress  Register)12と、信号1610
1〜1)6とを含んで構成されている。ここで、IAA
5およびDAA6により分岐ヒストリテーブル(BHT
、BranchH3story  Table)が構成
されている。また、IAR2により第1のレジスタが実
現され、DAR3により第2のレジスタが実現され、W
Se2により第1の比較手段が実現され、DrA7によ
り記憶手段が実現され、lAC3により第2の比較手段
が実現され、AND回路10により第1の抑止手段が実
現されている。なお、本実施例の分岐ヒストリテーブル
制御方式は、第2図に示すようにVAが構成されている
仮想記憶方式を採用するデータ処理装置に適用されるも
のとする。
r) 4 and instruction address array (IAA, In5tr
address array) 5 and branch destination address array (DAA, De 5tina).
tion Address Array) 6, and a branch destination information array (DIA++Dest1).
Nation Information Arta
y) 'r and instruction address comparison circuit (IAC, 1nst
ruction Address Compa
rator) 8, AND circuit 10, and branch detection flag (BHFa Branch Hit Flag) 1
) and the predicted branch destination address register (PDAR*Pr
Directed Destination Add
ress Register) 12 and signal 1610
1 to 1) and 6. Here, IAA
5 and DAA6 create a branch history table (BHT
, BranchH3story Table) are configured. Also, the first register is realized by IAR2, the second register is realized by DAR3, and W
Se2 realizes a first comparing means, DrA7 realizes a storage means, lAC3 realizes a second comparing means, and the AND circuit 10 realizes a first inhibiting means. It is assumed that the branch history table control method of this embodiment is applied to a data processing apparatus that employs a virtual storage method in which a VA is configured as shown in FIG.

WEFIは、BHTにアドレス(分岐命令アドレスおよ
び分岐先アドレス)を登録する(書き込む)場合にセッ
トされるF/F (F l i p/F 1op)であ
り、信号線101を介して命令取出し制御装置(IFC
,In5truction  Fetch  Conむ
roller)(図示せず)より送出されるBIT登録
信号を受け、信号線104を介してIAA5.DAA6
およびDIA7への書込みを指示する。
WEFI is an F/F (F l i p/F 1op) that is set when registering (writing) an address (branch instruction address and branch destination address) in the BHT, and controls instruction fetching via the signal line 101. Equipment (IFC
, In5truction Fetch Controller) (not shown), the IAA5. DAA6
and instructs writing to DIA7.

IAR2は、BHT続出し時には命令取出しアドレスを
受けてBIT書込み時には分岐命令アドレスを受けるレ
ジスタであり、信号1)02を介してアドレス生成回路
(ADC* AddressDevelopment 
 C4rcuit)  (図示せず)より送出されるア
ドレスを受け、信号線105を介してWSe2に分岐命
令の存在する仮想空間の仮想空間番号(WSN。受は取
った分岐命令アドレスの一部。第2図参照)を送出し、
信号線106を介してアドレス中の一定数の上位ビット
(IAC8における比較のために必要ないくつかのビッ
ト)をIAA5およびlAC3に送出し、信号線107
を介してIAA5.DAA6およびDIA7にアドレス
中の下位ビット(上述の一定の上位ビット以外のビット
)をRAM (Random  ACCeS3  Me
mOr7a  IAA5.DAA6およびDIA7の各
々を形成するRAM)のアドレスとして送出する。
IAR2 is a register that receives an instruction fetch address when writing BHT and receives a branch instruction address when writing BIT.
The virtual space number (WSN) of the virtual space where the branch instruction exists is received via the signal line 105 to WSe2. (see figure),
A certain number of upper bits in the address (some bits necessary for comparison in IAC8) are sent to IAA5 and lAC3 via signal line 106, and signal line 107
via IAA5. The lower bits in the address (other than the fixed upper bits mentioned above) are transferred to DAA6 and DIA7 in RAM (Random ACCeS3 Me
mOr7a IAA5. It is sent as the address of the RAM forming each of DAA6 and DIA7.

DAR3は、BIT書込み時にIAR2に保持される分
岐命令アドレスに対応する分岐先アドレスを保持するレ
ジスタであり、信号m103を介してADCより分岐先
アドレスを受け、信号線109を介してDAA6にその
分岐先アドレスを送出し、信号&1IIO8を介してW
Se2に分岐先命令の存在する仮想空間のWSN (受
は取った分岐先アドレスの一部)を送出する。
DAR3 is a register that holds a branch destination address corresponding to the branch instruction address held in IAR2 at the time of BIT writing, receives the branch destination address from the ADC via signal m103, and sends the branch address to DAA6 via signal line 109. Sends destination address and sends W via signal &1IIO8
The WSN of the virtual space where the branch destination instruction exists (receiver is a part of the taken branch destination address) is sent to Se2.

WSe2は、分岐命令の存在する仮想空間のWSNと分
岐先命令の存在する仮想空間のWSNとを比較して両者
が等しいか否かを検出する比較回路であり、分岐命令の
存在する仮想空間のWSNおよび分岐先命令の存在する
仮想空間のWSNの各々を信号線105および108を
介してIAR2およびDAR3より受け、両者が等しい
場合にはその比較結果を“1”とし、両者が等しくない
場合にはその比較結果を“O”とし、その比較結果(W
SN比較結果)を信号線1)0を介してDIA7に送出
する。
WSe2 is a comparison circuit that compares the WSN of the virtual space where the branch instruction exists and the WSN of the virtual space where the branch destination instruction exists to detect whether they are equal. The WSN and the WSN of the virtual space where the branch destination instruction exists are received from IAR2 and DAR3 via signal lines 105 and 108, and if they are equal, the comparison result is set to "1", and if they are not equal, the comparison result is set to "1". The comparison result is “O”, and the comparison result (W
The SN comparison result) is sent to the DIA 7 via the signal line 1)0.

BHT内のIAA5は、分岐命令アドレスの履歴を記憶
するテーブルであり、信号線107を介してIAR2よ
り送出されるアドレス(分岐命令アドレスまたは命令取
出しアドレス)の下位ビットをアドレスとして、信号線
104を介してWEFlより書込みが指示(許可)され
た場合(WEFlのセント時)には信号線106を介し
てIAR2より送出される分岐命令アドレスの上位ビッ
トを書き込み、WEFIより読出しが指示された場合(
WEFIのリセット時)には履歴として残っている分岐
命令アドレスの上位ビットを信号線1)1を介してlA
C3に送出する。
The IAA5 in the BHT is a table that stores the history of branch instruction addresses, and uses the lower bits of the address (branch instruction address or instruction fetch address) sent from the IAR2 via the signal line 107 as an address to connect the signal line 104. When a write is instructed (permitted) by WEFI via the IAR2 via the signal line 106 (when WEFl is sent), the upper bits of the branch instruction address sent from the IAR2 are written via the signal line 106, and when a read is instructed from the WEFI (
When WEFI is reset), the upper bits of the branch instruction address remaining as history are sent to lA via signal line 1)1.
Send to C3.

BHT内のDAA6は、IAA5内の分岐命令アドレス
の履歴に対応して分岐先アドレスの履歴を記憶するテー
ブルであり、信号線107を介してIAR2より送出さ
れるアドレスの下位ビットをアドレスとして、信号線1
04を介してWEFlより書込みが指示された場合には
信号g109を介してDAR3より送出される分岐先ア
ドレスを書き込み、WEFIより読出しが指示された場
合には履歴として残っている分岐先アドレスを信号線1
)2を介してPDAR12に送出する。
The DAA6 in the BHT is a table that stores the history of branch destination addresses in correspondence with the history of branch instruction addresses in the IAA5, and uses the lower bits of the address sent from the IAR2 via the signal line 107 as an address. line 1
When a write is instructed from WEFl via signal g104, the branch destination address sent from DAR3 is written via signal g109, and when a read is instructed from WEFI, the branch destination address remaining as a history is sent to the signal g109. line 1
)2 to the PDAR 12.

DIA7は、対をなす分岐命令アドレス中のWSNと分
岐先アドレス中のWSNとの比較結果をTAA5および
DAA6に対応して(BHTとエントリを対応させて)
記憶するテーブルであり、信号線104を介してWEF
Iより書込みが指示された場合にはWSe2より信号線
1)0を介して送出された比較結果を記憶し、WEFI
より読出しが指示された場合には記憶している比較結果
を信号線1)3を介してAND回路10に送出する。
DIA7 compares the WSN in the paired branch instruction address and the WSN in the branch destination address in correspondence with TAA5 and DAA6 (corresponding to BHT and entry).
WEF is a table to be stored, and WEF is
When writing is instructed by I, the comparison result sent from WSe2 via signal line 1)0 is stored, and WEFI
When a read instruction is given, the stored comparison result is sent to the AND circuit 10 via the signal line 1)3.

lAC3は、BHT続出し時に命令取出しアドレスとB
HT内の履歴上の分岐命令アドレスとの一致を検出する
比較回路であり、信号線106を介してIAR2より送
出される命令取出しアドレスの上位ビットと信号線1)
1を介してIAA5より送出される分岐命令アドレスの
上位ビットとを比較し、一致したか否かを示す比較結果
(両者が等しい場合には“l”を示し、両者が異なる場
合には“0”を示すアドレス一致信号)を信号線1)4
を介してAND回路10に送出する。
lAC3 is the instruction fetch address and B
This is a comparison circuit that detects a match with the historical branch instruction address in the HT, and it compares the upper bits of the instruction fetch address sent from the IAR 2 via the signal line 106 and the signal line 1).
1 and the upper bits of the branch instruction address sent from the IAA5, and the comparison result indicates whether or not they match (indicates "l" if they are equal, and "0" if they are different). ” address match signal) on signal line 1) 4
The signal is sent to the AND circuit 10 via.

AND回路10は、BIT続出し時に命令取出しアドレ
スと同し分岐命令アドレスがBHT内の履歴上にあるか
否かを調べるゲートであり、信号線1)4を介してlA
C3より送出されるアドレス一致信号と信号線1)3を
介してDIA7より送出されるWSN比較結果との論理
積をとり、その論理積の結果を信号線1)5を介して予
測分岐先検出信号としてBHFIIに送出する。
The AND circuit 10 is a gate that checks whether or not the same branch instruction address as the instruction fetch address is on the history in the BHT when BIT is successively issued.
The address match signal sent from C3 is logically ANDed with the WSN comparison result sent from DIA7 via signal line 1)3, and the result of the logical product is used to detect the predicted branch destination via signal line 1)5. Send it to BHFII as a signal.

BHFIIは、予測分岐先アドレスを検出したか否かを
示すF/F (予測分岐先検出信号が“1“であれば予
測分岐先アドレスを検出したことを示すためにセットさ
れるF/F)であり、信号線1)5を介してAND回路
10より送出される予測分岐先検出信号を受け、その予
測分岐先検出信号に基づく信号を信号線1)7を介して
IFCに送出する。
BHFII is an F/F that indicates whether a predicted branch destination address has been detected (F/F that is set to indicate that a predicted branch destination address has been detected if the predicted branch destination detection signal is “1”) receives a predicted branch destination detection signal sent from the AND circuit 10 via the signal line 1)5, and sends a signal based on the predicted branch destination detection signal to the IFC via the signal line 1)7.

PDAR12は、BHFIIと対応して予測分岐先アド
レスを受けるレジスタであり、信号線1)2を介してD
AA6より送出されるBHT内の履歴上の分岐先アドレ
スを受け、その分岐先アドレスを予測分岐先アドレスと
して信号*1)6を介してADCに送出する。
PDAR12 is a register that corresponds to BHFII and receives the predicted branch destination address, and is connected to D via signal line 1)2.
It receives the historical branch destination address in the BHT sent from the AA6, and sends the branch destination address as a predicted branch destination address to the ADC via the signal *1)6.

次に、このように構成された本実施例の分岐ヒストリテ
ーブル制御方式の動作について説明する。
Next, the operation of the branch history table control system of this embodiment configured as described above will be explained.

まず、BHT続出し時の動作について説明する。First, the operation when BHT is continuously output will be explained.

BHT続出し時には、最初に、WEFIに“01がセッ
トされ、IAR2に命令取出しアドレスがセットされる
When continuously outputting BHT, "01" is first set in WEFI, and the instruction fetch address is set in IAR2.

これらのセントに基づき、lAC8はIAA5内の履歴
上の分岐命令アドレスとIARZ内の命令取出しアドレ
スとを比較する。
Based on these cents, lAC8 compares the historical branch instruction address in IAA5 and the instruction fetch address in IARZ.

この比較で履歴上の分岐命令アドレスと命令取出しアド
レスとが一致すれば、rAc8の出力(信号線1)4上
のアドレス一致信号)は“1”となる。
If the branch instruction address on the history and the instruction fetch address match in this comparison, the output of rAc8 (address match signal on signal line 1 4) becomes "1".

この時点で、DIA7によって分岐命令の存在する仮想
空間のWSNと分岐先命令の存在する仮想空のWSNと
が等しいことが示されていれば、AND回路10の出力
(信号線1)5上の予測分岐先検出信号)は“1″とな
る(DIA9によって分岐命令の存在する仮想空間のW
SNと分岐先命令の存在する仮想空間のWSNとが異な
ることが示されていればAND回路IOの出力は常に“
0″となり、たとえ[AC8の出力が“1”となっても
予測分岐先アドレスの検出は抑止される)。
At this point, if the DIA 7 shows that the WSN of the virtual space where the branch instruction exists and the WSN of the virtual space where the branch destination instruction exists are equal, the output (signal line 1) 5 of the AND circuit 10 The predicted branch destination detection signal) becomes “1” (DIA9 detects W in the virtual space where the branch instruction exists).
If it is shown that the SN and the WSN of the virtual space where the branch destination instruction exists are different, the output of the AND circuit IO is always “
0'', and even if the output of AC8 becomes "1", detection of the predicted branch destination address is inhibited).

AND回路10の出力が”1”となると、BHFilが
セットされ、BHFIIは予測分岐先アドレスの検出を
示す信号をIFCに送出する。
When the output of the AND circuit 10 becomes "1", BHFil is set, and BHFII sends a signal indicating detection of a predicted branch destination address to the IFC.

それと同時に、PDAR12はDAA6より予測分岐先
アドレスを受は取り、その予測分岐先アドレスをADC
に送出するゆ 続いて、BHT書込み時の動作について説明する。
At the same time, PDAR12 receives the predicted branch destination address from DAA6, and transfers the predicted branch destination address to ADC.
Next, the operation during BHT writing will be explained.

BHT書込み時には、WEFIに1)”がセットされ、
IAR2に分岐命令アドレスがセットされ、DAR34
こその分岐命令アドレスに対応する分岐先アドレスがセ
ットされる。
When writing BHT, 1)” is set in WEFI,
The branch instruction address is set in IAR2, and DAR34
The branch destination address corresponding to the current branch instruction address is set.

これらのセントに基づき(セントされた分岐命令アドレ
スおよび分岐先アドレス中のWSNに基づき)、WSe
2は分岐命令の存在する仮想空間と分岐先命令の存在す
る仮想空間とが等しいか否かをチエツクする。
Based on these cents (based on the WSN in the sent branch instruction address and branch target address), WSe
Step 2 checks whether the virtual space where the branch instruction exists is equal to the virtual space where the branch destination instruction exists.

このチエツクで両者が等しければ、WSe2の出力(信
号&1llO上のWSN比較結果)力び1”トナリ、D
IA7に“l”が格納される。
If the two are equal in this check, the output of WSe2 (signal & WSN comparison result on 1llO) is 1”, D
“l” is stored in IA7.

上述のチエツクで両者が異なれば、DIA7に“0”が
記憶される。この“0”の記憶により、先に述べたよう
に、BHT続出し時の予測分岐先アドレスの検出が抑止
されることになる。
If the above check shows that they are different, "0" is stored in DIA7. By storing this "0", as described above, the detection of the predicted branch destination address when BHT continues is suppressed.

このようにして、異なる仮想空間の間の分岐を行う分岐
命令が分岐ヒストリテーブルにヒツトすることが抑止さ
れる。
In this way, a branch instruction that branches between different virtual spaces is prevented from hitting the branch history table.

第1図(b)は、本発明の分岐ヒストリテーブル制御方
式の他の実施例の構成を示すブロック図である。本実施
例の分岐ヒストリテーブル制御方式は、WEFIと、I
AR2と、DAR3と、■AA5と、DAA6と、lA
C3と、WSe2と、AND回路10と、BHFIIと
、PDAR12と、信号線101〜103,109..
1)2 1)4〜123とを含んで構成されている(第
1図(a)中の構成要素と同様な第1図(b)中の構成
要素は、第1図(a)中の符号と同一の符号を付して示
している)。ここで、IAA5およびDAA6によりB
HTが構成されている。また、【AR2により第3のレ
ジスタが実現され、lAC3により第3の比較手段が実
現され、WSe2により第4の比較手段が実現され、A
ND回路IOにより第2の抑止手段が実現されている。
FIG. 1(b) is a block diagram showing the configuration of another embodiment of the branch history table control method of the present invention. The branch history table control method of this embodiment uses WEFI and I
AR2, DAR3, ■AA5, DAA6, lA
C3, WSe2, AND circuit 10, BHFII, PDAR 12, and signal lines 101 to 103, 109. ..
1) 2 1) 4 to 123 (The components in FIG. 1(b) that are similar to the components in FIG. 1(a) are the same as those in FIG. 1(a). ). Here, B by IAA5 and DAA6
HT is configured. Furthermore, [AR2 realizes the third register, lAC3 realizes the third comparison means, WSe2 realizes the fourth comparison means, and A
The second suppression means is realized by the ND circuit IO.

なお、本実施例の分岐ヒストリテーブル制御方式も、第
1図(a)に示す分岐ヒストリテーブル制御方式と同様
に、第2図に示すようにVAが構成されている仮想記憶
方式を採用するデータ処理装置に適用されるものとする
Note that the branch history table control method of this embodiment is also similar to the branch history table control method shown in FIG. shall apply to processing equipment.

WEFIは、BHTにアドレスを登録する(書き込む)
場合にセントされるF/Fであり、信号線101を介し
てEFC<図示せず)より送出されるBHT登録信号を
受け、信号m1lBを介してIAA5およびDAA6へ
の書込みを指示する。
WEFI registers (writes) the address to BHT.
It receives a BHT registration signal sent from the EFC (not shown) via the signal line 101, and instructs writing to the IAA5 and DAA6 via the signal m11B.

IAR2は、BHT続出し時には命令取出しアドレスを
受けてBIT書込み時には分岐命令アドレスを受けるレ
ジスタであり、信号線102を介してADC(図示せず
)より送出されるアドレスを受け、信号線1)9を介し
てアドレス中の一定数の上位ビット(lAC8における
比較のために必要ないくつかのビット)をIAA5およ
びlAC3に送出し、信号線120を介してIAA5お
よびDAA6にアドレス中の下位ピントをIAA5およ
びDAA6の各々を形成するRAMのアドレスとして送
出する。
IAR2 is a register that receives an instruction fetch address when writing a BHT, and receives a branch instruction address when writing a BIT, and receives an address sent from an ADC (not shown) via a signal line 102. A fixed number of high-order bits (some bits necessary for comparison in lAC8) in the address are sent to IAA5 and lAC3 via the signal line 120, and the lower bits in the address are sent to IAA5 and DAA6 via the signal line 120. and the address of the RAM forming each of DAA6.

DAR3は、BHT書込み時にrAR2に保持される分
岐命令アドレスに対応する分岐先アドレスを保持するレ
ジスタであり、信号線103を介してADCより送出さ
れる分岐先アドレスを受け、信号線109を介してDA
A6にその分岐先アドレスを送出する。
DAR3 is a register that holds a branch destination address corresponding to the branch instruction address held in rAR2 at the time of BHT writing, receives the branch destination address sent from the ADC via the signal line 103, and receives the branch destination address via the signal line 109. D.A.
The branch destination address is sent to A6.

BHT内のIAA5は、分岐命令アドレスの履歴を記憶
するテーブルであり、信号線120を介して1AR2よ
り送出されるアドレスの下位ビットをアドレスとして、
信号線1)8を介してWEFlより書込みが指示された
場合には信号線1)9を介してIAR2より送出される
分岐命令アドレスの上位ビットを書き込み、WEFIよ
り読出しが指示された場合には履歴として残っている分
岐命令アドレスの上位ビットを信号線1)1を介してl
AC3に送出し、その分岐命令アドレス中のWSN (
第2図参照)を信号線121を介してWSe2に送出す
る。
IAA5 in the BHT is a table that stores the history of branch instruction addresses, and uses the lower bits of the address sent from 1AR2 via the signal line 120 as an address.
When a write is instructed by WEFl via signal line 1) 8, the upper bits of the branch instruction address sent from IAR2 are written via signal line 1) 9, and when read is instructed from WEFI. The upper bits of the branch instruction address remaining as history are sent via signal line 1)1.
WSN (
(see FIG. 2) is sent to WSe2 via the signal line 121.

BHT内のDAA6は、IAA5内の分岐命令アドレス
の履歴に対応して分岐先アドレスの履歴を記憶するテー
ブルであり、信号m120を介してIAR2より送出さ
れるアドレスの下位ビットをアドレスとして、信号!1
)8を介してWEFlより書込みが指示された場合には
信号線109を介してDAR3より送出される分岐先ア
ドレスを書き込み、WEFIより読出しが指示された場
合には履歴として残っている分岐先アドレスを信号線1
)2を介してPDAR12に送出し、その分岐先アドレ
ス中のWSNを信号線122を介してWSe2に送出す
る。
The DAA6 in the BHT is a table that stores the history of branch destination addresses corresponding to the history of branch instruction addresses in the IAA5, and uses the lower bits of the address sent from the IAR2 via the signal m120 as the address. 1
) 8, the branch destination address sent from DAR3 is written via the signal line 109, and when read is instructed from WEFI, the branch destination address remains as a history. The signal line 1
)2 to the PDAR 12, and the WSN in the branch destination address is sent to the WSe2 via the signal line 122.

lAC3は、BHT続出し時に命令取出しアドレスとB
HT内の履歴上の分岐命令アドレスとの一致を検出する
比較回路であり、信号線1)9を介してIAR2より送
出される命令取出しアドレスの上位ビットと信号線1)
1を介してIAA5より送出される分岐命令アドレスの
上位ビットとを比較し、一致したか否かを示す比較結果
(両者が等しい場合には“1”を示し、両者が異なる場
合には“0”を示すアドレス一致信号)を信号線1)4
を介してAND回路1oに送出する。
lAC3 is the instruction fetch address and B
This is a comparison circuit that detects a match with the historical branch instruction address in the HT, and it compares the upper bits of the instruction fetch address sent from the IAR2 via the signal line 1)9 with the signal line 1).
1 and the upper bit of the branch instruction address sent from the IAA5, and the comparison result indicates whether or not they match (indicates "1" if they are equal, and "0" if they are different). ” address match signal) on signal line 1) 4
The signal is sent to the AND circuit 1o via the AND circuit 1o.

WSe2は、分岐命令の存在する仮想空間のWSNと分
岐先命令の存在する仮想空間のWSNとを比較して両者
が等しいか否かを検出する比較回路であり、分岐命令の
存在する仮想空間のWSNおよび分岐先命令の存在する
仮想空間のWSNの各々を信号!5121および122
を介してIAA5およびDAA6より受け、両者が等し
い場合にはその比較結果を“1”とし、両者が等しくな
い場合にはその比較結果を“0”とし、その比較結果(
WSN比較結果)を信号線123を介してAND回路1
0に送出する。
WSe2 is a comparison circuit that compares the WSN of the virtual space where the branch instruction exists and the WSN of the virtual space where the branch destination instruction exists to detect whether they are equal. Signal each of the WSN and the WSN of the virtual space where the branch destination instruction exists! 5121 and 122
is received from IAA5 and DAA6 via
WSN comparison result) to the AND circuit 1 via the signal line 123.
Send to 0.

AND回路10は、BHT続出し時に命令取出しアドレ
スと同じ分岐命令アドレスがBHT内の履歴上にあるか
否かを調べるゲートであり、信号線1)4を介してlA
C3より送出されるアドレス一致信号と信号線123を
介してWSe2より送出されるWSN比較結果との論理
積をとり、その論理積の結果を信号線1)5を介して予
測分岐先検出信号としてBHFIIに送出する。
The AND circuit 10 is a gate that checks whether or not the same branch instruction address as the instruction fetch address exists in the history in the BHT when the BHT is successively issued.
The address match signal sent from C3 is ANDed with the WSN comparison result sent from WSe2 via signal line 123, and the result of the AND is sent as a predictive branch destination detection signal via signal line 1)5. Send to BHFII.

BHFIIおよびPDAR12は、第1図(a)に示す
実施例におけるBHFIIおよびPDAR12と同一の
機能を有する。
BHFII and PDAR 12 have the same functions as BHFII and PDAR 12 in the embodiment shown in FIG. 1(a).

次に、このように構成された本実施例の分岐ヒストリテ
ーブル制御方式の動作について説明する。
Next, the operation of the branch history table control system of this embodiment configured as described above will be explained.

まず、BHT続出し時の動作について説明する。First, the operation when BHT is continuously output will be explained.

BHT続出し時には、最初に、WEFIに0”がセット
され、IAR2に命令取出しアドレスがセントされる。
At the time of successive BHT output, 0'' is first set in WEFI and the instruction fetch address is written in IAR2.

これらのセットに基づき、1Ac8はIAA5内の履歴
上の分岐命令アドレスとIARZ内の命令取出しアドレ
スとを比較する。
Based on these sets, 1Ac8 compares the historical branch instruction address in IAA5 and the instruction fetch address in IARZ.

この比較で廖歴上の分岐命令アドレスと命令取出しアド
レスとが一致すれば、lAC3の出力(信号線1)4上
のアドレス一致信号)は“1″となる。
In this comparison, if the branch instruction address on the history and the instruction fetch address match, the output of lAC3 (address match signal on signal line 1) becomes "1".

この時点で、WSe2によって廖歴上の分岐命令アドレ
ス中のWSNとその分岐命令アドレスに対応する分岐先
アドレス中のWSNとが等しいことが示されていれば、
AND回路10の出力(信号′1al15上の予測分岐
先検出信号)は“l”となる。
At this point, if WSe2 indicates that the WSN in the branch instruction address on the branch history is equal to the WSN in the branch destination address corresponding to that branch instruction address, then
The output of the AND circuit 10 (the predicted branch destination detection signal on the signal '1al15) becomes "l".

AND回路10の出力が”1”となると、BHFilが
セントされ、BHFllは予測分岐先アドレスの検出を
示す信号をIFCに送出する。
When the output of the AND circuit 10 becomes "1", BHFil is sent, and BHFll sends a signal indicating detection of the predicted branch destination address to the IFC.

それと同時に、PDAR12はDAA6より予測分岐先
アドレスを受は取り、その予測分岐先アドレスをADC
に送出する。
At the same time, PDAR12 receives the predicted branch destination address from DAA6, and transfers the predicted branch destination address to ADC.
Send to.

WSe2によって履歴上の分岐命令アドレス中のWSN
とその分岐命令アドレスに対応する分岐先アドレス中の
WSNとが異なることが示されていればAND回路10
の出力は常に“0”となる。
WSN in branch instruction address in history by WSe2
If it is shown that the WSN in the branch destination address corresponding to the branch instruction address is different, the AND circuit 10
The output of is always "0".

AND回路10の出力が”θ″となると、BHFilが
リセットされ、予測分岐先アドレスの検出が抑止される
When the output of the AND circuit 10 becomes "θ", BHFil is reset and detection of the predicted branch destination address is inhibited.

続いて、BHT書込み時の動作について説明する(この
動作は従来のBHTの制御における動作ど同様である)
Next, the operation during BHT writing will be explained (this operation is similar to the operation in conventional BHT control).
.

BHT書込み時には、WEFIに“1″がセ・ノドされ
、IAR2に分岐命令アドレスがセットされ、DAR3
にその分岐命令アドレスに対応する分岐先アドレスがセ
ントされる。
When writing BHT, "1" is set to WEFI, the branch instruction address is set to IAR2, and DAR3 is set.
The branch destination address corresponding to the branch instruction address is then sent.

WEFIに1″がセットされることにより、[AA5お
よびDAA6に対する書込みの指示が出て、[AR2内
の分岐命令アドレス中の下位ビットで示されるアドレス
のIAAS内の記憶領域にIAR2にセットされた分岐
命令アドレスが書き込まれ、同一のアドレスのDAA6
内の記憶領域にDAR3にセットされた分岐先アドレス
が書き込まれる。
By setting WEFI to 1'', a write instruction is issued to [AA5 and DAA6], and [is set in IAR2 to the storage area in IAAS at the address indicated by the lower bit of the branch instruction address in AR2. The branch instruction address is written to DAA6 at the same address.
The branch destination address set in DAR3 is written to the storage area within.

〔発明の効果〕〔Effect of the invention〕

以上説明したように本発明は、異なる仮想空間の間の分
岐を行う分岐命令が分岐ヒストリテーブルにヒツトする
ことを抑止することにより、存在しない仮想空間の命令
の先取りが行われる可能性がなくなり、仮想空間不在等
の例外事象の検出により発生するデータ処理装置のオー
バヘッドを削減することができるという効果がある。
As explained above, the present invention prevents a branch instruction that branches between different virtual spaces from hitting the branch history table, thereby eliminating the possibility of prefetching an instruction in a virtual space that does not exist. This has the effect of reducing the overhead of the data processing device caused by the detection of an exceptional event such as the absence of a virtual space.

また、DIAが設けられる本発明の分岐ヒストリテーブ
ル制御方式では、仮想空間に関する比較情報(WSN比
較結果等)を分岐ヒストリチーフルに対応させて記憶す
ることにより、その比較情報を他の情報と組み合わせて
より緻密な分岐ヒストリテーブルに関する制御が可能に
なるという効果がある。
Furthermore, in the branch history table control method of the present invention in which DIA is provided, comparison information regarding the virtual space (WSN comparison results, etc.) is stored in correspondence with the branch history table, and the comparison information is combined with other information. This has the effect of enabling more precise control over the branch history table.

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

第1図(a)は本発明の一実施例の構成を示すブロック
図、 第1図(b)は本発明の他の実施例の構成を示すブロッ
ク図、 第2図は第1図(a)および(b)に示す分岐ヒストリ
テーブル制御方式が適用されるデータ処理方式で採用さ
れる仮想記憶方式における仮想アドレス(VA)の構成
の一例を示す図である。 図において、 1・・・書込み許可フラグ(WEF)、2・・・命令ア
ドレスレジスタ(IAR)、3・・・分岐先アドレスレ
ジスタ(DAR)、4.9・仮想空間番号比較回路(W
SC)、5・・・命令アドレスアレイ (IAA)、6
・・・分岐先アドレスアレイ (DAA)、7・・・分
岐先情報アレイ (D I A)、8・・・命令アドレ
ス比較回路(IAC)、10・・AND回路、 1)・・分岐検出フラグ(BHF)、 12・・予測分岐先アドレスレジスタ(PDAR)、 toi〜123・・・信号線である。 第1図(Q)
FIG. 1(a) is a block diagram showing the configuration of one embodiment of the present invention, FIG. 1(b) is a block diagram showing the configuration of another embodiment of the present invention, and FIG. FIG. 4 is a diagram illustrating an example of a configuration of a virtual address (VA) in a virtual memory system adopted in a data processing system to which the branch history table control system shown in ) and (b) is applied. In the figure, 1...Write enable flag (WEF), 2...Instruction address register (IAR), 3...Branch destination address register (DAR), 4.9. Virtual space number comparison circuit (WEF).
SC), 5... Instruction address array (IAA), 6
...Branch destination address array (DAA), 7...Branch destination information array (DIA), 8...Instruction address comparison circuit (IAC), 10...AND circuit, 1)...Branch detection flag (BHF), 12...Predicted branch destination address register (PDAR), toi~123...Signal line. Figure 1 (Q)

Claims (2)

【特許請求の範囲】[Claims] (1)分岐命令アドレスとその分岐命令アドレスに対応
する分岐先アドレスとを対にして記憶する分岐ヒストリ
テーブルを有し仮想記憶方式を採用するデータ処理装置
において、分岐ヒストリテーブル読出し時に命令取出し
アドレスを保持し分岐ヒストリテーブル書込み時に分岐
命令アドレスを保持する第1のレジスタと、分岐ヒスト
リテーブル書込み時に前記第1のレジスタによって保持
される分岐命令アドレスに対応する分岐先アドレスを保
持する第2のレジスタと、 分岐ヒストリテーブル書込み時に前記第1のレジスタに
よって保持される分岐命令アドレスの一部と前記第2の
レジスタによって保持される分岐先アドレスの一部とを
比較する第1の比較手段と、分岐ヒストリテーブルに対
応して前記第1の比較手段の比較結果を記憶する記憶手
段と、 分岐ヒストリテーブル読出し時に前記第1のレジスタに
よって保持される命令取出しアドレスと分岐ヒストリテ
ーブルに記憶されている分岐命令アドレスとを比較する
第2の比較手段と、 前記記憶手段によって記憶されている前記第1の比較手
段の比較結果が不一致を示している場合に前記第2の比
較手段の比較結果を無効化して予測分岐先アドレスの検
出を抑止する第1の抑止手段と を有することを特徴とする分岐ヒストリテーブル制御方
式。
(1) In a data processing device that employs a virtual memory method and has a branch history table that stores a branch instruction address and a branch destination address corresponding to the branch instruction address as a pair, the instruction fetch address is stored when reading the branch history table. a first register that holds a branch instruction address when writing the branch history table; and a second register that holds a branch destination address corresponding to the branch instruction address held by the first register when writing the branch history table. , a first comparing means for comparing a part of the branch instruction address held by the first register and a part of the branch destination address held by the second register when writing the branch history table; storage means for storing the comparison result of the first comparison means corresponding to the table; an instruction fetch address held by the first register when reading the branch history table; and a branch instruction address stored in the branch history table. and a second comparison means for comparing the first and second comparison means, and when the comparison result of the first comparison means stored in the storage means indicates a mismatch, invalidate the comparison result of the second comparison means and make a prediction. 1. A branch history table control method, comprising: first suppressing means for suppressing detection of a branch destination address.
(2)分岐命令アドレスとその分岐命令アドレスに対応
する分岐先アドレスとを対にして記憶する分岐ヒストリ
テーブルを有し仮想記憶方式を採用するデータ処理装置
において、分岐ヒストリテーブル読出し時に命令取出し
アドレスを保持し分岐ヒストリテーブル書込み時に分岐
命令アドレスを保持する第3のレジスタと、分岐ヒスト
リテーブル読出し時に前記第3のレジスタによって保持
される命令取出しアドレスと分岐ヒストリテーブルによ
って記憶されている分岐命令アドレスとを比較する第3
の比較手段と、分岐ヒストリテーブルに記憶されている
分岐命令アドレスの一部とその分岐命令アドレスに対応
する分岐先アドレスの一部とを比較する第4の比較手段
と、 この第4の比較手段の比較結果が不一致を示している場
合に前記第3の比較手段の比較結果を無効化して予測分
岐先アドレスの検出を抑止する第2の抑止手段と を有することを特徴とする分岐ヒストリテーブル制御方
式。
(2) In a data processing device that employs a virtual memory method and has a branch history table that stores a branch instruction address and a branch destination address corresponding to the branch instruction address as a pair, the instruction fetch address is stored when reading the branch history table. a third register that holds a branch instruction address when a branch history table is written; an instruction fetch address held by the third register when a branch history table is read; and a branch instruction address stored by the branch history table. Third to compare
a fourth comparison means for comparing a part of the branch instruction address stored in the branch history table with a part of the branch destination address corresponding to the branch instruction address; and this fourth comparison means. branch history table control characterized by having a second inhibiting means for inhibiting detection of a predicted branch destination address by invalidating the comparison result of the third comparing means when the comparison result of the third comparing means indicates a mismatch; method.
JP3193490A 1990-02-13 1990-02-13 Branch history control method Expired - Fee Related JP2508341B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3193490A JP2508341B2 (en) 1990-02-13 1990-02-13 Branch history control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3193490A JP2508341B2 (en) 1990-02-13 1990-02-13 Branch history control method

Publications (2)

Publication Number Publication Date
JPH03235121A true JPH03235121A (en) 1991-10-21
JP2508341B2 JP2508341B2 (en) 1996-06-19

Family

ID=12344801

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3193490A Expired - Fee Related JP2508341B2 (en) 1990-02-13 1990-02-13 Branch history control method

Country Status (1)

Country Link
JP (1) JP2508341B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7085920B2 (en) 2000-02-02 2006-08-01 Fujitsu Limited Branch prediction method, arithmetic and logic unit, and information processing apparatus for performing brach prediction at the time of occurrence of a branch instruction

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7085920B2 (en) 2000-02-02 2006-08-01 Fujitsu Limited Branch prediction method, arithmetic and logic unit, and information processing apparatus for performing brach prediction at the time of occurrence of a branch instruction

Also Published As

Publication number Publication date
JP2508341B2 (en) 1996-06-19

Similar Documents

Publication Publication Date Title
US5586294A (en) Method for increased performance from a memory stream buffer by eliminating read-modify-write streams from history buffer
US5530941A (en) System and method for prefetching data from a main computer memory into a cache memory
US5918251A (en) Method and apparatus for preloading different default address translation attributes
US5499355A (en) Prefetching into a cache to minimize main memory access time and cache size in a computer system
US6523118B1 (en) Secure cache for instruction and data protection
TW201037525A (en) Read and write monitoring attributes in transactional memory (TM) systems
US20200167288A1 (en) Servicing cpu demand requests with inflight prefetches
JP2001195303A (en) Translation lookaside buffer whose function is parallelly distributed
EP1139222A1 (en) Prefetch for TLB cache
JPH09120374A (en) Full-associative address converter
US5764944A (en) Method and apparatus for TLB invalidation mechanism for protective page fault
JPH01290050A (en) Buffer memory
US7475220B1 (en) Buffer overflow detection
JPH03235121A (en) Branch history table control system
JPH01108651A (en) Work station
JPH03175548A (en) Microprocessor and address control system
JP3047992B2 (en) Main memory key control method
JP2780552B2 (en) Microprocessor with built-in cache memory
JPS6375934A (en) Information processor
JP2507544B2 (en) Storage controller
JPH0748189B2 (en) Data processing device
JPH0683621A (en) Fetch system
JPH03256141A (en) Execution checking system
JPH0335336A (en) Address translation buffer mechanism
JPS6010336B2 (en) Address comparison method

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees