TW380238B - Information processing apparatus which accurately predicts whether a branch is taken for a conditional branch instruction, using small-scale hardware - Google Patents
Information processing apparatus which accurately predicts whether a branch is taken for a conditional branch instruction, using small-scale hardware Download PDFInfo
- Publication number
- TW380238B TW380238B TW086118444A TW86118444A TW380238B TW 380238 B TW380238 B TW 380238B TW 086118444 A TW086118444 A TW 086118444A TW 86118444 A TW86118444 A TW 86118444A TW 380238 B TW380238 B TW 380238B
- Authority
- TW
- Taiwan
- Prior art keywords
- branch
- command
- aforementioned
- information
- history information
- Prior art date
Links
- 230000010365 information processing Effects 0.000 title claims description 66
- 230000002079 cooperative effect Effects 0.000 claims description 13
- 230000008859 change Effects 0.000 claims description 10
- 238000012545 processing Methods 0.000 claims description 7
- 230000009471 action Effects 0.000 claims description 3
- 230000001276 controlling effect Effects 0.000 claims 1
- 238000012856 packing Methods 0.000 claims 1
- 238000012986 modification Methods 0.000 description 21
- 230000004048 modification Effects 0.000 description 21
- 238000010586 diagram Methods 0.000 description 15
- 238000013508 migration Methods 0.000 description 13
- 230000005012 migration Effects 0.000 description 13
- 238000004422 calculation algorithm Methods 0.000 description 12
- 230000007704 transition Effects 0.000 description 11
- 230000000875 corresponding effect Effects 0.000 description 6
- 239000000470 constituent Substances 0.000 description 5
- 238000009434 installation Methods 0.000 description 5
- 238000000034 method Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 229910052709 silver Inorganic materials 0.000 description 2
- 239000004332 silver Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- PEDCQBHIVMGVHV-UHFFFAOYSA-N Glycerine Chemical compound OCC(O)CO PEDCQBHIVMGVHV-UHFFFAOYSA-N 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 239000002023 wood Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本發明所屬之技術分野 本發明係有關於微處理機等之資訊處理裝置,尤其, 有關於分支預測之改良技術。 習知技藝 於採用管路線(流水線)構造之微處理機等之資訊處理 裝置。由於分支命令(指令)之執行而使其控制之流向=分 支之場合,欲抑制其所產生之流水線之混亂的方法之一, 乃有分支預測。欲進行有高成功率之分支預測就需要在 每附帶條件分支命令(以下,簡稱4「分支命令」),預測 分支之成立或否。因此,在其方法上,乃考慮設置對應於 程式中之各分支命令之集中分支制資訊的分支預測表格 (圖表)。但是,由於在資訊處理裝置之内部,予以具有分 支預測表格之故,乃使其硬體增大。 因此,在資訊疼理裝置之内部,非固定性保持分支預 測資訊,而備有於分支命令本體,因之,乃提案可將在資 訊處理裝置所必要之硬體,抑制為最小限度之分支預測方 法(例如,在特開昭63-75934所開示之資訊處理裝置)。 經濟部中央標隼局員工消費合作社印裝 第1圖係表示,上述習知的資訊處理裝置用之分支命 令的格式。在該習知的資訊處理裝置,在分支命令40使其 具有1位元之分支預測資訊4〇b,而於分支命令4〇之解讀時 ,就依照該分支預測資訊40b,而從記憶體先取得其次應 執行之命令。然後,當分支命令40之執行終了時,即,予 以照5 (對證)其執行結果與分支預測資訊40b,若於預測 失敗之場合,就予以更新格納在記憶體之該分支命令40之 本紙張尺度適用中國國家梯準(CNS ) A4規格(210X 297公釐) -4-
i、發明説明(2 ) ' 經濟部中央標準局員工消费合作社印製 分支預測資訊40b。依此而迴避在資訊處理裝置之内部設 置分支預測電纜。 但是’上述習知的資訊處理裝置,由於抑制在資訊處 理裝置上所必要之硬體規模,且分支預測之成功率較低之 故,乃隨著分支預測失敗之處分會頻繁產生之課題存在。 即,上述習知的資訊處理裝置,欲依據表示瞬前之執 行結果的1位元之分支預測資訊4〇b,而先取得其次之命令 時,例如,於分支之成立與不成立相互反復之場合,即, 所有之預測就會偏差。因此,每於執行如是之分支命令時 ,務必將先取得之命令作成無效化,乃妨礙資訊處理裝置 之執行的高速化。 本發明之目的 本發明係鑑於上述課題而進行者。係欲提供以小規模 之硬體就能予以實現,並且,能進行高成功(命中)率之分 支預測之資訊處理裝置,為目的。 本發明係欲提將上述資訊處理裝置,欲以軟體予以實 現之程式,及含有為上述資訊處理裝置之特有的分支命令 之命令群,予以記錄之記錄媒體,為第2目的。 解決課題之本發明裳置 欲達成上述目的,本發明有關之資訊處理裝置,乃是 將命令逐次予以執行之資訊處理裝置,其具㈣含有欲預 測分支之成立與否的分支預測資訊,與表示過去之分支結 果之資訊履歷資訊的分支命令之命令群,事 記憶裝置,欲解讀所讀出之命令是否為前述分令之命 本紙浪尺度制彳’關家鮮(210X 297公釐Γ— - Μ ^----—t------ir------線 If (請先閱讀背面之注意事項再填寫本頁) 經濟部中央標準局員工消費合作社印製 Α7 Β7 五、發明説明(3 ) 令解讀裝置。當所解讀之前述命令為分支命令之場合,即 ,控制前述命令查詢裝置,使其依據該分支命令之分支預 測 > 訊,而讀出其次應執行之命令的命令查詢控制裝置, 欲執行所解讀之前述分支命令之執行裝置,以前述分支命 令被執行之際的分支結果,及含在其分支命令之分支履歷 資訊為其根基,而生成新分支預測資訊之分支預測資訊生 成裝置,以前述分支命令被執行之際的分支結果,及含在 其分支命令之分支履歷資訊為其根基,而生成新分支履歷 資訊之分支履歷資訊生成裝置,以及將格納在前述記憶裝 置之前述分支命令之分支預測資訊及前述分支履歷資訊, 更新為依前述分支預測資訊生成裝置所生成之分支預測資 訊,及依前述分支履歷資訊生成裝置所生成之分支履歷資 訊之分支命令更新裝置,為特徵。 ^即,於本發明有關之資訊處理裝置,在分支命令之中 非僅為分支預測資訊,而亦含有表示過去之分支結果的分 支履歷資訊。而於分支命令被執行之場合,即,非僅為其 執行結果,亦經考慮含在當該分支命令之分支履歷資訊, 而予以更新當該分支命令之分支預測資訊,及分支履歷資 .訊由於此,非僅為瞬前之1次之執行結果,而亦進行以 其以刖之執行結果為根基之命令之先取’乃能實現此習知 為而成功(命中)率之分支預測。
J 該等分支預測資訊及分支履歷資訊,並非作成分支預 測表格而固定性放置在資訊處理裝置,而放置在格納於記 憶聚置之分支命令本體之故,欲實現該分支預測上,於資 本..氏張尺度適用中關γ縣·( eNS )从規格(训公缝) : : I ^ ,1τ-----!*· (請先閲讀背面之注意事項再填寫本頁) -6- A7 B7 經濟部中央標準局員工消費合作社印製 五、發明説明(4 訊處理裝置所必要之硬體規模,可為較小。於此,前述分 支履歷資訊,亦能作為對於具有該分支履歷資訊之分支命 令的過去之多數之分支結果,有關之概要亦可以。 由於此’分支履歷資訊,以較少之位元數而更能予以 反應過去之分支結果,同時,亦能防止因瞬前之例外性之 分支結果的影響之分支預測之混亂(成功率之下降),乃能 進行亦更考慮過去之分支結果之大局性的分支預測。 例外,前述分支履歷資訊,能對於前述分支命令於過 去’分支所成立之頻繁度為「極多」、「多」、「少」、 「極少」中之任一項,予以表示,而前述分支履歷資訊生 成裝置,在含於前述分支命令之分支履歷資訊,表示「極 少」、「少」、「多」之任一項,並且,前述分支結果為 「成立j之場合,即,分別生成表示「少」、「多」、「 極多」之新分支履歷資訊,而含在前述分支命令之分支履 歷資訊’乃表*「極多」、「多」、「少」之任一,並且 ’於前述分支結果為「不成立」之場合,gp,生成分別表 不「多」、「少」、「極少」之分支履歷資訊。由於此, 例如’僅依2位元之分支履歷資訊,亦有可能表示對於3次 以上之勿支結果的統計性概要。 又’前述預測資訊更新裝置,能僅於前述分支履歷資 訊表示「多」,並且,前述分支結果為「成立」之場合, 生成表示「成立」的新分支預測資訊,而亦能 : 支履歷資訊表示「少」’並且,前述分支結果 」之場合’生成表示「不成立」之新分支預測資訊。 木紙張尺度適财關( CNsTA4ii7Ti〇x 297^t' Ί ^----—裝------訂------银 (請先閱讀背面之注意事項再填寫本頁) -7- A7 A7 經濟部中央榡準局員工消費合作社印製 ^ —--_______B7 之、發明説明(5 ) '-- 由於此,在分支結果之履歷與分支預測資訊之關係上 '會進行具有滞後現象之分支預測之故,其比僅以1位元 之刀支預測資訊為根基之分支預測之場合,不但,預測成 功率較南,又能防止由於以短週期反覆分支之成立,與不 成立而起的分支預測之混亂。 又刖述分支命令更新裝置,會生成含有依前述分支 預測資訊生成裳置,所生成之分支預測資訊,及依前述分 2屣歷貝訊生成裝置,所生成之分支履歷資訊之新分支命 7 ’並將該分支命令填寫在前述記憶裝置之該當處所者, 而前述該當處所,亦能以生成前述新分支命令之原有之分 支命令所被記憶之位置,作為該處所。 由於此,分支命令之分支預測資訊及分支履歷資訊, =以每其分支命令(與除去該等分支預測資訊及分支履歷 —貝訊之外的分支命令之其他位元一起),予以更新因之 若與將成為對象之分支命令,從記憶裝置予以讀出並予 變更之後,再予重寫之程序互相比較,即,其得以較短程 序予以更新分支預測資訊及分支履歷資訊。 又,刖述s己憶裝置含有,欲格納前述命令群之主記憶 部,對於格納在前述主記憶部之命令群的—部分的複製, 予以。己隐之現值§己憶部,於前述現值記憶部之内容被換寫 (改寫)之場合’而欲將其變更亦反應於前述主記憶部之内 容上之現值控制裝置。前述命令查詢裝置,能乃從前述現 值5己憶部讀出前述命令,而前述分支命令更新裝置,亦能 予以更新記憶在前述現值記憶部之分支命令的分支預測資 本纸張尺度適用中國國家標準(CNS) A4規格(21{}>< 297公楚) 1 · —裝------訂------银i (請先閱讀背面之注意事項再填寫本頁) 經濟部中央標準局員工消費合作社印^ A7 -------- B7 五、發明説明(6 ) 一 ~ - 訊’及分支履歷資訊。由於此,本發明有關之資訊處理裝 置,僅以更新能以高速存取之現值記憶體上的分支命令即 可’因之’執行速度就較快速。 又,前述預測資訊更新裝置,能僅於前述分支履歷資 訊表示「極多」,並且,前述分支結果為「成立」之場合 ,生成表示「成立」之新分支預測資訊。而前述履歷資訊 表示「極少」,並且,僅於前述分支結果為「不成立」之 場合,亦能生成表示「不成立」之新分支預測資訊。由於 此’上述滞後現象之程度會更加強之故,乃可實現對欲加 強抑制分支預測之混亂之系統的程式,為適宜之資訊處理 裝置。 又,前述分支履歷資訊,能表示對於前述分支命令, 於過去分支所成立之頻繁度為「多」或「少」。或前述分 支履歷資訊生成裝置,能僅於含在前述分支命令之分支履 歷資訊表示「少」’並且,前述分支結果為「成立」之場 合,生成表示「多」之新分支履歷資訊,而含在前述分支 命令之分支履歷資訊表示「多」,並且,僅於前述分支結 果為「不成立」之場合,生成表示「少」之新分支履歷資 訊。或前述預測資訊更新裝置,能僅於前述分支履歷資訊 表示「多」,並且,前述分支結果為「成立」之場合,生 成表示「成立」之新分支預測資訊,而亦能僅於前述分支 履歷資訊表示「少」,並且,前述分支結果為「不成立」 之場合,生成表示「不成立」之新分支預測資訊。 由於此,上述滯後現象之程度將更減弱之故,對於程 本紙張尺度適用中國國家標準(CNS ) Α4規格(210Χ 297公釐) 1 t· 1¾衣------,1T------^ I (請先閱讀背面之注意事項再填寫本頁) -9- 經濟部中央標準局員工消費合作社印製 A7 —~------ - 一 B7 五、發明説明(7 ) — 式之執行結果敏感之分支預測’即’動態分支預測成為可 月b之同時’分支履歷資訊得以較少之位元數就可以,因之 ,於定義命令置位之場合的自由度將增大。 又’前述分支履歷資訊,亦能表示對於具有其分支履 歷資訊之分支命令,於過去之每一分支之分支結果,例如 ,前述分支履歷資訊為,表示瞬前及第2次前之分支結果 的2位元,而前述分支履歷資訊生成裝置,亦能使用前述 分支命令經執行之際的分支結果,予以生成新分支履歷資 訊。由於此,其並非為過去之多數的分支結果之概要,而 能以最新的相連續之各個分支結果,為根基而進行分支預 測之故,乃能實現亦考慮例外性之分支結果,而進行緻密 之分支預測之資訊處理裝置。 又,本發明不僅以硬體能予實現,並且,依軟體亦能 實現之」。即,能作分支預測,而將命令先讀取之微處理機 之動作,作模擬的程式予以記錄之記錄媒體。其係將前述 程式以從含有要預測分支之成立或否之分支預測資訊及 表不對於過去之分支結果之資訊的分支履歷資訊之分支命 令的命令群,予以事先記憶的記憶裝置,讀取其次應執行 之命令的命令查詢步驟、解讀所讀出之命令為前述分支命 令或否之命令解讀步驟,當解讀前述命令為分支命令之場 合,即,以該分支命令之分支預測資訊為其根基,而讀出 其次應執行之命令之分支預測步驟,欲執行所解讀之前述 分支命令之執行步驟,依據前述分支命令經執行之際的分 支結果,及含在該分支命令之分支履歷資訊,而生成新分 本紙張尺度適财關料(( 210x797^17 Γ „~ I--—装-- (請先閱讀背面之注意Ϋ項再填寫本頁}
、1T .1 線1 -10- 經濟部中央標準局負工消费合作社印製 A7 B7 五、發明説明(8 ) 支預測資訊之分支預測資訊生成步驟,以前述分支命令經 執行之際的分支結果,及含在該分支命令之分支履歷資訊 為其根基’而生成新分支履歷資訊之分支履歷資訊生成步 驟,以及將格納在前述記憶裝置之前述分支命令的分支預 測資訊與分支履歷資訊,更新為依前述分支預測資訊生成 步驟,所生成之分支預測資訊’及依前述分支履歷資訊生 成步驟所生成之分支履歷資訊之分支命令更新步驟,能在 電腦予以執行為其特徵之記錄媒體。 又,依電腦所執行之命令群為所記錄之記錄媒體,而 於前述命令群中含有,欲預測分支之成立或否之分支預測 資訊’與具有表示對於過去之分支結果的資訊之分支命令 。刖述分支預測資訊乃是,具有該分支預測資訊之分支命 令’由前述電腦於最後所執行之際的分支結果,及分支履 歷資訊為根基’而所生成之值。前述分支履歷資訊乃是, 具有該分支履歷資訊之分支命令,由前述電腦於最後所執 行之際的分支結果,及分支履歷資訊為其根基,而所生成 之值,而有關對於該分支命令之過去的多數之分支結果的 概要之記錄媒體,成為其特徵。 或亦能作為依電腦所執行之命令群經被記錄之記憶媒 體。在前述命令群中含有,欲預測分支之成立或否之分支 預測資訊,及具有表示對於過去之分支結果之資訊的分支 履歷資訊之分支命令。前述分支預測資訊,係具有該分支 預測資訊之分支命令,由前述電腦於最後所執行之際的分 支結果’與为支履歷_貝訊為其根基’而所生成之值。前述 本紙垠尺度適用中國國家標準(CNS ) Λ4規格(21〇>< 297公釐〉 (請先閱讀背面之注意事項再填寫本頁) 丨裝------訂 丨線I, -11 - B7 五、發明説明(9 ) 分支履歷資訊,係具㈣分支難f訊之分支命令,前述 電腦於最後所執行之際的分支結果,與分支履歷資訊為其 根基’而所生成之值,而以表示對於該分支命令之過去的 每-分支之分支結果,為其特徵之記錄媒。由於此,上述 第2目的就能達成。 如上述,依本發明,即,以小規模之硬體,或軟趙就 月匕予以實ί見it且’ i實現可作高成功率之分支預測之高 機能的微處理機,及假想機器等,是故,其實用性效果甚 大。 實施例 以下,參照圖面說明有關本發明之資訊處理裝置的實 施例。 (資訊處理裝置之構成) 經濟部中央標準局員工消費合作社印製 第2圖係表示有關本發明之資訊處理裝置1〇〇之構成的 方塊圖。本裝置100乃將事先所準備之32位元固定長之命 令,逐一予以查詢、解讀、執行之處理機系統,係由主記 憶體9、現值裝置11、命令查詢器12、命令暫存器η、命 令解讀器14、命令執行器15、位址控制器8、程式計數器 群1〇、位址生成器19、分支履歷資訊生成器丨6、分支預測 資訊生成器17、以及分支命令更新器18,所構成。該等各 構成要素8〜19,係與未圖示之時鐘信號同步動作。又, 構成要素12〜18乃構成4段之管路線(流水線)。即,命令 查詢器12構成管路線之查詢(IF)階段,命令暫存器η與命 令解讀器14構成管路線之解讀(DEC)階段、命令執行器 本紙張尺度適用中國國家標準(CNS ) A4現格(210X 297公釐) -12- 經濟部中央標隼局員工消費合作杜印製 A 7 、 _____B7 五、發明説明(10 ) 、分支履歷資訊生成器16、分支預測資訊生成器17、及分 支命令更新器18,乃構成管路線之執行(EX)階段,而命令 執行器15與分支命令更新器18,乃構成管路線之記憶存取 (MEM)階段’於各階段之處理乃在1時鐘週期内,獨立並 且並列予以進行之。主記憶體9為DRAM等,而格納成為 本裝置100之執行對象的命令列(程式)。在該程式乃含有 於本裝置100特有之分支命令》 第3圖係表示該分支命令之格式。分支命令2〇,乃由13 位元之操作碼(op C〇de)2〇a、1位元之分支預測資訊2〇b、2 位元之分支履歷資訊20c、及16位元之分支處(分支目的地 )位址20d所成。操作瑪(運其碼)2〇a,係表示欲識別(辨認) 該命令之運算碼(operation code: op c〇de),及分支條件等 。分支預測資訊20b,係該分支命令於其次所執行之場人 ,欲預測該分支當成立或否者。在具體上,該分支預測資 訊20b與其預測内容之關係,為如下之預測: (1) 當分支預測資訊20b為「0」之場合,分支為「不 成立」。 (2) 當分支預測資訊20b為「1」之場合,分支為「成 立J ° 分支履歷資訊20c,係相當於將該分支命令之過去的 多數之分支結果,予以簡要之資訊(作統計性整理之資訊) 。在具體上,該分支履歷資訊20c與於過去分岐成立之頻 繁度(與不成立之場合相比較之頻繁度)的關係,為如下所 示0 本紙張尺度適用中賴家縣(CNS ) A4規格(2iqx 297公屢) ^----—裝------、1τ------^ II (請先閱讀背面之注意事項再填寫本頁) -13 - 經濟部中央標準局員工消費合作社印製 A7 B7 1 '
_____ ___________________ I 五、發明説明(1〇 - (1) 當分支履歷資訊2〇c為「00」之場人, 芍極少」。 (2) 當分支履歷資訊20c為「01」之場人, ° 马 少」。 (3) 當分支履歷資訊20c為「10」之場人, ° 馬 多」。 (4) 當分支履歷資訊20c為「11」之場合,為「極夕 分支處(分支目的地)位址20d,為於分支成立之尸濟 分支之位址’即’表示有放置其次應執行之命令的主記= 體9上之位址❶又’於分支不成立之場合,即,其次應^ 行之命令’乃是放在該分支命令之瞬後之命令。 現值裝置11 ’係欲使命令查詢器12對主記憶趙9之存 取’予以高速化者,乃由現值記憶體Ua、標識記憶體Ub ,及現值控制器11c所構成。現值記憶體113為311八1^等, 係將放置在主記憶體9之程式的一部份,而以所謂之現值 區段為單位’予以格納之高速記憶體。標識記憶體1比係. 要記憶由該現值區段之位址等所成之標識文件目錄(tag directory) 〇 現值控制器lie ’係將從命令查詢器12所輸出之位址 ’與標識記憶體1 lb之内容,予以比較並檢出有否現值命 中(成功)’若於命中(成功)之場合,乃將依命令查詢器12 對現值記憶體11 a之存取,予以有效化。另方面,於未命 中(未成功)之場合’乃依LRU(Least Recently used)算法, 而將現值區段予以置換。於現值區段被置換之場合,即, 以背面書寫方式而將該現值區段寫入於主記憶體9,就能 保持現值記憶體1 la與主記憶體之内容的一貫性。 命令查詢器12,係要先取得其次應解讀而執行之命令
本^中國國 丨 〇 x 297 公;tT ~^ ~^--IT------.^—Λ (請先閲讀背面之注意事項再填寫本頁) -14- A7 五、發明説明(l2 經濟部中央標準局員工消費合作社印製 =乃將從查詢用命令計數器10a所傳送來的查詢位址, 2出至現值裝置11,而將對應於該位址之命令,從現值記 (或主記憶體9)予以讀出,並暫時性保持於内部之 ° :緩衝器12a。命令緩衝器12a,係欲保持所先取得之1 個命令的暫存器(寄存器)^ 命^暫存器13,係欲保持成為解讀之對象的i個命令 ^暫存器,*將被命令緩衝1112a所先取得之命令,於其 人之時鐘週期予以讀出,並於解讀期間中將該命令予以保 持在第2圖係表示於命令暫存器i 3保持分支 的格納内容。 、。 命令解讀器14 ’乃由格納微程式之ROM等所成,係 要解讀保持在命令暫存器13之命令的操作仙a ,並將里 結果作為控制信號141,而輸出至命令執行器15。又,= 解讀對象為分.支命令之場合,乃介著信號線142而將該分 支命令之分支制資訊13b,通知予命令執行心及位址 控制器8。 位址控制器8,乃以從命令解讀器14及命令執行器15 來之通知為根基,而控制位址生成器19及程式計數器1〇, 是故’更新構絲式特群攸玲計數^查㈣命令計 數器10a、解讀用命令計數器·、執㈣命令計數器 之數值。 其結果,在查詢用命令計數器1〇a上,乃保持著有放 置格納在命令緩衝器12a之命令的主記憶體9上之位址(查 *旬位置)’在解讀用命令計數器1〇b上,乃保持著有放置保 請 閱 背 έ 5
項 ϊ 再 4 I I裂 頁 I 訂 I 線 本紙張尺度適财關家標準(CNS) Μ規格(2丨⑸297公廣) -15- 、發明説明(13 ) 持在命令暫存器13之命令的主記憶體9上之位址(解讀位址 ),而在執行用命令計數器l〇c,乃保持著有放置於命令執 行器15所執行之命令之主記憶體9上的位址(執行位址)。 位址生成器19,乃由ALU及選擇器等所成,係在位址 控制器8之控制之下,而對程式計數器群1〇之各計數器1〇& 10c予以增量,或將分支處位址13d寫入於查詢用命令計 數器10a,或予以無效化。 命令執行器15,乃依照從命令解讀器14來的控制信號 141,而控制包含在内部所具有之汎用暫存器及演算器等 之各構成要素,因此,對應於各命令之演算及資料(數據) 轉送等,乃予以執行。又,命令執行器15,於所執行之命 令為分支命令之場合,即,介著信號線151而將其執行結 果(分支成立或否),通知予分支履歷資訊生成器16,及分 支預測資訊生成器Π,同時,為分支預測偏離之場合的處 分(penalty)處理(對命令暫存器13所轉送之命令的無效化 ,以及依據執行結果之本來的分支處命令之查詢)上乃 比較其執行結果與分支預測資訊13b,並將該結果(預測命 中/偏離)介著信號線152通知予命令解讀器14及位址控制 器8。 " 分支履歷資訊生成器16,於分支命令由命令執行器15 所執行之場合,乃以含在該分支命令之分支履歷資訊Be ,及其執行結果(分支之成立或否)為其根基,而判斷是否 應變更該分支履歷資訊。若為應變更之場合,即,生成新 分支履歷資訊,並將其判斷結果(「應維持其原狀」, 經濟部中央標隼局員工消费合作杜印製 A7 —-— ___B7 五、發明 1^7 14 ) ' ~ --- 「已予以更新」及新分支履歷資訊輪出至分 新器18。 分支預測資訊生成器17,於分支命令由命之執行器b 所執行之場合’就以含在該分支命令之分支履歷資訊以 ,及其執行結果(分支之成立或否)為其根I,而判斷是否 應變更該分支預測資訊。若為應變更之場合,即,生成新 分支預測資訊,並將其判斷結果(「應維持其原狀」,或 「已予以變更」)’及新分支預測資訊輸出至分支命令更 新器18。 第4圖係表示,分支履歷資訊生成器16及分支預測資 訊生成器17之輸出入關係的真理值表。即,輸入值攔,係 表示分別輸入於分支履歷資訊生成器16,及分支預測資訊 生成器17之分支履歷資mhiH(),以及執行結果χ之所有的 組合’而輸出值之分支履歷資訊ΝιΝ〇欄,係表示對於左 攔之各輸入值之組合’分支履歷資訊生成器16欲輸出之新 分支履歷資訊。輸出值之分支預測資訊F欄,乃表示對於 左欄之各輸入值的組合,分支預測資訊生成器17欲輸出之 新分支預測資訊。又,圖中之符號「—」為該值不具有意 義’即,表示分支履歷資訊生成器16(或分支預測資訊生 成器17) ’將分支履歷資訊(或分支預測資訊)之「應維持 其原狀」之訊息,而使用其他信號線通知予分支命令更新 器18。 第5圖係表示分支履歷資訊生成器16之詳細電路。分 支履歷資訊生成器16,係對於3位元之輸入信號(分支履歷 本紙張尺度適用中國國家標準(CNS ) A4規格(210X 297公釐) * I姑衣 _ 訂-------線丨 (請先閲讀背面之注意事項再填寫本頁) -17- A7 B7 經濟部中央揉準局員工消费合作社印製 五、發明説明(15 ) —- 資訊H|H〇 ’及執行結果X),而以將3位元之信號(分支履歷 資訊N1N0,及表示「應維持其原狀」之訊息的資訊M1)輸 出至分支命令更新器18之組合的邏輯電路予以實現之。 第6圖係表示分支預測資訊生成器17之詳細電路。分 支預測資訊生成器17 ’對於3位元之輸入信號(分支履歷資 訊Η,Η。,及執行結果χ),而以將2位元之信號(分支預測資 訊F及表示將該資訊「應維持其原狀」之訊息的資訊μ。) ,輸出至分支命令更新器18之組合的邏輯電路,予以實現 之。又,上述資訊Μι及,於上述各種資訊為「應維持 其原狀」之場合’乃為邏輯值「1」。 第7圖係以分支履歷資訊(2〇c)之值,作為其狀態時之 分支命令20的狀態遷移圖。同時,表示在第4圖所示之分 支履歷資訊,及分支預測資訊之更新算法之圖面。圖中之 4個摘圓,乃相當於2位元之分支履歷資訊所能取得之值( 狀態),其實線之遷移箭頭係表示執行結果為分支成立q 」之場合,而虛線之遷移箭頭線係表示執行結果為分支不 成立「〇」之場合的遷移方向。又,分支預測資訊有明確 f生之輸出(變更)之場合,乃添加記載於遷移箭頭線 30b)之橫方向處。 例如,於執行前之分支履歷資訊為「1〇」(在過去分 支為成立之頻繁度,為「多」)’而該分支命令之執行結 果為成立「1」之場合,分支履歷資訊生成器16乃將新分 支履歷資訊「11」(在過去分支為成立之頻繁度,為「極 多」,輸出至分支命令更新器18,同時,分支預 訊生
; I^衣 (請先閱讀背面之注意事項再填寫本頁) 訂 i ^ —J. I n J— I--- • - - I I 二 -18- 經濟部中央標準局員工消费合作社印製 A7 __^_B7 五、發明説明(ιό ) 成器Π,就輸出新分支預測資訊「1」(成立)至分支命令 更新器18。 分支命令更新器18,乃以從分支履歷資訊生成器π而 來之信號、Ν〇、’從分支預測資訊生成器17而來之 信號F、M0、以及執行用命令計數器i〇c之值為其根基, 予以更新該執行用命令計數器1 Oc之值,所示之現值記憶 體11a(或主記憶體9)上,而放置在位址之分支命令的上位 16位元(操作碼20a、分支預測資訊20b、及分支履歷資訊20c) 。但是,從分支履歷資訊生成器16及分支預測資訊生成器 17之雙方’接收到將各資訊「應維持其原狀」之訊息的通 知之場合,及接收到由命令執行器15所執行之命令為非分 支命令之訊息的通知之場合’分支命令更新器18對於上述 主記憶體9(或現值記憶體11a),不會產生任何動作。 第8圖係表示分支命令更新器18之詳細構成之方塊圖 。分支命令更新器18’乃由分支命令記憶部i8a、更新判 斷部18b、命令生成部18c、及位址閘栅部18d,所構成。 分支命令記憶部18a,係在命令暫存器13於每次格納 新命令時’就取得該命令之上述16位元(該命令若為分支 命令之場合,即’由操作碼13a、分支預測資訊13b、及分 支履歷資訊13c所成之16位元),而予以記憶之隱含指令緩 衝器(cue buffer)。其保持位於解讀階段及執行階段之2個 命令之各上位16位元。 更新判斷部18b,係從分支履歷資訊生成器16取得有 關,有無更新分支履歷資訊的信號,並從分支預測資 本紙張尺度適用中國國家標準(CNS ) Λ4規格(2丨0x 297公釐) —---------裝------訂------線 ί. (請先閱讀背面之注意事項再填寫本頁) -19- 經濟部中央標準局員工消費合作社印製 A 7 *__—_ B7 五、發明説明(17 ) 訊生成器17取得,有無更新分支預測資訊之有關信號m〇 ,而以各自之信號為根基’控制於命令生成部l8c之新分 支命令之生成’或控制由位址閘栅部18d之位址的輸出允 許或否。 命令生成部18c ’由於對於記憶在分支命令記憶部i8a 之2個16位元命令之中,先予格納者(其相當於瞬前所執行 之分支命令之上位16位元之部份),而將從分支履歷資訊 生成器16及分支預測資訊生成器π所輸出之新分支履歷資 訊^^丨!^ ’及新分支預測資訊F,予以再寫,是故,乃生成 現值裝置11(或主記憶體9)上之應更新之分支命令的上位 16位元之部份。但是,若從更新判斷部i8b接收「應維持 其原狀」之訊息的信號(M!及M〇)之場合,即,對應於該 信號之分支履歷資訊及(或)分支預測資訊,就不予更新。 位址閘柵部18d ’於輪入至更新判斷部1朴之2個信號 Μ,’Μο中’最少有1個為表示「已予以更新」之訊息之場 合’就將執行用命令計數器l〇c之值輸出至現值裝置U。 如是,分支命令更新器18 ’於由於命令執行器15所執 行之分支命令之分支預測資訊20b,及分支履歷資訊20c之 中,最少有一方需要予以變更之場合,即,由於在放置於 現值記憶體11a(或主記憶體9)之該分支命令的上位16位元 之部份,將新16位元予以再寫,是故,乃將分支命令2〇本 身予以更新。 於此’依上述分支履歷資訊生成器16、分支預測資訊 生成器17、及分支命令更新器18之分支履歷資訊及分支預 本紙張尺度適财關家鮮(CNS )八4祕(210^97公釐) --Γ---!----1¾衣------訂------線—,-. (請先閱讀背面之注意事項再填寫本頁j -20- 經濟部中央標準局員工消費合作社印裝 A7 ~一 — B7 _ ·" 五、發明説明(18 ) 測資訊的具體性變化,依照第7圖之狀態遷移圖予以例示 ,如下。 現在,該分支履歷資訊2〇c為「〇〇」,而分支預測資 訊20b為「0」之分支命令2〇,作反覆執行。即, 第1次之執行結果,為分支成立之場合,即,分支履 歷資訊20c乃被更新為「01」,而分支預測資訊2〇b不變化 〇 第2次之執行結果,為分支成立之場合,分支履歷資 訊20c乃被更新為「1〇」,而分支預測資訊不變化。 第3次之執行結果為分支成立之場合,即,分支履歷 資訊20c乃被更新為「丨丨」,而分支預測資訊2〇b被更新為 「1」。 第4次之執行結果為分支不成立之場合,即,分支履 歷資訊20c就被更新為「1〇」,而分支預測資訊2〇b不變化 〇 第5次之執行結果為分支不成立之場合,即,分支履 歷資訊20c就被更新為「01 J ’而分支預測資訊20b不變化 〇 第6次之執行結果為不分支成立之場合,即,分支履 歷資訊20c被更新為「〇〇」,而分支預測資訊2〇b就被更新 為「〇」。將上述之例示,在取分支預測資訊2〇b之值為縱 轴’而取分支履歷資訊20c之值作為橫軸之座標系統上, 予以標記就成為在第9圖所示之圖表。 由該圖表可知,就分支之成立為連續之場合,分支預 本紙張尺度適用中國國家樣準(CNS ) A4規格(210X297公釐) : : —裝------訂------線一, (請先閲讀背面之注意事項再填寫本頁) A7 B7 經濟部中央標準局員工消費合作社印製 五、發明説明(19 ) 測訊20b從「〇」變化至「丨」之場合的分支履歷資訊2〇c的 遷移處所,與於分支之不成立為連續之場合,分支預測資 訊20b從「1」變化至「〇」之場合的分支履歷資訊2〇c之遷 移處所相異《即,分支履歷資訊2〇c由所變化之方向之不 同’而使分支預測資訊20b欲反轉之臨界值相異。因為, 以分支結果之履歷作為輸入,並於決定分支預測資訊2〇b 之影像上’ 3忍為有滯後現象存在之故。即,表示在過去, 於分支成立之頻繁度與不成立之頻繁度上,若無顯著之差 存在時,即’應尊重(維持)其原有所作之分支預測。 由於該滞後現象(hysteresis),因例外性所發生之分支 而使为支預測資訊2 0 b混亂之不適切性,或於反覆分支 成立與不成立之場合,所有之分支預測均偏離之不適切性 ,均能予避免,尤其,於控制系統之程式上的分支預測之 命中(成功)率,將提高。 (資訊處理裝置100之動作): 其次,對於如上述所構成之資訊處理裝置1〇〇之動作 ,而以具體性之分支命令被執行之場合,作為其例予以說 明之。 第10圖係表示於資訊處理裝置100之管路線(pipe Hne) 處理之流程。現在,該放置在主記憶體9之分支命令的分 支預測資訊20b,及分支履歷資訊2〇(;之初期值,分別為「 〇」及「οι」。又,該等初期值,由原始程式(原程序)(s〇urce program)之靜態性解析,而生成編譯程序(c〇mpiler)。而 後,3有該分支命令之現值區段(cash block),乃從主記 (請先閱讀背面之注意事項再填寫本頁)
i —裝I
,1T .丨線 本紙張尺度適用中國國家標準(CNS ) Α4規格(210Χ 297公釐) -22- A7 B7 經濟部中央標準局負工消費合作社印裝 五、發明説明(2〇 憶體9被讀出並放置予現值記憶體lla。 (1)IF階段: 該分支命令由於命令查詢器12,而於時鐘週期丨之後 半lb,乃從現值記憶體lla被讀出,並予以格納在命令緩 衝器12a。 (2)DEC階段·· 於其次之時鐘週期2之前半2a,被命令緩衝器12a所先 讀出之分支命令,就被轉送至命令暫存器13,並由命令解 讀器14所解讀。 在具體上,命令解讀器14由於解讀保持在命令暫存器 13之操作碼(演算碼)13a,是故,乃判斷解讀對象為分支 命令,而將欲予進行分支條件之判斷的控制㈣,輸出至 命令執行器15之同時’乃將保持在命令暫存器此分支預 測資訊13 b,通知予位址控制器8。 位址控制器8’由於所通知之分支預測資訊m為「〇 」之故’乃制該命令之執行結果為分支不成立,並予控 制位址生成器19’因之’將查詢用命令計數器1〇a之值, 予以增加。其值(查詢位址)乃經過命令查詢器12,而輸出 在現值裝置11。 其結果,於該時鐘週期2之後半2b的IF階段上,後續 於該刀支叩亍之命令,乃依命令查詢器12予以讀出並予 格納在命令緩衝器12a。如是,亦無關在分支命令為被執 仃之刖,而依據具有分支命令之分支預測 資訊的其次命令 之先讀出,乃被進行。 r ΐ —坤衣-- (請先閱讀背面之注意事項再填寫本頁) ,1Τ
-23- 經濟部中央標準局員工消費合作社印製 A7 _________B7 五、發明説明(21 ) (3) EX階段: 在後續之時鐘週期3之前半3a,命令執行器15,予依 照從命令解讀器14而來之控制信號,進行該分支命令之條 件判斷’並將該執行結果(分支之成立或否)通知予分支履 歷資訊生成器16,及分支預測資訊生成器17,同時,將該 預測結果(是否命中)通知予命令解讀器14,及位址控制器 8 ° 然後’於該時鐘週期3之後半3b,分支履歷資訊生成 器16及分支預測資訊生成器17,接收上述通知之同時,而 獲得格納在命令暫存器13之分支履歷資ii3C,並依照在 第7圖所示之遷移,而分別生成新分支履歷資訊,及分支 預測> sfl (或為其原狀),而將其結果,通知予分支命令更 新器18。接收新分支履歷資訊’及(或)分支預測資訊之通 知的分支命令更新器18,就生成具有該等資訊之新分支命 令之上位16位元。 又,於上述預測未命中(成功)之場合,即,於該時鐘 週期3之後半3a,就進行依命令執行器15,及命令查詢器12 所作之處分(penalty)處理(轉送至命令暫存器13之命令的 無效化,及以執行結果為根基的本來之分支處命令之查詢) 〇 (4) MEM階段 於時鐘週期4,當分支命令更新器18接收到,從分支 履歷資訊生成器16,及分支預測資訊生成器17而來的分支 預測資訊20b,及分支履歷資訊20c中,最少有!個「已予 本紙張尺度適用中國國家標準(CMS ) Α4規格(210X29*7公釐) ; *^. ,1T------^ (請先閱讀背面之注意事項再填寫本頁) -24- 經濟部中央標準局負工消費合作社印製 A 7 _________B7 五、發明説明(22 ) 以更新」之訊息之通知的場合,即,將於瞬前之時鐘週期 3b所生成之分支命令的上位16位元部份,再寫入於格納在 執行用命令計數器10c之執行位址所表示之現值記憶體 11 a(或主記憶體9)上的分支命令上。 如是含有所更新之現值記憶體lla上之分支命令之現 值區段,於從現值記憶體丨丨a被消去之前,即,依現值控 制Isllc而寫入於所對應之主記憶體9上之位置。由於此, 該分支命令雖再度從主記憶體9被讀出並被執行之場合, 即,含在該分支命令之分支預測資訊2〇b,及分支履歷資 訊20c ’乃被保證為依據過去之分支結果的有效之資訊。 如上述,於本裝置1〇〇,每一分支命令之分支履歷資 訊與分支預測資訊,並非專用之記憶圖表,而被保持在其 分支命令本趙上。因此,其比將對於多數之分支命令的分 支履歷資訊’及分支預測資訊,以固定性具傷在資訊處理 裝置⑽之㈣之場合,其在資訊處理裝置100所必要之硬 體的規模,可為較少。 又,於本裝置100 ’其分支命令並非僅為丨位元之分支 預測資訊’而具有表示對於多數次之分支結果之簡要的2 位7L之刀支履歷資訊,並以該分支履歷資訊與瞬前之分支 結果為其根基,而可進行具有滯後現象之分支預測。因之 ,其與僅以1位元之分支預測資訊為根基之分支預測之場 。相比即並非單純之僅為預測命令(成功)率提高,並 且能進行不易受到,因例外性所發生之分支之惡影響的確 實之分支預測。 |_, , -¾衣------ΐτ------ (請先閱讀背面之注意事項再填寫本頁) -25- A7 B7 經濟部中央標準局員工消費合作社印製 五、發明説明(23 又,於本實施例,主記憶體9為DRAM等,而現值記 憶體Ua乃由SRAM等戶斤成,惟,本發明並非僅限定於該 等者。例如,主記憶體9’以硬碟等之不揮發性之記憶裝 置亦可以。由於此,裝置之電源雖被切斷之場合由於以 其以前之執行結果為根基之分支預測資訊2〇b,及分支履 歷資訊20c ’經保存在硬碟等之故,於其次之再執行時, 就不必積蓄分支履歷資訊,而可開始有效之分支預測。 (第1變形例): 其次,表示上述實施例之資訊處理裝置丨〇〇的變形例 。在上述實施例,如在第7圖所示’分支預測資訊設定為 ’分支履歷資訊僅從「多」遷移至「極多」之場合「成立 」,並且,分支履歷資訊僅從「少」遷移至「極少」之場 合’設定為「不成立」。 其乃如添加記載在第1丄圖上之狀態遷移圖上之遷移箭 頭線31a、31b,而能變形為分支預測資訊僅設定為,分支 履歷資訊滞留於「極多」之場合,(即,分支履歷資訊為 「極多」的分支命令之執行結果,成為「成立」之場合) ,為「成立」,而分支履歷資訊滞留於「極少」之場合, .(即,分支履歷資訊為「極少」之分支命令的執行結果, 成為「不成立」之場合),僅設定為「不成立」,而在其 他之遷移之場合,即,不變化的更新算法。其予以變更構 成刀支預測資訊生成器17之組合邏輯電路上之結線,就能 容易予以實現。 該第1變形例,以比較第7圖及第u圖可知,其相當於 本紙張尺度制中國國家鮮(cNS ) Α4· (7^< 297公着) Γ J----1¾ 衣------、1T------0 I (請先閱讀背面之注意事項再填寫本頁) -26- 五、發明説明(24 A7 B7 將上述之呼後現象之程度,比上述實施例之場合予以加強 者。即,對於實際所產生之分支結果的成立或否之偏差, 分支預測資訊成為不㈣化。由於此,乃能實現欲加強抑 制分支預測資訊之縣的系統,及不輕分支賴資訊之 變化的系統,例如’欲維持依靜態性資訊而決定初期值之 需求性’比以執行時之動態性事象為宜之系統的,適宜之 資訊處理裝置。 (第2變形例): 經濟部中央標準局員工消費合作社印裝 人’在上述實施例,分支履歷資訊為2位元,但,亦 容易將其變形W位元。第12圖係表示,將分支履歷資訊 作為1位元之場合的分支履歷資訊之更新算法的狀態遷移 圖。分支履歷資訊屬於「多」與「少」之任一狀態,而 狀態分別表示該分支命令之瞬前之執行結果為「成立」 「不成立」。分支預測資訊如添加記載於遷移箭頭線32a ,當分支履歷資訊滯留於「多」之場合(分支履歷資訊為 多」之分支命令的執行結果,成為「成立」之場合), 僅設定為「成立」。又,如添加記載於遷移箭頭線32b, 當分支履歷資訊成為滯留於「少」之場合(即,分支履歷 資訊為「少」之分支命令的執行結果,成為「不成立」之 場合)’僅設定為「不成立」,而在其他之場合,即,不 變化:由於此,分支預測資訊’於分支命令之執行結果反 覆於成立」與「不成立」之場合,即,不變化,惟,於 同一結果為連續之場合,就設定切應於該結果之值。 如是之第2變形例,係削減實施例之分支履歷資訊生 各 (請先閱讀背面之注意事項再填寫本頁) 本紙乐尺度適用中國國家標準(CNS) A4規格(210X 297^^
-27- A7 B7 經濟部中夬榡準局員工消費合作社印製 五、發明説明(25 ) 成器16’及分支預測資訊生成器17之邏輯電路,其以變更 結線就能谷易予以實現之。 該第2變形例’予以比較第7圖及第丨2圖可知,係相當 於減弱上述之滯後現象之程度之場合。即,其比上述實施 例之場合’其分支預測資訊之變化,對分支履歷資訊之變 化成為較敏感。由於此’其比上述實施例之資訊處理裝置 100 ’更此實現對程式之執行結果較敏感的,即,適合於 例外處理較多之實時處理性較強之系統的資訊處理裝置。 又’該第2變形例’其分支履歷資訊以1位元就可以,是故 ,能使編碼尺寸予以縮小化,並能增加於定義命令置位( 操作碼之測繪)之場合的自由度。 (第3變形例): 上述實施例及2種變形例,係將具有對於過去之分支 結果的統計性簡要之分支履歷資訊的分支命令,予以執行 之資訊處理裝置,不過,亦容易將其變形為具有由對應過 去之各分支之位元的集合所成之分支履歷資訊之分支命令 ,而予以執行之資訊處理裝置。即,將在上述實施例之資 讯處理裝置1〇〇上的分支履歷資訊生成器16,及分支預測 資訊生成器17之機能(輪出入變換算法),予以變更,就可 實現將該分支命令之過去的多數次之執行結果,而以其原 狀所示之集合作為分支履歷資訊,並予保持之分支命令’ 予以執行之資訊處理裝置。 第13圖係有關於第3變形例之資訊處理裝置的分支履 歷資訊生成器,及分支預測資訊生成器,作更新算法之真 公楚) ----------—裝------訂------線 _ t. (請先閱讀背面之注意事項再填寫本頁) -28- 經濟部中央標準局員工消費合作社印製 A7 ‘ —_________B7 五、發明説明(26 ) 理值表,乃對應於上述實施例上之第4圖。 在第3變形例與上述實施例相異,其分支命令所具有 之2位元的分支履歷資訊2〇c,其下位位元H〇乃表示該分支 命令·之瞬前之執行結果(「丨」為「成立」、「〇」為「不 成立」)’而上位位元士即表示該分支命令之第2次前之執 行結果。 該第3變形例之分支履歷資訊生成器為2位元之隱含( 尾接)指令緩衝器。當從命令執行器15通知新執行結果χ 時,就將原來所保持之2位元HiHq,予以移動至上位方向 ,並且,將該新執行結果X輸入於下位位元N〇,而生成新 分支履歷資訊Ν,Νο。 第3變形例之分支預測資訊生成器,在原則上,係將 分支命令所欲執行之瞬前之2位元的分支履歷資訊ΗιΗβ, 及從命令執行器15所通知之執行結果χ’予以加合之共計 3位疋之值之中,而將較多邏輯值(例如,於ΗθρΟΙ,而 Χ—1之場合為「1」)作為新分支預測 資訊F ’而予以生成 。不過’以例外者為,僅於該等3位元HiHqX取交互反轉 之邏輯值之場合,即,將其反轉欲繼續之邏輯值(於 士1^}(=〇1〇之場合為「〗」、HiH〇x=1〇12場合為「〇」), 作為新分支預測資訊F,而予以生成之。因為,在原則上 ,將過去3次之執行結果上,較多者之結果(「成立」或「 不成立」),採用作為其次之分支預測,但,僅於過去3次 之執行結果’以「成立」與「不成立」交互反覆之場合, 作為例外’認為其反覆將繼續而作其分支預測。 本紙張尺度相中 .. I 訂 線 (請先閱讀背面之注意事項再填寫本頁) -29- 經濟部中央標率局員工消費合作衽印製 A7 ~-----------B7_ 五、發明説明(27 ) ~ ' 第14圖係表示第3變形例之分支履歷資訊,及分支預 、厂貝訊之更新算法的狀態遷移圖。本圖係對應於上述實施 例之第7圖’惟’在遷移箭頭線上有添加記載之數值,係 表不引起其遷移之原因(即,其分支命令之執行結果X之 值),以及表示隨著其遷移而從分支預測資訊生成器,所 輪出之新分支預測資訊之值。 例如,現在,分支履歷資訊20c為「00」,而分支預 測資訊2Gb為「〇」之分支命令2(),反覆予以執行時,即, 第1次之執行結果為分支成立(未命中)之場合,分支 履土資訊20c被更新為「〇1」,而分支預測資訊被設 定為「0」(不變化)。 第2人之執行結果為分支不成立(命中)之場合,分支 履歷資訊20c被更新為「1〇」,而分支預測資訊2〇b被變更 為「1」。 第3人之執行結果為分支成立(命中)之場合,分支履 歷資訊20c被更新為「〇1」’而分支預測資訊雇被設定為 「0」° 第4人之執行結果為分支不成立(命中)之場合,分支 履歷貝訊20c被更新為「1〇」,而分支預測資訊2〇b被變更 為「1」。 如是,依據第3變形例有關之資訊處理裝置,在原則 上,乃以過去之分支結果為根基進行分支預測,但於分支 之成立與不成立交互反覆之場合’即,與上述實施例相異 ’乃認為其套環現象將反覆之下進行分支 因此,於如是 本紙張尺度適用中國國家標 --=----------裝------訂------線I (請先閱讀背面之注意事項再填寫本頁) -30- 經濟部中央標準局員工消費合作社印製 A7 ' -----B7 ‘ 五、發明説明(28 ) 之特殊的程式的流向上,其分支預測亦會命中(成功)。 以上’對於本發明有關之資訊處理裝置,以1種實施 例及3種變形例予以表示,但,本發明並非限定於此者。 對於欲決定分支預測資訊之條件(分支履歷資訊之值與分 支結果之組合)’欲更新分支履歷資訊之算法、分支履歷 資訊之位兀數等,即,組合所能取得之值,就能容易成為 其他之變形例,亦十分明確。 例如’對於分支履歷資訊’亦能分配3位元而將深遠 之分支履歷的簡要,以8階段予以表示之。由於此,就更 能提尚命中(成功率)並能進行更敏細之分支預測。但是, 於1個分支命令所佔有之欲作分支預測之位元數,予以增 多之場合’即’於欲定義命令置位之場合的自由度等上, 需要有所犧牲之故,該等之位元數應從預測命中率及應裝 備之命令的種類之權衡上予以決定之。又,上述實施例及 變形例之構成要素,均以邏輯電路予以實現為其前提,而 作說明,但是,本發明不僅依硬體予以實現,並且亦能以 軟體予以實現’亦十分明確。 在具體上,在上述實施例之資訊處理裝置100的構成 要素之中,欲格納命令及數值之記憶裝置9, 11a, lib,12a ,13 ’ l〇a〜l〇c等,分配在變數及資料領域,而將所餘之 控制裝置8 ’ 11c ’ 12 ’ 14〜19等之機能,即,使用程式語 言予以記述就可以。由於此’本發明有關之資訊處理裝置 ,就能作為收訊用之電腦所執行之模擬程式或假想機器, 予以實現之。欲實現如是之本發明有關之資訊處理裝置的 本紙張尺度適用中國國家標準(CNS ) A4規格(210X297公釐) ,--------—裝------訂------線 (請先閱讀背面之注意事項再填寫本買) A7 A7 經濟部中央梯率扃負工消費合作社印裝 B7 ----- —— --------— 五、發明説明(29 ) ~~~~~~~ 程式’可格納在CD-ROM等之記錄媒體,予以分配(分佈) 、流通。 又’在上述實施例及變形例之分支命令,乃與在第i 圖所示之習知的命令格式相異,例如,在第3圖所示之命 令格式般’具有所謂之分支履歷資訊之本發明固有的資訊 。具有該特徵性之構造的分支命令,乃是本發明所固有, 而含有如是之分支命令的命令群(程式),係與上述程式同 樣’亦可介著快速磁碟等之記錄媒體,及通行線路等,予 以分配(分佈)、流通,亦十分明確。 圖面簡要說明: 第1圖係表示習知之分支命令的格式(樣式)。 第2圖係表示本發明有關之資訊處理裝置的構成之方 塊圖。 第3圊係表示本發明有關之分支命令的格式。 第4圖係表示本發明有關之資訊處理襞置的分支履歷 資訊生成器16,及分支預測資訊生成器17之輪出入關係的 真理值表。 第5圖為該分支履歷資訊生成器16之詳細的電路圖。 第6圖為該分支預測資訊生成器17之詳細的電路圖。 第7圖係表示該分布命令之分支履歷資訊,及分支預 測資訊之更新算法之狀態遷移圖。 第8圖係表示該資訊處理裝置之分支命令更新器以之 詳細構成的方塊圖。 第9圖係表示該分支命令之分支預測資訊分支履歷 本紙張尺度適用中國國家榡準(CNS ) A4規格(2丨OX 297公釐) -----,----—裝----^---訂------線ί (請先閲讀背面之注意事項再填寫本頁j -32- A7 B7 五、發明説明(3〇 ) 資訊、及分支結果之關係的圖表。 第ίο圖係表示在該資訊處理裝置上的管路線(流水線) 處理之流動。 第π圖係表示有關該資訊處理裝置之第1變形例的分 支命令之分支履歷資訊’及分支預測資訊之更新算法的狀 態遷移圖。 第12圖係表示有關該資訊處理裝置之第2變形例的分 支命令之分支履歷資訊’及分支預測資訊之更新算法的狀 態遷移圖。 第13圖係表示有關該資訊處理裝置之第3變形例的分 支命令之分支履歷資訊’及分支預測資訊之更新算法的真 理值表。 第14圖係表示有關該第3變形例之分支命令的分支履 歷資訊’及分支預測資訊之更新算法的狀態遷移圖。 '--------------.玎------線 (請先閱讀背面之注意事項再填寫本頁) 經濟部中央標準局員工消费合作杜印製 本紙張尺度適用中國國家標準(CNS ) A4規格(210X 297公釐) -33 - A 7 B7 五、發明説明(31 ) 經濟部中央標準局員工消費合作社印裝 8...位址控制器 9··.主記憶體 10…程式計數器群 10a.·•查詢用命令計數器 10b…解讀用命令計數器 iOc··.執行用命令計數器 11…現值裝置 lla...現值記憶體 lib…標識記憶體 11c···現值控制器 12…命令查詢器 12a...命令緩衝器 13…命令暫存器 13a,20a._.操作碼 13b,20b···分支預測資訊 13c,20c...分支履歷資訊 13d,20d.··分支處位址 14…命令解讀器 元件標號對照 15…命令執行器 16…分支履歷資訊生成器 17…分支預測資訊生成器 18…分支命令更新器 18a.分支命令記憶部 18b…更新判斷部 18c…命令生成部 18d…位址閘柵部 19…位址生成器 20…分支命令30a,30b,31a,31b,32a,32b …遷移箭頭線 40…分支命令(習知) 40b…分支預測資訊(習知) 100.·.資訊處理裝置 141…控制信號 142,151…信號線 (請先閲讀背面之注意事項再填寫本頁) 、1Τ I 级 _·. 本紙張尺度適用中國國家標準(CNS ) Α4規格(210Χ 297公釐) -34-
Claims (1)
- 經濟部中央揉準局員工消費合作社印製 A8 B8 , , C8 D8 六、申請專利範圍 1 · 一種資訊處理裝置,係用以逐次執行命令,包含有: 一記憶裝置,係事先記憶含有,具有欲預測分支 之成立或否之分支預測資訊,及表示對於其過去之分 支結果之資訊的分支履歷資訊之分支命令的命令群; 一命令查詢裝置,係欲從前述記憶裝置讀出其次 應執行之命令; 一命令解讀裝置,係欲解讀所讀出之命令,是否 為前述分支命令; 一命令查詢控制裝置,係前述命令經解讀為分支 命令之場合,即,以該分支命令之分支預測資訊為根 基,而控制前述命令查詢裝置,以期讀出其次應執行 之命令; 一執行裝置,係欲執行所解讀之前述分支命令; 一分支預測資訊生成裝置,係以前述分支命令被 執行之際的分支結果,及含在該分支命令之分支履歷 資訊,為其依據而生成新分支預測資訊; 一分支履歷資訊生成裝置,係以前述分支命令被 執行之際的分支結果,及含在該分支命令之分支履歷 資訊,為其依據而生成新分支履歷資訊;以及 一分支命令更新裝置,係將格納在前述記憶裝置 之前述分支命令的分支預測資訊,及分支履歷資訊, 更新為依前述分支預測資訊生成裝置,所生成之分支 預測資訊,及由前述分支履歷資訊生成裝置,所生成 之分支履歷資訊。 本紙浪尺度適用中國國家揉準(CNS ) A4規格(210X297公釐) --卜---r---^ -裝------訂------線 (請先閲讀背面之注意事項再填寫本頁) A8 B8 C8訂 1 -36 - 申請專利範圍 訊 6.如申請專利範圍第5項所記載之資訊處理裝置,其中, 置’乃欲生成含有依前述分支預 i貝訊生成裝置,所生成之分支預測資訊,及由前述 歷資訊生成裝置,所生成之分支履«訊的新 A 並將該分支命令再寫於前述記憶裝置之該 二處所m於此所謂之前述該當處所為,生成該前述 裝 新分支命令之原有的分支命令,所記憶之位置。 7·如申請專利範圍第6項所記載之資訊處理裝置,其中, 前述記憶裝置含有: 一主記憶部,係欲格納前述命令群; 訂 一現值記憶部’係欲記憶對於格納在前述主記憶 部之命令群的一部份之複製;以及 -現值控制裝置’係於前述現值記憶部之内部被 換寫之場合’欲將該變更亦予以反應於前述主記憶部 之内容上; 而後’前述命令查詢裝置’就從前述現值記情部 讀出前述命令’而前述分支命令更新裝置,即,將記 憶在前述現值記憶部之分支命令的分支預測資訊,及 分支履歷資訊’予以更新。 8·如申請專利範圍第4項所記載之資訊處理裝置,I中, 前述預測資訊更新裝置,係僅於前述分支履歷資訊表 不「極多」,並且’前述分支結果於「成立J之場合 ’前述預測資訊更新裝置,就生成表示「成立J之新 ( cns ) (27^ϋΤ -37- 經濟部申央揉準局員工消費合作社印裝 申請專利範圍 分支預測資訊,而僅於前述分支履歷資訊表示「極少 」’並且,前述分支結果為「不成立」之場合,前述 預測資訊更新裝置,就生成表示「不成立」之新分支 預測資訊。 9·如申請專利範圍第8項所記載之f訊處理裝置,其中, 前述分支命令更新裝置,乃欲生成含有,由前述分支 預測資訊生成裝置,所生成之分支預測資訊,及依前 述分支履歷資訊生成裝置,所生成之分支履歷資訊之 新分支命令,並將該分支命令再寫於前述記憶裝置之 該當處所,而於此所謂之前述該當處所為,生成前述 新分支命令之原有之分支命令,所記憶之位置。 10.如申明專利虼圍第9項所記載之資訊處理裝置,其中, 前述記憶裝置含有: 一主記憶部,係欲格納前述命令群; 一現值記憶部,係欲記憶格納在前述主記憶部之 命令群的一部份之複製;以及 一現值控制裝置,係於前述現值記憶部之内容, 被換寫之場合,亦欲將其變更反應予前述主記憶部之 内容; 而前述命令查詢裝置’乃從前述現值記憶部讀出 前述命令,又,前述分支命令更新裝置,就更新記憶 在刖述現值記憶部之分支命令的分支預測資訊,及分 支履歷資訊。 11.如申請專利範圍第2項所記載之資訊處理裝置,其中, 令紙浪尺及適用中國國家梂準(CNS ) A4規格(210X297公釐 -------------^------iT------分 (請先閲讀背面之注意事項再填寫本頁) -38- A8 B8 C8經濟部中央橾準局員工消費合作社印製 A8 B8 -~___ C8 ·~·—-—— ____—____D8 、申請專概^ ~---— 15、新刀支命令之原有之分支命令,所記愧之位置。 :π專利範圍第14項所記載之資訊處理裝置,其中 ’前述記憶裝置含有: —主記憶部,係欲格納前述命令群; ^ —現值記憶部,係欲記憶對於格納在前述主記憶 部之命令群的一部份之複製;以及 現值控制裝置,係於前述現值記憶部之内容經 換寫之場合,亦將其變更反應予前述主記憶部之内容 t 〜而前述命令查詢裝置,就從前述現值記憶部讀出 月J = 〇P令’又’前述分支命令更新裝置,就更新記憶 在刖述現值s己憶部之分支命令的分支預測資訊,及分 支履歷資訊。 如申明專利乾圍第1項所記載之資訊處理裝置,其中, 月述分支履歷資訊,對於具有其分支履歷資訊之分支 命令的過去之各分支,表示其分支結果。 7·如申明專利範圍第16項所記載之資訊處理裝置,其尹 ,刖述分支履歷資訊,係表示瞬前及2次前之分支結果 的2位元; 而前述分支履歷資訊生成裝置,乃使用前述分支 命令,被執行之際的分支結果,予以生成新分支履歷 資訊。 18·如申請專利範圍第17項所記載之資訊處理裝置,其中 ’前述預測資訊更新裝置’係於前述分支命令被執行 本紙張从適用中國國家標率(CNS )八4狀· ( 2U)X297&瘦) . .'裝-------ΐτ------^ (請先閲讀背面之注意事項再填寫本頁) -40-'申請專利範圍 之際的分支結果,及含在該分支命令的瞬前與2次前之 分支結果,分别為「成立」、 不成立 成立 經濟部令央揉準局貝工消費合作社印之場合,前述預測資訊更新裝置,就生成表示「不成 立」之新分支預測資訊,而於「不成立」、「成立 、「不成立」之場合,即,生成表示「成立」之新分 支預測資訊。 19.如申請專利範圍第18項所記載之資訊處理裝置,其中 ’前述分支命令更新裝置,乃欲生成含有由前述分支 預測資訊生成裝置,所生成之分支預測資訊,及由前 述分支履歷資訊生成裝置,所生成之分支履歷資訊的 新分支命令,並將該分支命令再寫在前述記憶裝置之 該當處所,而於此所謂之前述該當處所,乃是生成前 述新分支命令之原有的分支命令,所記憶之位置。 20.如申請專利範圍第19項所記載之資訊處理裝置,其中 ’前述記憶裝置含有:一主記憶部,係欲格納前述命令群;一現值記憶部,係欲記憶對於格納在前述主記憶 部之命令群的一部份之複製;以及一現值控制裝置,係於前述現值記憶部之内容, 經換寫之場合,亦欲將其變更反應予前述主記憶部之 内容; 而前述命令查詢裝置,就從前述現值記憶部讀出 前述命令,又,前述分支命令更新裝置,就更新記憶 在前述現值記憶部之分支命令的分支預測資訊,及分 I -I - - - ί I 1 - - - I - I I- -» , 1 — I (請先聞讀背面之注意事項再填寫本頁) 訂- ύ-------- 本紙張尺度適用t蹕因家榇準(CNS ) A4規格(210X 297公釐) -41 - 經濟部中央標準局員工消費合作社印裝 A8 B8 C8 D8 六、申請專利範圍 支履歷資訊。 21. —種記錄媒體,係記錄分支預測,並將先讀取命令之 微處理機的動作,予以作模擬的程式,前述程式包含 有_· 一命令查詢步驟,係從事先記憶含有具有欲預測 分支之成立或否之分支預測資訊,及表示對於過去之 分支結果的資訊之分支履歷資訊之分支命令的命令群 之記憶裝置,並讀出其次應執行之命令; 一命令解讀步驟,係欲解讀所讀出之命令是否為 前述分支命令; 一分支預測步驟,係於前述命令經解讀為分支命 令之場合,乃以其分支命令之分支預測資訊為根基, 而讀出其次應執行之命令; 一執行步驟,係欲執行所解讀之前述分支命令; 一分支預測資訊生成步驟,係以前述分支命令被 執行之際的分支結果,及含在該分支命令之分支履歷 資訊,為根基而生成新分支預測資訊; 一分支履歷資訊生成步驟,係以前述分支命令經 執行之際的分支結果,及含在該分支命令之分支履歷 資訊’為根基而生成新分支履歷資訊; 一分支命令更新步驟,係欲將格納在前述記憶裝 置之前述分支命令的分支預測資訊,及分支履歷資訊 ,予以更新為由前述分支預測資訊生成步驟,所生成 之分支預測資訊,及由前述分支履歷資訊生成步驟, 本紙張尺度適用中國國家標準(CNS ) Α4说格(2丨0Χ297公釐) ----------袭------1T------汰 (請先閎讀背面之注意事項再填寫本頁) -42- ABCD 經濟部中央標準局員工消費合作社印製 六、申請專利範圍 所生成之分支履歷資訊。 22 · —種記錄媒體,係記錄由電腦所執行之命令群的記錄 媒體,於前述命令群含有分支命令,該分支命令具有 一分支預測資訊,係欲預測分支之成立或否;以 及 一分支履歷資訊,係欲表示對於其過去之分支結 果的資訊; 而前述分支預測資訊,乃是以具有該分支預測資 訊之分支命令,由電腦於最後所執行之際的分支結果 ,及分支履歷資訊為其依據,而所生成之值,又,前 述分支履歷資訊,乃是具有該分支履歷資訊之分支命 令,由前述電腦於最後所執行之際的分支結果,及分 支履歷資訊為其依據,而所生成之值,係對於其分支 命令之過去的多數之分支結果,有關之簡要。 23. —種記錄媒體,係記錄由電腦所執行之命令群的記錄 媒體,於前述命令群含有分支命令,該分支命令具有 一分支預測資訊,係欲預測分支之成立或否;以 及 一分支履歷資訊,係欲表示對於其過去之分支結 果的資訊; 而前述分支預測資訊,乃是以具有該分支預測資 訊之分支命令,由前述電腦於最後所執行之際的分支 本紙張尺度適用中國國家標準(CNS ) A4規格(210X297公釐) --------Λ------1Τ-------^ (請先閲讀背面之注意事項再填寫本頁) -43 - A8 B8 C8 D8 六、申請專利範圍 結果,及分支履歷資訊為其根基,所生成之值,又, 前述分支履歷資訊,乃是以具有該分支履歷資訊之分 支命令,由前述電腦於最後所執行之際的分支結果, 及分支履歷資訊為其根基,所生成之值,係表示對於 該分支命令的過去之各分支的分支結果。 ---------- 裝------訂------♦ (請先閲讀背面之注意事項再填寫本瓦) 經濟部中央標準局員工消費合作社印裝 本紙張尺度適用中國國家揉準(CNS ) A4規格(210X297公釐) -44 -
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP32845796 | 1996-12-09 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW380238B true TW380238B (en) | 2000-01-21 |
Family
ID=18210488
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW086118444A TW380238B (en) | 1996-12-09 | 1997-12-08 | Information processing apparatus which accurately predicts whether a branch is taken for a conditional branch instruction, using small-scale hardware |
Country Status (7)
Country | Link |
---|---|
US (1) | US5928358A (zh) |
EP (1) | EP0847004B1 (zh) |
JP (1) | JP3760041B2 (zh) |
KR (1) | KR100440805B1 (zh) |
CN (1) | CN1153133C (zh) |
DE (1) | DE69736164T2 (zh) |
TW (1) | TW380238B (zh) |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6170053B1 (en) * | 1996-06-27 | 2001-01-02 | Texas Instruments Incorporated | Microprocessor with circuits, systems and methods for responding to branch instructions based on history of prediction accuracy |
US6029228A (en) * | 1996-12-31 | 2000-02-22 | Texas Instruments Incorporated | Data prefetching of a load target buffer for post-branch instructions based on past prediction accuracy's of branch predictions |
US6182211B1 (en) * | 1997-07-02 | 2001-01-30 | Matsushita Electric Industrial Co., Ltd. | Conditional branch control method |
US6151672A (en) * | 1998-02-23 | 2000-11-21 | Hewlett-Packard Company | Methods and apparatus for reducing interference in a branch history table of a microprocessor |
US6189091B1 (en) | 1998-12-02 | 2001-02-13 | Ip First, L.L.C. | Apparatus and method for speculatively updating global history and restoring same on branch misprediction detection |
US6341348B1 (en) * | 1998-12-03 | 2002-01-22 | Sun Microsystems, Inc. | Software branch prediction filtering for a microprocessor |
US6499101B1 (en) | 1999-03-18 | 2002-12-24 | I.P. First L.L.C. | Static branch prediction mechanism for conditional branch instructions |
WO2001016702A1 (en) | 1999-09-01 | 2001-03-08 | Intel Corporation | Register set used in multithreaded parallel processor architecture |
DE19945940C2 (de) * | 1999-09-24 | 2002-01-17 | Infineon Technologies Ag | Verfahren und Vorrichtung zur Bearbeitung bedingter Sprungbefehle in einem Prozessor mit PIPELINE-Rechnerarchitektur |
US6546481B1 (en) | 1999-11-05 | 2003-04-08 | Ip - First Llc | Split history tables for branch prediction |
US7681018B2 (en) | 2000-08-31 | 2010-03-16 | Intel Corporation | Method and apparatus for providing large register address space while maximizing cycletime performance for a multi-threaded register file set |
JP2007527050A (ja) * | 2003-07-09 | 2007-09-20 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 分岐予測の方法およびシステム |
JP4009248B2 (ja) | 2003-12-05 | 2007-11-14 | 富士通株式会社 | 分岐予測装置および分岐予測方法 |
EP1739549B1 (en) * | 2004-04-21 | 2011-04-06 | Fujitsu Ltd. | Branch prediction device, method thereof, and processor |
US8443171B2 (en) | 2004-07-30 | 2013-05-14 | Hewlett-Packard Development Company, L.P. | Run-time updating of prediction hint instructions |
US20070186049A1 (en) * | 2006-02-03 | 2007-08-09 | International Business Machines Corporation | Self prefetching L2 cache mechanism for instruction lines |
US8904155B2 (en) * | 2006-03-17 | 2014-12-02 | Qualcomm Incorporated | Representing loop branches in a branch history register with multiple bits |
US7647486B2 (en) | 2006-05-02 | 2010-01-12 | Atmel Corporation | Method and system having instructions with different execution times in different modes, including a selected execution time different from default execution times in a first mode and a random execution time in a second mode |
JP2008165589A (ja) * | 2006-12-28 | 2008-07-17 | Fujitsu Ltd | 情報処理装置 |
JP5012084B2 (ja) | 2007-02-22 | 2012-08-29 | 富士通セミコンダクター株式会社 | 情報処理装置 |
KR20120064446A (ko) | 2010-12-09 | 2012-06-19 | 삼성전자주식회사 | 컴퓨팅 시스템 상의 바이트코드의 분기 처리 장치 및 방법 |
JP5552042B2 (ja) * | 2010-12-27 | 2014-07-16 | インターナショナル・ビジネス・マシーンズ・コーポレーション | プログラム解析の方法、システムおよびプログラム |
US8959320B2 (en) * | 2011-12-07 | 2015-02-17 | Apple Inc. | Preventing update training of first predictor with mismatching second predictor for branch instructions with alternating pattern hysteresis |
CN104156196B (zh) * | 2014-06-12 | 2017-10-27 | 龚伟峰 | 重命名预处理方法 |
US10747539B1 (en) | 2016-11-14 | 2020-08-18 | Apple Inc. | Scan-on-fill next fetch target prediction |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4435756A (en) * | 1981-12-03 | 1984-03-06 | Burroughs Corporation | Branch predicting computer |
JPS6375934A (ja) * | 1986-09-19 | 1988-04-06 | Nec Corp | 情報処理装置 |
JPH0650465B2 (ja) * | 1989-10-16 | 1994-06-29 | 株式会社東芝 | 分岐制御回路 |
US5564118A (en) * | 1992-11-12 | 1996-10-08 | Digital Equipment Corporation | Past-history filtered branch prediction |
JP3599409B2 (ja) * | 1994-06-14 | 2004-12-08 | 株式会社ルネサステクノロジ | 分岐予測装置 |
US5864697A (en) * | 1996-06-28 | 1999-01-26 | Texas Instruments Incorporated | Microprocessor using combined actual and speculative branch history prediction |
US5822575A (en) * | 1996-09-12 | 1998-10-13 | Advanced Micro Devices, Inc. | Branch prediction storage for storing branch prediction information such that a corresponding tag may be routed with the branch instruction |
US5817699A (en) * | 1997-05-30 | 1998-10-06 | Flores; John A. | Process for the preparation of ketamine ointment |
-
1997
- 1997-12-08 CN CNB971085900A patent/CN1153133C/zh not_active Expired - Fee Related
- 1997-12-08 JP JP33708997A patent/JP3760041B2/ja not_active Expired - Lifetime
- 1997-12-08 TW TW086118444A patent/TW380238B/zh not_active IP Right Cessation
- 1997-12-09 KR KR1019970067053A patent/KR100440805B1/ko not_active IP Right Cessation
- 1997-12-09 US US08/987,260 patent/US5928358A/en not_active Expired - Lifetime
- 1997-12-09 DE DE69736164T patent/DE69736164T2/de not_active Expired - Fee Related
- 1997-12-09 EP EP97309925A patent/EP0847004B1/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
KR100440805B1 (ko) | 2004-09-18 |
JP3760041B2 (ja) | 2006-03-29 |
EP0847004B1 (en) | 2006-06-21 |
DE69736164T2 (de) | 2006-11-09 |
DE69736164D1 (de) | 2006-08-03 |
JPH10228377A (ja) | 1998-08-25 |
US5928358A (en) | 1999-07-27 |
KR19980063936A (ko) | 1998-10-07 |
EP0847004A1 (en) | 1998-06-10 |
CN1153133C (zh) | 2004-06-09 |
CN1186981A (zh) | 1998-07-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TW380238B (en) | Information processing apparatus which accurately predicts whether a branch is taken for a conditional branch instruction, using small-scale hardware | |
TW460795B (en) | Method and arrangement for allowing a computer to communicate with a data storage device | |
TWI228657B (en) | Virtual set cache that redirects store data to correct virtual set to avoid virtual set store miss penalty | |
DE69723286D1 (de) | Echtzeitprogramm-sprachbeschleuniger | |
CN102460400A (zh) | 基于管理程序的本地和远程虚拟内存页面管理 | |
TW201246069A (en) | Variable caching structure for managing physical storage | |
CN107077368A (zh) | 用于指令集不可知的运行时架构的系统 | |
CN107077371A (zh) | 通过确保加载不在将要到相同地址的其他加载之前分派的jit(及时)优化实现重排序过程的系统转换器 | |
JP2000298618A (ja) | セットアソシアティブ型キャッシュメモリ装置 | |
CN107077370A (zh) | 执行及时优化器用于执行来自访客镜像的代码的系统转换器 | |
JP2001034537A (ja) | アドレス変換回路 | |
TW200530817A (en) | Cache memory and control method thereof | |
JP2002278752A (ja) | 命令の実行結果予測装置 | |
JP4828879B2 (ja) | キャッシュシステム | |
JP3169596B2 (ja) | データベース管理装置 | |
JPS58161043A (ja) | 命令制御装置 | |
US11537402B1 (en) | Execution elision of intermediate instruction by processor | |
JP4057699B2 (ja) | 記憶システム | |
JP6028393B2 (ja) | 照合プログラム、照合方法および照合装置 | |
JPS63318654A (ja) | 中間バッファリプレ−ス決定方式 | |
JP2716254B2 (ja) | リストベクトル処理装置 | |
CN104156319B (zh) | 数据处理方法和装置 | |
JPH03141444A (ja) | データ処理装置 | |
US20200019405A1 (en) | Multiple Level History Buffer for Transaction Memory Support | |
JPS581247A (ja) | 命令先取り制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GD4A | Issue of patent certificate for granted invention patent | ||
MM4A | Annulment or lapse of patent due to non-payment of fees |