TW201015435A - Power aware retirement - Google Patents

Power aware retirement Download PDF

Info

Publication number
TW201015435A
TW201015435A TW098120442A TW98120442A TW201015435A TW 201015435 A TW201015435 A TW 201015435A TW 098120442 A TW098120442 A TW 098120442A TW 98120442 A TW98120442 A TW 98120442A TW 201015435 A TW201015435 A TW 201015435A
Authority
TW
Taiwan
Prior art keywords
instruction
logic
information
signal
early
Prior art date
Application number
TW098120442A
Other languages
English (en)
Other versions
TWI407369B (zh
Inventor
Zeev Sperber
Rafi Marom
Ofer Levy
Original Assignee
Intel 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 Intel Corp filed Critical Intel Corp
Publication of TW201015435A publication Critical patent/TW201015435A/zh
Application granted granted Critical
Publication of TWI407369B publication Critical patent/TWI407369B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/3854Instruction completion, e.g. retiring, committing or graduating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/3854Instruction completion, e.g. retiring, committing or graduating
    • G06F9/3856Reordering of instructions, e.g. using queues or age tags
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/3854Instruction completion, e.g. retiring, committing or graduating
    • G06F9/3858Result writeback, i.e. updating the architectural state or memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/3861Recovery, e.g. branch miss-prediction, exception handling
    • G06F9/3865Recovery, e.g. branch miss-prediction, exception handling using deferred exception handling, e.g. exception flags
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Advance Control (AREA)
  • Power Sources (AREA)

Description

201015435 六、發明說明: 【發明所屬之技術領域】 本發明係關於具功耗意識之指令引退。 【先前技術】 接收指令、執行指令、以及提供指令的結果之各階構 成了現代的微處理器。許多現代的架構係基於亂序(Out-0 Of-Order ;簡稱000 )實施,其中可以亂序之方式執行各 指令,且梢後將結果依序提交給處理器的一架構狀態。 爲了實現此種亂序操作,可將處理器管線分成不同階 。在這些階完成了指令的處理時,一指令引退( retirement )階可操作而確認執行的結果是有效的(亦即 ,並非推測的結果或基於錯誤的資料),且確認並未發生 錯誤或異常。在許多處理器架構中,於每一指令引退週期 中,整個指令引退邏輯是現用的,因而自所有相關聯的陣 φ 列讀取所有相關聯的資料’且針對每一指令而動用全部的 指令引退邏輯。該活動之目的在於產生一保證信號並執行 與指令引退有關的操作,其中包括事件計算及優先順序設 定。 然而,在大部分的週期中’沒有任何事件發生’因而 無須計算事件。因此’有了適當操作時不需要的明顯的功 率消耗。 【發明內容及實施方式】 -5- 201015435 在各實施例中,可藉提供各指令引退資源的分割使得 只針對操作的有意義部分供電給這些資源之最少量的資源 ,而可控制處理器的指令引退邏輯來以一種功率敏感性( power sensitive)方式操作。就這一點而言,可分割各陣 列或緩衝區等及邏輯,以便適應此種操作。雖然本文所述 的實施例是在重新排序緩衝區(reorder buffer ;簡稱 ROB )的環境下,但是本發明之範圍不限於此方面,且實 施例可與給定處理器可能有的各種指令引退邏輯共用。 爲了實現電力的優點,與將在每一指令引退期間中發 生的正常指令引退活動相關聯之這些陣列及邏輯之分割區 可以相當小,因而消耗最小的電力。相比之下,在需要在 引退指令中執行與各事件相關聯的額外計算之較罕見之情 形中,可供電給較大的陣列及邏輯。在此種方式下,可視 需要而執行所需的操作,同時只需針對大多數的指令引退 操作供電給最少的指令引退邏輯。雖然本說明書大致當作 指令引退來說明,但是我們應可了解:在各實施例中,指 令可能意指所謂的微運算(uop ),其中諸如一巨集指令 (macro instruction )的單一使用者層級的指令可被分成 複數個微運算。 ROB執行諸如異常處理、指令指標(例如,EIP/UIP )計算、效能監視器(PMON )計算、以及暫存器更新等 與指令引退有關之控制。除了偵測錯誤之外,ROB具有 其它在無錯誤被偵測且在指令引退時實施的與正常指令引 退有關的工作。這些工作包括諸如將新的被引退之値寫到 -6 - 201015435 未被重新命名的暫存器、計算狀態位元、更新各新値(例 如,資料中斷點位元、命令及狀態暫存器異常、精確度異 常等)、以及更新效能監視器等的在一有效指令引退之後 執行的操作。根據本發明實施例的一具功耗意識之指令引 退機制可至少部分地根據自外部及內部(對R〇B而言) 指示得到的靜態及動態資訊,而只在需要時選擇性地控制 ROB的對功耗有不同需求的單元。 換言之,藉陣列及邏輯的一些分割區可處理只需最小 量的功耗之主流正常指令引退工作,而只在需要時’由這 些陣列及邏輯的較完整之分割區處理諸如事件處理(例如 ,錯誤、陷阱(trap )、異常、中斷)等的罕見情況。在 此種方式下,於需要時,可正常地操作必須在全效能環境 下操作的諸如PMON的特殊模式,且於非現用狀態時進入 省電狀態。各實施例因而可藉減少實現指令引退所需的計 算量,而允許頻率不可中斷之指令引退時的較大引退寬度 〇 現在請參閱第1圖’圖中不出根據本發明的一實施例 的處理器之方塊圖。如第1圖所示,處理器100可以是一 多階管線化亂序處理器。處理器1 〇〇以第1圖之一較簡化 的圖顯示,以便解說配合將於下文中說明的具功耗意識之 指令引退操作之各種特徵。 如第1圖所示,處理器100包含前端單元110,該等 前端單元110可被用來提取將要被執行的巨集指令,並準 備該等巨集指令,以供稍後用於該處理器。例如,前端單 201015435 元110可包含一指令預先提取器、一指令解碼器 快取記憶體(trace cache )、微碼儲存器、以及· 存器。該指令預先提取器可自記憶體提取巨集指 該等巨集指令傳送到指令解碼器,以便將該等巨 碼爲原語(primitive)(亦即,微運算),以供 執行。該追蹤快取記憶體可取得被解碼的微運算 等微運算組合成程式順序序列,以便儲存到巨集 。然而,在複雜巨集指令之情形中,該微碼儲存 執行操作所需的微運算。當然,可在前端單元1] 一些額外的組件及特徵。 一亂序引擎115被耦合到前端單元110與 120之間,亂序引擎115可被用來接收該等微指 備該等微指令以供執行。更具體而言,亂序引擎 含各種緩衝區,用以重新排序微指令流,並分配 的各種資源,且提供將各邏輯暫存器重新命名爲 器檔130及延伸暫存器檔135的種種暫存器檔內 置。暫存器檔130可包含用於整數及浮點運算的 器檔。延伸暫存器檔135可提供用於向量大小的 如,每暫存器256或512位元)之儲存。 除了其他專用硬體外,執行單元1 20中可設 如各種整數、浮點、及單一指令多重資料 Instruction Multiple Data ;簡稱 SIMD)邏輯單 資源。結果可提供給指令引退邏輯,亦即,重新 區(ROB) 140,而ROB 140可以一種具功耗意 、一追蹤 一 uop 儲 令,並將 集指令解 該處理器 ,並將該 碼儲存器 器可提供 ί 0中實施 執行單元 令,並準 1 1 5可包 執行所需 諸如暫存 之儲存位 獨立暫存 單位(例 有包括諸 (Single 元的各種 排序緩衝 識之方式 201015435 操作。更具體而言,ROB 140包含各種陣列及邏輯, 接收與被執行的指令相關聯之資訊》ROB 140然後檢 資訊,以便決定是否可有效地使指令引退並將結果資 交給該處理器的架構狀態、或者是否發生了阻止指令 當引退之一或多個異常。當然,ROB 140可處理與指 退相關聯的諸如本發明中述及的各種事件及計算等的 操作。 φ 如第1圖所示,ROB 140可包含各種陣列,包括 多個被賦能的陣列142、以及一或多個隨選陣列144 等被賦能的陣列可經常性被供電,且可包含與指令相 的最小量之資訊。如將於下文中進一步說明的,在一 實施中,分配陣列及一寫回(WB )陣列的獨立分割 對應於被賦能的陣列1 42。同樣地,隨選陣列1 44可 包含與微運算相關聯的額外資訊的此等陣列的分割區 可只有在需要處理與給定指令相關聯的事件時才被供 φ 又如第1圖所示,ROB 140進一步包含被賦能的邏輯 。此種被賦能的邏輯可經常性被供電,且可用來處理 的指令引退操作。相比之下,隨選邏輯148只有在需 理諸如錯誤、中斷、分支錯誤預測、效能監視、及更 的正常指令引退以外的事件時才被賦能。如第1圖所 ROB 1 40被耦合到一快取記憶體1 5 0,該快取記憶體 在一實施例中可以是一低階快取記憶體(例如,L 1 記憶體),但是本發明之範圍不限於此方面。此外, 單元1 20可被直接耦合到快取記憶體1 5 〇。可自快取 用以 查該 料提 的適 令引 其他 一或 。該 關聯 特定 可 以是 ,且 電。 146 正常 要處 新等 示, 150 快取 執行 記憶 -9- 201015435 體1 50進行與較高階快取記憶體及系統記憶體等的記憶體 之資料通訊。雖然第1圖中以高階方塊圖之方式示出該實 施例’但是我們應可了解:本發明之範圍不限於此.方面。 在一般性的操作時,該ROB決定指令引退期間的微 運算是否需要讀取該等ROB陣列的一特定部分,或是否 需要將一特定的邏輯賦能(其中該等特定的資源需要較大 的功耗,且執行正常指令引退以外的操作)。可於分配時 靜態地作出該決定,或者於寫回時動態地作出該決定。例 如,如果並未偵測到靜態事件(於分配時)或動態事件( 於寫回時),則無須啓動事件邏輯。此外,如果效能監視 器組並未處於現用狀態,則可於分配時靜態地偵測到該狀 態,且於指令引退時不應讀取與效能監視器計算相關聯的 資料,而且無須將計算效能監視器値的邏輯賦能。 除非特定的操作被識別且被特別賦能,否則該ROB 通常將只專注於正常指令引退的主流活動。此種具功耗意 識之機制通常只將無事件的且正常的微運算指令引退所需 之邏輯賦能,且在識別出有需要之前將停止供電給所有其 他的邏輯。 爲了將一具功耗意識之ROB賦能,各實施例可分割 各種資源,例如,將陣列分成兩部分:一陣列在每一指令 引退中被讀取’且另一陣列只在依需求時(例如,於效能 監視器操作、中斷、錯誤等狀況時)被讀取。然後,用來 識別針對每一種類型的功能(例如,唯有事件或唯有效能 監視器等的功能)將讀取每一陣列的哪一部分之邏輯可被 -10- 201015435 用來供電給適當的資源。此外,可分割該指令引退邏輯, 以便在與操作種類相關聯的類型引退時,特別地將每一部 分賦能。 在正常的情形中,當未偵測到猜測式事件時,可在微 運算可有效引退且錯誤邏輯不進行計算時,立即在用來指 示該等微運算可有效引退且不會發生錯誤或異常的一指令 引退期間中使一保證信號處於現用狀態。因此,可較快速 Φ 地釋出該保證信號,諸如快了一或多個週期,因而可將該 保證信號稱爲早期保證信號。然而,當偵測到一猜測式事 件時,並不在該時間產生該早期保證信號,反而將由依需 求被賦能的邏輯產生用來指示該等微運算無法有效引退之 —(晚期)保證信號、或殺光(nuke )信號或無效信號。 現在請參閱第2圖,圖中示出根據本發明的一實施例 的指令引退邏輯之一方塊圖。如第2圖所示,可對應於一 ROB之一指令引退單元200可具有被分割爲多個部分之 φ 各種資源,其中一第一分割區可經常性地被賦能,以便在 每一指令引退期間執行操作,且可只在需要時間歇性地將 一第二分割區賦能,以便處理具有各種與指令引退相關聯 的事件之指令引退。如第2圖所示,指令引退單元200包 含一分配陣列2 1 0。分配陣列2 1 0可接收與分配期間的各 微運算相關聯之輸入資訊。雖然本發明之範圍不限於這方 面,但是該資訊可對應於諸如運算類型(分支、載入、儲 存、浮點、或整數運算)或與微運算相關聯的異常類型等 的與微運算相關聯的靜態資訊。如第2圖所示,分配陣列 -11 - 201015435 2 1 〇可被分割爲組態可被設定爲經常性的現用狀態之一第 一分割區212、以及只有在需要時(亦即,隨選之方式) 才被賦能之一第二分割區214。如圖所示,第一分割區 2 1 2之相對大小可遠小於第二分割區2 1 4的大小。因此, 可使經常性地被供電的部分較小,而減少功率消耗。爲達 到此一目的,可以只將每一微運算的最小量之資訊儲存在 第一分割區212。例如,可儲存每一微運算的一單一位元 ,用以指示該微運算的額外的資訊是否被儲存在第二分割 @ 區214。因此,如果~微運算被認爲是可在無須任何類型 的事件處理之情形下正常引退的一微運算,則第一分割區 2 1 2中之該相關聯的位元可處於第一狀態(例如,邏輯零 ),但是如果處於第二狀態(例如,邏輯1 ),則該狀態 指示與該微運算相關聯的額外之資訊被儲存在第二分割區 214 ° 同樣地,寫回(WB )陣列220可被耦合成在與微運 算相關聯的寫回時接收資訊。因此,在一執行單元中執行 @ 一給定微運算時,可將其中包括計算出的値以及狀態旗標 或包括錯誤或其他異常資訊之其他此類資訊之各種結果資 訊提供給寫回陣列2 2 0。如第2圖所示,寫回陣列2 2 0也 被分割爲兩部分,亦即,一第一分割區222及一第二分割 區224。這些分割區可以與前文中參照分配陣列210所述 之相同方式儲存資訊。 仍然請參閱第2圖,可將一早期邏輯230耦合到陣列 2 1 0及220,以便自該等陣列接收賦能信號。如第2圖中 -12- 201015435 進一歩示出的,早期邏輯230可被耦合成自該處理器的其 他部分接收全域事件資訊。雖然本發明之範圍不限於這方 面,但是這些全域事件可對應於中斷、監聽、或其他事件 。早期邏輯230之組態可被設定爲接收該資訊並決定是否 可產生一早期保證信號。亦即,如果並未接收到與一指令 引退期間相關聯的全域事件,且來自陣列2 1 0及220的該 等被賦能的第一分割區之値指示並無與該指令引退期間的 φ 該等微運算相關聯之資訊被儲存在該等第二分割區中,此 即意指沒有要被處理的事件且可執行一正常的指令引退。 因此,早期邏輯230產生該早期保證信號’且該早期保證 信號將以下文中進一步說明之方式被提供給一輸出邏輯 250。在此種方式下,早期邏輯230在實質上被用來作爲 一邏輯“或”閘。 如果早期邏輯230的各種這些輸入之任何輸入反而指 示無法產生該早期保證信號,則可啓動陣列2 1 0及220的 φ 該等第二分割區,以便可將對應於該指令引退期間、來自 這些陣列的資訊傳送到一事件邏輯240,該事件邏輯240 通常意指被用來執行與指令引退相關的操作之邏輯。 因此,在無法產生該早期保證信號時,可將事件邏輯 24 0賦能,以便可執行與指令引退期間相關聯的事件處理 。此外,可根據被儲存在該第二分割區之資訊’而供電給 無事件指令引退邏輯245,以便執行諸如因被錯誤預測的 分支而造成之指令指標更新、或於分配時或指令引退時接 收到的效能監視器指示等的與指令引退相關的操作。雖然 -13- 201015435 在第2圖所示之實施例中爲了易於圖示而並未示出,但是 我們應可了解:在各實施例中,事件邏輯2 40本身可被分 割爲各種部分,以便可以只啓動該邏輯中用來處理一給定 類型的指令引退或事件處理之最小部分。因此,當資訊指 示需要事件邏輯240中的一給定部分來處理事件處理時, 可以只供電給事件邏輯240之該部分。 事件邏輯240可產生將被提供給輸出邏輯2 50之一輸 出。如果計算指示該指令引退期間是有效的,則該輸出可 對應於一保證信號。請注意,可將該保證信號視爲可在早 期邏輯23 0中產生的早期保證信號之後一或多個週期才產 生的一晚期保證信號。如果根據在事件邏輯240中被執行 的計算而決定諸如由於錯誤、中斷、或錯誤預測等的因素 而無法使該指令引退期間有效地引退,則可替代地將將一 無效或殺光信號傳送到輸出邏輯250,且將由將按照程式 順序但可在不同於原始速率的一速率(例如,使用正常指 令引退速率時的每一時脈引退單一的微運算,而非每一時 脈引退四個微運算)下操作的一不同之邏輯處理指令引退 〇 可以是一有限狀態機(Finite State Machine ;簡稱 FSM)之輸出邏輯250可因而自早期邏輯230及事件邏輯 240接收這些不同的信號。輸出邏輯250可被用來將這些 不同的信號串列化,以便按照程式順序自輸出邏輯25 0發 出該等信號。亦即,並不是亂序地執行指令,而是輸出邏 輯250可保證可能在一較早的指令引退期間中比事件邏輯 201015435 240的保證或無效信號早一或多個週期接收到的早期保證 信號不會在該信號之前發出。換言之’輸出邏輯250按照 每一指令引退期間的順序輸出信號’不論這些信號是起源 於早期邏輯2 30或事件邏輯240都是如此。 在各實施例中,輸出邏輯250可被耦合到一處理器的 諸如控制邏輯的各種其他資源’以便能夠在產生了 一保證 信號時將執行結果有效地提交給該處理器的架構狀態’並 φ 在替代地產生了 一無效信號時,使錯誤進行其中包括可能 地清除各種處理器資源之其他適當的異常處理。 因此,如第 2圖所示,各種陣列被分割爲經常性地 被讀取之第一分割區、以及選擇性地被讀取之第二分割區 。同樣地,指令引退單元 200之邏輯可被分爲經常性地 處於現用狀態之邏輯,且該邏輯被用來決定是否發生了與 一指令引退期間相關聯的事件,且如果確係如此,則決定 應使哪一額外的指令引退邏輯被賦能。雖然第2圖之實施 ❹ 例示出該特定的實施方式,但是本發明之範圍不限於此方 面。 此外,若要槪述一下於分配時的操作,則可計算出用 來界定哪一分割區需要被讀取的靜態資訊,並將該靜態資 訊儲存在分配陣列 2 1 0,且尤係儲存在第一分割區 212 中。對寫回資訊執行類似的操作,且可將該寫回資訊儲存 在寫回陣列 220,且尤係儲存在第一分割區 222中。然 後,於指令引退時,讀取該資訊,且由早期邏輯 230作 出要讀取哪一陣列以及要將哪一邏輯賦能之決定。此外, -15- 201015435 早期邏輯230亦可檢查諸如中斷或監聽等的外部事件, 以便決定是否需要將另一陣列或邏輯賦能。在識別了需要 執行一工作且需要自先目未被讀取的該等陣列中之一陣列 之額外的資訊之情形中’則讀取分配的特定部分或寫回陣 列,並將用來執行該工作之額外的邏輯賦能。 現在請參閱第 3圖,圖中示出根據本發明的—實施 例的一方法之一流程圖。如第3圖所示,可將方法3 〇〇 用來以一種具功耗意識之方式引退指令。方法300開始 © 時,可在方塊 310中於指令分配時接收靜態資訊,並將 該資訊儲存在一分配緩衝區的被選擇之部分。例如,如前 文所述,如果該靜態資訊指示錯誤或異常是不可能發生的 ,則可在該分配緩衝區的一較小之第一部分中設定諸如一 單一位元等的一指示碼,用以指示並無與該指令相關聯的 額外的資訊被儲存在該分配緩衝區的一第二部分中。如果 該靜態資訊反而指示於指令引退時由於諸如錯誤、效能監 視、或其他原因而可能需要額外的處理,則可將該指示碼 @ 設定成指示額外的資訊被儲存在該第二分割區中。在方塊 3 20中,可進行與在指令寫回時被接收的動態資訊有關 之類似操作,並將該動態資訊儲存在被類似地配置之一寫 回緩衝區。 仍然請參閱第 3圖,在菱形 330中,可(於指令 引退時)決定與一給定指令引退期間相關聯、在該等緩衝 區的該等第一部分中之資訊是否指示需要額外的指令引退 或事件處理。亦即,可根據該第一部分中之對應的指示碼 -16- 201015435 之狀態而決定是否需要此種指令引退處理(例如,IP更 新或效能監視)或事件處理(例如,各種計算、或錯誤或 中斷處理等)。如果並非如此,則控制進入菱形 340, 此時可決定是否接收到與該指令引退期間相關聯的全域信 號。如前文所述,該全域信號可對應於一中斷、監聽、或 其他全域事件。如果並未接收到該信號,則例如早期邏輯 可在方塊 350中發出一早期保證信號。 φ 仍然請參閱第 3圖,如果反而決定需要額外的指令 引退或事件處理或接收到了 一全域信號,則控制自菱形 330或 340進入方塊 360,此時可啓動分配及寫回緩 衝區之額外的部分。控制然後進入方塊 370,此時可在 事件邏輯的一或多個被啓動的部分中執行該處理。如前文 所述,可根據所提供的額外之資訊而將各種指令引退或事 件邏輯賦能,以便執行各種計算或其他的處理,而決定是 否可產生一晚期保證信號。因此,在方塊 380中,該事 φ 件邏輯之輸出可以是一晚期保證信號或一無效(例如,殺 光)信號。 又如第 3圖所示,控制自方塊 350及 380進入 方塊 390,此時可將該等不同的信號串列化,以供自該 指令引退單元輸出。亦即,爲了保持各指令引退期間的連 續性,較晚的指令引退期間中產生的早期保證信號禁止被 放置在與較早的指令引退期間相關聯的晚期保證信號或無 效信號之前。雖然第 2圖之實施例示出該特定的實施方 式,但是本發明之範圍不限於此方面。 -17- 201015435 例如’如果決定需要對指令引退執行特殊處理,則可 以不同於正常之方式處理被引退的微運算。假設在未發生 任何事件的情形中通常將引退8個微運算。當在指令引 退期間中偵測到一事件時,可替代地使每一微運算分別地 引退’因而單一的微運算只需要單一組的事件邏輯。如果 指令引退是較快速的,則上述方式可進一步提供功耗降低 及一致的效能。然而,在決定啓動某些邏輯之後的指令引 退操作可在不同於原始速率之一速率下進行。 不再需要的事件之一例子可以是被設定的一黏著位元 (sticky bit)。因此,不需要再度設定該黏著位元,因而 不需要將執行該重複設定的事件邏輯賦能。另一個此種例 子是:將用來識別無錯誤操作的早期信號加入的時間早到 將不執行與該早期信號相關聯的操作。例如,可宣告一浮 點運算(FP )是安全的時間早到任何異常處理邏輯仍未被 賦能。在諸如效能監視器處理及共處理器狀態儲存之情形 中,ROB將讀取其存放的資料陣列,執行與該操作相關 聯的工作,但是在並未偵測到任何錯誤的情形中,該 ROB將不檢查錯誤,且不啓動與錯誤相關聯的邏輯。 可在許多不同的系統類型中實施各實施例。現在請參 閱第 4圖,圖中示出根據本發明的一實施例的一系統之 一方塊圖。如第 4圖所示,多處理器系統 500是一點 對點互連系統,且包含經由一點對點互連 550而被耦合 之一第一處理器 5 70及一第二處理器 580。如第 4圖 所示,處理器 570及 5 80中之每一處理器可以是多核 201015435 心處理器,其中包含第一及第二處理器核心(亦即, 器核心 574a及 5 74b、以及處理器核心 5 84a及 )。每一處理器核心可包含諸如第 1及 2圖所示 來根據根據本發明的一實施例而能夠進行具功耗意識 令引退之邏輯。 仍然請參閱第 4圖,第一處理器 5 70進一步 —記憶體控制中心(Memory Controller Hub ;簡稱 φ ) 572、以及點對點(ρ_ρ)介面576及578。同樣 第二處理器 580包含一MCH 582、以及 Ρ-Ρ 586及 588。如第 4 圖所示,MCH 572及 582 等處理器耦合到各別的記憶體,亦即,耦合到一記 5 3 2及一記憶體 53 4,該等記億體可以是在本地被 到個別的處理器的主記憶體(例如,一動態隨機存取 體(DRAM )之一部分。第一處理器570及第二處 5 8 0可分別經由點對點互連5 5 2及5 5 4而被耦合 φ 晶片組59〇。如第4圖所示,晶片組5 90包含點 (P-P )介面 594 及 598。 此外,晶片組 5 90包含一介面 5 9 2,用以將晶 590耦合到一高效能圖形引擎 53 8。晶片組590 經由一介面 5 9 6而被耦合到一第一匯流排 5丨6。 4圖所示,各種輸入/輸出裝置514以及一匯流排 器5 1 8可被耦合到第一匯流排 5 1 6,該匯流排橋 5 1 8將第一匯流排5丨6耦合到一第二匯流排520 中包括諸如一鍵盤/滑鼠522、通訊裝置526以及 處理 5 84b 的用 之指 包含 MCH 地, 介面 將該 憶體 附接 記憶 理器 到~ 對點 片組 又可 如第 橋接 接器 。其 諸如 -19- 201015435 一磁碟機或其他大量儲存裝置等的一資料儲存單元 528 等的各種裝置可被耦合到第二匯流排520,而在一實施 例中,該資料儲存單元 528可包含碼 530。此外,一音 訊輸入/輸出裝置524可被耦合到第二匯流排520。 可以程式碼實施各實施例,且該程式碼可被儲存在一 儲存媒體’該儲存媒體中儲存有指令,該等指令可被用來 將一系統程式化成執行該等指令。該儲存媒體可包括(但 不限於)其中包含光碟、唯讀光碟(CD-ROM )、可覆寫 式光碟(CD-RW )、及磁光碟之任何類型的碟形儲存媒體 、諸如唯讀記憶體(ROM )、諸如動態隨機存取記憶體( DRAM )及靜態機存取記憶體(SRAM )等的隨機存取記 憶體(RAM )、可抹除可程式唯讀記億體(EPROM )、 快閃記憶體、及電氣可抹除可程式唯讀記憶體(EEPROΜ )等的半導體裝置、磁性或光學卡、或適於儲存電子指令 之任何其他類型的媒體。 雖然已參照有限數目的實施例而說明了本發明,但是 熟悉此項技術者應可了解:可作出本發明的許多修改及變 化。最後的申請專利範圍將涵蓋在本發明的真實精神及範 圍內之所有此類修改及變化。 【圖式簡單說明】 第 1圖是根據本發明的一實施例的一處理器之一方 塊圖。 第2圖是根據本發明的一實施例的指令引退邏輯之 -20- 201015435 一方塊圖。 第 3圖是根據本發明的一實施例的一方法之一流程 圖。 第 4圖是根據本發明的一實施例的一系統之一方塊 圖。 【主要元件符號說明】 el 〇〇 :處理器 1 1 0 :前端單元 1 15 :亂序引擎 120 :執行單元 130 :暫存器檔 1 3 5 :延伸暫存器檔 140 :重新排序緩衝區 142 :被賦能的陣列 φ 144 :隨選陣列 146 :被賦能的邏輯 148 :隨選邏輯 1 5 0 :快取記憶體 2〇〇 :指令引退單元 2 1 〇 :分配陣列 2 1 2,222 :第一分割區 2 1 4,224 :第二分割區 2 2 0 :寫回陣列 -21 - 201015435 25 0 :輸出邏輯 2 4 0 :事件邏輯 245 :無事件指令引退邏輯 500 :多處理器系統 5 5 0,5 5 2,5 5 4 :點對點互連 5 7 0 :第一處理器 5 80 :第二處理器 574a,574b,584a,584b :處理器核心 5 7 2,5 8 2 :記憶體控制中心 576,578,586, 5 8 8,5 94,5 9 8 :點對點介面 5 3 2,5 3 4 :記憶體 5 90 :晶片組 592,596·•介面 5 3 8 :高效能圖形引擎 5 1 6 :第一匯流排 514:輸入/輸出裝置 5 1 8 :匯流排橋接器 5 2 0 :第二匯流排 5 2 2 :鍵盤/滑鼠 5 2 6 :通訊裝置 5 2 8 :資料儲存單元 5 3 0 :碼 524:音訊輸入/輸出裝置 -22-

Claims (1)

  1. 201015435 七、申請專利範圍: 1 · ~種裝置,包含·· 一指令引退單元’用以引退執行後的指令,該指令引 退單元包含: 第一陣列,用來在該等指令分配時接收第一資訊 ’該第一陣列被分割爲將在每一指令引退期間被讀取的第 一部分、以及將依需求被讀取的第二部分; φ 第二陣列,用來在該等指令執行後接收第二資訊 ’該第二陣列被分割爲將在每—指令引退期間被讀取的第 一部分、以及將依需求被讀取的一第二部分;以及 隨選邏輯,用來在與被執行的指令相關聯之資訊 被儲存在該第一陣列或該第二陣列之該第二部分時’計算 與該被執行的指令相關聯之事件。 2. 如申請專利範圍第1項之裝置,其中如果一計 算指示出一被執行的指令沒有錯誤’則該隨選邏輯將產生 φ 該被執行的指令之一保證信號,且如果該錯誤被指示出’ 則該隨選邏輯將產生一無效信號。 3. 如申請專利範圍第2項之裝置’進一步包含早 期邏輯,其被耦合到該第一及第二陣列的輸出且根據該第 ~及第二陣列的該第一部分中之資訊而輸出一第一被執行 的指令之一早期保證信號。 4. 如申請專利範圍第3項之裝置’其中該早期邏 輯被進一步稱合成接收全域事件資訊並啓動回應該全域事 件資訊的該隨選邏輯。 -23- 201015435 5. 如申請專利範圍第3項之裝置’進一步包含被 耦合到該隨選邏輯及該早期邏輯之輸出邏輯,用以串列化 該早期保證信號、以及保證信號或該無效信號。 6. 如申請專利範圍第4項之裝置’其中該早期邏 輯將根據存在於該第一陣列的該第一部分的對應於該指令 引退期間的一指示碼之狀態而啓動該第一陣列之該第二部 分。 7. 如申請專利範圍第1項之裝置,其中該第一陣 列包含一分配陣列’且該第二陣列包含一寫回陣列。 8. 如申請專利範圍第 7項之裝置,其中除非該隨 選邏輯處於現用狀態’否則將不供電給該第一及第二陣列 之該第二部分。 9. 一種方法,包含下列步驟: 於指令分配時接收與一指令相關聯之靜態資訊,並將 該靜態資訊的至少一第一部分儲存在一分配緩衝區的一第 一部分,以及如果該靜態資訊指示出將在指令引退時被執 行的一事件,則將該靜態資訊的一第二部分儲存在該分配 緩衝區的一第二部分; 如果與該指令相關聯的靜態資訊並未存在於該分配緩 衝區的該第二部分,則於該指令引退時發出一早期保證信 號;以及 否則,供電給該分配緩衝區的該第二部分,以便存取 該靜態資訊的該第二部分。 10. 如申請專利範圍第 9項之方法,進一步包含下 -24- 201015435 列步驟:如果該早期保證信號並未被發出,則在被供電的 事件邏輯中執行事件處理。 11. 如申請專利範圍第 10項之方法,進一步包含 下列步驟:根據該事件處理的結果而在該事件邏輯中產生 一晚期保證信號或一無效信號。 12. 如申請專利範圍第 11項之方法,進一步包含 下列步驟··將與一第一指令相關聯的一早期保證信號以及 Φ 與一第二指令相關聯的一晚期保證信號或一無效信號串列 化’作爲一指令引退單元之輸出,該第二指令在程式順序 上早於該第一指令。 13. 如申請專利範圍第 9項之方法,進一步包含下 列步驟:於指令寫回時接收與該指令相關聯的動態資訊, 並將該動態資訊的至少一第一部分儲存在一寫回緩衝區的 一第一部分;以及如果該動態資訊指示出將在指令引退時 被執行的一事件’則將該動態資訊的一第二部分儲存在該 φ 寫回緩衝區的一第二部分。 14. 如申請專利範圍第 13項之方法,進一步包含 下列步驟:至少部分地根據該靜態資訊的該第一部分及該 動Is資訊的該第一部分而決定是否將在指令引退時執行事 件處理’以及於指令引退時執行該事件處理,其中要執行 該事件處理時進行指令引退之速率係不同於不要執行該事 件處理時進行指令引退之速率。 1 5 .—種系統,包含: 處理器,用來以亂序(OOO)方式執行指令,該處理 -25- 201015435 器包含複數個執行單兀及被耦合到該複數個執行單元之一 指令引退單元,其中該指令引退單元包含: 分配緩衝區’用來在該等指令分配時接收第一資 訊,該分配緩衝區被分割爲將在每一指令引退期間被讀取 的一第—部分、以及將依需求被讀取的一第二部分; 寫回緩衝區’用來在該等指令執行後接收第二資 訊,該寫回緩衝區被分割爲將在每一指令引退期間被讀取 的一第一部分、以及將依需求被讀取的一第二部分; 第一邏輯’被耦合到該分配緩衝區及該寫回緩衝 區的輸出’且在與一第一被執行的指令相關聯之第二資訊 並未存在於該分配緩衝區或該寫回緩衝區的該第二部分時 輸出該第一被執行的指令之一早期保證信號;以及 第二邏輯,被耦合到該分配緩衝區及該寫回緩衝 區的輸出’且在與一第二被執行的指令相關聯之第二資訊 於該分配緩衝區或該寫回緩衝區的該第二部分時輸出 該第二被執行的指令之一晚期保證信號或一無效信號;以 及 動態隨機存取記憶體(DRAM ),被耦合到該處理器 〇 1 6 ·如申請專利範圍第 1 5項之系統,其中該第一 邏輯將接收一全域事件信號,且於一第三被執行的指令之 引退期間啓動回應該全域事件信號的該第二邏輯。 17·如申請專利範圍第 15項之系統,進一步包含 一第三邏輯,其被耦合到該第一邏輯及該第二邏輯,且結 -26- 201015435 合該第一邏輯及該第二邏輯之輸出。 18.如申請專利範圍第 17項之系統,其中該第三 邏輯將該晚期保證信號或該無效信號串列化成在該早期保 證信號之前,作爲該指令引退單元之輸出,其中該第二被 執行的指令在程式順序上早於該第一被執行的指令。 1 9.如申請專利範圍第 1 5項之系統,其中該分配 緩衝區之該第一部分及該寫回緩衝區於每一指令引退期間 φ 將被供電,且只有在與一指令引退期間相關聯的資訊被儲 存在該分配緩衝區的該第二部分時,該分配緩衝區的該第 二部分才於該指令引退期間被供電。 20.如申請專利範圍第 15項之系統,其中該第一 邏輯將輸出該早期保證信號,且該第二邏輯於一指令引退 期間不被供電,其中一黏著位元在該指令引退期間之前被 設定,且不需要被該指令引退單元設定。 ❿ -27-
TW098120442A 2008-06-27 2009-06-18 具功率感知之指令引退裝置、方法及系統 TWI407369B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US12/215,526 US7921280B2 (en) 2008-06-27 2008-06-27 Selectively powered retirement unit using a partitioned allocation array and a partitioned writeback array

Publications (2)

Publication Number Publication Date
TW201015435A true TW201015435A (en) 2010-04-16
TWI407369B TWI407369B (zh) 2013-09-01

Family

ID=41360915

Family Applications (1)

Application Number Title Priority Date Filing Date
TW098120442A TWI407369B (zh) 2008-06-27 2009-06-18 具功率感知之指令引退裝置、方法及系統

Country Status (8)

Country Link
US (1) US7921280B2 (zh)
JP (1) JP5474926B2 (zh)
CN (1) CN101615115B (zh)
DE (1) DE102009029852A1 (zh)
GB (1) GB2473345B (zh)
RU (1) RU2427883C2 (zh)
TW (1) TWI407369B (zh)
WO (1) WO2009158247A2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI476583B (zh) * 2011-09-23 2015-03-11 Nat Univ Tsing Hua 功率感知電腦模擬系統及其方法

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5371885A (en) * 1989-08-29 1994-12-06 Microsoft Corporation High performance file system
WO1993022722A1 (en) * 1992-05-01 1993-11-11 Seiko Epson Corporation A system and method for retiring instructions in a superscalar microprocessor
US6047369A (en) * 1994-02-28 2000-04-04 Intel Corporation Flag renaming and flag masks within register alias table
US5644742A (en) * 1995-02-14 1997-07-01 Hal Computer Systems, Inc. Processor structure and method for a time-out checkpoint
US5889982A (en) * 1995-07-01 1999-03-30 Intel Corporation Method and apparatus for generating event handler vectors based on both operating mode and event type
US6108769A (en) * 1996-05-17 2000-08-22 Advanced Micro Devices, Inc. Dependency table for reducing dependency checking hardware
US5903740A (en) * 1996-07-24 1999-05-11 Advanced Micro Devices, Inc. Apparatus and method for retiring instructions in excess of the number of accessible write ports
US5938760A (en) * 1996-12-17 1999-08-17 International Business Machines Corporation System and method for performance monitoring of instructions in a re-order buffer
US5938761A (en) * 1997-11-24 1999-08-17 Sun Microsystems Method and apparatus for branch target prediction
GB9825102D0 (en) * 1998-11-16 1999-01-13 Insignia Solutions Plc Computer system
US6757892B1 (en) * 1999-06-24 2004-06-29 Sarnoff Corporation Method for determining an optimal partitioning of data among several memories
US6615343B1 (en) * 2000-06-22 2003-09-02 Sun Microsystems, Inc. Mechanism for delivering precise exceptions in an out-of-order processor with speculative execution
US6990568B2 (en) * 2001-03-30 2006-01-24 Hewlett-Packard Development Company, L.P. Retiring early-completion instructions to improve computer operation throughput
US6944752B2 (en) * 2001-03-30 2005-09-13 Hewlett-Packard Development Company, L.P. Retiring early-completion instructions to improve computer operation throughput
US6880067B2 (en) * 2001-03-30 2005-04-12 Hewlett-Packard Development Company L.P. Retiring instructions that meet the early-retirement criteria to improve computer operation throughput
US6738861B2 (en) * 2001-09-20 2004-05-18 Intel Corporation System and method for managing data in memory for reducing power consumption
US7502817B2 (en) * 2001-10-26 2009-03-10 Qualcomm Incorporated Method and apparatus for partitioning memory in a telecommunication device
US6910121B2 (en) * 2002-01-02 2005-06-21 Intel Corporation System and method of reducing the number of copies from alias registers to real registers in the commitment of instructions
US7219249B1 (en) * 2002-12-03 2007-05-15 The Research Foundation Of State University Of New York System and method for reducing power requirements of microprocessors through dynamic allocation of datapath resources
US6922769B2 (en) * 2002-12-23 2005-07-26 Intel Corporation Apparatus and method for reduction of power consumption in OS that use flat segmentation memory model
US20040128484A1 (en) * 2002-12-30 2004-07-01 Zeev Sperber Method and apparatus for transparent delayed write-back
US7266673B2 (en) * 2003-05-02 2007-09-04 Advanced Micro Devices, Inc. Speculation pointers to identify data-speculative operations in microprocessor
US20050050303A1 (en) * 2003-06-30 2005-03-03 Roni Rosner Hierarchical reorder buffers for controlling speculative execution in a multi-cluster system
US7096345B1 (en) * 2003-09-26 2006-08-22 Marvell International Ltd. Data processing system with bypass reorder buffer having non-bypassable locations and combined load/store arithmetic logic unit and processing method thereof
US7167989B2 (en) * 2003-10-14 2007-01-23 Intel Corporation Processor and methods to reduce power consumption of processor components
US7246219B2 (en) * 2003-12-23 2007-07-17 Intel Corporation Methods and apparatus to control functional blocks within a processor
US7386756B2 (en) * 2004-06-17 2008-06-10 Intel Corporation Reducing false error detection in a microprocessor by tracking instructions neutral to errors
US7437581B2 (en) * 2004-09-28 2008-10-14 Intel Corporation Method and apparatus for varying energy per instruction according to the amount of available parallelism
US7747841B2 (en) * 2005-09-26 2010-06-29 Cornell Research Foundation, Inc. Method and apparatus for early load retirement in a processor system
US7475225B2 (en) * 2005-12-30 2009-01-06 Intel Corporation Method and apparatus for microarchitecture partitioning of execution clusters
US20080072015A1 (en) * 2006-09-18 2008-03-20 Julier Michael A Demand-based processing resource allocation
US7472260B2 (en) * 2006-10-10 2008-12-30 P.A. Semi, Inc. Early retirement of store operation past exception reporting pipeline stage in strongly ordered processor with load/store queue entry retained until completion
US7721076B2 (en) * 2006-12-18 2010-05-18 Intel Corporation Tracking an oldest processor event using information stored in a register and queue entry
US8074060B2 (en) * 2008-11-25 2011-12-06 Via Technologies, Inc. Out-of-order execution microprocessor that selectively initiates instruction retirement early

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI476583B (zh) * 2011-09-23 2015-03-11 Nat Univ Tsing Hua 功率感知電腦模擬系統及其方法

Also Published As

Publication number Publication date
RU2427883C2 (ru) 2011-08-27
GB2473345A (en) 2011-03-09
DE102009029852A1 (de) 2009-12-31
CN101615115A (zh) 2009-12-30
US7921280B2 (en) 2011-04-05
WO2009158247A2 (en) 2009-12-30
JP2011514607A (ja) 2011-05-06
RU2009124521A (ru) 2011-01-10
US20090327663A1 (en) 2009-12-31
CN101615115B (zh) 2013-12-25
GB201015011D0 (en) 2010-10-20
WO2009158247A3 (en) 2010-03-04
JP5474926B2 (ja) 2014-04-16
TWI407369B (zh) 2013-09-01
GB2473345B (en) 2012-12-05

Similar Documents

Publication Publication Date Title
US6304955B1 (en) Method and apparatus for performing latency based hazard detection
JP4187720B2 (ja) マルチスレッド・プロセッサにおけるレジスタ・ファイルのポートを削減するための方法および装置
TWI512448B (zh) 用以啟用處理器等待狀態之指令
US6842848B2 (en) Method and apparatus for token triggered multithreading
US6430674B1 (en) Processor executing plural instruction sets (ISA's) with ability to have plural ISA's in different pipeline stages at same time
US7865769B2 (en) In situ register state error recovery and restart mechanism
TWI514275B (zh) 用於以自發載入延遲與轉換至預提取來消除管線阻塞之系統及方法
US10599428B2 (en) Relaxed execution of overlapping mixed-scalar-vector instructions
JPH07152559A (ja) パイプ制御及びレジスタ変換機能を増強したスーパースカラーパイプライン式のプロセッサ
KR20190033084A (ko) 로드 스토어 유닛들을 바이패싱하여 스토어 및 로드 추적
US7404065B2 (en) Flow optimization and prediction for VSSE memory operations
US20220035635A1 (en) Processor with multiple execution pipelines
KR101077425B1 (ko) 효율적 인터럽트 리턴 어드레스 저장 메커니즘
JP3212213B2 (ja) データ処理装置
TWI540504B (zh) 調節原子級記憶體操作以防止阻絕服務攻擊之處理器、方法和系統
US11269649B2 (en) Resuming beats of processing of a suspended vector instruction based on beat status information indicating completed beats
TWI407369B (zh) 具功率感知之指令引退裝置、方法及系統
Zhou et al. A study of value speculative execution and misspeculation recovery in superscalar microprocessors
US20240201777A1 (en) Dynamic configuration of processor sub-components
EP4202664A1 (en) System, apparatus and method for throttling fusion of micro-operations in a processor
US7231510B1 (en) Pipelined multiply-accumulate unit and out-of-order completion logic for a superscalar digital signal processor and method of operation thereof
JP4151497B2 (ja) パイプライン処理装置
JP2005525637A (ja) プロセッサの効率的な制御をするための方法及び装置
WO2007004323A1 (ja) 情報処理装置
JP2004362368A (ja) プロセッサおよび例外処理方法