TW295646B - - Google Patents
Download PDFInfo
- Publication number
- TW295646B TW295646B TW084109359A TW84109359A TW295646B TW 295646 B TW295646 B TW 295646B TW 084109359 A TW084109359 A TW 084109359A TW 84109359 A TW84109359 A TW 84109359A TW 295646 B TW295646 B TW 295646B
- Authority
- TW
- Taiwan
- Prior art keywords
- control
- instruction
- instructions
- completion
- dispatch
- Prior art date
Links
- 238000000034 method Methods 0.000 claims description 14
- 238000010586 diagram Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 8
- 230000007246 mechanism Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000002159 abnormal effect Effects 0.000 description 3
- 230000000875 corresponding effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000001276 controlling effect Effects 0.000 description 2
- 244000241257 Cucumis melo Species 0.000 description 1
- 235000015510 Cucumis melo subsp melo Nutrition 0.000 description 1
- FJJCIZWZNKZHII-UHFFFAOYSA-N [4,6-bis(cyanoamino)-1,3,5-triazin-2-yl]cyanamide Chemical compound N#CNC1=NC(NC#N)=NC(NC#N)=N1 FJJCIZWZNKZHII-UHFFFAOYSA-N 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000002079 cooperative effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012421 spiking Methods 0.000 description 1
- 230000001360 synchronised effect Effects 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, look ahead
-
- 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, look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3851—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution from multiple instruction streams, e.g. multistreaming
-
- 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, look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
-
- 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, look ahead
- G06F9/3854—Instruction completion, e.g. retiring, committing or graduating
- G06F9/3858—Result writeback, i.e. updating the architectural state or memory
Description
經濟部中央標準局員工消費合作社印裝 、發明説明( 發明領域 本發明係大致有關微處理器,尤係有關在此種處理器中 對芫成的控制。 發明背景 t制相依性(control dependencies)的處理佔用了許多微處 理器大碍分的邏輯電路,也造成這些微處理器大部分的複 雜丨生 微處理器通常設有用來處理控制相依性的許多機 制,在需要不同層級的岔斷精確度時(例如,浮點产常狀 況的起動/抑制),這些機制必須以極端不同的方式運作, 而2到不同的控制。例如,當—RISC(精簡指令集電腦)處 ,器進入一浮點異常狀況起動模式時,此處理器必須開始 每一次發出一個指令(將導致效能的降低),因而該模式對 指令芫成的要求將大幅影響到處理器的指令派發邏輯電路 0 、在其他的處理器中,總是依照與其他指令配合的順序而 冗成浮點指令,因而使指令完成邏輯電路中之同步性過於 保守(亦即,指令完成邏輯電路的運作好像總是處於= 異常狀況起動模式中在採用指令完成緩衝區的方中 ,由於指令佇列結構的循序性質,所以不可能在單 中冗成大量的指令(例如,如果要知道指令2是否將6 成,必須先知道指令〇及1是否將要完成)。 儿 與指令完成邏輯電路相關的是指令清除邏輯+ _glnglogle)^令完成’即有—正確的控制: (C〇ntr〇l-fl〇w)決定、及一不正確的控制流程:王 此種情 -4- 良紙張尺度適用中國國家榡準(CNS ) A4規格(210X2S»7公着 (請先閱讀背面之注意事項再填寫本頁) '11
2^^64G
五、發明説明(2 形適用於指令分支(branches),和十.由m ^•JL , 仁吓適用於可能引發一異 书狀況(exception)的任何指令(亦卽,古 w _ s ^ ^ u即,有—異常狀況路徑及 —非異常狀況路徑)。雖然過去# 1乐以不同的方式處理這呰 h況,但是控制流程的管理方法有所進展之後,( 常狀況、(非同步)岔斷、及指令分支都非常類似了。’ 因此,傳統的完成控制系統包含—中央控制器,該中央 控制器包含-中央控制佇列,用以容納所有的指令。於執 行這些指令時,這些指令將把資訊送出到控制仵歹卜此中 央控制佇列然後將決定指令執行的適當順序。因爲1中央控 制仵列有若干必須控制的不同活動,^^控财列可^ 成爲程式執行時的主要瓶頸。因,匕’當控制相依性的數目 增加時,將大幅降低微處理器的整體效能。 因此,重要的是提供一種以更有效率的方式處理這些控 制相依性的系統。此種系統應當不增加微處理器的複雜性 。最後,此種系統應該是一種可以很容易利用現有微處理 器設計即可實施之系統。本發明滿足了此種需求。 發明概述 - 經濟部中央標準局員工消費合作社印製 (请先閱讀背面之注意事項存填寫本莨) 、-β 分散式完成(distribute、d completion)是一種控制指令完成 的方法’使容許同時可完成的指令數可以很多(在沒有時 序負擔的情況下),且利用單一的相關性機制處理所有形 式的控制相依性。本發揭露了一種用於微處理器的分散^ 完式控制系統。此種系統包含複數個派發單元,每—派發 單元又包含:一回應一所提取位址之派發佇列,用以接收 指令;複數個控制相依性標記;以及指示裝置,用以指示 -5 ‘紙張尺度適用中國國家標準(CNS ) A4規格(210X297公釐) A7
己將該等控制相依性標記指定給若干適當的指令。此系统 又σ複數個執行單元,用以接受指令及控制相依性標記 0 刀散式元私機制在—超純量(superscalar)處理器中 保持各指令間複雜的控制相依性,而不會有與大型循序佇 列結構相關聯的周期時間負擔。 附圖簡述 β 圖1是一用於微處理器的傳統完成控制系統之方塊圖。 圖2示出微處理器中控制流程決定之表。 ^ 圖3是根據本發明的—派發單元之簡化方塊圖。 圖4是一簡單程式之流程圖。 圖5是圖3所示根據本發明的派發單元之詳細方塊圖。 圖6是一可決定控制相依性資訊的邏輯電路之方塊圖, 该邏輯電路是配合根據本發明的派發單元而使用。 圖7是一包含指令清除邏輯電路的邏輯電路之方塊圖, 該邏輯電路係用於根據本發明的派發單元。 圖8是一用來更新架構暫存器的邏輯電路之方塊圖,該 邏輯電路係用於根據本梦明的派發單元。 本發明之説明 經濟部中央橾準局員工消費合作社印製 C請先閲讀背面之注意事項再填寫本頁} 訂 衣發明係有關一種完成控制系統,此種完成控制系統係用來 控制一微處理器内的指令移動。下列説明的呈現方式可使 對本門技術具有一般知識者作出並使用本發明,且係在本 發明及其要求的情形下提供下列説明。熟悉本門技術者將 易於對較佳實施例作出各種修改,且亦可將本文所述的一 -6- 本紙張尺度適家標準(CNS ):4規格(2ι〇χ297公 經濟部中央裙準局員工消費合作,社印製 A7 _ B7 五、發明説明(4 ) 般性原理應用於其他的實施例。因此’本發明並不受限於 所示之實施例,而是具有最寬廣的範圍,只要其符合本文 所述的原理及特徵。 爲便於舉例説明,假設有一通用型超純量處理器,此處 理器設有若干執行單元,及多個提供指令給這些執行單元 的派發單元。並不一定要有相關的設計點(例如,可不必 顧及與多個派發單元相關聯的指令派發複雜性),而是要 有一個理論上可行的機器,而此機器具有可在不同的設計 點中發現的許多特徵。並假設多個派發單元係用來提取單 一指令執行線(thread)内的多個指令碼段落,換言之,在 各派發單元之間具有指令交付順序的要求(c〇mmissi〇n ordering requirements)。最後,可假設:可在各派發單元之 間分刻的指令碼段落之分割程度(granularity)係處於基本 區段層級,且具有控制相依性關係的各派發單元係有部分 的順序。 圖1是一根據上述假設的傳統完成控制系統(j 〇)之方塊 圖,可將此完成控制系統(1 〇)用於一微處理器中。圖】所 示的完成控制系統(ί 〇 >包含複數個用來接收指令的派發 單元(1 2 )。每一個此種派發單元(丨2 )然後將指令派發到 其適當的執行單元。在本實例中,所示之執行單元係爲若 干執行單tg(14),而各派發單元可將信號傳送到這些執 行單元(14)。此外,每一派發單元(12)又係耦合到一中 央指令完成缓衝區(16)。這些執行單元(14)及中央指令 冗成緩衝區(1 6 )將信號傳送到寫回交付指令邏輯電路(i 8 ) (請先閱讀背面之注意事項再填寫本頁) 訂
A7 B7
^〇S64G 五、發明説明(5 。中央指令完成緩衝區(16)傳送_ d J得运彳5唬,而容許指令交 特定動作。傳統指令完成機制的—個共同 特徵即疋將指令完成視爲決定控制流程並交付〆指令之行 爲。在本實施例中,指令執行率典、人1 7巩仃早又限於可將指令自中央指 々元成緩衝區取出的速率。當微處理器變得更快速,且每 -周期需要處理更多的指令時,在處理此類指令時指令執 行率的此種瓶頸將成爲一大缺點。 岔 時 現在請參閲圖2,圖中示出一代表處理器中一指令所經 歷時間的表。如圖所示,指令可存在於兩種狀態,'亦即預 測式執行及非制式執行。請注意,控職程之決定係與 和令人付刀開。δ —扣令決定其將要採用的可能控制路徑 時(例如,指令分支所進行的方向、_負載是否將要被 斷)’即發生控制流程之決定。請注意,此種情形發生 係與此指令控制所依據的各指令無關。 制 是 保 經濟部中央標準局員工消費合作社印製 爲便於説明本説明書,如果有—個指令Α可作出的控 流程決定,將使指令B所引發的架構狀態改變在架構上 不正確_的,則指令B在控制流程上是依賴指令A的。請 思,一般而T,控制相'依性關係是取決於機器狀態。在 證一指令的執行之後,即發生指令交付。當處理器決定— 才曰令將要被執行時,即交付該指令,亦即容許更新架構暫 存器。此種指令交付點即是預測式.執行與非預測式執行間 之分界點。在交付一指令之後,不得清除該指令。 在一根據本發明的分散式完式控制系統中,於指令派發 時將一特有的指令完成標記指定給每—指令。此外,當— -8- 本紙張尺度適用中國國家標準(CNS ) M規格(Mm97公楚 Α7 Β7 指令在控制流程上係與若干指令相依時,則該指令係與對 i於該等相依指令的表之指令碼完成標記表相關聯。當 經濟部中央榡準局員工消費合作杜印¾ 五、發明説明(6 應 - I·*, ·-w t ·-» Vfy _ 指令作出其控制流程決定時,該指令將其標記傳送到所有 的指令’而此標記是一清除指示碼、或一決定指示碼。如 果一指令接收到其在控制流程上相依的一指令之清除指^ 碼時,則該指令清除其本身。如* —指令接收到其在^ 流程上相依的一指令之決定指示碼時,則將該指令標示爲 已決定。當已決定一指令的所有控制相依性時,即可交付 該指令。在此種方式下,無須徵詢—中央指令完成1單元的 意見,即可將指令交付。 經由根據本發明的複數個派發單元之使用,即可在—處 理單元的設計内改變-特定指令的指令完成要求,而 且其他單元的指令完成介面應保持穩定(例如,如果一浮 點單元的設計在乘法階段中有決定_指令控制流程的時序 問喊,則只須將決定的時點移到下—周期,此時所有的連 都已在適當的位置’所以不會影響到其他的 早凡,當然,效能將會受到影響)。 :示出-可以控制-流程圖格式代表的程式碼,此控制 在-片程式碼可以接續另—片二c爲節點,然後 =二發現:當—指令有多個輸出緣時,"使用 =…處理器然後可利用控制流程資訊來決定適當 圖5是—根據本發明的派發單元⑽)之簡化方塊圖。派
. y. ' 一------------------- 一· - · --- (請先閲讀背面之注意事項再填寫本頁) 五、發明説明( A7 B7 經濟部中央標準局員工消費合作社印製 發早凡(_包含派發佇列⑽),用以依據—提取位址 而自-記憶體⑽)接收指令;—控制相依性標記叫 及-指令完成標I己指定(106)。各指令及其對應的控制相 依性資訊被傳送到執行單元no r Λ 古並- 一 )。每—派發單元(100)將 有其扣疋,...#疋指令的控制相依性標記(10句範園。此 種=式可讓每—派發單元(議)管理其本身指令完成標記 的,用及取消分配,而無須將指令完成標記傳送到任何中 央單元。 ¥ 當處理器決定自—指令追蹤多條路徑時,則處理器利用 開始提取的位址及該路徑中P指令的控制相依性標記 叫而啓動至少—個新的派發單元(100)。如果追蹤兩 條以上的,L ’則啓動其他的派發單元(⑽)(請注意,原 始的派發單元(100)可追蹤彡兩條路徑中的一條路徑)。— 旦啓動了-個派發單元(100)之後,即可處理其程式碼路 ^直到此私式碼路杈結束爲止,此時即可將該派發單元 ㈣分配給另:路徑。—旦—派發單㈣叫正在提 取的程式碼路徑被清除,即將該派^單元⑽)視爲已結 束,且在耗發單元_)的派發彳宁列中並未留有任何指 令。 {圖所τ π —派發單元(i00)被啓動肖,即將一起始位 址(:09从—起始控制相依性標記(no)授與該派發單元(1〇〇: 。提取位址(111}指定此派發單元(⑽)將要處理的程式碼 I始份址。起始控制相依性標記(^〇)即是位於起 始位址⑽)的指令之控制相依性標記。彳多種方法可實 ------ -10 - 本纸張尺度適财_^^T^^iFniG'X297公釐) (請先聞讀背面之注意事項再填寫本頁) ---- --1 - ·
J 、1 經濟部中央標準局員工消費合作杜印製 A7 B7 五、發明説明(8 施圖4所示之指令完成標記分配邏輯電路。將於下文中説 明其中一種方法。 現在請參閱圖5,圖中示出派發單元(100)的詳細方塊圖 。假設將指令完成帛記指定給各指令,並將這些指令放進 派發佇列(202)。如果無法將一標記指定给某—指令,則 不得派發該指令(直到可將一標記分配給該指令爲止)。.實 際決定分配哪些標記的邏輯電路可以是一些解碼邏輯電路 ’其運作万式是先找出第一可用標記,並將該標記給 進入派發抒列(202)的第-指令,然後將第二可用標記指 定給第二指令。 一起指足各個指令完成標記(2〇6)及控制相依性標記(2〇句 ,以便較易找出可分配的那些標記。假設已分配了 一组標 記,則對於控制相依性表及控制相依性標記的產生而言二 只不過是將已指定的標記與已分配的標記結合而已。 我們當可了解,當派發佇列(2〇2)處理指令時,派發佇列 (202)將其已排序的各控制相依性標記(2〇4)及已排序的指 令完成標記(206)非配給對應的指令。控制相依性標記(2〇曰 爲2個位元,其中假設每一個指令完成標記(2〇6)爲让個位 元。此外,在每一機器中可存在的指令數爲介於指令派發 與指令父付間之2^固。在—較佳實施例中,係在指令派發 時將一控制相依性標記(2〇4)指定給每一指令。於派發— 指令時,連同該指令亦派發其指令完成標記(2〇6)、及對 應於該指令控制流程相依的各指令之指令完成標記(亦即 控制相依性標記(204))表。因此,如果瓜個派發單元的每 _____ -11 - 本紙張纽適用中(CNS) 297公釐 (請先閲讀背面之注意事項再填寫本頁)
A7 B7 經濟部中央標準局員工消費合作杜印製 五、發明説明(9 一派發單元都有總共η個不同的可用指令完成標記(2〇6), 則一指令的控制相依性表包含一 η X m位元的匯流排,其 中一表示存在一個控制相依性,而零表示缺少一個控制相 依性。 因此,一指令的完成標記(206)可以是一 η X m位元的匯 流排’其中恰好有一個位元爲導通狀態(表示指定給該指 令的標記),該指令完成標記(206)亦可以是η X m個控制標 記中一個標記之編碼點。各執行單元告知兩個整體位元式 二態匯流排中之一匯流排之控制相依性決定。係將其中一 個匯流排用來告知正確的決定(即決定匯流排),而另一匯 流排則指示應清除與該指令相依的任何指令(即清除匯流 排)。當一指令產生多個控制相依性路徑時,則將一特有 的標i己賦予每一路徑。 每一管線階段(pipeline stage)負責監視微處理器的決定 匯流排及清除匯流排。如果一標記被放進決定匯流排,則 每一階段檢視其現有的(與目前在該階段的指令相關聯之) 控制相依性標記(204),而且如果控制相依性標記(2〇4)存 在,則必須自表中去掉、此控制相依性標記(2〇4)(由於已決 定了控制相依性)。因此,當一指令的控制相依性標記 (204)表是空的(零)時,則可交付該指令。 如果一控制相依性標記(2〇4)被置於清除匯流排中,則每 -階段檢視其控制相依性標記表,而且如果控制相依性標 記(204)存㈣’則抑制其指令的輸出(可能藉由清除該指 令I万式)。%果—階段能夠決定一指令,則該階段利用 (請先閱讀背面之注意事項再填寫本頁)
經濟部中央標準局員工消費合作社印製 A7 B7 五、發明説明(1〇 ) 其現有的控制相依性標記(204)(指定給目前存在於該階段 的指令之特有控制相依性標記(204)),而以三態驅動器起 動決定匯流排及清除匯流排之位元,並輸出適當的値。圖 6 - 8示出用於各種管線階段的各種類型的電路。 圖6是一可決定控制相依性資訊的邏輯電路(300)之方塊 圖,該邏輯電路(300)包含一指令完成邏輯電路(302),可 配合根據本發明的派發單元(100)使用。 圖7是一包含指令清除邏輯電路(402)的邏輯電路〇00)之 方塊圖,該邏輯電路(400)可配合根據本發明的派發單元 (100)使用。 圖8是一用來更新暫存器的邏輯電路(500)之方塊圖,該 邏輯電路(500)可配合根據本發明的派發單元(100)使用。 所有的邏輯電路(300)、(400)及(500)都在每一管線階段 中重複出現,且在電路中佔用極小的面積。其他的指令完 成架構需要圖6-8所tf之指令完成邏輯電路及指令清除邏 輯電路,因此將其簡單的示爲邏輯泡。指令清除邏輯電路 (4〇2)通常提供一可重新設定狀態機之信號,並停止選通 某些種類的有效指令會號。指令完成邏輯電路(502)決定 控制指令將要採用何種方向,且在任何處理器中都需要此 指令完成邏輯電路(502)。 最後,我們當了解,邏輯電路(300)、(400)、及(500)只 是代表可用於各種管線階段的邏輯電路類型。因此,對本 門技術具有一般知識者當可了解,可將各種邏輯電路配合 根據本發明的系統使用,而且這些邏輯電路將在本發明的 -13- 本紙張尺度適用中國國家標準(CNS ) A4規格(210X'297公釐) ________ί-______丁 m 1^1 m n —Μ . . m m '^5 ** (請先閱讀背面之注意事項再填寫本頁)
精神及範圍之内。 因此’根據本發明的系統提供 — 種刀散式完式控制^ 構。利用指令提供控制相依性資訊 ^ ^ ^ 即可實現此種架構, 因此’並不需要中央指令完成的 -^ ^ .. 7控制。因此,每一派發琴 凡都包含該單元是否要交付指令戋 V 4 β除指令的必要資訊。 此種根據本發明的分散式完式系 _ 、、"无保持了 一超純量處理 益中各扣令間複雜的控制相依性關係,但不會產生與大刑 循序仔列結構相關的周期時間負擔。此種完成控制機制^ 成本是與每一指令階段相關聯的大量標記位元,然^,黎 於尺寸縮小的光學雕印面積,此—成本相當小,而且可利 用新科技的優點。 雖然已根據所示之實施例説明了本發明,但是對本門技 術具有一般知識者當可了解,這些實施例尚有各種的變形 ’而且這些變形將仍在本發明的精神及範圍之内。因此, 在不脱離下列申請專利範圍的精神及範圍下,對本門技術 具有一般知識者仍可作出許多修改。 (請先閱讀背面之注意事項再填寫本頁) 訂 經濟部中央標準局員工消費合作社印製 本紙張尺度適用中國國家標準(CNS ) Α4規格(210X 297公t )
Claims (1)
- A8 B8 C8 D8 ¥、申請專利範圍 ΐ· 一種用於微處理器之分散式完成控制系统,包含: 複數個派發單元,每一派發單元又包含:―回應—提 取位址用以接收指令之派發佇列;提供控制相依性資訊 之装置·,以及指示裝置,用以指示已將複數個控制相依 性資訊指定給適當的指令;以及 複數個執行單元,用以接收指令及相關聯的控制相依 性資訊,並容許每一派發單元依據控制相依性資訊而交 付指令。 ν 2·根據申請專利範圍第1項之分散式完成控制系統,其中該 控制相依性資訊包含複數個已排序的指令完成標記、及 複數個已排序的控制相依性標記。 3.根據申請專利範圍第2項之分散式完成控制系統’其中該 派發佇列包含複數個派發佇列單元,用以根據排序之方 式接收指令。 4·根據申请專利範圍第3項之分散式完成控制系統,其中該 等複數個已排序之指令完成標記及該等複數個已排序之 指令完成標記表對應於該等己排序之指令,因而提供了 適當的控制相依性資'訊。 5.根據申請專利範圍第1項之分散式完成控制系統,其中該 控制相依性資訊係用來交付指令。 6·根據申請專利範圍第1項之分散式完成控制系統,其中該 控制相依性資訊係用來決定指令。 7·根據申请專利範圍第1項之分散式完成控制系統,其中該 控制相依性資訊係用來清除指令。 -15- 尽,氏張尺度適用中國國家榇準(CNS ) Α4規格(210 X 297公赛 ----:!Ί ΐ {請先閱讀背面之注意事項再填寫本頁) 訂 經濟部中央榡準局員工消費合作衽印裳 六、申請專利範圍 8 888 ABCD -種用於處理器中之派發單元,包含: 一派發佇列; 控制相依性標記裝置,用以提供控制相依性資訊;以 及 指令冗成標記指定裝置,用以將控制相依性資訊指定 給適當的指令。 9. 根據申請專利範圍第8項之派發單元,其中該控制相依性 資訊包含複數個循序排列的指令完成標記、及複声個循 序排列的控制相依性標記。 10. 根據申請專利範圍第9項之派發單元,其中該派發仔列包 含複數個派發佇列單元,用以根據排序之方式接收指令 8. ^^1· m ί —^n ^ ^^^1 «i 1 J 气 ^-s° __* (請先閱讀背面之注意事項再填寫本頁) 經濟部中央標準局員工消費合作社印製 11. 根據申 依控制 之控制 了適當 12. 根據申 資訊係 13. 根據申 資訊係 14. 根據申 資訊係 請專利範圍第10項之派發單元,其中該等複數個 相依性排序之指令完成標記及該等複數個已排序 相依性標記對應於該等已排序之指令,因而提供 的控制相依性資訊。 請專利範圍第8項之派發單元,其中該控制相依性 用來交付指今> 請專利範圍第8項之派發單元,其中該控制相依性 用來決定指令。 請專利範圍第8項之派發單元,其中隸制相依性 用來清除指令。 -16- 本紙張尺度適用中國國家標準(CNS〉A4規格(2丨οχ2”公羞)
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US37781395A | 1995-01-25 | 1995-01-25 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW295646B true TW295646B (zh) | 1997-01-11 |
Family
ID=23490618
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW084109359A TW295646B (zh) | 1995-01-25 | 1995-09-07 |
Country Status (8)
Country | Link |
---|---|
US (1) | US5822556A (zh) |
EP (1) | EP0724214A3 (zh) |
JP (1) | JPH08241213A (zh) |
KR (1) | KR0175986B1 (zh) |
CN (1) | CN1075647C (zh) |
BR (1) | BR9600109A (zh) |
CA (1) | CA2163691A1 (zh) |
TW (1) | TW295646B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6016540A (en) * | 1997-01-08 | 2000-01-18 | Intel Corporation | Method and apparatus for scheduling instructions in waves |
US6032249A (en) * | 1998-02-02 | 2000-02-29 | International Business Machines Corporation | Method and system for executing a serializing instruction while bypassing a floating point unit pipeline |
US6134645A (en) * | 1998-06-01 | 2000-10-17 | International Business Machines Corporation | Instruction completion logic distributed among execution units for improving completion efficiency |
US6636928B1 (en) * | 2000-02-18 | 2003-10-21 | Hewlett-Packard Development Company, L.P. | Write posting with global ordering in multi-path systems |
US20060090015A1 (en) * | 2004-10-26 | 2006-04-27 | Bradfield Travis A | Pipelined circuit for tag availability with multi-threaded direct memory access (DMA) activity |
US20060206732A1 (en) * | 2005-03-14 | 2006-09-14 | Sony Computer Entertainment Inc. | Methods and apparatus for improving processing performance using instruction dependency check depth |
US8327120B2 (en) * | 2007-12-29 | 2012-12-04 | Intel Corporation | Instructions with floating point control override |
CN101706714B (zh) * | 2009-11-23 | 2014-03-26 | 龙芯中科技术有限公司 | 指令发射系统及方法、处理器及其设计方法 |
GB2514618B (en) * | 2013-05-31 | 2020-11-11 | Advanced Risc Mach Ltd | Data processing systems |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4149243A (en) * | 1977-10-20 | 1979-04-10 | International Business Machines Corporation | Distributed control architecture with post and wait logic |
US4740895A (en) * | 1981-08-24 | 1988-04-26 | Genrad, Inc. | Method of and apparatus for external control of computer program flow |
US4635186A (en) * | 1983-06-20 | 1987-01-06 | International Business Machines Corporation | Detection and correction of multi-chip synchronization errors |
US4903196A (en) * | 1986-05-02 | 1990-02-20 | International Business Machines Corporation | Method and apparatus for guaranteeing the logical integrity of data in the general purpose registers of a complex multi-execution unit uniprocessor |
US5127104A (en) * | 1986-12-29 | 1992-06-30 | Dataflow Computer Corporation | Method and product involving translation and execution of programs by automatic partitioning and data structure allocation |
US4762253A (en) * | 1987-02-17 | 1988-08-09 | Rhh Enterprises, Inc. | Foam dispensing gun |
US4991090A (en) * | 1987-05-18 | 1991-02-05 | International Business Machines Corporation | Posting out-of-sequence fetches |
EP0378415A3 (en) * | 1989-01-13 | 1991-09-25 | International Business Machines Corporation | Multiple instruction dispatch mechanism |
DE3908852A1 (de) * | 1989-03-17 | 1990-09-20 | Deutsch Franz Forsch Inst | Verfahren und einrichtung zur bestimmung der mittleren signalfrequenz einer statistischen folge kurzer schwingungspakete |
US5201056A (en) * | 1990-05-02 | 1993-04-06 | Motorola, Inc. | RISC microprocessor architecture with multi-bit tag extended instructions for selectively attaching tag from either instruction or input data to arithmetic operation output |
US5151981A (en) * | 1990-07-13 | 1992-09-29 | International Business Machines Corporation | Instruction sampling instrumentation |
WO1993020505A2 (en) * | 1992-03-31 | 1993-10-14 | Seiko Epson Corporation | Superscalar risc instruction scheduling |
CA2107305A1 (en) * | 1993-01-08 | 1994-07-09 | James Allen Kahle | Method and system for nonsequential instruction dispatch and execution in a superscalar processor system |
-
1995
- 1995-09-07 TW TW084109359A patent/TW295646B/zh active
- 1995-11-24 CA CA002163691A patent/CA2163691A1/en not_active Abandoned
- 1995-12-20 EP EP95480195A patent/EP0724214A3/en not_active Withdrawn
- 1995-12-29 KR KR1019950067118A patent/KR0175986B1/ko not_active IP Right Cessation
-
1996
- 1996-01-04 CN CN96100607A patent/CN1075647C/zh not_active Expired - Fee Related
- 1996-01-16 BR BR9600109A patent/BR9600109A/pt not_active Application Discontinuation
- 1996-01-22 JP JP8008029A patent/JPH08241213A/ja active Pending
-
1997
- 1997-04-16 US US08/840,807 patent/US5822556A/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN1075647C (zh) | 2001-11-28 |
EP0724214A2 (en) | 1996-07-31 |
CA2163691A1 (en) | 1996-07-26 |
EP0724214A3 (en) | 1997-06-18 |
CN1136181A (zh) | 1996-11-20 |
US5822556A (en) | 1998-10-13 |
JPH08241213A (ja) | 1996-09-17 |
KR960029964A (ko) | 1996-08-17 |
BR9600109A (pt) | 1998-01-27 |
KR0175986B1 (ko) | 1999-05-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TW476915B (en) | Method and apparatus for thread switching within a multithreaded processor | |
TW397953B (en) | Method for executing speculative load instructions in high-performance processors | |
JP3547482B2 (ja) | 情報処理装置 | |
US5721855A (en) | Method for pipeline processing of instructions by controlling access to a reorder buffer using a register file outside the reorder buffer | |
TW554287B (en) | Method and apparatus for managing resources in a multithreaded processor | |
JP4170292B2 (ja) | データの投機的実行をサポートするマイクロプロセッサで用いるスケジューラ | |
TWI265406B (en) | Microprocessor employing a performance throttling mechanism for power management | |
CN100357884C (zh) | 用于处理指令的方法、处理器以及系统 | |
US5887161A (en) | Issuing instructions in a processor supporting out-of-order execution | |
EP1152329A1 (en) | Method and apparatus for identifying splittable packets in a multithreated vliw processor | |
TW295646B (zh) | ||
JP2006260571A (ja) | デュアルスレッドプロセッサ | |
CN105164650A (zh) | 用于改善连续的事务性存储器区的吞吐量的系统、方法和装置 | |
DE102014108785A1 (de) | Vorausschauendes abrufen und decodieren bei ausgewählten anweisungen | |
TW200849091A (en) | Universal branch identifier for invalidation of speculative instructions | |
US6463524B1 (en) | Superscalar processor and method for incrementally issuing store instructions | |
US6247117B1 (en) | Apparatus and method for using checking instructions in a floating-point execution unit | |
CN112534403A (zh) | 微处理器中存储指令融合的系统和方法 | |
US6643767B1 (en) | Instruction scheduling system of a processor | |
TW408269B (en) | A method and system for handling multiple store instruction completions in a processing system | |
DE102014108738A1 (de) | Vorausschauendes Abrufen und Decodieren bei ausgewählten Rückkehranweisungen | |
JP3142813B2 (ja) | レジスタの名前変更を管理するための情報処理システムおよび方法 | |
CN100524202C (zh) | 利用改进指令目的地标记的数据处理系统、处理器和方法 | |
JPH10283179A (ja) | 命令識別子を使用して命令順序を判定するためのデータ処理システムおよび方法 | |
JPH10154073A (ja) | データ依存性を管理する装置及び方法 |