TW201723747A - 控制在處理器中的遙測資料通訊 - Google Patents

控制在處理器中的遙測資料通訊 Download PDF

Info

Publication number
TW201723747A
TW201723747A TW105135308A TW105135308A TW201723747A TW 201723747 A TW201723747 A TW 201723747A TW 105135308 A TW105135308 A TW 105135308A TW 105135308 A TW105135308 A TW 105135308A TW 201723747 A TW201723747 A TW 201723747A
Authority
TW
Taiwan
Prior art keywords
processor
counter
core
telemetry data
cores
Prior art date
Application number
TW105135308A
Other languages
English (en)
Other versions
TWI720047B (zh
Inventor
維維克 加格
亞歷山大 真德勒
亞范德 拉曼
阿喜緒 V. 周貝爾
克利許納肯斯 V. 席斯特拉
狄恩 莫拉
艾利克 J. 戴賀梅
拉伍 阿葛拉沃
蓋伊 G. 沙托馬約
Original Assignee
英特爾公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 英特爾公司 filed Critical 英特爾公司
Publication of TW201723747A publication Critical patent/TW201723747A/zh
Application granted granted Critical
Publication of TWI720047B publication Critical patent/TWI720047B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3243Power saving in microcontroller unit
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)
  • Microcomputers (AREA)

Abstract

在一實施例中,一處理器包括用於執行指令的核心。該等核心的至少一些包括一遙測資料控制邏輯與一全球校準計數器,該遙測資料控制邏輯用於根據一交錯排程而發送一第一遙測資料封包到一電力控制器以避免資料碰撞,該全球校準計數器用於計數一交錯校準週期。亦描述與請求其他實施例。

Description

控制在處理器中的遙測資料通訊
實施例關於一系統的電力管理,特別是關於一種多核心處理器的電力管理。
在半導體處理與邏輯設計的發展下,已經允許在積體電路裝置上所存在之邏輯組件的數量之增長。作為結果,電腦系統組態已經從在一系統中之一單一或多個積體電路演進成為多硬體執行序、多核心、多裝置及/或在個別積體電路上的完整系統。此外,隨著積體電路的密度增長,對於計算系統(從嵌入式系統到伺服器)的電力需求也升高了。更甚者,軟體的無效率且其對於硬體的需求也已經造成計算裝置中能源消耗的增加。事實上,有一些研究指出計算裝置消耗了一個國家中整個供電相當大的百分比,諸如美國。作為一結果,對相關聯於積體電路之能源效率與節約有重要的需求。這些需求在伺服器、桌上型電腦、筆記型電腦、超極致筆電™、平板電腦、行動裝置、處理器、嵌入式系統…等等(在被包括在典型的電腦、汽車、電視與生物技術中)變得更廣泛時將會增加。
根據本發明的一實施例,係特地提出一種處理器,該處理器包含:用於執行指令的複數個核心,該等複數個核心的至少若干者包括一遙測資料控制邏輯與一全球校準(GAT)計數器,該遙測資料控制邏輯用於根據一交錯排程而發送一第一遙測資料封包到一電力控制器以避免資料碰撞衝突,該全球校準計數器用於計數一交錯校準週期;以及該電力控制器用於從該等複數個核心中的至少若干者根據該交錯排程而接收該第一遙測資料封包。
根據本發明的另一實施例,係特地提出一種具有資料儲存在內的機器可讀媒體,其若由至少一機器所使用時將引起該至少一機器製造至少一積體電路以進行一方法,該方法包含:啟始在一處理器的一第一核心之一全球校準(GAT)計數器中的計數,該GAT計數器用於維持在該處理器之複數個核心之間的交錯排程;至少部分基於該第一核心的一第一延遲計數器之值,從該第一核心將遙測資料傳送到該處理器的一電力控制器,以避免遙測資料與該處理器之該等複數個核心之一或多個其他核心的遙測資料衝突;判定該GAT計數器的一對應部分之值是否匹配該處理器的一時戳計數器的一時戳計數器值;以及回應於判定出該GAT計數器的該對應部分的該值與該時戳計數器值的該第一部分匹配而重設該GAT計數器。
根據本發明的又一實施例,係特地提出一種系統,該系統包含:一處理器,該處理器具有:一第一核心,該第一核心包括用於計數一交錯校準週期的一第一計數器、用於計數一第一推送週期的一第二延遲計數器以及用於回應於在該第一延遲計數器中的該第一推送週期屆期時,發送一第一遙測資料封包的一第一控制邏輯;一第二核心,該第二核心包括用於計數該交錯校準週期的一第二計數器以及用於計數該第一推送週期的一第二延遲計數器,以及用於回應於在該第二延遲計數器中的該第一推送週期屆期時,發送一第二遙測資料封包的一第二控制邏輯,其中,在該第二延遲計數器中的該第一推送週期的屆期與在該第一延遲計數器中的該第一推送週期的屆期為交錯的,以避免資料衝突;以及一電力控制器,該電力控制器用於接收該第一遙測資料封包與該第二遙測資料封包,且至少部分基於在該第一遙測資料封包與該第二遙測資料封包中的遙測資訊而引起對該第一核心與該第二核心中之至少一者的至少一操作參數的更新;以及與該處理器耦接的一管理控制器。
在許多實施例中,一多核心處理器的個別元件,諸如個別核心及/或其他邏輯(一般在此提到的是智慧財產(IP)邏輯)可以被控制而使得遙測資料能夠與處理器的一電力控制器以座標和交錯這樣的通訊的方式而通訊,以致使能夠避免在由不同邏輯所發送的遙測知料之間的資料衝突(collision)。以此方式,可以減少例如在旁波帶通訊鏈路上的頻寬訊務。更進一步的,實施例提供了一種遙測分封化(packetization)技術來把會被傳送的資料最小化。為了此目的,不同遙測資料封包格式使得有不同大小之不同類型的遙測資料能夠在不同的頻率或週期之下基於遙測資料的類型而通訊。
在實施例中,電力控制器或其他控制邏輯可基於在一共用計數器中所有此等IP方塊的校準而定義此等通訊的交錯,諸如一時戳計時器。此外,為了計算此等錯列排程隨著時間的多變性,可以使用長期重新校準技術。
雖然以下的實施例是參考在一特定積體電路中之能源節約與能源效率來描述,諸如再計算平台或處理器,其他實施例亦可應用其他類型的積體電路與邏輯裝置。在此描述的類似技術與教示可應用在亦會受益於較佳能源效率與能源節約之其他類型的電路或半導體裝置。例如所揭露的實施例不限定於任何特定類型的電腦系統。亦即,揭露的實施例可以在許多不同的系統類型中使用,伺服器電腦(例如,塔台、機架、 刀鋒式、微伺服器等等)通訊系統、儲存系統、任何組態的桌上型電腦、膝上型電腦、筆記型電腦與平板電腦(包括2:1平板、平板手機等等),且易可在其他裝置中使用,諸如手持裝置、單晶片系統(SoC)以及嵌入式應用程式。手持裝置的一些範例可包括蜂巢式電話,諸如智慧型手機、網際網路協定裝置、數位攝錄器、個人數位助理(PDA)以及手持式電腦。嵌入式應用程式典型地包括一微型控制器、一數位訊號處理器(DSP)、網路電腦(NetPC)、機上盒、網路集線器、廣域網路(WAN)開關、可穿戴裝置或者可以進行以下所教示之功能或操作的任何其他系統。更多的,實施例可在具有標準語音功能的行動終端處實施,諸如行動電話、智慧型手機與平板手機及/或在沒有標準無線語音功能通訊能力之非行動裝端處實施,諸如許多穿戴式裝置、平板、平板電腦、桌上型電腦、微型伺服器、伺服器等等。更進一步的,在此描述的設備、方法與系統並非受限於實體的計算裝置但可以相關聯於用在能源節約與效能之軟體最佳化。如以下詳細說明將會變得顯而易見的,在此描述的方法、設備與系統的實施例(不管是以硬體、韌體或軟體或者其等之組合來提到)對於「綠色科技」未來都是重要的,諸如對於在產品中之電力節約與能源效率,產品涵蓋US經濟的一大部分。
現在參照圖1,所顯示的是根據本發明之一實施例的一系統的一部分之方塊圖。如圖1中所示,系統100可包括各種組件,包括顯示為多核心處理器的一處理器110。處理器110可經由一外部電壓調節器160耦接到一電力供應器150,外部電壓調節器160可進行一第一電壓轉換以提供處理器110一主要受調控Vreg電壓。
正如所見,處理器110可為包括多個核心120a至120n的單一晶粒處理器。此外,各核心可與一積體電壓調節器(IVR)125a至125n相關連,其接收主要受調控電壓且產生會供應給與該IVR相關連之處理器的一或多個代理者的一操作電壓。據此,可提供一IVR實施以允許電壓的細粒度控制且因而控制各核心的電力與效能。如此一來,各核心可以在獨立電壓與頻率之下操作,使得能有極佳的彈性且對於平衡電力耗損與性能之間廣泛的可能性。在一些實施例中,多IVR的使用使得組件分群成為分開的電力平面,以致使電力可以由IVR調節且僅供應給群組中的該等組件。在電力管理期間,一IVR的給定電力平面在該處理器被放置在一特定低電力狀態且同時另一IVR的另一電力平面維持啟動時可以被切斷或關閉或者完全的被供電。類似地類似地,核心120可包括或可與獨立時脈產生電路相關連,諸如一或多個相鎖迴路(PLL),以獨立地控制各核心120的操作頻率。
仍參照圖1,在處理器內可存在有附加組件,包括了一輸入/輸出介面(IF)132、另一介面134與一積體記憶體控制器(IMC)136。正如所見,此等組件各者可由另一積體電壓調節器125x來供電。在一實施例中,介面132可用於使得英特爾®快速路徑互連(QPI)互連件能夠操作,其在一快取同調性協定中提供了點對點(PtP)鏈結,協定包括了包括有一實體層、一鏈結層以及一協定層的多個層。接著,介面134可經由一快速周邊組件互連件(PCIeTM )協定來通訊。
亦顯示了一電力控制單元(PCU)138,該PCU138可包括包括有能對處理器110來進行電力管理操作之硬體、軟體及/或韌體的電路。正如所見,PCU138經由一數位介面162而提供控制資訊給外部電壓調節器160,以使得電壓調節器產生恰當的受調控電壓。PCU138亦經由另一數位介面163提供控制資訊給IVR125而控制所產生的操作電壓(或者造成一對應的IVR不作動於一低電力模式中)。在各種實施例中,PCU138可包括各種電力管理邏輯單元以用於進行硬體式電力管理。此等電力管理可以完全是處理器控制(例如,藉由各種處理器硬體且其可由工作負載及/或電力、溫度或其他處理器限制所觸發)及/或電力管理可回應於外部資源(諸如,一平台或電力管理來源或系統軟體)而進行。同樣地,PCU138亦以如在此進一步描述之避免資料衝突的方式而控制來自核心120與其他邏輯的遙測資料之通訊。
在圖1中,PCU138係以呈現作為處理器的一分開邏輯而例示說明。在其他案例中,PCU138可在給定的一或多個核心120上執行。在一些案例中,PCU 138可實施為為控制器(專用或通用用途)或者組配為可執行他自己專用之電力管理碼,有時會被稱為P碼,的其他控制邏輯。在還有一些其他實施例中,由PCU138所進行之電力管理操作可在一處理器外部實施,諸如藉由一分開的電力管理積體電路(PMIC)或在處理器外部的其他組件。在還有一些其他實施例中,由PCU 138所進行之電力管理操作可在BIOS或其他系統軟體內實施。
實施例可特別適合用於一多核心處理器,在該多核心處理器中該等多個核心各者可在獨立的電壓與頻率點處操作。如在此所使用之用字「區域」是用來表示在同樣的電壓與頻率點操作之硬體及/或邏輯的組合。此外,一多核心處理器可近一不包括其他非核心處理引擎,諸如固定功能單元、圖形引擎等等。此等處理器可包括核心之外的獨立區域,諸如與一圖形引擎(在此被稱做圖形區域)相關連的一或多個區域以及與非核心電路相關連的一或多個區域,在此被稱做非核心或者系統代理者。雖然可以在一單一半導體晶粒上形成一多區域處理器核心的許多實施,可由多晶片封裝體來實現其他實施,其中不同區域可呈現在一單一封裝的不同半導體晶粒上。
雖然為了簡化說明而未示出,可以理解附加的組件可以呈現在處理器110之內,諸如非核心邏輯與其他組件,諸如內部記憶體,例如一快取記憶體階層的一或多個層級等等。更進一步的,雖然在圖1的實施中顯示了一積體電壓調節器,實施例不限制於此。例如,可從外部電壓調節器160或經調控電壓之一或多個附加外部資源來提供其他調節電壓給晶片上資源。
注意在此描述的電力管理技術可為獨立的且與一作業系統式電力管理(OSPM)機構互補。根據一範例OSPM技術,一處理器可在各種性能狀態或層級操作,被稱為P狀態,也就是從P0至PN。一般來說,P1的性能狀態可對應到OS可請求之最高保證性能狀態 。除了此P1狀態,OS可進一步請求更高興能狀態,亦即一P0狀態。此P0狀態可因此為一機會主義、超頻或者渦輪模式狀態,在此等狀態裝,當電力及/或熱能預算是可以取用時,處理器硬體可將處理器或者其至少部分組配成為可在較高於保證頻率更高之下運作。在許多實施中,處理器可包括高於P1保證最高頻率之多個被稱為頻段(bin frequencies)者,其超過特定處理器的一最大峰值頻率,而在製造期間融入或者寫入處理器。此外,根據一OSPM機制,一處理器可在各種電力狀態或曾機操作。關於電力狀態,一OSPM機制可指明不同電力消耗狀態,一般被稱為C狀態,C0、C1至Cn狀態。當一個核心啟用時,其在C0狀態運行,且當該核心為閒置時,其可放置於一核心低電力狀態,亦被稱為核心非零C狀態(例如,C1至C6狀態),每個C狀態處於一較低電力消耗階層(諸如C6是較C1更深層的低電力狀態等等)。
可理解有許多不同類型的電力管理技術能在不同實施例中獨立地或者以組合方式來使用。如代表範例,一電力控制器可控制處理器受到一些動態電壓頻率調節(DVFS)的形式來進行電力管理,其中一或多個核心或其他處理器邏輯的一操作電壓及/或操作頻率可以動態地受控而在特定狀況下減少電力消耗。在一範例中,DVFS可使用來自加州聖克拉拉之英特爾公司的增強英特爾SpeedStepTM 技術來進行,而在最低電力消耗層級之下提供最佳性能。在另一範例中,DVFS可使用英特爾TurboBoostTM 技術來使得一或多個核心或其他計算引擎能夠在基於條件下(例如,工作負載或可取得性)較保證操作頻率更高的頻率下操作。
在特定範例中可以使用的另一電力管理技術為在不同計算引擎之間的工作負載之動態交換。例如,處理器可包括不對稱核心或在不同電力消耗層級下操作的其他處理引擎,諸如在電力受限狀況下,一或多個工作負載可動態地切換而在一較低電力核心或其他計算引擎上執行。另一範例性電力管理技術為硬體佔空比(HDC),其可造成核心及/或其他處理引擎根據一佔空比週期性的啟用或禁用,使得一或多個核心可以在佔空比的一非啟動期間為不啟用的,且在佔空比的啟動期間為啟用的。
電力管理技術亦可在作業環境中存在限制時使用。例如,當面臨一電力及/或熱能限制,電力可能會藉由減少操作頻率及/或電壓來減少。其他電力管理技術包括節流指令執行率或限制指令之排程。更進一步地,對於給定指令集架構之指令可以對於電力管理操作包括快速或隱含方向。雖然以此等特定範例來描述,可以理解可以在特定實施例中使用許多其他電力管理技術。
實施例可以在用於各種市場的處理器中實施,包括伺服器處理器、桌上型處理器、行動處理器等等。現在參照圖2,顯示的是根據本發明的一實施例之一處理器的方塊圖。如圖2中所顯示,處理器200可為包括複數個核心210a至210n的多核心處理器。在一實施例中,各個此等核心可為獨立電源域且被組配為可基於工作負載而進入與離開啟動狀態及/或最大效能狀態。一或多個核心210可與其他核心為異質性的,例如,具有不同的微架構、指令集架構、管線深度、電力與效能能力。各種核心可經由一互連件215而耦接到包括各種組件的一系統代理者或非核心220。如所見者,非核心220可包括一共享快取230,其可為最後階層快取記憶體。此外,非核心可包括用於與一系統記憶體(未顯示在圖2)通訊的積體記憶體控制器240,例如,經由一記憶體匯流排。非核心220亦包括各種介面250與一電力控制單元255,其可包括用於進行在此描述之電力管理與遙測資料通訊技術的邏輯。
此外,藉由介面250a至250n,可以在各種晶片外組件諸如周邊裝置、大量儲存裝置等等作出連結。雖然圖2之實施例中顯示的是在此等特定實施,本發明的範圍不限定於此方面。
現在參照圖3,所顯示的是根據本發明的另一實施例之一多域處理器的方塊圖。如圖3的實施例中所顯示者,處理器300包括多個域。更明確地,核心域310可包括複數個核心310a至310n,一圖形域320可包括一或多個圖形引擎,且可進一步存在一系統代理域350 。在一些實施例中,系統代理域350可在獨立於核心域的一獨立頻率下執行,且在任何時間都可維持被驅動以掌控電力控制事件與電力管理,以致使域310與320可被控制來動態地進入與離開高電力與低電力狀態。各個域310與320可在不同電壓及/或電力下操作。注意雖然只有顯示三個域,可以理解本發明的範圍不限定在此且可在其他實施例中存在附加的多個域。例如,可存在多核心域,各者包括至少一核心。
一般來說,除了各種執行單元與附加處理元件之外,各個核心310可進一步包括低階快取。接著,各種核心可耦接到彼此且耦接到形成一最後階層快取(LLC)340a至340n之複數個單元的一共享快取。在各種實施例中,LLC 340可為在核心與圖形引擎以及各種媒體處理電路當中共享者。如所示,一環形互連件330因而與該等核心耦接在一起且提供在該等核心、圖形域320以及系統代理電路350之間的互連。在一實施例中,互連件330可為核心域的一部分。然而在其他實施例中,環形互連件可為他自己的域的部分。
更進一步可以看見系統代理域350可包括顯示控制器352,該顯示控制器352可提供與一相關聯顯示器的控制以及介面。如進一步可以看件的,系統代理域350可包括一電力控制單元355其可包括用於進行在此所描述之電力管理與搖測資料通訊技術的邏輯。
如進一步在圖3中可以看到的是,處理器300可進一步包括一積體記憶體控制器(IMC)370其可提供用於到一系統記憶體的介面,諸如一動態隨機存取記憶體(DRAM)。可存在多個介面380a至380n 以使得處理器與其他電路之間能夠互連。例如,在一實施例中,可提供至少一個直接媒體介面(DMI)介面以及一或多個PCIe™介面。更進一步的,提供用於在其他代理者之間的通訊,其他代理者諸如附加處理器或其他電路,亦可提供一或多個QPI介面。雖然在圖3的實施例中顯示的是如此高層級,可以理解本發明的範圍不限定在此方面。
參照圖4,例示說明包括多個核心的一處理器之一實施例。處理器400包括任何處理器或處理裝置,諸如一微處理器、一嵌入式處理器、一數位訊號處理器(DSP)一網路處理器、一手持處理器、一應用程式處理器、一共處理器、一單晶片系統(SoC)或可執行代碼的其他裝置。在一實施例中,處理器400包括至少兩個核心,核心401與402,其可包括非對稱核心或者對稱核心(所例示的實施例)。然而,處理器400可包括任何數量的處理元件,該等處理元件可為對稱或者非對稱。
在一實施例中,一處理元件是指硬體或者用於支援軟體執行序的邏輯。硬體處理元件的範例包括:一執行序單元、執行緒槽、執行緒、一處理單元、一上下文、一上下文單元、一邏輯處理器、一硬體執行緒、一核心及/或可以維持一處理器的狀態的任何其他元件,諸如執行狀態或者結構狀態。換句話說,一處理元件在一實施例中可以指能夠獨立地與代碼相關聯的任何硬體,諸如一軟體執行緒、作業系統、應用程式或者其他代碼。一實體處理器一般是指一積體電路,該積體電路可能包括珠如何新或硬體執行緒的任何數量的其他處理單元。
一核心通常是指位在積體電路板上之能夠維持獨立架構狀態的一邏輯,其中,各者獨立地維持之架構狀態是與至少一些專用執行資源相關聯。相對於核心,一硬體執行緒一般是指在一積體電路上之能夠維持獨立架構狀態的任何邏輯,其中,獨立地維持狀態共享對執行資源的存取。如可以看到的,當某些資源共享且其他為專用於一架構狀態時,在硬體執行緒的命名與核心之間的線重疊。然而,一核心與一硬體執行緒被作業系統視作唯一獨立邏輯處理器,其中作業系統可以將個邏輯處理器上的操作獨立地排程。
如圖4中所例示說明的實體處理器400包括兩個核心,核心401與402。在此,核心401與402被視為對稱核心,亦即具有相同組態、功能單元及/或邏輯的的核心。在另一實施例中,核心401包括一無序(out-of-order)處理核心,同時核心402包括有序處理核心。然而,核心401與402可從任何類型的核心中獨立地挑選,諸如原生核心、軟體管理核心適用於執行原始指令集架構(ISA)的核心、適用於執行翻譯ISA的核心、協同設計核心或者其他已知核心。為了進一步討論,核心401中所例示說明的功能單元將在以下更進一步的描述且核心402中的單元以類似的方式來運作。
如所描述者,核心401包括兩個硬體執行緒401a與401b,其亦可被稱作硬體執行緒槽401a與401b。因此,軟體實體,諸如一作業系統,在一實施例中很可能會將處理器400視作四個分開的處理器,亦即,四個邏輯處理器或者能夠同時執行四個軟體執行緒的處理元件。如上所述,第一執行緒與架構狀態暫存器401a相關聯,第二執行緒與架構狀態暫存器401b相關聯,第三執行緒與架構狀態暫存器402a相關聯,且第四執行緒與架構狀態暫存器402b相關聯。在此,架構狀態暫存器(401a、401b、402a、402b)各者可以如上所述地被稱為處理元件、執行緒槽或者執行緒單元。如所例示說明者,架構狀態暫存器401a在架構狀態暫存器401b中被複製,故獨立架構狀態/上下文可以被儲存來用於邏輯處理器401a與邏輯處理器401b。在核心401中,其他較小資源,諸如在分配器與重新命名方塊430中的指令指示器與重新命名邏輯亦可針對執行緒401a與401b而複製。一些資源可透過分隔(partitioning)來共享,資源諸如在重新排序/舊版單元435中的重新排序緩衝器、分支目標緩衝器與指令位址轉換(instruction translation lookaside)緩衝器(BTB與I-TLB)420,載入/儲存緩衝器以及可透過分隔佇列。其他資源,諸如通用內部暫存器、頁表式暫存器、低階層資料快取與資料TLB450、執行單元440與無序單元435潛在地完全共享。
處理器400通常包括可完全地被共享的其他資源,能透過分隔或者專用於/在處理元件。在圖4中,一單純的範例處理器之實施例係例示為具有一處理器的例示性邏輯單元/資源。注意,處理器可包括或可省略任何此等功能性單元,且亦包括未被描述之任何其他已知功能的單元、邏輯、或韌體。如所例示者,核心401包括一簡化、代表性的失序(OOO)處理器核心。但一有序處理器可在不同實施例中使用。OOO核心包括用於預測將被執行或採用之分支的分支標靶緩衝器420,以及指令轉譯緩衝器420
核心401進一步包括耦接到一提取單元以解碼所提取元件的解碼模組425。在一實施例中,提取邏輯包括與執行緒槽401a、401b相關連的個別序列器。通常核心401與一第一ISA相關連,其定義/指明了可在處理器400上執行的指令。經常是第一ISA之一部分的機器碼指令包括指令的一部分(被稱為運算碼),其提到/指明會進行的一指令或一操作。解碼邏輯425包括電路,該電路由他們的運算碼識別此等指令且將經解碼指令傳遞到管線中以如由第一ISA所定義一般而處理。例如,解碼器425在一實施例中包括設計為或適用於可識別特定指令的邏輯,諸如交易指令。作為解碼器425之識別結果,架構或核心401採取特定、預定義動作以進行與恰當指令相關連的工作。重要的是要注意在此描述的任何工作、方塊、運作與方法可回應於一單一或多個指令而進行;此等工作、方塊、運作與方法其中一些可以是新或舊指令。
在一範例中,分配器與重新命名方塊430包括用於保留諸如暫存器檔案之資源的一分配器以儲存指令處理結果。然而,執行緒401a與401b潛在地可以進行失序執行,在此分配器與重新命名方塊430亦保留其他資源,諸如用於追蹤指令結果的重新排序緩衝器。單元430亦可包括一暫存器重新命名器,該暫存器重新命名器用於重新命名程式/指令參考暫存器到其他暫存器內部或處理器400。重新排序/舊版(retirement)單元435包括多個組件,諸如前面所提到的重新排序緩衝器的組件、載入緩衝器與儲存緩衝器以支援失序執行與之後指令的順序內退役。
排程器與執行單元方塊440在一實施例中包括一排程器單元用於排程在執行單元上的指令/操作。例如,浮點點數指令被排程在一執行單元的一埠上,該執行單元具有可取得的福點數執行單元。與該執行單元相關連的暫存器檔案亦被包括在內以用於儲存資訊指令處理結果。示範性執行單元包括福點數執行單元、整數執行單元、跳躍執行單元、載入執行單元、儲存執行單元以及其他已知執行單元。
較低階層資料快取與資料轉換緩衝器(D-TLB)450與執行單元440耦接。資料快取係用於儲存最近在元件上使用/操作者,諸如資料運算元,其潛在地維持在記憶體同質狀態中。D-TLB亦用於儲存最近虛擬/線性到實體位址轉譯。作為一特定範例,一處理器可包括一頁面表結構以將實體記憶體打散到複數個虛擬頁表中。
在此,核心401與402共享對於較高階層或者更外部快取410 的存取,快取係用於快取提取元件。注意較高階層或者更外部是指快取的層級增加或者是較遠離於(多個)執行單元。在一實施例中,較高階快取410是最後一層級資料快取,即在處理器400之記憶體階層中的最後一個快取,諸如第二或第三層級的資料快取。然而,較高階層快取410不限定於此,其可與一指令快取相關聯或者包括一指令快取。一跡線快取,其為指令快取的一種類型,可耦接在解碼器425之後以儲存最近解碼的跡線。
在所描述的組態中,處理器400亦包括匯流排介面模組405與一電力控制單元460,該電力控制單元460可根據本發明的一實施力而進行電力管理。在此場景下,匯流排介面模組405係用於與在處理器400外部的裝置通訊,諸如系統記憶體或其他組件。
.一記憶體控制器470可與諸如一或多個記憶體之其他裝置作介接。在一範例中,匯流排介面405包括一環形互連件與一圖形控制器,該環形互連件具有用於與一記憶體作介接的一記憶體控制器,該圖形控制器用於與一圖形處理器作介接。在一SoC環境中,更多的裝置,諸如一網路介面、協同處理器、記憶體、圖形處理器以及可整合在一單一晶粒或積體電路上之任何其他已知電腦裝置/介面,以提供具有高功能性與低電力消耗之小型態因子。
現在參照圖5,所顯示的是根據本發明之一實施例的一處理器核心之微架構的方塊圖。如圖5中所示,處理器核心500可為多階段管線無序處理器。核心500可基於一接收操作電壓而在各種電壓下操作,接收電壓可從積體電壓調節器或者外部電壓調節器接收而來。
如圖5所示,核心500包括前端單元510,其可用來提取以及準備會被執行的指令以供在稍後處理器管線中之使用。例如,前端單元510可包括一提取單元501、一指令快取503與一指令解碼器505。在一些實施中,前端單元510可包括一跡線快取,連同微代碼儲存器以及一微操作儲存器。提取單元501可例如,從記憶體或指令快取記憶體503提取巨集指令,且將其饋送至指令解碼器505以將該等指令解碼成為基元(primitives),亦即要受到該處理器所執行的微指令。
耦接在前端單元510與執行單元520之間的是一個無序(OOO)引擎515,其可被使用來接收微指令且準備該等指令以用於執行。更多特定OOO引擎515可包括各種緩衝器以重新排序微指令流且分配執行所需要的各種資源,以及提供在各種暫存器檔案之內的邏輯暫存器到儲存器位置之上的重新命名,各種暫存器檔案諸如暫存器檔案530與延伸暫存器檔案535。暫存器檔案530可包括分離暫存器檔案以用於整數和浮點數運算。為了組態、控制以及附加操作的目的,一組機器特定暫存器(MSR)538亦可存在,且可對核心500之內(以及核心外部)的各種邏輯進行存取。
各種資源可存在於在其他專用硬體之中的執行單元520之內,包括,例如,各種整數、浮點數以及單一指令多資料(SIMD)邏輯單元。例如,此等執行單元可包括在其他此等執行單元之中的一或多個算術邏輯單元522與一或多個向量執行單元524。
來自執行單元的結果可提供給舊版邏輯,亦即一重新排序緩衝器(ROB)540。更精確地, ROB540可包括用來接收與會受執行之指令相關聯的資訊各種陣列與邏輯。此資訊接著被ROB540檢測以判定出該等指令是否有效地退役且結果資料致力於處理器的架構狀態,或者發生可以避免指令恰當的退休的一或多個除外事項。當然,ROB540可掌控與退役相關聯的其他操作。
如圖5中所顯示,ROB540係與一快取550耦接,該快取550在一實施例中可為一低階層快取(例如,L1快取記憶體)而本發明的範圍不限定在此方面。同樣地,執行單元520可直接地與快取550耦接。來自快取550,資料傳輸可以較高階層快取、系統記憶體等等而出現。雖然顯示在圖5之實施例中的是此種高階層,可以理解本發明的範圍不限定在此方面。例如,雖然圖5的實施的是關於諸如英特爾® x86指令集架構(ISA)的無序機器,本發明的範圍不限定在此方面。亦即,其他實施例可以在有序處理器、諸如一ARM式(ARM-based)處理器精簡指令集計算(RISC)處理器或者ISA的另一類型之處理器中實施,該ISA的另一類型之處理器可以一不同ISA經由一仿效引擎與相關聯邏輯電路而仿效指令與操作。
現在參照圖6,顯示的是根據另一實施例之一處理器核心的微架構之一方塊圖。在圖6的實施例中,核心600可為不同微架構的一低電力核心,諸如英特爾® AtomTM 式處理器,其具有被設計來減少電力消耗之相對受限的管線深度。如可以看見的,核心600包括耦接來提供指令給一指令解碼器615一指令快取610。一分支預測器605可與指令快取610耦接。注意指令快取610可進一步與另一階層的快取耦接,諸如一L2快取記憶體(為了簡化圖6的例示說明並未示出)。接著,指令解碼器615提供解碼指令到一發布佇列(IQ)620以用於儲存及遞送到一給定的執行管線。一微代碼ROM618係與指令解碼器615耦接。
一浮點數管線630包括一浮點數(FP)暫存器檔案632,該FP暫存器檔案632可包括有給定位元寬度的複數個架構暫存器,位元寬度諸如128、256或512位元。管線630包括用於將會被管線之多個執行單元的其中之一所執行之指令排程的一浮點數排程器634。在所顯示的實施例中,此等執行單元包括一ALU635、一置換單元(shuffle unit)636以及一浮點數加法器638。接著,在此等執行單元中所產生的結果可提供回到緩衝器及/或暫存器檔案632的暫存器。當然可以理解雖然顯示的是此等的若干範例執行單元,在另一實施例可存在附加或者不同的浮點數執行單元。
亦可提供一整數管線640 。在所顯示的實施例中,管線640包括一整數(INT)暫存器檔案642,其可包括複數個具有給定位元寬度的架構暫存器,位元寬度諸如128或256位元。管線640包括將用於會在該管線的多個執行單元其中一者上執行之指令排程的一整數執行(IE)排程器644。在所顯示的實施例中,此等執行單元包括一ALU645與位移單元646以及一跳躍執行單元(JEU)648。接著在此等執行單元中所產生的結果可提供回到緩衝器及/或暫存器檔案642的暫存器。當然可以理解雖然顯示的是此等的若干範例執行單元,在另一實施例可存在附加或者不同的整數執行單元。
一記憶體執行排程器650可將會在位址產生單元(AGU)652中執行的記憶體操作作排程,AGU652亦可與一TLB654耦接。如可見的,此等架構可與一資料快取660耦接,資料快取660可為一L0及/或L1資料快取,L0及/或L1資料快取接著與包括一L2快取之一快取階層的附加階層們耦接。
為了提供無序執行之支援,除了組配為可依序將用於舊版之無序執行的指令重新排序的一重新排序緩衝器680之外,可提供一分配器/重新命名器670。雖然在圖6的力是說明中顯示了此等特定管線架構,可以理解許多改變與替代方案都是可能的。
注意在具有非對稱核心的一處理器中,諸如根據圖5與6的微架構,為了電力管理的原因,工作負載可在核心之間動態地互換,作為此等核心雖然具有不同管線設計與深度,可以是同一個ISA或相關聯ISA。此等動態核心互換可以對於使用者應用程式(且也可能是內部核心)來說是透明的方式來進行。
參照圖7,所顯示的是根據又一實施例的一處理器核心之一微架構的方塊圖。如圖7中所顯示,一核心700可包括多階段順序管線,用於在非常低電力消耗下執行。如一個此等範例,處理器700可具有符合來自加州桑尼維爾ARM控股有限公司可得之ARM Cortex A53設計的一微架構。在一實施中,可提供一8階段管線,其係組配為可執行32位元與64位元代碼。核心700包括一提取單元710,該提取單元710係組配為可提取指令且將該等指令提供給一解碼單元715,其可解碼該等指令,例如,諸如一ARMv8 ISA之給訂ISA的巨集指令。進一步注意佇列730可與解碼單元715耦接以儲存經解碼指令。經解碼指令提供給一發布邏輯725,在此經解碼指令可發布給多個執行單元其中一給定者。
進一步參考圖7,發布邏輯725可發布指令到多個執行單元的其中一者。在所顯示的實施例中,此等執行單元包括一整數單元735、乘法單元740、浮點數/向量單元750、雙發布單元760與載入/儲存單元770。此等不同執行單元的結果可提供到一回寫(WB)單元780。可以理解雖然為了簡化例示說明僅顯示一單一回寫單元,在一些實施中,分開的多個回寫單元可與執行單元的各者相關聯。更進一步地,可以理解雖圖7中所顯示的單元與邏輯各者是以高階層來存在,一特定實施可包括更多或不同的結構。被設計來使用如圖7中之具有一管線之一或多個核心的一處理器可以在許多不同的終端產品當中實施,終端產品從行動裝置延伸到伺服器系統。
參照圖8,顯示的是根據更進一步實施例之一處理器核心的一微架構的方塊圖。如圖8中所例示者,核心800可包括用於在非常高階層(其可能出現比圖7的核心700更高之電力消耗階層)下執行的一多階段多發布無序管線。作為如此的一範例,處理器800可具有ARM Cortex A57設計的一微架構。在一實施中,可以提供一15(或更大)階段管線其係組配來執行32位元與64位元代碼。此外,管線可提供用於3(或更大)寬度與3(或更大)發布操作。核心800包括一提取單元810,該提取單元810係組配為可提取指令且將該等指令提供給與一快取820耦接的一解碼器/重新命名器/調度單元815。單元815可解碼指令,例如,ARMv8指令集架構的巨集指令、將該等指令中的暫存器參考重新命名以及調度該等指令(最終)到一選定執行單元。經解碼指令可儲存在一佇列825中。注意雖然在圖8中為了簡化例示說明僅顯示一單一佇列結構,可以理解能針對執行單元的多個不同類型之每一者提供分開的佇列。
亦顯示在圖8中的是一發布邏輯830,儲存在佇列825中的解碼指令可從該發布邏輯830被發布到一選定執行單元。發布邏輯830亦可在一特定實施例中實施,針對發布邏輯830所耦接之執行單元的多個不同類型的各者具有一分離的發布邏輯。
經解碼指令可發布給多個執行單元其中一給定者。在所顯示的實施例中,此等執行單元包括一或多個整數單元835、乘法單元840、浮點數/向量單元850、分支單元860與一載入/儲存單元870。在一實施例中,浮點數/向量單元850可組配為可控管SIMD或128位元或256位元的向量資料。更進一步的,浮點數/向量單元850可組配為可進行IEEE-754雙重精準浮點數運算。此等不同執行單元的結果可提供給一回寫單元880。注意在一些實施中,分離的回寫單元可與執行單元的各者相關聯。更進一步的,可以理解雖然圖8中所顯示的單元與邏輯各者是以高階層來存在,一特定實施可包括更多或不同的結構。
注意在具有非對稱核心的一處理器中,諸如根據圖7與8的微架構,為了電力管理的原因,工作負載可在核心之間動態地互換,作為此等核心雖然具有不同管線設計與深度,可以是同一個ISA或相關聯ISA。此等動態核心互換可以對於使用者應用程式(且也可能是內部核心)來說是透明的方式來進行。
被設計來使用如圖5至8中中任一者或多者之具有管線之一或多個核心的一處理器,可以在許多不同的終端產品當中實施,終端產品從行動裝置延伸到伺服器系統。現在參照圖9,所顯示的是根據本發明之另一實施例的一處理器的方塊圖。在圖9的實施例中,處理器900可為包括多個域的一SoC,其中各者可受控以在一獨立操作電壓與操作頻率之下操作。作為一特定例示性範例,處理器900可為英特爾®架構核心™式處理器,諸如i3、i5、i7或者可從英特爾公司取得之另一此等處理器。然而,其他較低電力處理器諸如可下列者取得:加州桑尼維爾超微裝置公司(AMD)、來自ARM控股的ARM式設計或者其等之被授權人或者來自加州桑尼維爾美普司科技的MIPS式設計或者齊備授權人或採用者,可以替代存在在其他實施例中,諸如蘋果A7處理器、高通驍龍處理器、或德州儀器OMAP處理器。此等SoC可在低電力系統中使用,諸如智慧型手機、平板電腦、平板手機、超極致™電腦或其他可攜帶計算裝置,其可併入具有異質系統架構式處理器設計的異質系統架構。
在圖9中顯示的高階層視圖中,處理器900包括複數個核心單元910a至910n。各核心單元可包括一或多個處理器核心、一或多個快取記憶體與其他電路。各核心單元910可支援一或多個指令集(例如x86指令集(具有已經被加入更新版本的一些延伸物));一MIPS指令集;一ARM指令集(具有選擇性附加延伸諸如NEON))或其他指令集或其等之組合物。注意一些核心單元可為異質性資源(例如,有不同的設計)。此外,各個此等核心可與一快取記憶體(未顯示)耦接,其在一個實施例中可為一共享階層二(L2)快取記憶體。一非暫時性儲存器930可使用來儲存各種程式與其他資料。例如,此儲存器可使用來儲存微代碼的至少部分、啟動資訊諸如BIOS、其他系統軟體或者等等。
各核心單元910亦可包括一介面,諸如用於使得能夠與處理器的附加電路互連的一匯流排介面單元。在一實施例中各核心單元910與一同調性交換(fabric)耦接,其可作為一主要快取同調性晶粒上互連件,接著與一記憶體控制器935耦接。接著,記憶體控制器935控制與一記憶體的通訊,諸如一DRAM(為了簡化圖9的例示說明並未示出)。
除了核心單元之外,附加的處理器引擎存在於處理器中,包括至少一圖形單元920,該圖形單元920可包括可進行圖形處理且可能可執行在圖形處理器上通用之操作(被稱為GPGPU操作)的一或多個圖形處理單元(GPU)。此外,可存在至少一影像訊號處理器925 。訊號處理器925可組配為可處理從SoC內部或者晶片外部所接收之一或多個擷取裝置的進入影像資料。
亦可存在其他加速器。在圖9中的例示說明中,一視訊編碼器950可進行編碼操作,包括對視訊資訊加密與解密,例如,針對高解析視訊內容提供硬體加速支援。一顯示器控制器955進一步可提供以使顯示操作加速,包括針對一系統的內部與外部顯示器提供支援。此外,可存在一安全性處理器945以進行安全性操作,諸如安全啟動操作、各種密碼學操作等等。
該等單元各者可具有經由一電力管理器940所控制的電力消耗,電力管理器940可包括用於進行在此描述之各種電力管理與遙測資料通訊技術的控制邏輯。
在一些實施例中,SoC900可進一步包括與同調性交換耦接的一非同調纖維,各種周邊裝置可與該非同調交換耦接。一或多個介面960a至960d使得能與一或多個晶片外裝置通訊。此等通訊可經由各種通訊協定諸如PCIe™、 GPIO、 USB、 I2 C、 UART、 MIPI、 SDIO、 DDR、 SPI、 HDMI、其他類型的通訊協定。雖然在圖9的實施例中顯示的是如此高階層,可以理解本發明的範圍不限定在此方面。
現在參照圖10,所顯示的是一代表性SoC的方塊圖。在所顯示的實施例中,SoC 1000可為多核心SoC,該多核心SoC組配為用於低電力操作以使得在併入一智慧型手機或諸如平板電腦之其他低電力裝置或其他可攜帶計算裝置能最佳化。作為一個範例,SoC 1000可使用非對稱或不同類型的核心來實施,諸如較高電力及/或低電力核心的組合,例如,無序核心與有序核心。在不同實施例中,此等核心可基於一英特爾® 架構TM 核心設計,或一ARM架構設計。在其他實施例中,可在一給定SoC中實施混合英特爾與ARM核心。
如圖10中可見,SoC 1000包括具有複數個第一核心1012a至1012d的一第一核心域1010。在一範例中,此等核心可為諸如有序核心之低電力核心。在一實施例中,此等第一核心可實施為ARM Cortex A53核心。接著,此等核心與核心域1010的一快取記憶體1015耦接。此外SoC 1000包括一第二核心域1020。在圖10的例示說明中,第二核心域1020具有複數個第二核心1022a至1022d。在一範例中,此等核心相較於第一核心1012可為較高電力消耗核心。在一實施例中,該等第二核心可為無序核心,其可實施為ARM Cortex A57核心。接著,此等核心與核心域1020的一快取記憶體1025耦接。注意雖然顯示在範例10中的範例在各個域中包括4個核心,可以理解在其他範例中的一給定域中可存在更多或更少的核心。
進一步參照圖10,亦可提供一圖形域1030,其包括至組配為可獨立地執行圖形工作負載,例如由核心域1010與1020所提供的一或多個核心,的一或多個圖形處理單元(GPU)。作為一範例,GPU域1030除了可提供圖形與顯示成像操作之外,也可使用來針對各種螢幕尺寸來提供顯示器支援。
如可見的,各種域與一同調性互連件1040耦接,同調性互連件1040在一實施例中可為一快取同調性互連纖維,其接著與一積體記憶體控制器1050耦接。在一些範例中,同調性互連件1040可包括一共享快取,諸如一L3快取。在一實施例中,記憶體控制器1050可為用於提供用於多頻道與一晶片外記憶體之通訊的一直接記憶體控制器,諸如一DRAM的多頻道(為了簡化未於圖10的例示說明中示出)。
在不同的範例中,核心域的數量可以改變。例如,對於適合併入行動計算裝置的低電力SoC,諸如圖10中所顯示者,可存在有限數量的核心域。更進一步的,在此等低電力SoC中,核心域1020包括較高電力核心,可具有較少數量的此等核心。例如,在一實施中,兩個核心1022可提供來賦能在降低的電力消耗層級下的操作。此外,不同核心域亦可與一中斷控制器耦接以賦能在不同域之間的工作負載動態互換。
在另一其他實施例中,可以從在較大數量的核心域以及附加選擇IP邏輯,一SoC可以縮放到較高性能(與功率)等級以併入其他計算裝置,諸如桌上型電腦、伺服器、高性能計算系統、基站等。做為一個如此範例,4核心域各者可提供具有給定數量的無序核心。更進一步地,除了可選擇GPU支援以外(其作為一範例可以採取GPGPU的形式)亦可提供用於提供最佳化硬體支援以用於特定功能(例如,網路服務、網路處理、切換或等等)的一或多個加速器。此外,可存在一輸入/輸出介面以使此等加速器與晶片外組件耦接。
現在參照圖11,所顯示的是另一範例SoC的方塊圖。在圖11的實施例中,SoC 1100可包括各種電路以賦能高性能之多媒體應用程式、通訊與其他功能。如此,SoC 1100更適合用於併入一較廣多樣性的可攜帶與其他裝置,諸如智慧型手機、平板電腦、智慧TV等等。在所顯示的範例中,SoC 1100包括一中央處理單元(CPU)域1110。在一實施例中,複數個個別處理器核心可存在於CPU域1110中。作為一範例,CPU域1110可為具有4多執行緒核心的四核心處理器。此等處理器可為同質性或異直性處理器,例如低電力與高電力處理器核心的混合。
接著,一GPU域1120提供來進行在一或多個GPU中的進階圖形處理以掌控圖形與計算API。除了可在多媒體指令執行期間出現的進階計算之外,一DSP單元1130可提供一或多個電力DSP以用於掌控低電力多媒體應用程式諸如音樂回放、音頻、視訊等等。接著,一通訊單元1140可包括用於經由各種無線通訊協定而提供連接性的各種組件,無線通訊協定諸如蜂巢式通訊(包括3G/4G LTE)、無線區域通訊協定諸如藍芽TM 、IEEE802.11等等。
更進一步的,一多媒體處理器1150可使用來進行高解析視訊與音訊內容之擷取與回放,包括處理使用者手勢。一感測單元1160可包括複數個感測器及/或感測控制器以與存在於給定平台中的各種晶片外感測器介接。一影像訊號處理器1170可提供有一或多個分離ISP以對於從平台的包括有靜態與影像攝錄器之一或多個攝錄器所擷取內容而進行影像處理。
一顯示器處理器1180可提供用於連接到一給定畫素密度的高解析顯示器之支援,包括無線地傳遞內容以用於在此等顯示器上之回放的能力。更進一步的,一位置單元1190可包括具有用於多GPS衛星(constellations)之支援的一GPS接收器,以使用此等GPS接收器而提供應用程式高精確定位資訊。可以理解雖然在圖11中的範例顯示的是以此等特定集合的組件,許多變異與替代都是可能的。
現在參照圖12,所顯示的是可以被實施例使用之一範例系統的方塊圖。如所示,系統1200可為一智慧型手機或其他無線通訊器。一基頻處理器1205係組配為可對於會被該系統發送或從該系統所接收的通訊訊號進行各種訊號處理。接著,基頻處理器1205與一應用程式處理器1210耦接,其可為系統的一主要CPU,用於執行OS與其他系統軟體,除了諸如許多習知的設群媒體與多媒體app之外。應用程式處理器1210可進一步組配來進行針對該裝置的各種其他運算操作。
接著應用程式處理器1210可與一使用者介面/顯示器1220耦接,例如一觸控螢幕。此外,應用程式處理器1210可與一記憶體系統耦接,包括一非暫時性記憶體,亦即一快閃記憶體1230與一系統記憶體,亦即一動態隨機存取記憶體(DRAM)1235。如進一步可以看見的,應用程式處理器1210更進一步與一擷取裝置1240耦接,諸如可記錄視訊及/或靜態影像的一或多個影像擷取裝置。
仍參照圖12,一通用積體電路卡(UICC)1240包含一訂閱戶識別模組且可能有一安全儲存器與密碼處理器亦與應用程式處理器1210耦接。系統1200可進一步包括一安全性處理器1250,該安全性處理器1250可與應用程式處理器1210耦接。複數個感測器1225可與應用程式處理器1210耦接以使得能輸入各種感測資訊,諸如加速度計與其他環境資訊。一音訊輸出裝置1295可提供一介面以輸出聲音,例如,以聲音通訊的形式、播放或串流音訊資料等等。
如進一步例示說明,提供一近場通訊(NFC)無接觸式介面1260,其在一NFC近場中經由一NFC天線1265通訊。雖然在圖12中顯示分離的天線,可以理解在一些實施中,一天線或一不同組的天線可提供來賦能各種無線功能。
一電力管理積體電路(PMIC)1215與一應用程式處理器1210耦接以進行平台層級電力管理。為了此目的,PMIC 1215可對應用程式處理器1210發佈電力管理請求以進入所需特定低電力狀態。更進一步的,基於平台的限制,PMIC 1215亦可控制系統1200的其他組件的電力層級。
為了賦能通訊會傳輸與接收,各種電路可耦接於基頻處理器1205與一天線1290之間。特定地,可存在一射頻(RF)收發器1270與一無線區域網路(WLAN)收發器1275 。一般來說RF收發器1270可使用來根據一給定的無線通訊協定而接收與傳輸無線資料與呼叫,無線通訊協定諸如3G或4G無線通訊協定,諸如根據分碼多工多重存取(CDMA)、用於行動通訊之全球系統(GSM)、長期演進(LTE)或其他協定。此外,可存在GPS感測器1280。也可提供其他無線通訊諸如無線電訊號的接收或傳輸,例如AM/FM與其他訊號。此外,經由WLAN收發器1275,可以實現區域無線通訊。
現在參照圖13,所顯示的是實施例可以使用的另一範例係統的一方塊圖。在圖13的例示說明中,系統1300可為行動低電力系統,諸如一平板電腦、2:1平板、平板手機或其他可轉換或單獨存在的平板系統。如所例示說明者,可存在一SoC 1310且其可組配為可如用於裝置的一應用程式處理器而操作。
各種裝置可與SoC 1310耦接。在例示說明中顯示者,一記憶體子系統包括與SoC 1310耦接的一快閃記憶體1340與一DRAM 1345。此外,一觸控面板1320與該SoC 1310耦接以經由處碰而提供顯示能力與使用者輸入,包括在觸控面板1320的一顯示器上提供一虛擬鍵盤。為了提供有線網路的連接性,SoC 1310與一乙太網介面1330耦接。一周邊集線器1325與SoC 1310耦接以使得能與各種周邊裝置介接,諸如可藉由任何各種埠或者其他連接器而與系統1300耦接。
除了在SoC 1310內的內部電力管理電路與功能性以外,一PMIC 1380與SoC 1310耦接以提供平台式電力管理,例如基於系統是由電池1390或經由一AC轉接器1395的AC電力來啟動。除了此電力資源式電力管理之外,PMIC 1380可進一步基於環境與使用條件而進行平台電力管理活動。更進一步地,PMIC 1380可傳送控制與狀態資訊到SoC 1310以致使在SoC 1310之內的各種電力管理動作。
仍然參照圖13,為了提供無線能力,一WLAN單元1350可與SoC 1310耦接且接著與一天線1355耦接。在各種實施中,WLAN單元1350可根據一或多個無線協定而提供來用於通訊。
如更進一步的例示說明,複數個感測器1360可與SoC 1310耦接。此等感測器可包括各種加速計、環境與其他感測器,包括使用者手勢感測器。最後,一音訊編碼解碼器(codec)1365與SoC 1310耦接以提供到一音訊輸出裝置1370的介接。當然可理解雖然在圖13中所顯示的是此特定實施,許多改變與替代都是可能的。
現在參照圖14,所顯示的是一代表性電腦系統的一方塊圖,電腦系統諸如筆記型電腦、超極致電腦™或其他小型態因子的系統。在一實施例中,一處理器1410包括一微處理器、多核心處理器、多執行緒處理器、一超低電壓處理器、一 遷入是處理器或其他已知處理元件。在所例示的實施中,處理器1410作為用於與系統1400的許多各種組件通訊的一主要處理單元與中央集線器,且可包括如在此描述的電力管理電路。作為一範例,處理器1410實施為一SoC。
在一實施例中,處理器1410與一系統記憶體1415通訊。作為例示性範例,系統記憶體1415經由多個記憶體裝置或模組來實施以提供用於給定數量的系統記憶體。
為了提供資訊的持續性儲存,資訊諸如資料、應用程式、一或多個作業系統等等,一大量儲存器1420亦可與處理器1410耦接。在各種實施例中,為了能夠達到更薄與更輕的系統設計且提升系統回應性,此大量儲存器可經由SSD來實施或者大量儲存器可主要是使用具有較小量的SSD儲存器的硬碟驅動機以作為一SSD快取來實施,而能夠在電力關閉事件期間使的上下文狀態與其他此等資訊非揮發性地儲存,因此在系統活動的重新啟始時能夠產生較快的通電。亦顯示在圖14中,一快閃裝置1422可與處理器1410耦接,例如經由一序列周邊介面(SPI)。此快閃裝置可提供以用於系統軟體的非揮發性儲存,包括基本輸入/輸出軟體(BIOS)以及系統的其他韌體。
各種輸入/輸出(I/O)裝置可存在於系統1400中。特定地,顯示在圖14之實施例中的為一顯示器1424,該顯示器1424可為一高解析度LCD或LED面版,可進一步提供用於觸控螢幕1425。在一實施例中,顯示器1424可經由一顯示器互連件而與處理器1410耦接,互連見可實施為一高性能圖形互連件。觸控螢幕1425可經由另一互連件與處理器1410耦接,另一互連件在一實施例中可以是I2 C互連件。如進一步在圖14中顯示者,除了觸控螢幕1425以外,以觸控方式的使用者輸入亦可以經由觸控板1430而發生,觸控板1430可組配為可在機箱內且可如同觸控螢幕1425與同樣的I2 C互連件耦接。
為了感知計算與其他用途,各種感測器可呈現在系統中且可以不同方式與處理器1410耦接。特定內部與環境感測器可透過一感測器集線器1440,例如,I2 C互連件,而與處理器1410耦接。在圖14中所顯示的實施例中,此等感測器可包括一加速器1441、一周圍光感測器(ALS)1442、一羅盤1443與陀螺儀1444。其他環境感測器可包括一或多個熱感測器1446,在一些實施例中該一或多個熱感測器1446可經由一系統管理匯流排(SMBus)匯流排而與處理器1410耦接。
亦在圖14中可以看見的,各種周邊裝置可經由一低針腳數(LPC)互連件與處理器1410耦接。在所顯示的實施例中,各種組件可透過一嵌入式控制器(EC)1435耦接。此等組件可包括一鍵盤1436(例如,經由一PS2介面耦接)、一風扇1437以及一熱感測器1439。在一些實施例中,觸控板1430亦可經由一PS2介面與EC 1435耦接。此外,一安全性處理器亦可經由此LPC互連件與處理器1410耦接,安全性處理器諸如一受信賴平台模組(TPM)1438。
系統1400可以包括無線地之各種方式與外部裝置通訊。在圖14中所顯示的實施例中,存在各種無線模組,其中各者可對應至用於特定無線通訊協定的無線電組態。用於在諸如近場之短程中無線通訊的一種方式可經由一NFC單元1445,在一實施例中,該NFC單元1445可經由一SMBus與處理器1410通訊。注意經由此NFC單元1445,在彼此附近的裝置可以通訊。
如進一步於圖14中可看見的附加無線單元可包括其他短程無線引擎,包括WLAN單元1450與藍牙TM 單元1452。使用WLAN單元1450可以實現Wi-FiTM 通訊,同時經由藍牙TM 單元1452可以發生短程藍牙TM 通訊。此等單元可經由一給定鏈路與處理器1410耦接。
此外,無線廣域通訊,例如,根據一蜂巢式或其他無線廣域協定可經由WWAN單元1456發生,其可接著與訂閱戶識別模組1457耦接。此外,為了能夠接收與使用位置資訊,也可存在一GPS模組1455。注意在圖14中所顯示的實施例中,WWAN單元1456與諸如攝錄器模組1454的一積體擷取裝置可經由一給定鏈路通訊。
為了提供用於音訊輸入與輸出,一音訊處理器可經由一數位訊號處理器(DSP)1460來實施,該DSP1460可經由一高解析音頻(HAD)鏈路而與處理器1410耦接。類似地,DSP1460可與一積體編碼器/解碼器(CODEC)與放大器1462通訊,放大器1462接著可與輸出揚聲器1463耦接,該輸出揚聲器1463 可在機箱內實施。類似地,放大器與CPDEC1462可與一麥克風1465耦接來從而接收音頻輸入,該麥克風1465在一實施例中可經由雙陣列麥克風(諸如數位麥克風陣列)來實施,以提供高品質音訊輸入而致能在系統中各種操作之聲音啟動控制。亦注意音頻輸出可從放大器/CODEC1462提供給一耳機孔1464。雖然以此等特定組件顯示在圖14中的實施例中可以理解本發明的範圍不應限定於此。
實施例可以許多不同系統類型來實施。現在參照圖15,所顯示的是根據本發明之一實施例的一系統的一方塊圖。如圖15中所顯示者,多處理器系統1500為一點對點互連系統,且包括經由一點對點互連件1550耦接的一第一處理器1570與一第二處理器1580。如圖15中所顯示,處理器1570與1580個者可為多核心處理器,包括第一與第二處理器核心(亦即,處理器核心1574a與1574b與處理器核心1584a與1584b)雖然處理器中很可能存在有更多核心。處理器各者可包括用於進行在此描述之處理器式電力管理與搖測資料通訊技術的一PCU或其他電力管理邏輯。
仍然參照圖15,第一處理器1570進一步包括一記憶體控制器集線器(MCH)1572與點對點(P-P)介面1576與1578。類似地,第二處理器1580包括一MCH 1582與P-P介面1586與1588。如圖15中所顯示者,MCH 1572與1582將處理器耦接到個別記憶體,亦即記憶體1532與記憶體1534,其可為局部地附接到個別處理器的系統記憶體(例如,DRAM)的一部分。第一處理器1570與第二處理器1580可經由P-P互連件1562與1564分別耦接到一晶片組1590。如圖15中所示,晶片組1590包括P-P介面1594與1598。
更進一步地,晶片組1590包括一介面1592以經由一P-P互連件1539將該晶片組1590耦接到一高性能圖形引擎1538。接著,晶片組1590可經由一介面1596與一第一匯流排1516耦接。如圖15中所顯示者,各種輸入/輸出(I/O)裝置1514可連同將第一匯流排1516與一第二匯流排1520耦接的一匯流排橋接器1518而與第一匯流排1516耦接。在一實施例中,各種裝置可與第二匯流排1520耦接,包括,例如一鍵盤/滑鼠1522、通訊裝置1526與一資料儲存單元1528,資料儲存單元1528諸如可包括代碼1530的磁碟驅動機或其他大量儲存裝置。更進一步地,一音訊I/O 1524可與第二匯流排1520耦接。實施例可併入其他類型的系統,包括諸如智慧型蜂巢式電話、平板電腦、超極致電腦™等等之行動裝置。
至少一實施例的一或多個態樣可由儲存在一機器可讀媒體內的代表性代碼來實施,該等代碼代表及/或定義在諸如一處理器之一積體電路中的邏輯。例如,機器可讀媒體可包括指令,該等指令代表在該處理器內的各種邏輯。當由一機器讀取時,該等指令可引起該機器製造該羅即已執行在此描述之技術。此等代表性被稱為「IP核心」,是可重複使用邏輯單元以用於一積體電路,可被儲存在一實體、如同硬體模型之機器可讀媒體。硬體模型可供應到各種客戶或製造商設施,客戶或製造商設施載入硬體模型到製造積體電路的製造商機器。可製造積體電路而使的電路進行與在此描述之任何實施例相關聯的操作。
現在參照圖16,所顯示的是根據本發 明知一實施例的一處理器的方塊圖。如圖16中所示,處理器1600包括一核心1610與各種核心周邊邏輯。可以理解為了簡化例示說明,僅顯示有一單一核心1610。然而,在許多實施例中,一多核心處理器包括複數個核心,各核心帶有其各自的核心周邊邏輯。在圖16中顯示之高階層中,處理器1600的組健全都實施在一單一半導體晶粒上。如可以看見的,核心1610包括一儲存器1615,其在一實施例中可唯一靜態隨機存取記憶體(SRAM),在其中儲存有該核心的各種上下文或狀態資訊。注意用字「狀態資訊」與「上下文資訊」在此事可交換地使用,且資訊是指諸如控制暫存器數值、資料資訊、暫存器儲存資訊與其他和在一核心或其他邏輯上執行的一執行緒相關聯的其他資訊。此等資訊當對應執行緒從核心切換到另一核心時,例如,由於進入一低電力狀態或轉移(migration)可以被儲存。
在一實施例中,儲存器1615可組配為可維持啟動同時核心維持在特定低電力狀態。作為一範例,儲存器1615可維持資訊同時核心處於給定低電力狀態(例如C6)且處理器封裝體處於封裝體活動狀態(C0)。然而,在其他低電力狀態中,此等電力可能不是可得的,且上下文資訊可發送到在此描述的其他儲存裝置。
核心1610進一步包括用於與一內部晶粒互連件(IDI)1670介接的一IDI介面1618。雖然為了簡化例示說明而未示出,可以理解ID I1670可將核心1610與在處理器(為了簡化圖16中的例示說明而未示出)之內的各種其他電路耦接,包括一或多個其他核心、周邊控制器集線器(PCH)、一或多個快取記憶體及/或其他非核心電路。為了提供在核心1610與可在不同頻率下操作的該處理器中其他組件之間的介接,可提供一時脈交叉邏輯1619,其在一實施例中可實施為一泡產生器先進先出(FIFO)緩衝器。
為了使得核心1610在可取用時能進入特定與更深層的低電力狀態,一第一核心周邊邏輯,亦即一交換介面邏輯(Fabric Interface Logic,FIL)1620與核心1610耦接。FIL 1620可為第一持續(sustain)電力域,在其中當該處理器的至少部分處於低電力狀態時,提供有電力與時脈訊號。如可見者,FIL 1620經由IDI 1670與第二互連件1675兩者耦接到核心1610,第二互連件1675在一實施例中為一控制暫存器互連件(CRI)。互連件1675可為相對簡單且低性能之互連件,以在用於進入與離開低電力狀態之儲存與恢復操作期間提供狀態資訊的通訊。
在圖16中所顯示的實施例中,FIL 1620包括一儲存器1622,其可實施為組配為可在該核心進入給定低電力狀態之前儲存從核心1610所接收狀態資訊的複數個暫存器。一控制邏輯1624可組配為可在同質性交換進入一低電力狀態時,維持給FIL 1620的電力直到處理器封裝體進入一較深封裝體低電力狀態(例如,封裝體C6狀態)。
仍參照圖16,一附加核心周邊邏輯為一機箱轉接器方塊(CAB)單元1630。一般來說CAB單元1630可組配為可經由一旁波帶互連件1690而提供到其他處理器與系統組件的一介面,旁波帶互連件1690的至少一部份可組配為電力管理旁波帶鏈路以使得能達到在此描述的遙測資料之控制與通訊。更進一步地,CAB單元1630可組配為在當FIL 1620本身處於低電力狀態時可儲存核心1610的狀態資訊。CAB單元1630可為第二維持電力域,在其中當處理器1600(包括FIL 1620)的其他部分處於一低電力狀態時提供電力與時脈信號。CAB單元1630包括一儲存器1632,該儲存器1632可組配為可儲存從FIL 1620所取得的狀態資訊。在一實施例中,CAB單元1630的儲存器1632可為一快速儲存陣列,例如,實施為一SRAM。
在所顯示的實施例中,CAB單元1630包括一電力管理代理者(PMA)1634,一熔絲拔除邏輯1636,該熔絲拔除邏輯1636可包括用於進行儲存與重新儲存操作的一或多個有限狀態機(FSM),當CAB單元1630本身將被放入一低電力狀態時,兩者都有儲存器1622與一記憶體階層(例如,一系統記憶體)的更多遠距部分。例如,儲存在儲存器1622中的資訊在處理器封裝體進入一固定更深封裝體低電力狀態時(例如,一封裝體C10狀態)可被沖入系統記憶體。在一實施例中,此等FSM可為SoC式FSM,由於他們使得能夠與在核心周邊邏輯SoC(且進一步在一記憶體層級的其他部分)的其他部分之間互動。注意PMA 1634可為一處理器之電力管理邏輯的一部分,PMA 1634可在CAB單元1630為通電時啟動。在一些案例中,PMA1634可與諸如一PCU或其他電力管理實體的一處理器之一主要電力控制器介接,且可包括如在此描述之一或多個遙測推動FSM與對應控制邏輯。如此一來,PMA 1634可以避免與來自其他核心/邏輯之資料有資料衝突的方式而傳送遙測資料,亦可在旁波帶互連件1690上傳送。
CAB單元1630進一步包括一事件阻擋邏輯1638,事件阻擋邏輯1638可在處理器在特定低電力狀態時阻擋進入事件。更進一步地,CAB單元1630亦包括一旁波帶介面1639,旁波帶介面1639可與旁波帶互連件1690介接。注意在各種實施例中,IDI 1670為用於容納在各種核心與SoC的其他IP方塊之間高速之主要通訊的一寬頻、高速互連件。相反地,旁波帶互連件1690可經由一較窄頻道與較低操作頻率之使用,組配來用於較低性能關鍵通訊, 諸如用於在此所描述的遙測資料與電力管理資訊的通訊。
在一實施例中,CAB單元1630的儲存器1632可允許受到PMA 1634存取或受到經由一旁波帶介面1639所接收之一經驗證存取。在一此等實施例中,此介面可包括一安全屬性識別器(SAI)邏輯,安全屬性識別器(SAI)邏輯用於判定對儲存器1632的一存取請求是否具有一驗證SAI安全性保護(例如,與該請求一起接收的SAI值與會被存取之該儲存器位置相關連的SAI值匹配)。如此一來,儲存器1632可被保護以儲存敏感內容。
在一實施例中,可應用恰當時脈邏輯到各種核心周邊邏輯,以使得其中的儲存器與邏輯在特定低電力狀態下會被存取。在一實施例中,雙重時脈邏輯可應用到持續電力域的儲存器。作為一範例,一快取同質性交換(CCF)時脈可提供於用在標準讀/寫操作之儲存器。接著,Cri時脈可提供給該儲存器以用於儲存/重新儲存操作。
可以理解一處理器可包括附加組件與電路。在圖16中的例示說明中,處理器1600進一步包括一電力遞送單元1640,電力遞送單元1640在一實施例中可包括一或多個完全積體電壓調節器、一時脈電路1650,時脈電路1650在一實施例中可實施為一相鎖回路以及一數位溫度感測器1660。如可見的,此等組件的各者可經由互連件1675與處理器1600的其他組件通訊。可以理解雖然在圖16中顯示的是此等特定處理器之實施,許多變化與替代都是可能的。
現在參照圖17,所顯示的是例示說明根據本發明之一實施例的一系統1700中遙測資料的通訊之時序圖。多核心17050 與17051 ,例如一多核心處理器可組配為可提供遙測資料給一PCU或處理器的其他電力管理器或其他SoC。為了避免再由不同核心所傳送的資料之間有訊務衝突,實施例提供的技術可確保由不同核心所傳送的遙測資料受到交錯,以致使不會發生此等衝突。
為了如圖17中所顯示的目的,回應於在時間點1720接收到時戳計數器(TSC)有效指示,諸如在處理器重設流程期間,一全球校準計數器1710(亦被稱為GAT計時器)被啟動。進一步回應於此計數器的啟動,可在對應核心中開始不同的交錯週期17250 與17251 。此等交錯週期可為不同時間值,例如從一PCU或其他控制邏輯所傳送。注意此交錯週期值的通訊可藉由PCU經由在一旁波帶頻道上的一組態寫入命令來發送。此外,核心可進一步包括一或多個延遲計數器,諸如粗略與細緻延遲計數器,其可使用來指示出在他們屆期時,一給定核心何時被允許傳送特定遙測資料。在一些實施例中,各核心的各給定延遲計數器可設定在同樣的延遲值。但是在延遲計數器的啟動之前各核心具有的不同的交錯週期,各延遲計數器會不對稱地計數(即使在同樣的頻率下操作且操作了同樣的期間(例如,計數器週期))。注意此等不同計數器與值,例如GAT計數器,延遲計數器與交錯週期可以全部都被設定在不同的值。
進一步注意,直到到達GAT計時器的閥值,不會允許核心傳送遙測資料。如將會描述的,此閥值將會以不同的方式設定。當在時間點1730達到此閥值,遙測資料的通訊,例如,經由一諸如電力管理旁波帶頻調的一旁波帶頻道被暢通。據此,在對於各核心1705之給定延遲計時器週期屆期時,其傳送遙測資料17350 /17351 作為推動會由PCU所接收的遙測資料。
注意由於給定處理器可連續運行一段長時間,例如幾個月甚至幾年,在不同核心的延遲計時器之間可能會喪失同步性,如此一來在此描述之所提供的交錯可能會被改變甚至喪失。據此,實施例進一步提供在一新的交錯校準週期時根據一給定交錯排程來同步或重新啟動交錯的技術。更精確地,當GAT計時器1710重攝,這可能在GAT計數器到達一重新啟動限制時發生,交錯週期再次發生且接著可進行不同核心的延遲計時器的重設。如此一來在此描述的交錯可再次根據一新的交錯重新啟動發生1750。可以理解雖然在圖17的實施例中所顯示的是如此高階層,許多改變或替代都是可能的。
現在參照圖18,所顯示的是根據本發明之一實施例的一延遲計時器之控制的方法的流程圖。更精確地,圖18中所顯示的方法1800可由硬體電路、韌體及/或軟體的組合來進行,諸如一PMA的延遲控制邏輯或用於控制到一PCU或其他電力控制器之遙測資料的通訊的一核心的其他電路。
如圖18中所示,藉由判定用於使得一延遲計數器(菱形1810)的啟動是否已經符合各種條件而開始方法1800。在所顯示的實施例中,此等條件包括來自系統代理者之一電力良好訊號的一指示以及GAT計數器的值大於一閥值。如以上所討論者,此閥值可對應於在GAT計數器啟動後、在允許遙測資料之通訊前的一預定時間。若在菱形1810處的判定為否,控制來到方塊1820,在此重設粗略延遲計數器。
否則,若預定條件已經符合,控制來到方塊1830,在此粗略延遲計數器可以啟動。接著判定此粗略延遲計數器的值是否滿足或超過一閥值層級(菱形1840)。若否,控制來到方塊1870,在此粗略延遲計數器被更新(例如,增量)。接著判定GAT計數器的值是否符合一重新啟動限制(菱形1880)。若此,粗略延遲計數器被重設(方塊1890),例如在一對應交錯週期發生之後。如以上所討論者,控制接著回到方塊1830。因此在此路徑中,在GAT計數器中相對長的計數期間,全球重設發生,以致使核心及/或一處理器的其他邏輯可發生他們對應交錯週期以及延遲計數器重設,以確保在此描述之交錯技術維持在所需層級的交錯。
仍參照圖18,反之,在菱形1840處若判定出粗略延遲計數器之值滿足一閥值,控制來到方塊1850。在此,PMA的一遙測推動有線狀態機(FSM)可被觸發。此觸發可引起從PMA至PCU之各種遙測資料的通訊。可以理解特定類型與格式的遙測資料可基於從PCU或其他來源所接收的資訊而收集與傳送,例如由各種組態訊息所指示者。在遙測推動FSM的觸發以後,控制來到方塊1860,在此粗略延遲計數器被重設。可以理解雖然在圖18中的實施例裡以此特定實施來顯示,許多變異與替代都是可能的。更進一步的,雖然方法1800是對於一粗略延遲計數器,可以理解對於其他延遲計數器之控制,操作可類似地進行,唯一的差異是在計數器控制與比較是針對不同延遲計數器而做出,而不是依據一粗略延遲計數器做出。
現在參照圖19,所顯示的是根據本發明之一實施例的一全球校準計時器的控制之方法的流程圖。如圖19中所顯示者,藉由例如從PCU(方塊1910)來接收一GAT值而開始方法1900。作為一範例,此值可從啟動時的PCU接收到各種核心與一處理器的其他邏輯中。此等GAT值可組配為可用於特定處理器且可包括在各種組態資訊之中,例如,如由BIOS或其他系統軟體所提供。在其他範例中,GAT值可為硬編碼,例如以在PCU中熔絲程式化的方式編碼。在任何狀況下,控制從方塊1910來到方塊1920,在此GAT值可儲存在PMA的GAT儲存器中。注意此GAT值在一實施例中可為30位元值,其中單一位元被設定為邏輯一。此值對應於交錯校準週期,且其可被使用來與一TSC值比較以判定GAT值的對應設定位元何時會在TSC計數器中設定。
接著在菱形1930處判定時戳計數器是否同步。在同步化以後,控制來到方塊1940,在此可於GAT計數器中啟動計數。在計數操作期間,在菱形1950處判定對應或匹配GAT值的設定位元時戳計數器的位元是否被設定(菱形1950)。若此,控制來到方塊1960,在此GAT計數器被重設。注意於菱形1950處的此判定亦顯示在圖18的菱形1880中。更進一步地,可以理解回應於GAT計數器的此重設,PMA的一或多個延遲計數器亦可被重設(方塊1970)例如,在一交錯期間發生後。注意此重設操作對應於圖18的方塊1890。如所顯示者,為了在下一交錯校準週期中進一步對GAT計數器進行計數操作,控制回到菱形1950。可以理解圖19的實施例中雖然是以此高層級顯示,許多變化與替代都是可能的。
現在參照圖20,所顯示的是根據本發明之一實施例的PMA 2000的一方塊圖。此等PMA可包括在一核心或一處理器的其他邏輯中。可以理解各核心活其他邏輯可包括類似地配置之PMA。當然在其他實施例中,不是一分離的PMA,圖20中所顯示的電路可實施在一核心/邏輯的其他電路之中。
如所例示者,PMA 2000包括各種儲存器,包括一或多個遙測組態暫存器2010、一遙測遮罩暫存器2020與一PMA命令暫存器2030。遙測組態暫存器2010可組配為可儲存如在此所描述之與遙測資料收集、處理與通訊相關連的各種組態資訊。遙測遮罩暫存器2020可組配為可儲存用於指示出將會/或不會被收集/傳送之對應遙測資料的遙測遮罩資訊。接著PMA命令暫存器2030可組配為可儲存用於指示出遙測資料是被致能/停用於操作的致能資訊之至少部分。
仍參照圖20,PMA 2000進一步包括一交錯控制邏輯2040。在各種實施例中,交錯控制邏輯2040可受組配為,例如至少部分基於在遙測組態暫存器2010中的資訊而進行經由一旁波帶頻道的通訊交錯的控制,旁波頻道如在此描述之一電力管理旁波帶。如所例示說明者,交錯控制邏輯2040包括各種儲存器或計數器,其在一實施例中可組配為增量計數器。特定地,連同細緻延遲計數器2044,存在有一粗略延遲計數器2042。此外,存在一GAT計數器2045。可以理解雖然圖20中的實施例所顯示的是此等特定計數器,附加及/或不同的計數器在給定實施例中存在。在一實施例中,交錯控制邏輯2040可進行方法1800與1900。為了影響此等操作,交錯控制邏輯2040接收TSC值與電力良好訊號。當然可接收其他訊號且受到交錯控制邏輯2040所使用。
如在此所描述者,當一給定延遲計數器滿足其閥值,發送一觸發到一遙測資料控制邏輯2050。在各種實施例中,遙測資料控制邏輯2050可組配為可維持遙測資料,例如庾複數個不同計數器類型相關連者,諸如一或多個核心活動計數器、一或多個核心非活動計數器等等。接著回應於接收到此觸發訊號,此邏輯的一推動FSM可發送一或多個遙測資料報告作為一遙測資料推動通訊,例如,經由一旁波帶匯流排。可以理解雖然在圖20中的實施例所顯示者是此等高階層,許多變化與替代都是可能的。
參照圖21,所顯示的是根據一實施例之PCU的一部分之方塊圖。PCU 2100包括用於進行在此所描述之遙測資料控制、接收與處理的各種電路。如所例示者,PCU 2100包括一組組態暫存器2110。此等暫存器的至少一些可包括會在PCU 2100中使用的遙測資料組態資訊,以及會被傳送到各種PMA的其他電路或核心/邏輯的其他電路,以使得他們對遙測資料的收集與通訊之組態是可能的。
如進一步例示說明者,PCU 2100包括一旁波帶通訊邏輯2120,其可組配為可控制經由一電力管理旁波帶頻道的通訊。如可見的,此等旁波帶可使用來傳送組態資訊、控制資訊以及遙測資料。當遙測資料被接收到旁波帶通訊邏輯2120中,其可以提供給資料處理邏輯2130,資料處理邏輯2130可將近入遙測資料封包拆卸且將其進行相應處理,例如,將其與先前獲得資料累加或者等等。
此等處理後的遙測資料可提供給一電力控制邏輯2140,電力控制邏輯2140可組配來至少部分基於此遙測資料而控制電力管理操作,諸如使得核心或其他邏輯會被放置到特定活動或非活動狀態中。例如當遙測資料指示出在一核心中發生一溫度條件,電力控制邏輯2140可產生會經由旁波帶通訊邏輯2120而提供給核心的控制資訊,以使得核心更新核心的一或多個操作參數,諸如頻率及/或電壓。作為一範例,控制資訊可引起核心進入一較低性能狀態(在較低頻率及/或電壓),以致使能解決溫度條件。當然,許多其他控制技術是可能的。可以理解雖然在圖21中所顯示的是如此高階層,許多改變與替代是可能的。
現在參照表1,所顯示的是根據一實施例之用於遙測資料通訊的範例格式。更精確地,由於可能會較快更新此等資訊,表1顯示出用於在被稱為快速遙測資料之通訊的一遙測資料格式,也就是會以較高頻率傳送的資料。可以理解在一實施例中,此遙測資料格式可作為將會被儲存在一組態暫存器中的組態資訊而從一PCU傳送到一給定核心或其他邏輯 。表1
以上如表1中可以看出,用於快速遙測資料的此資料格式提供用於定址資訊(諸如用於給定核心之PMA的一來源ID以及可能是在PCU中之一位置的目的地)、寫入類型與帶有對應識別符之遙測資料的特定類型。快速遙測資料的範例可包括,在一實施例中,C0常駐、舊版指令以及等等。雖然本發明的範圍不限定在此方面,在一實施例中一快速延遲計數器可組配為引起此等快速遙測資料會在大約10微秒與100微秒之間通訊。
現在參照表2,所顯示的是用於被稱為慢速遙測資料通訊的範例格式,亦即由於可能會較慢更新此等資訊而以較低頻率(例如,溫度資訊)傳送的資料。表2
以上如表2中可以看出,用於慢速遙測資料的此資料格式提供用於定址資訊、寫入類型與帶有對應識別符之遙測資料的特定類型。慢速遙測資料的範例可包括,在一實施例中,溫度資訊、目前層級以及等等。雖然本發明的範圍不限定在此方面,在一實施例中一慢速延遲計數器可組配為引起此等慢速遙測資料會在大約100微秒與1000微秒之間通訊。
附加組態資訊可從PCU傳送到核心或其他邏輯以控制遙測推動組態。現在參照表3,所顯示的是一組態儲存器,其提供關於延遲值、格式與取樣模式資訊的資訊之例示說明。表 3
如表4中所例示者,此遙測組態資訊的各種欄位在一實施例中可提供下列編碼。表 4
因此如表4中所例示說明者,遙測資料取樣可根據一週期性排程或單一取樣(一次性)作出。格式可包括訊息資料與一控制暫存器寫入,訊息資料提供遙測資料。此外,如以上所詳述可提供各種延遲值。
現在參照表5,所顯示的是根據一實施例的一遙測遮罩暫存器的範例格式。此遙測遮罩暫存器,如以下表5與6中所詳述者,可使用來提供關於會被收集/傳送之特定類型的遙測資料之一指示。表5
參照表6,所顯示的是對表5中所識別的遙測遮罩資訊的範例編碼或位元描述。表6
以下的表7顯示範例可儲存在PMA的命令暫存器或其他位置中的致能/失能遙測資訊。在一實施例中,遙測通訊可在當處理器進入特定低電力狀態時失能,諸如一封裝體低電力狀態。類似地,可在當處理器離開此等低電力狀態時能進行遙測通訊。類似地,溫度遙測通訊可以相同的方式來致能/失能。
在特定實施例中,只要核心時脈未停止,遙測資料在其上通訊的旁波帶通訊鏈路上可為活動的。雖然本發明的範圍不限定於此,讀取此遙測資料可能採取給定數量的時脈循環。若在一汲取處理器完成前(例如,全球觀測汲取)觸發遙測讀取,遙測讀取可繼續且一停止時脈操作將會被延遲直到此等遙測資料讀取完成。替代地,若遙測讀取在此汲取程序完成之後才觸發,遙測讀取處理本身會受到延遲。
在一實施例中,當核心在特定低電力狀態(例如核心C6狀態)慢速遙測資料不受到這樣的狀態影響。然而,快速遙測資料可受到影響。可能在此狀態出現兩個角落案例。首先,假設核心處於C6狀態且一延遲計時器已經屆期。因為在此情況中所有快速遙測資料為零,不需要從核心通訊。在另一案例中,假設核心接收到要進入C6狀態的一請求同時其具有有效遙測資料。為了避免遺失此等資料,回應於接收到此低電力狀態請求,遙測資料可在不參考延遲計數器的狀況下被發送。在一些案例中,核心可發送一請求來增加在進入低電力狀態前的時間長度以使得所有此等遙測資料在進入低電力狀態前能被傳送。當然在其他實施例中,其他選擇也是可能的。表7
根據本發明之一實施例的一或多個GAT計數器暫存器可提供在來自一子系統(例如,核心)與另一者之間遙測通訊之間的延遲值。現在參照表8,一GAT重新啟動暫存器提供關於當GAT計數器會被重設時,接著會開始一新的交錯校準週期的資訊。表 8
表9提供用於此GAT重新啟動暫存器之限制與取樣模式欄位的編碼資訊。表 9
以下範例涉及進一步實施例。
在一範例中,一處理器包含:用於執行指令的複數個核心,該等複數個核心的至少若干者包括一遙測資料控制邏輯與一全球校準(GAT)計數器,該遙測資料控制邏輯用於根據一交錯排程而發送一第一遙測資料封包到一電力控制器以避免資料衝突,該全球校準計數器用於計數一交錯校準週期;以及該電力控制器用於從該等複數個核心中的至少若干者根據該交錯排程而接收該第一遙測資料封包。
在一範例中,該等複數個核心中的至少若干者進一步包含用於計數一第一延遲週期的一第一延遲計數器,在此,該遙測資料控制邏輯係用於回應於該第一延遲週期屆期而發送該第一遙測資料封包。
在一範例中,該等複數個核心中的一第一核心包含一電力管理代理者,該電力管理代理者包括一交錯控制邏輯,該交錯控制邏輯包括該GAT計數器與該第一延遲計數器。
在一範例中,該交錯控制邏輯係用於至少部分基於該第一延遲計數器而避免該資料衝突,在此,該等複數個核心中的至少若干者之各者的該第一延遲計數器會根據該交錯排程而受到控制。
在一範例中,該電力管理代理者包含用於儲存組態資訊的一遙測組態暫存器,該組態資訊用於提供針對該第一遙測資料封包的一格式。
在一範例中,該電力管理代理者包含用於儲存遙測遮罩資訊的一遙測遮罩暫存器,以指示出要避免傳送到該電力控制器的遙測資料之一或多個類型。
在一範例中,該電力管理控制器包含一旁波帶通訊邏輯,該旁波帶通訊邏輯用於發送該組態資訊到該等複數個核心之至少若干者且從該等複數個核心之至少若干者接收該第一遙測資料封包。
在一範例中,該交錯校準週期對應於該處理器的一時戳計數器的一閥值。
在一範例中,該遙測資料控制邏輯係用於使得該GAT計數器能回應於該時戳計數器的同步,且用於在該GAT計數器被致能後的一交錯週期以後,致能該第一延遲計數器,該等複數個核心之至少若干者的各者與一不同交錯週期相關連。
在一範例中,該電力控制器進一步包含一電力控制邏輯,該電力控制邏輯用於至少部分基於從該等複數個核心的至少若干者處所接收之該第一遙測資料封包而接收熱資訊,且引起該等複數個核心的至少一者之至少一操作參數會回應於該熱資訊而受到更新。
注意以上的處理器可使用各種構件來實施。
在一範例中,處理器包含併入一使用者設備能觸控之裝置的一SoC。
在另一範例中,一系統包含一顯示器與一記憶體,且包括以上範例的一或多個處理器。
在另一範例中,一種方法包含:啟始在一處理器的一第一核心之一全球校準(GAT)計數器中的計數,該GAT計數器用於維持在該處理器之複數個核心之間的交錯排程;至少部分基於該第一核心的一第一延遲計數器之值,從該第一核心將遙測資料傳送到該處理器的一電力控制器,以避免遙測資料與該處理器之該等複數個核心之一或多個其他核心的遙測資料衝突;判定該GAT計數器的一對應部分之值是否匹配該處理器的一時戳計數器的一時戳計數器值;以及回應於判定出該GAT計數器的該對應部分的該值與該時戳計數器值的該第一部分匹配而重設該GAT計數器。
在一範例中,該方法進一步包含回應於該處理器的該時戳計數器之同步而將該GAT計數器初始化。
在一範例中,該方法進一步包含當該GAT計數器到達一第一值時,使該遙測資料能被傳送到該電力控制器。
在一範例中,該方法進一步包含:回應於該GAT計數器之該計數的啟始而啟始一交錯。
在一範例中,該方法進一步包含:回應於該第一核心的一遙測遮罩暫存器之一第一部分的值,而避免從該第一核心傳送第二遙測資料到該電力控制器,以及回應於該遙測遮罩暫存器的一第二部分之一第一值而從該第一核心傳送該遙測資料到該電力控制器。
在一範例中,該方法進一步包含回應於要該第一核心進入一低電力狀態的一請求,無論該第一延遲計數器的值為何,從該第一核心傳送該遙測資料到該電力控制器。
在一範例中,該方法進一步包含至少部分基於該第一核心的一第二延遲計數器之值從該第一核心傳送第二遙測資料到該電力控制器,該第二遙測資料包含不同於該遙測資料的遙測欄位,其中,該第二遙測資料會以不同於該遙測資料的週期性而被傳送到該電力控制器。
在另一範例中,包括指令的一電腦可讀媒體係用於進行以上範例任何一者的方法。
在另一範例中,包括資料的一電腦可讀媒體用於由至少一機器來使用,而製造出可進行以上範例任何一者之方法的至少一積體電路。
在另一範例中,包含用於進行以上範例任何一者之方法的一種設備。
在另一範例中,一系統包含:一處理器,該處理器具有:一第一核心,該第一核心包括用於計數一交錯校準週期的一第一計數器、用於計數一第一推送週期的一第二延遲計數器以及用於回應於在該第一延遲計數器中的該第一推送週期屆期時,發送一第一遙測資料封包的一第一控制邏輯;一第二核心,該第二核心包括用於計數該交錯校準週期的一第二計數器以及用於計數該第一推送週期的一第二延遲計數器,以及用於回應於在該第二延遲計數器中的該第一推送週期屆期時,發送一第二遙測資料封包的一第二控制邏輯,在此,在該第二延遲計數器中的該第一推送週期的屆期與在該第一延遲計數器中的該第一推送週期的屆期交錯的,以避免資料衝突;以及一電力控制器,該電力控制器用於接收該第一遙測資料封包與該第二遙測資料封包,且至少部分基於在該第一遙測資料封包與該第二遙測資料封包中的遙測資訊而引起對該第一核心與該第二核心中之至少一者的至少一操作參數的更新。該系統進一步包括與該處理器耦接的一管理控制器。
在一範例中,該電力控制器係用於傳送該遙測資訊的至少若干者到該管理控制器。
在一範例中,該第一控制邏輯係用於進行下列動作:回應於該處理器的一時戳計數器的同步而致能該第一計數器;在該第一計數器致能後的一交錯週期以後致能該第一延遲計數器;回應於在該第一計數器到達一第一值之後該第一推送週期之屆期,使該第一控制邏輯發送該第一遙測資料封包;以及回應於該第一計數器的值之一第一部分與一時戳計數器值的一第一部分匹配而重設該第一計數器,且在該第一計數器的重設後之一交錯週期以後,引起該第一延遲計數器的重設。
可以理解以上範例的各種組合是可能的。
實施例可以代碼來實施且可儲存在其內儲存有指令的非暫時性儲存媒體中,該儲存媒體可可被使用來程式化一系統以進行該等指令。實施例亦可在資料中時師且可儲存在非暫時性儲存媒體中,若由至少一機器使用時將引起至少一機器製造可進行一或多個操作的至少一積體電路。儲存媒體可包括但不限定於任何類型的磁碟,包括軟碟、光碟、固態硬碟(SSD)、僅讀記憶體壓縮碟(CD-ROM)、可重新寫入壓縮碟(CD-RW)以及磁光碟、半導體裝置諸如僅讀記憶體(ROM)、諸如動態隨機存取記憶體(DRAM)的隨機存取記憶體(RAM)、靜態隨機存取記憶體(SRAM)、可抹除可程式化僅讀記憶體(EEROM)、快閃記憶體、電子可抹除可程式化僅讀記憶體(EEPROM)、磁卡或光卡、或適合用於儲存電子指令的任何其他類型之媒體。
雖然本發明是以有限數量的實施例來描述,習於此技藝者將可理解由其而來的許多修改與改變。附加的申請專利範圍意欲涵蓋落入本發明真實意涵與範圍之內的所有修改與改變。
100、1200、1300、1400、1700‧‧‧系統
110、200、400、900、1410、1600‧‧‧處理器
120a~120n、210a~210n、310a~310n、401、402、600、700、800、1610、1705‧‧‧核心
125a~125n‧‧‧積體電壓調節器(IVR)
132‧‧‧輸入/輸出介面(IF)
134、250a~250n、1592、1596‧‧‧介面
136、370‧‧‧積體記憶體控制器(IMC)
138、255、355、460‧‧‧電力控制單元(PCU)
150‧‧‧電力供應器
160‧‧‧電壓調節器
162、163‧‧‧數位介面
215、1539、1550、1675‧‧‧互連件
220‧‧‧非核心
230、410、550、820‧‧‧快取
240‧‧‧IMC
310‧‧‧核心域
320‧‧‧圖形域
330‧‧‧環形互連件
340a~340n‧‧‧最後階層快取(LLC)
350‧‧‧系統代理域
352‧‧‧控制器
401a、401b‧‧‧執行緒/執行緒槽/處理器
402b、2110‧‧‧暫存器
405‧‧‧匯流排介面模組
420、450、680‧‧‧緩衝器
425‧‧‧解碼模組/邏輯
430‧‧‧重新命名方塊
435‧‧‧重新排序/舊版單元
440‧‧‧排程器/執行單元方塊/處理器
470、935、1050‧‧‧記憶體控制器
500‧‧‧處理器核心
501、710、810‧‧‧提取單元
503、610‧‧‧指令快取
505、615‧‧‧指令解碼器
510‧‧‧前端單元
515‧‧‧無序(OOO)引擎
520‧‧‧執行單元
522‧‧‧算術邏輯單元(ALU)
524‧‧‧向量執行單元
530‧‧‧暫存器檔案
535‧‧‧延伸暫存器檔案
538‧‧‧機器特定暫存器(MSR)
540‧‧‧重新排序緩衝器(ROB)
605‧‧‧分支預測器
618‧‧‧微代碼ROM
620‧‧‧發布佇列(IQ)
630‧‧‧浮點數管線
632‧‧‧浮點數(FP)暫存器檔案
634‧‧‧浮點數排程器
635、645‧‧‧ALU
636‧‧‧置換單元
638‧‧‧浮點數加法器
640‧‧‧管線
642‧‧‧整數(INT)暫存器檔案
644‧‧‧整數執行(IE)排程器
646‧‧‧位移單元
648‧‧‧跳躍執行單元(JEU)
650‧‧‧記憶體執行排程器
652‧‧‧AGU
654‧‧‧TLB
660‧‧‧資料快取
670‧‧‧分配器/重新命名器
715‧‧‧解碼單元
725、830‧‧‧發布邏輯
730、825‧‧‧佇列
735‧‧‧整數單元
740、840‧‧‧乘法單元
750、850‧‧‧浮點數/向量單元
760‧‧‧雙發布單元
770、870‧‧‧載入/儲存單元
780、880‧‧‧回寫(WB)單元
815‧‧‧調度單元
835‧‧‧整數單元
860‧‧‧分支單元
910a~910n‧‧‧核心單元
920‧‧‧圖形單元
925‧‧‧訊號處理器
930…非暫時性儲存器
940‧‧‧電力管理器
945‧‧‧安全處理器
950‧‧‧視訊編碼器
955‧‧‧控制器
960a~960d‧‧‧介面
1000、1100、1310‧‧‧SoC
1010‧‧‧第一核心域
1012a~1012d‧‧‧第一核心
1015、1025‧‧‧快取記憶體
1020‧‧‧第二核心域
1022a~1022d‧‧‧第二核心域
1030‧‧‧圖形/GPU域
1040‧‧‧同調性互連件
1100‧‧‧中央處理單元(CPU)域
1120‧‧‧GPU域
1130‧‧‧DSP單元
1140‧‧‧通訊單元
1150‧‧‧多媒體處理器
1160‧‧‧感測單元
1170‧‧‧影像訊號處理器
1180‧‧‧顯示器處理器
1190‧‧‧位置單元
1205‧‧‧基頻處理器
1210‧‧‧應用程式處理器
1215‧‧‧電力管理積體電路(PMIC)
1220‧‧‧使用者介面/顯示器
1225、1255、1360‧‧‧感測器
1230‧‧‧快閃記憶體
1235‧‧‧動態隨機存取記憶體(DRAM)
1240‧‧‧擷取裝置/通用積體電路卡(UICC)
1250‧‧‧安全性處理器
1260‧‧‧近場通訊(NFC)無接觸式介面
1265‧‧‧NFC天線
1270‧‧‧射頻(RF)收發器
1275‧‧‧無線區域網路(WLAN)收發器
1280‧‧‧GPS感測器
1290、1355‧‧‧天線
1295‧‧‧音訊輸出裝置
1320‧‧‧觸控面板
1325‧‧‧周邊集線器
1330‧‧‧乙太網介面
1340‧‧‧快閃記憶體
1345‧‧‧DRAM
1350‧‧‧WLAN單元
1365‧‧‧音訊編碼解碼器
1370‧‧‧音訊輸出裝置
1380‧‧‧PMIC
1390‧‧‧電池
1395‧‧‧AC轉接器
1415‧‧‧系統記憶體
1420‧‧‧大量儲存器
1422‧‧‧快閃裝置
1424‧‧‧顯示器
1425‧‧‧觸控螢幕
1430‧‧‧觸控板
1435‧‧‧嵌入式控制器
1436‧‧‧鍵盤
1437‧‧‧風扇
1438‧‧‧受信賴平台模組(TPM)
1439‧‧‧熱感測器
1440‧‧‧感測器集線器
1441‧‧‧加速器
1442‧‧‧ALS
1443‧‧‧羅盤
1444‧‧‧陀螺儀
1445‧‧‧NFC單元
1446‧‧‧熱感測器
1450‧‧‧WLAN單元
1452‧‧‧藍牙單元
1454‧‧‧攝錄器模組
1455‧‧‧GPS模組
1457‧‧‧SIM模組
1456‧‧‧WWAN單元
1460‧‧‧DSP
1462‧‧‧放大器/CODEC
1463‧‧‧輸出揚聲器
1464‧‧‧耳機孔
1465‧‧‧麥克風
1500‧‧‧多處理器系統
1514‧‧‧I/O裝置
1516‧‧‧第一匯流排
1518‧‧‧匯流排橋接器
1520‧‧‧第二匯流排
1522‧‧‧鍵盤/滑鼠
1524‧‧‧音訊I/O
1526‧‧‧通訊裝置
1528‧‧‧資料儲存單元
1530‧‧‧代碼
1532、1534‧‧‧記憶體
1538‧‧‧圖形引擎
1562‧‧‧P-P互連件
1570‧‧‧第一處理器
1572‧‧‧MCH
1574a、1574b、1584a、1584b‧‧‧處理器核心
1576、1578、1586、1588‧‧‧(P-P)介面
1580‧‧‧第二處理器
1582‧‧‧MCH
1590‧‧‧晶片組
1594、1598‧‧‧P-P介面
1615、1622、1632‧‧‧儲存器
1618‧‧‧內部晶粒互連件(IDI)介面
1619‧‧‧時脈交叉邏輯
1620‧‧‧交換介面邏輯(FIL)
1624…控制邏輯
1630‧‧‧機箱轉接器方塊(CAB)單元
1634‧‧‧電力管理代理者(PMA)
1636‧‧‧熔絲拔除邏輯
1638‧‧‧事件阻擋邏輯
1639‧‧‧旁波帶介面
1640‧‧‧電力遞送單元
1650‧‧‧時脈電路
1660‧‧‧數位溫度感測器
1670‧‧‧IDI
1690‧‧‧旁波帶互連件
1710‧‧‧計數器/計時器
1720、1730‧‧‧時間點
1725‧‧‧週期
1735‧‧‧遙測資料
1750‧‧‧發生
1800、1900‧‧‧方法
1810、1840、1880、1930、1950‧‧‧菱形
1820、1830、1850、1860、1870、1890、1910、1920、1940、1960、1970‧‧‧方塊
2000‧‧‧PMA
2010‧‧‧遙測組態暫存器
2020‧‧‧遙測遮罩暫存器
2030‧‧‧PMA命令暫存器
2040‧‧‧交錯控制邏輯
2042‧‧‧粗略延遲計數器
2044‧‧‧細緻延遲計數器
2045‧‧‧GAT計數器
2050‧‧‧遙測資料控制邏輯
2100‧‧‧PCU
2120‧‧‧旁波帶通訊邏輯
2130‧‧‧資料處理邏輯
2140‧‧‧電力控制邏輯
圖1為根據本發明之一實施例的一系統之一部分的方塊圖;
圖2為根據本發明之一實施例的一處理器的方塊圖;
圖3為根據本發明之另一實施例的一多域處理器的方塊圖;
圖4為包括多核心的一處理器之一實施例;
圖5. 為根據本發明之一實施例的一處理器核心之微架構的方塊圖;
圖6為根據本發明之另一實施例的一處理器之微架構的方塊圖;
圖7為根據本發明之又一實施例的一處理器之微架構的方塊圖;
圖8為根據本發明之進一步實施例的一處理器之微架構的方塊圖;
圖9為根據本發明之另一實施例的一處理器的方塊圖;
圖10為根據本發明之一實施例的一代表性SoC的方塊圖;
圖11為根據本發明之一實施例的另一範例SoC的方塊圖;
圖12為實施例可以使用的一範例系統之方塊圖;
圖13為實施例可以使用的另一範例系統之方塊圖;
圖14為一代表性電腦系統的一方塊圖;
圖15為根據本發明之一實施例的一系統的一方塊圖;
圖16為根據本發明之一實施例的一處理器的一方塊圖;
圖17為根據本發明之一實施例的遙測資料通訊的一時序圖;
圖18為根據本發明之一實施例的一方法的一時序圖;
圖19為根據本發明之另一實施例的一方法的一流程圖;
圖20為根據本發明之一實施例的一電力管理代理者的一時序圖;以及
圖21為根據本發明之一實施例的一電力控制單元的一時序圖。
200‧‧‧處理器
210a~210n‧‧‧核心
215‧‧‧互連件
220‧‧‧非核心
230‧‧‧快取
240‧‧‧IMC
250a~250n‧‧‧介面
255‧‧‧電力控制單元(PCU)

Claims (20)

  1. 一種處理器,該處理器包含: 用於執行指令的複數個核心,該等複數個核心的至少若干者包括一遙測資料控制邏輯與一全球校準(GAT)計數器,該遙測資料控制邏輯用於根據一交錯排程來發送一第一遙測資料封包到一電力控制器以避免資料碰撞,該全球校準計數器用於計數一交錯校準週期;以及 該電力控制器,其用於根據該交錯排程而從該等複數個核心中的該等至少若干者接收該第一遙測資料封包。
  2. 如請求項1的處理器,其中該等複數個核心中的該等至少若干者進一步包含用於計數一第一延遲週期的一第一延遲計數器,其中該遙測資料控制邏輯係用於回應於該第一延遲週期之屆期而發送該第一遙測資料封包。
  3. 如請求項2的處理器,其中該等複數個核心中的一第一核心包含一電力管理代理者,該電力管理代理者包括一交錯控制邏輯,該交錯控制邏輯包括該GAT計數器與該第一延遲計數器。
  4. 如請求項3的處理器,其中該交錯控制邏輯係用於至少部分基於該第一延遲計數器來避免該資料碰撞,其中該等複數個核心中的該等至少若干者之各者的該第一延遲計數器會根據該交錯排程而受到控制。
  5. 如請求項3的處理器,其中該電力管理代理者包含用於儲存組態資訊的一遙測組態暫存器,該組態資訊用於提供針對該第一遙測資料封包的一格式。
  6. 如請求項5的處理器,其中該電力管理代理者包含用於儲存遙測遮罩資訊的一遙測遮罩暫存器,該遙測遮罩資訊用以指示要避免傳送到該電力控制器的遙測資料之一或多個類型。
  7. 如請求項5的處理器,其中該電力控制器包含一旁波帶通訊邏輯,該旁波帶通訊邏輯用於發送該組態資訊到該等複數個核心中之該等至少若干者並且從該等複數個核心中之該等至少若干者接收該第一遙測資料封包。
  8. 如請求項2的處理器,其中該交錯校準週期對應於該處理器的一時戳計數器的一閥值。
  9. 如請求項8的處理器,其中該遙測資料控制邏輯係用於使得該GAT計數器能回應於該時戳計數器的同步,以及用於在該GAT計數器被致能後的一交錯週期以後,致能該第一延遲計數器,該等複數個核心中之該等至少若干者的各者與一不同交錯週期相關連。
  10. 如請求項1的處理器,其中該電力控制器進一步包含一電力控制邏輯,該電力控制邏輯用於至少部分基於從該等複數個核心中的該等至少若干者處所接收之該第一遙測資料封包而接收熱資訊,以及引起該等複數個核心的至少一者之至少一操作參數會回應於該熱資訊而被更新。
  11. 一種具有資料儲存於其內的機器可讀媒體,其若由至少一機器所使用時將引起該至少一機器製造用於進行一方法的至少一積體電路,該方法包含: 啟始在一處理器的一第一核心之一全球校準(GAT)計數器中的計數,該GAT計數器用於維持在該處理器之複數個核心之間的交錯排程; 至少部分基於該第一核心的一第一延遲計數器之值,從該第一核心將遙測資料傳送到該處理器的一電力控制器,以避免遙測資料與該處理器之該等複數個核心之一或多個其他核心的遙測資料碰撞; 判定該GAT計數器的一對應部分之值是否匹配該處理器的一時戳計數器的一時戳計數器值之第一部分;以及 回應於判定出該GAT計數器的該對應部分的該值與該時戳計數器值的該第一部分匹配而重設該GAT計數器。
  12. 如請求項11的機器可讀媒體,其中該方法進一步包含回應於該處理器的該時戳計數器之同步而將該GAT計數器初始化。
  13. 如請求項11的機器可讀媒體,其中該方法進一步包含當該GAT計數器到達一第一值時,使該遙測資料能被傳送到該電力控制器。
  14. 如請求項11的機器可讀媒體,其中該方法進一步包含: 回應於啟始該GAT計數器之該計數而啟始一交錯週期;以及 在該交錯週期之後重設該第一延遲計數器。
  15. 如請求項11的機器可讀媒體,其中該方法進一步包含: 回應於該第一核心的一遙測遮罩暫存器之一第一部分的值而避免從該第一核心傳送第二遙測資料到該電力控制器,以及回應於該遙測遮罩暫存器的一第二部分之一第一值而從該第一核心傳送該遙測資料到該電力控制器。
  16. 如請求項11的機器可讀媒體,其中該方法進一步包含回應於該第一核心進入一低電力狀態的一請求,無論該第一延遲計數器的值而從該第一核心傳送該遙測資料到該電力控制器。
  17. 如請求項11的機器可讀媒體,其中該方法進一步包含至少部分基於該第一核心的一第二延遲計數器之值而從該第一核心傳送第二遙測資料到該電力控制器,該第二遙測資料包含不同於該遙測資料的遙測欄位,其中該第二遙測資料會以不同於該遙測資料的週期性而被傳送到該電力控制器。
  18. 一種系統,該系統包含: 一處理器,該處理器具有: 一第一核心,該第一核心包括用於計數一交錯校準週期的一第一計數器、用於計數一第一推送週期的一第二延遲計數器、以及一第一控制邏輯,該第一控制邏輯用於回應於在該第一延遲計數器中的該第一推送週期屆期時而發送一第一遙測資料封包; 一第二核心,該第二核心包括用於計數該交錯校準週期的一第二計數器以及用於計數該第一推送週期的一第二延遲計數器、以及一第二控制邏輯,該第二控制邏輯用於回應於在該第二延遲計數器中的該第一推送週期屆期時而發送一第二遙測資料封包,其中在該第二延遲計數器中的該第一推送週期的屆期與在該第一延遲計數器中的該第一推送週期的屆期為交錯的,以避免資料碰撞;以及 一電力控制器,該電力控制器用於接收該第一遙測資料封包與該第二遙測資料封包,且至少部分基於在該第一遙測資料封包與該第二遙測資料封包中的遙測資訊而引起對該第一核心與該第二核心中之至少一者的至少一操作參數的更新;以及 一管理控制器,其與該處理器耦接。
  19. 如請求項18的系統,其中該電力控制器係用於傳送該遙測資訊的至少若干資訊到該管理控制器。
  20. 如請求項18的系統,其中該第一控制邏輯係用於進行下列動作: 回應於該處理器的一時戳計數器的同步而致能該第一計數器; 在該第一計數器致能後的一交錯週期以後來致能該第一延遲計數器; 回應於在該第一計數器到達一第一值之後該第一推送週期之屆期,使該第一控制邏輯能夠發送該第一遙測資料封包;以及 回應於該第一計數器的值之一第一部分與一時戳計數器值的一第一部分匹配而重設該第一計數器,且在該第一計數器的重設後之一交錯週期以後引起該第一延遲計數器的重設。
TW105135308A 2015-12-16 2016-11-01 控制在處理器中的遙測資料通訊 TWI720047B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/970,747 2015-12-16
US14/970,747 US9910470B2 (en) 2015-12-16 2015-12-16 Controlling telemetry data communication in a processor

Publications (2)

Publication Number Publication Date
TW201723747A true TW201723747A (zh) 2017-07-01
TWI720047B TWI720047B (zh) 2021-03-01

Family

ID=59057276

Family Applications (1)

Application Number Title Priority Date Filing Date
TW105135308A TWI720047B (zh) 2015-12-16 2016-11-01 控制在處理器中的遙測資料通訊

Country Status (3)

Country Link
US (1) US9910470B2 (zh)
TW (1) TWI720047B (zh)
WO (1) WO2017105734A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI774320B (zh) * 2021-04-14 2022-08-11 新唐科技股份有限公司 晶片結構及晶片功能控制方法
TWI782316B (zh) * 2020-08-24 2022-11-01 達明機器人股份有限公司 作業程序同步的方法

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10037227B2 (en) * 2015-12-17 2018-07-31 Intel Corporation Systems, methods and devices for work placement on processor cores
US10715620B2 (en) 2017-11-08 2020-07-14 Google Llc Streaming network monitoring caching infrastructure
US10973658B2 (en) 2017-11-27 2021-04-13 Titan Spine, Inc. Rotating implant and associated instrumentation
WO2019152037A1 (en) * 2018-02-01 2019-08-08 Hewlett-Packard Development Company, L.P. Instruction updates via side channels
US10574239B1 (en) * 2018-11-07 2020-02-25 Jinghui Zhu Method and system for providing regional electrical grid for power conservation in a programmable device
US11579944B2 (en) 2018-11-14 2023-02-14 Intel Corporation System, apparatus and method for configurable control of asymmetric multi-threading (SMT) on a per core basis
JP7150585B2 (ja) * 2018-12-06 2022-10-11 エヌ・ティ・ティ・コミュニケーションズ株式会社 データ検索装置とそのデータ検索方法およびプログラム、エッジサーバとそのプログラム
JP7150584B2 (ja) 2018-12-06 2022-10-11 エヌ・ティ・ティ・コミュニケーションズ株式会社 エッジサーバとそのプログラム
JP7175731B2 (ja) 2018-12-06 2022-11-21 エヌ・ティ・ティ・コミュニケーションズ株式会社 ストレージ管理装置、方法およびプログラム
US11405141B2 (en) 2019-03-13 2022-08-02 Juniper Networks, Inc. Telemetry data error detection
US11082525B2 (en) * 2019-05-17 2021-08-03 Intel Corporation Technologies for managing sensor and telemetry data on an edge networking platform
WO2021114155A1 (zh) * 2019-12-11 2021-06-17 华为技术有限公司 一种处理器及降低功耗的方法
US11165527B2 (en) * 2019-12-20 2021-11-02 Juniper Networks, Inc. Time synchronization for encrypted traffic in a computer network
US11283935B2 (en) * 2019-12-30 2022-03-22 Texas Instruments Incorporated Configurable circuit telemetry system
US11181967B2 (en) 2020-02-07 2021-11-23 Marvell Asia Pte Ltd Power management and transitioning cores within a multicore system from idle mode to operational mode over a period of time
US11994925B2 (en) * 2020-04-10 2024-05-28 Marvell Asia Pte Ltd Power management and staggering transitioning from idle mode to operational mode
EP4030847A1 (en) * 2021-01-19 2022-07-20 Vestel Elektronik Sanayi ve Ticaret A.S. Adaptive frame selection for sensing and joint sensing and communication applications
US20230090103A1 (en) * 2021-09-20 2023-03-23 Western Digital Technologies, Inc. Sideband Information Over Host Interface Considering Link States
CN115811350B (zh) * 2022-11-07 2023-08-22 银河航天(成都)通信有限公司 一种用于卫星系统的查询调度方法、装置以及存储介质

Family Cites Families (100)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5163153A (en) 1989-06-12 1992-11-10 Grid Systems Corporation Low-power, standby mode computer
EP0547836B1 (en) * 1991-12-16 2001-12-19 AT&T Corp. Optical packet switch
US5522087A (en) 1994-03-22 1996-05-28 Verifone Inc. System for selectively operating in different modes depending upon receiving signal from a host computer within a time window upon power up
US5590341A (en) 1994-09-30 1996-12-31 Intel Corporation Method and apparatus for reducing power consumption in a computer system using ready delay
US6111872A (en) * 1995-03-03 2000-08-29 Matsushita Electric Industrial Co., Ltd. Telemeter telecontrol system
US5621250A (en) 1995-07-31 1997-04-15 Ford Motor Company Wake-up interface and method for awakening an automotive electronics module
US5802061A (en) * 1995-10-19 1998-09-01 Cabletron Systems, Inc. Method and apparatus for network access control with implicit ranging and dynamically assigned time slots
US6381239B1 (en) * 1996-02-13 2002-04-30 Taqua Systems, Inc. Multiple application switching platform and method
US6266581B1 (en) * 1996-05-10 2001-07-24 The United States Of America As Represented By The Secretary Of Commerce Spatial RAM for high precision data acquisition systems
US5931950A (en) 1997-06-17 1999-08-03 Pc-Tel, Inc. Wake-up-on-ring power conservation for host signal processing communication system
US6347084B1 (en) * 1998-05-28 2002-02-12 U.S. Philips Corporation Method of timestamp synchronization of a reservation-based TDMA protocol
US6510150B1 (en) * 1998-12-21 2003-01-21 Koninklijke Philips Electronics N.V. Method of MAC synchronization in TDMA-based wireless networks
US6466220B1 (en) * 1999-03-05 2002-10-15 Teralogic, Inc. Graphics engine architecture
US6823516B1 (en) 1999-08-10 2004-11-23 Intel Corporation System and method for dynamically adjusting to CPU performance changes
US7010708B2 (en) 2002-05-15 2006-03-07 Broadcom Corporation Method and apparatus for adaptive CPU power management
US7539885B2 (en) 2000-01-13 2009-05-26 Broadcom Corporation Method and apparatus for adaptive CPU power management
US6816510B1 (en) * 2000-02-09 2004-11-09 Koninklijke Philips Electronics N.V. Method for clock synchronization between nodes in a packet network
JP2001318742A (ja) 2000-05-08 2001-11-16 Mitsubishi Electric Corp コンピュータシステムおよびコンピュータ読み取り可能な記録媒体
KR100361340B1 (ko) 2000-05-15 2002-12-05 엘지전자 주식회사 씨피유 클럭 제어 방법
US6792392B1 (en) 2000-06-30 2004-09-14 Intel Corporation Method and apparatus for configuring and collecting performance counter data
US6804542B1 (en) * 2000-09-22 2004-10-12 Telefonaktiebolaget Lm Ericsson (Publ) Sleep modes in peer-to-peer communications
US6748546B1 (en) 2000-09-26 2004-06-08 Sun Microsystems, Inc. Method and apparatus for reducing power consumption
US6829713B2 (en) 2000-12-30 2004-12-07 Intel Corporation CPU power management based on utilization with lowest performance mode at the mid-utilization range
US7058824B2 (en) 2001-06-15 2006-06-06 Microsoft Corporation Method and system for using idle threads to adaptively throttle a computer
DE10140471B4 (de) * 2001-08-17 2008-07-10 Siemens Ag Verfahren und Einrichtung zur zeitversetzten Kennsignalerzeugung
US20030061383A1 (en) 2001-09-25 2003-03-27 Zilka Anthony M. Predicting processor inactivity for a controlled transition of power states
US7111179B1 (en) 2001-10-11 2006-09-19 In-Hand Electronics, Inc. Method and apparatus for optimizing performance and battery life of electronic devices based on system and application parameters
JP2005510956A (ja) * 2001-11-28 2005-04-21 ミレニアル・ネット アドホック無線ネットワークのためのネットワークプロトコル
US6996728B2 (en) 2002-04-26 2006-02-07 Hewlett-Packard Development Company, L.P. Managing power consumption based on utilization statistics
US7051227B2 (en) 2002-09-30 2006-05-23 Intel Corporation Method and apparatus for reducing clock frequency during low workload periods
US6898689B2 (en) 2002-11-15 2005-05-24 Silicon Labs Cp, Inc. Paging scheme for a microcontroller for extending available register space
US7043649B2 (en) 2002-11-20 2006-05-09 Portalplayer, Inc. System clock power management for chips with multiple processing modules
US6971033B2 (en) 2003-01-10 2005-11-29 Broadcom Corporation Method and apparatus for improving bus master performance
US7089443B2 (en) 2003-01-23 2006-08-08 University Of Rochester Multiple clock domain microprocessor
JP4061492B2 (ja) 2003-02-10 2008-03-19 ソニー株式会社 情報処理装置および消費電力制御方法
US7093147B2 (en) 2003-04-25 2006-08-15 Hewlett-Packard Development Company, L.P. Dynamically selecting processor cores for overall power efficiency
US7272732B2 (en) 2003-06-30 2007-09-18 Hewlett-Packard Development Company, L.P. Controlling power consumption of at least one computer system
TW200502847A (en) 2003-07-08 2005-01-16 Benq Corp Control device and method for reducing number of interrupts in a processor
US7146514B2 (en) 2003-07-23 2006-12-05 Intel Corporation Determining target operating frequencies for a multiprocessor system
US7272730B1 (en) 2003-07-31 2007-09-18 Hewlett-Packard Development Company, L.P. Application-driven method and apparatus for limiting power consumption in a processor-controlled hardware platform
US7194643B2 (en) 2003-09-29 2007-03-20 Intel Corporation Apparatus and method for an energy efficient clustered micro-architecture
US7770034B2 (en) 2003-12-16 2010-08-03 Intel Corporation Performance monitoring based dynamic voltage and frequency scaling
DE102004011946A1 (de) * 2004-03-11 2005-09-29 Bayerische Motoren Werke Ag Verfahren zur Datenkommunikation
US7451333B2 (en) 2004-09-03 2008-11-11 Intel Corporation Coordinating idle state transitions in multi-core processors
US20070156992A1 (en) 2005-12-30 2007-07-05 Intel Corporation Method and system for optimizing latency of dynamic memory sizing
US9001801B2 (en) 2004-09-07 2015-04-07 Broadcom Corporation Method and system for low power mode management for complex Bluetooth devices
US7941585B2 (en) 2004-09-10 2011-05-10 Cavium Networks, Inc. Local scratchpad and data caching system
US7426648B2 (en) 2004-09-30 2008-09-16 Intel Corporation Global and pseudo power state management for multiple processing elements
US7434073B2 (en) 2004-11-29 2008-10-07 Intel Corporation Frequency and voltage scaling architecture
US7502948B2 (en) 2004-12-30 2009-03-10 Intel Corporation Method, system, and apparatus for selecting a maximum operation point based on number of active cores and performance level of each of the active cores
US8041967B2 (en) 2005-02-15 2011-10-18 Hewlett-Packard Development Company, L.P. System and method for controlling power to resources based on historical utilization data
US7454632B2 (en) 2005-06-16 2008-11-18 Intel Corporation Reducing computing system power through idle synchronization
US7430673B2 (en) 2005-06-30 2008-09-30 Intel Corporation Power management system for computing platform
US8301868B2 (en) 2005-09-23 2012-10-30 Intel Corporation System to profile and optimize user software in a managed run-time environment
US20070079294A1 (en) 2005-09-30 2007-04-05 Robert Knight Profiling using a user-level control mechanism
US20070106827A1 (en) 2005-11-08 2007-05-10 Boatright Bryan D Centralized interrupt controller
US20070245163A1 (en) 2006-03-03 2007-10-18 Yung-Hsiang Lu Power management in computer operating systems
US7437270B2 (en) 2006-03-30 2008-10-14 Intel Corporation Performance state management
US7752468B2 (en) 2006-06-06 2010-07-06 Intel Corporation Predict computing platform memory power utilization
TWI324747B (en) * 2006-06-08 2010-05-11 Wistron Corp Method for preventing process collision of micro controller
US7529956B2 (en) 2006-07-17 2009-05-05 Microsoft Corporation Granular reduction in power consumption
US7930564B2 (en) 2006-07-31 2011-04-19 Intel Corporation System and method for controlling processor low power states
US7949887B2 (en) 2006-11-01 2011-05-24 Intel Corporation Independent power control of processing cores
US8117478B2 (en) * 2006-12-29 2012-02-14 Intel Corporation Optimizing power usage by processor cores based on architectural events
US7730340B2 (en) 2007-02-16 2010-06-01 Intel Corporation Method and apparatus for dynamic voltage and frequency scaling
US8510581B2 (en) 2007-03-26 2013-08-13 Freescale Semiconductor, Inc. Anticipation of power on of a mobile device
WO2008119188A1 (en) * 2007-04-03 2008-10-09 Sailmeter Inc. Pressure sensing method and system for flexible aerodynamic surfaces
JP2008257578A (ja) 2007-04-06 2008-10-23 Toshiba Corp 情報処理装置、スケジューラおよび情報処理置のスケジュール制御方法
US7971074B2 (en) 2007-06-28 2011-06-28 Intel Corporation Method, system, and apparatus for a core activity detector to facilitate dynamic power management in a distributed system
ATE536681T1 (de) * 2007-10-04 2011-12-15 Harman Becker Automotive Sys Datennetzwerk mit zeitsynchronisationsmechanismus
US20090150696A1 (en) 2007-12-10 2009-06-11 Justin Song Transitioning a processor package to a low power state
US8024590B2 (en) 2007-12-10 2011-09-20 Intel Corporation Predicting future power level states for processor cores
US7966506B2 (en) 2007-12-12 2011-06-21 Intel Corporation Saving power in a computer system
US8442697B2 (en) 2007-12-18 2013-05-14 Packet Digital Method and apparatus for on-demand power management
KR101459140B1 (ko) 2007-12-26 2014-11-07 엘지전자 주식회사 전원관리 제어 장치 및 방법
US20110205115A1 (en) * 2008-02-25 2011-08-25 Sirf Technology, Inc. Always on GPS Device
US8156362B2 (en) 2008-03-11 2012-04-10 Globalfoundries Inc. Hardware monitoring and decision making for transitioning in and out of low-power state
US7941688B2 (en) 2008-04-09 2011-05-10 Microsoft Corporation Managing timers in a multiprocessor environment
US20100052862A1 (en) * 2008-08-28 2010-03-04 Mitac Technology Corp. Method for preventing signal collision in radio frequency identification system and radio frequency identification tag used thereof
US8954977B2 (en) 2008-12-09 2015-02-10 Intel Corporation Software-based thread remapping for power savings
US7895379B2 (en) * 2008-12-23 2011-02-22 Unisys Corporation Logic controller having hard-coded control logic and programmable override control store entries
DE102009047024A1 (de) * 2009-11-23 2011-05-26 Beckhoff Automation Gmbh Parallelisierte Programmsteuerung
US8700943B2 (en) 2009-12-22 2014-04-15 Intel Corporation Controlling time stamp counter (TSC) offsets for mulitple cores and threads
US8943334B2 (en) 2010-09-23 2015-01-27 Intel Corporation Providing per core voltage and frequency control
EP2624639B1 (en) * 2010-11-10 2014-08-27 Panasonic Corporation Wireless communication system and wireless communication device
JP2012199749A (ja) * 2011-03-22 2012-10-18 Seiko Epson Corp 回路装置、通信機器及び通信システム
US8949637B2 (en) 2011-03-24 2015-02-03 Intel Corporation Obtaining power profile information with low overhead
US8769316B2 (en) 2011-09-06 2014-07-01 Intel Corporation Dynamically allocating a power budget over multiple domains of a processor
US8954770B2 (en) 2011-09-28 2015-02-10 Intel Corporation Controlling temperature of multiple domains of a multi-domain processor using a cross domain margin
US9074947B2 (en) 2011-09-28 2015-07-07 Intel Corporation Estimating temperature of a processor core in a low power state without thermal sensor information
US8832478B2 (en) 2011-10-27 2014-09-09 Intel Corporation Enabling a non-core domain to control memory bandwidth in a processor
US9026815B2 (en) 2011-10-27 2015-05-05 Intel Corporation Controlling operating frequency of a core domain via a non-core domain of a multi-domain processor
US8943340B2 (en) 2011-10-31 2015-01-27 Intel Corporation Controlling a turbo mode frequency of a processor
US9158693B2 (en) 2011-10-31 2015-10-13 Intel Corporation Dynamically controlling cache size to maximize energy efficiency
CN104169832B (zh) 2012-03-13 2017-04-19 英特尔公司 提供处理器的能源高效的超频操作
US9436245B2 (en) 2012-03-13 2016-09-06 Intel Corporation Dynamically computing an electrical design point (EDP) for a multicore processor
WO2013137862A1 (en) 2012-03-13 2013-09-19 Intel Corporation Dynamically controlling interconnect frequency in a processor
US8984313B2 (en) 2012-08-31 2015-03-17 Intel Corporation Configuring power management functionality in a processor including a plurality of cores by utilizing a register to store a power domain indicator
KR20150011593A (ko) * 2013-07-23 2015-02-02 삼성전자주식회사 단말 장치의 전력소모 제어 방법 및 장치
CN103941681A (zh) * 2014-03-31 2014-07-23 航天东方红卫星有限公司 一种基于阈值判断的延时遥测数据采样方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI782316B (zh) * 2020-08-24 2022-11-01 達明機器人股份有限公司 作業程序同步的方法
TWI774320B (zh) * 2021-04-14 2022-08-11 新唐科技股份有限公司 晶片結構及晶片功能控制方法

Also Published As

Publication number Publication date
WO2017105734A1 (en) 2017-06-22
US9910470B2 (en) 2018-03-06
US20170177046A1 (en) 2017-06-22
TWI720047B (zh) 2021-03-01

Similar Documents

Publication Publication Date Title
TWI720047B (zh) 控制在處理器中的遙測資料通訊
KR20200139150A (ko) 프로세서의 최적화된 스로틀링을 위한 시스템, 장치 및 방법
TWI592794B (zh) 用以提供多晶片封裝之熱參數報告的裝置與方法
CN114489306B (zh) 遮蔽处理器的核的功率状态
US11740682B2 (en) System, apparatus and method for loose lock-step redundancy power management
US11481013B2 (en) Multi-level loops for computer processor control
CN109564526B (zh) 使用封装和线程提示信息的组合来控制处理器的性能状态
WO2017222690A1 (en) Controlling forced idle state operation in a processor
US20180314289A1 (en) Modifying an operating frequency in a processor
WO2017222668A1 (en) Processor having concurrent core and fabric exit from a low power state
US20160224090A1 (en) Performing context save and restore operations in a processor
US10754404B2 (en) Compensation control for variable power rails
CN108694154B (zh) 用于选择数据元素的硬件加速器
US10541687B2 (en) Validating an image for a reconfigurable device
JP7495422B2 (ja) 適応的な相互接続ルーティングのためのシステム、装置及び方法
WO2018063750A1 (en) Generation of processor interrupts using averaged data
CN108228484B (zh) 针对处理器中的高速缓存利用的无效读取

Legal Events

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