JPH0359723A - 分岐ヒストリテーブル制御方式 - Google Patents
分岐ヒストリテーブル制御方式Info
- Publication number
- JPH0359723A JPH0359723A JP1194292A JP19429289A JPH0359723A JP H0359723 A JPH0359723 A JP H0359723A JP 1194292 A JP1194292 A JP 1194292A JP 19429289 A JP19429289 A JP 19429289A JP H0359723 A JPH0359723 A JP H0359723A
- Authority
- JP
- Japan
- Prior art keywords
- address
- branch
- virtual space
- branch instruction
- history 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3842—Speculative instruction execution
- G06F9/3844—Speculative instruction execution using dynamic branch prediction, e.g. using branch history tables
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/65—Details of virtual memory and virtual address translation
- G06F2212/655—Same page detection
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Advance Control (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、分岐ヒストリテーブルを備えると共に、仮想
記憶方式を用いるゲータ処理装置において、分岐ヒスト
リテーブルの記憶状況を制御する方式に関するものであ
る。
記憶方式を用いるゲータ処理装置において、分岐ヒスト
リテーブルの記憶状況を制御する方式に関するものであ
る。
分岐ヒストリテーブルを用いるデータ処理装置は、例え
ば特公昭50−22384号公報によう開示されて>p
、現在ば各種のデータ処理装置において分岐ヒストリテ
ーブルが採用されている。
ば特公昭50−22384号公報によう開示されて>p
、現在ば各種のデータ処理装置において分岐ヒストリテ
ーブルが採用されている。
また、仮想記憶方式を用いるデータ処理装置においては
、第2図に示すとおシ、仮想空間番号2)よび相対仮想
アドレス3によう構成し、仮想空間番号2に上位ビット
を、相対仮想アドレス3に下位ビットを充当しておシ、
分岐ヒストリテーブルへ相対仮想アドレス3に相当する
分岐命令のアドレスと、これに応する同様な分岐先のア
ドレスとのみを記憶させるものとなっている。
、第2図に示すとおシ、仮想空間番号2)よび相対仮想
アドレス3によう構成し、仮想空間番号2に上位ビット
を、相対仮想アドレス3に下位ビットを充当しておシ、
分岐ヒストリテーブルへ相対仮想アドレス3に相当する
分岐命令のアドレスと、これに応する同様な分岐先のア
ドレスとのみを記憶させるものとなっている。
しかし、分岐命令と分岐先との各アドレスに付加されて
いる仮想空間番号が異なれば、各アドレスの仮想空間も
各個別のものとなるため、O8の処理中に以前存在した
仮想空間が消滅した場合等では、分岐ヒストリテーブル
中に存在するアドレスを実行しようとしても、これの仮
想空間が消滅していれば、これによる分岐命令が実行不
能となり1オーバヘツドが発生する欠点を生じている。
いる仮想空間番号が異なれば、各アドレスの仮想空間も
各個別のものとなるため、O8の処理中に以前存在した
仮想空間が消滅した場合等では、分岐ヒストリテーブル
中に存在するアドレスを実行しようとしても、これの仮
想空間が消滅していれば、これによる分岐命令が実行不
能となり1オーバヘツドが発生する欠点を生じている。
前述の課題を解決するため、本発明はつぎの手段により
構成するものとなっている。
構成するものとなっている。
すなわち、上述の分岐ヒストリテーブルを記憶するメモ
リを備え、かつ、仮想記憶方式を用いるデータ処理装置
において、仮想空間番号を含む分岐命令のアドレスを保
持する第1のレジスタと、分岐用の仮想空間番号を含む
分岐先のアドレスを保持する第2のレジスタと、第1お
よび第2のレジスタにより各個に保持された各仮想空間
番号を比較する比較手段と、これによる比較結果が一致
したときメモリに対し分岐ヒストリテーブルの記憶を許
容する制御手段とを設けたものである。
リを備え、かつ、仮想記憶方式を用いるデータ処理装置
において、仮想空間番号を含む分岐命令のアドレスを保
持する第1のレジスタと、分岐用の仮想空間番号を含む
分岐先のアドレスを保持する第2のレジスタと、第1お
よび第2のレジスタにより各個に保持された各仮想空間
番号を比較する比較手段と、これによる比較結果が一致
したときメモリに対し分岐ヒストリテーブルの記憶を許
容する制御手段とを設けたものである。
したがって、分岐命令と分岐先との各アドレスに付加さ
れている仮想空間番号が一致しているときにのみ、メモ
リにより分岐ヒストリテーブルとして各アドレスが記憶
されるため、仮想空間番号の不一致による分岐命令の実
行不能が排除される。
れている仮想空間番号が一致しているときにのみ、メモ
リにより分岐ヒストリテーブルとして各アドレスが記憶
されるため、仮想空間番号の不一致による分岐命令の実
行不能が排除される。
以下、実施例を示す第1図のブロック図によって本発明
の詳細な説明する。
の詳細な説明する。
同図においては、命令制御装置(以下、IFC)11か
らの読出/書込信号・R/Wが書込フラグ・7リツプフ
ロツプ回路(以下、■F)12へ与えられ、書込時にこ
れがセット、読出時にはこれがリセットされるものとな
っている一方、アドレス生成回路(以下、ADC) 1
3からの命令読出アドレス/分岐命令アドレス・RA/
WA 、 &よび、分岐先アドレスDAが命令アドレス
レジスタ(以下、IAR)14および分岐先アドレスレ
ジスタ(以下、DAR)15へ各個に与えられ、書込時
には、仮想空間番号を含む分岐命令アドレスWA、t?
よび、これに応する分岐用の仮想空間番号を含む分岐先
アドレスDAがIAR14およびDARl5により各個
に保持されるものと々っている。
らの読出/書込信号・R/Wが書込フラグ・7リツプフ
ロツプ回路(以下、■F)12へ与えられ、書込時にこ
れがセット、読出時にはこれがリセットされるものとな
っている一方、アドレス生成回路(以下、ADC) 1
3からの命令読出アドレス/分岐命令アドレス・RA/
WA 、 &よび、分岐先アドレスDAが命令アドレス
レジスタ(以下、IAR)14および分岐先アドレスレ
ジスタ(以下、DAR)15へ各個に与えられ、書込時
には、仮想空間番号を含む分岐命令アドレスWA、t?
よび、これに応する分岐用の仮想空間番号を含む分岐先
アドレスDAがIAR14およびDARl5により各個
に保持されるものと々っている。
IAR14、DARl 5により各個に保持された各仮
想空間番号は、仮想空間番号比較器(以下、WSC)1
6により比較され、この結果が一致するときはWSC1
6の比較出力が「1」となシ、これがにのゲート17へ
与えられ、このときWEFl2の出力も「1」となって
いるため、同ゲート17の出力が「1」となって分岐命
令メモリ(以下、IAA)18および分岐先メモリ(以
下、DAA ) 19へ与えられ、これらを書込許容状
態とし、IAR14の分岐命令アドレスWA中の下位ビ
ットによう指定されるアドレスへ、これの上位ビットお
よびDARl 5の分岐先アドレスDAを分岐ヒストリ
テーブルとして工AA18 、 DAA49により、互
いに対応して記憶させる。
想空間番号は、仮想空間番号比較器(以下、WSC)1
6により比較され、この結果が一致するときはWSC1
6の比較出力が「1」となシ、これがにのゲート17へ
与えられ、このときWEFl2の出力も「1」となって
いるため、同ゲート17の出力が「1」となって分岐命
令メモリ(以下、IAA)18および分岐先メモリ(以
下、DAA ) 19へ与えられ、これらを書込許容状
態とし、IAR14の分岐命令アドレスWA中の下位ビ
ットによう指定されるアドレスへ、これの上位ビットお
よびDARl 5の分岐先アドレスDAを分岐ヒストリ
テーブルとして工AA18 、 DAA49により、互
いに対応して記憶させる。
また、にのゲート17の出力は、インバータ(以下、I
NV )20により rOJとなシ、これによってM
Oゲート21の出力をrOJとし、分岐禁止フラグ・7
リツプフロツプ回路(以下、BHF)22をリセットす
るため、これの出力rOJが命令読出禁止信号としてI
FCllへ与えられる。
NV )20により rOJとなシ、これによってM
Oゲート21の出力をrOJとし、分岐禁止フラグ・7
リツプフロツプ回路(以下、BHF)22をリセットす
るため、これの出力rOJが命令読出禁止信号としてI
FCllへ与えられる。
以上によう分岐命令アドレスWAおよび分岐先アドレス
DAの記憶が終了すると、IFCllが信号R/Wを読
出0rOJとするため、WEFl 2 カI)セットさ
れてその出力がrOJとなり、ANDゲート17の出力
が「O」へ転すると共に、lNV2Oの出力は「1」と
なるため、ANDゲート21がオン状態となる。
DAの記憶が終了すると、IFCllが信号R/Wを読
出0rOJとするため、WEFl 2 カI)セットさ
れてその出力がrOJとなり、ANDゲート17の出力
が「O」へ転すると共に、lNV2Oの出力は「1」と
なるため、ANDゲート21がオン状態となる。
ついで、ADC13から命令読出アドレスRAが与えら
れると、これがIAR14により保持されたうえ、これ
の下位ビットがIAA18およびDAA19の読出アド
レスとして与えられるため、このアドレスから各々の内
容が読出され、IAA18の内容は命令アドレス比較器
(以下、IAC)23へ与えられる一方、DAA19か
らの分岐先アドレスは予測分岐先アドレスレジスタ(以
下、PDAR)24によう保持され、これがADC13
へ送出される。
れると、これがIAR14により保持されたうえ、これ
の下位ビットがIAA18およびDAA19の読出アド
レスとして与えられるため、このアドレスから各々の内
容が読出され、IAA18の内容は命令アドレス比較器
(以下、IAC)23へ与えられる一方、DAA19か
らの分岐先アドレスは予測分岐先アドレスレジスタ(以
下、PDAR)24によう保持され、これがADC13
へ送出される。
ただし、このときIAC23がIAR14の上位ビット
とIAA18からの内容とを比較しており1一致すれば
比較出力を「1」とするため、これに応じてMOゲート
21の出力が「1」へ転じ、BHF22をセットしてそ
の出力を「1」とし、これを読出有効信号としてIFC
llへ与える。
とIAA18からの内容とを比較しており1一致すれば
比較出力を「1」とするため、これに応じてMOゲート
21の出力が「1」へ転じ、BHF22をセットしてそ
の出力を「1」とし、これを読出有効信号としてIFC
llへ与える。
したがって、IAA18およびDAA19への書込に際
しては、両アドレスWA、DAの仮想空間番号が一致し
ていることをWSClBによりチェックし、これの一致
を前提として記憶がなされ、IAA48゜DAA19に
より両アドレスWA、DAの履歴が分岐ヒストリテーブ
ルとして記憶されると共に、読出に際しては、LAR1
4からの上位ビットによる命令アドレスWAと、すでに
IAA18により記憶され、かつ、読出された命令アド
レスとの一致がIAC23によりチェックされ、これの
一致に応じてPDAR24からの分岐先アドレスが有効
となシ、仮想空間番号の不一致による分岐命令の実行不
能が完全に排除される。
しては、両アドレスWA、DAの仮想空間番号が一致し
ていることをWSClBによりチェックし、これの一致
を前提として記憶がなされ、IAA48゜DAA19に
より両アドレスWA、DAの履歴が分岐ヒストリテーブ
ルとして記憶されると共に、読出に際しては、LAR1
4からの上位ビットによる命令アドレスWAと、すでに
IAA18により記憶され、かつ、読出された命令アド
レスとの一致がIAC23によりチェックされ、これの
一致に応じてPDAR24からの分岐先アドレスが有効
となシ、仮想空間番号の不一致による分岐命令の実行不
能が完全に排除される。
以上の説明により明らか々とおシ本発明によれば、分岐
命令のアドレスと分岐先のアドレスとに各々付加されて
いる仮想空間番号を比較し、これの一致に応じて各アド
レスを分岐ヒストリテーブルとして記憶するものとした
ことによう、仮想空間番号の不一致に基づく分岐命令の
実行不能が完全に排除され、オーバヘッドを生ぜず、分
岐ヒストリテーブルおよび仮想記憶方式を用いる各種の
データ処理装置において顕著々効果が得られる。
命令のアドレスと分岐先のアドレスとに各々付加されて
いる仮想空間番号を比較し、これの一致に応じて各アド
レスを分岐ヒストリテーブルとして記憶するものとした
ことによう、仮想空間番号の不一致に基づく分岐命令の
実行不能が完全に排除され、オーバヘッドを生ぜず、分
岐ヒストリテーブルおよび仮想記憶方式を用いる各種の
データ処理装置において顕著々効果が得られる。
第1図は本発明の実施例を示すブロック図、第2図は仮
想アドレスの構成を示す図である。 14・・・・命令アドレスレジスタ、15・・・・分岐
先アドレスレジスタ、16・・・・仮想空間番号比較器
、17・・・・ANDゲート、18・・・・分岐命令メ
モリ、19◆・・・分岐先メモリ。
想アドレスの構成を示す図である。 14・・・・命令アドレスレジスタ、15・・・・分岐
先アドレスレジスタ、16・・・・仮想空間番号比較器
、17・・・・ANDゲート、18・・・・分岐命令メ
モリ、19◆・・・分岐先メモリ。
Claims (1)
- 分岐命令のアドレスと該分岐命令に応する分岐先のアド
レスとを互いに対応させ分岐ヒストリテーブルとして記
憶するメモリを備え、かつ、仮想記憶方式を用いるデー
タ処理装置において、仮想空間番号を含む前記分岐命令
のアドレスを保持する第1のレジスタと、分岐用の前記
仮想空間番号を含む前記分岐先のアドレスを保持する第
2のレジスタと、前記第1および第2のレジスタにより
各個に保持された各仮想空間番号を比較する比較手段と
、該手段による比較結果が一致したとき前記メモリに対
し分岐ヒストリテーブルの記憶を許容する制御手段とを
設けたことを特徴とする分岐ヒストリテーブル制御方式
。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1194292A JP2508280B2 (ja) | 1989-07-28 | 1989-07-28 | 分岐ヒストリテ―ブル制御方式 |
| US08/102,501 US5345571A (en) | 1989-07-28 | 1993-08-05 | System for controlling branch history table |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1194292A JP2508280B2 (ja) | 1989-07-28 | 1989-07-28 | 分岐ヒストリテ―ブル制御方式 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH0359723A true JPH0359723A (ja) | 1991-03-14 |
| JP2508280B2 JP2508280B2 (ja) | 1996-06-19 |
Family
ID=16322169
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP1194292A Expired - Fee Related JP2508280B2 (ja) | 1989-07-28 | 1989-07-28 | 分岐ヒストリテ―ブル制御方式 |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US5345571A (ja) |
| JP (1) | JP2508280B2 (ja) |
Families Citing this family (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5649097A (en) * | 1991-10-25 | 1997-07-15 | International Business Machines Corporation | Synchronizing a prediction RAM |
| US5434985A (en) * | 1992-08-11 | 1995-07-18 | International Business Machines Corporation | Simultaneous prediction of multiple branches for superscalar processing |
| JP2801135B2 (ja) * | 1993-11-26 | 1998-09-21 | 富士通株式会社 | パイプラインプロセッサの命令読み出し方法及び命令読み出し装置 |
| US5822577A (en) * | 1996-05-01 | 1998-10-13 | International Business Machines Corporation | Context oriented branch history table |
| JP3626609B2 (ja) * | 1998-10-30 | 2005-03-09 | 日本電気株式会社 | マルチプロセッサシステム |
| US9866446B2 (en) * | 2013-08-26 | 2018-01-09 | Akarsh Belagodu | Data retrieval system |
Family Cites Families (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3559183A (en) * | 1968-02-29 | 1971-01-26 | Ibm | Instruction sequence control |
| DE3382350D1 (de) * | 1982-11-17 | 1991-08-29 | Nec Corp | Anordnung zum vorabholen von befehlen mit vorhersage einer verzweigungszieladresse. |
| US4764861A (en) * | 1984-02-08 | 1988-08-16 | Nec Corporation | Instruction fpefetching device with prediction of a branch destination for each branch count instruction |
| US4679141A (en) * | 1985-04-29 | 1987-07-07 | International Business Machines Corporation | Pageable branch history table |
| US4763245A (en) * | 1985-10-30 | 1988-08-09 | International Business Machines Corporation | Branch prediction mechanism in which a branch history table is updated using an operand sensitive branch table |
| DE3752100T2 (de) * | 1986-01-07 | 1997-12-11 | Nippon Electric Co | Befehlsvorabrufgerät mit einer Schaltung zum Prüfen der Vorhersage eines Verzweigungsbefehls vor seiner Ausführung |
| EP0258453B1 (en) * | 1986-02-28 | 1993-05-19 | Nec Corporation | Instruction prefetch control apparatus |
| US5175827A (en) * | 1987-01-22 | 1992-12-29 | Nec Corporation | Branch history table write control system to prevent looping branch instructions from writing more than once into a branch history table |
| JP2722523B2 (ja) * | 1988-09-21 | 1998-03-04 | 日本電気株式会社 | 命令先取り装置 |
-
1989
- 1989-07-28 JP JP1194292A patent/JP2508280B2/ja not_active Expired - Fee Related
-
1993
- 1993-08-05 US US08/102,501 patent/US5345571A/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JP2508280B2 (ja) | 1996-06-19 |
| US5345571A (en) | 1994-09-06 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6865636B1 (en) | Multitasking processor system for monitoring interrupt events | |
| JPH0359723A (ja) | 分岐ヒストリテーブル制御方式 | |
| JPH0650863B2 (ja) | 直接データ転送のためのインターフエース | |
| US4314332A (en) | Memory control system | |
| JPH0444694A (ja) | デュアルポートメモリ装置 | |
| KR970008189B1 (ko) | 메모리 공간 제어방법 및 메모리 장치 | |
| JPH08202646A (ja) | I/oコントローラ | |
| JPH03141444A (ja) | データ処理装置 | |
| KR0127884B1 (ko) | 우편함 인터럽트 발생회로 | |
| JP2552287B2 (ja) | システムバス方式 | |
| JP2547329B2 (ja) | ロツクデータ設定装置 | |
| JPH03109656A (ja) | 多重仮想アドレス空間アクセス方法およびデータ処理装置 | |
| KR970007250B1 (ko) | 네트워크 브리지의 캠장치 | |
| JPS6095667A (ja) | 外部アドレス空間高速アクセス方式 | |
| JPH03127126A (ja) | 情報処理装置 | |
| JPH03269650A (ja) | バッファ記憶装置 | |
| JPH0283623A (ja) | マイクロプロセッサ | |
| JPS60189043A (ja) | プロセツサ | |
| JPH0391835A (ja) | 情報処理装置 | |
| JPH0471048A (ja) | コンピュータシステム | |
| US20020175919A1 (en) | Graphic accelerator | |
| JPS62129884A (ja) | 表示装置 | |
| JPS62260240A (ja) | デ−タ転送装置 | |
| JPH028329B2 (ja) | ||
| JPH02141860A (ja) | データ転送制御装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |