JPH10510076A - 限定ラン分岐予測 - Google Patents
限定ラン分岐予測Info
- Publication number
- JPH10510076A JPH10510076A JP8518876A JP51887696A JPH10510076A JP H10510076 A JPH10510076 A JP H10510076A JP 8518876 A JP8518876 A JP 8518876A JP 51887696 A JP51887696 A JP 51887696A JP H10510076 A JPH10510076 A JP H10510076A
- Authority
- JP
- Japan
- Prior art keywords
- branch
- instruction
- counter
- branch instruction
- condition
- 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
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)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
Claims (1)
- 【特許請求の範囲】 1.コンピュータシステムの実行用命令メモリから、非条件的制御転送命令およ び条件的制御転送命令の両方を有する命令のシーケンスをフェッチングする方法 において、 各クロックサイクルにおいて、プログラムカウンタに保持された命令から始 まる連続アドレスで、命令メモリから1つ以上の命令を読取るステップと、 前記1つ以上の命令からの各制御転送命令を、非条件的命令、条件的かつ取 り出すべきものと知られた命令、取り出すべきではないと知られた命令、または 推論的命令に級別するステップと、 シーケンスにおける各推論的制御転送命令についての制御条件を予測するス テップと、 非条件的命令、取り出すべきものと知られた命令、または取り出すべきもの と予測された命令である第1制御転送命令により指向された次のクロックサイク ルの前記読取りステップのためのプログラムカウンタを変えるステップとを有し 、 上記フェッチング方法は、命令メモリに記憶された条件的分岐を制御する条 件が不変のルーピング挙動を呈する場合には、前記条件をいつでも正確に予測し 、各ループがn回同じくその条件を有し、該条件とは逆の条件が1回続くことを 特徴とするフェッチング方法。 2.前記条件がルーピング挙動を呈する場合には、条件的分岐を制御する条件を いつでも正しく予測し、各ループが1回以上からなり、条件は同じ優勢値であり 、これには逆の条件が1回続き、該条件はループにあり、ループの長さは直前ル ープと同じであることを特徴とする請求の範囲第1項に記載のフェッチング方法 。 3.前記条件がルーピング挙動を呈し、かつ現在ループおよび直前ループの長さ は或る定数より小さい場合には、条件的分岐を制御する条件をいつでも正しく予 測することを特徴とする請求の範囲第2項に記載のフェッチング方法。 4.前記条件がルーピング挙動を呈する場合には、条件的分岐を制御する条件を 正しく予測し、先行ループの長さは前記定数に等しいかこれより大きく、この条 件的分岐は現在ループの終時における条件的分岐ではなく、その条件は該ループ のうちの他の全てのループの条件とは逆であることを特徴とする請求の範囲第3 項に記載のフェッチング方法。 5.2つ以上のフェッチを列に最も新しく保持すべく、知られたまたは予測され た値として分岐条件のための優勢値を確立することを特徴とする請求の範囲第4 項に記載のフェッチング方法。 6.条件値が知られているか予測されている最終フェッチが優勢値とは逆になっ た以降の分岐のフェッチ数のカウントを維持することを特徴とする請求の範囲第 5項に記載のフェッチング方法。 7.条件値が優勢値とは逆であった分岐の最終フェッチでカウンタの値を思い出 すことを特徴とする請求の範囲第6項に記載のフェッチング方法。 8.カウンタの思い出された値とカウンタの現在値とを比較し、現在値が思い出 されたカウントに等しくなければ優勢条件値を予測することを特徴とする請求の 範囲第7項に記載のフェッチング方法。 9.条件値が優勢値とは逆であった分岐の最新フェッチの時点で、カウンタの容 量を超えたフェッチにより終了されたループの長さのためにカウンタがオーバー フローしているか否かを検出しかつ思い出すことを特徴とする請求の範囲第7項 に記載のフェッチング方法。 10.カウンタの思い出された値(オーバーフローを含む)とカウンタの現在値と を比較し、思い出されたカウントがオーバーフローすることなくかつ現在カウン トに等しくなければ優勢条件値を予測することを特徴とする請求の範囲第9項に 記載のフェッチング方法。 11.条件的分岐により第1二進カウンタを維持し、当該カウンタをリフェッチで はなくかつ逆の値をもつことが知られまたは予測されまたはリフェッチでありか つ逆の値をもたないように元々予測されていた分岐のフェッチ時にゼロに初期化 し、かつカウンタがその最大カウントに到達しなければ当該分岐の他の各フェッ チにおいて1だけカウンタを増大させ、カウンタがその最大カウントに到達して いる場合にはカウンタを変化させないことを特徴とする請求の範囲第 10項に記載のフェッチング方法。 12.条件的分岐により、第1二進カウンタと同じ容量の第2二進カウンタを維持 し、第2二進カウンタがゼロを保持する場合およびこの場合にのみ、逆の条件値 を予測し、分岐の各フェッチでこの第2二進カウンタを修正し、この修正は、こ のフェッチが分岐の早期フェッチで正しくない予測により必要とされるリフェッ チであるか否かに基づいて次のように、すなわち、 リフェッチでない場合には、第2二進カウンタをその最大値にセットし、第 1二進カウンタが最大値を保持する場合には、第2二進カウンタがゼロを保持し なければ該第2二進カウンタを減少させ、この場合には、第1二進カウンタの値 を第2二進カウンタにコピーし、 これがリフェッチである場合には、早期フェッチが優勢方向とは逆であると 予測していなければ、早期フェッチの時点で第1二進カウンタにある値を第2二 進カウンタにコピーし、この場合には、第2二進カウンタをその最大値にセット することを特徴とする請求の範囲第11項に記載のフェッチング方法。 13.リフェッチするときには必ず、分岐、優勢予測、およびリフェッチされてい る当該分岐のフェッチの直前に分岐に優勢な第1および第2二進カウンタの値を 回復させることを特徴とする請求の範囲第12項に記載のフェッチング方法。 14.分岐をフェッチングした後、分岐シェルフの分岐の第1および第2二進カウ ンタの更新された優勢予測および値を、当該分岐命令の命令メモリアドレスと一 緒に記憶することを特徴とする請求の範囲第13項に記載のフェッチング方法。 15.優勢予測およびフェッチした分岐の第1および第2二進カウンタの値を、分 岐シェルフから、前記フェッチした分岐を制御する条件後の或る時点で、まさし くこの目的のための命令メモリまたは補助RAMである分岐予測RAMに移動さ せ、任意の分岐の全ての先行フェッチが知られていることを特徴とする請求の範 囲第14項に記載のフェッチング方法。 16.分岐のフェッチング時に、分岐のアドレスを記憶するエントリーの分岐シェ ルフをサーチし、分岐予測RAMを読み取ることにより、優勢予測および当該分 岐の第1および第2二進カウンタの値を決定し、かつ分岐シェルフに見出さ れる最も新しく付加されたマッチングエントリーを用いて、分岐予測RAMから 読取られる値を決定することを特徴とする請求の範囲第15項に記載のフェッチ ング方法。 17.1つ以上のフェッチした分岐の制御条件が正しくなく予測されたことを検出 すると、分岐シェルフから、フェッチした各分岐のエントリーおよびこれらのい かなる分岐よりも新しくフェッチされた全ての分岐を取り出すことを特徴とする 請求の範囲第16項に記載のフェッチング方法。 18.コンピュータシステムの実行用命令メモリから、非条件的分岐命令および条 件的分岐命令の両方を有する命令のシーケンスをフェッチングするコンピュータ システムの作動方法において、 各クロックサイクルにおいて、プログラムカウンタのアドレスで、前記命令 メモリから少なくとも1つの命令を読取るステップと、 前記命令メモリからの各分岐命令を、非条件的命令、条件的かつ取り出すべ きものと知られた命令、取り出すべきではないと知られた命令、または推論的命 令に級別するステップと、 前記制御条件のラン長さより大きい最新のラン長さに等しいラン長さを得る ため、シーケンスにおける各推論的分岐命令についての制御条件を予測するステ ップと、 非条件的命令、取り出すべきものと知られた命令、または取り出すべきもの と予測された命令である第1分岐命令により指向された次のクロックサイクルの 読取りステップのためのプログラムカウンタを変えるステップとを有し、 前記フェッチング方法は、前記条件が不変のルーピング挙動を呈する場合に は、前記命令メモリに記憶された条件的分岐を制御する条件を正確に予測するこ とを特徴とするコンピュータシステムの作動方法。 19.前記予測ステップは回数をカウントすることを含み、条件的分岐命令の制御 条件は第2状態に変化する前の1つの状態に留まって、前記条件的分岐命令のラ ン長さを決定することを特徴とする請求の範囲第18項に記載の作動方法。 20.前記カウンティングサブステップが、所定の定数までカウントアップするこ とを含むことを特徴とする請求の範囲第19項に記載の作動方法。 21.前記予測ステップは、前記条件的分岐命令の現在ランの長さが前記所定の定 数に等しいかこれより大きい場合に、条件的分岐命令が、該条件的分岐命令の少 なくとも2つ以上のフェッチと同じになるように条件的分岐命令を制御する条件 を予測することを特徴とする請求の範囲第20項に記載の作動方法。 22.前記カウンティングサブステップは、前記条件的分岐命令の最終の2つ以上 の連続フェッチについての不変の条件を補完するための知られたまたは予測され た条件をもつ最終フェッチ以降の前記条件命令のフェッチ数をカウントすること を含むことを特徴とする請求の範囲第19項に記載の作動方法。 23.前記予測ステップは、前記条件的分岐命令の最終の2つ以上のフェッチにつ いての不変の条件を補完するための知られたまたは予測された条件をもつ最終フ ェッチ以降の前記条件命令のフェッチ数を記憶することを含むことを特徴とする 請求の範囲第22項に記載の作動方法。 24.前記予測ステップは、先行ラン長さと前記条件的分岐命令のフェッチの現在 数とを比較すること、および前記先行ラン長さがフェッチの前記現在数に等しく なければ、前記制御条件が前記条件的分岐命令の最終の2つ以上のフェッチと同 じであると仮定することを含むことを特徴とする請求の範囲第23項に記載の作 動方法。 25.前記予測ステップは、前記先行ラン長さが所定の定数に等しいかこれより大 きいかを決定することを含むことを特徴とする請求の範囲第24項に記載の作動 方法。 26.前記仮定サブステップは、前記先行ラン長さが前記所定の定数より小さくか つフェッチの前記現在数に等しくなければ、前記制御条件が前記条件的分岐命令 の最終の2つ以上のフェッチと同じであると仮定することを特徴とする請求の範 囲第25項に記載の作動方法。 27.前記予測ステップは、 第1二進カウンタと各条件的分岐命令とを関連付けること、 関連付けられたカウンタを、前記分岐命令が該分岐命令のリフェッチではな くかつ前記分岐命令の直前フェッチの制御条件を補完する制御条件をもつことが 知られているか予測されている場合、または前記分岐命令が該分岐命令のリ フェッチでありかつ前記分岐命令の直前フェッチの制御条件と同じである制御条 件をもつことが予測されている場合に、条件的分岐命令のフェッチ時に初期化す ること、および、 前記カウンタが所定の最大カウントに到達していなければ、前記カウンタを 、前記分岐命令の各連続フェッチで1つだけ増大させることを含むことを特徴と する請求の範囲第18項に記載の作動方法。 28.前記予測ステップが更に、 第2二進カウンタと各条件的分岐命令とを関連付けることを含み、前記第2 カウンタは前記第1二進カウンタと同じ最大カウントを行い、 前記第2カウンタがゼロカウントを保持する場合およびこの場合にのみ、関 連付けられた分岐命令の前記制御条件が補完するように予測すること、および、 前記フェッチが、前記分岐命令の早期フェッチでの正しくない予測により必 要とされるリフェッチであるか否かに応答して、前記分岐命令の各フェッチで前 記第2二進カウンタを修正することを含むことを特徴とする請求の範囲第27項 に記載の作動方法。 29.前記フェッチが前記分岐命令のリフェッチではなく、前記第2二進カウンタ の修正サブステップが更に、 第1二進カウンタが前記最大カウントを保持する場合には、前記第2二進カ ウンタを前記最大カウントにセットすること、 第2二進カウンタがゼロカウントを保持しなければ、第2二進カウンタを1 だけ減少させること、 前記第2二進カウンタがゼロカウントを保持する場合には、第1二進カウン タのカウントを前記第2二進カウンタにコピーすることを含むことを特徴とする 請求の範囲第28項に記載の作動方法。 30.前記フェッチが前記分岐命令のリフェッチである場合には、前記第2二進カ ウンタの修正サブステップが更に、 前記早期フェッチの前記制御条件が、前記条件的分岐命令の最終の2つ以上 のフェッチについて不変となるように補完されることを予測していなければ、早 期フェッチの時点で、前記第1二進カウンタを第2二進カウンタにコピーす ること、および、 前記早期フェッチの前記制御条件が、前記条件的分岐命令の最終の2つ以上 のフェッチについて不変となるように補完されることを予測している場合には、 前記第2二進カウンタを前記最大カウントにセットすることを含むことを特徴と する請求の範囲第28項に記載の作動方法。 31.前記予測ステップは、 リフェッチされている前記分岐命令のフェッチの直前の前記分岐命令につい ての前記第1および第2二進カウンタの最終の2つ以上のフェッチおよびカウン トについて不変の前記分岐命令の前記制御条件を回復させることを含むことを特 徴とする請求の範囲第30項に記載の作動方法。 32.前記予測ステップは、 条件的分岐命令の最終の2つ以上のフェッチ、前記分岐命令についての前記 第1および第2二進カウンタ、および前記分岐命令の各フェッチにおける前記分 岐命令の命令メモリのアドレスについて不変の前記分岐命令の前記制御条件を記 憶することを含むことを特徴とする請求の範囲第13項に記載の作動方法。 33.コンピュータの条件的分岐命令の方向を予測する方法において、 所定限度までの前記分岐命令の第1ラン長さを決定するステップと、 前記条件的分岐命令の次のラン長さをカウントするステップと、 前記次のラン長さが前記第1ラン長さに等しくなるかこれを超える前に終了 しなければ、前記次のラン長さが前記第1ラン長さに等しいと仮定するステップ とを有し、 正しく予測された条件的分岐命令の入力が高められることを特徴とする方法 。 34.前記次のラン長さが前記第1ラン長さを超える場合に、前記次のラン長さが 無制限に連続することを特徴とする請求の範囲第33項に記載の方法。 35.前記第1ラン長さに等しくなる前に前記分岐命令の次のラン長さが終了する 場合に、前記次のラン長さを決定するステップと、 前記次のランに続く前記条件的分岐命令のラン長さをカウントするステップ と、 前記次のランに続く前記ランが、前記次のラン長さに等しくなるかこれを超 える前に終了しなければ、前記次のランに続く前記ランが、前記次のラン長さに 等しいと仮定するステップとを更に有することを特徴とする請求の範囲第34項 に記載の方法。 36.コンピュータシステムの分岐命令を制御する条件の結果を予測する方法にお いて、 前記制御条件の回数が第2状態に変化する前の第1状態にあることを決定す るステップと、 制御条件が、第1状態において前記第2状態に変化する前と同じ回数に留ま ることを予測するステップとを有することを特徴とする方法。 37.前記決定ステップおよび予測ステップが、各条件的分岐命令に対して遂行さ れることを特徴とする請求の範囲第36項に記載の方法。 38.前記予測ステップに従って前記分岐命令をするステップを更に有することを 特徴とする請求の範囲第36項に記載の方法。 39.前記分岐命令をするステップが、 前記制御条件の前記第1状態に従って前記分岐命令を前記回数行なうこと、 および、 次に、前記制御条件の前記第2状態に従って前記分岐命令を行なうことを有 することを特徴とする請求の範囲第38項に記載の方法。 40.前記決定ステップでは、前記回数が制限されることを特徴とする請求の範囲 第39項に記載の方法。 41.前記決定ステップが、 前記条件的分岐命令の現在ランの長さの第1カウントを維持すること、およ び、 前記第1カウントおよび前記条件的分岐命令の最も新しく完了したラン長さ に応答する第2カウントを維持することを含むことを特徴とする請求の範囲第4 0項に記載の方法。 42.前記第1カウントは、前記条件的分岐命令が正しく行なわれる度毎に前記第 1カウントを増大させることにより維持されることを特徴とする請求の範囲第4 1項に記載の方法。 43.前記第2カウントは、前記条件的分岐命令が正しく行なわれる度毎に前記最 も新しく完了したラン長さのカウントを減少させることにより維持されることを 特徴とする請求の範囲第41項に記載の方法。 44.前記決定ステップが、 前記条件的分岐命令が正しく行なわれる度毎に前記第1カウントを増大させ ることにより、前記条件的分岐命令の現在ランの長さの第1カウントを維持する こと、 前記条件的分岐命令が正しく行なわれる度毎に前記最も新しく完了したラン 長さのカウントを減少させることにより、前記第1カウントおよび前記条件的分 岐命令の最も新しく完了したラン長さに応答する第2カウントを維持することを 有することを特徴とする請求の範囲第40項に記載の方法。 45.前記予測ステップは、前記制御条件が前記制限回数を超えて前記第1状態に 留まる場合に、前記制御条件が前記第1状態に留まることの予測を有することを 特徴とする請求の範囲第40項に記載の方法。 46.前記予測ステップは更に、 前記行なわれた分岐命令が誤って予測されるときに前記現在ランの長さが所 定限度を超える場合に前記第1カウントを再開すること、および 前記条件的分岐命令の前記最も新しく完了したラン長さについて、前記第2 カウントを前記従前の第1カウントにセットすることを有することを特徴とする 請求の範囲第44項に記載の方法。 47.前記現在ランの長さが前記最も新しく完了したラン長さより短い場合に、前 記条件的分岐命令の前記最も新しく完了したラン長さについて、前記第1カウン トから前記第2カウントをコピーすること、および、 前記第1カウントを再開することを更に有することを特徴とする請求の範囲 第44項に記載の方法。
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US34851994A | 1994-12-02 | 1994-12-02 | |
| US08/348,519 | 1994-12-02 | ||
| PCT/US1995/015043 WO1996017295A1 (en) | 1994-12-02 | 1995-11-20 | Limited run branch prediction |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH10510076A true JPH10510076A (ja) | 1998-09-29 |
| JP3725547B2 JP3725547B2 (ja) | 2005-12-14 |
Family
ID=23368385
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP51887696A Expired - Lifetime JP3725547B2 (ja) | 1994-12-02 | 1995-11-20 | 限定ラン分岐予測 |
Country Status (7)
| Country | Link |
|---|---|
| US (1) | US5926634A (ja) |
| JP (1) | JP3725547B2 (ja) |
| KR (1) | KR100371686B1 (ja) |
| CN (3) | CN100507834C (ja) |
| GB (1) | GB2309806B (ja) |
| TW (1) | TW419630B (ja) |
| WO (1) | WO1996017295A1 (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6754813B1 (en) | 1999-08-24 | 2004-06-22 | Fujitsu Limited | Apparatus and method of processing information for suppression of branch prediction |
| JP2007527050A (ja) * | 2003-07-09 | 2007-09-20 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 分岐予測の方法およびシステム |
Families Citing this family (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6438682B1 (en) * | 1998-10-12 | 2002-08-20 | Intel Corporation | Method and apparatus for predicting loop exit branches |
| HK1046049A1 (zh) * | 1999-09-01 | 2002-12-20 | Intel Corporation | 用於多线程处理器的分支指令 |
| US6823446B1 (en) * | 2000-04-13 | 2004-11-23 | International Business Machines Corporation | Apparatus and method for performing branch predictions using dual branch history tables and for updating such branch history tables |
| US7107438B2 (en) * | 2003-02-04 | 2006-09-12 | Via Technologies, Inc. | Pipelined microprocessor, apparatus, and method for performing early correction of conditional branch instruction mispredictions |
| US8144156B1 (en) | 2003-12-31 | 2012-03-27 | Zii Labs Inc. Ltd. | Sequencer with async SIMD array |
| JP2007109116A (ja) * | 2005-10-17 | 2007-04-26 | Fukuoka Pref Gov Sangyo Kagaku Gijutsu Shinko Zaidan | 推定装置、テーブル管理装置、選択装置、テーブル管理方法、そのテーブル管理方法をコンピュータに実現させるプログラム、及び、そのプログラムを記録する記憶媒体 |
| US8640005B2 (en) | 2010-05-21 | 2014-01-28 | Intel Corporation | Method and apparatus for using cache memory in a system that supports a low power state |
| US10007524B2 (en) * | 2014-11-14 | 2018-06-26 | Cavium, Inc. | Managing history information for branch prediction |
| EP3933597A1 (en) * | 2020-06-30 | 2022-01-05 | Microsoft Technology Licensing, LLC | Code flow trace compression employing branch prediction for implicit code flow data encoding in a processor |
| US20260086812A1 (en) * | 2024-09-23 | 2026-03-26 | Apple Inc. | Conditional Instruction Prediction With Multiple Bias Tables |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4764861A (en) * | 1984-02-08 | 1988-08-16 | Nec Corporation | Instruction fpefetching device with prediction of a branch destination for each branch count instruction |
| US5440704A (en) * | 1986-08-26 | 1995-08-08 | Mitsubishi Denki Kabushiki Kaisha | Data processor having branch predicting function |
| GB8728493D0 (en) * | 1987-12-05 | 1988-01-13 | Int Computers Ltd | Jump prediction |
| DE69130138T2 (de) * | 1990-06-29 | 1999-05-06 | Digital Equipment Corp., Maynard, Mass. | Sprungvorhersageeinheit für hochleistungsfähigen Prozessor |
| US5367703A (en) * | 1993-01-08 | 1994-11-22 | International Business Machines Corporation | Method and system for enhanced branch history prediction accuracy in a superscalar processor system |
| TW261676B (ja) * | 1993-11-02 | 1995-11-01 | Motorola Inc |
-
1995
- 1995-11-20 CN CNB2006100755280A patent/CN100507834C/zh not_active Expired - Fee Related
- 1995-11-20 CN CNB2003101242940A patent/CN1306394C/zh not_active Expired - Fee Related
- 1995-11-20 GB GB9710868A patent/GB2309806B/en not_active Expired - Fee Related
- 1995-11-20 WO PCT/US1995/015043 patent/WO1996017295A1/en not_active Ceased
- 1995-11-20 CN CNB951965549A patent/CN1159648C/zh not_active Expired - Fee Related
- 1995-11-20 JP JP51887696A patent/JP3725547B2/ja not_active Expired - Lifetime
- 1995-12-02 KR KR1019950046241A patent/KR100371686B1/ko not_active Expired - Lifetime
-
1996
- 1996-02-06 TW TW085101434A patent/TW419630B/zh not_active IP Right Cessation
- 1996-10-11 US US08/731,367 patent/US5926634A/en not_active Expired - Lifetime
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6754813B1 (en) | 1999-08-24 | 2004-06-22 | Fujitsu Limited | Apparatus and method of processing information for suppression of branch prediction |
| JP2007527050A (ja) * | 2003-07-09 | 2007-09-20 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 分岐予測の方法およびシステム |
Also Published As
| Publication number | Publication date |
|---|---|
| JP3725547B2 (ja) | 2005-12-14 |
| CN1306394C (zh) | 2007-03-21 |
| GB2309806B (en) | 2000-02-23 |
| GB2309806A (en) | 1997-08-06 |
| TW419630B (en) | 2001-01-21 |
| CN100507834C (zh) | 2009-07-01 |
| CN1159648C (zh) | 2004-07-28 |
| KR960025144A (ko) | 1996-07-20 |
| GB9710868D0 (en) | 1997-07-23 |
| CN1619488A (zh) | 2005-05-25 |
| CN1168727A (zh) | 1997-12-24 |
| KR100371686B1 (ko) | 2003-03-31 |
| US5926634A (en) | 1999-07-20 |
| CN1881177A (zh) | 2006-12-20 |
| WO1996017295A1 (en) | 1996-06-06 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3798404B2 (ja) | 2レベルの分岐予測キャッシュによる分岐予測 | |
| US5628024A (en) | Computer architecture capable of concurrent issuance and execution of general purpose multiple instructions | |
| US5072364A (en) | Method and apparatus for recovering from an incorrect branch prediction in a processor that executes a family of instructions in parallel | |
| US11442727B2 (en) | Controlling prediction functional blocks used by a branch predictor in a processor | |
| US8078852B2 (en) | Predictors with adaptive prediction threshold | |
| US6081887A (en) | System for passing an index value with each prediction in forward direction to enable truth predictor to associate truth value with particular branch instruction | |
| US10664280B2 (en) | Fetch ahead branch target buffer | |
| JP2001166935A (ja) | プロセッサにおける分岐予測方法及びプロセッサ | |
| JPH0334024A (ja) | 分岐予測の方法とそのための装置 | |
| CN104049938A (zh) | 间接分支预测 | |
| US6397326B1 (en) | Method and circuit for preloading prediction circuits in microprocessors | |
| KR20230084140A (ko) | 제어 독립성 기술을 채용한 프로세서에서 처리되는 명령어에 대한 추론성 예측을 행하는 데 사용된 추론성 이력의 복원 | |
| JPH10510076A (ja) | 限定ラン分岐予測 | |
| KR20220017403A (ko) | 프로세서의 추론적 예측 실패 복구에서 로드 기반 제어 독립적 (ci) 명령어의 재생 제한 | |
| US5822577A (en) | Context oriented branch history table | |
| US7765387B2 (en) | Program counter control method and processor thereof for controlling simultaneous execution of a plurality of instructions including branch instructions using a branch prediction mechanism and a delay instruction for branching | |
| US7603545B2 (en) | Instruction control method and processor to process instructions by out-of-order processing using delay instructions for branching | |
| US6738897B1 (en) | Incorporating local branch history when predicting multiple conditional branch outcomes | |
| KR100305487B1 (ko) | 특정유형의인스트럭션을동시에처리할수있는방법및데이터프로세싱시스템 | |
| KR20230058123A (ko) | 반복된 페칭을 줄이기 위해 프로세서의 명령어 파이프라인에서 반복 패턴을 검출하는 방법 | |
| US7900027B2 (en) | Scalable link stack control method with full support for speculative operations | |
| US7013366B2 (en) | Parallel search technique for store operations | |
| CN113918225A (zh) | 指令预测方法、指令数据处理装置、处理器以及存储介质 | |
| US6948055B1 (en) | Accuracy of multiple branch prediction schemes | |
| EP0666538A2 (en) | Data processor with branch target address cache and method of operation |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040518 |
|
| A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20040818 |
|
| A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20041004 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041118 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050118 |
|
| A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20050418 |
|
| A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20050606 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050719 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050906 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050922 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080930 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090930 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100930 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100930 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110930 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120930 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130930 Year of fee payment: 8 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| EXPY | Cancellation because of completion of term |