TW201638717A - 平台裝置的執行動態功率控制 - Google Patents

平台裝置的執行動態功率控制 Download PDF

Info

Publication number
TW201638717A
TW201638717A TW105100964A TW105100964A TW201638717A TW 201638717 A TW201638717 A TW 201638717A TW 105100964 A TW105100964 A TW 105100964A TW 105100964 A TW105100964 A TW 105100964A TW 201638717 A TW201638717 A TW 201638717A
Authority
TW
Taiwan
Prior art keywords
power
processor
devices
power level
core
Prior art date
Application number
TW105100964A
Other languages
English (en)
Other versions
TWI630476B (zh
Inventor
安可許 瓦瑪
克許那肯斯 席斯堤拉
法蘇德凡 司尼凡杉
尤金 格巴托夫
安德魯 亨洛伊
邦尼斯 古柏
大衛 布朗寧
蓋 席瑞恩
尼爾 桑格
詹姆斯 赫莫丁二世
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 TW201638717A publication Critical patent/TW201638717A/zh
Application granted granted Critical
Publication of TWI630476B publication Critical patent/TWI630476B/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
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • 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
    • 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/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • 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/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • 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
    • Y02BCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO BUILDINGS, e.g. HOUSING, HOUSE APPLIANCES OR RELATED END-USER APPLICATIONS
    • Y02B70/00Technologies for an efficient end-user side electric power management and consumption
    • Y02B70/10Technologies improving the efficiency by using switched-mode power supplies [SMPS], i.e. efficient power electronics conversion e.g. power factor correction or reduction of losses in power supplies or efficient standby modes
    • 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

Abstract

在一個實施例中,一種處理器包括:至少一個核心,用以執行指令;及功率控制邏輯,用以接收來自複數個裝置的功率能力資訊以耦合至該處理器及分配平台功率預算給該裝置、設定用於該裝置而且為對應裝置被配電之第一功率位準、通訊該第一功率位準至該裝置、以及回應於來自第二裝置對較高功率位準的請求而動態地減少被分配給第一裝置的第一功率及增加被分配給該第二裝置的第二功率。其他實施例被描述及主張。

Description

平台裝置的執行動態功率控制
實施例關於系統的功率管理,且較具體而言關於多核心處理器的功率管理。
半導體處理及邏輯設計的進展已經允許增加可存在於積體電路裝置上的邏輯數量。結果,電腦系統配置已經從系統中的單一或多個積體電路進化至個別積體電路上的多個硬體執行緒、多個核心、多個裝置、及/或完整系統。額外地,隨著積體電路的密度成長,對運算系統(從嵌入式系統到伺服器)的功率要求也逐步上升。此外,軟體無效率、及它的硬體要求也造成運算裝置能源消耗的增加。事實上,一些研究指出運算裝置消耗一個國家的整個電力供應的相當大比例,諸如美國。結果,對於與積體電路關聯的能源效率及節約有迫切需要。這些需要將隨著伺服器、桌上型電腦、筆記型電腦、超極緻筆電(UltrabooksTM)、平板、行動電話、處理器、嵌入式系統等變得更為普遍(從包括在典型電腦、汽車、及電視中 到生物科技)而增加。
100‧‧‧系統
110‧‧‧處理器
120a-120n‧‧‧核心
125a-125n‧‧‧積體電壓調整器
125x‧‧‧另一積體電壓調整器
132‧‧‧輸入/輸出介面
134‧‧‧另一介面
136‧‧‧積體記憶體控制器
138‧‧‧功率控制單元
150‧‧‧電源供應
160‧‧‧外部電壓調整器
200‧‧‧處理器
210a-210n‧‧‧核心
215‧‧‧互連
220‧‧‧非核心
230‧‧‧共享快取
240‧‧‧積體記憶體控制器
250‧‧‧介面
250a-250n‧‧‧介面
255‧‧‧功率控制單元
256‧‧‧功率控制邏輯
300‧‧‧處理器
310‧‧‧核心域
3100-310n‧‧‧核心
320‧‧‧圖形域
330‧‧‧環互連
340‧‧‧末階快取
3400-340n‧‧‧末階快取
350‧‧‧系統代理域
352‧‧‧顯示器控制器
355‧‧‧功率控制單元
356‧‧‧功率控制邏輯
370‧‧‧積體記憶體控制器
400‧‧‧處理器
401‧‧‧核心
401a‧‧‧架構狀態暫存器
401b‧‧‧架構狀態暫存器
402‧‧‧核心
402a‧‧‧架構狀態暫存器
402b‧‧‧架構狀態暫存器
405‧‧‧匯流排介面模組
410‧‧‧高階快取
420‧‧‧分支目標緩衝器及指令轉譯緩衝器
421‧‧‧分支目標緩衝器及指令轉譯緩衝器
425‧‧‧解碼模組
426‧‧‧解碼模組
430‧‧‧分配器及重新命名器方塊
431‧‧‧分配器及重新命名器方塊
435‧‧‧重排/退出單元
436‧‧‧重排/退出單元
440‧‧‧執行單元
441‧‧‧執行單元
450‧‧‧低階資料快取及資料轉譯緩衝器
451‧‧‧低階資料快取及資料轉譯緩衝器
460‧‧‧功率控制器
470‧‧‧記憶體控制器
500‧‧‧處理器核心
501‧‧‧擷取單元
503‧‧‧指令快取
505‧‧‧指令解碼器
510‧‧‧前端單元
515‧‧‧亂序引擎
520‧‧‧執行單元
522‧‧‧算術邏輯單元
524‧‧‧向量執行單元
530‧‧‧暫存器檔案
535‧‧‧擴充暫存器檔案
538‧‧‧機器特定暫存器
540‧‧‧重排緩衝器
550‧‧‧快取
600‧‧‧核心
605‧‧‧分支預測器
610‧‧‧指令快取
615‧‧‧指令解碼器
618‧‧‧微碼ROM
620‧‧‧發布佇列
630‧‧‧浮點管線
632‧‧‧浮點暫存器檔案
634‧‧‧浮點排程器
635‧‧‧算術邏輯單元
636‧‧‧混洗單元
638‧‧‧浮點加法器
640‧‧‧整數管線
642‧‧‧整數暫存器檔案
644‧‧‧整數排程器
645‧‧‧算術邏輯單元
646‧‧‧移位器單元
648‧‧‧跳躍執行單元
650‧‧‧記憶體執行排程器
652‧‧‧位址產生單元
654‧‧‧轉譯緩衝器
660‧‧‧資料快取
670‧‧‧分配器/重新命名器
680‧‧‧重排緩衝器
700‧‧‧核心
710‧‧‧擷取單元
715‧‧‧解碼單元
725‧‧‧發布邏輯
730‧‧‧佇列
735‧‧‧整數單元
740‧‧‧乘法單元
750‧‧‧浮點/向量單元
760‧‧‧雙發布單元
770‧‧‧載入/儲存單元
780‧‧‧寫回單元
800‧‧‧核心
810‧‧‧擷取單元
815‧‧‧解碼器/重新命名器/配送器
820‧‧‧快取
825‧‧‧佇列
830‧‧‧發布邏輯
835‧‧‧整數單元
840‧‧‧乘法單元
850‧‧‧浮點/向量單元
860‧‧‧分支單元
870‧‧‧載入/儲存單元
880‧‧‧寫回單元
900‧‧‧處理器
910‧‧‧核心單元
9100-910n‧‧‧核心單元
920‧‧‧圖形單元
925‧‧‧影像信號處理器
930‧‧‧非揮發性儲存器
935‧‧‧記憶體控制器
940‧‧‧功率管理器
945‧‧‧安全處理器
950‧‧‧視訊編碼器
955‧‧‧顯示器控制器
960a-960d‧‧‧介面
1000‧‧‧系統晶片
1010‧‧‧第一核心域
1012‧‧‧第一核心
10120-10123‧‧‧第一核心
1015‧‧‧快取記憶體
1020‧‧‧第二核心域
10220-10223‧‧‧第二核心
1025‧‧‧快取記憶體
1030‧‧‧圖形域
1040‧‧‧一致性互連
1050‧‧‧積體記憶體控制器
1100‧‧‧系統晶片
1110‧‧‧中央處理單元域
1120‧‧‧GPU域
1130‧‧‧DSP單元
1140‧‧‧通訊單元
1150‧‧‧多媒體處理器
1160‧‧‧感測器單元
1170‧‧‧影像信號處理器
1180‧‧‧顯示器處理器
1190‧‧‧位置單元
1200‧‧‧系統
1205‧‧‧基頻處理器
1210‧‧‧應用處理器
1215‧‧‧功率管理積體電路
1220‧‧‧使用者介面/顯示器
1225‧‧‧感測器
1230‧‧‧快閃記憶體
1235‧‧‧動態隨機存取記憶體
1240‧‧‧擷取裝置
1240‧‧‧通用積體電路卡
1250‧‧‧安全處理器
1260‧‧‧NFC無接觸介面
1265‧‧‧NFC天線
1270‧‧‧RF收發器
1275‧‧‧WLAN收發器
1280‧‧‧GPS感測器
1290‧‧‧天線
1295‧‧‧音訊輸出裝置
1300‧‧‧系統
1310‧‧‧系統晶片
1320‧‧‧觸控面板
1325‧‧‧周邊集線器
1330‧‧‧乙太網路介面
1340‧‧‧快閃記憶體
1345‧‧‧動態隨機存取記憶體
1350‧‧‧WLAN單元
1355‧‧‧天線
1360‧‧‧感測器
1365‧‧‧音訊編解碼器
1370‧‧‧音訊輸出裝置
1380‧‧‧功率管理積體電路
1390‧‧‧電池
1395‧‧‧AC轉接器
1400‧‧‧系統
1410‧‧‧處理器
1415‧‧‧系統記憶體
1420‧‧‧大量儲存器
1422‧‧‧快閃裝置
1424‧‧‧顯示器
1425‧‧‧觸控螢幕
1430‧‧‧觸控墊
1435‧‧‧嵌入式控制器
1436‧‧‧鍵盤
1437‧‧‧風扇
1438‧‧‧受信平台模組
1439‧‧‧熱感測器
1440‧‧‧感測器集線器
1441‧‧‧加速計
1442‧‧‧周圍光感測器
1443‧‧‧羅盤
1444‧‧‧陀螺儀
1445‧‧‧NFC單元
1446‧‧‧熱感測器
1450‧‧‧WLAN單元
1452‧‧‧藍芽單元
1454‧‧‧相機模組
1455‧‧‧GPS模組
1456‧‧‧WWAN單元
1457‧‧‧用戶識別模組
1460‧‧‧數位信號處理器
1462‧‧‧積體編碼器/解碼器及放大器
1463‧‧‧輸出揚聲器
1464‧‧‧耳機孔
1465‧‧‧麥克風
1500‧‧‧多處理器系統
1514‧‧‧I/O裝置
1516‧‧‧第一匯流排
1518‧‧‧匯流排橋接器
1520‧‧‧第二匯流排
1522‧‧‧鍵盤/滑鼠
1524‧‧‧音訊I/O
1526‧‧‧通訊裝置
1528‧‧‧資料儲存單元
1530‧‧‧代碼
1532‧‧‧記憶體
1534‧‧‧記憶體
1538‧‧‧高性能圖形引擎
1539‧‧‧點對點互連
1550‧‧‧點對點互連
1562‧‧‧點對點互連
1564‧‧‧點對點互連
1570‧‧‧第一處理器
1572‧‧‧記憶體控制器集線器
1574a‧‧‧處理器核心
1574b‧‧‧處理器核心
1576‧‧‧點對點介面
1578‧‧‧點對點介面
1580‧‧‧第二處理器
1582‧‧‧記憶體控制器集線器
1584a‧‧‧處理器核心
1584b‧‧‧處理器核心
1586‧‧‧點對點介面
1588‧‧‧點對點介面
1590‧‧‧晶片組
1592‧‧‧介面
1594‧‧‧點對點介面
1596‧‧‧介面
1598‧‧‧點對點介面
1600‧‧‧系統
1610‧‧‧處理器
1615‧‧‧功率控制邏輯
1620‧‧‧裝置
16200-1620n‧‧‧裝置
1622‧‧‧能力儲存器
16220-1622n‧‧‧能力儲存器
1624‧‧‧功率限制儲存器
16240-1624n‧‧‧功率限制儲存器
1626‧‧‧通知邏輯
16260-1626n‧‧‧通知邏輯
1700‧‧‧方法
1800‧‧‧功率控制邏輯
1815‧‧‧使用案例儲存器
18150-1815n‧‧‧使用案例儲存器
1810‧‧‧功率分配邏輯
1820‧‧‧平台功率預算儲存器
1830‧‧‧裝置功率能力儲存器
1835‧‧‧項目
18350-1835n‧‧‧項目
1900‧‧‧方法
第1圖為依據本發明實施例的系統的一部分的方塊圖。
第2圖為依據本發明實施例的處理器的方塊圖。
第3圖為依據本發明另一實施例的多域處理器的方塊圖。
第4圖為包括多個核心的處理器的實施例。
第5圖為依據本發明一個實施例的處理器核心的微架構的方塊圖。
第6圖為依據另一實施例的處理器核心的微架構的方塊圖。
第7圖為依據又一實施例的處理器核心的微架構的方塊圖。
第8圖為依據又一進一步之實施例的處理器核心的微架構的方塊圖。
第9圖為依據本發明另一實施例的處理器的方塊圖。
第10圖為依據本發明實施例的代表性SoC的方塊圖。
第11圖為依據本發明實施例的另一範例SoC的方塊圖。
第12圖為藉其可使用實施例的範例系統的方塊圖。
第13圖為藉其可使用實施例的另一範例系統的方塊圖。
第14圖為代表性電腦系統的方塊圖。
第15圖為依據本發明實施例的系統的方塊圖。
第16圖為依據實施例的系統的一部分的方塊圖。
第17圖為用以動態地控制系統的裝置的功率限制的方法流程圖,依據本發明的實施例。
第18圖為依據本發明實施例的功率控制邏輯的方塊圖。
第19圖為依據本發明另一實施例的方法的流程圖。
【發明內容暨實施方式】
諸如可攜帶、連接式、電池操作的裝置(實例包括諸如智慧型手機的蜂巢式電話、平板、膝上型電腦、健身追蹤器、全球定位系統(GPS)裝置、及穿戴式裝置或其他物聯網(IoT)裝置)的許多平台具有消耗較高活動的突發狀況的組件。此種組件的實例包括無線通訊組件(例如,3G/4G/LTE數據機、本地及廣域無線網路裝置、近場通訊裝置、其他無線電)、GPS感測器及相機、等等。
系統或平台被設計成具有最大功率規格,具有被設計成提供此種功率的功率輸送系統。然而,根據所有平台組件的最壞情況功率消耗的總和來設計平台功率輸送系統以輸送最大功率在方面價格、大小(空間體積)、 重量及複雜度方面是昂貴的。反而為了該組件的最壞情況功率消耗位準的總和設計功率輸送系統(降低某靜止量)可能導致該降低額定並非在所有時刻是有效的情況(且因此平台無法視需要來操作)。
實施例可提供一種具有減小尺寸、成本等的平台設計,因為功率控制實體可被配置成動態地使該平台的一或更多裝置能夠進入(退出)較高功率消耗模式(此處稱為裝置加強模式),而致能藉由使用較高功率消耗來動態執行用於該裝置的使用案例。
儘管下列的實施例參照特定積體電路中(諸如運算平台或處理器中)的能源節約及能源效率加以描述,其他實施例可應用至其他類型的積體電路及邏輯裝置。此處所述實施例的類似技術及教導可被應用至也可得益於較好能源效率及能源節約的其他類型的電路或半導體裝置。例如,所揭示的實施例不限於任何特定類型的電腦系統。那就是,所揭示的實施例可被使用於許多不同系統類型中,範圍從伺服器電腦(例如,塔式、架式、刀鋒、微伺服器等等)、通訊系統、儲存系統、任何配置的桌上型電腦、膝上型電腦、筆記型電腦、及平板電腦(包括2:1平板、平板手機等等),且也可被使用於其他裝置中,諸如手持式裝置、系統晶片(SoC)、及嵌入式應用。手持式裝置的一些實例包括諸如智慧型手機的蜂巢式電話、網際網路協定裝置、數位相機、個人數位助理(PDA)、及手持式PC。嵌入式應用可能通常包括微控 制器、數位信號處理器(DSP)、網路電腦(NetPC)、機上盒、網路集線器、廣域網路(WAN)交換器、穿戴式裝置、或可施行以下所教導之功能及操作的任何其他系統。更何況,實施例可被實施於具有標準語音功能的行動終端中(諸如行動電話、智慧型手機及平板手機)、及/或沒有標準無線語音功能通訊能力的非行動終端中(諸如許多穿戴式裝置、平板、筆記型電腦、桌上型電腦、微伺服器、伺服器等等)。此外,此處所述的設備、方法、及系統不限於實體運算裝置,但也可關於用於能源節約及效率的軟體優化。如將在以下說明中變得顯而易見,此處所述的方法、設備、及系統的實施例(無論稱為硬體、韌體、軟體、或其組合)對「綠色科技」的未來是至關重要,諸如用於包含美國經濟的很大一部分的產品中的功率節約及能源效率。
現在參照第1圖,顯示的是依據本發明實施例的系統的一部分的方塊圖。如第1圖中所示,系統100可包括各種組件,包括處理器110,其如所示為多核心處理器。處理器110可經由外部電壓調整器160被耦合至電源供應150,該外部電壓調整器可施行第一電壓轉換以提供初級調整電壓給處理器110。
如所看見,處理器110可為包括多個核心120a-120n的單晶粒處理器。此外,各個核心可被關聯於積體電壓調整器(IVR)125a-125n,其接收該初級調整電壓及產生操作電壓而被提供給關聯於該IVR的處理器的 一或更多代理。因此,IVR實施方式可被提供以容許電壓的精細控制及因此各個個別核心的功率與性能的精細控制。因此,各個核心可在獨立電壓及頻率操作,致能很大的靈活性且給予廣泛機會來平衡功率消耗與性能。在一些實施例中,使用多個IVR使組件能夠聚集成個別功率層,使得功率被調整及被該IVR僅供應給該群組中的那些組件。在功率管理的期間,一個IVR的給定功率層可在該處理器被放置於某低功率狀態中時被功率下降或斷電,儘管另一IVR的另一功率層維持活動、或完全供電。
仍參照第1圖,額外的組件可存在於該處理器內,包括輸入/輸出介面132、另一介面134、及積體記憶體控制器136。如所看見,這些組件的各者可由另一積體電壓調整器125x所供電。在一個實施例中,介面132可致能用於Intel® Quick Path Interconnect(QPI)互連的操作,其提供快取一致協定中的點對點(PtP)鏈接,該快取一致協定包括包括實體層、鏈接層及協定層的多個層。依次地,介面134可經由快速周邊組件互連(PCIeTM)協定來通訊。
也顯示的是功率控制單元(PCU)138,其可包括硬體、軟體及/或韌體以施行關於處理器110的功率管理操作。如所看見,PCU 138經由數位介面提供控制資訊給外部電壓調整器160以造成該電壓調整器產生適當的調整電壓。PCU 138也經由另一數位介面提供控制資訊給IVR 125以控制所產生的操作電壓(或以造成對應的IVR 在低功率模式中被去能)。在各種實施例中,PCU 138可包括各種各樣的功率管理邏輯單元以施行基於硬體的功率管理。此種功率管理可完全被處理器控制(例如,由各種處理器硬體控制,且其可由工作量及/或功率、熱或其他處理器限制來加以觸發)及/或該功率管理可回應於外部來源加以施行(諸如平台或管理功率管理來源或系統軟體)。
進一步如此處所描述,PCU 138可包括額外的功率控制邏輯以幫助對耦合至處理器100的裝置(諸如行動系統的一或更多組件)的功率管理活動,而使給定裝置能夠進入增加性能狀態經過受限的持續時間來使該裝置能夠施行特定操作或功能,及接著回到較低性能(及功率)狀態。此外,此種功率控制邏輯可協調該系統的多個裝置間的功率管理而使該裝置能夠進入增加功率(及性能)狀態以施行該特定使用案例,而在同時造成一或更多其他裝置進入較低功率(及性能)狀態以致能該使用案例,如此處所進一步描述。
儘管為了容易例示而未顯示,理解的是額外的組件可存在於處理器110內,諸如非核心邏輯、及諸如內部記憶體的其他組件,例如一或更多階的快取記憶體階層等等。此外,儘管顯示在第1圖的實施方式中具有積體電壓調整器,實施例未如此受限。
注意到此處所述的功率管理技術可能獨立於及附加於基於作業系統(OS)的功率管理(OSPM)機 制。依據一個範例OSPM技術,處理器可在各種性能狀態或位準操作,所謂的P狀態,即從P0至PN。一般而言,P1性能狀態可對應於可被OS請求的最高保證性能狀態。除了此P1狀態以外,該OS可進一步請求較高的性能狀態,即P0狀態。此P0狀態可因此為機會的或加強模式狀態,在其中當功率及/或熱預算是可得時,處理器硬體可配置該處理器或其至少一些部分以在高於保證的頻率下操作。在許多實施方式中,處理器可包括超過該P1保證最大頻率的多個所謂的槽頻率(bin frequency),超過該特定處理器的最大峰頻率,作為在製造期間熔接或在其他方面寫入至該處理器中。此外,依據一個OSPM機制,處理器可在各種功率狀態或位準操作。關於功率狀態,OSPM機制可指定不同功率消耗狀態,一般稱為C狀態,C0、C1至Cn狀態。當核心為活動時,它在C0狀態運作,且當該核心在閒置時,它可被放置於核心低功率狀態中,也稱為核心非零C狀態(例如,C1-C6狀態),而各個C狀態是在較低的功率消耗位準(使得C6為比C1更深的低功率狀態,等等)。
理解的是許多不同類型的功率管理技術可被個別地或組合地使用於不同實施例中。作為代表性實例,功率控制器可控制該處理器而由某形式的動態電壓頻率調整(DVFS)加以功率管理,在其中一或更多核心或者其他處理器邏輯的操作電壓及/或操作頻率可被動態地控制以降低某些情況中的功率消耗。在實例中,DVFS可藉由 使用從加州聖塔克拉拉的英特爾公司可得的增強型英特爾SpeedStepTM技術加以施行,以提供在最低功率消耗位準的最佳性能。在另一實例中,DVFS可藉由使用英特爾TurboBoostTM技術加以施行而使一或更多核心或者其他運算引擎能夠根據條件(例如,工作量及可用性)在高於保證的操作頻率下操作。
可被使用於某些實例中的另一功率管理技術為在不同運算引擎之間動態交換工作量。例如,該處理器可包括在不同功率消耗位準下操作的不對稱核心或其他處理引擎,使得在功率受限的情況中,一或更多工作量可被動態地交換以在較低功率核心或者其他運算引擎上執行。另一範例性功率管理技術為硬體工作週期(HDC),其可造成核心及/或其他運算引擎依據工作週期而被週期性致能及去能,使得在該工作週期的不活動期期間可以讓一或更多核心不活動且在該工作週期的活動期期間可以讓一或更多核心活動。儘管藉由這些特定實例加以描述,理解的是,許多其他功率管理技術可被使用於特定實施例中。
實施例可被實施於用於各種市場的處理器中,包括伺服器處理器、桌上型處理器、行動處理器等等。現在參照第2圖,顯示的是依據本發明實施例的處理器的方塊圖。如第2圖中所示,處理器200可為包括複數個核心210a-210n的多核心處理器。在一個實施例中,各個此種核心可為獨立功率域且可被配置成根據工作量來進入及退出活動狀態及/或最大性能狀態。該各種核心可 經由互連215被耦合至包括各種組件的系統代理或非核心220。如所看見,非核心220可包括共享快取230,其可為末階快取。此外,該非核心可包括積體記憶體控制器240而與系統記憶體(未顯示於第2圖中)通訊,例如,經由記憶體匯流排。非核心220也包括各種介面250及功率控制單元255,其可包括邏輯以施行此處所述的功率管理技術。在所示的實施例中,功率控制單元255包括功率控制邏輯256,其可被配置成施行對已耦合裝置的功率管理操作而使一或更多此種裝置能夠視機會地進入裝置加強模式以施行所需使用案例的特定操作或功能。
此外,藉由介面250a-250n,對各種晶片外組件(諸如周邊裝置、大量儲存器等等)的連接可被做出。儘管藉由第2圖的實施例中的此特定實施方式加以顯示,本發明的範圍不限於此方面。
現在參照第3圖,顯示的是依據本發明另一實施例的多域處理器的方塊圖。如第3圖的實施例中所示,處理器300包括多個域。具體而言,核心域310可包括複數個核心3100-310n,圖形域320可包括一或更多圖形引擎,且系統代理域350可能進一步存在。在一些實施例中,系統代理域350可在獨立於該核心域的頻率下執行且可維持隨時供電以處理功率控制事件及功率管理,使得域310及320可被控制以動態地進入及退出高功率及低功率狀態。域310及320的各者可在不同電壓及/或功率下操作。注意到儘管只顯示有三個域,理解的是本發明的範 圍不限於此方面且額外的域可能存在於其他實施例中。例如,各包括至少一個核心的多核心域可能存在。
一般而言,各個核心310可進一步包括除了各種執行單元及額外處理元件以外的低階快取。依次地,該各種核心可被耦合至彼此及耦合至由複數個單元的末階快取(LLC)3400-340n所形成的共享快取記憶體。在各種實施例中,LLC 340可在該核心及該圖形引擎之中、以及各種媒體處理電路之中被共享。如所看見,環互連330因此將該核心耦合在一起,且提供該核心、圖形域320及系統代理電路350間的互連。在一個實施例中,互連330可為該核心域的一部份。然而在其他實施例中該環互連可為它自己的域。
如進一步所看見,系統代理域350可包括顯示器控制器352,其可提供相關顯示器的控制及對相關顯示器的介面。如進一步所看見,系統代理域350可包括功率控制單元355,其可包括邏輯以施行此處所述的功率管理技術。在所示的實施例中,功率控制單元355包括功率控制邏輯356,其可被配置成施行對已耦合裝置的功率管理操作而使一或更多此種裝置能夠視機會地進入裝置加強模式以施行所需使用案例的特定操作或功能。
如第3圖中進一步所看見,處理器300可進一步包括積體記憶體控制器(IMC)370,其可提供對系統記憶體的介面,諸如動態隨機存取記憶體(DRAM)。多個介面3800-380n可能存在以致能該處理器與其他電 路間的互連。例如,在一個實施例中,至少一個直接媒體介面(DMI)介面可被提供,以及一或更多PCIeTM介面。又進一步地,為了提供諸如額外處理器或其他電路的其他代理間的通訊,一或更多QPI介面也可被提供。儘管在第3圖的實施例中在此高階層加以顯示,理解的是本發明的範圍不限於此方面。
參照第4圖,包括多個核心的處理器的實施例被示出。處理器400包括任何處理器或處理裝置,諸如微處理器、嵌入式處理器、數位信號處理器(DSP)、網路處理器、手持式處理器、應用處理器、共處理器、系統晶片(SoC)、或用以執行代碼的其他裝置。處理器400在一個實施例中包括至少二個核心-核心401及402,其可包括不對稱核心或對稱核心(所示的實施例)。然而,處理器400可包括可能是對稱或不對稱的任何數量的處理元件。
在一個實施例中,處理元件意指用以支援軟體執行緒的硬體或邏輯。硬體處理元件的實例包括:執行緒單元、執行緒槽、執行緒、處理單元、情境、情境單元、邏輯處理器、硬體執行緒、核心、及/或任何其他元件,其能夠保持用於處理器的狀態,諸如執行狀態或架構狀態。換句話說,處理元件在一個實施例中意指能夠獨立地與代碼(諸如軟體執行緒、作業系統、應用、或其他代碼)關聯的任何硬體。實體處理器一般意指積體電路,其潛在地包括任何數量的其他處理元件,諸如核心或硬體執 行緒。
核心通常意指位於能夠維持獨立架構狀態的積體電路上的邏輯,其中各個獨立維持的架構狀態被關聯於至少一些專用執行資源。對比於核心,硬體執行緒一般意指位於能夠維持獨立架構狀態的積體電路上的任何邏輯,其中該獨立維持的架構狀態共享對執行資源的存取。如可被看見,當某些資源被共享及其他者專用於架構狀態時,硬體執行緒與核心的命名間的界線重疊。但通常,核心與硬體執行緒被作業系統視為個別邏輯處理器,此處該作業系統能夠在各個邏輯處理器上個別地排程操作。
實體處理器400如第4圖中所示包括二個核心,核心401及402。此處,核心401及402被視為對稱核心,即,具有相同配置、功能單元、及/或邏輯的核心。在另一實施例中,核心401包括亂序處理器核心,而核心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。一些資源,諸如重排/退出單元435中的重排緩衝器、ITLB 420、載入/儲存緩衝器、及佇列可透過分割來加以共享。其他資源,諸如通用內部暫存器、頁表基暫存器、低階資料快取及資料TLB 415、執行單元440、及部分的亂序單元435被潛在地完全共享。
處理器400通常包括其他資源,其可被完全共享、透過分割被共享、或專用於處理元件/由處理元件加以專用。在第4圖中,具有處理器的例示性邏輯單元/資源的純範例性處理器的實施例被示出。注意到處理器可包括或省略這些功能單元的任意者、以及包括未描繪的任何其他已知的功能單元、邏輯、或韌體。如所示,核心 401包括簡化、代表性的亂序(OOO)處理器核心。但依序處理器可被利用於不同實施例中。該OOO核心包括分支目標緩衝器420以預測被執行/採用的分支以及指令轉譯緩衝器(I-TLB)420以儲存用於指令的位址轉譯項目。
核心401進一步包括被耦合至擷取單元420以解碼已擷取元素的解碼模組425。擷取邏輯在一個實施例中包括分別與執行緒槽401a、401b關聯的個別序列器。通常核心401被關聯於第一ISA,其定義/指明處理器400上可執行的指令。通常,是該第一ISA的一部份的機器碼指令包括該指令的一部分(稱為運算碼),其意指/指明被施行的指令或操作。解碼邏輯425包括電路,其從它們的運算碼辨識這些指令以及將這些已解碼指令在管線中傳遞以供如同該第一ISA所定義的處理。例如,解碼器425在一個實施例中包括被設計成或適用於辨識特定指令(諸如交易指令)的邏輯。由於藉由解碼器425的辨識,該架構或核心401採取特定、預先定義的動作以施行與適當指令關聯的工作。重要的是注意到此處所述之工作、方塊、操作、及方法的任一者可回應於單一或多個指令來加以施行;其一些可為新或舊指令。
在一個實例中,分配器及重新命名器方塊430包括分配器以預留資源,諸如用以儲存指令處理結果的暫存器檔案。然而,執行緒401a及401b潛在地能夠亂序執行,此處分配器及重新命名器方塊430也預留其他資源, 諸如用以追蹤指令結果的重排緩衝器。單元430也可包括暫存器重新命名器以對處理器400內部的其他暫存器重新命名程式/指令參考暫存器。重排/退出單元435包括組件,諸如以上提到的重排緩衝器、載入緩衝器、及儲存緩衝器,以支援亂序執行及稍後的被亂序地執行之指令的依序退出。
排程器及執行單元方塊440在一個實施例中包括用以排程執行單元上的指令/操作的排程器單元。例如,浮點指令在具有可用浮點執行單元的執行單元的埠上被排程。與該執行單元關聯的暫存器檔案也被包括以儲存資訊指令處理結果。範例性執行單元包括浮點執行單元、整數執行單元、跳躍執行單元、載入執行單元、儲存執行單元、及其他已知的執行單元。
低階資料快取及資料轉譯緩衝器(D-TLB)450被耦合至執行單元440。該資料快取是用以儲存最近使用/操作的元素,諸如資料運算元,其潛在地被保持在記憶體一致性狀態中。該D-TLB是用以儲存最近的虛擬/線性對實體位址轉譯。作為特定實例,處理器可包括用以打破實體記憶體成為複數個虛擬頁的頁表結構。
此處,核心401及402共享對高階或遠處快取410的存取,其是用以快取最近擷取的元素。注意到高階或遠處意指增加或遠離該執行單元的快取階。在一個實施例中,高階快取410為最後一階資料快取-處理器400上的記憶體階層中的最後快取-諸如第二或第三階資料快 取。然而,高階快取410未如此受限,因為它可能被關聯於或包括指令快取。追蹤快取-一個類型的指令快取-反而可在解碼器425以後被耦合以儲存最近解碼的蹤跡。
在所描繪的配置中,處理器400也包括匯流排介面模組405及功率控制器460,其可施行依據本發明實施例的功率管理。在此情境中,匯流排介面405是用以與處理器400外部的裝置通訊,諸如系統記憶體及其他組件。
記憶體控制器470可與其他裝置介接,諸如一或許多記憶體。在實例中,匯流排介面405包括用以介接於記憶體的與記憶體控制器的環互連以及用以介接於圖形處理器的圖形控制器。在SoC環境中,甚至更多裝置,諸如網路介面、共處理器、記憶體、圖形處理器、及任何其他已知電腦裝置/介面可被整合於單一晶粒或積體電路上以提供具有高功能及低功率消耗的小形狀因子。
現在參照第5圖,顯示的是依據本發明一個實施例的處理器核心的微架構的方塊圖。如第5圖中所示,處理器核心500可為多級管線的亂序處理器。核心500可根據接收的操作電壓在各種電壓下操作,其可從積體電壓調整器或外部電壓調整器所接收。
如第5圖中所看見,核心500包括前端單元510,其可被用來擷取被執行的指令以及準備它們以供稍後使用於該處理器管線中。例如,前端單元510可包括擷取單元501、指令快取503、及指令解碼器505。在一些 實施方式中,前端單元510可進一步包括追蹤快取,伴隨有微碼儲存器和微操作儲存器。擷取單元501可例如從記憶體或指令快取503擷取巨集指令,以及饋送它們至指令解碼器505以解碼它們成為原語,即,用於由該處理器執行的微操作。
耦合於前端單元510與執行單元520間的是亂序(OOO)引擎515,其可被用來接收該微指令及準備它們用於執行。較具體而言,OOO引擎515可包括各種緩衝器以重排微指令流及分配執行所需要的各種資源、以及提供邏輯暫存器的重新命名至各種暫存器檔案內的儲存器位置上,諸如暫存器檔案530及擴充暫存器檔案535。暫存器檔案530可包括用於整數及浮點運算的不同的暫存器檔案。為了配置、控制、及額外操作之目的,一組機器特定暫存器(MSR)538也可能存在及可存取核心500內(及該核心外部)的各種邏輯。例如,功率限制資訊可被儲存於一或更多MSR中以及如此處所述被動態地更新。
各種資源可能存在於執行單元520中,包括例如各種整數、浮點、及單一指令多重資料(SIMD)邏輯單元,除了其他專用硬體以外。例如,此種執行單元可包括一或更多算術邏輯單元(ALU)522及一或更多向量執行單元524,除了其他此種執行單元以外。
來自該執行單元的結果可被提供給退出邏輯,即重排緩衝器(ROB)540。較具體而言,ROB 540可包括各種陣列及邏輯以接收與被執行的指令關聯的資 訊。此資訊接著被ROB 540檢驗以決定是否該指令可被有效地退出及導致資料被提交至該處理器的架構狀態,或者是否阻止該指令的適當退出的一或更多例外會發生。當然,ROB 540可處理與退出關聯的其他操作。
如第5圖中所示,ROB 540被耦合至快取550,其在一個實施例中可為低階快取(例如,L1快取),儘管本發明的範圍不限於此方面。並且,執行單元520可被直接耦合至快取550。從快取550,資料通訊可藉由高階快取、系統記憶體等等而發生。儘管藉由第5圖的實施例中的此高階加以顯示,理解的是本發明的範圍不限於此方面。例如,儘管第5圖的實施方式是關於諸如Intel® x86指令集架構(ISA)的亂序機器,本發明的範圍不限於此方面。那就是,其他實施例可在下列中被實施:依序處理器、精簡指令集運算(RISC)處理器(諸如基於ARM的處理器)、或可經由模仿引擎及相關邏輯電路來模仿不同ISA的指令及操作的另一類型的ISA之處理器。
現在參照第6圖,顯示的是依據另一實施例的處理器核心的微架構的方塊圖。在第6圖的實施例中,核心600可為不同微架構的低功率核心,諸如具有被設計成降低功率消耗的相對受限管線深之基於Intel® AtomTM的處理器。如所看見,核心600包括被耦合以提供指令給指令解碼器615的指令快取610。分支預測器605可被耦合至指令快取610。注意到指令快取610可進一步被耦合 至另一階的快取記憶體,諸如L2快取(為了在第6圖中容易例示而未顯示)。依次地,指令解碼器615提供已解碼指令給發布佇列620以供儲存及輸送至給定的執行管線。微碼ROM 618被耦合至指令解碼器615。
浮點管線630包括浮點暫存器檔案632,其可包括給定位元(具有諸如128、256或512位元)的複數個架構暫存器。管線630包括用以排程指令以供在該管線的多個執行單元的一者上執行的浮點排程器634。在所示的實施例中,此種執行單元包括ALU 635、混洗單元636、及浮點加法器638。依次地,這些執行單元中所產生的結果可被提供回到緩衝器及/或暫存器檔案632的暫存器。當然理解的是儘管藉由這幾個範例執行單元加以顯示,額外的或不同的浮點執行單元可能存在於另一實施例中。
整數管線640也可被提供。在所示的實施例中,管線640包括整數暫存器檔案642,其可包括給定位元(具有諸如128或256位元)的複數個架構暫存器。管線640包括用以排程指令以供在該管線的多個執行單元的一者上執行的整數排程器644。在所示的實施例中,此種執行單元包括ALU 645、移位器單元646、及跳躍執行單元648。依次地,這些執行單元中所產生的結果可被提供回到緩衝器及/或暫存器檔案642的暫存器。當然理解的是儘管藉由這幾個範例執行單元加以顯示,額外的或不同的整數執行單元可能存在於另一實施例中
記憶體執行排程器650可排程記憶體操作以供在位址產生單元652中執行,該位址產生單元也被耦合至TLB 654。如所看見,這些結構可耦合至資料快取660,其可為L0及/或L1資料快取,其依次地耦合至額外階的快取記憶體階層,包括L2快取記憶體。
為了提供對亂序執行的支援,分配器/重新命名器670可被提供,除了重排緩衝器以外680,其被配置成重排被亂序地執行的指令以供依序的退出。儘管藉由第6圖的例示中的此特定管線架構加以顯示,理解的是許多變化及替代是可能的。
注意到在具有不對稱核心的處理器中,諸如依據第5及6圖的微架構,工作量可能為了功率管理原因在該核心之間動態地交換,因為這些核心儘管具有不同管線設計及深度可能為相同或相關ISA。此種動態核心交換可能以對使用者應用(及可能也有核心)而言透明的方式加以施行。
參照第7圖,顯示的是依據又一實施例的處理器核心的微架構的方塊圖。如第7圖中所示,核心700可包括用以在非常低功率消耗位準下執行的多級依序管線。作為一個此種實例,處理器700可具有依據可得自加州桑尼維爾的ARM Holdings有限公司的ARM Cortex A53設計之微架構。在實施方式中,8級管線可被提供,其被配置成執行32位元及64位元碼兩者。核心700包括擷取單元710,其被配置成提取指令以及提供它們給解碼單元 715,其可解碼該指令,例如,諸如ARMv8 ISA的給定ISA的巨集指令。進一步注意到佇列730可耦合至解碼單元715以儲存已解碼指令。已解碼指令被提供給發布邏輯725,此處該已解碼指令可被發布至多個執行單元的一給定者。
進一步參照第7圖,發布邏輯725可發布指令至多個執行單元的一者。在所示的實施例中,這些執行單元包括整數單元735、乘法單元740、浮點/向量單元750、雙發布單元760、及載入/儲存單元770。這些不同執行單元的結果可被提供給寫回單元780。理解的是儘管單一個寫回單元為了容易例示而被顯示,在一些實施方式中不同的寫回單元可被關聯於該執行單元的各者。此外,理解的是儘管第7圖中所示之單元及邏輯的各者在高階層加以表示,特定實施方式可包括更多或不同結構。藉由使用具有如第7圖中的管線的一或更多核心所設計的處理器可被實施於許多不同終端成品中,從行動裝置延伸至伺服器系統。
參照第8圖,顯示的是依據又一實施例的處理器核心的微架構的方塊圖。如第8圖中所示,核心800可包括多級多發布的亂序管線以在非常高性能位準下執行(其可發生在比第7圖的核心700更高的功率消耗位準)。作為一個此種實例,處理器800可具有依據ARM Cortex A57設計的微架構。在實施方式中,15(或更大)級管線可被提供,其被配置成執行32位元及64位元碼。 此外,該管線可提供給3(或更大)級(wide)及3(或更大)發布操作。核心800包括擷取單元810,其被配置成提取指令以及提供它們給解碼器/重新命名器/配送器815,其可解碼該指令,例如,ARMv8指令集架構的巨集指令,重新命名該指令內的暫存器參考,及配送該指令(最後)至選定的執行單元。已解碼指令可被儲存於佇列825中。注意到儘管單一佇列結構為了在第8圖中容易例示而被顯示,理解的是不同的佇列可被提供給多個不同類型的執行單元的各者。
第8圖中也顯示的是發佈邏輯830,佇列825中所儲存的已解碼指令從其可被發布至選定的執行單元。發布邏輯830也可被實施於特定實施例中,而不同發送邏輯用於發布邏輯830對其耦合的該多個不同類型的執行單元各者。
已解碼指令可被發布至多個執行單元的一給定者。在所示的實施例中,這些執行單元包括一或更多整數單元835、乘法單元840、浮點/向量單元850、分支單元860、及載入/儲存單元870。在實施例中,浮點/向量單元850可被配置成處理128或256位元的SIMD或向量資料。又進一步而言,浮點/向量執行單元850可施行IEEE-754雙倍精確度浮點運算。這些不同執行單元的結果可被提供給寫回單元880。注意到在一些實施方式中不同的寫回單元可被關聯於該執行單元的各者。此外,理解的是儘管第8圖中所示之單元及邏輯的各者在高階層加以表示, 特定實施方式可包括更多或不同結構。
注意到在具有不對稱核心的處理器中,諸如依據第7及8圖的微架構,工作量可能為了功率管理原因而動態地交換,因為這些核心儘管具有不同管線設計及深度可能為相同或相關ISA。此種動態核心交換可能以對使用者應用(及可能也有核心)而言透明的方式加以施行。
藉由使用具有如第5-8圖任一或更多者中的管線的一或更多核心所設計的處理器可被實施於許多不同終端成品中,從行動裝置延伸至伺服器系統。現在參照第9圖,顯示的是依據本發明另一實施例的處理器的方塊圖。在第9圖的實施例中,處理器900可為包括多個域的SoC,其各者可被控制以在獨立操作電壓及操作頻率下操作。作為特定例示性實例,處理器900可為基於Intel® Architecture CoreTM的處理器,諸如可得自英特爾公司的i3、i5、i7或另一此種處理器。然而,其他低功率處理器,諸如可得自加州桑尼維爾的超微半導體公司(AMD)、來自ARM Holdings有限公司的基於ARM的設計或其被授權人或者來自加州桑尼維爾的MIPS Technologies公司的基於MIPS的設計或它們的被授權人或採用者可能反而存在於諸如蘋果A7處理器、高通Snapdragon處理器、或德州儀器OMAP處理器的其他實施例中。此種SoC可被使用於低功率系統中,諸如智慧型手機、平板電腦、平板手機(phablet)電腦、UltrabookTM電腦或其他可攜式運算裝置。
在第9圖所示的高階層視圖中,處理器900包括複數個核心單元9100-910n。各個核心單元包括一或更多處理器核心、一或更多快取記憶體及其他電路。各個核心單元910可支援一或更多指令集(例如,x86指令集(具有已經添加有較新版本的一些擴充);MIPS指令集;ARM指令集(具有任選的額外擴充,諸如NEON))或其他指令集或其組合。注意到該核心單元的一些可為異質資源(例如,不同設計)。此外,各個此種核心可被耦合至快取記憶體(未顯示),其在實施例中可共享階(L2)快取記憶體。非揮發性儲存器930可被用來儲存各種程式及其他資料。例如,此儲存器可被用來儲存微碼、諸如BIOS的開機資訊、其他系統軟體或等等的至少一部分。
各個核心單元910也可包括諸如匯流排介面單元的介面以致能對該處理器的額外電路的互連。在實施例中,各個核心單元910耦合至一致性架構(coherent fabric),其可當作依次地耦合至記憶體控制器935的主快取一致性晶粒上互連。依次地,記憶體控制器935控制與諸如DRAM(為了在第9圖中容易例示而未顯示)的記憶體的通訊。
除了核心單元以外,額外的處理引擎存在於該處理器內,包括至少一個圖形單元920,其可包括一或更多圖形處理單元(GPU)以施行圖形處理以及有可能執行對該圖形處理器的的通用操作(所謂的GPGPU操 作)。此外,至少一個影像信號處理器925可能存在。信號處理器925可被配置成處理從一或更多擷取裝置(無論該SoC內部或晶片外)所接收的輸入影像資料。
其他加速器也可能存在。在第9圖的例示中,視訊編碼器950可施行包括對視訊資訊的編碼及解碼之編碼操作,例如,提供對高解析度視訊內容的硬體加速支援。顯示器控制器955進一步可被提供以加速顯示器操作,包括提供對系統的內部及外部顯示器的支援。此外,安全處理器945可能存在以施行安全操作,諸如安全開機操作、各種加密操作等等。
該單元的各者可能使其功率消耗經由功率管理器940加以控制,其可包括控制邏輯以施行此處所述的各種功率管理技術,包括對耦合至處理器900的周邊裝置的功率管理。
在一些實施例中,SoC 900可進一步包括非一致性架構(non-coherent fabric),被耦合至對其可耦合各種周邊裝置的該一致性架構。一或更多介面960a-960d致能與一或更多晶片外裝置的通訊。此種通訊可能是經由各種各樣的通訊協定,諸如PCIeTM、GPIO、USB、I2C、UART、MIPI、SDIO、DDR、SPI、HDMI、除了其他類型的通訊協定以外。儘管在第9圖的實施例中在此高階層加以顯示,理解的是本發明的範圍不限於此方面。
現在參照第10圖,顯示的是代表性SoC的方塊圖。在所示的實施例中,SoC 1000可為多核心SoC,為 了低功率操作配置成被優化用於併入至智慧型手機或其他低功率裝置中,諸如平板電腦或其他可攜式運算裝置。作為實例,SoC 1000可藉由使用不對稱或不同類型的核心加以實施,諸如高功率及/或低功率核心的組合,例如,亂序核心及依序核心。在不同的實施例中,這些核心可能是根據Intel® ArchitectureTM core設計或ARM架構設計。在又一實施例中,英特爾及ARM核心的混合可被實施於給定SoC中。
如第10圖中所看見,SoC 1000包括具有複數個第一核心10120-10123的第一核心域1010。在實例中,這些核心可為低功率核心,諸如依序核心。在一個實施例中,這些第一核心可被實施作為ARM Cortex A53核心。依次地,這些核心耦合至核心域1010的快取記憶體1015。此外,SoC 1000包括第二核心域1020。在第10圖的例示中,第二核心域1020具有複數個第二核心10220-10223。在實例中,這些核心可為比第一核心1012更高功率消耗的核心。在實施例中,該第二核心可為亂序核心,其可被實施作為ARM Cortex A57核心。依次地,這些核心耦合至核心域1020的快取記憶體1025。注意到儘管第10圖中所示的實例包括在各個域中的4個核心,理解的是較多或較少的核心可能存在於其他實例的給定域中。
進一步參照第10圖,圖形域1030也被提供,其可包括被配置成獨立地執行圖形工作量的一或更多圖形處理單元(GPU),該圖形工作量例如由核心域1010 及1020的一或更多核心所提供。作為實例,GPU域1030可被用來提供對各種各樣的螢幕大小的顯示器支援,除了提供圖形及顯示器顯現操作以外。
如所看見,該各種域耦合至一致性互連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/4GLTE)、諸如BluetoothTM、IEEE 802.11的無線區域協定、等等。
又進一步而言,多媒體處理器1150可被用來施行高解析度視訊及音訊內容的擷取及播放,包括處理使 用者手勢。感測器單元1160可包括複數個感測器及/或感測器控制器以介接至給定平台中存在的各種晶片外感測器。影像信號處理器1170可被提供有一或更多分離的ISP以施行有關於來自平台的一或更多相機的已擷取內容的影像處理,包括靜態及視訊相機。
顯示器處理器1180可提供對連接至給定像素密度的高解析度顯示器的支援,包括將內容無線地通訊以供在此種顯示器上播放的能力。又進一步而言,位置單元1190可包括具有對多個GPS群集的支援的GPS接收器而將高準確定位資訊(藉由使用此種GPS接收器所獲得)提供給應用。理解的是儘管藉由第11圖的實例中的此特定組的組件加以顯示,許多變化及替代是可能的。
現在參照第12圖,顯示的是藉其可使用實施例的範例系統的方塊圖。如所看見,系統1200可為智慧型手機或其他無線通訊器。基頻處理器1205被配置成施行有關於從該系統發送或由該系統所接收的通訊信號的各種信號處理。依次地,基頻處理器1205被耦合至應用處理器1210,其可為該系統的主CPU以執行OS及其他系統軟體,除了諸如許多熟知的社交媒體及多媒體應用的使用者應用以外。應用處理器1210可進一步被配置成施行用於該裝置的各種各樣的其他運算操作。
依次地,應用處理器1210可耦合至使用者介面/顯示器1220,例如,觸控螢幕顯示器。此外,應用處理器1210可耦合至記憶體系統,包括非揮發性記憶體 (即快閃記憶體1230)及系統記憶體(即動態隨機存取記憶體(DRAM)1235)。如進一步所看見,應用處理器1210進一步耦合至擷取裝置1240,諸如可紀錄視訊及/或靜態影像的一或更多影像擷取裝置。
仍參照第12圖,通用積體電路卡(UICC)1240(包含用戶識別模組及可能的安全儲存器與加密處理器)也被耦合至應用處理器1210。系統1200可進一步包括可耦合至應用處理器1210的安全處理器1250。複數個感測器1225可耦合至應用處理器1210以致能各種已感測資訊的輸入,諸如加速計及其他環境資訊。音訊輸出裝置1295可提供介面以輸出聲音,例如,以語音通訊、播放或串流音訊資料等等的形式。
如進一步所示出,近場通訊(NFC)無接觸介面1260被提供,其在NFC近場中經由NFC天線1265通訊。儘管分離的天線被顯示於第12圖中,理解的是在一些實施方式中,一個天線或不同組的天線可被提供以致能各種無線功能。
功率管理積體電路(PMIC)1215耦合至應用處理器1210以施行平台級功率管理。為此,PMIC 1215可發布功率管理請求至應用處理器1210而視需要進入某些低功率狀態。此外,根據平台限制,PMIC 1215也可控制系統1200的其他組件的功率位準。在一些實施例中,此處所述用以施行裝置加強模式的功率控制邏輯可能存在於PMIC 1215中及/或分佈於PMIC 1215與應用處理器 1210之間。
為了使通訊能夠被發送及接收,各種電路可被耦合於基頻處理器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內的各種功率管理動作。在一些實施例中,此處所述用以施行裝置加強模式的功率控制邏輯可能存在於PMIC 1380中及/或分佈於PMIC 1380與SoC 1310之間。
仍參照第13圖,為了提供無線能力,WLAN單元1350被耦合至SoC 1310及依次地耦合至天線1355。在各種實施方式中,WLAN單元1350可依據一或更多無線協定來提供通訊。
如進一步所示,複數個感測器1360可耦合至SoC 1310。這些感測器可包括各種加速計、環境及其他感測器,包括使用者手勢感測器。最終,音訊編解碼器1365被耦合至SoC 1310以提供對音訊輸出裝置1370的介面。當然理解的是儘管藉由第13圖中的此特定實施方式加以顯示,許多變化及替代是可能的。
現在參照第14圖,顯示的是代表性電腦系統 的方塊圖,諸如筆記型電腦、UltrabookTM或其他小形狀因子系統。處理器1410在一個實施例中包括微處理器、多核心處理器、多執行緒處理器、超低電壓處理器、嵌入式處理器、或其他已知處理元件。在所示的實施方式中,處理器1410當作用於與系統1400的各種組件的許多者通訊的主處理單元及中央集線器。作為一個實例,處理器1400被實施作為SoC。
處理器1410在一個實施例中與系統記憶體1415通訊。作為例示性實例,系統記憶體1415經由多個記憶體裝置或模組加以實施而提供給定量的系統記憶體。
為了提供諸如資料、應用、一或更多作業系統等等的資訊的持久性儲存,大量儲存器1420也可耦合至處理器1410。在各種實施例中,為了致能較薄及較輕的系統設計以及為了改善系統回應性,此大量儲存器可經由SSD加以實施或者該大量儲存器可主要藉由使用硬碟機(HDD)加以實施,該硬碟機具有小量的SSD儲存器來當作SSD快取以致能在功率下降事件期間非揮發性儲存內容狀態與其他此種資料,使得快速功率上升可發生在系統活動的重新啟動時。也在第14圖中所示,快閃裝置1422可被耦合至處理器1410,例如經由串列周邊介面(SPI)。此快閃裝置可提供系統軟體的非揮發性儲存,包括基本輸入/輸出軟體(BIOS)以及該系統的其他韌體。
各種輸入/輸出(I/O)裝置可能存於系統 1400內。第14圖的實施例中所具體顯示的是顯示器1424,其可為進一步提供給觸控螢幕1425的高解析度LCD或LED面板。在一個實施例中,顯示器1424可經由可被實施作為高性能圖形互連的顯示器互連被耦合至處理器1410。觸控螢幕1425可經由另一互連被耦合至處理器1410,其在實施例中可為I2C互連。如第14圖中所進一步顯示,除了觸控螢幕1425以外,藉由觸碰的使用者輸入也可經由觸控墊1430而發生,其可被配置於底架內且也可被耦合至與觸控螢幕1425相同的I2C互連。
為了感知運算及其他目的,各種感測器可能存在於該系統內且可能以不同方式被耦合至處理器1410。某些慣性及環境感測器可透過感測器集線器1440耦合至處理器1410,例如,經由I2C互連。在第14圖所示的實施例中,這些感測器可包括加速計1441、周圍光感測器(ALS)1442、羅盤1443及陀螺儀1444。其他環境感測器可包括一或更多熱感測器1446,其在一些實施例中經由系統管理匯流排(SMBus)匯流排耦合至處理器1410。
在第14圖中也看見,各種周邊裝置可經由低接腳數(LPC)互連來耦合至處理器1410。在所示的實施例中,各種組件可透過嵌入式控制器1435被耦合。此種組件可包括鍵盤1436(例如,經由PS2介面耦合)、風扇1437、及熱感測器1439。在一些實施例中,觸控墊1430也可經由PS2介面耦合至EC 1435。此外,諸如受信 平台模組(TPM)1438的安全處理器也可經由此LPC互連來耦合至處理器1410。
系統1400可能以各種各樣的方式來與外部裝置通訊,包括無線方式。在第14圖所示的實施例中,各種無線模組是存在的,其各者可對應於對特定無線通訊協定所配置的無線電。用於諸如近場的短程之無線通訊的一個方式可經由NFC單元1445,其可在一個實施例中經由SMBus與處理器1410通訊。注意到經由此NFC單元1445,彼此緊密相鄰的裝置可通訊。
如第14圖中進一步所看見,額外的無線單元可包括其他短程無線引擎,包括WLAN單元1450及藍芽單元1452。使用WLAN單元1450,Wi-FiTM通訊可被實現,儘管經由藍芽單元1452,短程藍芽TM通訊可能發生。這些單元可經由給定鏈接與處理器1410通訊。
此外,例如依據蜂巢式或其他無線廣域協定的無線廣域通訊可經由WWAN單元1456而發生,該WWAN單元依次可耦合至用戶識別模組(SIM)1457。此外,為了致能位置資訊的接收及使用,GPS模組1455也可能存在。注意到在第14圖所示的實施例中,WWAN單元1456及諸如相機模組1454的積體擷取裝置可經由給定鏈接來通訊。
積體相機模組1454可被併入於蓋子中。為了提供音訊輸入及輸出,音訊處理器可經由數位信號處理器(DSP)1460加以實施,其可經由高解析度音訊(HDA) 鏈接來耦合至處理器1410。類似地,DSP 1460可以與積體編碼器/解碼器(CODEC)及放大器1462通訊,其依次可耦合至可被實施於底架內的輸出揚聲器1463。類似地,放大器及CODEC 1462可被耦合以接收來自麥克風1465的音訊輸入,其在實施例中可經由雙陣列麥克風(諸如數位麥克風陣列)加以實施而提供高品質音訊輸入以致能該系統內的各種操作的語音啟動控制。也注意到音訊輸出可從放大器/CODEC 1462提供給耳機孔1464。儘管藉由第14圖的實施例中的這些特定組件加以顯示,理解的是本發明的範圍不限於此方面。
實施例可被實施於許多不同系統類型中。現在參照第15圖,顯示的是依據本發明實施例的系統的方塊圖。如第15圖中所示,多處理器系統1500為點對點互連系統,且包括經由點對點互連1550耦合的第一處理器1570及第二處理器1580。如第15圖中所示,處理器1570及1580的各者可為多核心處理器,包括第一及第二處理器核心(即,處理器核心1574a與1574b以及處理器核心1584a與1584b),儘管潛在地多更多的核心可能存在於該處理器中。該處理器的各者可包括PCU或其他功率管理邏輯以施行如此處所述之基於處理器的功率管理,包括控制系統1500的各種其他組件以致能裝置加強模式操作。
仍參照第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以耦合晶片組1590與高性能圖形引擎1538,藉由P-P互連1539。依次地,晶片組1590可經由介面1596被耦合至第一匯流排1516。如第15圖中所示,各種輸入/輸出(I/O)裝置1514和匯流排橋接器1518一起可被耦合至第一匯流排1516,該匯流排橋接器將第一匯流排1516耦合至第二匯流排1520。各種裝置可被耦合至第二匯流排1520,包括例如鍵盤/滑鼠1522、通訊裝置1526及諸如磁碟機或其他大量儲存裝置的資料儲存單元1528,該資料儲存單元可在一個實施例中包括代碼1530。進一步而言,音訊I/O 1524可被耦合至第二匯流排1520。實施例可被併入至其他類型的系統中,包括諸如智慧型蜂巢式電話、平板電腦、小筆電、UltrabookTM、或等等的行動裝置。
現在參照第16圖,顯示的是依據實施例的系統的一部分的方塊圖。在第16圖的實施例中,假設系統1600為給定平台,例如,諸如智慧型手機、平板電腦、 平板手機、電子閱讀器或等等的行動裝置。在所示的實施例中,系統1600包括處理器1610,其可為包括如此處所述之功率控制邏輯1615的多核心處理器。功率控制邏輯1615可採用許多不同形式,從PCU的獨立式硬體、微處理器、邏輯或其他功率控制實體,除了其他可能實施方式以外。一般而言,功率控制邏輯1615可根據目前操作條件來動態地分配功率限制給該系統的各種各樣裝置且因此可確保這些裝置接收特定功率位準而使各種各樣的使用案例能夠發生。在各種實施例中,功率控制邏輯1615可包括或被關聯於策略邏輯(為了在第16圖中容易例示而未顯示)而使決定能夠被做出而視需要重新平衡組件間的功率。實施例可因此改善固定功率包(power envelope)內的系統組件的性能、及/或降低平台功率成本與複雜度,藉由積極地管理給定組的平台組件之功率需要。
仍參照第16圖,複數個裝置16200-1620n是存在的。作為實例,這些裝置可採用一或更多積體電路的形式,諸如GPS裝置、無線介面、相機裝置或等等。又進一步而言,裝置1620的一或更多者可採用其他形式,諸如閃光燈裝置,與諸如靜態或視訊相機裝置的擷取裝置連接使用。注意到術語「裝置」包含超過單一組件,因為在一些情況中裝置可為由構成組件所形成的子系統。
在所示的實施例中,各個裝置1620包括用以致能功率控制邏輯1615與對應裝置間的相互作用的介面機制。在第16圖的實施例中,此介面機制包括能力儲存 器16220-1622n、功率限制儲存器16240-1624n、及通知邏輯16260-1626n。能力儲存器1622可被配置成儲存用於該裝置的一組功率位準。此能力儲存器在實施例中為非揮發性儲存器以儲存在其該裝置可於某些狀態(及於給定時間框架中)中操作的一組功率位準。在一個實施例中,三個功率位準的最小值可被提供給功率可被控制的受關注的各個時間框架。在實施例中,該三個功率位準包括最大功率位準,其可對應於在其發生該裝置的最大使用案例的最高功率消耗位準;一般功率位準,其可對應於在其發生該裝置的正常使用案例的標稱功率消耗位準;及最小功率位準,其可對應於在其可發生該裝置的最小使用案例的最低功率消耗位準。此種能力儲存器162可根據設計資訊、測試或特性資訊或等等而在該裝置的製造期間被寫入。
依次地,功率限制儲存器1624可被配置成儲存功率限制,其可為目前位準的指示,被分配的裝置根據目前系統操作條件在該目前位準加以供電。此功率限制儲存器可被提供有從處理器1610所接收的功率限制值(例如,針對替換時間框架各者對應於最大、最小或一般位準的一者)。較具體而言在實施例中,功率控制邏輯1615可將功率限制(例如,選自備提供作為功率能力資訊、或決定或計算的功率限制的該多個功率位準的一者)通訊給被設計的各個時間框架(例如,立即、中間的與長期或一般)。仍參照第16圖,裝置1620進一步包括通知邏輯1626。一般而言,通知邏輯1626可根據關於該裝置的目 前及未來操作的資訊而被配置成將對增加功率狀態的請求通知處理器1610(且較具體而言是功率控制邏輯1615),諸如對因為較高裝置使用(例如,觸發閃光燈以拍照、造成較高GPS裝置使用以鎖定至目前位置或等等)的增加功率狀態。
因此在各種實施例中,該介面機制可被提供以經過各種時間窗動態地配置各個裝置的功率限制。例如,裝置可被配置成消耗經過長時間期(例如,1秒)平均不超過1瓦(W)、經過中間(例如,10毫秒(ms))時間期不超過1.5W、及作為立即上限的不超過2W。該裝置(包括該裝置的相關韌體及/或其他控制邏輯)可被配置成執行這些功率限制。
在一些實施例中,該介面機制可使裝置能夠以該裝置需要高於目前設計的功率位準以供給定時間框架及/或使用案例的裝置通知之形式,通訊回饋資訊。因此,功率控制邏輯1615可接著實施功率管理策略以提供裝置加強模式,在其中平台功率預算可被動態地重新平衡,同時容許總體平台針對較小的最大功率位準加以設計。當重新平衡時,接收增加功率分配的裝置可因此在加強模式中操作,在其中一或更多操作參數(例如,頻率)可被增加而高於標稱(例如,保證)限制,使得該裝置可施行給定使用案例(藉由具有充足功率)及/或在較高性能位準施行該使用案例。
在實施例中,來源裝置16201送出通知以通知 功率控制邏輯1615對於超過該設計功率限制的增加功率有暫態需要。此通知訊息可包括對各個時間框架的請求的功率位準以及(任選的)請求碼或其他資訊以指出該請求的原因,諸如特定使用案例。
注意到功率控制邏輯1615與裝置1620間的通訊可藉由交握程序,一般如下列來進行。首先,功率控制邏輯1615分配可用功率預算給各個組件以供正常操作(例如,至少部份根據涉及OS及/或系統韌體所做出的資訊或決定)。此分配可藉由設定用於各個組件的功率限制至用於該裝置的一般值加以完成。當裝置16201要求高於該配置限制的功率位準時,它送出通知至功率控制邏輯1615。依次地,該功率控制邏輯讀取所要求的新功率位準、及相關的請求資訊(例如,通知原因或使用案例)。取決於該使用案例,功率控制邏輯1615可接著藉由暫時地配置新(較高)功率限制來准許該請求。當裝置1620已經完成該使用案例時,它送出另一通知至功率控制邏輯1615,具有較低(例如,一般)的請求功率限制。依次地,功率控制邏輯1615使該功率限制回到該正常位準,且操作繼續。
理解的是儘管在第16圖的實施例中在此高階層加以顯示,許多變化及替代是可能的。例如,儘管第16圖中在基於平台的系統之前後文中加以描述,諸如具有包括多核心處理器及其他積體電路(及/或對其耦合的一或更多周邊裝置)的電路板之可攜式裝置,在其他實施 例中,併入本發明實施例的系統可為被配置於單一半導體晶粒上的系統晶片,該單一半導體晶粒具有相異的IP邏輯區塊(例如,不同供應商)及具有不同功能與能力(包括功率能力),使得用於該不同IP區塊的動態使用案例的共用功率控制可被實現。又進一步而言,如此處所述的功率控制邏輯可被實施作為平台的分離組件(例如,分離的積體電路)。
在一個實例中,考慮到具有處理器、GPS裝置及4G資料連接裝置的平台。該GPS裝置可能需要消耗額外功率經過幾秒以供最初鎖定操作來鎖定至GPS衛星,在這以後它可消耗較低功率來追蹤它的位置。藉由裝置加強模式,該功率控制邏輯可被配置成增加該對GPS裝置的用於特定使用案例的功率限制以藉由最初鎖定操作來獲得它的位置。為此,若充足的功率餘量是不可得,該功率控制邏輯可如實例造成該4G資料通訊裝置(例如,4G數據機)降低它的功率消耗位準(及因此資料速率)以補償這個增加。一旦衛星鎖定被獲得,對兩個裝置的原始功率限制可回到它們的正常位準。此操作使該GPS裝置能夠具有爆發能力以較快地獲得鎖定。
在另一實例中,考慮到具有處理器、顯示器、相機、閃光燈及無線數據機(除了其他組件以外)的平台。當該使用者拍照時,充電或操作該閃光燈消耗突發的電功率。若該處理器忙於運行背景工作或在這時下載無線資料,該平台總功率消耗可能到達(或潛在地超過)平 台功率預算。使用具有裝置加強模式能力的實施例,功率控制邏輯可針對該處理器(其可藉由降低操作頻率來符合此限制)及該無線數據機(其可藉由降低資料傳輸速度來符合此限制)恰在該閃光燈消耗較高功率於照亮中以前設計較低功率限制,且接著在該閃光燈操作被完成以後使這些裝置回到正常位準。以此方式,該平台上的合計的最大電負載被降低。
實施例因此根據使用案例致能裝置功率限制的積極管理,實現具有較低平台功率設計限制的平台。替代地,實施例可被用來結合相同平台功率包內的較高性能組件。
現在參照第17圖,顯示的是用以動態地控制系統的裝置的功率限制之方法的流程圖,依據本發明的實施例。在實施例中,方法1700可藉由處理器的功率控制邏輯加以施行,其可藉由使用給定的硬體邏輯加以實施。此種邏輯可能範圍從一或更多專用微控制器或硬編碼邏輯至通用處理器核心。如所看見,方法1700開始於根據這些裝置的一般功率位準來分配功率給該系統的裝置的全部(方塊1710)。例如,在系統的功率上升時,各個裝置可將其在多個功率位準下操作的能力(諸如最小、一般及最大位準)通訊至該功率控制邏輯,用於受關注的時間框架。在此種分配以後,控制傳至方塊1720,此處對各個裝置的功率限制可被設計。為此,該功率控制邏輯可將該分配的功率限制(例如,以瓦為單位)通訊至各個裝置 (用於各個相關時間框架)以供儲存於對應裝置的功率限制儲存器中。因此,在此時該系統的各個裝置被配置成開始在具有一般功率消耗位準的正常操作位準下操作。那就是,各個裝置可被配置成讀取該功率限制(例如,以瓦為單位加以表示)及將此功率限制關連至適當操作條件以確保該裝置在此功率位準或在低於此功率位準的操作,諸如藉由適當頻率及電壓位準。
方法1700在菱形1730繼續,此處決定是否裝置需要較高功率位準以執行給定的使用案例。此種決定可根據從一或更多裝置接收到的請求較高功率消耗位準的通知。在多個請求被接收的情況中,此種請求可根據參照例如一或更多表所決定的該裝置的相對優先性(或使用案例的優先性)以給定的優先順序加以處理。在實施例中,這些接收的通知可包括請求的功率位準的指示及/或該使用案例的指示,諸如資料通訊速度、GPS鎖定操作或閃光燈照亮。若如在菱形1730所決定沒有裝置送出對較高功率位準的請求,沒有進一步的動作發生且控制可回送(例如,在給定的間隔以後)至菱形1730。
仍參照第17圖,假設請求從第一裝置加以接收。控制因此傳至方塊1740,此處功率預算可針對一或更多選定裝置而被降低。較具體而言,這些一或更多裝置可能為可在目前使用案例期間被放置於較低操作狀態中的裝置。此決定可參照將給定的使用案例關聯於此種使用案例期間是活動的裝置的表來加以做出。例如,假設閃光燈 被照亮以供照相。在此情況中,諸如資料通訊、GPS操作、或等等的其他操作是不必要且因此與此種使用關聯的裝置可被放置於較低功率狀態中(其在一些情況中可為低功率狀態,諸如在其中該裝置未積極地施行操作的睡眠狀態)。
在一些情況中,僅單一裝置可能需要使它的功率位準降低而讓較高的功率位準能夠被分配給請求的裝置,因為一個裝置的降低的功率消耗可被分配給該請求的裝置,同時整個系統維持在給定的功率預算內。又在其他情況中,超過一個其他裝置可能使它的功率限制降低而讓請求的功率位準能夠被分配給請求的裝置。儘管為了容易例示而未顯示,理解的是該功率控制邏輯可送出更新的功率位準信號至此種裝置以造成該功率消耗被降低。
進一步參照第17圖,控制接著傳至方塊1750,此處功率預算增加可被提供給該請求的裝置。例如,增加的功率限制回應可從該功率控制邏輯送至該裝置而使該裝置能夠相應地更新它的功率限制儲存器且使該裝置能夠在此較高功率限制下操作。因此,控制傳至方塊1760,此處用於此裝置的使用案例可被執行。例如,該閃光燈可在充足功率可得且該閃光燈被適當地充電時被照亮。之後,控制傳回到方塊1710,此處所有裝置可在該使用案例被完成以後被分配回到一般位準。注意到從方塊1760回到方塊1710可在經過針對該使用案例的預定時間(例如,如在表中所陳述且對該裝置指出)或回應於來自 該裝置的它已經完成它的(較高功率消耗)使用案例的指示以後自動地發生。理解的是儘管在第17圖的實施例中在此高階層加以顯示,許多變化可能發生。
現在參照第18圖,顯示的是依據本發明實施例的功率控制邏輯的方塊圖。如第18圖中所示,功率控制邏輯1800包括構成組件,其可被實施於硬體、軟體、及/或韌體的各種組合中。在實施例中,邏輯1800可藉由使用處理器的硬線邏輯(如第16圖的功率控制邏輯1615中)加以實施,諸如包括或關聯於適當儲存器的一或更多專用微控制器。
如第18圖中所示,功率控制邏輯1800包括功率分配邏輯1810、平台功率預算儲存器1820、及裝置功率能力儲存器1830。一般而言,功率分配邏輯1810可被配置成接收各種各樣的輸入資訊以及分配平台功率預算給該平台的裝置(包括該處理器本身)。此種分配可在該平台的功率上升時加以施行,且可適當地被動態地更新以藉由使一或更多裝置能夠進入裝置加強模式中而施行特定使用案例操作來符合各種各樣的使用案例,且之後回到原始分配(其可又再次被更新以符合相同或其他裝置的另一使用案例)。
如所看見,功率控制邏輯1810包括(或被關聯於)使用案例儲存器18150-1815n(各者關聯於給定裝置或裝置組合的特定使用案例)。儘管本發明的範圍不限於此方面,在實施例中各個使用案例儲存器1815可儲存 關於使用案例的資訊,諸如由主要裝置(其是用以施行該使用案例的主要操作)的特定使用案例操作、該裝置用以致能該使用案例操作的施行的相關功率位準、及該使用案例情境中所涉及的一或更多其他裝置的列表。此外,用於該使用案例的一或更多未使用裝置的識別也可被儲存。當然理解的是儘管藉由第18圖的實例中的此特定資訊加以描述,使用案例儲存器的許多變化及替代是可能的。
仍參照第18圖,平台功率預算儲存器1820被耦合至功率分配邏輯1810。在實施例中,儲存器1820可為配置儲存器,諸如配置成儲存總平台功率預算(例如,以瓦為單位)的非揮發性記憶體。使用本發明的實施例,此種平台功率預算可能是在比平台是針對最壞情況所設計時更低的位準,在最壞情況中該平台的各個裝置是同時在最大功率位準下操作。因此,此平台功率預算可在該平台的設計及製造時被設定,且可能是至少該平台的各個裝置在其被致能以同時在標稱功率位準下操作的位準,任選地具有一些量的額外功率餘量而使該裝置的一或更多者能夠在較高功率消耗位準下操作。
也如第18圖中所示,裝置功率能力儲存器1830被耦合至功率分配邏輯1810。在所示的實施例中,能力儲存器1830包括複數個項目18350-1835n,此處各個項目1835被關聯於該平台的特定裝置。在實施例中,各個項目1835包括複數個欄位,各用以儲存用於該裝置的多個功率位準的一者。如在此處所述的實例中,每個項目 可能有3個欄位(每個受關注的時間框架),各用以儲存用於該裝置的最小、標稱及最大功率位準的一者。關於不同裝置的功率能力的此資訊可在裝置功率上升時從該裝置本身通訊至儲存器1830,諸如在開機操作期間。為此,各個裝置可包括韌體或其他控制邏輯兩者以維持此功率能力資訊且在開機操作期間將該資訊通訊至功率控制邏輯1800。
如在第18圖中進一步所示,功率分配邏輯1810接收該平台功率預算資訊及該裝置功率能力資訊,且根據此種資訊可在各種裝置之中分配該平台功率預算。在實施例中,在功率上升及標準使用操作期間,各個裝置可被分配它的標稱功率位準且因此功率分配邏輯1810可送出功率分配訊息至該不同裝置,使得各個裝置可在它的標稱功率位準下操作。在實施例中,此種裝置分配訊息可包括以瓦為單位的功率位準(例如,該標稱功率位準),因為各個裝置可被配置成包括韌體或其他控制邏輯以理解此功率資訊以及控制該對應裝置的一或更多操作參數(例如,電壓及/或頻率)以致能在分配的功率位準下操作。
此外,當在平台操作期間時,特定裝置尋求執行可能要求較高功率位準的使用案例操作,該裝置可發布裝置通知至功率控制邏輯1800(且較具體而言被功率分配邏輯1810接收)。依次地,功率分配邏輯1810可決定是否充足功率餘量在該平台功率預算中是可得的而使此使用案例能夠發生。若如此,裝置加強訊息可被送出至該 對應裝置而使該裝置能夠在較高功率位準下操作以完成該使用案例。若反而不足的功率餘量是可得的,功率分配邏輯1810可決定是否一或更多其他裝置(包括該處理器本身)可被提供有降低的功率分配而使該使用案例能夠發生(或不發生,取決於平台限制,諸如熱或電限制)。理解的是儘管在第18圖的實施例中在此高階層加以顯示,許多變化及替代是可能的。
現在參照第19圖,顯示的是依據本發明另一實施例的方法的流程圖。如第19圖中所示,方法1900可被施行,例如藉由第18圖的功率分配邏輯1800。如所示,方法1900開始於決定平台功率預算(方塊1910)。作為實例,該平台功率預算可從該平台的配置儲存器加以獲得(諸如該處理器本身的配置儲存器)。其次控制傳至方塊1915,此處功率能力資訊可被接收自該平台的各種裝置及儲存於能力儲存器中(方塊1915)。如以上所討論,此功率能力資訊可包括給定裝置在其可能以不同模式操作的至少3個功率位準(每個時間框架)。其次控制傳至方塊1920,此處標稱功率位準可被分配及通訊至各個裝置(方塊1920)。因此在此時,該平台被配置以供正常操作,在其中各個裝置被分配它的標稱功率位準。
仍參照第19圖,可被決定是否用於增加的功率位準的裝置通知被接收(菱形1930)。注意到此裝置通知可包括各種資訊,諸如特定使用案例的識別、對此種使用案例的請求的功率位準(例如,以瓦為單位)以及諸 如使用案例的長度或等等的其他資訊。
當此種裝置通知被接收時,控制傳至菱形1940以決定是否充足功率預算存在以分配該增加的功率位準給此請求的裝置。在方塊1940的此決定可能是根據該平台功率預算與給該平台的各種裝置的功率總分配間的比較。作為實例,根據給各個裝置的標稱位準的最初裝置分配,可能有功率餘量可得(其可為由該功率分配邏輯所追蹤及儲存的動態值)。在其他情況中,系統可被設計具有最小功率餘量,使得對於針對該平台所定大小的給定功率輸送系統而言,若所有裝置正在它們的標稱位準下操作,沒有額外功率餘量是可得的。
在任何事件中,在菱形1940,決定是否充足的功率預算是可得的以分配增加的功率位準給請求的裝置。若如此,控制傳至方塊1950,此處該增加的功率位準可被分配給該裝置,且裝置加強訊息可被送出至此裝置。在實施例中,該裝置加強訊息可包括各種資訊,包括增加的功率位準(例如,用於該裝置的諸如從能力儲存器所獲得的最大功率位準),其可能以瓦為單位加以通訊。額外的資訊可在該裝置加強訊息中被送出,諸如該裝置被容許在此增加的功率位準下操作的時間長度,除了其他可能資訊以外,諸如過多久該裝置可再次請求此模式以提供遲滯的度量來防止相同裝置在所有其他裝置的成本下請求及接收裝置加強模式。
仍參照第19圖,假設在其中裝置通知該功率 控制邏輯何時特定使用案例被完成的實施例,控制其次傳至方塊1960,此處用於降低的功率位準(該裝置可在該使用案例完成時自主地進入,在實施例中)的裝置通知可被接收。此通知可採用許多不同形式且在一個實施例中可簡單地是該使用案例被完成的通知。因此在方塊1965,標稱功率位準可被分配給此裝置,其任選地可被通訊至該裝置。該較高功率消耗位準與此標稱位準間的差異也可被加回至可得的功率餘量。此外,若任何其他裝置被分配降低的功率位準而使此使用案例能夠發生(被描述於下),重新配置用於此種裝置的標稱功率位準也可發生在方塊1965(其可被通訊至該裝置),隨著對該可得的功率餘量的適當更新。
仍參照第19圖,若在菱形1940決定不足的功率預算是可得的以分配增加的功率位準給請求的裝置,控制反而傳至方塊1970,此處一或更多裝置可被識別以接收降低的功率分配而使該使用案例能夠發生。在實施例中,功率分配邏輯可對使用案例表做出參照,以針對特定使用案例由請求的裝置所請求來決定此種使用案例中所涉及的裝置及/或可能適於在用於該使用案例的較低位準下供電的裝置,如此處所述。控制其次傳至方塊1980,此處降低的功率訊息可被送出至該(等)識別的裝置。在實施例中,此降低的功率訊息可包括用於該(等)識別的裝置之降低的功率位準(例如,最小功率位準),諸如從能力儲存器所獲得。理解的是該(等)識別的裝置可在一些 情況中包括或為該主處理器本身,諸如在額外功率需要用於周邊裝置使用案例(諸如閃光燈裝置與擷取裝置的結合)時。在方塊1980的一或更多降低的功率訊息的此通訊以後,控制傳至方塊1950,如以上所討論。理解的是儘管在第19圖的實施例中在此高階層加以顯示,許多變化及替代是可能的。
下列的實例關於另外的實施例。
在一個實例中,一種處理器包含:至少一個核心,用以執行指令;及耦合至該至少一個核心的功率控制邏輯,用以接收來自複數個裝置的功率能力資訊以耦合至該處理器及分配平台功率預算給該複數個裝置、設定用於該複數個裝置各者而且為對應裝置被配電之第一功率位準、通訊該第一功率位準至該複數個裝置的各者、以及回應於來自第二裝置對較高功率位準的請求而動態地減少被分配給第一裝置的第一功率及增加被分配給該第二裝置的第二功率。
在實例中,回應於來自該第二裝置的該請求,該功率控制邏輯用以送出第一訊息至該第一裝置以造成該第一裝置在小於該第一功率位準的第三功率位準操作,以及送出第二訊息至該第二裝置以造成該第二裝置在大於該第一功率位準的第二功率位準操作。
在實例中,該功率控制邏輯用以送出該第二訊息以使該第二裝置能夠執行使用案例。
在實例中,該第二裝置包含閃光燈裝置且該 使用案例包含該閃光燈裝置的照亮以讓使用者能夠經由擷取裝置擷取影像。
在實例中,在執行該使用案例以後,該功率控制邏輯用以設定用於該複數個裝置各者的該第一功率位準及通訊該第一功率位準至該複數個裝置的各者。
在實例中,該功率控制邏輯用以送出該第一訊息至資料通訊裝置以造成該資料通訊裝置的通訊頻率在該使用案例期間被降低。
在實例中,該第一功率位準對該複數個裝置的至少一些為不同。
在實例中,該功率能力資訊包括用於複數個時間框架各者的該第一功率位準、第二功率位準、及第三功率位準,該功率能力資訊用以從該複數個裝置的各者通訊至該功率控制邏輯。
在實例中,該第一功率位準包含該對應裝置用以操作的標稱功率位準,該第二功率位準包含該對應裝置用以操作的最大功率位準,且該第三功率位準包含該對應裝置用以操作的最小功率位準。
注意到以上處理器可藉由使用各種手段加以實施。
在實例中,該處理器包含被併入於具使用者設備觸控能力的裝置中的SoC。
在另一實例中,一種系統包含顯示器及記憶體,且包括以上實例的一或更多者的處理器。
在另一實例中,一種方法包含:經由處理器的功率分配邏輯分配用於平台的複數個裝置各者的標稱功率位準,該平台包括該處理器;接收來自該複數個裝置的第一裝置之用於增加功率位準的裝置通知;及分配該增加功率位準給該第一裝置,以使該第一裝置能夠施行第一使用案例的操作。
在實例中,該方法進一步包含決定是否可得功率餘量存在以分配該增加功率位準,且若沒有,識別該複數個裝置的一或更多其他裝置以接收減少功率分配、及送出減少功率訊息至該一或更多其他裝置。
在實例中,該方法進一步包含分配該增加功率位準給該第一裝置及在送出該減少功率訊息以後送出裝置加強訊息至該第一裝置,其中該第一裝置用以更新該第一裝置的一或更多操作參數以在該增加功率位準操作。
在實例中,該方法進一步包含接收來自該複數個裝置的功率能力資訊及儲存該功率能力資訊於能力儲存器中。
在實例中,該方法進一步包含存取該能力儲存器以決定用於該第一裝置的該增加功率位準、及至少部份根據該增加功率位準來決定是否可得功率餘量存在以分配該增加功率位準。
在實例中,該方法進一步包含藉由該裝置通知接收該第一使用案例的指示、及存取與該第一使用案例關聯的儲存器。
在實例中,該方法進一步包含回應於與該第一使用案例關聯的該儲存器中所儲存的使用案例資訊,識別該複數個裝置的至少一個裝置以接收減少功率分配。
在另一實例中,一種包括指令的電腦可讀取媒體用以施行以上實例的任一者的方法。
在另一實例中,一種包括資料的電腦可讀取媒體用以由至少一個機器用來製造至少一個積體電路以施行以上實例的任一者的方法。
在另一實例中,一種設備包含用以施行以上實例的任一者的方法之手段。
在另一實例中,一種系統,包含:處理器,包括各用以獨立地執行指令的複數個核心及用以控制該複數個核心的功率消耗的功率控制單元;耦合至該處理器的複數個裝置,該複數個裝置的各者包括能力儲存器以儲存對應裝置用以操作於相關操作模式中的複數個功率位準、及控制邏輯以接收功率分配訊息與控制該對應裝置的一或更多操作參數來致能在關聯於該功率分配訊息的功率位準下操作;及功率控制器,包括功率分配邏輯以接收來自該複數個裝置的該複數個功率位準、分配功率預算給該複數個裝置、送出包括該對應裝置被配電之第一功率位準的該功率分配訊息至該複數個裝置的各者、及回應於來自第一裝置的關於在該第一裝置上所施行之使用情境的通知而動態地更新被分配給該第一裝置的功率。
在實例中,該系統進一步包含儲存器以儲存 各關聯於使用情境的複數個項目,其中該功率控制器用以回應於該通知來存取該儲存器的項目以及回應於該儲存器的該項目中所儲存之使用案例資訊來識別該複數個裝置的至少一個裝置以接收減少功率分配。
在實例中,該系統進一步包含第二能力儲存器以儲存用於該複數個裝置的該複數個功率位準,其中回應於該通知,該功率分配邏輯用以存取該第二能力儲存器、獲得用於該第一裝置的該複數個功率位準、決定對該使用情境的用於該第一裝置的更新功率位準、及送出具有該更新功率位準的更新功率分配訊息至該第一裝置。
在實例中,該功率控制單元包含該功率控制器。
在實例中,該複數個裝置的至少一些包含該處理器的智慧財產邏輯。
理解的是以上實例的各種組合是可能的。
實施例可被使用於許多不同類型的系統中。例如,在一個實施例中通訊裝置被配置成施行此處所述的各種方法及技術。當然,本發明的範圍不限於通訊裝置,且反而其他實施例可針對用以處理指令的其他類型的設備、或包括指令的一或更多機器可讀取媒體,該指令回應於在運算裝置上被執行,造成該裝置實行此處所述之方法及技術的一或更多者。
實施例可被實施於代碼中且可被儲存於具有指令儲存於其上的非暫時性儲存媒體上,其可被用來設計 系統以施行該指令。實施例也可被實施於資料中且可被儲存於非暫時性儲存媒體上,其若由至少一個機器所使用時,造成該至少一個機器製造至少一個積體電路以施行一或更多操作。該儲存媒體可包括但不限於:包括軟碟、光碟、固態硬碟(SSD)、光碟唯讀記憶體(CD-ROM)、可重寫光碟(CD-RW)、及磁光碟的任何類型的磁碟;諸如唯讀記憶體(ROM)、諸如動態隨機存取記憶體(DRAM)及靜態隨機存取記憶體(SRAM)的隨機存取記憶體(RAM)、可抹除可程式化唯讀記憶體(EPROM)、快閃記憶體、電可抹除可程式化唯讀記憶體(EEPROM)的半導體裝置;磁或光學卡,或適於儲存電子指令的任何其他類型的媒體。
儘管本發明已經針對有限數量的實施例加以描述,那些熟習本技藝之人士將理解從中的許多修改及變化。意圖的是所附申請專利範圍涵蓋所有此種修改及變化而落在本發明的真正精神與範圍內。
110‧‧‧處理器
120a、120n‧‧‧核心
125a、125n‧‧‧積體電壓調整器
125x‧‧‧另一積體電壓調整器
132‧‧‧輸入/輸出介面
134‧‧‧另一介面
136‧‧‧積體記憶體控制器
138‧‧‧功率控制單元
150‧‧‧電源供應
160‧‧‧外部電壓調整器

Claims (21)

  1. 一種處理器,包含:至少一個核心,用以執行指令;及耦合至該至少一個核心的功率控制邏輯,用以接收來自複數個裝置的功率能力資訊以耦合至該處理器及分配平台功率預算給該複數個裝置、設定用於該複數個裝置各者的而且為對應裝置被配電之第一功率位準、通訊該第一功率位準至該複數個裝置的各者、以及回應於來自第二裝置對較高功率位準的請求而動態地減少被分配給第一裝置的第一功率及增加被分配給該第二裝置的第二功率。
  2. 如申請專利範圍第1項的處理器,其中回應於來自該第二裝置的該請求,該功率控制邏輯用以送出第一訊息至該第一裝置以造成該第一裝置在小於該第一功率位準的第三功率位準操作,以及送出第二訊息至該第二裝置以造成該第二裝置在大於該第一功率位準的第二功率位準操作。
  3. 如申請專利範圍第2項的處理器,其中該功率控制邏輯用以送出該第二訊息以使該第二裝置能夠執行使用案例。
  4. 如申請專利範圍第3項的處理器,其中該第二裝置包含閃光燈裝置且該使用案例包含該閃光燈裝置的照亮以讓使用者能夠經由擷取裝置擷取影像。
  5. 如申請專利範圍第3項的處理器,其中在執行該使用案例以後,該功率控制邏輯用以設定用於該複數個裝 置各者的該第一功率位準及通訊該第一功率位準至該複數個裝置的各者。
  6. 如申請專利範圍第3項的處理器,其中該功率控制邏輯用以送出該第一訊息至資料通訊裝置以造成該資料通訊裝置的通訊頻率在該使用案例期間被降低。
  7. 如申請專利範圍第1項的處理器,其中該第一功率位準對該複數個裝置的至少一些為不同。
  8. 如申請專利範圍第1項的處理器,其中該功率能力資訊包括用於複數個時間框架各者的該第一功率位準、第二功率位準、及第三功率位準,該功率能力資訊用以從該複數個裝置的各者通訊至該功率控制邏輯。
  9. 如申請專利範圍第8項的處理器,其中該第一功率位準包含該對應裝置用以操作的標稱功率位準,該第二功率位準包含該對應裝置用以操作的最大功率位準,且該第三功率位準包含該對應裝置用以操作的最小功率位準。
  10. 一種具有儲存於其上的資料的機器可讀取媒體,該資料若被至少一個機器使用時造成該至少一個機器製造至少一個積體電路以施行方法,該方法包含:經由處理器的功率分配邏輯分配用於平台的複數個裝置各者的標稱功率位準,該平台包括該處理器;接收來自該複數個裝置的第一裝置之用於增加功率位準的裝置通知;及分配該增加功率位準給該第一裝置,以使該第一裝置能夠施行第一使用案例的操作。
  11. 如申請專利範圍第10項的機器可讀取媒體,其中該方法進一步包含決定是否可得功率餘量存在以分配該增加功率位準,且若沒有,識別該複數個裝置的一或更多其他裝置以接收減少功率分配、及送出減少功率訊息至該一或更多其他裝置。
  12. 如申請專利範圍第11項的機器可讀取媒體,其中該方法進一步包含分配該增加功率位準給該第一裝置及在送出該減少功率訊息以後送出裝置加強訊息至該第一裝置,其中該第一裝置用以更新該第一裝置的一或更多操作參數以在該增加功率位準操作。
  13. 如申請專利範圍第10項的機器可讀取媒體,其中該方法進一步包含接收來自該複數個裝置的功率能力資訊及儲存該功率能力資訊於能力儲存器中。
  14. 如申請專利範圍第13項的機器可讀取媒體,其中該方法進一步包含存取該能力儲存器以決定用於該第一裝置的該增加功率位準、及至少部份根據該增加功率位準來決定是否可得功率餘量存在以分配該增加功率位準。
  15. 如申請專利範圍第10項的機器可讀取媒體,其中該方法進一步包含藉由該裝置通知接收該第一使用案例的指示、及存取與該第一使用案例關聯的儲存器。
  16. 如申請專利範圍第15項的機器可讀取媒體,其中該方法進一步包含回應於與該第一使用案例關聯的該儲存器中所儲存的使用案例資訊,識別該複數個裝置的至少一個裝置以接收減少功率分配。
  17. 一種系統,包含:處理器,包括各用以獨立地執行指令的複數個核心及用以控制該複數個核心的功率消耗的功率控制單元;耦合至該處理器的複數個裝置,該複數個裝置的各者包括能力儲存器以儲存對應裝置用以操作於相關操作模式中的複數個功率位準、及控制邏輯以接收功率分配訊息與控制該對應裝置的一或更多操作參數來致能在關聯於該功率分配訊息的功率位準下操作;及功率控制器,包括功率分配邏輯以接收來自該複數個裝置的該複數個功率位準、分配功率預算給該複數個裝置、送出包括該對應裝置被配電之第一功率位準的該功率分配訊息至該複數個裝置的各者、及回應於來自第一裝置的關於在該第一裝置上所施行之使用情境的通知而動態地更新被分配給該第一裝置的功率。
  18. 如申請專利範圍第17項的系統,進一步包含儲存器以儲存各關聯於使用情境的複數個項目,其中該功率控制器用以回應於該通知來存取該儲存器的項目以及回應於該儲存器的該項目中所儲存之使用案例資訊來識別該複數個裝置的至少一個裝置以接收減少功率分配。
  19. 如申請專利範圍第17項的系統,進一步包含第二能力儲存器以儲存用於該複數個裝置的該複數個功率位準,其中回應於該通知,該功率分配邏輯用以存取該第二能力儲存器、獲得用於該第一裝置的該複數個功率位準、決定對該使用情境的用於該第一裝置的更新功率位準、及 送出具有該更新功率位準的更新功率分配訊息至該第一裝置。
  20. 如申請專利範圍第17項的系統,其中該功率控制單元包含該功率控制器。
  21. 如申請專利範圍第20項的系統,其中該複數個裝置的至少一些包含該處理器的智慧財產邏輯。
TW105100964A 2015-02-17 2016-01-13 執行平台裝置之動態功率控制的處理器、機器可讀取媒體及系統 TWI630476B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/623,764 2015-02-17
US14/623,764 US9874922B2 (en) 2015-02-17 2015-02-17 Performing dynamic power control of platform devices

Publications (2)

Publication Number Publication Date
TW201638717A true TW201638717A (zh) 2016-11-01
TWI630476B TWI630476B (zh) 2018-07-21

Family

ID=56621105

Family Applications (1)

Application Number Title Priority Date Filing Date
TW105100964A TWI630476B (zh) 2015-02-17 2016-01-13 執行平台裝置之動態功率控制的處理器、機器可讀取媒體及系統

Country Status (5)

Country Link
US (1) US9874922B2 (zh)
EP (1) EP3259652A4 (zh)
CN (1) CN107250946B (zh)
TW (1) TWI630476B (zh)
WO (1) WO2016133664A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI749728B (zh) * 2020-08-24 2021-12-11 和碩聯合科技股份有限公司 可攜式電子裝置
TWI760247B (zh) * 2018-10-12 2022-04-01 美商谷歌有限責任公司 低功耗加法器電路

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105253330B (zh) * 2015-10-30 2017-04-05 中国空间技术研究院 一种基于优化的信息融合geo卫星控制系统菜单式设计方法
US10228755B2 (en) * 2016-09-30 2019-03-12 Intel Corporation Processor voltage control using running average value
US10754404B2 (en) * 2016-09-30 2020-08-25 Intel Corporation Compensation control for variable power rails
US10360077B2 (en) 2016-10-10 2019-07-23 International Business Machines Corporation Measuring utilization of resources in datacenters
US11169592B2 (en) 2016-10-10 2021-11-09 International Business Machines Corporation SLA-based backup power management during utility power interruption in disaggregated datacenters
US10819599B2 (en) 2016-10-10 2020-10-27 International Business Machines Corporation Energy consumption as a measure of utilization and work characterization in a system
US10838482B2 (en) 2016-10-10 2020-11-17 International Business Machines Corporation SLA-based power management in disaggregated computing systems
US10545560B2 (en) * 2016-10-10 2020-01-28 International Business Machines Corporation Power management and utilization detection of computing components
US10664030B2 (en) * 2017-04-19 2020-05-26 Quanta Computer Inc. System and method for dynamic power capping and load balance management for a multi-node system
KR102362107B1 (ko) * 2017-11-21 2022-02-11 구글 엘엘씨 기계 학습 기능을 갖는 저전력 앰비언트 컴퓨팅 시스템
US11054887B2 (en) * 2017-12-28 2021-07-06 Advanced Micro Devices, Inc. System-wide low power management
WO2019240796A1 (en) * 2018-06-14 2019-12-19 Hewlett-Packard Development Company, L.P. Delegation of universal serial bus power among multiple ports
US10761583B2 (en) 2018-09-11 2020-09-01 International Business Machines Corporation Variation-aware intra-node power shifting among different hardware components
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
TWI708957B (zh) * 2019-12-12 2020-11-01 聚眾聯合科技股份有限公司 動態功率定位方法及其動態功率定位系統
TWI758672B (zh) * 2019-12-19 2022-03-21 宏正自動科技股份有限公司 電子裝置以及電源分配方法
US11775185B2 (en) * 2020-09-17 2023-10-03 Micron Technology, Inc. Power budget arbitration for multiple concurrent access operations in a memory device
WO2023038166A1 (ko) 2021-09-08 2023-03-16 엘지전자 주식회사 디스플레이 장치

Family Cites Families (94)

* 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
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
US5621250A (en) 1995-07-31 1997-04-15 Ford Motor Company Wake-up interface and method for awakening an automotive electronics module
US5931950A (en) 1997-06-17 1999-08-03 Pc-Tel, Inc. Wake-up-on-ring power conservation for host signal processing communication system
US6167524A (en) * 1998-04-06 2000-12-26 International Business Machines Corporation Apparatus and method for efficient battery utilization in portable personal computers
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
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
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
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
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
KR20050115227A (ko) 2003-01-23 2005-12-07 유니버시티 오브 로체스터 다중 클록 도메인 마이크로프로세서
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
US20070156992A1 (en) 2005-12-30 2007-07-05 Intel Corporation Method and system for optimizing latency of dynamic memory sizing
US7451333B2 (en) 2004-09-03 2008-11-11 Intel Corporation Coordinating idle state transitions in multi-core processors
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
US20070110360A1 (en) * 2005-11-15 2007-05-17 Linear Technology Corporation Dynamic power allocation in system for providing power over communication link
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
US7539881B2 (en) * 2006-04-15 2009-05-26 Hewlett-Packard Development Company, L.P. System and method for dynamically adjusting power caps for electronic components based on power consumption
US7752468B2 (en) 2006-06-06 2010-07-06 Intel Corporation Predict computing platform memory power utilization
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
US7969746B2 (en) 2006-09-22 2011-06-28 Itt Manufacturing Enterprises, Inc. Connection of a system module to an electronic device
US7793126B2 (en) 2007-01-19 2010-09-07 Microsoft Corporation Using priorities and power usage to allocate power budget
US7793120B2 (en) * 2007-01-19 2010-09-07 Microsoft Corporation Data structure for budgeting power for multiple devices
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
JP2008257578A (ja) 2007-04-06 2008-10-23 Toshiba Corp 情報処理装置、スケジューラおよび情報処理置のスケジュール制御方法
US7818592B2 (en) * 2007-04-18 2010-10-19 Globalfoundries Inc. Token based power control mechanism
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
US8024590B2 (en) 2007-12-10 2011-09-20 Intel Corporation Predicting future power level states for processor cores
US20090150696A1 (en) 2007-12-10 2009-06-11 Justin Song Transitioning a processor package to a low power state
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 엘지전자 주식회사 전원관리 제어 장치 및 방법
US9411390B2 (en) * 2008-02-11 2016-08-09 Nvidia Corporation Integrated circuit device having power domains and partitions based on use case power optimization
CN101515161A (zh) * 2008-02-18 2009-08-26 国际商业机器公司 集中能源管理方法和系统
US8156362B2 (en) 2008-03-11 2012-04-10 Globalfoundries Inc. Hardware monitoring and decision making for transitioning in and out of low-power state
US8954977B2 (en) 2008-12-09 2015-02-10 Intel Corporation Software-based thread remapping for power savings
US8433931B2 (en) * 2009-05-13 2013-04-30 Microsoft Corporation Integrating energy budgets for power management
US8700943B2 (en) 2009-12-22 2014-04-15 Intel Corporation Controlling time stamp counter (TSC) offsets for mulitple cores and threads
US8627123B2 (en) * 2010-03-25 2014-01-07 Microsoft Corporation Managing power provisioning in distributed computing
US8943334B2 (en) 2010-09-23 2015-01-27 Intel Corporation Providing per core voltage and frequency control
US8949637B2 (en) 2011-03-24 2015-02-03 Intel Corporation Obtaining power profile information with low overhead
US8612782B2 (en) * 2011-03-31 2013-12-17 Intel Corporation System and method for determining multiple power levels of the sub-systems based on a detected available power and prestored power setting information of a plurality of different combinations of the sub-systems
US8769316B2 (en) 2011-09-06 2014-07-01 Intel Corporation Dynamically allocating a power budget over multiple domains of a processor
US9811130B2 (en) 2011-09-12 2017-11-07 The Boeing Company Power management control system
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
US8954770B2 (en) 2011-09-28 2015-02-10 Intel Corporation Controlling temperature of multiple domains of a multi-domain processor using a cross domain margin
US9026815B2 (en) 2011-10-27 2015-05-05 Intel Corporation Controlling operating frequency of a core domain via a non-core domain of a multi-domain processor
US8832478B2 (en) 2011-10-27 2014-09-09 Intel Corporation Enabling a non-core domain to control memory bandwidth in a processor
US8943340B2 (en) 2011-10-31 2015-01-27 Intel Corporation Controlling a turbo mode frequency of a processor
US9158693B2 (en) 2011-10-31 2015-10-13 Intel Corporation Dynamically controlling cache size to maximize energy efficiency
WO2013137862A1 (en) 2012-03-13 2013-09-19 Intel Corporation Dynamically controlling interconnect frequency in a processor
US9436245B2 (en) 2012-03-13 2016-09-06 Intel Corporation Dynamically computing an electrical design point (EDP) for a multicore processor
WO2013137859A1 (en) 2012-03-13 2013-09-19 Intel Corporation Providing energy efficient turbo operation of a processor
US9223376B2 (en) * 2012-03-23 2015-12-29 Qualcomm Incorporated Managing electrical current in a portable computing device when two or more communications overlap in drawing power during a transmission
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
US20140089699A1 (en) * 2012-09-27 2014-03-27 Advanced Micro Devices Power management system and method for a processor
US9298247B2 (en) 2012-11-27 2016-03-29 International Business Machines Corporation Distributed power budgeting
US9098280B2 (en) * 2012-12-28 2015-08-04 Intel Corporation Staged power distribution control
US9766678B2 (en) * 2013-02-04 2017-09-19 Intel Corporation Multiple voltage identification (VID) power architecture, a digital synthesizable low dropout regulator, and apparatus for improving reliability of power gates
US9665154B2 (en) 2013-05-31 2017-05-30 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Subsystem-level power management in a multi-node virtual machine environment
US9261935B2 (en) * 2013-07-01 2016-02-16 Advanced Micro Devices, Inc. Allocating power to compute units based on energy efficiency
US20160070327A1 (en) * 2014-09-08 2016-03-10 Qualcomm Incorporated System and method for peak current management to a system on a chip

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI760247B (zh) * 2018-10-12 2022-04-01 美商谷歌有限責任公司 低功耗加法器電路
US11586701B2 (en) 2018-10-12 2023-02-21 Google Llc Low-power adder circuit
TWI749728B (zh) * 2020-08-24 2021-12-11 和碩聯合科技股份有限公司 可攜式電子裝置

Also Published As

Publication number Publication date
TWI630476B (zh) 2018-07-21
EP3259652A4 (en) 2018-10-24
EP3259652A1 (en) 2017-12-27
WO2016133664A1 (en) 2016-08-25
CN107250946B (zh) 2020-12-01
US20160239068A1 (en) 2016-08-18
US9874922B2 (en) 2018-01-23
CN107250946A (zh) 2017-10-13

Similar Documents

Publication Publication Date Title
TWI630476B (zh) 執行平台裝置之動態功率控制的處理器、機器可讀取媒體及系統
US11841752B2 (en) Controlling average power limits of a processor
US11567896B2 (en) Dynamically updating logical identifiers of cores of a processor
JP2024024042A (ja) プロセッサの最適スロットルのためのシステム、機器、及び方法
CN107077175B (zh) 提供针对多芯片封装的热参数报告的装置和方法
US9710043B2 (en) Controlling a guaranteed frequency of a processor
US11481013B2 (en) Multi-level loops for computer processor control
US10379904B2 (en) Controlling a performance state of a processor using a combination of package and thread hint information
US11698812B2 (en) System, apparatus and method for providing hardware state feedback to an operating system in a heterogeneous processor
US10620682B2 (en) System, apparatus and method for processor-external override of hardware performance state control of a processor
US10289188B2 (en) Processor having concurrent core and fabric exit from a low power state
US10324519B2 (en) Controlling forced idle state operation in a processor
CN111566590A (zh) 用于基于温度规格的可控处理器配置的系统、装置和方法
US10429918B2 (en) Controlling turbo mode frequency operation in a processor
US20160224090A1 (en) Performing context save and restore operations in a processor
CN107077180B (zh) 基于功率状态而调整电压调节器
WO2020123034A1 (en) System, apparatus and method for dynamic thermal distribution of a system on chip