TWI338225B - Centralized interrupt controller - Google Patents

Centralized interrupt controller Download PDF

Info

Publication number
TWI338225B
TWI338225B TW095141105A TW95141105A TWI338225B TW I338225 B TWI338225 B TW I338225B TW 095141105 A TW095141105 A TW 095141105A TW 95141105 A TW95141105 A TW 95141105A TW I338225 B TWI338225 B TW I338225B
Authority
TW
Taiwan
Prior art keywords
interrupt
message
apic
processing units
logic
Prior art date
Application number
TW095141105A
Other languages
English (en)
Other versions
TW200739355A (en
Inventor
Bryan Boatright
James Cleary
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 TW200739355A publication Critical patent/TW200739355A/zh
Application granted granted Critical
Publication of TWI338225B publication Critical patent/TWI338225B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt
    • G06F13/26Handling requests for interconnection or transfer for access to input/output bus using interrupt with priority control
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Computer And Data Communications (AREA)

Description

九、發明說明: C發明所屬之^技術領域】 發明領域 本發明係有關電子電路控制中斷領域。更特別本發明 係有關用於多個處理單元之-種集中化先進可_中^ 制器。 上 發明背景 任何電腦系統發揮效能的基礎為處理單元執行多項操 作,包括多種可能由耗接至該電腦系統之周邊裝“ 的各項間歇「服務」的控制。輸人/輸出(「⑽」)周^ 備例如包括印表機、掃㈣及顯示ϋ裝置等電腦物項需要 由主,處理H間歇服務,俾便確保有適t功能。例如服務 包括資料傳輸、資料捕捉及/或控制信號。 …tr周邊裝置典型有不同的服務排程’該服務排程並 非依據裝置的朗㈣,反㈣㈣其私_之用途決 處理器係根據其個別需求於此等裝置間將其服務 /夕工化,问時執行-項或多項背景程式。至少有兩種 告知域有服務祕及情法。於前一方 一二期檢查各個周邊裝置,了解是否已經設定旗標指 示服務請求。於德去女 百万法中’裝置的服務請求路由通過一 =㈣ϋ’Μ中斷該主機,齡卜分支由其目前的程 特洙中斷服務常式。中斷法為較佳,原因在於主機 4奉獻於似、要叫詢時鐘_。後述方;线本發明之 1338225 解決方法。
藉著多處理器電腦系統的發明,已經實作可將中斷於 多個處理器間動態分配之中斷管理系統。先進可規劃中斷 控制器(「APIC」)屬於此種多處理器中斷管理系統之一個 5 實例。用於多個多處理器電腦系統中,APIC中斷傳輸機構 可用來檢測來自於另一個處理單元或來自於一周邊裝置之 中斷請求,以及告知一個或多個處理單元與欲執行的令斷 請求相對應之特殊服務。有關APIC中斷傳輸系統之進一步 細節可參考Carson等人之美國專利申請案5,283,904,名稱 10 「多處理器可程式中斷控制器系統」。 多種習知APIC之設計為硬體密集,因而需要多個閘(亦 即閘數目大)。於多個多處理器系統中,各個核心有其本身 專用的APIC完全自容於該核心内部。對其它多處理器系 統,各個核心為有多個邏輯處理器之一同時多執行緒核 15 心。對各系統而言,各個邏輯處理器係與APIC相關聯,故 各個多執行緒核心包括多個APIC中斷傳輸機構,其各自維 持本身的架構狀態,與實作其本身之控制邏輯,通常係與 其它APIC控制邏輯相同。對任一型多處理器系統,多APIC 之晶粒面積及洩漏功率成本非期望地高。此外,動態功率 20 成本與多個APIC操作相關俾便於一多處理器系統中傳輸中 斷的動態功率成本也非期望地過大。 【發明内容3 發明概要 依據本發明之一實施例,係特地提出一種裝置,其包 6 含有:一單一邏輯區塊,用’來對傳輸中斷訊息往來於多個處理 皁元之動作進行優先順位的排序及控制功能,其中該邏輯區塊 為該等多個處理單元所共享;耦接至該邏輯區塊之一中斷排 序器區塊,用來對該等多個處理單元排程中斷事件供由該 邏輯區塊處理;一儲存區,用來對該等多個處理單元各自 維持架構中斷狀態資訊;一個或多個輸入訊息佇列,用來 接收内送中斷訊息以及將來自於該等訊息之資訊置入該儲 存區,以及一個或多個輸出訊息佇列,用來發送外送中斷 訊息。 圖式簡單說明 參考下列附圖將可了解本發明之實施例,其中類似的 π件係標示以類似的號碼。此等圖式非意圖為限制性,反 而係供舉例說明用於多個處理單元之集中化A ΡIC控制器之 裝置、系統及方法之選定之實施例。 第1圖為方塊圖,顯示對多個處理單元提供中斷控制之 一種集中化中斷控制器之至少—個實施例。 第2圖為方塊圖,顯示集中化中斷控制器之至少一個實 施例之進一步細節。 第3圖為方塊圖,顯示多排序器系統之各個實施例。 第4圖為方塊圖,顯示用於多個核心之中斷狀態之中央 倉儲之至少一個實施例。 第5圖為狀態變遷圖’顯示用於-集中化中斷控制器之 一中斷排序器區塊之操作之至少_個實施例。 第6圖為方塊圖,顯示可執行所揭示之技術之一種電腦 系統之至少一個樣本實施·例。 C ^ 較佳實施例之詳細說明 後文讨論說明用於多個處理單元之一集中化APIC之 5方法、系統及製造物件之選定之實施例。此處所述機構可 利用單核心或多核心多執行緒系統 。於後文說明中,陳述 多個特定細節,諸如處理器型別、多執行緒環境、系統組 態、及於一多排序器系統中的排序器數目及型別,以供徹 底了解本發明。但須了解,熟諳技藝人士可無此等特定細 10節而實施。此外,若干眾所周知之結構、電路等並未顯示 其細節以免混淆本發明。 第1圖為方塊圖,顯示包括一集中化中斷控制器110之 系統100之至少一個實施例。系統1〇〇包括多個核心 104(0)-104(n)。第1圖之虛線及橢圓顯示系統1〇〇可包括任何 數目(η)個核心,此處n^2。熟諳技藝人士了解系統之其它 實施例包括如後文說明之單一同時多執行緒(「SMT」) 核心(故n=l)。 第1圖顯示單一集中化中斷控制器110實體上與核心 104(0)-104(n)分開。第1圖也顯示系統100之各個核心 20 104(0)-104(n)係透過一本地互連裝置1〇2而耦接至集中化中 斷控制器110。如此集中化中斷控制器uo係透過本地互連 裝置102而與各個處理核心介接。集中化中斷控制器110的 高階目的係以對系統120而言該等APIC當於傳統根據核心 APIC之系統中操作時般係並列操作的方式’來串列模擬多 8 1338225 個APIC之操作。 ·
系統100之單一核心丨〇4可實作各種多執行緒體系中之 任一者,包括同時多執行緒(SMT)、切換事件多執行緒 (SoeMT)及/或時間多工化多執行緒(ΤΜυχ)。當來自於多於 5 一個硬體執行緒内文(「邏輯處理器」)之指令於任何特定時 間點係同時於處理器3〇4執行時,稱作為SMT,否則,單核 心多執行緒系統可實作SoeMT,此處處理器管線係於多個 硬體執行緒内文多工化,但於任何給定時間,只有來自於 一個硬體執行緒内文的指令可於該管線中執行。用於 10 SoeMT ’若執行緒切換事件是以時間為基準,則變成 丁ΜϋΧ〇雖然支援SoeM丁及TMUX體系之單一核心可支援多 執行緒’但於此處稱作為「單執行緒」核心,原因在於任 何給定時間只可執行來自於一個硬體執行緒内文之指令。
各個核心104可為可執行單一執行緒之單一處理單 15 元。或其中一個或多個核心可為執行SoeMT或TMUX多 執行緒之多執行緒核心,故於一個時間核心只為一個執行 緒執行指令。用於此等實施例’核心104稱作為「處理單元」。 對至少另一個實施例,各個核心104為多執行緒核心, 諸如SMT核心。對SMT核心104而言,核心1〇4之各個邏輯 2〇處理器稱作為「處理單元」。如此處使用,「處理單元」為 可執行一執行緒之任何實體單元或邏輯單元。各個處理單 元可包括下一個指令指標器邏輯’來判定該給定執行緒欲 執行之下一個指令。如此’一個處理單元於此處可互換稱 作為「排序器」。 9 對任—實施例(單執行緒榨心相對於多執行緒核心), 各個處理單元雜其本身之中斷控制器功能相關聯,但此 種功能之邏輯並非自容於各個處理單元㈣,反而係由集 中中斷控制器11 〇所提供。若任—個核心J 〇4為SMT核 心,則各個核心104之各個邏輯處理器可透過本地互連裝置 102而耗接至集中化中斷控制器110。 轉向參考第3圖,如前文說明,處理單元(或「排序器」) 可為邏輯處理器或實體核心。邏輯處理單it與實體處理單 元間的區別顯示於第3圖。第3圖為方塊圖,顯示可執行所 揭示之技術之多排序器系統之實施例310、350之選定的硬 體結構。 第3圖顯示一種單核心多排序器多執行緒環境31〇之選 定料體結構。第3圖也顯示—種多核心多執行緒環境35〇 之選疋之硬體結構,此處各個排序器為一個分開實體處理 器核心。 於單核心多執行緒環境3H)中,單一實體處理器删係 製作成彷彿多個邏輯處理器(圖中未顯示),於此處稱作為 LP丨至LPn來操作系統及使用者程式。各個邏輯處理器π! 至LPn可維持架構狀態之-完整集合AS,-ASn。對至少一個 實施例’架構狀態包括資料暫存器、節段暫存器、控制暫 存器、除錯暫存器,以及大部分之特殊模式暫存器。邏輯 處理器UVLPn共享實體處理器304的大部分其它資源,諸 如快取記憶體、執行單元、分支預測器、控制邏輯及匯流 排。但各個邏輯處理器LPrLPj能與其本身的Apic相關聯。 1338225 雖然多項硬體結構共享,但於多執行緒環境31〇中的各 個執行緒内文可獨立產生下一個指令位址(例如執行由一 才曰令快取記憶體、-執行指令快取記憶體或追縱快取記憶 體之提取)。如此,處理器304包括邏輯獨立的下一個指令 5指標器及提取邏輯320,㈣各個執行緒内文提取指令,即 使多個邏輯排序器可於—單一實體提取/解碼單元迎實作 亦如此。用於單核心多執行緒實施例,「排序器」一詞涵蓋 -執行緒内文之至少下-個指令指標器及提取邏輯32〇,連 同該執行緒内文之至少若干相關聯的架構狀態312。須注意 1 〇單核%夕執行緒系統31 〇排序器無需為對稱。例如同一個實 體核心的兩個單核心多執行緒排序器其各自維持的架構狀 態資訊量可能不同。 如此’對至少-個實施例,多排序器系統為可支援 同時夕個執行緒之單核心處理器3G4。對各實施例各個排 15序益為-邏輯處理器具有其本身指令下一個指令指標器及 提取邏輯及其本身之架構狀態資訊,但同一個實體處理器 核〜304執仃全部執行緒指令。對各實施例而言,邏輯處理 器、’持/、本身之架構狀態版本,但單一處理器核心之執行 資源可能於目前執行之執行緒間共享。 2〇帛3圖也顯示多核心多執行緒環境350之至少 一個實施 例此種% 土兄350包括兩個或多個分開實體處理器 304a 304η其各自可執行不同的執行緒,執行絲,故至少部 分不同執行緒/執行_執行可同時進行。各減理器3〇如 至304n〇括實體刀開的提取單元奶,來提取指令資訊用於 11 1338225 其個別之執行緒和執行絲。於;各個處理器304a_304n執行單 一執行緒/執行絲之實施例中,提取/解碼單元322實作單— 下一個指令指標器及提取邏輯320。但於各個處理器 304a-304n支援多個執行緒内文之實施例中,提取/解碼單元 5 322對各個所支援的執行緒内文實作分開的下一個指令指 標器及提取邏輯320。於一多處理器環境35〇中有額外下一 個指令指標器及提取邏輯320之任選情況於第3圖_以虛線 標示。 對第3圖多核心系統350之至少一個實施例,各個排序 10器可為一處理器核心,有多個核心304a-304n駐在於單一晶 片封裝體360。各個核心304a-304n可為單執行緒或多執行 緒處理器核心。晶片封裝體360於第3圖中以斷線標示,來 指示只舉例說明多核心系統350之單晶片實施例。用於其它 實施例,多核心系統之處理器核心可能駐在於分開晶片 15上。換言之,多核心系統可為多容座對稱性多重處理系統。 為求方便討論,後文討論焦點係集中於多核心系統35〇 之實施例。但此種討論焦點並非限制性,後文說明之機構 也可於多核心或單核心多排序器環境中執行。 轉向參考第1圖’可知系統1〇〇之核心1〇4(〇)·ι〇4(η)可 20透過本地互連裝置1〇2而彼此耦接。本地互連裝置1〇2可提 供核心間所需的全部通訊功能(諸如快取記憶體窺探等)^各 個核心104(0)-104(η)包括相對小型介面區塊來透過本地互 連裝置102發送及接收中斷相關訊息。大致上,此種核心介 面相當簡單,並未保有與中斷相關訊息相關的架構狀態, 12 1338225 也未對中斷排優先順序/或執行其它由本文所述之集中化 中斷控制器110所執行的其它APIC相關功能。
核心104(0)-104(n)可駐在於單一晶粒150(0)上。用於至 少一個實施例,第1圖所示系統100進一步包括任選的額外 5 晶粒。額外一或多個晶粒(高達150(n))之任選本質以虛線及 橢圓顯示於第1圖。第1圖顯示於另一個晶粒150(n)上來自於 處理器單元之一中斷訊息可透過系統互連裝置106而通訊 至第一晶粒(150(0))。集中化中斷控制器110係透過系統互 連裝置106而耦接至任何其它晶粒(直到150(n)),以及耦接 10 至周邊I/O裝置114。 熟諳技藝人士 了解第1圖所示晶粒150之組態僅供舉例 說明之用而非視為限制性。用於其它實施例,二元件150(0) 及150(n)可駐在於同一塊矽晶圓上,且可耦接至同一個本地 互連裝置102。相反地,各個核心104無需駐在於同一個晶 15 片上。各個核心104(0)-104(n)及/或本地互連裝置102可未駐 在於同一個晶粒150上。 系統100之各個核心104(0)-104(n)可進一步透過本地 互連裝置102而耦接至其它系統介面邏輯112。系統介面邏 輯112例如包括快取相干性邏輯或其它允許排序器透過系 20 統互連裝置而與其它系統元件介接之其它介面邏輯。其它 系統介面邏輯112又可透過系統互連裝置106而耦接至其它 系統元件116(諸如記憶體)。 第2圖為方塊圖,顯示集中化中斷控制器110之至少一 個實施例之進一步細節。雖然集中化中斷控制器110實體上 13 1338225 係與系統的核心(例如第1圖之7核心104(0)-104(n))分開,但 大致上第2圖顯示雖言如此集中化中斷控制器110仍然維持 各個APIC案例之完整架構狀態,其中之一者係與各個排序 器相關聯。集中化中斷控制器11〇管理全部中斷佇列功能及 5 排優先順位功能,該等功能通常係由傳統系統中每個核心 專用的APIC來管理。容後詳述,集中化中斷控制器11〇也可 用作為排序器與系統其餘部分耦接至系統互連裝置1〇6間 的防火牆。
第2圖顯示包括一集中化APIC狀態202之集中化中斷 10控制器110。APIC狀態202包括尋常與典型APIC處理相關之 架構狀態。換言之,APIC處理為應用程式設計時於架構上 可見的特徵’絕非意圖此種介面由本揭示所改變。當系統 包括如此處討論之傳統APIC硬體(換言之,對各個處理單元 有一個自容式APIC)、或集中化中斷控制器,皆預期此種硬 15體設計選擇至少對一個實施例對應用程式設計師而言為透 明。藉此方式,經由對一系統利用單一集中化中斷控制器 110,可減少面積成本、動態功率成本、及電力洩漏成本, 而同時維持作業系統販售商及應用程式設計師所期望的相 同架構介面。 如此,於方塊202維持為APIC狀態資訊之中央倉儲的 架構狀態通常為傳統系統中對各個Apic所維持之狀態。舉 例。之,若系統中有8個排序器,則集中化Apic狀態2〇2可 包括8個登錄項目之陣列,各個登錄項目反映出對傳統系統 中之-個排序ϋ所維持的架構Apic狀態(後文第4圖之討論 14 1338225 指出2麟項目也可包括某個微架構狀態)。 對至V個實施例,集中化APIC狀態202係實作為單 Alt體儲存g ’諸如暫存㈣案或陣列。暫存器稽案組 織允許比幸义先則依據核心Apic狀態為隨機邏輯而實作的先 5前辦法有更高面積致率。 大致上,集中化中斷控制 器110監視透過本地互連裝置 及或系統互連裳置1 〇6所接收之中斷訊息的接收狀 況’且將相關讯息储存於暫存器樓案2Q2之適當登錄項目。 #至少一個實施例’如此達成之方式係經由監視輸入訊息 10之目的地位址’將訊息儲存於與該目的地位址相關聯之 APIC案例登錄項目。此等功能可由輸入訊息佇列2〇4、2〇6 所執行,容後詳述。 同理,集中化中斷控制器no可監視輸出中斷訊息的產 生’可儲存訊息於暫存器檔案202之適當登錄項目,直到此 15等汛息接受服務且傳輸為止。對至少一個實施例,其達成 方式係經由監視輸出訊息的來源位址,將該訊息儲存於與 該來源位址相關聯之APIC案例登錄項目。此等功能可藉輸 出訊息佇列208、210執行,容後詳述。 集中化中斷控制器110之中斷排序器區塊214隨後可排 20 程此等懸而未決的中斷訊息,反映於集中化APIC狀態202 供服務。容後詳述’可根據公平體系來達成,因此並無任 何排序器的懸而未決的中斷活動重複被忽略。中斷排序器 區塊214可激化APIC中斷傳輸邏輯212來執行服務。 如此第2圖顯示集中化中斷控制器11〇包括APIC中斷 15 傳輸邏輯212。替代對一系統約各個棑序器(例如各個單一 執行緒核心或各個SMT核心之邏輯處理器),複製八?1(:邏 輯’集中化中斷控制器110可提供單套非冗餘之ApiC邏輯 212之拷貝來對系統的全部排序器服務中斷。 例如若系統(諸如第1圖之系統1〇〇)包括四個核心,其 各自支援8個同時SMT執行緒,傳統上系統要求以套八以。 邏輯212之拷貝。取而代之,第2圖顯示之集中化中斷控制 器110利用單套APIC邏輯212的拷貝來於一給定時間提供中 斷控制器服務予全部皆作動的32個執行緒《 由於系統之多個排序器可能同時有懸而未決的中斷活 動,故APIC邏輯212為多個排序器的競爭主角。因此集中化 中斷控制器110包括一中斷排序器區塊214。中斷排序器區 塊214對系統中的全部中斷「排序」服務,排序方式係對各 個排序器提供公平存取APIC邏輯212之方式排序。要言之, 集中化中斷控制器UG之中斷排序器區塊214控制對單一 APIC邏輯區塊212的存取。 。如此,中斷排序器區塊214控制排序器對共享八1>1(:邏 輯212的存取。此項功能係與傳統Αρκ^'統相反,傳統a叹 系統對各個排序器提供專用Apic邏輯區塊故各個排序器 具有即刻特別存取APIC邏輯。單一Apic區塊212可對系統 中的各個處理單疋就中斷優先順序的提供的完整架構 1¾求0 對系統的任何特定處理單元,通過Apic之中斷的來源 /目的地可為其它處理單元或周邊裝H㈣部之處理翠 1338225 元中斷係藉集中化中斷控制琴丨10透過本地互連裝置1〇2傳 輸。至/來自其它晶粒上之周邊裝置或處理單元之中斷可透 過系統互連裝置106而傳輸。
第2圖顯示集中化中斷控制器no包括四個訊息佇列排 5序來處理透過本地互連裝置102及系統互連裝置106之輸入 中斷訊息及輸出中斷訊息:一輸入系統訊息佇列2〇4、一輸 入本地訊息佇列206、一輸出本地訊息佇列2〇8、及一輸出 系統訊息佇列210。輸入本地訊息佇列206及輸出本地訊息 佇列20 8係耦接至本地互連裝置丨〇2 ;輸入系統訊息佇列2〇4 10及輸出系統訊息佇列210係耦接至系統互連裝置106。佇列 204、206、208、210各自為包括資料儲存及/或控制邏輯之 迷你控制器佇列。
佇列204、206 ' 208 ' 210之操作之進一步討論可參考 第1、2及4圖。第4圖提供集中化APIC狀態202之至少一個實 15 施例之細節視圖。第4圖顯示集中化APIC狀態202包括架構 狀態302及微架構狀態301、303二者。如前文說明,對各個 排序器104(0)-1 〇4(n)所維持之架構狀態302反映出傳統上與 排序器相關聯之APIC狀態。架構APIC狀態302之各個登錄 項目410於此處稱作為「APIC案例」。例如,APIC案例之輸 20入中斷訊息可儲存於與該案例相關聯之架構狀態302之登 錄項目410。對至少一個實施例,於APIC案例之登錄項目410 可維持高達240個輸入中斷訊息。 除了架構狀態302之外,集中化APIC狀態202也包括與 各個APIC案例410相關聯之微架構狀態3〇1以及一般性微架 17 1338225
構狀態303。一般性微架構狀態3〇3可包括一計分板3〇4來輔 助中斷排序器區塊214(參考第2圖)判定那一個排序器需要 存取APIC邏輯212(參考第2圖)。對至少一個實施例,計分 板304對系統中的各個排序器可維持計分。排序器計分之數 5值指示排序器是否有任何需要AI>IC邏輯212的懸而未決的 活動。對至少一個實施例,計分板3〇4可自動讀取,故中斷 排序器區塊214(第2圖)可容易快速地確定哪一個排序器需 要APIC邏輯212的注意力。 雖然中斷排序器區塊2丨4的一項特徵係公平地允許存 10取ApIC邏輯212,但計分板3〇4允許採用公平體系而無需中 斷排序器區塊214浪費處理資源於目前無需APIC邏輯212處 理的排序器上。如此,計分板基於輸入訊息以及對該等目 刖懸而未決之請求的處理狀態,追蹤哪一個八?1(::案例必需 工作。中斷排序器區塊214對一作動的APIc案例由集中化 15 APIC狀態202讀取目前狀態,採行對該目前狀態之適當動作 (例如紀錄於該特定APic案例410之架構狀態302及微架構 狀態301二者中)’然後重複處理用於下一個有懸而未決之 工作的APIC案例(如計分板3〇4的位元指示)。 當輸入中斷訊息透過本地互連裝置1〇2鎖定目標於同 20 一個晶粒上的另一個排序器時,輸入本地訊息佇列206接收 到該訊息且判定其目的地◦輸入訊息可鎖定目標於排序器 中之一者、多者、無任一者、或全部。佇列206可對各個被 鎖定目標的排序器寫入架構狀態分錄(例如參考第4圖之 410) ’來將中斷佇列等候處理。於此種情況下,佇列2〇6也 18 對被鎖定目標的排序器設定計分板登錄項目(若尚未設定 計分板登錄項目)來指出中斷活動懸而未決,單一 APIC邏輯 區塊212的服務為該標乾排序器之所需。 第4圖顯示若干中斷可繞道而由輸入本地訊息佇列2〇6 直接至輸出佇列208、210,無需於集中化apic狀態202佇列 等候。例如可能出現於並未對特定處理器特別定址的廣播 訊息。第4圖顯示類似之繞道處理也可能出現於輸入系統訊 息佇列204(容後詳述)。 類似前文對佇列206討論的處理也出現於輸入中斷訊 息透過系統互連裝置1〇6(來自於I/O裝置或另一晶粒上的排 序器)來鎖定目標於排序器l〇4(〇)-l〇4(n)中之一者。輸入系 統訊息佇列204接收該訊息且判定其目的地。佇列2〇6對各 個被鎖定目標之排序器寫入架構狀態分錄41〇,俾便將該中 斷佇列等候,且據此來對任何被鎖定目標的排序器更新計 分板登錄項目412。當然輸入的訊息也可如前文討論而被跨接。 訊息佇列204、206、208、210中之一者或多者可對輸 出訊息及/或輸入訊息實作防火牆特徵。有關此防火牆特 徵,第2圖係關聯第】圖做討論。 有關輸入訊息’輸入系統訊息佇列2〇4可作為中斷防火 牆,來防止對並未鎖定目標於晶粒15 0上與集中化中斷控制 器110相關聯之排序器之該等訊息做不必要的處理。如第i 圖所示,系統1〇〇包括多個多排序器晶粒15〇(〇)15〇(n)。由 特定晶粒之排序器所產生之中斷可透過系統互連裝置106 而發送至其它晶粒。同理,由周邊裝置114所產生之中斷可 1338225 透過系統互連裝置106而發送異晶粒。 對一晶粒150,集中化中斷控制器11〇(特別為輸入系統 訊息仵列204)可判定此種訊息之目的地位址是否包括任何 排序器(例如核心或邏輯處理器)於其晶粒15〇上。若訊息並 5 未鎖定目標於與該晶粒相關聯之本地互連裝置1〇2上的任 何核心或邏輯處理器,則輸入系統訊息佇列2〇4降低而前傳 該訊息至本地互連裝置102上的任一個排序器。藉此方式, 輸入系統訊息佇列避免「喚醒」該等核心/執行緒單純只為 了判定無需任何動作。如此可節省電力,且保有本地互連 10 裝置10 2的頻寬,原因在於無需將多個個別的排序器從節電 狀態中「喚醒」只為了判定該訊息並未靶定於該等排序器。 即使邏輯處理器中之一者或多者並非處於節電狀態, 輸入系統訊息佇列204仍然執行防火牆特徵,因而不會中斷 邏輯處理器之目前正在進行的工作,單純只為了判定輸入 15 中斷訊息無需任何動作。
於至少一個實施例中,防火牆也可對輸出訊息實作。 對輸出系統訊息為真,對若干實施例,對輸出本地訊息亦 為真。於至少一個實施例中,本地訊息之防火牆特徵只對 一種系統實作,該系統的本地互連裝置102支援一項特徵, 20 允許被靶定的中斷訊息傳輸至一特殊排序器,而非要求於 本地互連裝置102上的各個訊息皆廣播予全部排序器。於此 種情況下,輸出本地訊息佇列208可發送於本地互連裝置 10 2上的各個中斷訊息成單播訊息或廣播訊息予由該訊息 所鎖定目標的唯一的排序器。藉此方式,未被鎖定目標的 20 排序器無需中斷其處理來判芩排序器的動作並非該特定中 斷訊*息所需。輪出系統訊息可單純被鎖定目標,故無需發 送至非靶定的實體。 因此第2圖顯示藉由輸入訊息仔列204、206,輸入中斷 5汛息已經被放置於集中化APIC狀態202中,然後中斷排序器 區塊214可於系統棑序器中提供公平存取單套APIC邏輯 212(參考第2圖)之拷貝’來執行系統之APIC處理。中斷排 序益區塊214主要係經由循序通過APIC狀態202,為下一個 需要存取的排序器存取APIC邏輯212來實作其公平體系。由 丨〇中斷轉H區塊214所實作的公平财允許各個排序器皆 同等存取該中斷傳輸區塊。 於至少一個實施例中,此種構想上循序步進通過APIc 狀態202之登錄項目,可經由使用計分板(參考3〇4,第4圖) 變成更有效,其可自動查詢,來判定哪—個作動的排序器 15為「下一個」需要APIC服務的排序器。於至少一個實施例 47,循序處理可根據-種方法控制,該方法將於後文關聯 第5圖說明其細節。 第5圖為狀態圖,說明由中斷排序器區塊214(參見第2 圖)之至J/ -個實施例採用來對系統之多個排序器間提供 20公平存取AP1C邏輯212(參考第2圖)之單一拷貝,俾便執行 系統之APIC處理之方法500。後文第5圖之討論係參考第2 圖及第4圖做說明。 大致上,第5圖顯不中斷排序器區塊214由集中化Apic 狀態酬取作動的APIC案例之目前狀態,且對該目前狀態 21 1338225 採行適當的動作,然後對有鱗而未決工作之下一個八?1(:案 例重複該項處理。
第5圖顯示方法5〇〇始於狀態5〇2。於狀態5〇2,中斷排 序器區塊214諮詢計分板3〇4來判定哪一個APIC案例必須工 5作。如前文說明’於計分板304中對各個APIC案例可能有一 個登錄項目412。於至少一個實施例中,登錄項目412可為 一位元之登錄項目1當輸入訊息對該特殊APic案例被寫至 集中化APIC狀態202時’位元412可經設定。 當然’熟諳技藝人士了解計分板3〇4是一種效能增強, 10不一定存在於全部實施例中。於至少另一個實施例中,例 如中斷排序器區塊214可以有序方式(例如循序方式)通過集 中化APIC狀態202的各個登錄項目,來判定是否有任何作動 的APIC案例需要服務。 若於計分板304中並無任何位元被設定,則排序器皆無 15 懸而未決的APIC事件。於此種情況下,方法500可由狀態502 變遷至狀態508。於狀態508,方法500可將至少部分APIC 邏輯區塊212之電源關閉來於不需要邏輯212時省電。當電 源關完成時,方法500又變遷回狀態502,判定是否有任何 新的APIC動作需要檢測。 20 於狀態502,若為檢測得新動作(換言之,計分板304中 並無任何登錄項目被設定),則APIC邏輯212之電源已經關 閉,方法500由狀態502變遷至狀態506來等候新的APIC動作。 於等候狀態506期間,方法500定期存取計分板3〇4的内 容,來判定是否有任何APIC案例取得懸而未決的APIC工 22 作。佐何輪入APIC訊息反映在計分板内容304,皆造成由狀 態506變遷至狀態5〇2。前文輸入系統訊息佇列2〇4及輸入本 地机息佇列2〇6之討論提供有關架構APIC狀態302之說明; 於至少一個實施例中,計分板3〇4之登錄項目經更新來反映 5出APIC案例已經取得懸而未決的APIC工作。 方法5 00可於狀態5 〇 2判定若計分板3 〇 4之登錄項目412 經設定,則至少有一個APIC案例有懸而未決的apiC工作有 待進行。若有多於一個登錄項目經設定,則中斷排序器區 塊214判定哪一個apic案例為將由APIC邏輯212服務的下 1〇 一個案例。於至少一個實施例中,中斷排序器區塊214經由 選擇被設定的下一個計分板登錄項目來執行此項判定。藉 此方式,中斷排序器區塊214經由循序選擇下一個作動的 AHC案例來存取APIC邏輯212而實施公平體系。 當於狀態502選擇APIC案例時,方法5〇〇由方塊5〇2變 15遷至方塊504。於方塊504,中斷排序器區塊214由集中化 APIC狀態302讀取所選虛擬APIC之登錄項目41〇。藉此方 式中斷排序器區塊214判定哪一個APIC事件對所選apic 案例為懸而未決。多個APIC事件可能懸而未決,因而反映 於APIC豆錄項目41〇。於狀態5〇4的任何送代期間,對一個 20 APIC案例只處理―個懸而未決的事件。如此,可維持輪轉 型循序公平體系。 欲對同—個主動APIC案例之多個懸而未決之中斷事 件間做選擇,於狀態504期間中斷排序器區塊2M執行決定 優先順位處理。此種決定優先順位處理可仿真傳統系統中 23 1338225 藉專用APIC所執行的決定優朱順位體系 。例如,APIC中斷 定義為落入重要性類別。於至少一個實施例中,各個Apic 案例之架構狀態登錄項目41〇(第4圖)對每個邏輯處理器可 保有高達240懸而未決之中斷。此等可能落入16個重要性類 5別,而被歸類為16優先順位群。類別16-31之中斷的優先順 位係尚於類別32-47的優先順位。中斷類別號碼愈低,則中 斷優先順位愈高。如此,中斷排序器區塊214注視Apic案例 之240位元,若有多於一位元被設定,則於狀態5〇4只拾取 一個事件(基於既有的A PIC架構優先順位法則) 。於至少一 10個實施例中’中斷排序器區塊214激發APIC邏輯212來執行 此種優先順位的排序。 然後方法500於狀態504期間對所選定的事件排程或執 行適當動作。例如,事件可能為確認等候先前由輸出的訊 息佇列之一所發送的一中斷訊息。另外,事件可能為需要 15發送的輸出中斷訊息。或,輸入的中斷訊息或確認需要由 排序器之一服務。中斷排序器區塊214可作動AP1C邏輯212 來於狀態504服務該事件。 於等候確認之情況下,中斷排序器區塊214可諮詢微架 構狀態303來確定正在等候此種確認。若是,則中斷排序器 20區塊214諮詢APIC狀態202之適當登錄項目來於狀態5〇4判 定是否已經接收到確認。若否,則退出狀態504,處理下_ 個排序器事件。 若已經接收到確認,則微架構狀態303更新來反映出無 需再等候確認。清除計分板304之該APIC案例之登錄項目, 24 隨後變遷返回狀態502。於至少一個實施例中,計分板登錄 項目304唯有於目前接收到的事件為唯一對該Api(:案例為 未決事件時才被清除。 至於另一個實例,若於狀態5 04欲被服務的事件為發送 5中斷訊息(透過本地互連裝置1〇2或系統互連裝置1〇6發 送)’則此種事件可於狀態504被服務如下。假設為前述優 先順位處理,中斷排序器區塊214由目前接受服務的邏輯處 理器之APIC案例,判定欲傳輸哪一個輸出訊息。然後將輸 出訊息排程供傳輸,有預定之目的地位址,來傳出至適當輸 1〇出訊息佇列(輸出本地訊息佇列208或輸出系統訊息佇列2丨〇)。 若於事件完全接受服務前,輸出訊息要求額外服務, 諸如接收確認,則集中化中斷控制器110可更新微架構狀態 303來指示對此事件需要進一步服務(透過本地互連裝置 1〇2或系統互連裝置106輸出確認’可於輸入訊息佇列2〇4、 15 206中佇列等候,最後更新至集中化APIC狀態202,故可於 相關APIC案例之狀態504的下次迭代運算期間處理)。方法 由狀態504變遷至狀態502。 第6圖顯示可執行所揭示之技術之多執行緒運算系統 9〇〇之至少一個樣本實施例。運算系統9〇〇包括至少一個處 20理器核心904(0)及記憶體系統940。運算系統900可包括額外 核心(高達904(n)),如虛線及橢圓指示。 記憶體系統940可包括大型相對較緩慢的記憶體儲存 裝置902,以及一個或多個小型而相對快速的快取記憶體, 諸如指令快取記憶體944及/或資料快取記憶體942。記憶體 25 1338225 儲存裝置902可儲存指令91〇4資料912來控制處理器904之 操作。
記憶體系統940意圖作為記憶體之一般性代表,可包括 多種記憶體形式’諸如硬碟' CD-ROM、隨機存取記憶體 5 (Ram)、動態隨機存取記憶體(DRAM)、靜態隨機存取記憶 體(SRAM)、快閃記憶體及相關電路。記憶體系統94〇可儲 存由資料信號呈現的指令910及/或資料912,該等信號可藉 處理器904執行。指令910及/或資料912可包括用來執行此 處所述任何技術或全部技術之密碼及/或資料。 10 第6圖顯示可耦接至集中化中斷控制器110之各個處理
器904。各個處理器904包括一前端920,其供給指令資訊予 一執行核心930。被提取的指令資訊可緩衝於快取記憶體 225來等候執行核心930的執行。前端920可以規劃順序供給 指令資訊予執行核心930。於至少一個實施例中,前端920 15 包括提取/解碼單元322,其判定欲執行的下一個指令。於 系統900之至少一個實施例中,提取/解碼單元322可包括單 一下一個指令指標器及提取邏輯320。但於各個處理器904 支援多重執行緒内文之實施例中,提取/解碼單元322對各 個所支援的執行緒内文係實作分開的下一個指令指標器及 2〇 提取邏輯320。於多處理器環境下額外下一個指令指標器及 提取邏輯320之任選的本質以虛線標示於第6圖。 此處所述方法之實施例可於硬體、硬體乳化軟體、或 其它軟體、韌體、或此等實作技術之組合中實作。本發明 之實施例可對可程式系統實作,可程式系統包含至少一個 26 1338225 處理器…資料赫系統(包#依電性及非依紐記憶體及 /或儲料件)、至少-個輸人裝置及至少_個輸出裝置。用 於本案之目的,處理系統包括任何有處理器的系統,諸如 數位信號處理器(DSP)、微控制器、特殊應用積體電路(—ο 5 或微處理器。 程式可儲存於可藉-般用途或特殊用途可程式處理系 統讀取之儲存媒體或裝置(例如硬碟機、軟碟機、唯讀記憶 體(ROM)、CD-ROM裝置、快取記憶體、數位影音光碟(dvd) 或其匕儲存裝置)上。可存取處理系統中之處理器之指令, 1〇當儲存媒體或裝置係由處理系統讀取時可供組配及操胃^處 理系統來執行此處所述程序。本發明之實施例也可視為以 組配用於處理系統之機器可讀取儲存媒體實作,如此組配 的儲存媒體造成處理系統以特殊預定方式操作來執行此處 所述功能。 15 樣本系統900為基於可得自英特爾公司(Intel
Coloration)之奔騰(Pentium)、奔騰Pro、奔騰π、奔騰⑴、 奔騰4、意泰寧(Itanium)、及意泰寧2微處理器及行動英特 爾奔騰III處理器及行動英特爾奔騰4處理器-M之代表性 處理系統,但也可使用任何其它系統(包括有其它微處理器 20 之個人電腦(PC)、工程處理工作站、個人數位處理器及其 它掌上型裝置、機上盒等)。於一個實施例中,樣本系統可 執行得自微軟公司(Microsoft Cc^poration)之視窗(Windows) 作業系統之版本,但也可使用其它作業系統及圖形使用者 介面。 27 雖然已經顯示及說明本發明之特定實施例,但熟諳技 藝人士 了解可未悖離隨附之申請專利範圍做出變化及修 改。例如至少一個集中化APIC狀態2〇2之實施例可包括單— 。賣取蜂及單一寫入埠。於此等實施例中,輸入系統訊息佇 列204、輸入本地訊息佇列206及中斷排序器區塊214可利用 仲裁邏輯(圖中未顯示)來存取集中化Apic狀態2〇2。 此外’例如第5圖所示方法50〇之至少一個實施例可排 除狀態508。熟諸技藝人士了解狀態508只提供效能增強(電 力節省)’但非申請專利範圍中之本發明之實施例所必需。 此外’例如’前文說明前文討論之集中化中斷控制器 110之至少一個實施例可排除計分板304。用於此等實施 例’中斷排序器區塊214可循序橫過架構APIC狀態302之登 錄項目410,來判定欲接收來自於APIC邏輯212之服務之次 一 APIC案例。 如此’熟諳技藝人士了解可未悖離本發明之廣義態樣 而做出變化及修改。隨附之申請專利範圍於其範圍内涵蓋 全部此等落入於本發明之精髓範圍内之修改。 【闽式簡單說明】 第1圖為方塊圖,顯示對多個處理單元提供中斷控制之 一種集中化中斷控制器之至少一個實施例。 第2圖為方塊圖,顯示集中化中斷控制器之至少一個實 施例之進一步細節。 第3圖為方塊圖,顯示多排序器系統之各個實施例。 第4圖為方塊圖,顯示用於多個核心之中斷狀態之中央 1338225 倉儲之至少一個實施例。 第5圖為狀態變遷圖,顯禾用於一集中化中斷控制器之 一中斷排序器區塊之操作之玄少一個實施例。 第6圖為方塊圖,顯示巧·執行所揭示之技術之一種電腦 系統之至少一個樣本實施例。 【主要元件符敢說明】
100…系統 102…本地互連裝置 104...核心 106…系統互連裝置 110…集中化中斷控制器 112…系統介面邏輯 114··$邊輸入/輸出(I/O)裝置 116…系統元件、記憶體 301、303...微架構狀態 302…架構狀態 304.. .處理器、記分板 310.. .單核心多排序器多執行緒# 境 312.. .架構狀態 320…下一-指令-指標器與提取邏 輯 150…晶粒
322…實體提取/解碼單元 350.”多核心多執行緒環境 360…晶片封裝體 410、412“·登錄項目 500、508…狀態、方塊 900…多執行緒運算系统 902…儲存震置 904…處理器核心 910...指令 202…集中化先進可規劃中斷控制 器(APIC)狀態 204…輸入系統訊息佇列 206…#八本地訊息佇列 208·..輸出本)也讯息^宁列 210…輸出系統訊息作列 212...APIC中斷傳輸邏輯 214…中斷排序器區塊 225.··快取記憶體 912…資料 29 1338225 920.. .前端 ’942...資料快取記憶體 930.. .執行核心 944...指令快取記憶體 940.. .記憶體系統
(£ ) 30

Claims (1)

1338225 5
15
20 乃年?月”日修正本 —--—- 十、申請專利範圍:· 】.一種用於中斷控制之裝置,包含: 一單-邏輯區塊,用來對傳輸中斷訊息往來於多個 處理單S之動作進行優摘位的排序及控制功能,其中 該邏輯區塊為該等多個處理單元所共享; 、 耗接至該邏輯區塊之—中斷排序器區塊用來對該 等多個處理單it排程中斷事件供由該邏輯區塊處理;Λ -儲存區,用來對該等多個處理單元各自維持架構 中斷狀態資訊; -個或多個内送訊息糾,用來接收内送中斷訊息 以及將來自於該等訊息之資訊置入該儲存區;以及〜 -個或多個外送訊息仔列,用來發送外送中斷訊 息。 。 2-如申請專利範圍第1項之裝置,其令: 。。該單-邏輯區塊包括非冗餘電路而非對各個處理 單元包括冗餘邏輯裝置。 3.如申請專利範圍第1項之裝置,其中: 該中斷排序器區塊係用來根據一公平體系為該等 多個處理單元排程該等中斷事件。 4·如申請專利範圍第3項之裝置,其中: 該中斷排序器區塊係用來根據一循序橫越該儲存 區之順序為該等多個處理單元排程該等中斷事件。 5·如申請專利範圍第丨項之裝置,其進一步包含: —計分板,用來維持有關哪一個處理單元有懸而未 31 決之中斷事件之資料。 如申凊專利範圍第丨項之裝置,其中: 該儲存區進一步係供儲存微架構狀態資訊。 .如申請專利範圍第1項之裝置,其中: 該等多個處理單元欲透過一本地互連裝置通訊。 8’如申請專利範圍第7項之裝置,其中: 該一個或多個輸入訊息佇列包括用來透過該本地 互連裝置接收内送中斷訊息之一訊息佇列;以及 該一個或多個輸出訊息佇列包括用來透過該本地 互連裝置發送外送中斷訊息之一訊息佇列。 9‘如申請專利範圍第7項之裝置,其中: 該一個或多個輸入訊息佇列包括用來透過一系統 互連裝置接收内送中斷訊息之一訊息仔列;以及 5玄一個或多個輸出訊息佇列包括用來透過該系統 互連裝置發送外送中斷訊息之一訊息仔列。 瓜如申請專利範圍第旧之裝置,其中該—或多個外送訊 息佇列進一步: 由該儲存區取回有關該等外送中斷訊息之資訊。 如申請專利範圍第旧之裝置,其中該—個或多個外送 訊息彳宁列進一步包含: 防火牆邏輯裝置’用來抑制料外送中斷訊息中之 一或多者的傳輸。 12·如申請專利範圍第1項之裝置,其中該-個或多個㈣ 訊息佇列進一步包含·· 32 1338225
10 15
20 防火牆邏輯裝置,用來抑制該等内送中斷訊息中之 一或多者傳輸至該等處理單元中之一者或多者。 13. —種用於中斷控制之方法,包含有下列步驟: 藉一單一邏輯區塊來對傳輸中斷訊息往來於多個 處理單元之動作進行優先順位的排序及控制功能; 諮詢一儲存陣列來針對該等處理單元之一判定架 構中斷狀態;將該等處理單元之一加以排程以供用於 一非冗餘中斷傳輸區塊之中斷傳輸服務; 對該等多個處理單元排程中斷事件供由該邏輯區 塊處理;以及 對該等多個處理單元各自維持架構中斷狀態資訊; 其中該排程步驟係根據一公平體系執行,允許各個 處理單元可同等存取該非冗餘中斷傳輸區塊。 14. 如申請專利範圍第13項之方法,其中: 該非冗餘中斷傳輸區塊包括先進可程式中斷控制 器(APIC)邏輯裝置。 15. 如申請專利範圍第13項之方法,其中·· 該公平體系為用於具有一或多個懸而未決之中斷 事件之該等處理單元之一種循序輪轉體系。 16. —種執行緒化運算系統,包含: 多個處理單元,用來執行一或多個執行緒; 一單一邏輯區塊,用來對傳輸中斷訊息往來於多個 處理單元之動作進行優先順位的排序及控制功能; 耦接至該邏輯區塊之一中斷排序器區塊,用來對該 33 1338225 等多個處理單元排程中斷事件供由該邏輯區塊處理; 耦接至該等處理單元之一記憶體,用來對該等多個 處理單元各自維持架構中斷狀態資訊;及 一共享中斷控制器,用來對該等多個處理單元提供 5 中斷傳輸服務。 17. 如申請專利範圍第16項之系統,其中: 該共享中斷控制器進一步對該等多個處理單元提 供APIC中斷傳輸服務。 18. 如申請專利範圍第16項之系統,進一步包含: 10 該等處理單元不含有自備式AHC中斷傳輸邏輯裝 置。 19. 如申請專利範圍第16項之系統,其中: 該共享中斷控制器進一步包括防火牆邏輯裝置。 20. 如申請專利範圍第16項之系統,其進一步包含: 15 耦接於該等多個處理單元間之一本地互連裝置。 21. 如申請專利範圍第20項之系統,其中該共享中斷控制器 進一步包含: 防火牆邏輯裝置,用來抑制一個或多個中斷訊息透 過該本地互連裝置傳輸。 20 22.如申請專利範圍第16項之系統,其進一步包含: 耦接至該共享中斷控制器之一系統互連裝置。 23.如申請專利範圍第22項之系統,其中該共享中斷控制器 進一步包含: 防火牆邏輯裝置,用來抑制一個或多個中斷訊息透 34 1338225
過該系統互連裝置傳輸。· 24.如申請專利範圍第16項之系統,其中: 該共享中斷控制器係進一步於該等多個處理單元 間排程中斷之串列式服務。 35
TW095141105A 2005-11-08 2006-11-07 Centralized interrupt controller TWI338225B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/270,750 US20070106827A1 (en) 2005-11-08 2005-11-08 Centralized interrupt controller

Publications (2)

Publication Number Publication Date
TW200739355A TW200739355A (en) 2007-10-16
TWI338225B true TWI338225B (en) 2011-03-01

Family

ID=38005135

Family Applications (1)

Application Number Title Priority Date Filing Date
TW095141105A TWI338225B (en) 2005-11-08 2006-11-07 Centralized interrupt controller

Country Status (2)

Country Link
US (1) US20070106827A1 (zh)
TW (1) TWI338225B (zh)

Families Citing this family (149)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050033831A1 (en) * 2002-10-08 2005-02-10 Abbas Rashid Advanced processor with a thread aware return address stack optimally used across active threads
US7346757B2 (en) * 2002-10-08 2008-03-18 Rmi Corporation Advanced processor translation lookaside buffer management in a multithreaded system
US7984268B2 (en) * 2002-10-08 2011-07-19 Netlogic Microsystems, Inc. Advanced processor scheduling in a multithreaded system
US7334086B2 (en) * 2002-10-08 2008-02-19 Rmi Corporation Advanced processor with system on a chip interconnect technology
US20050033889A1 (en) * 2002-10-08 2005-02-10 Hass David T. Advanced processor with interrupt delivery mechanism for multi-threaded multi-CPU system on a chip
US9088474B2 (en) * 2002-10-08 2015-07-21 Broadcom Corporation Advanced processor with interfacing messaging network to a CPU
US8037224B2 (en) * 2002-10-08 2011-10-11 Netlogic Microsystems, Inc. Delegating network processor operations to star topology serial bus interfaces
US7461215B2 (en) * 2002-10-08 2008-12-02 Rmi Corporation Advanced processor with implementation of memory ordering on a ring based data movement network
US20050044324A1 (en) * 2002-10-08 2005-02-24 Abbas Rashid Advanced processor with mechanism for maximizing resource usage in an in-order pipeline with multiple threads
US7961723B2 (en) 2002-10-08 2011-06-14 Netlogic Microsystems, Inc. Advanced processor with mechanism for enforcing ordering between information sent on two independent networks
US8176298B2 (en) * 2002-10-08 2012-05-08 Netlogic Microsystems, Inc. Multi-core multi-threaded processing systems with instruction reordering in an in-order pipeline
US7924828B2 (en) * 2002-10-08 2011-04-12 Netlogic Microsystems, Inc. Advanced processor with mechanism for fast packet queuing operations
US7627721B2 (en) * 2002-10-08 2009-12-01 Rmi Corporation Advanced processor with cache coherency
US8015567B2 (en) * 2002-10-08 2011-09-06 Netlogic Microsystems, Inc. Advanced processor with mechanism for packet distribution at high line rate
US8478811B2 (en) * 2002-10-08 2013-07-02 Netlogic Microsystems, Inc. Advanced processor with credit based scheme for optimal packet flow in a multi-processor system on a chip
US8799687B2 (en) 2005-12-30 2014-08-05 Intel Corporation Method, apparatus, and system for energy efficiency and energy conservation including optimizing C-state selection under variable wakeup rates
US7568758B2 (en) * 2007-01-03 2009-08-04 Kolcraft Enterprises High chairs and methods to use high chairs
US8190864B1 (en) * 2007-10-25 2012-05-29 Oracle America, Inc. APIC implementation for a highly-threaded x86 processor
US20090150696A1 (en) * 2007-12-10 2009-06-11 Justin Song Transitioning a processor package to a low power state
US8024590B2 (en) 2007-12-10 2011-09-20 Intel Corporation Predicting future power level states for processor cores
US9596324B2 (en) * 2008-02-08 2017-03-14 Broadcom Corporation System and method for parsing and allocating a plurality of packets to processor core threads
US8260996B2 (en) * 2009-04-24 2012-09-04 Empire Technology Development Llc Interrupt optimization for multiprocessors
US8321614B2 (en) * 2009-04-24 2012-11-27 Empire Technology Development Llc Dynamic scheduling interrupt controller for multiprocessors
US8234431B2 (en) * 2009-10-13 2012-07-31 Empire Technology Development Llc Interrupt masking for multi-core processors
US8705524B1 (en) * 2010-06-17 2014-04-22 Adtran, Inc. Systems and methods for embedding metadata in data packets
WO2011161893A1 (ja) * 2010-06-25 2011-12-29 パナソニック株式会社 計算機システム
US8943334B2 (en) 2010-09-23 2015-01-27 Intel Corporation Providing per core voltage and frequency control
US9069555B2 (en) 2011-03-21 2015-06-30 Intel Corporation Managing power consumption in a multi-core processor
US8793515B2 (en) 2011-06-27 2014-07-29 Intel Corporation Increasing power efficiency of turbo mode operation in a processor
US8769316B2 (en) 2011-09-06 2014-07-01 Intel Corporation Dynamically allocating a power budget over multiple domains of a processor
US8688883B2 (en) 2011-09-08 2014-04-01 Intel Corporation Increasing turbo mode residency of a processor
US9074947B2 (en) 2011-09-28 2015-07-07 Intel Corporation Estimating temperature of a processor core in a low power state without thermal sensor information
US8914650B2 (en) 2011-09-28 2014-12-16 Intel Corporation Dynamically adjusting power of non-core processor circuitry including buffer circuitry
US8954770B2 (en) 2011-09-28 2015-02-10 Intel Corporation Controlling temperature of multiple domains of a multi-domain processor using a cross domain margin
US9026815B2 (en) 2011-10-27 2015-05-05 Intel Corporation Controlling operating frequency of a core domain via a non-core domain of a multi-domain processor
US8832478B2 (en) 2011-10-27 2014-09-09 Intel Corporation Enabling a non-core domain to control memory bandwidth in a processor
US8943340B2 (en) 2011-10-31 2015-01-27 Intel Corporation Controlling a turbo mode frequency of a processor
US9158693B2 (en) 2011-10-31 2015-10-13 Intel Corporation Dynamically controlling cache size to maximize energy efficiency
US8972763B2 (en) 2011-12-05 2015-03-03 Intel Corporation Method, apparatus, and system for energy efficiency and energy conservation including determining an optimal power state of the apparatus based on residency time of non-core domains in a power saving state
US9239611B2 (en) 2011-12-05 2016-01-19 Intel Corporation Method, apparatus, and system for energy efficiency and energy conservation including balancing power among multi-frequency domains of a processor based on efficiency rating scheme
US9052901B2 (en) 2011-12-14 2015-06-09 Intel Corporation Method, apparatus, and system for energy efficiency and energy conservation including configurable maximum processor current
US9372524B2 (en) 2011-12-15 2016-06-21 Intel Corporation Dynamically modifying a power/performance tradeoff based on processor utilization
US9098261B2 (en) 2011-12-15 2015-08-04 Intel Corporation User level control of power management policies
US9323316B2 (en) 2012-03-13 2016-04-26 Intel Corporation Dynamically controlling interconnect frequency in a processor
US9436245B2 (en) 2012-03-13 2016-09-06 Intel Corporation Dynamically computing an electrical design point (EDP) for a multicore processor
CN104169832B (zh) 2012-03-13 2017-04-19 英特尔公司 提供处理器的能源高效的超频操作
CN104204825B (zh) 2012-03-30 2017-06-27 英特尔公司 动态测量处理器中的功耗
WO2013162589A1 (en) 2012-04-27 2013-10-31 Intel Corporation Migrating tasks between asymmetric computing elements of a multi-core processor
US8984313B2 (en) 2012-08-31 2015-03-17 Intel Corporation Configuring power management functionality in a processor including a plurality of cores by utilizing a register to store a power domain indicator
US9063727B2 (en) 2012-08-31 2015-06-23 Intel Corporation Performing cross-domain thermal control in a processor
US9342122B2 (en) 2012-09-17 2016-05-17 Intel Corporation Distributing power to heterogeneous compute elements of a processor
US9423858B2 (en) 2012-09-27 2016-08-23 Intel Corporation Sharing power between domains in a processor package using encoded power consumption information from a second domain to calculate an available power budget for a first domain
US8924615B2 (en) 2012-10-26 2014-12-30 Arm Limited Communication of message signalled interrupts
US9575543B2 (en) 2012-11-27 2017-02-21 Intel Corporation Providing an inter-arrival access timer in a processor
US9183144B2 (en) 2012-12-14 2015-11-10 Intel Corporation Power gating a portion of a cache memory
US9405351B2 (en) 2012-12-17 2016-08-02 Intel Corporation Performing frequency coordination in a multiprocessor system
US9292468B2 (en) 2012-12-17 2016-03-22 Intel Corporation Performing frequency coordination in a multiprocessor system based on response timing optimization
US9075556B2 (en) 2012-12-21 2015-07-07 Intel Corporation Controlling configurable peak performance limits of a processor
US9235252B2 (en) 2012-12-21 2016-01-12 Intel Corporation Dynamic balancing of power across a plurality of processor domains according to power policy control bias
US9081577B2 (en) 2012-12-28 2015-07-14 Intel Corporation Independent control of processor core retention states
US9164565B2 (en) 2012-12-28 2015-10-20 Intel Corporation Apparatus and method to manage energy usage of a processor
WO2014108747A1 (en) * 2013-01-10 2014-07-17 Freescale Semiconductor, Inc. Integrated circuit processor and method of operating a integrated circuit processor
US9335803B2 (en) 2013-02-15 2016-05-10 Intel Corporation Calculating a dynamically changeable maximum operating voltage value for a processor based on a different polynomial equation using a set of coefficient values and a number of current active cores
US9367114B2 (en) 2013-03-11 2016-06-14 Intel Corporation Controlling operating voltage of a processor
US9395784B2 (en) 2013-04-25 2016-07-19 Intel Corporation Independently controlling frequency of plurality of power domains in a processor system
US9377841B2 (en) 2013-05-08 2016-06-28 Intel Corporation Adaptively limiting a maximum operating frequency in a multicore processor
US9823719B2 (en) 2013-05-31 2017-11-21 Intel Corporation Controlling power delivery to a processor via a bypass
US9471088B2 (en) 2013-06-25 2016-10-18 Intel Corporation Restricting clock signal delivery in a processor
US9348401B2 (en) 2013-06-25 2016-05-24 Intel Corporation Mapping a performance request to an operating frequency in a processor
US9348407B2 (en) 2013-06-27 2016-05-24 Intel Corporation Method and apparatus for atomic frequency and voltage changes
US9377836B2 (en) 2013-07-26 2016-06-28 Intel Corporation Restricting clock signal delivery based on activity in a processor
US9495001B2 (en) 2013-08-21 2016-11-15 Intel Corporation Forcing core low power states in a processor
US10386900B2 (en) 2013-09-24 2019-08-20 Intel Corporation Thread aware power management
US9594560B2 (en) 2013-09-27 2017-03-14 Intel Corporation Estimating scalability value for a specific domain of a multicore processor based on active state residency of the domain, stall duration of the domain, memory bandwidth of the domain, and a plurality of coefficients based on a workload to execute on the domain
US9405345B2 (en) 2013-09-27 2016-08-02 Intel Corporation Constraining processor operation based on power envelope information
US9494998B2 (en) 2013-12-17 2016-11-15 Intel Corporation Rescheduling workloads to enforce and maintain a duty cycle
US9459689B2 (en) 2013-12-23 2016-10-04 Intel Corporation Dyanamically adapting a voltage of a clock generation circuit
US9323525B2 (en) 2014-02-26 2016-04-26 Intel Corporation Monitoring vector lane duty cycle for dynamic optimization
US10108454B2 (en) 2014-03-21 2018-10-23 Intel Corporation Managing dynamic capacitance using code scheduling
US9665153B2 (en) 2014-03-21 2017-05-30 Intel Corporation Selecting a low power state based on cache flush latency determination
US9760158B2 (en) 2014-06-06 2017-09-12 Intel Corporation Forcing a processor into a low power state
US10417149B2 (en) 2014-06-06 2019-09-17 Intel Corporation Self-aligning a processor duty cycle with interrupts
US9513689B2 (en) 2014-06-30 2016-12-06 Intel Corporation Controlling processor performance scaling based on context
US9606602B2 (en) 2014-06-30 2017-03-28 Intel Corporation Method and apparatus to prevent voltage droop in a computer
US9575537B2 (en) 2014-07-25 2017-02-21 Intel Corporation Adaptive algorithm for thermal throttling of multi-core processors with non-homogeneous performance states
US9760136B2 (en) 2014-08-15 2017-09-12 Intel Corporation Controlling temperature of a system memory
US9671853B2 (en) 2014-09-12 2017-06-06 Intel Corporation Processor operating by selecting smaller of requested frequency and an energy performance gain (EPG) frequency
US10339023B2 (en) 2014-09-25 2019-07-02 Intel Corporation Cache-aware adaptive thread scheduling and migration
US9977477B2 (en) 2014-09-26 2018-05-22 Intel Corporation Adapting operating parameters of an input/output (IO) interface circuit of a processor
US9684360B2 (en) 2014-10-30 2017-06-20 Intel Corporation Dynamically controlling power management of an on-die memory of a processor
US9703358B2 (en) 2014-11-24 2017-07-11 Intel Corporation Controlling turbo mode frequency operation in a processor
US20160147280A1 (en) 2014-11-26 2016-05-26 Tessil Thomas Controlling average power limits of a processor
US9710043B2 (en) 2014-11-26 2017-07-18 Intel Corporation Controlling a guaranteed frequency of a processor
US10048744B2 (en) 2014-11-26 2018-08-14 Intel Corporation Apparatus and method for thermal management in a multi-chip package
US10877530B2 (en) 2014-12-23 2020-12-29 Intel Corporation Apparatus and method to provide a thermal parameter report for a multi-chip package
US20160224098A1 (en) 2015-01-30 2016-08-04 Alexander Gendler Communicating via a mailbox interface of a processor
US9639134B2 (en) 2015-02-05 2017-05-02 Intel Corporation Method and apparatus to provide telemetry data to a power controller of a processor
US9910481B2 (en) 2015-02-13 2018-03-06 Intel Corporation Performing power management in a multicore processor
US10234930B2 (en) 2015-02-13 2019-03-19 Intel Corporation Performing power management in a multicore processor
US9874922B2 (en) 2015-02-17 2018-01-23 Intel Corporation Performing dynamic power control of platform devices
US9842082B2 (en) 2015-02-27 2017-12-12 Intel Corporation Dynamically updating logical identifiers of cores of a processor
US9710054B2 (en) 2015-02-28 2017-07-18 Intel Corporation Programmable power management agent
US9760160B2 (en) 2015-05-27 2017-09-12 Intel Corporation Controlling performance states of processing engines of a processor
US9710041B2 (en) 2015-07-29 2017-07-18 Intel Corporation Masking a power state of a core of a processor
US10001822B2 (en) 2015-09-22 2018-06-19 Intel Corporation Integrating a power arbiter in a processor
US9983644B2 (en) 2015-11-10 2018-05-29 Intel Corporation Dynamically updating at least one power management operational parameter pertaining to a turbo mode of a processor for increased performance
US9910470B2 (en) 2015-12-16 2018-03-06 Intel Corporation Controlling telemetry data communication in a processor
US10146286B2 (en) 2016-01-14 2018-12-04 Intel Corporation Dynamically updating a power management policy of a processor
US10289188B2 (en) 2016-06-21 2019-05-14 Intel Corporation Processor having concurrent core and fabric exit from a low power state
US10324519B2 (en) 2016-06-23 2019-06-18 Intel Corporation Controlling forced idle state operation in a processor
US10281975B2 (en) 2016-06-23 2019-05-07 Intel Corporation Processor having accelerated user responsiveness in constrained environment
US10379596B2 (en) 2016-08-03 2019-08-13 Intel Corporation Providing an interface for demotion control information in a processor
US10031833B2 (en) 2016-08-31 2018-07-24 Microsoft Technology Licensing, Llc Cache-based tracing for time travel debugging and analysis
US10379904B2 (en) 2016-08-31 2019-08-13 Intel Corporation Controlling a performance state of a processor using a combination of package and thread hint information
US10042737B2 (en) 2016-08-31 2018-08-07 Microsoft Technology Licensing, Llc Program tracing for time travel debugging and analysis
US10234920B2 (en) 2016-08-31 2019-03-19 Intel Corporation Controlling current consumption of a processor based at least in part on platform capacitance
US10423206B2 (en) 2016-08-31 2019-09-24 Intel Corporation Processor to pre-empt voltage ramps for exit latency reductions
US10031834B2 (en) * 2016-08-31 2018-07-24 Microsoft Technology Licensing, Llc Cache-based tracing for time travel debugging and analysis
US10168758B2 (en) 2016-09-29 2019-01-01 Intel Corporation Techniques to enable communication between a processor and voltage regulator
US10310977B2 (en) 2016-10-20 2019-06-04 Microsoft Technology Licensing, Llc Facilitating recording a trace file of code execution using a processor cache
US10310963B2 (en) 2016-10-20 2019-06-04 Microsoft Technology Licensing, Llc Facilitating recording a trace file of code execution using index bits in a processor cache
US10489273B2 (en) 2016-10-20 2019-11-26 Microsoft Technology Licensing, Llc Reuse of a related thread's cache while recording a trace file of code execution
US10324851B2 (en) 2016-10-20 2019-06-18 Microsoft Technology Licensing, Llc Facilitating recording a trace file of code execution using way-locking in a set-associative processor cache
US10540250B2 (en) 2016-11-11 2020-01-21 Microsoft Technology Licensing, Llc Reducing storage requirements for storing memory addresses and values
US10318332B2 (en) 2017-04-01 2019-06-11 Microsoft Technology Licensing, Llc Virtual machine execution tracing
US10429919B2 (en) 2017-06-28 2019-10-01 Intel Corporation System, apparatus and method for loose lock-step redundancy power management
US10296442B2 (en) 2017-06-29 2019-05-21 Microsoft Technology Licensing, Llc Distributed time-travel trace recording and replay
EP3673344A4 (en) 2017-08-23 2021-04-21 INTEL Corporation SYSTEM, DEVICE AND METHOD FOR ADAPTIVE OPERATING VOLTAGE IN A FIELD-PROGRAMMABLE GATE ARRAY (FPGA)
US10459824B2 (en) 2017-09-18 2019-10-29 Microsoft Technology Licensing, Llc Cache-based trace recording using cache coherence protocol data
US10620266B2 (en) 2017-11-29 2020-04-14 Intel Corporation System, apparatus and method for in-field self testing in a diagnostic sleep state
CN108182930B (zh) * 2017-12-18 2021-12-10 福建星网视易信息系统有限公司 音效处理方法、设备及音视频点播系统
US10620682B2 (en) 2017-12-21 2020-04-14 Intel Corporation System, apparatus and method for processor-external override of hardware performance state control of a processor
US10558572B2 (en) 2018-01-16 2020-02-11 Microsoft Technology Licensing, Llc Decoupling trace data streams using cache coherence protocol data
US11907091B2 (en) 2018-02-16 2024-02-20 Microsoft Technology Licensing, Llc Trace recording by logging influxes to an upper-layer shared cache, plus cache coherence protocol transitions among lower-layer caches
US10496537B2 (en) 2018-02-23 2019-12-03 Microsoft Technology Licensing, Llc Trace recording by logging influxes to a lower-layer cache based on entries in an upper-layer cache
US10642737B2 (en) 2018-02-23 2020-05-05 Microsoft Technology Licensing, Llc Logging cache influxes by request to a higher-level cache
US10620969B2 (en) 2018-03-27 2020-04-14 Intel Corporation System, apparatus and method for providing hardware feedback information in a processor
US10739844B2 (en) 2018-05-02 2020-08-11 Intel Corporation System, apparatus and method for optimized throttling of a processor
US10955899B2 (en) 2018-06-20 2021-03-23 Intel Corporation System, apparatus and method for responsive autonomous hardware performance state control of a processor
US10976801B2 (en) 2018-09-20 2021-04-13 Intel Corporation System, apparatus and method for power budget distribution for a plurality of virtual machines to execute on a processor
US10860083B2 (en) 2018-09-26 2020-12-08 Intel Corporation System, apparatus and method for collective power control of multiple intellectual property agents and a shared power rail
US11656676B2 (en) 2018-12-12 2023-05-23 Intel Corporation System, apparatus and method for dynamic thermal distribution of a system on chip
US11256657B2 (en) 2019-03-26 2022-02-22 Intel Corporation System, apparatus and method for adaptive interconnect routing
US11442529B2 (en) 2019-05-15 2022-09-13 Intel Corporation System, apparatus and method for dynamically controlling current consumption of processing circuits of a processor
US11698812B2 (en) 2019-08-29 2023-07-11 Intel Corporation System, apparatus and method for providing hardware state feedback to an operating system in a heterogeneous processor
CN112559403B (zh) * 2019-09-25 2024-05-03 阿里巴巴集团控股有限公司 一种处理器及其中的中断控制器
US11366506B2 (en) 2019-11-22 2022-06-21 Intel Corporation System, apparatus and method for globally aware reactive local power control in a processor
US11132201B2 (en) 2019-12-23 2021-09-28 Intel Corporation System, apparatus and method for dynamic pipeline stage control of data path dominant circuitry of an integrated circuit
US11921564B2 (en) 2022-02-28 2024-03-05 Intel Corporation Saving and restoring configuration and status information with reduced latency

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2855298B2 (ja) * 1990-12-21 1999-02-10 インテル・コーポレーション 割込み要求の仲裁方法およびマルチプロセッサシステム
US5613128A (en) * 1990-12-21 1997-03-18 Intel Corporation Programmable multi-processor interrupt controller system with a processor integrated local interrupt controller
US5511200A (en) * 1993-12-01 1996-04-23 Intel Corporation Method and apparatus for providing an enhanced programmable priority interrupt controller
AU1261995A (en) * 1993-12-16 1995-07-03 Intel Corporation Multiple programmable interrupt controllers in a multi-processor system
US5721931A (en) * 1995-03-21 1998-02-24 Advanced Micro Devices Multiprocessing system employing an adaptive interrupt mapping mechanism and method
US5689713A (en) * 1995-03-31 1997-11-18 Sun Microsystems, Inc. Method and apparatus for interrupt communication in a packet-switched computer system
US5678057A (en) * 1995-06-07 1997-10-14 Lsi Logic Corporation Multi-Chip-Module (MCM) microcircuit including multiple processors and Advanced Programmable Interrupt Controller (APIC)
US5727217A (en) * 1995-12-20 1998-03-10 Intel Corporation Circuit and method for emulating the functionality of an advanced programmable interrupt controller
US5857090A (en) * 1995-12-29 1999-01-05 Intel Corporation Input/output subsystem having an integrated advanced programmable interrupt controller for use in a personal computer
US5944809A (en) * 1996-08-20 1999-08-31 Compaq Computer Corporation Method and apparatus for distributing interrupts in a symmetric multiprocessor system
US5918057A (en) * 1997-03-20 1999-06-29 Industrial Technology Research Institute Method and apparatus for dispatching multiple interrupt requests simultaneously
US6192442B1 (en) * 1998-04-29 2001-02-20 Intel Corporation Interrupt controller
US6370606B1 (en) * 1998-11-05 2002-04-09 Compaq Computer Corporation System and method for simulating hardware interrupts in a multiprocessor computer system
US6606676B1 (en) * 1999-11-08 2003-08-12 International Business Machines Corporation Method and apparatus to distribute interrupts to multiple interrupt handlers in a distributed symmetric multiprocessor system
US7089341B2 (en) * 2004-03-31 2006-08-08 International Business Machines Corporation Method and apparatus for supporting interrupt devices configured for a particular architecture on a different platform

Also Published As

Publication number Publication date
TW200739355A (en) 2007-10-16
US20070106827A1 (en) 2007-05-10

Similar Documents

Publication Publication Date Title
TWI338225B (en) Centralized interrupt controller
JP3570810B2 (ja) 対称多重処理システム
EP0644487B1 (en) Scalable system interrupt structure for a multiprocessing system
TW406241B (en) Thread switch control in a multithreaded processor system
US6442631B1 (en) Allocating system resources based upon priority
TWI233545B (en) Mechanism for processor power state aware distribution of lowest priority interrupts
CN101872315B (zh) 用于多处理器的中断最优化
CN1324429C (zh) 数据处理系统的低功率系统和方法
US20060136915A1 (en) Method and apparatus for scheduling multiple threads for execution in a shared microprocessor pipeline
US5613126A (en) Timer tick auto-chaining technique within a symmetrical multiprocessing system
US20080140896A1 (en) Processor and interrupt controlling method
JP2013507719A (ja) マルチコアプロセッサのための割込みマスク
CN101221544A (zh) 用于执行dma块移动的方法及dma设备
TW201331832A (zh) 增加處理器的加速模式內駐
WO1999038074A1 (en) Method and apparatus for handling multiple level-triggered and edge-triggered interrupts
US7111182B2 (en) Thread scheduling mechanisms for processor resource power management
WO2012001835A1 (ja) マルチプロセッサシステム
EP0685798B1 (en) Interrupt controllers in symmetrical multiprocessing systems
CN110659115A (zh) 具有硬件辅助任务调度的多线程处理器核
US8024738B2 (en) Method and system for distributing unused processor cycles within a dispatch window
KR100978147B1 (ko) 중앙형 인터럽트 콘트롤러를 위한 장치, 방법 및 시스템
US9886396B2 (en) Scalable event handling in multi-threaded processor cores
US10437736B2 (en) Single instruction multiple data page table walk scheduling at input output memory management unit
JPH06324996A (ja) 集積回路およびプログラマブル・マルチ・プロセッサ割り込みコントローラ・システム
US6708259B1 (en) Programmable wake up of memory transfer controllers in a memory transfer engine

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees