TWI233545B - Mechanism for processor power state aware distribution of lowest priority interrupts - Google Patents
Mechanism for processor power state aware distribution of lowest priority interrupts Download PDFInfo
- Publication number
- TWI233545B TWI233545B TW092134722A TW92134722A TWI233545B TW I233545 B TWI233545 B TW I233545B TW 092134722 A TW092134722 A TW 092134722A TW 92134722 A TW92134722 A TW 92134722A TW I233545 B TWI233545 B TW I233545B
- Authority
- TW
- Taiwan
- Prior art keywords
- component
- item
- processor
- patent application
- scope
- Prior art date
Links
- 238000009826 distribution Methods 0.000 title claims abstract description 7
- 230000007246 mechanism Effects 0.000 title abstract description 16
- 238000000034 method Methods 0.000 claims abstract description 46
- 238000012545 processing Methods 0.000 claims description 34
- 238000004590 computer program Methods 0.000 claims description 3
- 238000011156 evaluation Methods 0.000 claims 7
- 238000010586 diagram Methods 0.000 description 10
- 238000013461 design Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 6
- 238000003860 storage Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 230000002618 waking effect Effects 0.000 description 4
- 101150104680 MCH1 gene Proteins 0.000 description 3
- 101100382379 Rattus norvegicus Cap1 gene Proteins 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000005611 electricity Effects 0.000 description 2
- 238000007667 floating Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- YLZOPXRUQYQQID-UHFFFAOYSA-N 3-(2,4,6,7-tetrahydrotriazolo[4,5-c]pyridin-5-yl)-1-[4-[2-[[3-(trifluoromethoxy)phenyl]methylamino]pyrimidin-5-yl]piperazin-1-yl]propan-1-one Chemical class N1N=NC=2CN(CCC=21)CCC(=O)N1CCN(CC1)C=1C=NC(=NC=1)NCC1=CC(=CC=C1)OC(F)(F)F YLZOPXRUQYQQID-UHFFFAOYSA-N 0.000 description 1
- 102100022840 DnaJ homolog subfamily C member 7 Human genes 0.000 description 1
- 239000004606 Fillers/Extenders Substances 0.000 description 1
- 101000903053 Homo sapiens DnaJ homolog subfamily C member 7 Proteins 0.000 description 1
- 101150037066 TPR3 gene Proteins 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
- 230000007723 transport mechanism 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
- 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
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3243—Power saving in microcontroller unit
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/329—Power saving characterised by the action undertaken by task scheduling
-
- 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/46—Multiprogramming arrangements
-
- 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
-
- 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5094—Allocation of resources, e.g. of the central processing unit [CPU] where the allocation takes into account power or heat criteria
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Description
1233545 (1) 玖、發明說明 【發明所屬之技術領域】 本發明大致關係於微處理機及電腦系統的領域。更明 確地說,本發明關係於最低優先權中斷之處理機電源狀態 旱控分配的機制之方法與設備。 【先前技術】 電腦系統已經大量地分佈於社會中。電腦的處理能力 已經大量地提升各種職業之作業人員之效率與產能。由於 採購並擁有電腦的成本持續下降,有愈來愈多之消費者已 經能利用到更新更快之機器。再者,因爲自由的關係,很 多人一直使用筆記型電腦。行動式電腦使得使用者於其離 開辦公室或旅行時,容易攜帶他們的資料與工作。此方式 對於市場行銷人員、公司執行者甚至學生均相當常用。 一類似現象也發生在桌上型電腦及伺服機器上。當更 新設計及特性被開發時,處理機的計算能力持續呈指數成 長。用於行動及桌上型商場之電腦設計逐漸地遷移至使用 多核心或多線軸處理機,其可以在同一時間內,執行多數 應用程式及工作。部份之系統也被建立有多數實體處理 機。然而’用於增加計算能力之價格標籤同樣地增加真實 功率消耗。換句話說,於這些機器中之功率消耗變成極端 地大。因爲與功率的關係熱考量變得很重要。 本發明係只作例示並不限定於附圖,其中,類似參考 數係表示類似之元件。 (2) (2)1233545 【發明內容】及【實施方式】 本案揭示用以最低優先權中斷之處理機電源狀態掌控 分佈之機制的方法與設備。於此所述之實施例係描述於一 般目的微處理機及晶片組中,但並不限定於此。雖然,以 下實施例係參考處理機及晶片組加以說明,但其他實施例 也可以應用至其他類型之積體電路及邏輯裝置。本發明之 相同技術及教導可以容易適用至其他類型之電源或半導體 裝置,其可以有利於電源監視及改良之中斷處理。本發明 之教導係可適用至執行中斷之任意處理機或機器。然而, 本發明並不限定於多處理機系統或多核心處理機模組,也 可以適用至任一多處理機及機器,其上執行有多線或多工 作者。 於以下說明中,爲了說明目的,多數特定細節係加以 說明,以提供對本發明之完整了解。然而,熟習於本技藝 者將了解到這些細節並非實施本發明所必須。於其他例子 中,已知電子結構及電路並未加以詳細說明,以避免不必 要地限制本發明。 技術已經進步到流行處理機及應用平行化。更多之伺 服器及平台被增加向分線,以增加整體系統效能。更多應 用已經被分線,分離爲指令之多數串流、利用多個處理 機。多處理掌控作業系統可以被排序這些線作系統內之多 處理機間之平行處理。再者,線層次平行也可以發生在每 一處理機上。在例如網路伺服、搜尋引擎、安全、串流媒 -6 - (3) (3)1233545 體及資料庫之領域的雙或多處理應用可以利用增加多線式 及多處理機電腦系統的處理能力。 例如超級分線技術之一種多分線技術係爲同時多線化 技術(SMT )的一形式,其中,軟體應用之多線可以同時 執行在一處理機上。這可以藉由在每一處理機上複製架構 式狀態,同時,共享一組處理機執行資源加以完成。此架 構狀態追縱一程式或線流,及執行資源爲以執行該工作 (即加、乘、裝載等)之處理機爲單位。於部份多處理機 系統中,每一處理機具有其本身組處理機執行資源及其本 身架構狀態。於能執行多處理系統之多線式中,用於每一 處理機之架構狀態可以即使每一處理具有一組執行資源時 仍複製。當排序串線時,作業系統處理在每一處理機上之 分離架構狀態爲分離之,,邏輯,,處理機。邏輯處理機幾乎共 享所有在實體處理機上之其他資源,例如快取、執行單 元、分支預測碼、控制邏輯、及匯流排。如同實體處理 機’每一邏輯處理機可以個別地反應以中斷。一邏輯處理 機可以追縱一第一軟體線,而另一邏輯處理機可以同時追 縱一第二軟體線。因爲多數線係共享一組執行資源,所以 一線可以使用資源,相反地,如果該處理機只執行一線 時’則資源爲空閒。結果,整體執行及系統反應可以改 良。 吾人想要各種改良功率消耗及執行處理機架構的方 法° 一領域涉及來自不同系統裝置之處理機的中斷要求的 處理及服務。於部份系統中,中斷要求係爲晶片組邏輯所 -7- (4) (4)1233545 管理。晶片組邏輯中斷這些要求並決定哪一處理機以分配 所服務之要求。於單一處理機系統中,這是容易完成,因 爲晶片組具有單一目標。但具有多數實體及/或邏輯處理 機之系統中,中斷要求分佈的工作可能變得複雜,因爲晶 片組傾向於最小化對效能中斷的影響。 先進可程式中斷控制器(AP 1C )架構允許裝置中斷 的輸送至一處理機,該處理機於一組目標處理機間操作於 最低優先權者。此處理機優先權係經由用於這些處理之工 作優先權登記的內容加以決定。此特性係基於現行執行中 之處理機代表被執行工作的迫切性之槪念。工作優先權愈 高’則其愈不希望被中斷,因爲這可能對整體效能有不想 要的衝擊。再者,藉由將一中斷指定給系統中之最低優先 權的處理機將提供較佳機會,使得中斷可以以最小量之等 待時間加以進行。 現行中斷輸送機構係不能得知處理機電源狀態,因 此,並不能知道一目標處理機是否在一省電模式。這些中 斷機構對於一處理機是在作業狀態或部份類型之休眠狀態 (例如停止許可、深眠等)是一無所知的。結果,中斷服 務要求可以目標在一睡眠處理機,這將使得處理機醒來並 離開睡眠狀態進入一操作模式,以處理中斷。因爲處理機 睡眠狀態被設計以節省電力,所以藉由叫醒一睡眠中之處 理機,而執行一工作,阻礙了該等目標。因爲多處理機及 多線式架構在行動式及桌上型電腦系統中愈來愈流行,所 以當輸送中斷時,避免對其他處理機省電模式之千擾的省 -8 - (5) (5)1233545 電技術變得更重要。 本發明之實施例使得低優先權中斷輸送設計,於當決 定將中斷要求送向何處時,考量處理機省電狀態。藉由實 現本發明之實施例,在較另一處理機於深睡狀態的一處理 機對於最低優先權中斷,將會是一較不喜好的目標。結 果,於睡眠狀態中之處理機可以持續蟄伏於個別睡眠狀態 中,而不會中斷,造成較佳之省電。 對於部份實施例,作業系統係負責控制省電狀態,也 稱爲C-狀態,其中,處理依據ACPI規格書輸入。作業系 統或系統管理軟體可以依據一處理機如何閒置的程度加以 選擇一適當電源狀態。雖然,可以使用若干ACPI功能作 業系統,但本發明之其他實施例也可以被實施爲所謂”古 董”作業系統及沒有ACPI功能之機器上。本發明之其他 實施例允許執行處理機電源狀態掌控的能力,在較舊系統 中,最低優先權中斷分配具有很少或沒有軟體修改。這對 於不能修改之較舊ACPI功能作業系統係特別想要的。 現參考第1圖,顯示例示電腦系統1 00。系統1 00包 含一元件,例如處理機1 0 1、1 0 5 '及晶片組1 1 6、1 3 0, 以佈署依據本發明之中斷之電源狀態掌控之機制,其係例 如於此所述之實施例。系統1 0 0係爲基於由美國加州聖塔 卡拉之英特爾公司所購得之PENTIUM III、PENTIUM4、 Itanium、及/或X Scale微處理機,但也可以使用其他系統 (包含具有其他微處理機之P C、工程工作站、機頂盒等 等)。於一實施例中,樣品系統1 0 0可以執行由美國華盛 -9- (6) 1233545 頓州雷蒙之微軟公司所購得之視窗作業系統版本 以使用其他作業系統(例如UNIX及Linux), 體,及/或圖形使用者界面。因此,本發明並不 一特定硬體電路及軟體的組合。 本加強並不限定於電腦系統。本發明之其他 可以用於其他裝置,例如手持裝置及內藏裝置。 例子包含行動電路、網際網路協定裝置、數位相 數位助理(PDA )、及手持PC。內藏應用可以 控制器、一數位信號處理機(DSP )、系統晶片 腦(NetPC )、機頂盒、網路集線器、廣域網路 開關、或其他使用中斷之多處理機或多線系統。 份架構已經經由低電源狀態或睡眠模式加以降 耗。因爲電子裝置的外形因素持續縮小及電子元 需求不斷增加,所以需要其他努力來節省電力, 效能具有最小之負面衝擊。 第1圖爲一多處理機電腦1 00之方塊圖,其 理機A 1 0 1及B 1 〇 5形成,依據本發明每一處理 斷處理邏輯103、107。本實施例係以具有多數 機之系統加以說明,但其他實施例也可以使用多 機,其中多邏輯處理機存在於單一實體處理機 地,本發明之其他實施例也可以以多核心模組加 其具有多處理機核心包裝在一起於一單一模組 1 〇〇係爲集線器架構例。電腦系統1 00包含處理 1 〇 5 ’以處理資料信號。處理機1 〇 1、丨〇 5可以爲 ,但也可 內藏式軟 限定於任 實施例也 手持裝置 機、個人 包含一微 、網路電 (WAN ) 再者,部 低功率消 件的電力 同時,對 係由兩處 機包含中 實體處理 線式處理 上。同樣 以實施, 內。系統 機 ιοί、 複雜指令 •10- (7) (7)1233545 集電腦(CISC )微處理機、精簡指令集運算(RISC )微 處理機、超長指令集(VLIW )微處理機、實現指令集組 合之處理機、或其他處理機裝置,例如數位信號處理機。 處理機1 0 1,1 0 5係連接至一處理機匯流排1 1 0,其 可以傳送資料信號於處理機101、105與系統100之其他 元件之間。系統1 00之元件執行爲熟習於本技藝者所知之 傳統功能。於一實施例中,處理機 1 0 1、1 05均包含位準 1 ( L 1 )內部快取記憶體1 〇2、1 06。一中斷處理機制 1 0 3、1 0 7同時也在處理機1 〇 1、1 〇 5內。對於一實施例, 中斷處理器103、107提供有關處理機優先權與電源狀態 的資訊。另一實施例之中斷邏輯103、107也可以用於微 控制器、內藏處理機、圖形裝置、D S P、及其他類型邏輯 電路中。系統1 0 0包含一記憶體1 2 0。 一系統邏輯晶片1 1 6被連接至處理機匯流排1 1 〇及記 憶體1 2 0。於所示實施例中之系統邏輯晶片〗丨6係爲一記 憶體控制器集線器(M C Η )。處理機1 0 1、1 〇 5可以經由 一處理機匯流排110與MCH116通訊。MCH116提供一高 頻寬路徑1 1 8給記憶體1 20,用以指令及資料儲存及用於 圖形命令、資料及質地的儲存。MCH1 16也有關於處理機 1 0 1、1 0 5、記憶體1 2 0、及系統1 〇 〇中之其他元件間之資 料信號,並橋接於處理機匯流排1 1 0、記憶體1 20、及系 統I/O 1 22間之資料信號。於部份實施例中,系統邏輯晶 片1 1 6可以提供用以連接至圖形控制器丨丨2之圖形埠。 MCH 1 1 6係經由記憶體界面]丨8連接至記憶體〗2〇。圖形 -11 - (8) (8)1233545 卡 1 1 2係經由加速圖形埠(AGP )連線1 14連接g MCH1 16。對於一實施例,中斷處理邏輯1 17也位在 M CH1 16內,因爲晶片組接收來自各種系統裝置之中斷要 求並分配中斷至用以處理之適當目的地。對於部份系統, 晶片組可輪詢中斷用之裝置。當分配中斷需要處理機處理 時,用於此實施例之MCH1 16之中斷邏輯117考量處理機 優先權及處理電源狀態。於中斷分配時也可以取決於特定 實施法而考量其他因素。 系統1 0 0使用一獨佔集線界面匯流排122,以將 MCH116連接至I/O控制器集線器(ICH) 130。ICH130 經由本地I/O匯流排,提供至部份I/O裝置的直接連接。 本地I/O匯流排爲一高速I/O匯流排,用以連接週邊至記 憶體1 20、晶片組及處理機1 〇 1、1 〇5。部份例子爲資料儲 存124、無線收發機126、韌體集線器(快閃BI0S ) 128、古董I/O控制器,其包含使用者輸入及鍵盤界面、 一串列擴充埠,例如通用串列匯流排(U S B )、音訊控制 器、及網路控制器134。資料儲存裝置124可以包含一硬 碟機、一軟碟機、一 CD-ROM裝置、一快閃記憶體裝 置、或其他大量儲存裝置。各種連接至 MCH116及 ICH 130之前述裝置均可能需要中斷服務。另外,處理機 也可以發出中斷給其他處理機。 依據本發明之機制實施例允許處理機睡眠狀態資訊輸 送至負責輸送最低優先權中斷的晶片組邏輯或系統元件。 於部份實施例中,當由系統中之可用目標處理機組中選擇 -12- (9) 1233545 一目的處理機作最低優先權中斷的輸送時,晶片組 延伸以使甩此處理機睡眠狀態資訊。一硬體爲主實 機制在處理機操作與睡眠狀態之間,建立一優先權 該機制經由一或多數匯流排週期,傳送此類型之ί 眠狀態資訊至晶片組。用於此實施例之晶片組被設 收操作/睡眠資訊,並於中斷分配演繹法中,將此 入考量。於一軟體爲主之實施例中,於作業系統中 允許處理機睡眠狀態資訊被間接傳送至晶片組,或 以中斷傳輸之系統元件反應至處理機。以本發明 例,一作業系統可以確定在較熟睡狀態中之處理機 以接收較低優先權中斷之較差目標,造成於多處理 線架構中之較佳省電情形。對於一實施例,此架構 要實施於硬體。本發明之其他實施例也可以主要實 體,而不必作硬體改變。再者,部份實施例也可以 硬體及軟體元件之混合組合。於另一實施例中,架 包含硬體及作業系統組合之設計,其中,作業系統 處理機之電源狀態,指定處理機工作優先權TPR 別處理機。例如,一較低電源狀態(即較高數C狀 C2及如以下之第4圖所示)相當於一較高TPR 此’該處理機被指定一較高 T P R値。換句話說 T P R値,中斷並不鼓勵被送至一低電源狀態之處理彳 第2圖爲一包含本發明之電源狀態掌控中斷機 核心處理機模組201與相關晶片組240之一方塊圖 此實施例之多核心處理機模組2 0 1包含兩個別實體 邏輯係 施例之 關係。 #作/睡 計以接 資訊列 之擴充 者,用 之實施 係爲用 機及多 可以主 施爲軟 用作爲 構有一 基於該 値給個 態、如 値,因 ,經由 制之多 200 〇 處理機 -13- 1233545 do) 核心,A 2 2 0及B 2 3 0。於此例子中,兩核心2 2 0、2 3 0均 相同。每一核心22 0、2 3 0均包含:執行邏輯221、23 1,以 執行碼及指令;一內部晶粒內快取222、232,以儲存資 料及指令;及中斷邏輯223、23 3,具有一工作優先權暫 存器(TPR ) 224、234。於部份實施例中,中斷邏輯 223、23 3、與相關TPR224、23 4可以位在處理機模組201 內,但不在核心 220、23 0內。一前側匯流排(FSB )單 元23 5橋接於核心220、23 0間之通訊,以及,外部世界 (即外部匯流排及快取)也位在模組20 1內。於此實施例 中,一單一共享FSB單元2 3 5被連接以服務兩處理機核 心Α220及處理機核心Β23 0。於其他實施例中,每一核心 可以具有其本身FSB單元。同樣地,於另一實施例中, 一單一中斷邏輯單元可以爲多數處理機核心所共享,其中 一 TPR暫存器或用於每一核心之輸入被維持於該中斷邏 輯方塊中。雖然中斷邏輯223、233在第2圖之例子中被 顯示爲分離方塊,但中斷邏輯也可以實體存在爲單一邏輯 方塊,但被邏輯方式複製。 除了兩處理機核心2 2 0、2 3 0外,一快取2 1 0也在處 理機模組201內。處理機核心220、2 3 0與快取210係經 由一在模組201內之匯流排連接在一起。於模組201內之 元件210、22 0、23 0及外部裝置間之通訊係經由一匯流排 界面2 5 0。於此實施例中,匯流排2 5 0係連接至晶片組邏 輯240。此實施例之晶片組240包含具有TPR表242及狀 態資訊表2 4 3之中斷邏輯2 4 1。TP R表2 4 2與狀態資訊表 -14 - (11) (11)1233545 243可以爲一般記憶體儲存位置,例如暫存器,以儲存資 料或資訊。於此所用之“暫存器”被稱爲板上處理機儲存位 置,其被用作爲巨指令之一部份,以指明運算元。換句話 說,於此所稱之暫存器係爲由處理機或元件(由程式師所 見)之外側可看到者。然而,於此所述之暫存器可以藉由 使用不同技術在一元件內之電路加以實施,例如實體暫存 器、使用暫存器重定名之動態指定實體暫存器、專屬或動 態指定實體暫存器之組合。 於系統作業時,資料被傳送於處理機220、2 3 0、快 取2 10、及晶片組240之間。再者,晶片組240由各種系 統裝置傳遞中斷要求至處理機核心220、23 0作處理。於 此實施例中,晶片組除了考量當分配中斷時之處理機優先 權外,也考量處理機電源狀態。此模組20 1之每一處理機 核心2 2 0、2 3 0儲存其優先權位準及其電源狀態於個別 TPR224、23 4中。處理機優先權値表示一特定處理機之操 作優先權與中斷用處理之容許度。再者,處理機優先權値 可以指示相關於系統中其他可用處理機之重要性及控制的 階層。例如,優先權’ 〇 ’之處理機可以爲系統中之主處理 機。高優先權中斷,例如時鐘中斷或非可遮蔽中斷 (NMI )被送給主處理機。固定輸送中斷也可以指定給一 特定處理機。具有高工作優先權値之處理機可以指示一不 應被中斷的處理機工作。例如,若一處理機正執行系統重 要功能,該處理機可以設定其工作優先權値至一適當値, 以避免中斷。具有較低優先權値之其他處理機可以被執行 -15- (12) (12)1233545 較不重要功能,也較容易受到中斷,以處理低優先權中斷 要求。 同樣地,電源狀態値表示特定處理機核心正處理之電 源區。例如,一處理機可以,通電忙碌中,、,通電閒置 中,、,暫停,、,停止許可,、,深睡眠,、,更深睡眠,或,斷 電’。取決於處理機在哪一電源狀態,服務一中斷的要求 可以具有不同電源關聯及完成時間。此例子之核心2 2 0、 230追縱在中斷邏輯223、233內之TPR2 24、234中之處 理機優先權値及處理機電源狀態。優先權値及電源狀態係 由核心2 2 0、2 3 0所傳送至晶片組2 4 0之中斷邏輯2 4 1。 此實施例之晶片組中斷邏輯241包含一 TPR表242及一 電源狀態資訊表24 3,用於系統中之每一處理機,用以分 別儲存處理機優先權値與處理機電源狀態値。因此,當晶 片組中斷邏輯2 4 1正決定哪一處理送出一中斷時,在個別 表242、243中之工作優先權及狀態資訊係被評估並列入 考量。取決於特定實施例之尋找演繹法,一中斷被送至一 特定處理機。於一實施例中,中斷主要爲具有’通電及閒 置’或’通電及忙碌狀態’之處理機所處置,因爲’睡眠’或5 斷電’之核心具有較不想要之電源及潛候衝擊。於一實施 例中,每一處理機的每一資訊段係被儲存於其本身特有暫 存器。 第3圖爲多線處理機301與相關晶片組360之方塊圖 3 0 0,其包含依據本發明之另一電源狀態掌控中斷機制的 實施例。此實施例之處理機模組3 0 ]包含一單一處理機核 -16 - (13) (13)1233545 心3 2 0及一快取記憶體3 1 0。此核心3 2 0係由晶片上快取 3 2 1、中斷邏輯3 2 2、多線邏輯3 2 3、前側匯流排邏輯 3 2 5、整數執行邏輯326、及浮動點執行邏輯3 2 7所構 成。在中斷邏輯內的爲一參考如上述第 2圖所述 TPR3 24。處理機核心320及快取310係與晶片組邏輯360 經由外部匯流排3 5 0連接在一起。晶片組3 60包含中斷邏 輯361,其維持一 TPR表3 62及一電源狀態資訊表3 63。 雖然TPR表3 62及狀態資訊表3 63被顯示爲分離個體, 但在另一實施例中,處理機優先權及電源狀態資訊也可以 儲存在一合倂資料結構中。再者,優先權與電源狀態資訊 可以組合爲用於每一處理機之單一代表値,以指出在中斷 分配給處置處理機的相關想要性及/或優先權。 於此實施例中,出現有單一實體處理機核心。然而, 多線邏輯323允許多指令線予以經由資源共享,而平行處 理於單一組架構資源上。例如,此例子之處理機模組3 0 1 係能同時處理兩線Α及Β。線Α及Β均維持其本身架構 狀態A3 3 0及B 3 40,但經由一資源共享演繹法,利用實體 處理機核心資源。除了實體多線邏輯3 2 3外,作業系統 (例如前述之視窗、UNIX、或Linux )也能發出多線或同 時執行多程式。於部份多處理機系統中,作業系統使用一 最低優先權中斷輸送作爲用於所有裝置中斷的預設演繹 法。由使用者及作業系統看來,系統3 00出現有多個,於 此例子中爲兩個邏輯處理機單元。架構狀態A3 3 0及B3 40 被以例示目的加以顯示並不代表在處理機模組3 〇 1中之實 -17- (14) (14)1233545 際實體邏輯方塊。此例子之架構狀態A3 3 0及B 3 4 0包含 用於每一線之個別處理機暫存器。爲一實施例,架構狀態 包含例如一般目的暫存器、控制暫存器、先進可程式中斷 控制(APIC )暫存器、及其他機器狀態暫存器的暫存 器。每一架構狀態之資料、設定等可以被儲存在處理機 3 01上之記憶體區。 爲此實施例,TPR表3 62及電源狀態資訊表3 63追縱 邏輯處理機之相關値。例如,如同前一例子之實體處理機 核心220、23 0,在此例子中之邏輯處理機的每一架構狀 態3 3 0、340具有一工作優先權値及一電源狀態値。在此 例子中之工作優先權値同時反映該線及工作的相關重要性 及中斷的容許度。第2圖例子之電源狀態値傳送實體電源 設定,此實施例之架構狀態之電源狀態値表示線活動之類 型,及功率消耗量。例如,一線可以爲,忙碌,狀態以表示 該線爲作動中及執行中。或者,一線可以具有一,閒置, 或’中止’狀態以表示該線並未正在執行或者正等待。同樣 地,一線可以具有一 ’睡眠,狀態,以表示該線正睡眠及其 架構狀態正被保持爲不動作。藉由評估處理機電源狀態, 以決定哪一邏輯處理機會送出一中斷服務要求,此晶片組 可以避免叫醒一睡眠線,其可能成本高及耗電高,若另一 線之電源狀態爲’閒置’。晶片組可以中斷具有,忙碌,狀態 之線,以服務一中斷,替代作動一更高成本線。 第4圖例示用於本發明一實施例之處理機電源狀態 (於ACPI規格之C-狀態)。對於此實施例,處理機電源 -18- (15) (15)1233545 狀態由 CO-BUSY4〇l-4〇6延伸,其中,具有,C之字尾數 愈低,則需要以服務一中斷之其他耗用電源量愈低。C0 位準包含一忙碌狀態及一閒置狀態,因爲處理機於兩情況 中均被通電,並執行使用者/核心碼或準備以執行碼。同 樣地,一線可以執行(忙碌)或閒置(迴路)。於此實施 法中之電源狀態的階層,由最活動並需要最小電量以帶到 作動狀態有:C0-BUSY401 、 C0-IDLE402 、 Cl - HALT/WAIT403 、 C2-ST0P GRANT404 、 C3 -DEEP SLEEP40 5及Cn4 06。Cn電源狀態406係爲在階層底部之 任意電源狀態,相對於其他電源狀態,在能服務一中斷 前,花用較大時間量及電源。可用電源狀態之數也可以取 決於特定實施例加以改變。於此所用之處理機及線係可互 相交換,使得一線能參考一邏輯處理機。 對於本發明之一實施例,晶片組中斷邏輯評估由各種 處理機所收到之處理機電源狀態,以決定一相關名單。於 此實施例中,C0-IDLE402狀態係低於 C0-BUSY401狀 態,因爲兩狀態表示一處理機或一線可以以很少或沒有損 耗來處置一中斷。然而,忙碌之處理機/線將必須中斷現 行執行之工作並可能在服務中斷要求前,儲存架構狀態, 而閒置之處理機/線將可以以甚至更少之損耗來立即進行 中斷要求。以停止或睡眠中之處理機/線,如分別在C2 4 04或C3 40 5,處理機/線將必須被喚醒及其架構狀態必 須被重新回復,這將可能需要很大量之時間。再者,喚醒 一睡眠處理機/線可能也需要一些電力,以重新開始或啓 -19- (16) (16)1233545 動必要之硬體邏輯。因此,處理機愈不活動,則在時間及 電力上使得處理機能準備服務中斷的成本愈大。因此,晶 片組中斷邏輯可以被架構以選擇最佳處理機,以基於包含 處理機電源狀態及處理機工作優先權之因素組合,來處置 一中斷要求。 第5圖爲用於一實施例晶片組之處理機工作資訊表輸 入値500的示意圖。輸入値500被儲存於包含暫存器、閂 鎖器等之各種記憶體位置中。對此實施例,每一輸入係由 五欄位構成,長三個位元組之資料,並儲存有關一處理機 工作優先權與處理機電源狀態的資訊。於此例子中之輸入 値 5 0 0的第一欄位爲一實體先進可程式中斷控制器 (xAPIC )識別碼501。此實施例之實體xAPIC ID501指 明輸入値所相關之實體處理機。一實施例之第一欄位係用 以,其中多處理機或多處理機核心被實體出現在系統中。 每一輸入値5 00之第二欄位爲邏輯xAPIC ID 5 02。此實施 例之邏輯xAPIC ID 5 02指明輸入値所相關之邏輯處理機或 線。此邏輯Ϊ D欄位5 0 2係爲此實施中之作業系統所程 式。 於此實施例中之TPR輸入値5 00之第三欄位爲保持 一致能旗標’以指示是否此特定輸入値爲有效否。此致能 欄位也可以用以表示是否該處理機/線能處置中斷。若一 處理機輸入未被致能,則處理機可能不能使用或者不動 作。對此實施例,一第四欄位係用以保持此處理機之電源 狀態5 04 °然而,於其他實施例中,此欄位可以被保留或 -20- (17) (17)1233545 不出現,因爲該中斷邏輯可以合倂電源狀態値及處理機優 先權値成爲一統一値。此實施例之第五欄位爲儲存用於此 處理機之TPR値5 0 5。TPR値用以表示在現行處理機的工 作優先權。此實施例之中斷邏輯的演繹法係被架構以不中 斷具有較中斷要求爲高之優先權的工作,並搜尋另一可能 處理機。但若中斷要求具有較現行工作爲高之優先權,則 工作可以被中斷,以服務該中斷。至於具有優先權位準等 於現行工作之中斷,若沒有另一較低優先權工作之處理 機,則邏輯可以中斷該工作。 於另一實施例中,TPR欄5 05可以架構以保有一整體 電源及工作優先權値,當搜尋一處理機時,中斷分配邏輯 可以由該處評估。雖然,第5圖中之例子的欄位係例示有 例示性欄位長及欄位位置,但此工作優先權表之輸入値及 結果取決於本發明之特定實施法而定。示於第5圖之表輸 入値已經以晶片組邏輯之環境加以說明。然而,類似類型 之結構可以放在每一個別處理機內,並以此作業系統以追 縱可用之每一實體及/或邏輯處理機之工作優先權値及電 源狀態値。 第6 A - D圖爲用以分配中斷之電源狀態掌控方法的一 實施例的流程圖。第6 A圖例示一實施例之電源狀態掌控 中斷分配之高位準方法。在方塊6 0 2,系統被開始或重 置。系統元件離開重置並啓始於方塊6 1 0。此等系統元件 (即處理機、晶片組、記憶體、I/O裝置)例可以於以上 之第1圖找到。作業系統也被啓始化與裝載。於開始程序 -21 - (18) (18)1233545 中,作業系統可以架構各種系統裝置作適當操作。於一實 施例中,作業系統可以爲多工並同時執行多數線。取決於 特定實施而定,作業系統可以在若干邏輯處理機或有的 話,實體處理機/核心執行多線。在方塊6 1 5,系統輸入正 常作業。於正常系統作業中,各類型之使用者應用及系統 工作係爲系統所執行。在方塊6 2 0,每一處理機的工作優 先權與電源狀態被追縱。追縱可以包含收集有關各種實體 及/或邏輯處理機的工作優先權、電源狀態 '及/或活動狀 態的資訊。於方塊6 3 0,檢查決定是否已收到任意中斷要 求。若在方塊6 3 0檢測沒有中斷要求,則系統在6 1 5持續 正常作業。 若在方塊6 3 0檢測出一中斷要求,則晶片組中斷邏輯 處置該要求並決定將該要求送至哪裡作服務。基於因素分 析’包含但並不限定於用於邏輯/實體處理機之工作優先 權値及電源狀態値,中斷邏輯選擇一適當處理機並傳送該 中斷要求。接收處理機服務該中斷要求然後在方塊660回 復其先前之活動。在方塊6 1 5,正常系統操作持續,直到 檢測出另一中斷要求爲止。 第6B圖爲例示於方塊610之啓始程序時,發生之作 業的流程圖。於方塊6 1 1,用於每一處理機之工作優先權 暫存器被啓始。晶片組中斷處置邏輯也在方塊612啓始。 在方塊6 1 3,每一處理機將其工作優先權及電源狀態傳送 至晶片組邏輯。處理機工作優先權及處理機電源狀態資訊 在方塊6 1 4被儲存於晶片邏輯,作用以當需要服務中斷要 -22- (19) 1233545 求時,作後續參考。工作優先權及電源狀態資訊只要在 理機之工作或電源位準改變,即加以更新。 第6C圖之流程圖例示於方塊620之處理機追縱時 操作的其他細節。於方塊62 1,在處理機之工作優先權 存器被更新以一工作優先權値及一電源狀態値。對於一 施例,工作優先權暫存器儲存兩値。於另一實施例中, 値被儲存在不同暫存器中。於另一實施例中,工作優先 暫存器基於兩値,儲存一統一値。新工作優先權與電源 態資訊在方塊622被送至晶片組。在方塊623,晶片組 輯將工作優先權資訊儲存入在用於該處理機之工作資訊 的一格中。此實施例之晶片組可以追縱在系統中之若干 體/邏輯處理機之工作資訊。在表中之每一輸入値被映 至一特定處理機。對此實施例,在方塊624,晶片組邏 也可以映圖處理機工作優先權至對應電源狀態。用於該 作之由該處理機所接收之電源狀態資訊係被存入工作資 表。 第 6D圖爲本發明一實施例中,當中斷要求在方 6 3 0被接到並在方塊640服務時,在晶片組邏輯及處理 活動的流程圖。對此實施例,方塊64 1 - 64 5及6 5 1 - 6 5 3 大致發生在晶片組,而方塊646-65 0大致發生在一處 機。在方塊641,晶片組中斷邏輯決定中斷優先權。在 塊642,邏輯檢查用於每一處理機之工作優先權。在方 64 3,也檢查用於每一處理機之電源狀態。在方塊644 於考量有工作優先權位準及電源狀態之演繹法,晶片組 處 暫 實 諸 權 狀 邏 表 實 圖 輯 工 訊 塊 機 係 理 方 塊 基 中 -23 - (20) (20)1233545 斷邏輯選擇一處理機,以服務該要求,並在方塊645送出 中斷要求給處理機。此實施例之晶片組邏輯也更新處理機 工作輸入,以注意中斷優先權與正處置該中斷的處理機。 在方塊64 6,中斷要求被接收於選定處理機。若有一 工作正在處理中,則處理機在方塊6 4 7暫停其現行工作。 在方塊648,用於該處理機之工作優先權輸入値被更新以 一新優先權値。對於一實施例,工作優先權輸入値在處理 機及在晶片組之實體暫存器位置處更新。於另一實施例 中,在爲作業系統所維持之記憶體結構處之工作優先權輸 入値被更新。在方塊 649,處理機服務中斷。在方塊 6 5 0,處理機通知晶片組中斷服務要求的完成並更新處理 機工作優先權値爲該中斷工作之優先權値。在方塊6 5 1, 晶片組接收中斷完成通知及回復之工作優先權値。處理機 資訊表被更新以該工作優先權。在方塊6 5 2,處理機再開 始在中斷前進行之工作,晶片組持續其操作。在方塊 6 5 3,晶片組同時也通知要求者該中斷服務要求之完成。 第7圖爲用於處理機電源狀態掌控之中斷分配的另一 實施例方法的流程圖。本實施例的方法係作業系統加以實 施並經由各種控制信號及指令加以操作。於一實施法中, 韌體係用以轉譯或傳送信號於軟體及硬體元件之間。在方 塊7 0 2,作業系統被開始與重置。爲作業系統所維持在處 理機資訊表中之工作優先權輸入値係在方塊7 04被啓始 化。對此實施例,在方塊706於工作優先權狀態與電源狀 態間建立一映圖。此實施例之工作優先權輸入將處理機工 -24 - (21) (21)1233545 作優先權値及處理機電源狀態値加入單一參考値內。 在方塊708,開始正常系統操作。在方塊710中,作 業系統追縱系統中之每一實體及邏輯處理機之動作中之工 作的工作優先權。在方塊7 1 2,作業系統詢問有關是否中 斷要求已經被接收。若沒有中斷要求要處理,則方塊7 0 8 繼續正常系統操作。用者應用及系統工作持續執行。但若 仍有中斷要求未處理,則作業系統在方塊7 1 4接收用以分 配之要求。在方塊716,作業系統分析每一處理機之儲存 在資訊表工作優先權及電源狀態値。在方塊7 1 8,作業系 統選擇具有適當優先權及電源狀態之處理機,以服務中斷 要求。對於一實施例,適當處理機係爲具有最低優先權工 作及最高優先權狀態者。換句話說,在要求被服務前,具 有最小時間潛候期及最小消耗功率需求之處理機係被選 擇。 於一實施例中,重要工作或高優先權工作典型不被中 斷以服務較低優先權之中斷。同樣地,部份類型之睡眠模 式之處理機可能是服務中斷要求所不想要之候選者,因爲 以功率及時間看來,喚醒一處理機可能成本較高。在方塊 7 20 ’中斷要求被傳送至用以服務之選定處理機。在方塊 7 22,用於該處理機之工作優先權輸入被更新,以反映中 斷要求之優先權。目標處理機接收及處置該要求。在方塊 724,作業系統被通知要求之完成。在方塊726,回復用 於該處理機之工作優先權輸入値。對於一實施例,在方塊 7 2 8,處理機回復操作最後中斷要求接收時仍在手上之工 -25· (22) (22)1233545 作。 雖然,上述例子描述以執行單元及邏輯電路方式來作 中斷處置與分配,但本發明之其他實施例可以以軟體加以 完成。此軟體可以被儲存在系統之記憶體中。同樣地’碼 也可以經由一網路或其他電腦可讀取媒體加以分配。例 如,一電腦程式可以經由例如軟碟或CD-ROM,甚至網際 網路之傳輸加以分配。因此,一機器可讀取媒體可以包含 可以機器(例如電腦)加以讀取之形式,來儲存或傳輸資 訊的機制。例如,一機器可讀取媒體可以包含一唯讀記憶 體(ROM )、隨機存取記憶體(RAM )、磁碟儲存媒體、 光學儲存媒體、快閃記憶體裝置、及電氣、光學、音學或 其他形式之傳遞信號(例如載波、紅外線信號、數位信號 等等)。 再者,依據本發明之積體電路設計之實施例可以以電 子形式加以傳送。例如,於一實施例中,一處理機之積體 電路設計之電子形式可以經由一製造廠加以處理或製造, 以取得一電腦元件。另一例子中,在電子形式中之積體電 路設計可以爲一機器所處理,以模擬一電腦元件。因此, 於部份實施例中,電路佈局圖及/或處理機之設計可以經 由機器可讀取媒體加以分配,或者,用以製造入一電路 中,實施在其上,或者模擬一模擬一處理機之積體電路。 一機器可讀取媒體也可以依據本發明儲存代表預定功能之 資料。 於前述說明書中,本發明已經參考例示實施例加以說 -26- (23) (23)1233545 明。然而,明顯地各種之修改與變化可以在不脫離本發明 之申請專利範圍所定之精神及範圍下加以完成。因此,說 明書及附圖只作例示而非限定目的。 【圖式簡單說明】 第1圖爲以一晶片組及處理機所形成之多處理機電腦 系統之方塊圖,其包含一機制用以依本發明一實施例,作 最低優先權中斷的電源狀態掌控分佈; 第2圖爲一多核心處理機模組及相關晶片組之方塊 圖,其包含本發明之電源狀態掌控中斷機制的一實施例; 第3圖爲一多線處理機與相關晶片組之方塊圖,其包 含依據本發明之電源狀態掌控中斷機制的另一實施例; 第4圖爲用於依據本發明一實施例之處理機電源狀 態; 第5圖爲用於一晶片組實施例之處理機工作資訊表輸 入値圖; 第6A-6D圖爲用以分配中斷之電源狀態掌控之一實 施例流程圖;及 第7圖爲一流程圖,顯示用於中斷之處理機電源狀態 旱控分配方法的流程圖。 【符號說明】 1 〇 〇電腦系統 1 〇 1處理機 -27- (24) (24)1233545 102快取記憶體 1 0 3中斷處置機制 1 0 5處理機 106快取記憶體 1 0 7中斷處置機制 1 1 〇處理機匯流排 1 1 2圖形卡 1 1 4加速圖形埠連線 1 1 6記憶體控制器集線器 1 17中斷處置邏輯 118記憶體界面 1 2 0記憶體
1 22系統I/O 124資料儲存 1 2 6無線收發機 1 2 8韌體集線器 130 I/O控制器集線器 1 3 4網路控制器 2 0 0方塊圖 201多核心處理機模組 2 1 0快取 2 2 0處理機核心 2 2 1執行邏輯 22 2內部晶粒內快取 (25) 中斷邏輯 工作優先權暫存器 核心 執行邏輯 內部晶粒內快取 中斷邏輯 工作優先權暫存器 前側匯流排單元 晶片組邏輯 中斷邏輯 工作優先權暫存器表 狀態資訊表 匯流排 方塊圖 處理機模組 快取記憶體 處理機核心 晶片上快取 中斷邏輯 多線邏輯 工作優先權暫存器 前側匯流排邏輯 整數執行邏輯 浮點執行邏輯 -29- (26) 1233545 3 3 0架構狀態 3 4 0架構狀態 3 5 0外部匯流排 3 6 0晶片組 361中斷邏輯 362工作優先權暫存器表 3 6 3電源狀態資訊表
5 0 0處理機工作資訊表輸入 5 Ο 1先進可程式中斷控制器
5 02 邏輯 xAPIC ID 5 03致能旗標 5 04電源狀態 5 0 5工作優先權暫存器値
-30-
Claims (1)
- (1) (1)1233545 拾、申請專利範圍 1 ·一種電源狀態分配方法,包含: 由一第一元件接收第一電源狀態資訊,及由一第二元 件接收第二電源狀態資訊; 由第一元件接收第一工作優先權資訊及由第二元件接 收第二工作優先權資訊; 由服務用第一裝置接收一中斷要求; 評估用於第一及第二元件之電源狀態及工作優先權資 訊,以決定哪一元件應服務該中斷要求; 基於該電源狀態與該工作優先權資訊,決定第一元件 或第二元件爲服務該中斷要求之目的元件;及 將該中斷要求傳送至該目的元件。 2 .如申請專利範圍第1項所述之方法,更包含將該第 一電源狀態資訊儲存於一第一記憶體位置及第二電源狀態 資訊儲存於一第二記憶體位置。 3 .如申請專利範圍第2項所述之方法,更包含將該第 一工作優先權資訊儲存於第三記憶體位置及該第二工作優 先權資訊儲存於第四記憶體位置。 4 .如申請專利範圍第3項所述之方法,更包含檢查用 於中斷要求之裝置。 5 ·如申請專利範圍第4項所述之方法,更包含更新用 於該目的元件之電源狀態與工作優先權資訊,以反映該中 斷要求之工作優先權。 6.如申請專利範圍第5項所述之方法,更包含由該目 -31 - (2) (2)1233545 的元件接收中斷完成之通知。 7 .如申請專利範圍第6項所述之方法,更包含將該目 的元件之電源狀態與工作優先權資訊回復至服務該中斷要 求前已經存在之値。 8 ·如申請專利範圍第7項所述之方法,更包含通知該 裝置中斷之完成。 9 ·如申請專利範圍第8項所述之方法,其中該第一及 第二元件爲處理機。 1 〇 ·如申請專利範圍第9項所述之方法,其中該第 一、第二、第三及第四記憶體位置係位在晶片組邏輯之 內。 11. 一種電源狀態分配設備,包含: 中斷處置邏輯,連接至第一組信號線,以接收中斷要 求,該第一組信號線連接至一或多數可以產生中斷要求之 裝置; 一匯流排界面,與連接至一第一元件及一第二元件之 匯流排相互動作,其中該中斷處置邏輯係經由匯流排界面 連接至第一匯流排,以接收用於該第一及第二元件之電源 狀態資訊及工作優先權資訊; 評估邏輯’連接該中斷處置邏輯,其中當該中斷處置 邏輯接收該中斷要求時,該評估邏輯評估用於該第一及第 二元件之電源狀態及工作優先權資訊,以決定哪一元件應 服務該中斷要求;及 選擇邏輯’連接該評估邏輯,以基於該電源狀態與該 -32- (3) (3)J233545 工作優先權資訊’選擇第一元件或第二元件爲服務該中斷 要求之目的元件。 12 ·如申請專利範®第1 1項所述之設備,更包含記憶 體’用以儲存第一及第=元件之電源狀態資訊與該工作優 先權資訊,給該評估輯所參考。 1 3 ·如申請專利範圍第1 2項所述之設備,其中該選擇 邏輯更將該中斷要求傳送至該服務用之目的元件。 1 4 ·如申請專利範圍第1 3項所述之設備,其中該選擇 邏輯進一步更新用於該目的元件之電源狀態與該工作優先 權資訊’以反映該中斷要求之工作優先權。 1 5 ·如申請專利範圍第1 4項所述之設備,其中該中斷 處置邏輯進一步自該目的元件接收中斷完成之通知。 1 6.如申請專利範圍第1 5項所述之設備,其中該選擇 邏輯進一步回復該目的元件之電源狀態與該工作優先權資 訊至服務中斷要求前已經存在之値。 1 7 ·如申請專利範圍第1 6項所述之設備,其中該中斷 處置邏輯進一步通知該裝置中斷之完成。 1 8 ·如申請專利範圍第1 7項所述之設備,其中該第一 及第二元件爲處理機。 19. 如申請專利範圍第17項所述之設備,其中該第一 及第二元件爲一多線式環境中之線。 20. 如申請專利範圍第19項所述之設備,其中該設備 爲一晶片組。 2 1 . —種電腦系統,包含: -33- (4) 1233545 一匯流排; 一第一處理機與一第二處理機,連接至該匯流排; 一或多數系統裝置,其可以產生中斷要求,其中該中 斷要求,需要來自該第一或第二處理機之服務;一晶片組,以處置該中斷要求,該晶片組連接至該等 系統裝置及該第一與第二處理機,其中該晶片組係接收用 於第一及第二處理機之電源狀態資訊與工作優先權資訊; 當接收到一中斷要求時,該晶片組評估該電源狀態與該工 作優先權資訊,並決定哪一處理機應服務該中斷要求;及 其中該晶片組基於該電源狀態及工作優先權資訊,選擇第 一處理機或第二處理機,以服務該要求。 22·如申請專利範圍第21項所述之系統,其中該晶片 組更包含記憶體暫存器,以儲存用於第一及第二元件之電 源狀態與工作優先權資訊,以爲評估邏輯所參考。2 3.如申請專利範圍第22項所述之系統,其中該晶片 組更包含邏輯以更新用於該目的元件之電源狀態與工作優 先權資訊,以反映該中斷要求之工作優先權。 24·如申請專利範圍第22項所述之系統,其中該晶片 組更包含邏輯,以追縱第一及第二處理機之電源狀態與工 作優先權資訊。 25·如申請專利範圍第22項所述之系統,其中該晶片 組由被選擇以服務該中斷要求之處理機’接收中斷要求完 成之通知。 2 6 .如申請專利範圍第2 5項所述之系統,其中該晶片 -34- (5) (5)1233545 組更包含邏輯,以回復用於該被選擇以服務該中斷要求之 處理機的電源狀態與工作優先權資訊,至服務該中斷要求 前已經存在的値。 2 7 ·如申.請專利範圍第2 6項所述之系統,其中該第一 及第二處理機均是多線式處理機。 28·如申請專利範圍第26項所述之系統,其中該第一 及第二處理機均爲一多核心模組之處理核心。 29. —種機器可讀取媒體,具有一電腦程式內藏於其 中,該電腦程式可以爲一機器所執行,以執行一方法,該 方法包含: 由一第一元件接收第一電源狀態資訊,及由一第二元 件接收第二電源狀態資訊; 由第一元件接收第一工作優先權資訊及由第二元件接 收第二工作優先權資訊; 由服務用第一裝置接收一中斷要求; 評估用於第一及第二元件之電源狀態及工作優先權資 訊,以決定哪一元件應服務該中斷要求; 基於該電源狀態與該工作優先權資訊,決定第一元件 或第二元件爲.服務該中斷要求之目的元件;及 將該中斷要求傳送至該目的元件。 30. 如申請專利範圍第29項所述之機器可讀取媒體’ 其中該方法更包含將該第一電源狀態資訊儲存於一第一記 憶體位置及第二電源狀態資訊儲存於一第二記憶體位置。 3 1 ·如申請專利範圍第30項所述之機器可讀取媒體’ -35- (6) (6)1233545 其中該方法更包含將該第一工作優先權資訊儲存於第三記 憶體位置及該第二工作優先權資訊儲存於第四記憶體位 置° 32·如申請專利範圍第29項所述之機器可讀取媒體, 其中該方法更包含檢查用於中斷要求之裝置。 3 3 ·如申請專利範圍第2 9項所述之機器可讀取媒體, 其中該方法更包含更新用於該目的元件之電源狀態與工作 優先權資訊,以反映該中斷要求之工作優先權。 3 4 .如申請專利範圍第3 3項所述之機器可讀取媒體, 其中該方法更包含由該目的元件接收中斷完成之通知。 3 5 .如申請專利範圍第3 4項所述之機器可讀取媒體, 其中該方法更包含將該目的元件之電源狀態與工作優先權 資訊回復至服務該中斷要求前已經存在之値。 3 6 ·如申請專利範圍第3 5項所述之機器可讀取媒體, 其中該第一及第二元件爲處理機。 3 7 . —種電源狀態分配方法,包含: 由一第一元件接收第一電元狀態資訊,及由一第二元 件接收第二電源狀態資訊; 基於該第一電源狀態資訊,將第一工作優先權値,指 定給該第一元件; 基於該第二電源狀態資訊,將第二工作優先權値,指 定給該第二元件; 由服務用第一裝置接收一中斷要求; 評估用於第一及第二元件之工作優先權値,以決定哪 -36- (7) 1233545 一元件應服務該中斷要求; 基於該工作優先權資訊,選擇第一元件或第二元件爲 服務該中斷要求之目的元件;及 將該中斷要求傳送至該目的元件。 3 8 ·如申請專利範圍第3 7項所述之方法,更包含儲存 第一及第二工作優先權値至一第一及第二暫存器中。3 9 ·如申請專利範圔第3 8項所述之方法,其中每一電 源狀態資訊包含一電源狀態値。 4 0 ·如申請專利範圍第3 9項所述之方法,其中每一電 源狀態値相當於一工作優先權値。 4 1 ·如申請專利範圍第4 0項所述之方法,其中一較高 電源狀態値相當於較低之工作優先權値及一較低電源狀態 値相當於一較高工作優先權値。4 2 ·如申請專利範圍第4 1項所述之方法,其中具有較 低工作優先權値之元件係較具有較高工作優先權値之另一 元件,能更佳地被選擇爲服務該中斷要求之目的元件。 43.如申請專利範圍第42項所述之方法,其中該第一 及第二元件分別爲一第一處理機及一第二處理機。 4 4 .如申請專利範圍第4 3項所述之方法,其中每一工 作優先權値均被儲存在一特有暫存器。 - 37-
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/330,622 US7191349B2 (en) | 2002-12-26 | 2002-12-26 | Mechanism for processor power state aware distribution of lowest priority interrupt |
Publications (2)
Publication Number | Publication Date |
---|---|
TW200413889A TW200413889A (en) | 2004-08-01 |
TWI233545B true TWI233545B (en) | 2005-06-01 |
Family
ID=32654547
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW092134722A TWI233545B (en) | 2002-12-26 | 2003-12-09 | Mechanism for processor power state aware distribution of lowest priority interrupts |
Country Status (8)
Country | Link |
---|---|
US (2) | US7191349B2 (zh) |
CN (1) | CN100349147C (zh) |
AU (1) | AU2003298903A1 (zh) |
DE (1) | DE10393969T5 (zh) |
GB (1) | GB2412457B (zh) |
HK (1) | HK1075314A1 (zh) |
TW (1) | TWI233545B (zh) |
WO (1) | WO2004061686A2 (zh) |
Cited By (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8769245B2 (en) | 2010-12-09 | 2014-07-01 | Industrial Technology Research Institute | Very long instruction word (VLIW) processor with power management, and apparatus and method of power management therefor |
TWI483186B (zh) * | 2013-09-26 | 2015-05-01 | Andes Technology Corp | 微處理器及其使用指令迴圈快取記憶體的方法 |
TWI489379B (zh) * | 2011-11-14 | 2015-06-21 | Intel Corp | 用以處理指令之方法、處理器、及系統 |
TWI512626B (zh) * | 2012-04-11 | 2015-12-11 | Nvidia Corp | 微處理器中存取及管理程式碼轉譯 |
US9383803B2 (en) | 2011-09-30 | 2016-07-05 | Intel Corporation | Priority based application event control (PAEC) to reduce power consumption |
US9678882B2 (en) | 2012-10-11 | 2017-06-13 | Intel Corporation | Systems and methods for non-blocking implementation of cache flush instructions |
US9678755B2 (en) | 2010-10-12 | 2017-06-13 | Intel Corporation | Instruction sequence buffer to enhance branch prediction efficiency |
US9710399B2 (en) | 2012-07-30 | 2017-07-18 | Intel Corporation | Systems and methods for flushing a cache with modified data |
US9720839B2 (en) | 2012-07-30 | 2017-08-01 | Intel Corporation | Systems and methods for supporting a plurality of load and store accesses of a cache |
US9720831B2 (en) | 2012-07-30 | 2017-08-01 | Intel Corporation | Systems and methods for maintaining the coherency of a store coalescing cache and a load cache |
US9733944B2 (en) | 2010-10-12 | 2017-08-15 | Intel Corporation | Instruction sequence buffer to store branches having reliably predictable instruction sequences |
US9767038B2 (en) | 2012-03-07 | 2017-09-19 | Intel Corporation | Systems and methods for accessing a unified translation lookaside buffer |
US9766893B2 (en) | 2011-03-25 | 2017-09-19 | Intel Corporation | Executing instruction sequence code blocks by using virtual cores instantiated by partitionable engines |
TWI603184B (zh) * | 2011-12-28 | 2017-10-21 | 英特爾股份有限公司 | 包含在可變喚醒率下之最佳化c-狀態選擇之高效節能方法、設備與系統 |
US9811342B2 (en) | 2013-03-15 | 2017-11-07 | Intel Corporation | Method for performing dual dispatch of blocks and half blocks |
US9811377B2 (en) | 2013-03-15 | 2017-11-07 | Intel Corporation | Method for executing multithreaded instructions grouped into blocks |
US9823930B2 (en) | 2013-03-15 | 2017-11-21 | Intel Corporation | Method for emulating a guest centralized flag architecture by using a native distributed flag architecture |
US9842005B2 (en) | 2011-03-25 | 2017-12-12 | Intel Corporation | Register file segments for supporting code block execution by using virtual cores instantiated by partitionable engines |
US9858080B2 (en) | 2013-03-15 | 2018-01-02 | Intel Corporation | Method for implementing a reduced size register view data structure in a microprocessor |
US9886416B2 (en) | 2006-04-12 | 2018-02-06 | Intel Corporation | Apparatus and method for processing an instruction matrix specifying parallel and dependent operations |
US9886279B2 (en) | 2013-03-15 | 2018-02-06 | Intel Corporation | Method for populating and instruction view data structure by using register template snapshots |
US9891924B2 (en) | 2013-03-15 | 2018-02-13 | Intel Corporation | Method for implementing a reduced size register view data structure in a microprocessor |
US9898412B2 (en) | 2013-03-15 | 2018-02-20 | Intel Corporation | Methods, systems and apparatus for predicting the way of a set associative cache |
US9916253B2 (en) | 2012-07-30 | 2018-03-13 | Intel Corporation | Method and apparatus for supporting a plurality of load accesses of a cache in a single cycle to maintain throughput |
US9921845B2 (en) | 2011-03-25 | 2018-03-20 | Intel Corporation | Memory fragments for supporting code block execution by using virtual cores instantiated by partitionable engines |
US9934042B2 (en) | 2013-03-15 | 2018-04-03 | Intel Corporation | Method for dependency broadcasting through a block organized source view data structure |
US9940134B2 (en) | 2011-05-20 | 2018-04-10 | Intel Corporation | Decentralized allocation of resources and interconnect structures to support the execution of instruction sequences by a plurality of engines |
US9965281B2 (en) | 2006-11-14 | 2018-05-08 | Intel Corporation | Cache storing data fetched by address calculating load instruction with label used as associated name for consuming instruction to refer |
US10031784B2 (en) | 2011-05-20 | 2018-07-24 | Intel Corporation | Interconnect system to support the execution of instruction sequences by a plurality of partitionable engines |
US10140138B2 (en) | 2013-03-15 | 2018-11-27 | Intel Corporation | Methods, systems and apparatus for supporting wide and efficient front-end operation with guest-architecture emulation |
US10146548B2 (en) | 2013-03-15 | 2018-12-04 | Intel Corporation | Method for populating a source view data structure by using register template snapshots |
US10169045B2 (en) | 2013-03-15 | 2019-01-01 | Intel Corporation | Method for dependency broadcasting through a source organized source view data structure |
US10191746B2 (en) | 2011-11-22 | 2019-01-29 | Intel Corporation | Accelerated code optimizer for a multiengine microprocessor |
US10198266B2 (en) | 2013-03-15 | 2019-02-05 | Intel Corporation | Method for populating register view data structure by using register template snapshots |
US10228949B2 (en) | 2010-09-17 | 2019-03-12 | Intel Corporation | Single cycle multi-branch prediction including shadow cache for early far branch prediction |
US10241810B2 (en) | 2012-05-18 | 2019-03-26 | Nvidia Corporation | Instruction-optimizing processor with branch-count table in hardware |
US10324725B2 (en) | 2012-12-27 | 2019-06-18 | Nvidia Corporation | Fault detection in instruction translations |
US10521239B2 (en) | 2011-11-22 | 2019-12-31 | Intel Corporation | Microprocessor accelerated code optimizer |
Families Citing this family (136)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6760772B2 (en) | 2000-12-15 | 2004-07-06 | Qualcomm, Inc. | Generating and implementing a communication protocol and interface for high data rate signal transfer |
US8812706B1 (en) | 2001-09-06 | 2014-08-19 | Qualcomm Incorporated | Method and apparatus for compensating for mismatched delays in signals of a mobile display interface (MDDI) system |
US7627721B2 (en) | 2002-10-08 | 2009-12-01 | Rmi Corporation | Advanced processor with cache coherency |
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 |
US7346757B2 (en) * | 2002-10-08 | 2008-03-18 | Rmi Corporation | Advanced processor translation lookaside buffer management in a multithreaded system |
US7924828B2 (en) | 2002-10-08 | 2011-04-12 | Netlogic Microsystems, Inc. | Advanced processor with mechanism for fast packet queuing operations |
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 |
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 |
US7334086B2 (en) | 2002-10-08 | 2008-02-19 | Rmi Corporation | Advanced processor with system on a chip interconnect technology |
US20050033831A1 (en) * | 2002-10-08 | 2005-02-10 | Abbas Rashid | Advanced processor with a thread aware return address stack optimally used across active threads |
US7984268B2 (en) | 2002-10-08 | 2011-07-19 | Netlogic Microsystems, Inc. | Advanced processor scheduling in a multithreaded system |
US7461215B2 (en) * | 2002-10-08 | 2008-12-02 | Rmi Corporation | Advanced processor with implementation of memory ordering on a ring based data movement network |
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 |
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 |
KR101166734B1 (ko) | 2003-06-02 | 2012-07-19 | 퀄컴 인코포레이티드 | 고속 데이터 레이트를 위한 신호 프로토콜 및 인터페이스의 생성 및 구현 |
JP2007507918A (ja) | 2003-08-13 | 2007-03-29 | クゥアルコム・インコーポレイテッド | さらに高速なデータレート用の信号インタフェース |
KR100973103B1 (ko) | 2003-09-10 | 2010-08-02 | 콸콤 인코포레이티드 | 고속 데이터 인터페이스 |
JP2005092780A (ja) * | 2003-09-19 | 2005-04-07 | Matsushita Electric Ind Co Ltd | リアルタイムプロセッサシステム及び制御方法 |
AU2004306903C1 (en) | 2003-10-15 | 2009-01-22 | Qualcomm Incorporated | High data rate interface |
AU2004307162A1 (en) | 2003-10-29 | 2005-05-12 | Qualcomm Incorporated | High data rate interface |
KR100915250B1 (ko) | 2003-11-12 | 2009-09-03 | 콸콤 인코포레이티드 | 향상된 링크 제어를 제공하는 고속 데이터 레이트 인터페이스 |
US20050108713A1 (en) * | 2003-11-18 | 2005-05-19 | Geye Scott A. | Affinity mask assignment system and method for multiprocessor systems |
WO2005053272A1 (en) | 2003-11-25 | 2005-06-09 | Qualcomm Incorporated | High data rate interface with improved link synchronization |
EP2247070B1 (en) | 2003-12-08 | 2013-09-25 | QUALCOMM Incorporated | High data rate interface with improved link synchronization |
US7093036B2 (en) * | 2003-12-11 | 2006-08-15 | International Business Machines Corporation | Processor state aware interrupts from peripherals |
EP2375676B1 (en) | 2004-03-10 | 2013-06-26 | Qualcomm Incorporated | High data rate interface apparatus and method |
EP1735986B1 (en) * | 2004-03-17 | 2013-05-22 | Qualcomm, Incorporated | High data rate interface apparatus and method |
US7784064B2 (en) * | 2004-04-14 | 2010-08-24 | Barclays Capital Inc. | Method for collecting monitor information |
US7512774B2 (en) * | 2004-04-14 | 2009-03-31 | Barclays Capital Inc. | Method and system for collecting processor information |
KR100926658B1 (ko) | 2004-06-04 | 2009-11-17 | 퀄컴 인코포레이티드 | 고 데이터 레이트 인터페이스 장치 및 방법 |
US8650304B2 (en) | 2004-06-04 | 2014-02-11 | Qualcomm Incorporated | Determining a pre skew and post skew calibration data rate in a mobile display digital interface (MDDI) communication system |
US8538997B2 (en) * | 2004-06-25 | 2013-09-17 | Apple Inc. | Methods and systems for managing data |
US8131674B2 (en) | 2004-06-25 | 2012-03-06 | Apple Inc. | Methods and systems for managing data |
EP1615141B1 (en) * | 2004-07-01 | 2018-03-07 | Harman Becker Automotive Systems GmbH | A computing architecture for a mobile multimedia system used in a vehicle |
CN100474214C (zh) * | 2004-08-05 | 2009-04-01 | 松下电器产业株式会社 | 信息处理装置 |
US20060112208A1 (en) * | 2004-11-22 | 2006-05-25 | International Business Machines Corporation | Interrupt thresholding for SMT and multi processor systems |
US8873584B2 (en) | 2004-11-24 | 2014-10-28 | Qualcomm Incorporated | Digital data interface device |
US8723705B2 (en) | 2004-11-24 | 2014-05-13 | Qualcomm Incorporated | Low output skew double data rate serial encoder |
US8667363B2 (en) | 2004-11-24 | 2014-03-04 | Qualcomm Incorporated | Systems and methods for implementing cyclic redundancy checks |
US8692838B2 (en) | 2004-11-24 | 2014-04-08 | Qualcomm Incorporated | Methods and systems for updating a buffer |
US8699330B2 (en) | 2004-11-24 | 2014-04-15 | Qualcomm Incorporated | Systems and methods for digital data transmission rate control |
US8539119B2 (en) | 2004-11-24 | 2013-09-17 | Qualcomm Incorporated | Methods and apparatus for exchanging messages having a digital data interface device message format |
JP2006195867A (ja) * | 2005-01-17 | 2006-07-27 | Matsushita Electric Ind Co Ltd | バス調停方法及び半導体装置 |
US20060294401A1 (en) * | 2005-06-24 | 2006-12-28 | Dell Products L.P. | Power management of multiple processors |
US7849466B2 (en) * | 2005-07-12 | 2010-12-07 | Qualcomm Incorporated | Controlling execution mode of program threads by applying a mask to a control register in a multi-threaded processor |
US7552236B2 (en) * | 2005-07-14 | 2009-06-23 | International Business Machines Corporation | Routing interrupts in a multi-node system |
US7412353B2 (en) | 2005-09-28 | 2008-08-12 | Intel Corporation | Reliable computing with a many-core processor |
GB0519981D0 (en) | 2005-09-30 | 2005-11-09 | Ignios Ltd | Scheduling in a multicore architecture |
US8730069B2 (en) | 2005-11-23 | 2014-05-20 | Qualcomm Incorporated | Double data rate serial encoder |
US8692839B2 (en) | 2005-11-23 | 2014-04-08 | Qualcomm Incorporated | Methods and systems for updating a buffer |
US7689838B2 (en) * | 2005-12-22 | 2010-03-30 | Intel Corporation | Method and apparatus for providing for detecting processor state transitions |
US7647509B2 (en) * | 2006-05-12 | 2010-01-12 | Intel Corporation | Method and apparatus for managing power in a processing system with multiple partitions |
US7797555B2 (en) * | 2006-05-12 | 2010-09-14 | Intel Corporation | Method and apparatus for managing power from a sequestered partition of a processing system |
US8799902B2 (en) * | 2007-04-09 | 2014-08-05 | Intel Corporation | Priority based throttling for power/performance quality of service |
JP4353990B2 (ja) * | 2007-05-18 | 2009-10-28 | 株式会社半導体理工学研究センター | マルチプロセッサ制御装置 |
US7627706B2 (en) | 2007-09-06 | 2009-12-01 | Intel Corporation | Creation of logical APIC ID with cluster ID and intra-cluster ID |
US8032681B2 (en) | 2007-09-06 | 2011-10-04 | Intel Corporation | Processor selection for an interrupt based on willingness to accept the interrupt and on priority |
US7769938B2 (en) * | 2007-09-06 | 2010-08-03 | Intel Corporation | Processor selection for an interrupt identifying a processor cluster |
US7962679B2 (en) * | 2007-09-28 | 2011-06-14 | Intel Corporation | Interrupt balancing for multi-core and power |
US9779235B2 (en) * | 2007-10-17 | 2017-10-03 | Sukamo Mertoguno | Cognizant engines: systems and methods for enabling program observability and controlability at instruction level granularity |
US8190864B1 (en) * | 2007-10-25 | 2012-05-29 | Oracle America, Inc. | APIC implementation for a highly-threaded x86 processor |
EP2235630A1 (en) * | 2007-12-12 | 2010-10-06 | Nxp B.V. | Data processing system and method of interrupt handling |
US7730248B2 (en) * | 2007-12-13 | 2010-06-01 | Texas Instruments Incorporated | Interrupt morphing and configuration, circuits, systems and processes |
GB2455744B (en) * | 2007-12-19 | 2012-03-14 | Advanced Risc Mach Ltd | Hardware driven processor state storage prior to entering a low power mode |
US7962771B2 (en) * | 2007-12-31 | 2011-06-14 | Intel Corporation | Method, system, and apparatus for rerouting interrupts in a multi-core processor |
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 |
JP5397739B2 (ja) * | 2008-03-18 | 2014-01-22 | 株式会社リコー | 画像処理装置、画像処理方法および画像処理プログラム |
US7793025B2 (en) * | 2008-03-28 | 2010-09-07 | Freescale Semiconductor, Inc. | Hardware managed context sensitive interrupt priority level control |
US8141084B2 (en) * | 2008-04-07 | 2012-03-20 | International Business Machines Corporation | Managing preemption in a parallel computing system |
US8024504B2 (en) * | 2008-06-26 | 2011-09-20 | Microsoft Corporation | Processor interrupt determination |
US8555292B2 (en) | 2008-06-27 | 2013-10-08 | Microsoft Corporation | Synchronizing communication over shared memory |
US7779191B2 (en) * | 2008-07-29 | 2010-08-17 | Nvidia Corporation | Platform-based idle-time processing |
CN104393919B (zh) * | 2008-09-30 | 2017-04-12 | 发明科学基金I有限责任公司 | 用于本地接收器的功率发射 |
CN101403982B (zh) * | 2008-11-03 | 2011-07-20 | 华为技术有限公司 | 一种多核处理器的任务分配方法和系统 |
US7996595B2 (en) * | 2009-04-14 | 2011-08-09 | Lstar Technologies Llc | Interrupt arbitration for multiprocessors |
US8171319B2 (en) * | 2009-04-16 | 2012-05-01 | International Business Machines Corporation | Managing processor power-performance states |
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 |
US8064197B2 (en) * | 2009-05-22 | 2011-11-22 | Advanced Micro Devices, Inc. | Heat management using power management information |
US20100332877A1 (en) * | 2009-06-30 | 2010-12-30 | Yarch Mark A | Method and apparatus for reducing power consumption |
US8234431B2 (en) | 2009-10-13 | 2012-07-31 | Empire Technology Development Llc | Interrupt masking for multi-core processors |
US8578384B2 (en) * | 2009-10-28 | 2013-11-05 | Freescale Semiconductor, Inc. | Method and apparatus for activating system components |
US8365131B2 (en) * | 2010-01-11 | 2013-01-29 | Empire Technology Development Llc | Hardware synthesis using thermally aware scheduling and binding |
US9009499B2 (en) | 2010-06-10 | 2015-04-14 | Broadcom Corporation | Power manager for a network having a virtual machine |
US20110307716A1 (en) * | 2010-06-10 | 2011-12-15 | Broadcom Corporation | Global control policy manager |
US8352685B2 (en) | 2010-08-20 | 2013-01-08 | Apple Inc. | Combining write buffer with dynamically adjustable flush metrics |
JP5575248B2 (ja) * | 2010-08-24 | 2014-08-20 | 三菱電機株式会社 | 通信端末、通信システム、通信方法及び通信プログラム |
CN103080903B (zh) * | 2010-08-27 | 2016-07-06 | 富士通株式会社 | 调度器、多核处理器系统以及调度方法 |
US8959270B2 (en) * | 2010-12-07 | 2015-02-17 | Apple Inc. | Interrupt distribution scheme |
US8458386B2 (en) | 2010-12-07 | 2013-06-04 | Apple Inc. | Atomic interrupt masking in an interrupt controller to prevent delivery of same interrupt vector for consecutive interrupt acknowledgements |
US8631256B2 (en) | 2010-12-22 | 2014-01-14 | Via Technologies, Inc. | Distributed management of a shared power source to a multi-core microprocessor |
US8782451B2 (en) | 2010-12-22 | 2014-07-15 | Via Technologies, Inc. | Power state synchronization in a multi-core processor |
US8637212B2 (en) | 2010-12-22 | 2014-01-28 | Via Technologies, Inc. | Reticle set modification to produce multi-core dies |
US8930676B2 (en) | 2010-12-22 | 2015-01-06 | Via Technologies, Inc. | Master core discovering enabled cores in microprocessor comprising plural multi-core dies |
US8972707B2 (en) | 2010-12-22 | 2015-03-03 | Via Technologies, Inc. | Multi-core processor with core selectively disabled by kill instruction of system software and resettable only via external pin |
US9460038B2 (en) | 2010-12-22 | 2016-10-04 | Via Technologies, Inc. | Multi-core microprocessor internal bypass bus |
US8635476B2 (en) | 2010-12-22 | 2014-01-21 | Via Technologies, Inc. | Decentralized power management distributed among multiple processor cores |
DE102011013833B4 (de) | 2011-03-14 | 2014-05-15 | Continental Automotive Gmbh | Anzeigevorrichtung |
KR20130021637A (ko) * | 2011-08-23 | 2013-03-06 | 삼성전자주식회사 | 멀티 코어 시스템의 인터럽트 할당 방법 및 장치 |
US8688883B2 (en) | 2011-09-08 | 2014-04-01 | Intel Corporation | Increasing turbo mode residency of a processor |
US9400545B2 (en) | 2011-12-22 | 2016-07-26 | Intel Corporation | Method, apparatus, and system for energy efficiency and energy conservation including autonomous hardware-based deep power down in devices |
US8819461B2 (en) * | 2011-12-22 | 2014-08-26 | Intel Corporation | Method, apparatus, and system for energy efficiency and energy conservation including improved processor core deep power down exit latency by using register secondary uninterrupted power supply |
CN110471699B (zh) | 2011-12-23 | 2023-07-28 | 英特尔公司 | 用于指令处理的处理器核、方法和系统 |
CA2799974C (en) * | 2011-12-29 | 2018-05-22 | The University Of Western Ontario | Method and apparatus for wireless security enhancement using multiple attributes monitoring, continuous and interleaved authentication, and system adaption |
US10146545B2 (en) | 2012-03-13 | 2018-12-04 | Nvidia Corporation | Translation address cache for a microprocessor |
GB2500434A (en) * | 2012-03-23 | 2013-09-25 | Cognovo Ltd | Scheduling actions based on the state of the resources needed to execute the actions |
US9342122B2 (en) * | 2012-09-17 | 2016-05-17 | Intel Corporation | Distributing power to heterogeneous compute elements of a processor |
US9678564B2 (en) * | 2012-12-21 | 2017-06-13 | Nxp B.V. | Multiprocessor system with interrupt distributor |
US9563579B2 (en) | 2013-02-28 | 2017-02-07 | Intel Corporation | Method, apparatus, system for representing, specifying and using deadlines |
US9571329B2 (en) * | 2013-03-11 | 2017-02-14 | International Business Machines Corporation | Collective operation management in a parallel computer |
US10108424B2 (en) | 2013-03-14 | 2018-10-23 | Nvidia Corporation | Profiling code portions to generate translations |
GB2514126A (en) * | 2013-05-14 | 2014-11-19 | Ibm | Interruption of chip component managing tasks |
US20140344947A1 (en) * | 2013-05-20 | 2014-11-20 | Advanced Micro Devices, Inc. | Method and apparatus for handling storage of context information |
US9336068B2 (en) | 2013-06-07 | 2016-05-10 | Apple Inc. | Throttling of application access to resources |
CN103336571B (zh) * | 2013-06-13 | 2016-02-03 | 中国科学院计算技术研究所 | 一种降低多线程程序功耗的方法及系统 |
US9424212B2 (en) * | 2013-06-13 | 2016-08-23 | Microsoft Technology Licensing, Llc | Operating system-managed interrupt steering in multiprocessor systems |
US9535488B2 (en) | 2013-08-28 | 2017-01-03 | Via Technologies, Inc. | Multi-core microprocessor that dynamically designates one of its processing cores as the bootstrap processor |
US9792112B2 (en) | 2013-08-28 | 2017-10-17 | Via Technologies, Inc. | Propagation of microcode patches to multiple cores in multicore microprocessor |
US9465432B2 (en) * | 2013-08-28 | 2016-10-11 | Via Technologies, Inc. | Multi-core synchronization mechanism |
CN109240481B (zh) * | 2013-08-28 | 2020-08-11 | 威盛电子股份有限公司 | 多核微处理器及使用其省电的方法 |
US9471132B2 (en) * | 2013-09-27 | 2016-10-18 | Intel Corporation | Techniques for putting platform subsystems into a lower power state in parallel |
EP3060996A4 (en) * | 2013-10-25 | 2017-05-10 | Advanced Micro Devices, Inc. | Method and apparatus for performing a bus lock and translation lookaside buffer invalidation |
CN103577328B (zh) * | 2013-11-20 | 2016-08-17 | 北京奇虎科技有限公司 | 一种应用的性能分析方法及装置 |
CN104571466A (zh) * | 2015-01-22 | 2015-04-29 | 宇龙计算机通信科技(深圳)有限公司 | 一种多系统终端的省电方法及装置 |
US10028225B2 (en) * | 2015-08-26 | 2018-07-17 | International Business Machines Corporation | Efficient usage of internet services on mobile devices |
CN105183123B (zh) * | 2015-09-21 | 2018-01-09 | 北京元心科技有限公司 | 一种在基于容器的多系统中进行电源管理的方法和装置 |
US9848515B1 (en) | 2016-05-27 | 2017-12-19 | Advanced Micro Devices, Inc. | Multi-compartment computing device with shared cooling device |
CN106250235A (zh) * | 2016-07-26 | 2016-12-21 | 张升泽 | 基于多内核芯片的多任务调度方法及系统 |
US10802831B2 (en) * | 2017-06-30 | 2020-10-13 | Sap Se | Managing parallel processing |
CN108306965B (zh) * | 2018-01-31 | 2021-02-02 | 上海小蚁科技有限公司 | 摄像头的数据处理方法及装置、存储介质、摄像头 |
US11630789B2 (en) * | 2020-09-11 | 2023-04-18 | Apple Inc. | Scalable interrupts |
US11675718B2 (en) * | 2021-03-26 | 2023-06-13 | Advanced Micro Devices, Inc. | Enhanced low-priority arbitration |
US11803471B2 (en) | 2021-08-23 | 2023-10-31 | Apple Inc. | Scalable system on a chip |
CN117369987A (zh) * | 2023-08-22 | 2024-01-09 | 华为技术有限公司 | 一种计算装置及相关任务执行调度方法 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4253146A (en) * | 1978-12-21 | 1981-02-24 | Burroughs Corporation | Module for coupling computer-processors |
US5613128A (en) | 1990-12-21 | 1997-03-18 | Intel Corporation | Programmable multi-processor interrupt controller system with a processor integrated local interrupt controller |
EP0683451B1 (en) | 1994-05-09 | 2004-02-25 | Canon Kabushiki Kaisha | Power supply control method in multi-task environment |
US5918057A (en) | 1997-03-20 | 1999-06-29 | Industrial Technology Research Institute | Method and apparatus for dispatching multiple interrupt requests simultaneously |
EP1030736B1 (en) * | 1997-11-14 | 2003-10-01 | Gen-Probe Incorporated | Assay work station |
US6418496B2 (en) * | 1997-12-10 | 2002-07-09 | Intel Corporation | System and apparatus including lowest priority logic to select a processor to receive an interrupt message |
AU2001257566A1 (en) * | 2000-05-08 | 2001-11-20 | Transilica, Inc. | Priority in a portable thread environment |
US6986066B2 (en) * | 2001-01-05 | 2006-01-10 | International Business Machines Corporation | Computer system having low energy consumption |
US6845456B1 (en) * | 2001-05-01 | 2005-01-18 | Advanced Micro Devices, Inc. | CPU utilization measurement techniques for use in power management |
US6823413B2 (en) * | 2001-06-08 | 2004-11-23 | Oki Electronic Industry Co., Ltd. | Interrupt signal processing apparatus |
US6990593B2 (en) * | 2001-07-31 | 2006-01-24 | Hewlett-Packard Development Company, L.P. | Method for diverting power reserves and shifting activities according to activity priorities in a server cluster in the event of a power interruption |
US7213065B2 (en) * | 2001-11-08 | 2007-05-01 | Racemi, Inc. | System and method for dynamic server allocation and provisioning |
US6990320B2 (en) * | 2002-02-26 | 2006-01-24 | Motorola, Inc. | Dynamic reallocation of processing resources for redundant functionality |
US7065766B2 (en) * | 2002-07-11 | 2006-06-20 | International Business Machines Corporation | Apparatus and method for load balancing of fixed priority threads in a multiple run queue environment |
US7152169B2 (en) * | 2002-11-29 | 2006-12-19 | Intel Corporation | Method for providing power management on multi-threaded processor by using SMM mode to place a physical processor into lower power state |
US7546475B2 (en) * | 2003-05-13 | 2009-06-09 | Hewlett-Packard Development Company, L.P. | Power-aware adaptation in a data center |
-
2002
- 2002-12-26 US US10/330,622 patent/US7191349B2/en not_active Expired - Lifetime
-
2003
- 2003-12-05 WO PCT/US2003/038612 patent/WO2004061686A2/en active Application Filing
- 2003-12-05 CN CNB2003801073724A patent/CN100349147C/zh not_active Expired - Fee Related
- 2003-12-05 AU AU2003298903A patent/AU2003298903A1/en not_active Abandoned
- 2003-12-05 DE DE10393969T patent/DE10393969T5/de not_active Ceased
- 2003-12-05 GB GB0505391A patent/GB2412457B/en not_active Expired - Fee Related
- 2003-12-09 TW TW092134722A patent/TWI233545B/zh not_active IP Right Cessation
-
2005
- 2005-10-25 HK HK05109490A patent/HK1075314A1/xx not_active IP Right Cessation
-
2007
- 2007-02-09 US US11/704,760 patent/US7761720B2/en not_active Expired - Fee Related
Cited By (69)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10289605B2 (en) | 2006-04-12 | 2019-05-14 | Intel Corporation | Apparatus and method for processing an instruction matrix specifying parallel and dependent operations |
US11163720B2 (en) | 2006-04-12 | 2021-11-02 | Intel Corporation | Apparatus and method for processing an instruction matrix specifying parallel and dependent operations |
US9886416B2 (en) | 2006-04-12 | 2018-02-06 | Intel Corporation | Apparatus and method for processing an instruction matrix specifying parallel and dependent operations |
US9965281B2 (en) | 2006-11-14 | 2018-05-08 | Intel Corporation | Cache storing data fetched by address calculating load instruction with label used as associated name for consuming instruction to refer |
US10585670B2 (en) | 2006-11-14 | 2020-03-10 | Intel Corporation | Cache storing data fetched by address calculating load instruction with label used as associated name for consuming instruction to refer |
US10228949B2 (en) | 2010-09-17 | 2019-03-12 | Intel Corporation | Single cycle multi-branch prediction including shadow cache for early far branch prediction |
US10083041B2 (en) | 2010-10-12 | 2018-09-25 | Intel Corporation | Instruction sequence buffer to enhance branch prediction efficiency |
US9733944B2 (en) | 2010-10-12 | 2017-08-15 | Intel Corporation | Instruction sequence buffer to store branches having reliably predictable instruction sequences |
US9921850B2 (en) | 2010-10-12 | 2018-03-20 | Intel Corporation | Instruction sequence buffer to enhance branch prediction efficiency |
US9678755B2 (en) | 2010-10-12 | 2017-06-13 | Intel Corporation | Instruction sequence buffer to enhance branch prediction efficiency |
US8769245B2 (en) | 2010-12-09 | 2014-07-01 | Industrial Technology Research Institute | Very long instruction word (VLIW) processor with power management, and apparatus and method of power management therefor |
US10564975B2 (en) | 2011-03-25 | 2020-02-18 | Intel Corporation | Memory fragments for supporting code block execution by using virtual cores instantiated by partitionable engines |
US11204769B2 (en) | 2011-03-25 | 2021-12-21 | Intel Corporation | Memory fragments for supporting code block execution by using virtual cores instantiated by partitionable engines |
US9766893B2 (en) | 2011-03-25 | 2017-09-19 | Intel Corporation | Executing instruction sequence code blocks by using virtual cores instantiated by partitionable engines |
US9934072B2 (en) | 2011-03-25 | 2018-04-03 | Intel Corporation | Register file segments for supporting code block execution by using virtual cores instantiated by partitionable engines |
US9921845B2 (en) | 2011-03-25 | 2018-03-20 | Intel Corporation | Memory fragments for supporting code block execution by using virtual cores instantiated by partitionable engines |
US9990200B2 (en) | 2011-03-25 | 2018-06-05 | Intel Corporation | Executing instruction sequence code blocks by using virtual cores instantiated by partitionable engines |
US9842005B2 (en) | 2011-03-25 | 2017-12-12 | Intel Corporation | Register file segments for supporting code block execution by using virtual cores instantiated by partitionable engines |
US10372454B2 (en) | 2011-05-20 | 2019-08-06 | Intel Corporation | Allocation of a segmented interconnect to support the execution of instruction sequences by a plurality of engines |
US10031784B2 (en) | 2011-05-20 | 2018-07-24 | Intel Corporation | Interconnect system to support the execution of instruction sequences by a plurality of partitionable engines |
US9940134B2 (en) | 2011-05-20 | 2018-04-10 | Intel Corporation | Decentralized allocation of resources and interconnect structures to support the execution of instruction sequences by a plurality of engines |
US9383803B2 (en) | 2011-09-30 | 2016-07-05 | Intel Corporation | Priority based application event control (PAEC) to reduce power consumption |
US11112853B2 (en) | 2011-09-30 | 2021-09-07 | Intel Corporation | Priority based application event control (PAEC) to reduce power consumption |
TWI556092B (zh) * | 2011-09-30 | 2016-11-01 | 英特爾公司 | 用以減少電力消耗之基於優先順序的應用程式事件控制技術 |
US10254818B2 (en) | 2011-09-30 | 2019-04-09 | Intel Corporation | Priority based application event control (PAEC) to reduce power consumption |
US9811338B2 (en) | 2011-11-14 | 2017-11-07 | Intel Corporation | Flag non-modification extension for ISA instructions using prefixes |
TWI489379B (zh) * | 2011-11-14 | 2015-06-21 | Intel Corp | 用以處理指令之方法、處理器、及系統 |
US10521239B2 (en) | 2011-11-22 | 2019-12-31 | Intel Corporation | Microprocessor accelerated code optimizer |
US10191746B2 (en) | 2011-11-22 | 2019-01-29 | Intel Corporation | Accelerated code optimizer for a multiengine microprocessor |
TWI603184B (zh) * | 2011-12-28 | 2017-10-21 | 英特爾股份有限公司 | 包含在可變喚醒率下之最佳化c-狀態選擇之高效節能方法、設備與系統 |
US9767038B2 (en) | 2012-03-07 | 2017-09-19 | Intel Corporation | Systems and methods for accessing a unified translation lookaside buffer |
US10310987B2 (en) | 2012-03-07 | 2019-06-04 | Intel Corporation | Systems and methods for accessing a unified translation lookaside buffer |
US9880846B2 (en) | 2012-04-11 | 2018-01-30 | Nvidia Corporation | Improving hit rate of code translation redirection table with replacement strategy based on usage history table of evicted entries |
TWI512626B (zh) * | 2012-04-11 | 2015-12-11 | Nvidia Corp | 微處理器中存取及管理程式碼轉譯 |
US10241810B2 (en) | 2012-05-18 | 2019-03-26 | Nvidia Corporation | Instruction-optimizing processor with branch-count table in hardware |
US9740612B2 (en) | 2012-07-30 | 2017-08-22 | Intel Corporation | Systems and methods for maintaining the coherency of a store coalescing cache and a load cache |
US9858206B2 (en) | 2012-07-30 | 2018-01-02 | Intel Corporation | Systems and methods for flushing a cache with modified data |
US10698833B2 (en) | 2012-07-30 | 2020-06-30 | Intel Corporation | Method and apparatus for supporting a plurality of load accesses of a cache in a single cycle to maintain throughput |
US9916253B2 (en) | 2012-07-30 | 2018-03-13 | Intel Corporation | Method and apparatus for supporting a plurality of load accesses of a cache in a single cycle to maintain throughput |
US10346302B2 (en) | 2012-07-30 | 2019-07-09 | Intel Corporation | Systems and methods for maintaining the coherency of a store coalescing cache and a load cache |
US9720831B2 (en) | 2012-07-30 | 2017-08-01 | Intel Corporation | Systems and methods for maintaining the coherency of a store coalescing cache and a load cache |
US9720839B2 (en) | 2012-07-30 | 2017-08-01 | Intel Corporation | Systems and methods for supporting a plurality of load and store accesses of a cache |
US9710399B2 (en) | 2012-07-30 | 2017-07-18 | Intel Corporation | Systems and methods for flushing a cache with modified data |
US10210101B2 (en) | 2012-07-30 | 2019-02-19 | Intel Corporation | Systems and methods for flushing a cache with modified data |
US9842056B2 (en) | 2012-10-11 | 2017-12-12 | Intel Corporation | Systems and methods for non-blocking implementation of cache flush instructions |
US9678882B2 (en) | 2012-10-11 | 2017-06-13 | Intel Corporation | Systems and methods for non-blocking implementation of cache flush instructions |
US10585804B2 (en) | 2012-10-11 | 2020-03-10 | Intel Corporation | Systems and methods for non-blocking implementation of cache flush instructions |
US10324725B2 (en) | 2012-12-27 | 2019-06-18 | Nvidia Corporation | Fault detection in instruction translations |
US9811342B2 (en) | 2013-03-15 | 2017-11-07 | Intel Corporation | Method for performing dual dispatch of blocks and half blocks |
US9904625B2 (en) | 2013-03-15 | 2018-02-27 | Intel Corporation | Methods, systems and apparatus for predicting the way of a set associative cache |
US10255076B2 (en) | 2013-03-15 | 2019-04-09 | Intel Corporation | Method for performing dual dispatch of blocks and half blocks |
US10198266B2 (en) | 2013-03-15 | 2019-02-05 | Intel Corporation | Method for populating register view data structure by using register template snapshots |
US10275255B2 (en) | 2013-03-15 | 2019-04-30 | Intel Corporation | Method for dependency broadcasting through a source organized source view data structure |
US10169045B2 (en) | 2013-03-15 | 2019-01-01 | Intel Corporation | Method for dependency broadcasting through a source organized source view data structure |
US10146576B2 (en) | 2013-03-15 | 2018-12-04 | Intel Corporation | Method for executing multithreaded instructions grouped into blocks |
US10146548B2 (en) | 2013-03-15 | 2018-12-04 | Intel Corporation | Method for populating a source view data structure by using register template snapshots |
US10140138B2 (en) | 2013-03-15 | 2018-11-27 | Intel Corporation | Methods, systems and apparatus for supporting wide and efficient front-end operation with guest-architecture emulation |
US9934042B2 (en) | 2013-03-15 | 2018-04-03 | Intel Corporation | Method for dependency broadcasting through a block organized source view data structure |
US10503514B2 (en) | 2013-03-15 | 2019-12-10 | Intel Corporation | Method for implementing a reduced size register view data structure in a microprocessor |
US10248570B2 (en) | 2013-03-15 | 2019-04-02 | Intel Corporation | Methods, systems and apparatus for predicting the way of a set associative cache |
US9898412B2 (en) | 2013-03-15 | 2018-02-20 | Intel Corporation | Methods, systems and apparatus for predicting the way of a set associative cache |
US9891924B2 (en) | 2013-03-15 | 2018-02-13 | Intel Corporation | Method for implementing a reduced size register view data structure in a microprocessor |
US9886279B2 (en) | 2013-03-15 | 2018-02-06 | Intel Corporation | Method for populating and instruction view data structure by using register template snapshots |
US9858080B2 (en) | 2013-03-15 | 2018-01-02 | Intel Corporation | Method for implementing a reduced size register view data structure in a microprocessor |
US10740126B2 (en) | 2013-03-15 | 2020-08-11 | Intel Corporation | Methods, systems and apparatus for supporting wide and efficient front-end operation with guest-architecture emulation |
US9823930B2 (en) | 2013-03-15 | 2017-11-21 | Intel Corporation | Method for emulating a guest centralized flag architecture by using a native distributed flag architecture |
US9811377B2 (en) | 2013-03-15 | 2017-11-07 | Intel Corporation | Method for executing multithreaded instructions grouped into blocks |
US11656875B2 (en) | 2013-03-15 | 2023-05-23 | Intel Corporation | Method and system for instruction block to execution unit grouping |
TWI483186B (zh) * | 2013-09-26 | 2015-05-01 | Andes Technology Corp | 微處理器及其使用指令迴圈快取記憶體的方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2004061686A2 (en) | 2004-07-22 |
CN1732447A (zh) | 2006-02-08 |
WO2004061686A3 (en) | 2004-11-18 |
US7191349B2 (en) | 2007-03-13 |
GB2412457A (en) | 2005-09-28 |
US20040128563A1 (en) | 2004-07-01 |
TW200413889A (en) | 2004-08-01 |
AU2003298903A1 (en) | 2004-07-29 |
US20070143514A1 (en) | 2007-06-21 |
CN100349147C (zh) | 2007-11-14 |
DE10393969T5 (de) | 2008-06-26 |
HK1075314A1 (en) | 2005-12-09 |
GB2412457B (en) | 2006-01-25 |
US7761720B2 (en) | 2010-07-20 |
GB0505391D0 (en) | 2005-04-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI233545B (en) | Mechanism for processor power state aware distribution of lowest priority interrupts | |
CN107209548B (zh) | 在多核处理器中执行功率管理 | |
US8489904B2 (en) | Allocating computing system power levels responsive to service level agreements | |
US8423799B2 (en) | Managing accelerators of a computing environment | |
TWI630476B (zh) | 執行平台裝置之動態功率控制的處理器、機器可讀取媒體及系統 | |
JP6197196B2 (ja) | 電力効率の優れたプロセッサアーキテクチャ | |
JP6058541B2 (ja) | コア単位電圧及び周波数制御の提供 | |
KR101551321B1 (ko) | 휴대용 컴퓨팅 디바이스에서 요청들을 스케쥴링하기 위한 방법 및 시스템 | |
TWI425422B (zh) | 多cpu領域行動電子裝置與其操作方法 | |
CN105183128A (zh) | 强制处理器进入低功率状态 | |
JP2009093665A (ja) | マルチスレッド・プロセッサ性能を制御する装置及び方法 | |
CN105009101A (zh) | 提供与数据缓冲器相关联的监听滤波 | |
US20050262365A1 (en) | P-state feedback to operating system with hardware coordination | |
US8745629B2 (en) | System and method of controlling power in an electronic device | |
JP2022526765A (ja) | プロセッサのパワーライセンス制御のためのシステム、装置、および方法 | |
CN109564526A (zh) | 使用封装和线程提示信息的组合来控制处理器的性能状态 | |
TWI739345B (zh) | 中斷處理系統與中斷處理方法 | |
US11422849B2 (en) | Technology for dynamically grouping threads for energy efficiency | |
CN112906326A (zh) | 用于时延监视和响应的系统、装置和方法 | |
WO2023225991A1 (en) | Dynamic establishment of polling periods for virtual machine switching operations | |
WO2024027413A1 (zh) | 一种协同调度方法和相关设备 | |
JP6409218B2 (ja) | 電力効率の優れたプロセッサアーキテクチャ | |
JP2017021811A (ja) | 電力効率の優れたプロセッサアーキテクチャ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |