欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

處理器溫度的平衡控制的制作方法

文檔序號:12141829閱讀:250來源:國知局
處理器溫度的平衡控制的制作方法與工藝

實施例涉及處理器溫度的平衡控制。



背景技術(shù):

半導(dǎo)體處理和邏輯設(shè)計中的發(fā)展已經(jīng)準(zhǔn)許可以存在于集成電路設(shè)備上的邏輯的量方面的增長。結(jié)果,計算機系統(tǒng)配置已經(jīng)從系統(tǒng)中的單個或多個集成電路演進到單獨的集成電路上的多個硬件線程、多個核、多個設(shè)備和/或完整系統(tǒng)。另外,隨著集成電路的密度已經(jīng)增長,針對計算系統(tǒng)(從嵌入式系統(tǒng)到服務(wù)器)的功率要求也已經(jīng)增加。此外,軟件低效及其硬件的要求也已經(jīng)引起計算設(shè)備能量消耗方面的增加。事實上,一些研究表明計算設(shè)備消耗針對國家(諸如美利堅合眾國)的整個電力供應(yīng)的相當(dāng)大百分比。結(jié)果,存在對于與集成電路相關(guān)聯(lián)的能量效率和節(jié)省的至關(guān)重要的需要。這些需要將隨著服務(wù)器、臺式計算機、筆記本、Ultrabooks?、平板電腦、移動電話、處理器、嵌入式系統(tǒng)等變得甚至更加普遍(從包括在典型計算機、汽車和電視中到生物技術(shù))而增加。

附圖說明

圖1是根據(jù)本發(fā)明的實施例的系統(tǒng)的一部分的框圖。

圖2是根據(jù)本發(fā)明的實施例的處理器的框圖。

圖3是根據(jù)本發(fā)明的另一個實施例的多域處理器的框圖。

圖4是包括多個核的處理器的實施例。

圖5是根據(jù)本發(fā)明的一個實施例的處理器核的微架構(gòu)的框圖。

圖6是根據(jù)另一個實施例的處理器核的微架構(gòu)的框圖。

圖7是根據(jù)又另一個實施例的處理器核的微架構(gòu)的框圖。

圖8是根據(jù)再一個實施例的處理器核的微架構(gòu)的框圖。

圖9是根據(jù)本發(fā)明的另一個實施例的處理器的框圖。

圖10是根據(jù)本發(fā)明的實施例的代表性SoC的框圖。

圖11是根據(jù)本發(fā)明的實施例的另一個示例SoC的框圖。

圖12是實施例可以與其一起使用的示例系統(tǒng)的框圖。

圖13是實施例可以與其一起使用的另一個示例系統(tǒng)的框圖。

圖14是代表性計算機系統(tǒng)的框圖。

圖15是根據(jù)本發(fā)明的實施例的系統(tǒng)的框圖。

圖16是根據(jù)本發(fā)明的實施例的系統(tǒng)的框圖。

圖17是根據(jù)本發(fā)明的實施例的處理器的框圖。

圖18是根據(jù)本發(fā)明的實施例的方法的流程圖。

圖19是根據(jù)本發(fā)明的實施例的系統(tǒng)的框圖。

具體實施方式

盡管參考特定集成電路中(諸如計算平臺或處理器中)的能量節(jié)省和能量效率來描述以下實施例,但其他實施例可應(yīng)用于其他類型的集成電路和邏輯設(shè)備。本文描述的實施例的類似技術(shù)和教導(dǎo)可以應(yīng)用于其他類型的電路或半導(dǎo)體設(shè)備,其還可受益于更好的能量效率和能量節(jié)省。例如,所公開的實施例不限于任何特定類型的計算機系統(tǒng)。也就是說,所公開的實施例可以用于許多不同的系統(tǒng)類型,范圍從服務(wù)器計算機(例如,塔、機架、刀片、微服務(wù)器等等)、通信系統(tǒng)、存儲系統(tǒng)、任何配置的臺式計算機、膝上型計算機、筆記本和平板計算機(包括2:1平板電腦、平板手機等等),并且還可以在諸如手持設(shè)備、片上系統(tǒng)(SoC)和嵌入式應(yīng)用之類的其他設(shè)備中使用。手持設(shè)備的一些示例包括諸如智能電話之類的蜂窩電話、互聯(lián)網(wǎng)協(xié)議設(shè)備、數(shù)字?jǐn)z像機、個人數(shù)字助理(PDA)和手持PC。嵌入式應(yīng)用典型地可以包括微控制器、數(shù)字信號處理器(DSP)、網(wǎng)絡(luò)計算機(NetPC)、機頂盒、網(wǎng)絡(luò)集線器、廣域網(wǎng)(WAN)交換機、可穿戴設(shè)備或可以執(zhí)行以下教導(dǎo)的功能和操作的任何其他系統(tǒng)。更是這樣,實施例可以在具有標(biāo)準(zhǔn)語音功能的移動終端(諸如移動電話、智能電話和平板手機)中和/或在沒有標(biāo)準(zhǔn)無線語音功能通信能力的非移動終端(諸如,許多可穿戴裝置、平板電腦、筆記本、臺式機、微服務(wù)器、服務(wù)器等等)中實現(xiàn)。此外,本文描述的裝置、方法和系統(tǒng)不限于物理計算設(shè)備,但還可以涉及用于能量節(jié)省和效率的軟件優(yōu)化。如在以下描述中將容易地明顯的,本文描述的方法、裝置和系統(tǒng)的實施例(無論是否參考硬件、固件、軟件或其組合)是對“綠色技術(shù)”未來至關(guān)重要的,諸如對涵蓋大部分美國經(jīng)濟的產(chǎn)品中的功率節(jié)省和能量效率而言。

諸如多核處理器之類的處理器在操作中時生成熱量。為了處理器有效地操作,可以管理所生成的熱量。處理器熱量的管理可以降低過熱,所述過熱可以導(dǎo)致處理器的故障或效率方面的降低。

在一些實施例中,處理器所產(chǎn)生的熱量可以通過節(jié)流來管理,例如降低處理器的吞吐量,諸如通過降低處理器內(nèi)的時鐘域(本文“域”)的時鐘頻率,所述處理器可以包括互連、一個或多個處理實體(例如,一個或多個核、圖形處理單元(GPU)等)。處理器熱量管理的一個方法是識別“熱點”(例如正在高溫度操作的處理器內(nèi)的核(或GPU))以及降低熱點的域的時鐘頻率。降低時鐘頻率(本文中還是“頻率”)使核節(jié)流,例如降低核的指令執(zhí)行速率,并且導(dǎo)致由熱點所生成的熱量的降低以及處理器的較低操作溫度。

根據(jù)本發(fā)明的實施例,節(jié)流可以根據(jù)平衡(本文中也是“被平衡的”)策略來實現(xiàn),其中響應(yīng)于檢測到處理器內(nèi)的高溫而調(diào)整多個域的頻率。多于一個處理實體的節(jié)流提供對處理器中的熱量降低的更全局的解決方案,以使得被標(biāo)識為熱點的特定處理單元的節(jié)流不太劇烈,例如熱點的時鐘頻率(本文也是域頻率)可以在與它是要被降低的唯一時鐘頻率的情況下相比更小的程度上被降低,同時其他頻率也被調(diào)整以降低由處理器所生成的總體熱量。

平衡策略可以指定時鐘頻率的加權(quán)調(diào)整,其可以導(dǎo)致處理器所生成的熱量的降低而同時減輕有害的副作用(例如,降低處理器的總體吞吐量),與關(guān)聯(lián)于只有單個時鐘頻率的降低以實現(xiàn)所生成的熱量的相同降低的副作用相比。

平衡策略可以至少部分基于每個執(zhí)行單元的執(zhí)行特性來確定。例如,一個或多個核可以迅速執(zhí)行指令(高吞吐率)并且一個或多個核的輸出可以被輸入到圖形處理單元,所述圖形處理單元的吞吐率可以小于一個或多個核的吞吐率。平衡策略可以指定響應(yīng)于檢測到熱點而核要在比GPU更大的程度上被節(jié)流,例如,核的時鐘頻率要在與GPU的時鐘頻率的降低相比更大的程度上被降低,以使得從其他核到GPU的輸入不“備份”(例如,形成要被輸入到GPU的隊列)。

在另一個示例中,如果GPU具有比饋送GPU的任何核更快的吞吐率,可以應(yīng)用不同的平衡策略。在這樣的情況下,為了避免GPU的“饑餓”,平衡策略可以指定GPU的時鐘頻率要按與饋送GPU的一個或多個核的時鐘頻率的降低相比更小的因子被降低。在一些實施例中,互連頻率可以被近似設(shè)置成等于饋送GPU的核的頻率。在其他實施例中,平衡策略可以指示互連頻率與另一個域頻率具有指定函數(shù)關(guān)系。又其他實施例可以包括上述示例的任何組合。注意到實施例不限于本文所述的那些。

現(xiàn)在參考圖1,其示出了根據(jù)本發(fā)明的實施例的系統(tǒng)的一部分的框圖。如圖1中所示,系統(tǒng)100可以包括各種組件,所述組件包括如示出為多核處理器的處理器110。處理器110可以經(jīng)由外部電壓調(diào)節(jié)器160耦合到電源供應(yīng)150,所述外部電壓調(diào)節(jié)器160可以執(zhí)行第一電壓變換以向處理器110提供主調(diào)節(jié)電壓。

如所見,處理器110可以是包括多個核120a-120n的單管芯處理器。此外,每個核可以與集成電壓調(diào)節(jié)器(IVR)125a-125n相關(guān)聯(lián),所述集成電壓調(diào)節(jié)器125a-125n接收主調(diào)節(jié)電壓并且生成要被提供到與IVR相關(guān)聯(lián)的處理器的一個或多個代理的操作電壓。同樣,IVR實現(xiàn)方式可以被提供以允許電壓以及從而每個單獨的核的功率和性能的精細粒度控制。這樣,每個核可以以獨立的電壓和頻率操作,這使得能夠?qū)崿F(xiàn)大靈活性并且提供用于平衡功率消耗與性能的廣泛機會。在一些實施例中,多個IVR的使用使得能夠?qū)⒔M件分組成單獨的功率平面,以使得功率被IVR調(diào)節(jié)并供應(yīng)到分組中的僅那些組件。在功率管理期間,一個IVR的給定功率平面可以被降低動力消耗或斷電,當(dāng)處理器被置于某個低功率狀態(tài)時,而另一個IVR的另一個功率平面保持活動,或完全供電。

又參考圖1,可以在處理器內(nèi)存在附加組件,所述附加組件包括輸入/輸出接口132、另一個接口134和集成存儲器控制器136。如所見,這些組件中的每一個可以由另一個集成電壓調(diào)節(jié)器125x供電。在一個實施例中,接口132可以根據(jù)Intel?快速路徑互連(QPI)協(xié)議,所述快速路徑互連協(xié)議提供包括多個層的高速緩存一致協(xié)議中的點對點(PtP)鏈路,所述多個層包括物理層、鏈路層和協(xié)議層。繼而,接口134可以根據(jù)快速外圍組件互連(PCIe?)規(guī)范,例如,快速PCI?規(guī)范基本規(guī)范版本2.0(2007年1月17日公開)。

還示出了功率控制單元(PCU)138,其可以包括執(zhí)行關(guān)于處理器110的功率管理操作的硬件、軟件和/或固件。如所見,PCU 138經(jīng)由數(shù)字接口向外部電壓調(diào)節(jié)器160提供控制信息以使電壓調(diào)節(jié)器生成適當(dāng)?shù)恼{(diào)節(jié)電壓。PCU 138還經(jīng)由另一個數(shù)字接口向IVR 125提供控制信息以控制所生成的操作電壓(或者使對應(yīng)IVR要在低功率模式中被禁用)。在各種實施例中,PCU 138可以包括各種各樣的功率管理邏輯單元以執(zhí)行基于硬件的功率管理。這樣的功率管理可以是完全處理器控制的(例如,通過各種處理器硬件,并且其可以由工作負載和/或功率、熱或其他處理器約束來觸發(fā))以及/或者功率管理可以響應(yīng)于外部源(諸如平臺或管理功率管理源或系統(tǒng)軟件)來執(zhí)行。

雖然為了易于圖示而未示出,要理解的是在處理器110內(nèi)可以存在附加組件,諸如非核邏輯和諸如內(nèi)部存儲器(例如,高速緩存存儲器層級的一個或多個級等等)之類的其他組件。此外,雖然在圖1的實現(xiàn)方式中以集成電壓調(diào)節(jié)器示出,但實施例并不被如此限制。

注意到本文描述的功率管理技術(shù)可以獨立于和補充于基于操作系統(tǒng)(OS)的機制,諸如高級配置和平臺接口(ACPI)標(biāo)準(zhǔn)(例如,2006年10月10日公開的版本3.0b)。根據(jù)ACPI,處理器可以以各種性能狀態(tài)或級別(所謂的P狀態(tài),即從P0到PN)操作。通常,P1性能狀態(tài)可以對應(yīng)于可被OS請求的最高保證性能狀態(tài)。除了該P1狀態(tài)之外,OS還可以請求較高性能狀態(tài),即P0狀態(tài)。該P0狀態(tài)可以從而是機會或渦輪(turbo)模式狀態(tài),其中當(dāng)功率和/或熱量預(yù)算可用時,處理器硬件可以將處理器或至少其部分配置成以比保證頻率更高的頻率操作。在許多實現(xiàn)方式中,處理器可以包括高于P1保證最大頻率的多個所謂的箱(bin)頻率,所述箱頻率超過如在制造期間被熔斷或以其他方式寫入到處理器中的特定處理器的最大峰值頻率。此外,根據(jù)ACPI,處理器可以以各種功率狀態(tài)或級別操作。關(guān)于功率狀態(tài),ACPI指定不同功率消耗狀態(tài),通常稱為C狀態(tài),C0、C1到Cn狀態(tài)。當(dāng)核是活動的時,其以C0狀態(tài)運行,并且當(dāng)核是空閑的時,它可以被置于核低功率狀態(tài),也稱為核非零C狀態(tài)(例如,C1-C6狀態(tài)),其中每個C狀態(tài)處于較低功率消耗級別(以使得C6是比C1更深的低功率狀態(tài),等等)。

要理解的是在不同實施例中可以單獨地或組合地使用許多不同類型的功率管理技術(shù)。作為代表性示例,功率控制器可以控制處理器以通過某個形式的動態(tài)電壓頻率調(diào)節(jié)(DVFS)進行功率管理,其中一個或多個核或其他處理器邏輯的操作電壓和/或操作頻率可以被動態(tài)控制成降低某些情形中的功率消耗。在示例中,可以使用可從加利福尼亞州圣克拉拉的Intel公司得到的Enhanced Intel SpeedStep?技術(shù)來執(zhí)行DVFS以提供最低功率消耗等級處的最優(yōu)性能。在另一個示例中,可以使用Intel TurboBoost?技術(shù)來執(zhí)行DVFS以使得一個或多個核或其他計算引擎能夠基于條件(例如,工作負載和可用性)而以比保證操作頻率更高的頻率來操作。

可以在某些示例中使用的另一個功率管理技術(shù)是不同計算引擎之間的工作負載的動態(tài)交換。例如,處理器可以包括以不同功率消耗級別來操作的非對稱核或其他處理引擎,以使得在功率受限情形中,一個或多個工作負載可以被動態(tài)切換到在較低功率核或其他計算引擎上執(zhí)行。另一個示例性功率管理技術(shù)是硬件工作循環(huán)(HDC),其可以使核和/或其他計算引擎根據(jù)工作循環(huán)而周期性地被啟用和禁用,以使得可以使一個或多個核在工作循環(huán)的不活動時段期間不活動并且使其在工作循環(huán)的活動時段期間活動。盡管利用這些特定示例進行描述,但要理解的是在特定實施例中可以使用許多其他功率管理技術(shù)。

實施例可以在包括服務(wù)器處理器、臺式處理器、移動處理器等的針對各種市場的處理器中實現(xiàn)?,F(xiàn)在參考圖2,示出了根據(jù)本發(fā)明的實施例的處理器的框圖。如圖2中所示,處理器200可以是包括多個核210a-210n的多核處理器。在一個實施例中,每個這樣的核可以具有獨立功率域,并且可以被配置成基于工作負載而進入和離開活動狀態(tài)和/或最大性能狀態(tài)。各種核可以經(jīng)由互連215耦合到包括各種組件的系統(tǒng)代理或非核220。如所見的,非核220可以包括共享高速緩存230,所述共享高速緩存230可以是最后一級高速緩存。此外,非核可以包括集成存儲器控制器240以例如經(jīng)由存儲器總線與系統(tǒng)存儲器(在圖2中未示出)通信。非核220還包括各種接口250和功率控制單元255,所述功率控制單元255可以包括執(zhí)行本文所述的功率管理技術(shù)的邏輯。

此外,通過接口250a-250n,可以做出到各種芯片外組件(諸如,外圍設(shè)備、大容量儲存器等)的連接。雖然在圖2的實施例中以該特定實現(xiàn)方式示出,但本發(fā)明的范圍在這方面不被限制。

現(xiàn)在參考圖3,示出了根據(jù)本發(fā)明的另一實施例的多域處理器的框圖。如圖3的實施例中所示,處理器300包括多個域。具體地,核域310可以包括多個核3100-310n,圖形域320可以包括一個或多個圖形引擎,并且還可以存在系統(tǒng)代理域350。在一些實施例中,系統(tǒng)代理域350可以以與核域獨立的頻率來執(zhí)行,并且可以總是保持通電以處理功率控制事件和功率管理,以使得域310和320可以被控制成動態(tài)進入和離開高功率和低功率狀態(tài)。域310和320中的每一個可以以不同的電壓和/或功率操作。注意到雖然僅示出有三個域,但要理解的是本發(fā)明的范圍在這方面不被限制,并且在其他實施例中可以存在附加的域。例如,可以存在多個核域,每一個核域包括至少一個核。

通常,除了各種執(zhí)行單元和附加處理元件之外,每個核310還可以包括低級高速緩存。繼而,各種核可以耦合到彼此,并且耦合到由最后一級高速緩存(LLC) 3400-340n的多個單元形成的共享高速緩存存儲器。在各種實施例中,LLC 340可以在核和圖形引擎以及各種媒體處理電路之間共享。如所見的,環(huán)互連330因而將核耦合在一起,并且提供核、圖形域320和系統(tǒng)代理電路350之間的互連。在一個實施例中,互連330可以是核域的部分。然而,在其他實施例中,環(huán)互連可以具有其自己的域。

如進一步所見的,系統(tǒng)代理域350可以包括顯示器控制器352,其可以提供關(guān)聯(lián)的顯示器的控制和到關(guān)聯(lián)的顯示器的接口。如進一步所見的,系統(tǒng)代理域350可以包括功率控制單元355,所述功率控制單元355可以包括執(zhí)行本文所述的功率管理技術(shù)的邏輯。

如圖3中進一步所見的,處理器300還可以包括集成存儲器控制器(IMC)370,其可以提供到系統(tǒng)存儲器(諸如,動態(tài)隨機存取存儲器(DRAM))的接口。多個接口3800-380n可以存在以使得能夠?qū)崿F(xiàn)處理器與其他電路之間的互連。例如,在一個實施例中,可以提供至少一個直接媒體接口(DMI)接口以及一個或多個PCIe?接口。又進一步,為了提供諸如附加處理器或其他電路之類的其他代理之間的通信,還可以提供根據(jù)Intel?快速路徑互連(QPI)協(xié)議的一個或多個接口。盡管在圖3的實施例中以該高級示出,但要理解的是本發(fā)明的范圍在這方面不被限制。

參考圖4,圖示了根據(jù)本發(fā)明的實施例的包括多個核的處理器的實施例。處理器400包括任何處理器或處理設(shè)備,諸如微處理器、嵌入式處理器、數(shù)字信號處理器(DSP)、網(wǎng)絡(luò)處理器、手持處理器、應(yīng)用處理器、協(xié)處理器、片上系統(tǒng)(SoC)或執(zhí)行代碼的其他設(shè)備。在一個實施例中,處理器400包括至少兩個核——核401和402,其可以包括非對稱核或?qū)ΨQ核(所圖示的實施例)。然而,處理器400可以包括可以是對稱的或非對稱的任何數(shù)目的處理元件。

在一個實施例中,處理元件指的是支持軟件線程的硬件或邏輯。硬件處理元件的示例包括:線程單元、線程槽、線程、處理單元、上下文、上下文單元、邏輯處理器、硬件線程、核和/或任何其他元件,其能夠保持針對處理器的狀態(tài),諸如執(zhí)行狀態(tài)或架構(gòu)狀態(tài)。換言之,在一個實施例中,處理元件指的是能夠獨立地與代碼(諸如軟件線程、操作系統(tǒng)、應(yīng)用或其他代碼)關(guān)聯(lián)的任何硬件。物理處理器典型地指的是集成電路,其潛在地包括任何數(shù)目的其他處理元件,諸如核或硬件線程。

核經(jīng)常指的是位于集成電路上的能夠維持獨立架構(gòu)狀態(tài)的邏輯,其中每個獨立維持的架構(gòu)狀態(tài)與至少一些專用執(zhí)行資源相關(guān)聯(lián)。與核相比,硬件線程典型地指的是位于集成電路上的能夠維持獨立架構(gòu)狀態(tài)的任何邏輯,其中獨立維持的架構(gòu)狀態(tài)共享對執(zhí)行資源的訪問。如可以看到的,當(dāng)某些資源被共享并且其他資源專用于架構(gòu)狀態(tài)時,硬件線程和核的命名之間的界限重疊。又經(jīng)常,核和硬件線程被操作系統(tǒng)視為單獨的邏輯處理器,其中操作系統(tǒng)能夠單獨地調(diào)度每個邏輯處理器上的操作。

如在圖4中所圖示的,物理處理器400包括兩個核,核401和402。此處,核401和402被視為對稱核,即具有相同配置、功能單元和/或邏輯的核。在另一個實施例中,核401包括無序處理器核,而核402包括有序處理器核。然而,核401和402可以單獨地從任何類型的核中選擇,諸如原生核、軟件管理的核、適配成執(zhí)行原生指令集架構(gòu)(ISA)的核、適配成執(zhí)行翻譯的ISA的核、共同設(shè)計的核或其他已知核。又進一步討論的,以下進一步詳細描述核401中圖示的功能單元,因為核402中的單元以類似的方式操作。

如所描繪的,核401包括兩個硬件線程401a和401b,其還可以被稱為硬件線程槽401a和401b。因此,在一個實施例中,諸如操作系統(tǒng)之類的軟件實體潛在地將處理器400視為四個分離的處理器,即能夠同時執(zhí)行四個軟件線程的四個邏輯處理器或處理元件。如以上提到的,第一線程與架構(gòu)狀態(tài)寄存器401a相關(guān)聯(lián),第二線程與架構(gòu)狀態(tài)寄存器401b相關(guān)聯(lián),第三線程可以與架構(gòu)狀態(tài)寄存器402a相關(guān)聯(lián),并且第四線程可以與架構(gòu)狀態(tài)寄存器402b相關(guān)聯(lián)。此處,架構(gòu)狀態(tài)寄存器(401a、401b、402a和402b)中的每一個可以被稱為處理元件、線程槽或線程單元,如上所述。如所圖示的,在架構(gòu)狀態(tài)寄存器401b中復(fù)制架構(gòu)狀態(tài)寄存器401a,因此單獨的架構(gòu)狀態(tài)/上下文能夠被存儲以用于邏輯處理器401a和邏輯處理器401b。在核401中,諸如分配器和重命名器塊430中的指令指針和重命名邏輯之類的其他較小資源也可以針對線程401a和401b復(fù)制。諸如重排序/退役單元435中的重排序緩沖器、ILTB 420、加載/存儲緩沖器和隊列之類的一些資源可以通過劃分而被共享。諸如通用內(nèi)部寄存器、(一個或多個)頁表基址寄存器、低級數(shù)據(jù)高速緩存和數(shù)據(jù)TLB 415、(一個或多個)執(zhí)行單元440和無序單元435的部分之類的其他資源潛在地是完全共享的。

處理器400經(jīng)常包括其他資源,所述其他資源可以完全被共享、通過劃分而被共享、或由處理元件專用/專用于處理元件。在圖4中,圖示了具有處理器的說明性邏輯單元/資源的純粹示例性的處理器的實施例。注意到,處理器可以包括或省略這些功能單元中的任一個,以及包括未描繪的任何其他已知功能單元、邏輯或固件。如所圖示的,核401包括簡化的代表性無序(OOO)處理器核。但是,在不同實施例中可以利用有序處理器。OOO核包括預(yù)測要被執(zhí)行/獲取的分支的分支目標(biāo)緩沖器420以及存儲針對指令的地址翻譯條目的指令翻譯緩沖器(I-TLB)420。

核401還包括耦合到取出單元420以對所取出的元素進行解碼的解碼模塊425。在一個實施例中,取出邏輯包括分別與線程槽401a、401b相關(guān)聯(lián)的單獨的定序器。核401經(jīng)常與第一ISA相關(guān)聯(lián),第一ISA定義/指定在處理器400上可執(zhí)行的指令。作為第一ISA的一部分的機器代碼指令經(jīng)常包括指令的一部分(稱為操作碼),其引用/指定要執(zhí)行的指令或操作。解碼邏輯425包括電路,所述電路從其操作碼中識別出這些指令并將所解碼的指令傳遞到流水線中以用于如由第一ISA定義的處理。例如,在一個實施例中,解碼器425包括被設(shè)計或適配成識別諸如事務(wù)指令之類的特定指令。作為由解碼器425的識別的結(jié)果,架構(gòu)或核401采取特定、預(yù)定義的動作以執(zhí)行與適當(dāng)指令相關(guān)聯(lián)的任務(wù)。重要的是要注意,本文所述的任務(wù)、塊、操作和方法中的任一個可以響應(yīng)于單個或多個指令來執(zhí)行;其中的一些可以是新的或舊的指令。

在一個示例中,分配器和重命名器塊430包括保留資源(諸如存儲指令處理結(jié)果的寄存器文件)的分配器。然而,線程401a和401b潛在地能夠無序執(zhí)行,其中分配器和重命名器塊430還保留其他資源,諸如跟蹤指令結(jié)果的重排序緩沖器。單元430還可以包括寄存器重命名器以將程序/指令引用寄存器重命名到處理器400外部的其他寄存器。重排序/退役單元435包括諸如以上提及的重排序緩沖器、加載緩沖器和存儲緩沖器之類的組件以支持無序執(zhí)行和稍后對無序執(zhí)行的指令的有序退役。

在一個實施例中,調(diào)度器和(一個或多個)執(zhí)行單元塊440包括調(diào)度在執(zhí)行單元上的指令/操作的調(diào)度器單元。例如,在具有可用浮點執(zhí)行單元的執(zhí)行單元的端口上調(diào)度浮點指令。與執(zhí)行單元相關(guān)聯(lián)的寄存器文件還被包括以存儲信息指令處理結(jié)果。示例性執(zhí)行單元包括浮點執(zhí)行單元、整數(shù)執(zhí)行單元、跳轉(zhuǎn)執(zhí)行單元、加載執(zhí)行單元、存儲執(zhí)行單元和其他已知的執(zhí)行單元。

較低級數(shù)據(jù)高速緩存和數(shù)據(jù)翻譯緩沖器(D-TLB)450耦合到(一個或多個)執(zhí)行單元440。數(shù)據(jù)高速緩存要存儲近來使用的/操作的元素(諸如數(shù)據(jù)操作數(shù)),其潛在地在存儲器一致性狀態(tài)中保存。D-TLB要存儲近來虛擬/線性到物理地址翻譯。作為特定示例,處理器可以包括頁表結(jié)構(gòu)以將物理存儲器分割成多個虛擬頁面。

此處,核401和402共享對較高級或較遠高速緩存410的訪問,所述較高級或較遠高速緩存410要對近來取出的元素進行高速緩存。注意到較高級或較遠指的是越來越遠離或變得遠離(一個或多個)執(zhí)行單元的高速緩存級。在一個實施例中,較高級高速緩存410是最后一級數(shù)據(jù)高速緩存(在處理器400上的存儲器層級中的最后高速緩存),諸如第二或第三級數(shù)據(jù)高速緩存。然而,較高級高速緩存410不如此受限,由于它可以與指令高速緩存相關(guān)聯(lián)或包括指令高速緩存。代替地,追蹤高速緩存(一種類型的指令高速緩存)可以耦合在解碼器425之后以存儲近來解碼的追蹤。

在所描繪的配置中,處理器400還包括總線接口模塊425和功率控制器460,其可以執(zhí)行根據(jù)本發(fā)明的實施例的功率管理。在該場景下,總線接口405與處理器400外部的設(shè)備(諸如系統(tǒng)存儲器和其他組件)通信。

存儲器控制器470可以與諸如一個或許多存儲器之類的其他設(shè)備對接。在示例中,總線接口405包括與用于與存儲器對接的存儲器控制器以及用于與圖形處理器對接的圖形控制器的環(huán)互連。在SoC環(huán)境中,甚至更多設(shè)備(諸如網(wǎng)絡(luò)接口、協(xié)處理器、存儲器、圖形處理器和任何其他已知的計算機設(shè)備/接口)可以集成在單個管芯或集成電路上以在高功能性和低功率消耗的情況下提供小形狀因子。

現(xiàn)在參考圖5,示出了根據(jù)本發(fā)明的一個實施例的處理器核的微架構(gòu)的框圖。如圖5中所示,處理器核500可以是多級流水線無序處理器。核500可以基于接收的操作電壓而以各種電壓操作,所述接收的操作電壓可以是從集成電壓調(diào)節(jié)器或外部電壓調(diào)節(jié)器接收的。

如圖5中所見,核500包括前端單元510,其可以用于取出要被執(zhí)行的指令并準(zhǔn)備好它們以供稍后在處理器流水線中使用。例如,前端單元510可以包括取出單元501、指令高速緩存503以及指令解碼器505。在一些實現(xiàn)方式中,前端單元510還可以包括追蹤高速緩存連同微代碼儲存器以及微操作儲存器。取出單元501可以例如從存儲器或指令高速緩存503取出宏指令并將其饋送到指令解碼器505以將其解碼成原語(primitive)(即微操作)以供處理器執(zhí)行。

在前端單元510和執(zhí)行單元520之間耦合無序(OOO)引擎515,所述OOO引擎515可以用于接收微指令并準(zhǔn)備好它們以供執(zhí)行。更具體地,OOO引擎515可以包括各種緩沖器以對微指令流重排序并分配對于執(zhí)行所需的各種資源以及提供邏輯寄存器到各種寄存器文件(諸如寄存器文件530和擴展寄存器文件535)內(nèi)的存儲位置上的重命名。寄存器文件530可以包括用于整數(shù)和浮點操作的單獨的寄存器文件。擴展寄存器文件535可以提供針對矢量大小單元(例如每寄存器256或512位)的儲存器。

各種資源可以存在于執(zhí)行單元520中,所述執(zhí)行單元520除其他專用硬件之外尤其包括例如各種整數(shù)、浮點和單指令多數(shù)據(jù)(SIMD)邏輯單元。例如,這樣的執(zhí)行單元除其他這樣的執(zhí)行單元外尤其可以包括一個或多個算術(shù)邏輯單元(ALU)522以及一個或多個矢量執(zhí)行單元524。

來自執(zhí)行單元的結(jié)果可以被提供到退役邏輯,即重排序緩沖器(ROB)540。更具體地,ROB 540可以包括接收與被執(zhí)行的指令相關(guān)聯(lián)的信息的各種陣列和邏輯。該信息然后被ROB 540審查以確定是否指令被有效退役以及結(jié)果數(shù)據(jù)被提交到處理器的架構(gòu)狀態(tài),或者是否發(fā)生阻止指令的適當(dāng)退役的一個或多個異常。當(dāng)然,ROB 540可以處理與退役相關(guān)聯(lián)的其他操作。

如圖5中所示,ROB 540耦合到高速緩存550,在一個實施例中所述高速緩存550可以是低級高速緩存(例如L1高速緩存),盡管本發(fā)明的范圍在此方面不被限制。執(zhí)行單元520還可以直接耦合到高速緩存550。來自高速緩存550的數(shù)據(jù)通信可以與較高級高速緩存、系統(tǒng)存儲器等一起發(fā)生。雖然在圖5的實施例中以該高級示出,但要理解的是本發(fā)明的范圍在這方面不被限制。例如,雖然圖5的實現(xiàn)方式關(guān)于無序機器,諸如Intel?x86指令集架構(gòu)(ISA)的無序機器,但本發(fā)明的范圍在這方面不被限制。也就是說,在有序處理器、諸如基于ARM的處理器之類的精簡指令集計算(RISC)處理器或可以經(jīng)由仿真引擎和關(guān)聯(lián)的邏輯電路仿真不同ISA的指令和操作的另一個類型的ISA的處理器中可以實現(xiàn)其他實施例。

現(xiàn)在參考圖6,示出了根據(jù)本發(fā)明的另一個實施例的處理器核的微架構(gòu)的框圖。在圖6的實施例中,核600可以是不同微架構(gòu)的低功率核,諸如基于Intel?AtomTM的處理器,其具有被設(shè)計成降低功率消耗的相對有限的流水線深度。如所見的,核600包括指令高速緩存610,所述指令高速緩存610被耦合以向指令解碼器615提供指令。分支預(yù)測器605可以耦合到指令高速緩存610。注意到指令高速緩存610還可以耦合到另一級高速緩存存儲器,諸如L2高速緩存(在圖6中為了易于圖示而未示出)。繼而,指令解碼器615將經(jīng)解碼的指令提供到發(fā)布隊列620以供存儲和遞送到給定執(zhí)行流水線。微代碼ROM 618耦合到指令解碼器615。

浮點流水線630包括浮點寄存器文件632,所述浮點寄存器文件632可以包括具有諸如128、256或512位的給定位的多個架構(gòu)寄存器。流水線630包括調(diào)度指令以供在流水線的多個執(zhí)行單元之一上執(zhí)行的浮點調(diào)度器634。在所示的實施例中,這樣的執(zhí)行單元包括ALU 635、置亂(shuffle)單元636和浮點加法器638。繼而,在這些執(zhí)行單元中所生成的結(jié)果可以被提供回到緩沖器和/或寄存器文件632的寄存器。當(dāng)然要理解的是,雖然以這幾個示例執(zhí)行單元示出,但在另一個實施例中可以存在附加的或不同的浮點執(zhí)行單元。

還可以提供整數(shù)流水線640。在所示的實施例中,流水線640包括整數(shù)寄存器文件642,所述整數(shù)寄存器文件642可以包括具有諸如128或256位的給定位的多個架構(gòu)寄存器。流水線640包括調(diào)度指令以供在流水線的多個執(zhí)行單元之一上執(zhí)行的整數(shù)調(diào)度器644。在所示的實施例中,這樣的執(zhí)行單元包括ALU 645、置亂單元646和跳轉(zhuǎn)執(zhí)行單元648。繼而,在這些執(zhí)行單元中所生成的結(jié)果可以被提供回到緩沖器和/或寄存器文件642的寄存器。當(dāng)然要理解的是,雖然以這幾個示例執(zhí)行單元示出,但在另一個實施例中可以存在附加的或不同的整數(shù)執(zhí)行單元。

存儲器執(zhí)行調(diào)度器650可以調(diào)度存儲器操作以供在地址生成單元652中執(zhí)行,所述地址生成單元652還耦合到TLB 654。如所見的,這些結(jié)構(gòu)可以耦合到數(shù)據(jù)高速緩存660,所述數(shù)據(jù)高速緩存660可以是L0和/或L1數(shù)據(jù)高速緩存,其繼而耦合到高速緩存存儲器層級的附加級,包括L2高速緩存存儲器。

為了提供對無序執(zhí)行的支持,除了重排序緩沖器680之外,還可以提供分配器/重命名器670,所述重排序緩沖器680可以被配置成對無序執(zhí)行的指令進行重排序以供有序退役。盡管在圖6的圖示中以該特定流水線架構(gòu)示出,但要理解的是許多變型和替換方案是可能的。

注意到,在具有非對稱核的處理器中,諸如根據(jù)圖5和6的微架構(gòu),工作負載可以出于功率管理原因而在核之間動態(tài)地交換,由于這些核盡管具有不同的流水線設(shè)計和深度但可以具有相同或相關(guān)的ISA。這樣的動態(tài)核交換可以以對用戶應(yīng)用(并且可能地也對內(nèi)核)透明的方式來執(zhí)行。

參考圖7,示出了根據(jù)又另一個實施例的處理器核的微架構(gòu)的框圖。如圖7中所圖示的,核700可以包括以非常低功率消耗級別執(zhí)行的多級有序流水線。作為一個這樣的示例,處理器700可以具有根據(jù)可從加利福尼亞州森尼維爾的ARM控股有限公司得到的ARM Cortex A53的微架構(gòu)。在實現(xiàn)方式中,可提供被配置成執(zhí)行32位和64位代碼二者的8級流水線。核700包括取出單元710,所述取出單元710被配置成取出指令并將其提供到解碼單元715,所述解碼單元715可以對指令(例如諸如ARMv8 ISA之類的給定ISA的宏指令)進行解碼。還注意到,隊列730可以耦合到解碼單元715以存儲經(jīng)解碼的指令。經(jīng)解碼的指令被提供到發(fā)布邏輯725,其中經(jīng)解碼的指令可以被發(fā)布到多個執(zhí)行單元中的給定的一個執(zhí)行單元。

進一步參考圖7,發(fā)布邏輯725可以將指令發(fā)布到多個執(zhí)行單元之一。在所示的實施例中,這些執(zhí)行單元包括整數(shù)單元735、乘法單元740、浮點/矢量單元750、雙發(fā)布單元760和加載/存儲單元770。這些不同執(zhí)行單元的結(jié)果可以被提供到寫回單元780。要理解的是,雖然為了易于圖示而示出單個寫回單元,但在一些實現(xiàn)方式中不同的寫回單元可以與每一個執(zhí)行單元相關(guān)聯(lián)。此外,要理解的是雖然在圖7中示出的每個單元和邏輯以高級別來表示,但特定實現(xiàn)方式可以包括更多或不同的結(jié)構(gòu)。使用具有如圖7中的流水線的一個或多個核設(shè)計的處理器可以以從移動設(shè)備擴展到服務(wù)器系統(tǒng)的許多不同最終產(chǎn)品來實現(xiàn)。

參考圖8,示出了根據(jù)再一個實施例的處理器核的微架構(gòu)的框圖。如圖8中所圖示的,核800可以包括以非常高性能級別執(zhí)行的多級多發(fā)布無序流水線(其可以以比圖7的核700更高的功率消耗級別發(fā)生)。作為一個這樣的示例,處理器800可以具有根據(jù)ARM Cortex A57設(shè)計的微架構(gòu)。在實現(xiàn)方式中,可提供被配置成執(zhí)行32位和64位代碼二者的15(或更多)級流水線。此外,流水線可以提供3(或更多)寬和3(或更多)發(fā)布操作。核800包括取出單元810,所述取出單元810被配置成取出指令并將其提供到解碼器/重命名器/分派器815,其可以對指令(例如ARMv8指令集架構(gòu)的宏指令)進行解碼、重命名指令內(nèi)的寄存器引用和將指令(最終)分派到所選執(zhí)行單元。經(jīng)解碼的指令可以被存儲在隊列825中。注意到雖然在圖8中為了易于圖示而示出單個隊列結(jié)構(gòu),但要理解的是可以針對多個不同類型的執(zhí)行單元中的每一個而提供單獨的隊列。

在圖8中還示出了存儲在隊列825中的經(jīng)解碼的指令可以從其發(fā)布到所選執(zhí)行單元的發(fā)布邏輯830。發(fā)布邏輯830還可以在特定的實施例中實現(xiàn),其中針對發(fā)布邏輯830耦合到的多個不同類型的執(zhí)行單元中的每一個有單獨的發(fā)布邏輯。

經(jīng)解碼的指令可以被發(fā)布到多個執(zhí)行單元中的給定的一個。在所示的實施例中,這些執(zhí)行單元包括一個或多個整數(shù)單元835、乘法單元840、浮點/矢量單元850、分支單元860和加載/存儲單元870。在實施例中,浮點/矢量單元850可以被配置成處理128或256位的SIMD或矢量數(shù)據(jù)。又進一步,浮點/矢量執(zhí)行單元850可以執(zhí)行IEEE-754雙精度浮點操作。這些不同執(zhí)行單元的結(jié)果可以被提供到寫回單元880。注意到,在一些實現(xiàn)方式中,不同的寫回單元可以與執(zhí)行單元中的每一個相關(guān)聯(lián)。此外,要理解的是雖然在圖8中示出的每個單元和邏輯以高級別來表示,但特定實現(xiàn)方式可以包括更多或不同的結(jié)構(gòu)。

注意到,在具有非對稱核的處理器中,諸如根據(jù)圖7和8的微架構(gòu),工作負載可以出于功率管理原因而動態(tài)地交換,由于這些核盡管具有不同的流水線設(shè)計和深度但可以具有相同或相關(guān)的ISA。這樣的動態(tài)核交換可以以對用戶應(yīng)用(并且可能地也對內(nèi)核透明)的方式來執(zhí)行。

使用具有如在圖5-8中的一個或多個中的流水線的一個或多個核設(shè)計的處理器可以以從移動設(shè)備擴展到服務(wù)器系統(tǒng)的許多不同最終產(chǎn)品來實現(xiàn)?,F(xiàn)在參考圖9,示出了根據(jù)本發(fā)明的另一個實施例的處理器的框圖。在圖9的實施例中,處理器900可以是包括多個域的SoC,其中的每一個可以被控制成以獨立的操作電壓和操作頻率來操作。作為特定說明性示例,處理器900可以是基于Intel?Architecture CoreTM的處理器,諸如i3、i5、i7或從Intel公司可得到的另一個這樣的處理器。然而,諸如從加利福尼亞州森尼維爾的超威半導(dǎo)體公司(AMD)可得到的、來自ARM控股公司或其被許可方的基于ARM的設(shè)計或來自加利福尼亞州森尼維爾的MIPS技術(shù)公司或其被許可方或采納方的基于MIPS的設(shè)計之類的其他低功率處理器可以代替地存在于其他實施例中,諸如蘋果A7處理器、高通Snapdragon處理器、或德克薩斯州儀器OMAP處理器。這樣的SoC可以用于低功率系統(tǒng)中,諸如智能電話、平板計算機、平板手機計算機、UltrabookTM計算機或其他便攜式計算設(shè)備。

在圖9中所示的高級視圖中,處理器900包括多個核單元9100-910n。每個核單元可以包括一個或多個處理器核、一個或多個高速緩存存儲器和其他電路。每個核單元910可以支持一個或多個指令集(例如,x86指令集(具有已經(jīng)添加有較新版本的一些擴展);MIPS指令集;ARM指令集(具有諸如NEON之類的可選附加擴展))或其他指令集或其組合。注意到核單元中的一些可以是(例如,不同設(shè)計的)異構(gòu)資源。此外,每個這樣的核可以耦合到高速緩存存儲器(未示出),在實施例中所述高速緩存存儲器可以是共享級(L2)高速緩存存儲器。非易失性儲存器930可以用于存儲各種程序和其他數(shù)據(jù)。例如,該儲存器可以用于存儲微代碼、引導(dǎo)信息(諸如BIOS)、其他系統(tǒng)軟件等的至少部分。

每個核單元910還可以包括使得能夠?qū)崿F(xiàn)到處理器的附加電路的互連的諸如總線接口之類的接口。在實施例中,每個核單元910耦合到一致性結(jié)構(gòu),所述一致性結(jié)構(gòu)可以充當(dāng)主高速緩存一致性管芯上互連,其繼而耦合到存儲器控制器930。繼而,存儲器控制器935控制與諸如DRAM之類的存儲器(在圖9中為了易于圖示而未示出)的通信。

除了核單元之外,在處理器內(nèi)存在附加處理引擎,包括至少一個圖形單元920,所述至少一個圖形單元920可以包括執(zhí)行圖形處理以及可能地執(zhí)行圖形處理器上的通用操作(所謂的GPGPU操作)的一個或多個圖形處理單元(GPU)。此外,可以存在至少一個圖像信號處理器925。信號處理器925可以被配置成處理從(SoC內(nèi)部的或芯片外的)一個或多個捕獲設(shè)備接收的傳入圖像數(shù)據(jù)。

還可以存在其他加速器。在圖9的圖示中,視頻編碼器950可以執(zhí)行編碼操作,包括針對視頻信息而編碼和解碼,例如提供對高清晰度視頻內(nèi)容的硬件加速支持。顯示器控制器955還可以被提供以對顯示器操作進行加速,包括提供對系統(tǒng)的內(nèi)部和外部顯示器的支持。此外,安全處理器945可以存在以執(zhí)行安全性操作,諸如安全引導(dǎo)操作、各種密碼操作等。

每一個單元可以使其功率消耗經(jīng)由功率管理器940來控制,所述功率管理器940可以包括執(zhí)行本文所述的各種功率管理技術(shù)的控制邏輯。

在一些實施例中,SoC 900還可以包括非一致性結(jié)構(gòu),其耦合到各種外圍設(shè)備可以耦合到的一致性結(jié)構(gòu)。一個或多個接口960a-960d使得能夠?qū)崿F(xiàn)與一個或多個芯片外設(shè)備的通信。這樣的通信可以根據(jù)各種各樣的通信協(xié)議,除其他類型的通信協(xié)議之外尤其諸如PCIeTM、GPIO、USB、I2C、UART、MIPI、SDIO、DDR、SPI、HDMI。盡管在圖9的實施例中以該高級示出,但要理解的是本發(fā)明的范圍在這方面不被限制。

現(xiàn)在參考圖10,示出了代表性SoC的框圖。在所示的實施例中,SoC 1000可以是多核SoC,所述多核SoC被配置用于為了合并到智能電話或其他低功率設(shè)備(諸如平板計算機或其他便攜式計算設(shè)備)中而要被優(yōu)化的低功率操作。作為示例,SoC 1000可以使用諸如較高功率和/或低功率核(例如無序核和有序核)的組合之類的非對稱或不同類型的核來實現(xiàn)。在不同實施例中,這些核可以基于Inte?ArchitectureTM核設(shè)計或ARM架構(gòu)設(shè)計。在又其他實施例中,可以在給定SoC中實現(xiàn)Intel和ARM核的混合。

如圖10中所見,SoC 1000包括具有多個第一核10120-10123的第一核域1010。在實施例中,這些核可以是低功率核,諸如有序核。在一個實施例中,這些第一核可以被實現(xiàn)為ARM Cortex A53核。繼而,這些核耦合到核域1010的高速緩存存儲器1015。此外,SoC 1000包括第二核域1020。在圖10的圖示中,第二核域1020具有多個第二核10220-10223。在示例中,這些核可以是與第一核1012相比的更高功率消耗的核。在實施例中,第二核可以是無序核,其可以被實現(xiàn)為ARM Cortex A57核。繼而,這些核耦合到核域1020的高速緩存存儲器1025。注意到雖然在圖10中示出的示例包括每個域中的4個核,但要理解的是在其他實施例中在給定域中可以存在更多或更少的核。

進一步參考圖10,還提供了圖形域1030,其可以包括被配置成獨立地執(zhí)行例如由核域1010和1020的一個或多個核提供的圖形工作負載的一個或多個圖形處理單元(GPU)。作為示例,除了提供圖形和顯示再現(xiàn)操作之外,GPU域1030還可以用于提供對各種各樣的屏幕大小的顯示支持。

如所見的,各種域耦合到一致性互連1040,其在實施例中可以是高速緩存一致性互連結(jié)構(gòu),其繼而耦合到集成存儲器控制器1050。一致性互連1040可以包括共享高速緩存存儲器,諸如L3高速緩存,一些示例。在實施例中,存儲器控制器1050可以是提供與芯片外存儲器的通信的多個通道(諸如(在圖10中為了易于圖示而未示出的)DRAM的多個通道)的直接存儲器控制器。

在不同的示例中,核域的數(shù)目可以變化。例如,對于適合于合并到移動計算設(shè)備中的低功率SoC而言,可以存在諸如圖10中示出的有限數(shù)目的核域。又進一步,在這樣的低功率SoC中,包括較高功率核的核域1020可以具有較少數(shù)目的這樣的核。例如,在一個實現(xiàn)方式中,兩個核1022可以被提供以使得能夠?qū)崿F(xiàn)以降低的功率消耗級別的操作。此外,不同的核域還可以耦合到中斷控制器以使得能夠?qū)崿F(xiàn)不同域之間的工作負載的動態(tài)交換。

在又其他實施例中,可以存在較大數(shù)目的核域以及附加可選IP邏輯,因為SoC可以縮放到用于合并到其他計算設(shè)備(諸如臺式機、服務(wù)器、高性能計算系統(tǒng)、基站等)中的較高性能(和功率)級別。作為一個這樣的示例,可以提供均具有給定數(shù)目的無序核的4個核域。又進一步,除了可選GPU支持(其作為示例可以采取GPGPU的形式)之外,還可以提供用于提供對特定功能(例如,web(網(wǎng)絡(luò))服務(wù)、網(wǎng)絡(luò)處理、切換等)的優(yōu)化的硬件支持的一個或多個加速器。此外,可以存在輸入/輸出接口以將這樣的加速器耦合到芯片外組件。

現(xiàn)在參考圖11,示出了另一個示例SoC的框圖。在圖11的實施例中,SoC 1100可以包括使得能夠?qū)崿F(xiàn)針對多媒體應(yīng)用、通信和其他功能的高性能的各種電路。同樣,SoC 1100適合于合并到各種各樣的便攜式和其他設(shè)備,諸如智能電話、平板計算機、智能TV等。在所示的示例中,SoC 1100包括中央處理器單元(CPU)域1110。在實施例中,多個單獨的處理器核可以存在于CPU域1110中。作為一個示例,CPU域1110可以是具有4個多線程核的四核處理器。這樣的處理器可以是同構(gòu)或異構(gòu)處理器,例如,低功率和高功率處理器核的混合。

繼而,GPU域1120被提供以執(zhí)行一個或多個GPU中的高級圖形處理以處理圖形和計算API。DSP單元1130可以提供一個或多個低功率DSP以用于除了可以在多媒體指令的執(zhí)行期間發(fā)生的高級計算之外處理低功率多媒體應(yīng)用,諸如音樂回放、音頻/視頻等。繼而,通信單元1140可以包括經(jīng)由各種無線協(xié)議提供連接性的各種組件,所述各種無線協(xié)議諸如蜂窩通信(包括3G/4G LTE)、無線局域技術(shù)(諸如Bluetooth?、IEEE 802.11)等。

又進一步,多媒體處理器1150可以用于執(zhí)行高清晰度視頻和音頻內(nèi)容的捕獲和回放,包括用戶手勢的處理。傳感器單元1160可以包括多個傳感器和/或傳感器控制器以對接到在給定平臺中存在的各種芯片外傳感器。圖像信號處理器1170可以被提供有一個或多個單獨的ISP以執(zhí)行關(guān)于從平臺的一個或多個攝像機(包括靜止和視頻攝像機)捕獲的內(nèi)容的圖像處理。

顯示器處理器1180可以提供對到給定像素密度的高清晰度顯示器的連接的支持,包括無線傳送內(nèi)容以供在這樣的顯示器上回放的能力。又進一步,位置單元1190可以包括GPS接收器,其具有對多個GPS星座的支持以為應(yīng)用提供使用這樣的GPS接收器獲得的高準(zhǔn)確的定位信息。要理解的是雖然在圖11的示例中以該特定組件集合示出,但許多變型和替換方案是可能的。

現(xiàn)在參考圖12,示出了實施例可以與其一起使用的示例系統(tǒng)的框圖。如所見的,系統(tǒng)1200可以是智能電話或其他無線通信器?;鶐幚砥?205被配置成執(zhí)行關(guān)于要從系統(tǒng)傳送或由系統(tǒng)接收的通信信號的各種信號處理。繼而,基帶處理器1205耦合到應(yīng)用處理器1210,其可以是執(zhí)行除了用戶應(yīng)用(諸如許多公知的社交媒體和多媒體應(yīng)用)之外的OS和其他系統(tǒng)軟件的系統(tǒng)的主CPU。應(yīng)用處理器1210還可以被配置成執(zhí)行針對設(shè)備的各種其他計算操作。

繼而,應(yīng)用處理器1210可以耦合到用戶接口/顯示器1220,例如觸摸屏顯示器。此外,應(yīng)用處理器1210可以耦合到存儲器系統(tǒng),所述存儲器系統(tǒng)包括非易失性存儲器(即閃速存儲器1230)和系統(tǒng)存儲器(即動態(tài)隨機存取存儲器(DRAM)1235)。如進一步所見的,應(yīng)用處理器1210還耦合到捕獲設(shè)備1240,諸如可以記錄視頻和/或靜止圖像的一個或多個圖像捕獲設(shè)備。

又參考圖12,包括訂戶身份模塊和可能地安全存儲和密碼處理器的通用集成電路卡(UICC)1240也耦合到應(yīng)用處理器1210。系統(tǒng)1200還可以包括安全處理器1250,所述安全處理器1250可以耦合到應(yīng)用處理器1210。多個傳感器1225可以耦合到應(yīng)用處理器1210以使得能夠?qū)崿F(xiàn)各種感測到的信息(諸如,加速度計和其他環(huán)境信息)的輸入。音頻輸出設(shè)備1295可以提供接口以輸出聲音,例如以語音通信、播放或流式傳輸音頻數(shù)據(jù)等的形式。

如進一步圖示的,提供了近場通信(NFC)無接觸接口1260,其經(jīng)由NFC天線1265在NFC近場中進行通信。雖然在圖12中示出了分離的天線,但要理解的是在一些實現(xiàn)方式中,可以提供一個天線或不同的天線集以使得能夠?qū)崿F(xiàn)各種無線功能。

功率管理集成電路(PMIC)1215耦合到應(yīng)用處理器1210以執(zhí)行平臺級功率管理。為此,PMIC 1215可以向應(yīng)用處理器1210發(fā)布功率管理請求以進入某些低功率狀態(tài),如期望的那樣。此外,基于平臺約束,PMIC 1215還可以控制系統(tǒng)1200的其他組件的功率級。

為了使得通信能夠被傳送和接收,各種電路可以耦合在基帶處理器1205和天線1290之間。具體地,可以存在射頻(RF)收發(fā)器1270和無線局域網(wǎng)(WLAN)收發(fā)器1275。通常,RF收發(fā)器1270可以用于根據(jù)諸如3G或4G無線通信協(xié)議(諸如根據(jù)碼分多址(CDMA)、全球移動通信系統(tǒng)(GSM)、長期演進(LTE)或其他協(xié)議)之類的給定無線通信協(xié)議接收和傳送無線數(shù)據(jù)和呼叫。此外,可以存在GPS傳感器1280。還可以提供諸如無線電信號(例如AM/FM和其他信號)的接收或傳送之類的其他無線通信。此外,還可以經(jīng)由WLAN收發(fā)器1275來實現(xiàn)局部無線通信,諸如根據(jù)Bluetooth?標(biāo)準(zhǔn)或IEEE 802.11標(biāo)準(zhǔn)(諸如IEEE 802.11a/b/g/n)。

現(xiàn)在參考圖13,示出了實施例可以與其一起使用的另一個示例系統(tǒng)的框圖。在圖13的圖示中,系統(tǒng)1300可以是移動低功率系統(tǒng),諸如平板計算機,2:1平板電腦、平板手機或其他可轉(zhuǎn)換或獨立平板系統(tǒng)。如所圖示的,SoC 1310存在,并且可以被配置成操作為針對該設(shè)備的應(yīng)用處理器。

各種設(shè)備可以耦合到SoC 1310。在所示的圖示中,存儲器子系統(tǒng)包括耦合到SoC 1310的閃速存儲器1340和DRAM 1345。此外,觸摸面板1320耦合到SoC 1310以提供顯示能力和經(jīng)由觸摸的用戶輸入,包括在觸摸面板1320的顯示器上供應(yīng)虛擬鍵盤。為了提供有線網(wǎng)絡(luò)連接性,SoC 1310耦合到以太網(wǎng)接口1330。外圍中心1325耦合到SoC 1310以使得能夠?qū)崿F(xiàn)與各種外圍設(shè)備對接,諸如可以通過各種端口或其他連接器中的任一個而耦合到系統(tǒng)1300。

除了SoC 1310內(nèi)的內(nèi)部功率管理電路和功能之外,PMIC 1380耦合到SoC 1310以提供基于平臺的功率管理,例如基于系統(tǒng)是由電池1390還是由經(jīng)由AC適配器1395的AC功率供電。除了該基于功率源的功率管理之外,PMIC 1380還可以執(zhí)行基于環(huán)境和使用條件的平臺功率管理活動。又進一步,PMIC 1380可以向SoC 1310傳送控制和狀態(tài)信息以引起SoC 1310內(nèi)的各種功率管理動作。

又參考圖13,為了提供無線能力,WLAN單元1350耦合到SoC 1310并繼而到天線1355。在各種實現(xiàn)方式中,WLAN單元1350可以提供根據(jù)一個或多個無線協(xié)議(包括IEEE 802.11協(xié)議、Bluetooth?協(xié)議或任何其他無線協(xié)議)的通信。

如進一步圖示的,多個傳感器1360可以耦合到SoC 1310。這些傳感器可以包括各種加速度計、環(huán)境和其他傳感器,其包括用戶手勢傳感器。最終,音頻編解碼器1365耦合到SoC 1310以提供到音頻輸出設(shè)備1370的接口。當(dāng)然,要理解的是雖然在圖13中以該特定實現(xiàn)方式示出,但許多變型和替換方案是可能的。

現(xiàn)在參考圖14,代表性計算機系統(tǒng)(諸如,筆記本、Ultrabook?或其他小形狀因子系統(tǒng))的框圖。在一個實施例中,處理器1410包括微處理器、多核處理器、多線程處理器、超低電壓處理器、嵌入式處理器或其他已知的處理元件。在所圖示的實現(xiàn)方式中,處理器1410充當(dāng)用于與系統(tǒng)1400的各種組件中的許多組件通信的主處理單元和中央中心。作為一個示例,處理器1400被實現(xiàn)為SoC。

在一個實施例中,處理器1410與系統(tǒng)存儲器1415通信。作為說明性示例,系統(tǒng)存儲器1415經(jīng)由多個存儲器設(shè)備或模塊來實現(xiàn)以提供給定量的系統(tǒng)存儲器。

為了提供諸如數(shù)據(jù)、應(yīng)用、一個或多個操作系統(tǒng)等之類的信息的持久性存儲,大容量儲存器1420還可以耦合到處理器1410。在各種實施例中,為了使得能夠?qū)崿F(xiàn)較薄和較輕系統(tǒng)設(shè)計以及為了改進系統(tǒng)響應(yīng)性,該大容量儲存器可以經(jīng)由SSD來實現(xiàn),或者大容量儲存器可以主要使用具有較小量SSD儲存器充當(dāng)SSD高速緩存的硬盤驅(qū)動器(HDD)來實現(xiàn)以使得能夠?qū)崿F(xiàn)在斷電事件期間的上下文狀態(tài)和其他這樣的信息的非易失性存儲,以使得在系統(tǒng)活動的重新初始化時可以發(fā)生快速上電。在圖14中還示出了,閃速設(shè)備1422可以例如經(jīng)由串行外圍接口(SPI)耦合到處理器1410。該閃速設(shè)備可以提供系統(tǒng)軟件的非易失性存儲,所述系統(tǒng)軟件包括基本輸入/輸出軟件(BIOS)以及系統(tǒng)的其他固件。

在系統(tǒng)1400內(nèi)可以存在各種輸入/輸出(I/O)設(shè)備。具體地在圖14的實施例中示出了顯示器1424,所述顯示器1424可以是高清晰度LCD或LED面板,其可以進一步提供觸摸屏1425。在一個實施例中,顯示器1424可以經(jīng)由顯示器互連耦合到處理器1410,所述顯示器互連可以被實現(xiàn)為高性能圖形互連。觸摸屏1425可以經(jīng)由另一個互連耦合到處理器1410,所述另一個互連在實施例中可以是I2C互連。如圖14中進一步所示的,除了觸摸屏1425之外,通過觸摸的方式的用戶輸入還可以經(jīng)由觸摸板1430而發(fā)生,所述觸摸板1430可以被配置在底架內(nèi)并且還可以與觸摸屏1425耦合到相同的I2C互連。

為了感知計算和其他目的,各種傳感器可以存在于系統(tǒng)內(nèi),并且可以以不同的方式耦合到處理器1410。某些慣性和環(huán)境傳感器可以通過傳感器中心1440(例如經(jīng)由I2C互連)耦合到處理器1410。在圖14中所示的實施例中,這些傳感器可以包括加速度計1441、環(huán)境光傳感器(ALS)1442、羅盤1443和陀螺儀1444。其他環(huán)境傳感器可以包括一個或多個熱傳感器1446,在一些實施例中,所述熱傳感器1446經(jīng)由系統(tǒng)管理總線(SMBus)總線耦合到處理器1410。

在圖14中還看到,各種外圍設(shè)備可以經(jīng)由低引腳數(shù)(LPC)互連耦合到處理器1410。在所示的實施例中,可以通過嵌入式控制器1435來耦合各種組件。這樣的組件可以包括鍵盤1436(例如,經(jīng)由PS2接口耦合)、風(fēng)扇1437和熱傳感器1439。在一些實施例中,觸摸板1430還可以經(jīng)由PS2接口耦合到EC 1435。此外,諸如根據(jù)日期2003年10月2日的可信計算組(TCG)TPM規(guī)范版本1.2的可信平臺模塊(TPM)1438之類的安全處理器還可以經(jīng)由該LPC互連耦合到處理器1410。

系統(tǒng)1400可以以各種各樣的方式(包括無線地)與外部設(shè)備通信。在圖14中所示的實施例中,存在各種無線模塊,其中的每一個可以對應(yīng)于被配置用于特定無線通信協(xié)議的無線電。用于在短距離(諸如近場)中的無線通信的一個方式可以是經(jīng)由NFC單元1445,所述NFC單元1445在一個實施例中可以經(jīng)由SMBus與處理器1410通信。注意到,經(jīng)由該NFC單元1445,與彼此緊密接近的設(shè)備可以通信。

如圖14中進一步所見,附加無線單元可以包括其他短距離無線引擎,包括WLAN單元1450和藍牙單元1452。使用WLAN單元1450,可以實現(xiàn)根據(jù)給定IEEE 802.11標(biāo)準(zhǔn)的Wi-Fi?通信,而經(jīng)由藍牙單元1452,可以發(fā)生經(jīng)由藍牙協(xié)議的短距離通信。這些單元可以經(jīng)由例如USB鏈路或通用異步接收器發(fā)射器(UART)鏈路與處理器1410通信。或者這些單元可以經(jīng)由根據(jù)PCIe?協(xié)議或另一個這樣的協(xié)議(諸如串行數(shù)據(jù)輸入/輸出(SDIO)標(biāo)準(zhǔn))的互連耦合到處理器1410。

此外,例如根據(jù)蜂窩或其他無線廣域協(xié)議的無線廣域通信可以經(jīng)由WWAN單元1456發(fā)生,所述WWAN單元1456繼而可以耦合到訂戶身份模塊(SIM)1457。此外,為了使得能夠?qū)崿F(xiàn)位置信息的接收和使用,還可以存在GPS模塊1455。注意到,在圖14中所示的實施例中,WWAN單元1456和集成的捕獲設(shè)備(諸如攝像機模塊1454)可以經(jīng)由給定USB協(xié)議(諸如USB 2.0或3.0鏈路)或UART或I2C協(xié)議進行通信。

集成的攝像機模塊1454可以合并在蓋中。為了提供音頻輸入和輸出,音頻處理器可以經(jīng)由數(shù)字信號處理器(DSP)1460來實現(xiàn),所述DSP 1460可以經(jīng)由高清晰度音頻(HDA)鏈路耦合到處理器1410。類似地,DSP 1460可以與集成編碼器/解碼器(CODEC)和放大器1462通信,其繼而可以耦合到輸出揚聲器1463,所述輸出揚聲器1463可以在底架內(nèi)實現(xiàn)。類似地,放大器和編解碼器 1462可以被耦合以從麥克風(fēng)1465接收音頻輸入,所述麥克風(fēng)1465在實施例中可以經(jīng)由雙陣列麥克風(fēng)(諸如數(shù)字麥克風(fēng)陣列)來實現(xiàn)以提供高質(zhì)量音頻輸入以使得能夠?qū)崿F(xiàn)系統(tǒng)內(nèi)的各種操作的語音激活的控制。還注意到,可以將音頻輸出從放大器/編解碼器 1462提供到耳機插口1464。盡管在圖14的實施例中以這些特定組件示出,但要理解的是本發(fā)明的范圍在這方面不被限制。

可以以許多不同的系統(tǒng)類型來實現(xiàn)實施例?,F(xiàn)在參考圖15,示出了根據(jù)本發(fā)明的實施例的系統(tǒng)的框圖。如圖15中所示,多處理器系統(tǒng)1500是點對點互連系統(tǒng),并且包括經(jīng)由點對點互連1550耦合的第一處理器1570和第二處理器1580。如圖15中所示,處理器1570和1580中的每一個可以是多核處理器,其包括第一和第二處理器核(即,處理器核1574a和1574b以及處理器核1584a和1584b),盡管在處理器中潛在地可以存在更多的核。每一個處理器可以包括PCU或其他功率管理邏輯以執(zhí)行如本文所述的基于處理器的功率管理。

又參考圖15,第一處理器1570還包括存儲器控制器中心(MCH)1572和點對點(P-P)接口1576和1578。類似地,第二處理器1580包括MCH 1582以及P-P接口1586和1588。如圖15中所示,MCH 1572和1582將處理器耦合到相應(yīng)的存儲器,即存儲器1532和存儲器1534,所述存儲器可以是本地附接到相應(yīng)處理器的系統(tǒng)存儲器(例如,DRAM)的部分。第一處理器1570和第二處理器1580可以分別經(jīng)由P-P互連1562和1564耦合到芯片組1590。如圖15中所示,芯片組1590包括P-P接口1594和1598。

此外,芯片組1590包括通過P-P互連1539將芯片組1590與高性能圖形引擎1538耦合的接口1592。繼而,芯片組1590可以經(jīng)由接口1596耦合到第一總線1516。如圖15中所示,各種輸入/輸出(I/O)設(shè)備1514可以耦合到第一總線1516連同總線橋1518,所述總線橋1518將第一總線1516耦合到第二總線1520。在一個實施例中,各種設(shè)備可以耦合到第二總線1520,所述各種設(shè)備包括例如鍵盤/鼠標(biāo)1522、通信設(shè)備1526和可以包括代碼1530的數(shù)據(jù)存儲單元1528(諸如盤驅(qū)動器或其他大容量存儲設(shè)備)。另外,音頻I/O 1524可以耦合到第二總線1520。實施例可以被合并到其他類型的系統(tǒng)中,所述其他類型的系統(tǒng)包括移動設(shè)備,諸如智能蜂窩電話、平板計算機、筆記本、Ultrabook?等。

圖16是根據(jù)本發(fā)明的實施例的系統(tǒng)1600的框圖。系統(tǒng)1600包括處理器1602、電源供應(yīng)1640和動態(tài)隨機存取存儲器1614。

處理器1602包括多個核16040-1604N、圖形處理單元(GPU)1610、互連1606、高速緩存存儲器1608和功率控制單元(PCU)1620。PCU 1620包括溫度邏輯1630以根據(jù)可編程平衡策略1632并基于從多個溫度傳感器16600-1660N和1662接收的溫度數(shù)據(jù)來調(diào)整多個時鐘頻率中的兩個或更多時鐘頻率,其中多個時鐘頻率中的每一個時鐘頻率由對應(yīng)鎖相環(huán)(PLL)16500-1650N、1652和1654來生成。在一些實施例中,存在感測單個核的溫度的兩個或更多溫度傳感器,由于在核內(nèi)可能存在溫度變化。每一個溫度傳感器可以例如在持續(xù)的基礎(chǔ)上生成數(shù)據(jù),并且溫度邏輯1630可以周期地接收溫度數(shù)據(jù)并確定時鐘頻率是否基于接收到的溫度數(shù)據(jù)而被調(diào)整。在其他實施例(未示出)中,多個核可以在相同的域內(nèi)(例如,根據(jù)由相同PLL確定的相同時鐘頻率來操作),并且特定頻率的調(diào)整可以影響相同域內(nèi)的多核的吞吐量。

圖17是根據(jù)本發(fā)明的實施例的處理器1700的框圖。處理器1700包括一個或多個執(zhí)行單元(例如核和/或圖形處理單元17010-1701M)以及功率控制單元(PCU)1704。處理器1700可以包括未示出的其他組件,例如高速緩存存儲器、非核等。熱傳感器17020-1702M測量執(zhí)行單元的溫度。在實施例中,每個熱傳感器位于接近對應(yīng)執(zhí)行單元(例如與對應(yīng)執(zhí)行單元物理接觸),以便測量對應(yīng)執(zhí)行單元的溫度。在其他實施例中,兩個或更多熱傳感器可以被采用以測量單個執(zhí)行單元的不同部分的溫度。

來自熱傳感器17020-1702M的溫度數(shù)據(jù)可以被傳送到PCU 1704,并且被溫度邏輯1706接收。在溫度邏輯1706中包括溫度評定邏輯1708,所述溫度評定邏輯1708要確定從熱傳感器17020-1702M接收的溫度數(shù)據(jù)的最大溫度Tunit max。Tunit max與多個執(zhí)行單元17010-1701M中的具有最高溫度的執(zhí)行單元相關(guān)聯(lián)。

Tunit max可以被發(fā)送到低通濾波器1710,所述低通濾波器1710確定針對第n時間間隔Δt(例如,總流逝時間=)的溫度誤差信號Err(n)。 低通濾波器1710可以已經(jīng)存儲可配置偏移Tcc offset1712,所述可配置偏移在計算誤差信號Err(n)中使用。在實施例中,低通濾波器1710將Err(n+1)計算為

其中Tjmax是執(zhí)行單元的最大可操作溫度,并且是可編程時間常數(shù)1714。Err[0]典型地具有0的值。Tjmax表示最大晶體管結(jié)點溫度值,其可以在操作之前被確定并被存儲在處理器中,例如在熔絲陣列中。

針對第N時間間隔的溫度誤差信號Err[N]可以被輸出到控制邏輯1716,其基于Err[n]的連續(xù)值而確定控制信號的值。在實施例中,控制邏輯包括確定控制信號的比例積分微分控制器(PID)控制器。

在實施例中,針對第N時間間隔的控制信號被計算為:

其中是Err[n]的所有值的求和,n=1到N。Kp、Ki和Kd是例如通過實驗室測試所確定的常數(shù)。

控制信號Control(N)被發(fā)送到平衡邏輯1722,所述平衡邏輯1722要確定針對每個域的經(jīng)調(diào)整的域頻率,并且每個經(jīng)調(diào)整的域頻率可以被發(fā)送到生成對應(yīng)域頻率的對應(yīng)PLL。平衡邏輯基于Control(N)的值并基于可編程策略1724而確定每一個經(jīng)調(diào)整域頻率。例如,在實施例中,經(jīng)調(diào)整的域頻率fx可以針對每個域而如下確定:

其中Policymin是針對所有域的最小時鐘頻率乘數(shù)(由策略確定),并且PolicydomianX是針對每個域X的預(yù)設(shè)參數(shù),例如由策略所確定的。平衡邏輯1722將經(jīng)調(diào)整的域頻率值發(fā)送到域頻率調(diào)整邏輯1726,所述域頻率調(diào)整邏輯1726可以將經(jīng)調(diào)整的域頻率命令發(fā)送到每一個對應(yīng)鎖相環(huán)(PLL)。

響應(yīng)于檢測到熱點,至少一些域頻率的經(jīng)調(diào)整的頻率fx典型地從其先前值降低。作為示例,在一個策略中,第一多個核可以將數(shù)據(jù)饋送到GPU中,并且第一多個核中的每一個可以具有近似相同的指令執(zhí)行速率,并且是具有第一域頻率的第一域的部分。GPU可以具有比第一多個核中的每個核更慢的執(zhí)行速率,并且GPU在具有第二域頻率的第二域內(nèi)。適當(dāng)?shù)牟呗钥梢灾付ㄔ诒鹊诙蝾l率的降低更大的程度上的第一域頻率的降低,其可以在降低由處理器所生成的熱量從而降低包括熱點的溫度的感測溫度的同時具有對總體吞吐量的最小影響。

其他策略可以指定針對三個或更多域中的每一個的不同的頻率乘數(shù)(PolicydomainX),例如每個域可以在具有其自己的操作頻率的其自己的域中。確定平衡策略的準(zhǔn)則可以包括吞吐率、每個域的熱特性、處理單元之間的協(xié)同效應(yīng)、處理單元(核和/或GPU)之間的互相依賴性等。在一些實施例中,平衡策略可以指定域頻率之間的關(guān)系。例如,一個平衡策略可以指定互連域的互連頻率要至少與包括高速緩存存儲器的域的域頻率一樣大。在另一個實施例中,平衡策略可以指定互連域的互連頻率在處于另一個域頻率(例如,包括一個或多個核的域)的固定比。其他實施例可以指定頻率比的啟發(fā)式確定。注意到平衡策略不限于以上提供的示例中的任一個,并且可以包括其任何組合或其他平衡策略規(guī)范。

因而,使用隨時間推移的每個執(zhí)行單元的監(jiān)視的溫度,可以響應(yīng)于檢測到一個或多個熱點(例如具有升高的溫度的執(zhí)行單元)而確定每個域頻率的經(jīng)調(diào)整的值。在實施例中,響應(yīng)于檢測到處理器內(nèi)的本地化升高的溫度(例如超過確定值的測量溫度)而改變域頻率中的兩個或更多個。若干域頻率的調(diào)整可以降低由處理器1700所生成的熱量,同時避免對單個熱點的劇烈節(jié)流。與僅節(jié)流熱點相比,若干域的頻率降低可以增強總體處理性能。

圖18是根據(jù)本發(fā)明的實施例的方法1800的流程圖。在塊1802處,處理器的功率控制單元(PCU)內(nèi)的溫度邏輯從多個溫度傳感器接收溫度數(shù)據(jù)。溫度傳感器可以監(jiān)視多個執(zhí)行單元(例如,核、GPU等)中的每一個的溫度。在一些實施例中,可以存在每個核一個溫度傳感器。在其他實施例中,核中的一個或多個可以由若干溫度傳感器監(jiān)視。繼續(xù)到塊1804,根據(jù)所接收的溫度數(shù)據(jù)而確定最大溫度Tunit max。前進到塊1806,低通濾波器應(yīng)用于最大溫度Tunit max。低通濾波器可以具有可調(diào)整時間常數(shù),并且低通濾波器可以消除對溫度尖峰的響應(yīng)。低通濾波器確定針對當(dāng)前時間間隔n的溫度誤差函數(shù)值Err(n)。

進行到塊1808,PCU的溫度邏輯內(nèi)的控制邏輯基于溫度誤差函數(shù)值而確定控制函數(shù)值。繼續(xù)到塊1810,PCU內(nèi)的平衡邏輯可以接收控制函數(shù)值,并且可以基于控制函數(shù)值根據(jù)可編程的平衡策略來確定域頻率改變?;诶缑恳粋€執(zhí)行單元的吞吐量特性、執(zhí)行單元之間的互相依賴性、一個或多個執(zhí)行單元的熱特性以及其他因素而確定可編程的平衡策略。前進到塊1812,PCU內(nèi)的域頻率調(diào)整邏輯可以發(fā)送調(diào)整命令(例如,到PLL)以根據(jù)基于控制函數(shù)值和平衡策略確定的域頻率改變而調(diào)整多個時鐘頻率。方法1800可以被重復(fù),由于可以繼續(xù)監(jiān)視溫度,并且可以由PCU溫度邏輯例如周期地從溫度傳感器接收溫度信息。

注意到如本文所述的根據(jù)用于降低處理器中生成的熱量的可編程策略的多個域頻率的調(diào)整可以獨立于和補充于基于操作系統(tǒng)(OS)的機制,諸如高級配置和平臺接口(ACPI)標(biāo)準(zhǔn)(例如,2006年10月10日公開的版本3.0b)。根據(jù)ACPI,處理器可以以各種性能狀態(tài)或級別,所謂的P狀態(tài),即從P0到PN操作。通常,P1性能狀態(tài)可以對應(yīng)于可被OS請求的最高保證性能狀態(tài)。除了該P1狀態(tài)之外,OS還可以請求較高性能狀態(tài),即P0狀態(tài)。該P0狀態(tài)可以從而是機會或渦輪模式狀態(tài),其中當(dāng)功率和/或熱預(yù)算可用時,處理器硬件可以將處理器或至少其部分配置成以比保證頻率更高的頻率操作。在許多實現(xiàn)方式中,處理器可以包括高于P1保證最大頻率的多個所謂的箱頻率,所述箱頻率超過如在制造期間被熔斷或以其他方式寫入到處理器中的特定處理器的最大峰值頻率。此外,根據(jù)ACPI,處理器可以以各種功率狀態(tài)或級別操作。關(guān)于功率狀態(tài),ACPI指定不同功率消耗狀態(tài),通常稱為C狀態(tài),C0、C1到Cn狀態(tài)。當(dāng)核是活動的時,其以C0狀態(tài)運行,并且當(dāng)核是空閑的時,它可以被置于核低功率狀態(tài),也稱為核非零C狀態(tài)(例如,C1-C6狀態(tài)),其中每個C狀態(tài)處于較低功率消耗級別(以使得C6是比C1更深的低功率狀態(tài),等等)。

實施例可以被合并到其他類型的系統(tǒng)中,所述其他類型的系統(tǒng)包括移動設(shè)備,諸如蜂窩電話?,F(xiàn)在參考圖19,示出了根據(jù)本發(fā)明的另一個實施例的系統(tǒng)的框圖。如圖19中所示,系統(tǒng)1900可以是移動設(shè)備,并且可以包括各種組件。如圖19的高級視圖中所示,可以是設(shè)備的中央處理單元的應(yīng)用處理器1910與包括儲存器1915的各種組件通信。在各種實施例中,儲存器1915可以包括程序和數(shù)據(jù)儲存部分二者。

應(yīng)用處理器1910還可以耦合到輸入/輸出系統(tǒng)1920,所述輸入/輸出系統(tǒng)1920在各種實施例中可以包括顯示器以及一個或多個輸入設(shè)備,諸如觸摸小鍵盤,其本身可以在被處理時出現(xiàn)在顯示器上。系統(tǒng)1900還可以包括集成傳感器中心(ISH)1960,其可以從一個或多個傳感器1970接收數(shù)據(jù)。應(yīng)用處理器1910可以包括一個或多個核,并且可以可選地包括圖形處理單元。應(yīng)用處理器1910包括功率控制單元(PCU)1912,其包括溫度邏輯1914,其根據(jù)本發(fā)明的實施例的響應(yīng)于應(yīng)用處理器1910內(nèi)的熱點的指示而根據(jù)可編程平衡策略來調(diào)整處理器1910的多個域頻率。

應(yīng)用處理器1910還可以耦合到基帶處理器1930,所述基帶處理器1930可以調(diào)節(jié)諸如語音和數(shù)據(jù)通信之類的信號以供輸出,以及調(diào)節(jié)傳入電話和其他信號。如所見的,基帶處理器1930耦合到收發(fā)器1940,所述收發(fā)器1940可以使得能夠?qū)崿F(xiàn)接收和傳送能力二者。繼而,收發(fā)器1940可以與天線1950(例如任何類型的天線)通信,所述天線能夠經(jīng)由一個或多個通信協(xié)議(諸如經(jīng)由無線廣域網(wǎng)(例如3G或4G網(wǎng)絡(luò))和/或無線局域網(wǎng)(諸如BLUETOOTH?或根據(jù)電氣和電子工程師協(xié)會802.11標(biāo)準(zhǔn)的所謂的WI-FI?網(wǎng)絡(luò)))傳送和接收語音和數(shù)據(jù)信號。如所見的,系統(tǒng)1900還可以包括可再充電電源供應(yīng)1925,其具有使得能夠?qū)崿F(xiàn)在移動環(huán)境中的操作的可再充電電池。雖然在圖19的實施例中以該特定實現(xiàn)方式示出,但本發(fā)明的范圍在這方面不被限制。

以下示例關(guān)于另外的實施例。

在第一示例中,一種處理器包括多個核;多個溫度傳感器,其中每個核接近至少一個溫度傳感器;以及功率控制單元(PCU)。所述PCU包括從每一個溫度傳感器接收包括對應(yīng)溫度值的溫度數(shù)據(jù)的溫度邏輯。響應(yīng)于溫度數(shù)據(jù)的最高溫度值超過閾值的指示,所述PCU要根據(jù)基于多個核中的至少兩個核的指令執(zhí)行特性的比較確定的策略來調(diào)整多個域頻率,其中每個域頻率與對應(yīng)域相關(guān)聯(lián),所述對應(yīng)域包括多個核中至少一個,并且每個域頻率是可獨立地調(diào)整的。

第二示例包括第一示例的特征。此外,所述溫度邏輯包括標(biāo)識從溫度傳感器接收的溫度值中的最高溫度值的溫度評定邏輯。

第三示例包括第二示例的特征。所述溫度邏輯還包括基于最高溫度值與溫度偏移值的比較而確定溫度誤差信號的低通濾波器。

第四示例包括第三示例的特征,并且此外所述溫度邏輯包括至少部分地基于溫度誤差信號而確定控制值的控制邏輯。域頻率的調(diào)整是至少部分地基于控制值的。

第五示例包括第四示例的特征。此外,所述控制邏輯包括比例積分微分(PID)邏輯,其根據(jù)基于溫度誤差信號的PID計算來計算控制值。

第六示例包括第四示例的特征。所述溫度邏輯還包括平衡邏輯,其通過將控制值乘以確定的策略的對應(yīng)權(quán)重因子來確定多個經(jīng)調(diào)整的域頻率中的每一個。

第七示例包括第一到第六示例中的任一個的特征。此外,確定的策略包括多個權(quán)重因子,每一個域具有對應(yīng)權(quán)重因子。每個域的權(quán)重因子是至少部分地基于域中的至少一個核的對應(yīng)指令吞吐率的。

在第八示例中,一種處理器包括多個執(zhí)行單元和多個溫度傳感器,每個溫度傳感器提供處理器內(nèi)的對應(yīng)位置的對應(yīng)溫度值。所述處理器還包括功率控制單元(PCU),所述PCU包括從每一個溫度傳感器接收對應(yīng)溫度值的溫度邏輯。響應(yīng)于從溫度傳感器之一接收的特定溫度值超過閾值的指示,所述PCU要根據(jù)至少部分地基于多個執(zhí)行單元中的至少兩個執(zhí)行單元的指令執(zhí)行特性確定的策略來調(diào)整至少兩個域頻率,其中每個域頻率與執(zhí)行單元中的至少一個執(zhí)行單元相關(guān)聯(lián)。

在包括第八示例的元素的第九示例中,調(diào)整至少兩個域頻率包括響應(yīng)于所述指示而降低至少兩個域頻率中的至少一個。

在包括第八示例的元素的第十示例中,確定的策略是可編程的。

在包括第八示例的元素的第11示例中,所述溫度邏輯包括根據(jù)溫度誤差函數(shù)來調(diào)整至少兩個域頻率的域頻率調(diào)整邏輯,所述溫度誤差函數(shù)至少部分地基于特定溫度值與所述閾值之間的差。

在包括第11示例的元素的第12示例中,所述特定溫度值是從多個溫度傳感器接收的溫度值中的最大的。

在包括第11示例的元素的第13示例中,所述溫度邏輯包括確定溫度誤差函數(shù)的值的低通濾波器。所述閾值與多個執(zhí)行單元的最大操作溫度相關(guān)聯(lián)。

在包括第11示例的元素的第14示例中,所述溫度誤差函數(shù)值還基于可選時間常數(shù)。

在包括第8到第14示例中的任一個的元素的第15示例中,確定的策略包括多個權(quán)重因子,每一個域頻率與相應(yīng)的權(quán)重因子相關(guān)聯(lián)。至少兩個域頻率中的每一個要響應(yīng)于特定溫度值超過所述閾值的指示而至少部分地根據(jù)相應(yīng)權(quán)重因子來調(diào)整。

第16示例是存儲可執(zhí)行指令的計算機可讀介質(zhì),所述可執(zhí)行指令當(dāng)被機器執(zhí)行時使所述機器:監(jiān)視多個溫度,其中每一個溫度與處理器內(nèi)的對應(yīng)指令執(zhí)行單元相關(guān)聯(lián),所述處理器包括多個域,每個域具有對應(yīng)域頻率,并且每個域包括至少一個指令執(zhí)行單元;以及基于多個監(jiān)視的溫度以及根據(jù)平衡策略來調(diào)整多個域頻率,所述平衡策略至少部分地基于指令執(zhí)行單元的指令吞吐量特性。

在包括第16示例的元素的第17示例中,所述平衡策略是可編程的。

包括第16示例的元素的第18示例還包括指令以:確定多個溫度中的最高溫度;將低通濾波器應(yīng)用于最高溫度以基于最高溫度和基于可編程時間常數(shù)而確定溫度誤差值,以及基于溫度誤差值來確定控制值;以及基于控制值來確定經(jīng)調(diào)整的頻率。

在包括第18示例的元素的第19示例中,所述溫度誤差值進一步是基于溫度偏移而確定的。

在包括第16到第19示例中的任一個的元素的第20示例中,所述平衡策略包括多個權(quán)重因子,每一個權(quán)重因子與對應(yīng)域相關(guān)聯(lián)。此外,計算機可讀介質(zhì)包括指令以:通過將控制值乘以對應(yīng)域的對應(yīng)權(quán)重因子而確定每個域的經(jīng)調(diào)整的頻率。

在第21示例中,一種方法包括:監(jiān)視多個溫度,其中每個溫度與處理器內(nèi)的對應(yīng)指令執(zhí)行單元相關(guān)聯(lián),所述處理器包括多個域,每個域具有對應(yīng)域頻率,并且每個域包括至少一個指令執(zhí)行單元。所述方法還包括基于多個監(jiān)視的溫度以及根據(jù)平衡策略來調(diào)整多個域頻率,所述平衡策略至少部分地基于指令執(zhí)行單元的指令吞吐量特性。

在包括第21示例的元素的第22示例中,所述平衡策略是可編程的。

在包括第22示例的元素的第23示例中,所述方法包括:確定多個溫度中的最高溫度;將低通濾波器應(yīng)用于最高溫度以基于最高溫度和基于可編程時間常數(shù)而確定溫度誤差值,以及基于溫度誤差值來確定控制值;以及基于控制值來確定經(jīng)調(diào)整的頻率。

在包括第23示例的元素的第24示例中,所述溫度誤差值進一步是基于溫度偏移而確定的。

在包括第21示例的元素的第25示例中,所述平衡策略包括多個權(quán)重因子,每個權(quán)重因子與對應(yīng)域相關(guān)聯(lián),并且所述方法包括通過將控制值乘以對應(yīng)域的對應(yīng)權(quán)重因子而確定每個域的經(jīng)調(diào)整的頻率。

第26示例包括執(zhí)行第21到第25示例中的任一個的方法的裝置。

第27示例包括裝置,所述設(shè)備包括用于執(zhí)行第21到第25示例中的任一個的方法的部件。

盡管參考特定集成電路中(諸如計算平臺或處理器中)的能量節(jié)省和能量效率來描述前述實施例,但其他實施例可應(yīng)用于其他類型的集成電路和邏輯設(shè)備。本文描述的實施例的類似技術(shù)和教導(dǎo)可以應(yīng)用于其他類型的電路或半導(dǎo)體設(shè)備,其還可受益于更好的能量效率和能量節(jié)省。例如,所公開的實施例不限于任何特定類型的計算機系統(tǒng),并且還可以在諸如手持設(shè)備、芯片上系統(tǒng)(SoC)和嵌入式應(yīng)用之類的其他設(shè)備中使用。手持設(shè)備的一些示例包括蜂窩電話、互聯(lián)網(wǎng)協(xié)議設(shè)備、數(shù)字?jǐn)z像機、個人數(shù)字助理(PDA)和手持PC。嵌入式應(yīng)用典型地包括微控制器、數(shù)字信號處理器(DSP)、網(wǎng)絡(luò)計算機(NetPC)、機頂盒、網(wǎng)絡(luò)集線器、廣域網(wǎng)(WAN)交換機或可以執(zhí)行以下教導(dǎo)的功能和操作的任何其他系統(tǒng)。此外,本文描述的裝置、方法和系統(tǒng)不限于物理計算設(shè)備,但還可以涉及用于能量節(jié)省和效率的軟件優(yōu)化。本文描述的方法、裝置和系統(tǒng)的實施例(無論是否參考硬件、固件、軟件或其組合)是對“綠色技術(shù)”未來至關(guān)重要的,諸如對涵蓋大部分美國經(jīng)濟的產(chǎn)品中的功率節(jié)省和能量效率而言。

實施例可以用于許多不同類型的系統(tǒng)中。例如,在一個實施例中,通信設(shè)備可以被布置成執(zhí)行本文所述的各種方法和技術(shù)。當(dāng)然,本發(fā)明的范圍不限于通信設(shè)備,并且代替地其他實施例可以針對用于處理指令的其他類型的裝置或包括指令的一個或多個機器可讀介質(zhì),所述指令響應(yīng)于在計算設(shè)備上運行而使設(shè)備執(zhí)行本文所述的方法和技術(shù)中的一個或多個。

實施例可以以代碼來實現(xiàn),并且可以被存儲在非臨時性存儲介質(zhì)上,所述非臨時性存儲介質(zhì)具有存儲在其上的指令,所述指令可以用于將系統(tǒng)編程為執(zhí)行所述指令。所述存儲介質(zhì)可以包括但不限于任何類型的盤(包括軟盤、光盤、固態(tài)驅(qū)動器(SSD)、壓縮盤只讀存儲器(CD-ROM)、壓縮盤可重寫器(CD-RW)和磁光盤)、半導(dǎo)體設(shè)備(諸如只讀存儲器(ROM)、諸如動態(tài)隨機存取存儲器(DRAM)、靜態(tài)隨機存取存儲器(SRAM)之類的隨機存取存儲器(RAM)、可擦除可編程只讀存儲器(EPROM)、閃速存儲器、電可擦除可編程只讀存儲器(EEPROM)、磁卡或光卡)或者適合于存儲電子指令的任何其他類型的介質(zhì)。

雖然已經(jīng)關(guān)于有限數(shù)目的實施例描述了本發(fā)明,但本領(lǐng)域技術(shù)人員將領(lǐng)會到各種修改及根據(jù)其的變型。意圖在于隨附權(quán)利要求涵蓋如落入該本發(fā)明的真實精神和范圍內(nèi)的所有這樣的修改和變型。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
文成县| 冀州市| 邓州市| 安溪县| 天水市| 广灵县| 临沧市| 乃东县| 新丰县| 通州区| 辽中县| 白水县| 朝阳市| 西平县| 环江| 禹州市| 洛扎县| 景德镇市| 汉阴县| 涟水县| 邳州市| 富平县| 河间市| 高邑县| 尤溪县| 广州市| 彩票| 巧家县| 旺苍县| 石泉县| 昌宁县| 依兰县| 墨江| 宝坻区| 师宗县| 大港区| 屏东市| 水城县| 德州市| 开原市| 大竹县|