亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

多核平臺中的受約束引導(dǎo)技術(shù)的制作方法

文檔序號:6496651閱讀:126來源:國知局
多核平臺中的受約束引導(dǎo)技術(shù)的制作方法
【專利摘要】描述了與多核平臺中的受約束引導(dǎo)技術(shù)有關(guān)的方法和裝置。在一個實施例中,處理器可包括控制哪一些特定核要上電/斷電和/或這些核至少部分地基于來自O(shè)S和/或軟件應(yīng)用的輸入需要進(jìn)入哪一種功率狀態(tài)的邏輯。還要求保護(hù)和公開了其他實施例。
【專利說明】多核平臺中的受約束引導(dǎo)技術(shù)
[0001]領(lǐng)域
[0002]本公開一般涉及電子領(lǐng)域。更具體地,本發(fā)明的實施例涉及多核平臺中的受約束引導(dǎo)技術(shù)。
[0003]背景
[0004]為了改進(jìn)性能,一些系統(tǒng)包括具有多個處理核的處理器(也稱為多核系統(tǒng))。當(dāng)前,這些系統(tǒng)中的大多數(shù)集中于提供高性能,并且可能存在以某一水平內(nèi)置的一些受限功率管理。例如,這些多核系統(tǒng)中的一些系統(tǒng)可具有執(zhí)行每核Cx狀態(tài)的能力。每一 C狀態(tài)可指示特定水平的功能。例如,CO可指示處理器正在操作,Cl可指示處理器不在執(zhí)行指令、但是可幾乎同時地返回執(zhí)行狀態(tài),C2可指示處理器維持所有軟件可視信息、但是可能花費更長時間返回全執(zhí)行狀態(tài),C3可指示處理器休眠且不需要保持其高速緩存相干等。
[0005]然而,對主動(aggressive)操作系統(tǒng)(OS)或軟件(SW)驅(qū)動的功率管理的支持通常是極少的,尤其是從OS的角度來看。此外,大多數(shù)當(dāng)前OS管理功能策略即使從處理器功率管理角度來看也沒有傾向于隨多核系統(tǒng)很好地縮放,或者隨平臺在整體上很好地縮放。
[0006]因此,如何利用各種功耗狀態(tài)可能對處理器的性能和/或功耗具有直接影響。
[0007]附圖簡述
[0008]參考附圖提供詳細(xì)描述。在附圖中,附圖標(biāo)記的最左邊數(shù)字標(biāo)識附圖標(biāo)記首先出現(xiàn)在其中的附圖。在不同的附圖中使用相同的附圖標(biāo)記來指示相同或相似的項目。
[0009]圖1、5和6示出可用于實現(xiàn)本文中所討論的各個實施例的計算系統(tǒng)的實施例的方框圖。
[0010]圖2示出根據(jù)實施例的計算系統(tǒng)的處理器核以及其他組件的各部分的方框圖。
[0011]圖3-4示出根據(jù)一些實施例的流程圖。
[0012]詳細(xì)描述
[0013]在以下描述中,為了提供對各個實施例的透徹理解,闡述了大量具體細(xì)節(jié)。然而,在沒有這些具體細(xì)節(jié)的情況下,可實踐本發(fā)明的各個實施例。在其他實例中,未詳細(xì)地描述公知方法、過程、組件、以及電路,從而不混淆本發(fā)明的特定實施例。此外,可使用諸如集成半導(dǎo)體電路(“硬件”)、組織成一個或多個程序(“軟件”)的計算機可讀指令、或者硬件和軟件的一些組合之類的各種手段來執(zhí)行本發(fā)明的實施例的各方面。出于本公開的目的,對“邏輯”的引用應(yīng)當(dāng)意味著硬件、軟件、或者其一些組合。同樣,對“指令”和“微操作”(UOP)的使用是互換的,如本文中所討論的。
[0014]本文中所討論的一些實施例可用于提供多核處理器中的受約束引導(dǎo)技術(shù)。如本文中所討論的,術(shù)語“受約束”引導(dǎo)或狀態(tài)通常指其中一個或多個處理器核進(jìn)入或引導(dǎo)到比全操作狀態(tài)消耗更少功率的功耗狀態(tài)(例如,未完全在CO狀態(tài)中)的狀態(tài)或引導(dǎo)技術(shù)。在一些實施例中,本文中所討論的至少一些功耗狀態(tài)可與在2010年4月5日發(fā)布的高級配置和電源接口(ACPI)規(guī)范下定義的那些功耗狀態(tài)一致。
[0015]在一個實施例中,處理器可包括控制哪個(哪些)特定核要上電/斷電和/或這些核至少部分地基于來自O(shè)S軟件和/或軟件應(yīng)用的輸入而需要進(jìn)入哪一種功率狀態(tài)的邏輯。此外,控制核上電/斷電以及上電/斷電的水平的能力可用于基于工作負(fù)荷、情境、使用等優(yōu)化平臺功耗。此外,本文中所討論的至少一些OS操作可由軟件應(yīng)用、固件等互換地執(zhí)行。
[0016]在實施例中,當(dāng)從低功率狀態(tài)退出時,只有特定處理器核可達(dá)到全功率狀態(tài),并且其余處理器核可保持在“受約束”狀態(tài)中(例如,未完全在CO中)。這進(jìn)而將大大地降低總平臺功耗。
[0017]此外,雖然多核系統(tǒng)提供了顯著的性能改進(jìn),但是在OS或SW級下的功率管理通常取決于傳統(tǒng)OS支持。例如,一些當(dāng)前OS (諸如Linux? )支持使所有非引導(dǎo)處理器(例如,對最終斷電/上電而言不是關(guān)鍵的非引導(dǎo)處理器)完全斷電/停用,但是該方法可具有高等待時間、高功率影響,并且還可能不需要(有時取決于情境)使該系統(tǒng)中的所有核完全上電(例如,其中存在需要喚醒CPU核的單個中斷且不是真正需要使所有CPU上電且同時運行的情境)。本文中所討論的技術(shù)可用于具有性能狀態(tài)設(shè)置的任何類型的處理器,諸如參考圖1以及5-6所討論的處理器。更具體地,圖1示出根據(jù)本發(fā)明的實施例的計算系統(tǒng)100的方框圖。系統(tǒng)100可包括一個或多個處理器102-1至102-N(通常在本文中被稱為“(諸)處理器102”或“處理器102”)。處理器102可經(jīng)由互連網(wǎng)絡(luò)或總線104通信。每一處理器可包括各個組件,為了清楚起見,只參考處理器102-1討論一些組件。因此,其余處理器102-2至102-N中的每一個處理器可包括參考處理器102-1所討論的相同或類似的組件。
[0018]在實施例中,處理器102-1可包括一個或多個處理器核106-1至106-M (在本文中被稱為“(諸)核106”或更一般地被稱為“核106”)、共享高速緩存108、路由器110、和/或處理器控制邏輯或單元120。處理器核106可在單個集成電路(IC)芯片上實現(xiàn)。此外,該芯片可包括一個或多個共享和/或私有的高速緩存(諸如高速緩存108)、總線或互連(諸如總線或互連網(wǎng)絡(luò)112)、存儲器控制器(諸如參考圖5-6所討論的那些存儲器控制器)、或者其他組件。
[0019]在一個實施例中,路由器110可用于在處理器102-1和/或系統(tǒng)100的各個組件之間通信。此外,處理器102-1可包括一個以上路由器110。此外,多個路由器110可通信以在處理器102-1內(nèi)部或外部的各個組件之間實現(xiàn)數(shù)據(jù)路由。
[0020]共享高速緩存108可存儲由處理器102-1的一個或多個組件(諸如核106)利用的數(shù)據(jù)(例如,包括指令)。例如,共享高速緩存108可在本地高速緩存存儲在存儲器114中的數(shù)據(jù),以供處理器102的組件更快速地訪問。在一個實施例中,高速緩存108可包括中級高速緩存(諸如級2 (L2)、級4 (L3)、級4 (L4)或其他級高速緩存)、最后一級高速緩存(LLC)、和/或其組合。此外,處理器102-1的各個組件可直接通過總線(例如,總線112)和/或存儲器控制器或中樞與共享高速緩存108通信。如圖1所示,在一些實施例中,核106中的一個或多個可包括級I(Ll)高速緩存116-1(在本文中通常被稱為“LI高速緩存116”)。
[0021]在一個實施例中,控制單元120可控制哪個(哪些)特定核106要上電/斷電和/或這些核中有多少個核需要基于來自O(shè)S和/或軟件應(yīng)用(例如,可存儲在存儲器114中的OS和/或軟件應(yīng)用)的輸入而被上電/斷電(bring up/down)。此外,控制單元120可控制核的上電/斷電以及上電/斷電的水平,從而基于平臺中存在的工作負(fù)荷、情境、使用等狀況(例如,如由OS和/或軟件應(yīng)用確定的)來優(yōu)化平臺功耗,。
[0022]圖2示出根據(jù)本發(fā)明的實施例的計算系統(tǒng)的處理器核106以及其他組件的各部分的方框圖。在一個實施例中,圖2所示的箭頭示出指令通過核106的流向。一個或多個處理器核(諸如處理器核106)可在諸如參考圖1所討論的單個集成芯片(或管芯)上實現(xiàn)。此外,該芯片可包括一個或多個共享和/或私有的高速緩存(例如,圖1的高速緩存108)、互連(例如,圖1的互連104和/或112)、控制單元、存儲器控制器、或者其他組件。
[0023]如圖2所示,處理器核106可包括獲取指令以供核106執(zhí)行的獲取單元202 (包括具有條件分支的指令)。這些指令可從諸如存儲器114和/或參考圖5-6所討論的存儲器設(shè)備之類的任何存儲設(shè)備獲取。核106還可包括對所獲取指令進(jìn)行解碼的解碼單元204。例如,解碼單元204可將所獲取指令解碼成多個uop (微操作)。另外,核106可包括調(diào)度單元206。調(diào)度單元206可執(zhí)行與存儲經(jīng)解碼的指令(例如,從解碼單元204接收到的)相關(guān)聯(lián)的各種操作,直至這些指令準(zhǔn)備好分派,例如直至經(jīng)解碼的指令的所有源值變得可用。在一個實施例中,調(diào)度單元206可將經(jīng)解碼的指令調(diào)度和/或發(fā)出(或分派)到執(zhí)行單元208,以供執(zhí)行。執(zhí)行單元208可執(zhí)行經(jīng)分派的指令一在它們被解碼(例如,由解碼單元204)和分派(例如,由調(diào)度單元206)之后。在一個實施例中,執(zhí)行單元208可包括一個以上執(zhí)行單元。執(zhí)行單元208還可執(zhí)行各種運算操作,諸如加法、減法、乘法、和/或除法,并且可包括一個或多個運算邏輯單元(ALU)。在一個實施例中,協(xié)處理器(未示出)連同執(zhí)行單元208可執(zhí)行各種運算操作。
[0024]此外,執(zhí)行單元208可無序地執(zhí)行指令。因此,在一個實施例中,處理器核106可以是無序處理器核。核106還可包括引退單元210。引退單元210可引退所執(zhí)行指令一在它們被提交之后。在一個實施例中,所執(zhí)行指令的引退可導(dǎo)致存儲器狀態(tài)因這些指令的執(zhí)行而被提交,這些指令所使用的物理寄存器被解除分配(de-allocate)等。核106還可包括總線單元214,用以實現(xiàn)經(jīng)由一個或多個總線(例如,總線104和/或112)在處理器核106的組件與其他組件(諸如參考圖1所討論的組件)之間的通信。核106還可包括一個或多個寄存器216,用以存儲由核106的各個組件存取的數(shù)據(jù)(諸如與功耗狀態(tài)設(shè)置有關(guān)的值)。
[0025]此外,雖然圖1示出控制單元120經(jīng)由互連112耦合到核106,但是在各個實施例中,控制單元120可位于其他地方(諸如核106內(nèi)部),經(jīng)由總線104耦合到該核等。
[0026]圖3示出根據(jù)一個實施例的約束初始化操作的流程圖。在一些實施例中,參考圖1-2以及4-6所討論的各個組件可用于執(zhí)行參考圖3所討論的一個或多個操作。例如,控制單元120可用于控制一個或多個處理器核106的功耗狀態(tài)。在一些實施例中,操作304-308中的一個或多個操作可由固件執(zhí)行。同樣,在各個實施例中,操作310-312、318、336、338以及344中的一個或多個操作可由OS執(zhí)行。
[0027]如本文中所討論的,“線程”通常指邏輯處理器或處理的最小單元(它可由OS和/或軟件應(yīng)用調(diào)度)。“線程”可以與或者可以不與同一物理半導(dǎo)體集成電路(IC)封裝中的另一邏輯處理器共享資源?!昂恕蓖ǔV概c同一物理半導(dǎo)體IC封裝中的一個或多個其他處理器核共存的處理器核。處理器核可以與或者可以不與其他處理器或處理器核共享資源?!胺庋b”通常指包含任意數(shù)量的核和線程的物理IC芯片。
[0028]在一些實施例中,在架構(gòu)上且在沒有普遍損耗的情況下,可考慮在任何多核系統(tǒng)上,存在以下情況中的一種或多種情況:(I)存在一個自引導(dǎo)處理器(BSP)核、和/或主/主要處理器核(或線程);(2)存在作為輔助處理器核或處理器線程(例如,它們依靠BSP核來發(fā)起/處理在平臺中的一個或多個處理器核之間共享的功率管理特征或者其他特征)的一個或多個非BSP核。
[0029]在一些實施例中,改變非SBP處理器的狀態(tài)的OS例程可包括:分別用于停用和啟用非 BSP 核處理器的 “disable_nonboot_cpus O (停用 _ 非引導(dǎo) _cpus O) ” 和 “enable_nonboot_cpus()(啟用_非引導(dǎo)_cpus O) ”。在一般恢復(fù)順序中,一旦在302重置處理器(并且在304任選地加載微代碼補丁 ),引導(dǎo)流就經(jīng)過“enable_nonboot_cpus O ”流以啟用非BSP核。這可包括:
[0030](I)啟動處理器間中斷(SIPI):為了喚醒輔助線程或核,BSP將SIPI發(fā)送到每一線程和核。該SIPI可通過使用BSP的LAPIC(本地高級可編程中斷控制器)來發(fā)送,例如指示應(yīng)用處理器(AP)應(yīng)當(dāng)開始執(zhí)行的物理地址。
[0031](2)AP喚醒狀態(tài):一旦接收到SIPI,AP就將開始執(zhí)行由SIPI消息指向的代碼。
[0032]一旦固件準(zhǔn)備好嘗試引導(dǎo)OS,在332所有AP處理器被放回其通電狀態(tài)(“Wait-for-SIPI (等待SIPI)”)中(如將在下文中進(jìn)一步討論的),這可通過BSP核將之后跟隨有INIT DEASSERT IPI的INIT ASSERT IPI發(fā)送到該系統(tǒng)中的所有AP (除原始核以外的所有核)來實現(xiàn)。該過程正常具有高等待時間,并且如果該過程針對平臺/處理器中的所有非BSP核不得不重復(fù),則它可顯著地增加整個平臺恢復(fù)過程的等待時間。
[0033]根據(jù)一些實施例,引導(dǎo)非BSP核至受約束狀態(tài)可通過具有如圖3所示的低等待時間短引導(dǎo)流來優(yōu)化。盡管參考圖3討論了進(jìn)入封裝級C6,但是在各個實施例中可進(jìn)入其他封裝級(例如,除了 CO以外)。通常,為了進(jìn)入封裝級C6(最深的X86處理器狀態(tài)),核的線程應(yīng)當(dāng)已經(jīng)請求了 C6,否則微代碼可拾取兩個處理器線程狀態(tài)中的較低者。
[0034]在一些實施例中,線程O或BSP核可執(zhí)行如圖3所示的操作302-320。例如,在重置狀態(tài)302之后(例如,從如參考圖4所討論的待機狀態(tài)或空閑狀態(tài)起),在304可任選地應(yīng)用微代碼補丁。在306,可初始化存儲器控制器(諸如圖5的存儲器控制器510)。在308,可還原平臺及其上下文(例如,從圖1的存儲器114或圖5的存儲器512)。在310,恢復(fù)OS內(nèi)核。在312,可初始化平臺的其余部分。如果在314平臺被線程Ο/BSP核確定為處于執(zhí)行狀態(tài),則在316可執(zhí)行短引導(dǎo)(例如,至C6);否則,在318可啟用非引導(dǎo)核。在320,完成自待機恢復(fù)。
[0035]參考圖3,線程I或非BSP核可執(zhí)行操作330-344。即,每一流334且在重置狀態(tài)330之后,可將第一非BSP核引導(dǎo)到受約束引導(dǎo)狀態(tài)中。更具體地,在332,第一非BSP核可等待SIPI (例如,從316),如以上所討論的。在336,線程I可接收IPI (例如,在316從線程O)且作為IPI處理機的一部分,在一些實施例中,在338可反復(fù)地作出對C6的請求。在340,如果確定要進(jìn)入受約束引導(dǎo)(例如,何時完成線程I上的所有相應(yīng)任務(wù)),則在342可進(jìn)入深度睡眠狀態(tài)(例如,C6)。否則,在344可執(zhí)行高等待時間引導(dǎo)流,例如通過啟用用于初始化存儲器管理單元(MMU,諸如圖5的存儲器控制器510)的低存儲器。同樣,在344,可建立每核⑶T(全局描述符表)和/或TSS(任務(wù)狀態(tài)段)。同樣,在344,在一些實施例中可執(zhí)行浮點初始化和/或與BP(引導(dǎo)處理器)啟用局部中斷的同步。此外,當(dāng)響應(yīng)于非定時器中斷喚醒平臺時,OS可啟用非BSP線程并將其初始化至先前已知的良好狀態(tài),從而在平臺處于有效狀態(tài)時不損害性能。
[0036]在若干情況下,可使用該短引導(dǎo)流334。例如,對于定時器喚醒執(zhí)行狀態(tài),在由于定時器中斷而喚醒平臺僅執(zhí)行OS同步的空閑情境中,在處理定時器中斷之后相對很快地再次進(jìn)入深度睡眠狀態(tài)是可能的。在此情境中,非BSP處理器線程達(dá)到其全電位,并且嘗試再次進(jìn)入深度睡眠狀態(tài),這可能存在顯著的功耗懲罰。替代地,非BSP線程可引導(dǎo)到受約束狀態(tài),并且導(dǎo)致進(jìn)入具有較少功耗懲罰的深度睡眠狀態(tài)。
[0037]圖4示出根據(jù)實施例的在空閑期間用于基于定時器的中斷處理的受約束初始化操作的流程圖。在一些實施例中,參考圖1-3以及5-6所討論的各個組件可用于執(zhí)行參考圖3所討論的一個或多個操作。例如,控制單元120可用于控制一個或多個處理器核106的功耗狀態(tài)。
[0038]在402平臺從SOix喚醒之后,在404,OS (例如,OS功率管理(OSPM)驅(qū)動器)可確定喚醒源?!癝Oix”通常指通過平臺級功率管理而實現(xiàn)的經(jīng)改進(jìn)空閑功率狀態(tài),該經(jīng)改進(jìn)空閑功率狀態(tài)是事件驅(qū)動(例如,基于OS或軟件應(yīng)用輸入)的,而不是由用戶驅(qū)動或者在平臺空閑太長時間(預(yù)編程時間)的情況下的常規(guī)空閑功率狀態(tài)。如果在402喚醒的原因是非定時器的或交互的,則該事件可被發(fā)送到OSPM框架且由OSPM框架處理,而無需快速地重試。
[0039]在一個實施例中,如果平臺功率狀態(tài)是SOix,則這可被視為針對SOix狀態(tài)重試的提示。CPU空閑驅(qū)動器邏輯406 (在一個實施例中該CPU空閑驅(qū)動器邏輯406可在控制單元120中實現(xiàn))接收來自O(shè)SPM驅(qū)動器404的消息或信號,并且在412產(chǎn)生對CPU狀態(tài)的保存。同樣,可將功率管理命令發(fā)送到(例如,向南)復(fù)雜的系統(tǒng)控制器單元(SCU)(用于S0i2/3),并且根據(jù)實施例,在412可將CPU狀態(tài)存儲在SCU存儲器(例如,SRAM)中。如果在410,BSP和非BSP核/線程兩者處于深度睡眠(例如,C6)狀態(tài),則在411,平臺進(jìn)入SOix。如圖4所示,CPU空閑調(diào)節(jié)器(governor)邏輯408 (在一個實施例中該CPU空閑調(diào)速器邏輯408可在控制單元120中實現(xiàn))可與邏輯406通信從而例如基于與傳送延遲值相關(guān)聯(lián)的等待時間提示,進(jìn)入甚至更深的狀態(tài)(例如,C7)。
[0040]一些實施例提供用于以下的技術(shù):(I)基于平臺空閑和/或基于平臺的喚醒源選擇性地引導(dǎo)非BSP核至全電位狀態(tài)或“受約束狀態(tài)” ;(2)通過減少引導(dǎo)非BSP核的等待時間更快速地引導(dǎo)平臺;和/或(3)減少在全功率狀態(tài)(例如,CO)中花費的時間,這進(jìn)而將有助于節(jié)省功率。
[0041]圖5示出根據(jù)本發(fā)明的一個實施例的計算系統(tǒng)500的方框圖。計算系統(tǒng)500可包括經(jīng)由互聯(lián)網(wǎng)絡(luò)(或總線)540通信的一個或多個中央處理單元(CPU) 502或處理器。處理器502可包括通用處理器、網(wǎng)絡(luò)處理器(該網(wǎng)絡(luò)處理器處理在計算機網(wǎng)絡(luò)503上通信的數(shù)據(jù))、或者其他類型的處理器(包括精簡指令集計算機(RISC)處理器或復(fù)雜的指令集計算機(CISC))。此外,處理器502可具有單或多核設(shè)計。具有多核設(shè)計的處理器502可在同一集成電路(IC)管芯上集成不同類型的處理器核。同樣,具有多核設(shè)計的處理器502可被實現(xiàn)為對稱或非對稱的多處理器。在一個實施例中,處理器502中的一個或多個處理器可與圖1的處理器102相同或相似。例如,處理器502中的一個或多個處理器可包括參考圖1-4所討論的控制單元120。同樣,參考圖1-4所討論的操作可由系統(tǒng)500的一個或多個組件執(zhí)行。
[0042]芯片組506還可與互聯(lián)網(wǎng)絡(luò)504通信。芯片組506可包括存儲器控制中樞(MCH) 508。MCH508可包括與存儲器512 (該存儲器512可與圖1的存儲器114相同或相似)通信的存儲器控制器510。存儲器512可存儲可由CPU502或者包括在計算系統(tǒng)500中的任何其他設(shè)備執(zhí)行的數(shù)據(jù),包括指令順序。在本發(fā)明的一個實施例中,存儲器512可包括一個或多個易失性存儲(或存儲器)設(shè)備,諸如隨機存取存儲器(RAM)、動態(tài)RAM(DRAM)、靜態(tài)RAM(SRAM)、或者其他類型的存儲設(shè)備。還可利用諸如硬盤之類的非易失性存儲器。附加設(shè)備可經(jīng)由諸如多CPU和/或多系統(tǒng)存儲器之類的互聯(lián)網(wǎng)絡(luò)504通信。
[0043]MCH508還可包括與顯示設(shè)備516通信的圖形接口 514。在本發(fā)明的一個實施例中,圖形接口 514可經(jīng)由加速圖形端口(AGP)與顯示設(shè)備516通信。在本發(fā)明的一個實施例中,顯示器516(諸如平板顯示器)可通過例如信號轉(zhuǎn)換器與圖形接口 514通信,該信號轉(zhuǎn)換器將存儲在諸如視頻存儲器或系統(tǒng)存儲器之類的存儲設(shè)備中的圖像的數(shù)字表示翻譯成由顯不器516解釋和顯不的顯不信號。在由顯不器516解釋并且隨后在顯不器516上顯示之前,顯示設(shè)備所產(chǎn)生的顯示信號可經(jīng)過各種控制設(shè)備。
[0044]中樞接口 518可允許MCH508和輸入/或輸出控制中樞(ICH) 520通信。ICH520可提供與計算系統(tǒng)500通信的到I/O設(shè)備的接口。ICH520可通過諸如外圍組件互連(PCI)橋、通用串行總線(USB)控制器、或者其他類型的外圍橋或控制器之類的外圍橋(或控制器)524與總線522通信。橋524可提供CPU502和外圍設(shè)備之間的數(shù)據(jù)通道。可利用其他類型的拓?fù)?。同樣,多條總線可通過例如多個橋或控制器與ICH520通信。此外,在本發(fā)明的各個實施例中,與ICH520通信的其他外圍設(shè)備可包括集成驅(qū)動電子設(shè)備(IDE)或小計算機系統(tǒng)接口(SCSI)硬驅(qū)動、USB端口、鍵盤、鼠標(biāo)、并行端口、串行端口、軟盤驅(qū)動、數(shù)字輸出支持件(例如,數(shù)字視頻接口(DVI))、或者其他設(shè)備。
[0045]總線522可與音頻設(shè)備526、一個或多個盤驅(qū)動528、以及網(wǎng)絡(luò)接口設(shè)備530 (該網(wǎng)絡(luò)接口設(shè)備530與計算機網(wǎng)絡(luò)503通信)通信。其他設(shè)備可經(jīng)由總線522通信。同樣,在本發(fā)明的一些實施例中,各個組件(諸如網(wǎng)絡(luò)接口設(shè)備530)可與MCH508通信。例如,處理器502和MCH508可組合以形成單一芯片。此外,在本發(fā)明的其他實施例中,圖像加速器516可被包括在MCH508內(nèi)。
[0046]此外,計算系統(tǒng)500可包括易失性和/或非易失性存儲器(或存儲)。例如,非易失性存儲器可包括以下存儲器中的一個或多個:隨機存儲器(ROM)、可編程ROM(PROM)、可擦除 PROM (EPROM)、電 EPROM (EEPROM)、盤驅(qū)動(例如,528)、軟盤、壓縮盤 ROM (CD-ROM)、數(shù)字多功能盤(DVD)、閃存、磁電-光盤、或者能夠存儲電子數(shù)據(jù)(例如,包括指令)的其他類型的非易失性機器可讀介質(zhì)。
[0047]圖6示出根據(jù)本發(fā)明的一個實施例的排列在點對點(PtP)配置的計算系統(tǒng)600。具體而言,圖6示出其中處理器、存儲器、以及輸入/輸出設(shè)備通過大量點對點接口互連的系統(tǒng)。參考圖1-5所討論的操作可由系統(tǒng)600的一個或多個組件執(zhí)行。
[0048]如圖6所示,系統(tǒng)600可包括若干處理器,其中為了清楚起見,只示出兩個處理器602和604。處理器602和604各自可包括本地存儲器控制器中樞(MCH) 606和608,以實現(xiàn)與存儲器610和612的通信。存儲器610和/或612可存儲各種數(shù)據(jù),諸如參考圖5的存儲器512所討論的那些數(shù)據(jù)。
[0049]在一個實施例中,處理器602和604可以是參考圖5所討論的處理器502中的一個處理器。處理器602和604可分別經(jīng)由點對點(PtP)接口 614使用PtP接口電路616和618來交換數(shù)據(jù)。同樣,處理器602和604各自可經(jīng)由各個PtP接口 622和624使用點對點接口電路626、628、630和632與芯片組620交換數(shù)據(jù)。芯片組620還可經(jīng)由圖形接口636 (例如,使用PtP接口電路637)與圖形電路634交換數(shù)據(jù)。
[0050]本發(fā)明的至少一個實施例可設(shè)置在處理器602和604內(nèi)。例如,圖1_4的控制單兀120可位于處理器602和604內(nèi)。然而,本發(fā)明的其他實施例可存在于圖6的系統(tǒng)600內(nèi)的其他電路、邏輯單元、或設(shè)備中。此外,本發(fā)明的其他實施例可在圖6所示的若干電路、邏輯單元、或設(shè)備之間分布。
[0051]芯片組620可使用PtP接口電路641與總線640通信。總線640可與諸如總線橋642和I/O設(shè)備643之類的一個或多個設(shè)備通信。經(jīng)由總線644,總線橋642可與諸如鍵盤/鼠標(biāo)645、通信設(shè)備646 (諸如調(diào)制解調(diào)器、網(wǎng)絡(luò)接口設(shè)備、或者可與計算機網(wǎng)絡(luò)503通信的其他通信設(shè)備)、音頻I/O鼠標(biāo)647、和/或數(shù)據(jù)存儲設(shè)備648之類的其他設(shè)備通信。數(shù)據(jù)存儲設(shè)備648可存儲可由處理器602和/或604執(zhí)行的代碼649。
[0052]在本發(fā)明的各個實施例中,本文中例如參考圖1-6所討論的操作可被實現(xiàn)為硬件(例如,邏輯電路)、軟件、固件、或者其組合,其可被提供為計算機程序產(chǎn)品,例如包括其上存儲有用于對計算機編程以執(zhí)行本文中所討論的過程的指令(或軟件程序)的(例如,非瞬態(tài))機器可讀或計算機可讀介質(zhì)。機器可讀介質(zhì)可包括存儲設(shè)備,諸如參考圖1-6所討論的那些存儲設(shè)備。另外,這種計算機可讀介質(zhì)可被下載為計算機程序產(chǎn)品,其中可借助于體現(xiàn)在載波或者其他傳播介質(zhì)中的數(shù)據(jù)信號經(jīng)由通信鏈接(例如,總線、調(diào)制解調(diào)器、或網(wǎng)絡(luò)連接)將該程序從遠(yuǎn)程計算機(例如,服務(wù)器)傳輸?shù)秸埱笥嬎銠C(例如,客戶機)。
[0053]在說明書中對“一個實施例”、“實施例”、或“一些實施例”的引用意味著結(jié)合實施例所描述的特定特征、結(jié)構(gòu)、或特性可被包括在至少一種實現(xiàn)中。在說明書中詞組“在一個實施例中”出現(xiàn)在各個地方可以是或者可以不是全部引用同一實施例。
[0054]同樣,在該描述和權(quán)利要求中,可使用術(shù)語“耦合”和/或“連接”、及其派生詞。在本發(fā)明的一些實施例中,“連接”可用于指示兩個或兩個以上元件彼此直接物理或電接觸?!榜詈稀笨梢馕吨鴥蓚€或兩個以上元件直接物理或電接觸。然而,“耦合”還可意味著兩個或兩個以上元件可以彼此不直接接觸,但是仍然可以彼此協(xié)同操作或交互。
[0055]由此,雖然本發(fā)明的實施例已經(jīng)以結(jié)構(gòu)特征和/或方法動作專用的語言進(jìn)行了描述,但是應(yīng)當(dāng)理解要求保護(hù)的主題可以不限于所描述的特定特征或動作。相反,特定特征和動作被公開為實現(xiàn)要求保護(hù)的主題的樣本形式。
【權(quán)利要求】
1.一種處理器,包括: 多個處理器核;以及 控制邏輯,所述控制邏輯與所述多個處理器核中的至少第一處理器核耦合,以從低功耗狀態(tài)檢測喚醒事件且使所述多個處理器核中的第二處理器核進(jìn)入比全操作功耗狀態(tài)消耗更少功率的功耗狀態(tài), 其中所述控制邏輯基于所述喚醒事件的源使所述第二處理器核進(jìn)入所述功耗狀態(tài)。
2.如權(quán)利要求1所述的處理器,其特征在于,響應(yīng)于所述喚醒事件,所述多個處理器核中的第三處理器核進(jìn)入所述全操作功耗狀態(tài)。
3.如權(quán)利要求1所述的處理器,其特征在于,還包括存儲操作系統(tǒng)軟件的存儲器,其中所述操作系統(tǒng)軟件觸發(fā)所述喚醒事件。
4.如權(quán)利要求3所述的處理器,其特征在于,所述操作系統(tǒng)軟件基于定時器觸發(fā)所述喚醒事件。
5.如權(quán)利要求1所述的處理器,其特征在于,所述控制邏輯基于在包括所述處理器的平臺中存在的工作負(fù)荷、情境、以及使用狀況中的一個或多個來確定所述第二處理器核是否進(jìn)入所述功耗狀態(tài)。
6.如權(quán)利要求1所述的處理器,其特征在于,所述低功耗狀態(tài)包括空閑狀態(tài)和待機狀態(tài)。
7.如權(quán)利要求1所述的處理器,其特征在于,還包括存儲應(yīng)用軟件的存儲器,其中所述應(yīng)用軟件觸發(fā)所述喚醒事件。
8.如權(quán)利要求7所述的處理器,其特征在于,所述應(yīng)用軟件基于定時器觸發(fā)所述喚醒事件。
9.如權(quán)利要求1所述的處理器,其特征在于,響應(yīng)于所述喚醒事件,所述第一處理器核將至少一個處理器間中斷傳送到所述第二處理器核。
10.如權(quán)利要求1所述的處理器,其特征在于,所述第一處理器核是自引導(dǎo)處理器核而所述第二處理器核是非自引導(dǎo)處理器核。
11.如權(quán)利要求1所述的處理器,其特征在于,所述喚醒事件指示從平臺空閑狀態(tài)的恢復(fù)。
12.—種方法,包括: 在處理器的第一處理器核處從低功耗狀態(tài)檢測喚醒事件;以及 使所述處理器的第二處理器核進(jìn)入比全操作功耗狀態(tài)消耗更少功率的功耗狀態(tài), 其中所述第二處理器核基于所述喚醒事件的源進(jìn)入所述功耗狀態(tài)。
13.如權(quán)利要求12所述的方法,其特征在于,還包括:響應(yīng)于所述喚醒事件,使所述處理器的第三處理器核進(jìn)入所述全操作功耗狀態(tài)。
14.如權(quán)利要求12所述的方法,其特征在于,還包括:執(zhí)行代碼以觸發(fā)喚醒事件。
15.如權(quán)利要求12所述的方法,其特征在于,還包括基于在包括所述處理器的平臺中存在的工作負(fù)荷、情境、以及使用狀況中的一個或多個,確定所述第二處理器核是否進(jìn)入所述功耗狀態(tài)。
16.如權(quán)利要求12所述的方法,其特征在于,還包括響應(yīng)于所述喚醒事件,所述第一處理器核將至少一個處理器間中斷傳送到所述第二處理器核。
17.一種計算系統(tǒng),包括: 存儲操作系統(tǒng)軟件功率管理驅(qū)動器的存儲器;以及 與所述存儲器耦合的處理器,用以執(zhí)行所述操作系統(tǒng)軟件功率管理驅(qū)動器,所述處理器包括: 多個處理器核;以及 與所述多個處理器核中的至少第一處理器核耦合的控制邏輯,用以從低功耗狀態(tài)檢測喚醒事件且使所述多個處理器核中的第二處理器核進(jìn)入比全操作功耗狀態(tài)消耗更少功率的功耗狀態(tài), 其中所述控制邏輯基于所述喚醒事件的源使所述第二處理器核進(jìn)入所述功耗狀態(tài)。
18.如權(quán)利要求17所述的系統(tǒng),其特征在于,響應(yīng)于所述喚醒事件,所述多個處理器核中的第三處理器核進(jìn)入所述全操作功耗狀態(tài)。
19.如權(quán)利要求17所述的系統(tǒng),其特征在于,所述操作系統(tǒng)軟件功率管理驅(qū)動器觸發(fā)所述喚醒事件。
20.如權(quán)利要求19所述的系統(tǒng),其特征在于,所述操作系統(tǒng)軟件功率管理驅(qū)動器基于定時器觸發(fā)所述喚醒事件。
21.如權(quán)利要求 17所述的系統(tǒng),其特征在于,所述控制邏輯基于在所述計算系統(tǒng)中存在的工作負(fù)荷、情境、以及使用狀況中的一個或多個來確定所述第二處理器核是否進(jìn)入所述功耗狀態(tài)。
22.如權(quán)利要求17所述的系統(tǒng),其特征在于,所述低功耗狀態(tài)包括空閑狀態(tài)和待機狀態(tài)。
23.如權(quán)利要求17所述的系統(tǒng),其特征在于,所述存儲器存儲應(yīng)用軟件,其中所述應(yīng)用軟件觸發(fā)所述喚醒事件。
24.如權(quán)利要求23所述的系統(tǒng),其特征在于,所述應(yīng)用軟件基于定時器觸發(fā)所述喚醒事件。
25.如權(quán)利要求17所述的系統(tǒng),其特征在于,響應(yīng)于所述喚醒事件,所述第一處理器核將至少一個處理器間中斷傳送到所述第二處理器核。
26.一種存儲指令的計算機可讀介質(zhì),所述指令在由處理器執(zhí)行時使所述處理器: 在所述處理器的第一處理器核處從低功耗狀態(tài)檢測喚醒事件;以及 使所述處理器的第二處理器核進(jìn)入比全操作功耗狀態(tài)消耗更少功率的功耗狀態(tài), 其中所述第二處理器核基于所述喚醒事件的源進(jìn)入所述功耗狀態(tài)。
27.如權(quán)利要求26所述的計算機可讀介質(zhì),其特征在于,響應(yīng)于所述喚醒事件,所述指令使所述處理器的第三處理器核進(jìn)入所述全操作功耗狀態(tài)。
28.如權(quán)利要求26所述的計算機可讀介質(zhì),其特征在于,所述指令使所述處理器執(zhí)行代碼以觸發(fā)所述喚醒事件。
29.如權(quán)利要求26所述的計算機可讀介質(zhì),其特征在于,所述指令使所述第一處理器核基于在包括所述處理器的平臺中存在的工作負(fù)荷、情境、以及使用狀況中的一個或多個來確定所述第二處理器核是否進(jìn)入所述功耗狀態(tài)。
30.如權(quán)利要求26所述的計算機可讀介質(zhì),其特征在于,響應(yīng)于所述喚醒事件,所述指令使所述第一處理器核將至少一個處理器間中斷傳送到所述第二處理器核。
【文檔編號】G06F1/32GK103842933SQ201280047606
【公開日】2014年6月4日 申請日期:2012年9月27日 優(yōu)先權(quán)日:2011年9月30日
【發(fā)明者】R·穆拉利達(dá), H·瑟沙德瑞, V·M·路德拉穆尼 申請人:英特爾公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1