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
Application number
JP1194292A
Other languages
English (en)
Other versions
JP2508280B2 (ja
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 JP1194292A priority Critical patent/JP2508280B2/ja
Publication of JPH0359723A publication Critical patent/JPH0359723A/ja
Priority to US08/102,501 priority patent/US5345571A/en
Application granted granted Critical
Publication of JP2508280B2 publication Critical patent/JP2508280B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3842Speculative instruction execution
    • G06F9/3844Speculative instruction execution using dynamic branch prediction, e.g. using branch history tables
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/65Details of virtual memory and virtual address translation
    • G06F2212/655Same 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
、現在ば各種のデータ処理装置において分岐ヒストリテ
ーブルが採用されている。
また、仮想記憶方式を用いるデータ処理装置においては
、第2図に示すとおシ、仮想空間番号2)よび相対仮想
アドレス3によう構成し、仮想空間番号2に上位ビット
を、相対仮想アドレス3に下位ビットを充当しておシ、
分岐ヒストリテーブルへ相対仮想アドレス3に相当する
分岐命令のアドレスと、これに応する同様な分岐先のア
ドレスとのみを記憶させるものとなっている。
〔発明が解決しようとする課題〕
しかし、分岐命令と分岐先との各アドレスに付加されて
いる仮想空間番号が異なれば、各アドレスの仮想空間も
各個別のものとなるため、O8の処理中に以前存在した
仮想空間が消滅した場合等では、分岐ヒストリテーブル
中に存在するアドレスを実行しようとしても、これの仮
想空間が消滅していれば、これによる分岐命令が実行不
能となり1オーバヘツドが発生する欠点を生じている。
〔課題を解決するための手段〕
前述の課題を解決するため、本発明はつぎの手段により
構成するものとなっている。
すなわち、上述の分岐ヒストリテーブルを記憶するメモ
リを備え、かつ、仮想記憶方式を用いるデータ処理装置
において、仮想空間番号を含む分岐命令のアドレスを保
持する第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により各個
に保持されるものと々っている。
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により、互
いに対応して記憶させる。
また、にのゲート17の出力は、インバータ(以下、I
 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がオン状態となる。
ついで、ADC13から命令読出アドレスRAが与えら
れると、これがIAR14により保持されたうえ、これ
の下位ビットがIAA18およびDAA19の読出アド
レスとして与えられるため、このアドレスから各々の内
容が読出され、IAA18の内容は命令アドレス比較器
(以下、IAC)23へ与えられる一方、DAA19か
らの分岐先アドレスは予測分岐先アドレスレジスタ(以
下、PDAR)24によう保持され、これがADC13
へ送出される。
ただし、このときIAC23がIAR14の上位ビット
と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からの分岐先アドレスが有効
となシ、仮想空間番号の不一致による分岐命令の実行不
能が完全に排除される。
〔発明の効果〕
以上の説明により明らか々とおシ本発明によれば、分岐
命令のアドレスと分岐先のアドレスとに各々付加されて
いる仮想空間番号を比較し、これの一致に応じて各アド
レスを分岐ヒストリテーブルとして記憶するものとした
ことによう、仮想空間番号の不一致に基づく分岐命令の
実行不能が完全に排除され、オーバヘッドを生ぜず、分
岐ヒストリテーブルおよび仮想記憶方式を用いる各種の
データ処理装置において顕著々効果が得られる。
【図面の簡単な説明】
第1図は本発明の実施例を示すブロック図、第2図は仮
想アドレスの構成を示す図である。 14・・・・命令アドレスレジスタ、15・・・・分岐
先アドレスレジスタ、16・・・・仮想空間番号比較器
、17・・・・ANDゲート、18・・・・分岐命令メ
モリ、19◆・・・分岐先メモリ。

Claims (1)

    【特許請求の範囲】
  1. 分岐命令のアドレスと該分岐命令に応する分岐先のアド
    レスとを互いに対応させ分岐ヒストリテーブルとして記
    憶するメモリを備え、かつ、仮想記憶方式を用いるデー
    タ処理装置において、仮想空間番号を含む前記分岐命令
    のアドレスを保持する第1のレジスタと、分岐用の前記
    仮想空間番号を含む前記分岐先のアドレスを保持する第
    2のレジスタと、前記第1および第2のレジスタにより
    各個に保持された各仮想空間番号を比較する比較手段と
    、該手段による比較結果が一致したとき前記メモリに対
    し分岐ヒストリテーブルの記憶を許容する制御手段とを
    設けたことを特徴とする分岐ヒストリテーブル制御方式
JP1194292A 1989-07-28 1989-07-28 分岐ヒストリテ―ブル制御方式 Expired - Fee Related JP2508280B2 (ja)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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 日本電気株式会社 命令先取り装置

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