TW201635083A - 用以提供多晶片封裝之熱參數報告的裝置與方法 - Google Patents

用以提供多晶片封裝之熱參數報告的裝置與方法 Download PDF

Info

Publication number
TW201635083A
TW201635083A TW104138328A TW104138328A TW201635083A TW 201635083 A TW201635083 A TW 201635083A TW 104138328 A TW104138328 A TW 104138328A TW 104138328 A TW104138328 A TW 104138328A TW 201635083 A TW201635083 A TW 201635083A
Authority
TW
Taiwan
Prior art keywords
temperature
processor
power management
mcp
margin
Prior art date
Application number
TW104138328A
Other languages
English (en)
Other versions
TWI592794B (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 TW201635083A publication Critical patent/TW201635083A/zh
Application granted granted Critical
Publication of TWI592794B publication Critical patent/TWI592794B/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/16Constructional details or arrangements
    • G06F1/18Packaging or power distribution
    • G06F1/189Power distribution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/20Cooling means
    • G06F1/206Cooling means comprising thermal management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/20Cooling means
    • 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
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • 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/325Power saving in peripheral device
    • G06F1/3253Power saving in bus
    • 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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • G06F11/3072Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0412Digitisers structurally integrated in a display
    • 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/266Arrangements to supply power to external peripherals either directly from the computer or under computer control, e.g. supply of power through the communication port, computer controlled power-strips
    • 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
    • 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)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Power Engineering (AREA)
  • Computer Hardware Design (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Power Sources (AREA)
  • Microcomputers (AREA)

Abstract

在實施例中,一種處理器包括至少一個核心和功率管理邏輯。該功率管理邏輯係用以從在包括該處理器的封裝內之複數個晶粒來接收溫度資料,和判斷複數個溫度控制餘裕的最小溫度控制餘裕。每個溫度控制餘裕將基於與該晶粒相關的各別熱控制溫度並且基於與該晶粒相關的各別溫度資料來判斷。功率管理邏輯也用以產生熱報告,該熱報告係用以包括最小的溫度控制餘裕,以及用以儲存該熱報告。其他實施例被描述和請求保護。

Description

用以提供多晶片封裝之熱參數報告的裝置與方法
實施例關於系統的功率管理,並且更具體地關於一種包括處理器的多晶片封裝的功率管理。
在半導體處理和邏輯設計的進步已經允許增加可以存在於積體電路裝置的邏輯數量。因此,電腦系統配置已經從單一積體電路演變成可能關於多個硬體執行緒、複數個核心、複數個裝置的系統和/或在各積體電路上的完整系統。此外,當積體電路的密度和效能不斷成長,計算系統(從嵌入式系統到伺服器)的功率需求也不斷升級。此外,軟體的低效率和其硬體要求,也導致計算裝置的能源消耗增加。事實上,一些研究指出,計算裝置消耗國家,如美利堅合眾國的全部電力供應的相當大比例。因此,對於與積體電路相關的能源效率及節約有重要需求。這些需求將隨著伺服器、桌上型電腦、筆記型電腦、UltrabooksTM、平板電腦、行動電話、處理器、嵌入 式系統等變得更加普遍(包括典型的電腦、汽車和電視機到生物技術)。
100‧‧‧系統
110‧‧‧處理器
120a‧‧‧核心
120n‧‧‧核心
125a‧‧‧積體電壓調節器
125n‧‧‧積體電壓調節器
125x‧‧‧積體電壓調節器
132‧‧‧輸入/輸出介面
134‧‧‧介面
136‧‧‧積體記憶體控制器
138‧‧‧功率控制單元(PCU)
150‧‧‧電源供應
160‧‧‧外部電壓調節器
200‧‧‧處理器
210a‧‧‧核心
210b‧‧‧核心
210n‧‧‧核心
215‧‧‧互連
220‧‧‧非核心
230‧‧‧共享快取
240‧‧‧積體記憶體控制器
250a‧‧‧介面
250n‧‧‧介面
255‧‧‧功率控制單元
300‧‧‧處理器
310‧‧‧核心域
3100‧‧‧核心域
310n‧‧‧核心域
320‧‧‧圖形域
330‧‧‧環形互連
3400‧‧‧末階快取(LLC)
340n‧‧‧末階快取(LLC)
350‧‧‧系統代理電路
352‧‧‧顯示控制器
355‧‧‧電源控制單元
370‧‧‧積體記憶體控制器(IMC)
3800‧‧‧介面
380n‧‧‧介面
400‧‧‧處理器
401‧‧‧核心
401a‧‧‧硬體執行緒
401b‧‧‧硬體執行緒
402‧‧‧核心
402a‧‧‧架構狀態暫存器
402b‧‧‧架構狀態暫存器
405‧‧‧匯流排介面模組
410‧‧‧較高階層的快取
415‧‧‧資料TLB
420‧‧‧分支目標緩衝器和指令轉譯緩衝器
421‧‧‧分支目標緩衝器和指令轉譯緩衝器
425‧‧‧解碼器
426‧‧‧解碼器
430‧‧‧分配器和更名區塊
431‧‧‧分配器和更名區塊
435‧‧‧重新排序/退休單元
436‧‧‧重新排序/退休單元
440‧‧‧執行單元
441‧‧‧執行單元
450‧‧‧較低階資料快取和資料轉譯緩衝器(D-TLB)
451‧‧‧較低階資料快取和資料轉譯緩衝器(D-TLB)
470‧‧‧記憶體控制器
500‧‧‧核心
501‧‧‧提取單元
503‧‧‧指令快取
505‧‧‧指令解碼器
510‧‧‧前端單元
515‧‧‧亂序(OOO)引擎
520‧‧‧執行單元
522‧‧‧算術邏輯單元(ALU)
524‧‧‧向量執行單元
530‧‧‧暫存器檔案
535‧‧‧擴展暫存器檔案
538‧‧‧機器專用暫存器(MSR)
540‧‧‧重新排序緩衝器(ROB)
550‧‧‧快取
600‧‧‧核心
605‧‧‧分支預測器
610‧‧‧指令快取
615‧‧‧指令解碼器
618‧‧‧微碼ROM
620‧‧‧發佈佇列
630‧‧‧浮點管線
632‧‧‧浮點暫存器檔案
634‧‧‧浮點排程器
635‧‧‧算術邏輯單元(ALU)
636‧‧‧混洗單元
638‧‧‧浮點加法器
640‧‧‧整數管線
642‧‧‧整數暫存器檔案
644‧‧‧整數排程器
645‧‧‧算術邏輯單元(ALU)
646‧‧‧移位器單元
648‧‧‧跳轉執行單元
650‧‧‧記憶體執行排程器
652‧‧‧位址產生單元
654‧‧‧轉譯緩衝器(TLB)
660‧‧‧資料快取
670‧‧‧分配器/更名器
680‧‧‧重新排序緩衝器
700‧‧‧核心
710‧‧‧提取單元
715‧‧‧解碼單元
725‧‧‧發佈邏輯
730‧‧‧佇列
735‧‧‧整數單元
740‧‧‧乘法單元
750‧‧‧浮點/向量單元
760‧‧‧雙發佈單元
770‧‧‧載入/儲存單元
780‧‧‧寫回單元
800‧‧‧核心
810‧‧‧提取單元
815‧‧‧解碼器/更名器/分派器
825‧‧‧佇列
830‧‧‧發佈邏輯
835‧‧‧整數單元
840‧‧‧乘法單元
850‧‧‧浮點/向量單元
860‧‧‧分支單元
870‧‧‧載入/儲存單元
880‧‧‧寫回單元
900‧‧‧處理器
910‧‧‧核心單元
9100‧‧‧核心單元
910n‧‧‧核心單元
920‧‧‧圖形單元
925‧‧‧影像訊號處理器
930‧‧‧非揮發性儲存
935‧‧‧記憶體控制器
940‧‧‧功率管理器
945‧‧‧安全處理器
950‧‧‧視頻編碼器
955‧‧‧顯示控制器
960a‧‧‧介面
960b‧‧‧介面
960c‧‧‧介面
960d‧‧‧介面
1000‧‧‧SoC(系統單晶片)
1010‧‧‧核心域
10120‧‧‧核心
10123‧‧‧核心
1015‧‧‧快取記憶體
1020‧‧‧核心域
10220‧‧‧核心
10223‧‧‧核心
1025‧‧‧快取記憶體
1030‧‧‧圖形域
1040‧‧‧相干互連
1050‧‧‧積體記憶體控制器
1110‧‧‧CPU域
1120‧‧‧GPU域
1130‧‧‧DSP單元
1140‧‧‧通訊單元
1150‧‧‧多媒體處理器
1160‧‧‧感測器單元
1170‧‧‧影像訊號處理器
1180‧‧‧顯示處理器
1190‧‧‧定位單元
1200‧‧‧系統
1205‧‧‧基頻處理器
1210‧‧‧應用處理器
1215‧‧‧功率管理積體電路(PMIC)
1220‧‧‧用戶介面/顯示器
1225‧‧‧感測器
1230‧‧‧快閃記憶體
1235‧‧‧動態隨機存取記憶體(DRAM)
1240‧‧‧拍攝裝置
1250‧‧‧安全處理器
1260‧‧‧近場通訊(NFC)非接觸介面
1265‧‧‧NFC天線
1270‧‧‧射頻(RF)收發器
1275‧‧‧無線區域網路(WLAN)收發器
1280‧‧‧GPS感測器
1290‧‧‧天線
1295‧‧‧音頻輸出裝置
1300‧‧‧系統
1310‧‧‧SoC
1320‧‧‧觸控面板
1325‧‧‧周邊集線器
1330‧‧‧乙太網路介面
1340‧‧‧快閃記憶體
1345‧‧‧DRAM
1350‧‧‧WLAN單元
1355‧‧‧天線
1360‧‧‧感測器
1365‧‧‧音頻編解碼器
1370‧‧‧音頻輸出裝置
1380‧‧‧PMIC
1390‧‧‧電池
1395‧‧‧AC適配器
1400‧‧‧系統
1410‧‧‧處理器
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模組
1456‧‧‧WWAN單元
1457‧‧‧用戶識別模組(SIM)
1460‧‧‧數位訊號處理器(DSP)
1462‧‧‧編碼器/解碼器(CODEC)和放大器
1463‧‧‧輸出揚聲器
1464‧‧‧耳機插孔
1465‧‧‧麥克風
1500‧‧‧多處理器系統
1514‧‧‧輸入/輸出(I/O)裝置
1516‧‧‧匯流排
1518‧‧‧匯流排橋
1520‧‧‧匯流排
1522‧‧‧鍵盤/滑鼠
1524‧‧‧音頻I/O
1526‧‧‧通訊裝置
1528‧‧‧資料儲存單元
1530‧‧‧代碼
1532‧‧‧記憶體
1534‧‧‧記憶體
1538‧‧‧高效能圖形引擎
1539‧‧‧P-P互連
1550‧‧‧點對點互連
1562‧‧‧P-P互連
1564‧‧‧P-P互連
1570‧‧‧處理器
1572‧‧‧記憶體控制器集線器(MCH)
1574a‧‧‧處理器核心
1574b‧‧‧處理器核心
1576‧‧‧點對點(P-P)介面
1578‧‧‧點對點(P-P)介面
1580‧‧‧處理器
1582‧‧‧MCH
1584a‧‧‧處理器核心
1584b‧‧‧處理器核心
1586‧‧‧P-P介面
1588‧‧‧P-P介面
1590‧‧‧晶片組
1592‧‧‧介面
1594‧‧‧P-P介面
1596‧‧‧介面
1598‧‧‧P-P介面
1600‧‧‧多晶片封裝
1610‧‧‧晶粒
16101‧‧‧晶粒
1610N‧‧‧晶粒
1620‧‧‧核心域
1624‧‧‧核心
1624N‧‧‧核心
1626‧‧‧溫度感測器
1626N‧‧‧溫度感測器
1628‧‧‧快取記憶體
1630‧‧‧非核心區域
1632‧‧‧功率管理單元(PMU)
1634‧‧‧溫度比較邏輯
1636‧‧‧互連邏輯
1638‧‧‧溫度感測器
1640‧‧‧溫度報告邏輯
1642‧‧‧溫度資料計時器
1644‧‧‧封裝睡眠狀態計時器
1646‧‧‧溫度感測器
1700‧‧‧方法
1702‧‧‧方塊
1704‧‧‧方塊
1706‧‧‧方塊
1707‧‧‧方塊
1708‧‧‧方塊
1710‧‧‧方塊
1712‧‧‧方塊
1714‧‧‧方塊
1716‧‧‧方塊
1718‧‧‧方塊
1720‧‧‧方塊
1722‧‧‧方塊
1800‧‧‧方法
1802‧‧‧方塊
1804‧‧‧決定菱形
1806‧‧‧決定菱形
1808‧‧‧方塊
1810‧‧‧決定菱形
1811‧‧‧方塊
1812‧‧‧方塊
1814‧‧‧方塊
1816‧‧‧方塊
圖1是根據本發明實施例的系統的部分的方塊圖。
圖2是根據本發明實施例的處理器的方塊圖。
圖3是根據本發明另一實施例的多域處理器的方塊圖。
圖4是包括多個核心的處理器的實施例。
圖5是根據本發明實施例的處理器核心的微架構的方塊圖。
圖6是根據本發明另一實施例的處理器核心的微架構的方塊圖。
圖7是根據又另一實施例的處理器核心的微架構的方塊圖。
圖8是根據再另一實施例的處理器核心的微架構的方塊圖。
圖9是根據本發明另一實施例的處理器的方塊圖。
圖10是根據本發明實施例的代表性SoC的方塊圖。
圖11是根據本發明實施例的另一實例SoC的 方塊圖。
圖12是可用於實施例的實例系統的方塊圖。
圖13是可用於實施例的另一實例系統的方塊圖。
圖14是代表性電腦系統的方塊圖。
圖15是根據本發明實施例的系統的方塊圖。
圖16是根據本發明實施例的多晶片封裝的方塊圖。
圖17是根據本發明實施例的方法的流程圖。
圖18是根據本發明另一實施例的方法的流程圖。
【發明內容及實施方式】
雖然下面的實施例是參照在專用積體電路,諸如在計算平台或處理器描述的能源節約和能源效率,其他實施例適用於其他類型的積體電路和邏輯裝置。類似的技術以及本文描述實施例的教示可以應用於也可以從更好的能源效率和能源節約受益的其他類型電路或半導體裝置。例如,所揭露的實施例不限於任何特定類型的電腦系統。也就是說,揭露的實施例可以使用在許多不同的系統類型中,範圍從伺服器電腦(例如,塔、機架、刀鋒、微伺服器等等)、通訊系統、儲存系統、任何配置的桌上型電腦、膝上型電腦、筆記型電腦和平板電腦(包括2:1的平板電腦、平板手機等),並且也可以使用於其它裝 置,如手持裝置、系統單晶片(SoC)和嵌入式應用。手持裝置的一些實例包括蜂巢式電話,如智慧手機、網際網路協議裝置、數位相機、個人數位助理(PDA)和手持式個人電腦。嵌入式應用通常可以包括微控制器、數位訊號處理器(DSP)、網路電腦(NetPC)、機上盒、網路集線器、廣域網路(WAN)交換機、可穿戴裝置或可以執行以下教示的功能和操作的任何其他系統。更何況,實施例可以在具有標準語音功能的移動終端,如行動電話、智慧手機和平板手機,和/或在沒有標準的無線語音功能通訊能力的非移動終端,諸如許多可穿戴、平板電腦、筆記型電腦、桌上型電腦、微伺服器、伺服器等中實現。此外,本文所述的裝置、方法和系統並不限於實體計算裝置,而且還可以關於用於節能和提高效率的軟體最佳化。如將在下面的描述後容易理解的,在此描述的方法、裝置和系統的實施例(無論是否參考硬體、韌體、軟體或其組合)是“綠色技術”未來的關鍵,如用於涵蓋美國經濟的大部分產品的節能和能源效率。
現在參考圖1,其顯示根據本發明實施例的系統的部分的方塊圖。如圖1所示,系統100可包括各種元件,其包括顯示為多核心處理器的處理器110。處理器110可經由外部電壓調節器160被耦接到電源150,該外部電壓調節器160可以執行第一電壓轉換以提供主要調節電壓給處理器110。
如圖所示,處理器110可以是包括複數個核 心120a-120n的單一晶粒處理器。此外,每個核心可以與接收主要調節的電壓並產生操作電壓以提供給與IVR相關的處理器的一或多個代理的積體電壓調節器(IVR)125a-125n相關。因此,IVR實現可提供以允許電壓的精細控制,從而每個核心的電源和效能。因此,每個核心可以操作在獨立的電壓及頻率,從而實現了極大的靈活動並得到廣泛的機會以平衡功率消耗與效能。在一些實施例中,使用多個IVR能使元件的分組成個別的電源平面,使得由IVR調節和供應的電源只到那些分組中的元件。在功率管理期間,當該處理器被放置成某種低功率狀態,一個IVR的給定電源平面可以被關機或關閉,而另一IVR的另一個電源平面保持活動,或者完全供電。
仍然參照圖1,額外的元件可以是在包括輸入/輸出介面132、其他介面134和積體記憶體控制器136的處理器,如圖所示,這些元件各可由另一積體電壓調節器125x供電。在一個實施例中,介面132可致使Intel®快速通道互連(QPI)互連的操作,其提供快取相干協議中的點對點(PtP)鏈結,該快取相干協議包括多層,其包括實體層、鏈結層和協議層。接著,介面134可以經由快速周邊元件互連(PCIeTM)協議進行通訊。
還顯示的是功率控制單元(PCU)138,其可包括硬體、軟體和/或韌體以關於處理器110執行功率管理操作。如圖所示,PCU 138經由數位介面提供控制資訊到外部電壓調節器160以使電壓調節器產生相應的調節電 壓。PCU 138還藉由另外的數位介面提供控制資訊到IVRs125以控制所產生的操作電壓(或以導致相應的IVR在低功率模式被關閉)。在各種實施例中,PCU 138可以包括各種的功率管理邏輯單元以執行基於硬體的功率管理。這樣的功率管理可以全部由處理器控制(例如,藉由不同的處理器硬體,並且其可以藉由工作負載和/或電力、熱或其他處理器約束被觸發)和/或功率管理可以響應於外部來源被執行(如平台或管理功率管理來源或系統軟體)。
為了便於說明與理解而未顯示的其他元件可以是存在於處理器110中,諸如非核心邏輯,和其它元件,諸如內部記憶體,例如,一或多層的快取記憶體階層等。此外,雖然顯示於圖1的實現具有積體電壓調節器,實施例並不侷限於此。
需要注意的是,本文所描述的功率管理技術可以是獨立於和互補於作業系統(OS)為基礎的功率管理(OSPM)機制。根據OSPM技術的一個實例,處理器可以操作在不同的效能狀態或層級,所謂P狀態,即從P0到PN。在一般情況下,P1效能狀態可以對應於可以由OS請求的最高保證效能狀態。除了此P1狀態,OS可以進一步要求更高效能的狀態,即P0狀態。因此,此P0狀態可以是機會或渦輪模式狀態,其中,當有功率和/或熱餘裕時,處理器硬體可以配置該處理器或至少其部分操作在比保證頻率更高的頻率。在許多實現中,處理器可以包 括高於P1保證最大頻率的多個所謂的倉頻率,超過特定處理器的最大峰值頻率,如在製造過程中以電熔或其他方式寫入到處理器中。此外,根據一個OSPM機制,處理器可以操作在不同的功率狀態或層級。關於功率狀態,OSPM機制可以指定不同的功率消耗狀態,通常稱作C狀態,C0、C1至Cn狀態。當核心是活動的,它運行在C0狀態,而當核心處於閒置狀態它可以被放置在核心低功率狀態,也稱為核心非零C-狀態(例如,C1-C6狀態),其中每個C-狀態是在較低的功率消耗層級(使得C6是比C1更深的低功率狀態等)。
應理解,許多不同類型的功率管理技術可單獨或結合在不同的實施例使用。作為代表性的實例,功率控制器可以藉由某種形式的動態電壓頻率調節(DVFS)來控制該處理器以被功率管理,其中一或多個核心或其它處理器邏輯的操作電壓和/或操作頻率在某些情況下可以被動態地控制以降低功率消耗。在一個實例中,DVFS可以使用可從加州聖塔克拉拉的Intel公司取得的增強型英特爾SpeedStepTM技術來實現以提供在最低功率消耗層級的最佳效能。在另一實例中,DVFS可以使用英特爾TurboBoostTM技術來實現以使一或多個核心或其它計算引擎根據條件(例如,工作量和可用性)操作在高於保證操作頻率的頻率。
可在某些實例中使用的其他功率管理技術是在不同的計算引擎之間的工作負載的動態交換。例如,該 處理器可包括非對稱的核心或在不同功率消耗層級操作的其他處理引擎,以使得在功率約束的情況下,一或多個工作負載可以被動態地切換以在較低功率的核心或其它計算引擎執行。另一個示例性的功率管理技術是硬體任務循環(HDC),其可能會導致核心和/或其它計算引擎可以根據任務週期被週期性地啟用和關閉,以使得一或多個核心可以在任務週期的非活動期間處於非活動狀態並且在任務週期的活動期間處於活動狀態。儘管以這些特定實例描述,應理解許多其它的功率管理技術可以在特定實施例中使用。
實施例可在用於各種市場的處理器中實現,其包含伺服器處理器、桌面處理器、行動處理器等。現在參考圖2,其顯示根據本發明實施例的處理器的方塊圖。如圖2所示,處理器200可以是多核心處理器,其包含複數個核心210a-210n。在一個實施例中,各個這樣的核心可以是獨立電源域的並且可以基於工作負載被配置以進入和退出活動狀態和/或最高效能狀態。各種核心可經由互連215耦接到包括各種元件的系統代理或非核心220。如圖所示,非核心220可包括可以是末階快取的共享快取230。此外,非核心可包括積體記憶體控制器240用以與系統記憶體(未顯示於圖2)通訊,例如經由記憶體匯流排。非核心220還包括各種介面250和功率控制單元255,其可包括用以執行本文所述的功率管理技術的邏輯。
此外,藉由介面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以執行本文描述的功率管理技術。
如進一步於圖3所示,處理器300還可以包括可以提供到系統記憶體的介面的積體記憶體控制器(IMC)370,諸如動態隨機存取記憶體(DRAM)。多個介面3800-380n可以存在致使處理器和其他電路之間的互連。例如,在一個實施例中,至少一個直接媒體介面(DMI)的介面以及一或多個的PCIeTM介面可以被提供。更進一步地,用以提供其它代理之間的通訊,諸如額外的處理器或其他電路、一或多個QPI介面也可以被提供。雖然圖3的實施例顯示在此高層次,應理解本發明的範圍不限於這方面。
參考圖4,其說明一種包括多個核心的處理器的實施例。處理器400包括任何處理器或處理裝置,諸如微處理器、嵌入式處理器、數位訊號處理器(DSP)、網路處理器、手持式處理器、應用處理器、協同處理器、系統單晶片(SoC)或執行代碼的其它裝置。在一個實施例中,處理器400包括至少兩個核心,核心401和402,其可包括非對稱核心或對稱核心(圖示的實施例)。然而,處理器400可以包括任何數量的可以是對稱的或非對稱的 處理元件。
在一個實施例中,處理元件是指用以支援軟體執行緒的硬體或邏輯。硬體處理元件的實例包括:執行緒單元、執行緒槽、執行緒、處理單元、情境、情境單元、邏輯處理器、硬體執行緒、核心和/或能夠保持處理器狀態,諸如執行狀態或架構狀態的任何其它元件。換言之,在一個實施例中,處理元件是指能夠獨立地相關於代碼的任何硬體,諸如軟體執行緒、作業系統、應用程式或其他代碼。實體處理器通常是指積體電路,其潛在地包括任意數量的其它處理元件,諸如核心或硬體執行緒。
核心通常是指位於能夠維持獨立的架構狀態的積體電路上的邏輯,其中每個獨立維持的架構狀態與至少一些專用的執行資源相關。對比於核心,硬體執行緒通常是指位於能夠維持獨立的架構狀態的積體電路上的任何邏輯,其中獨立維持的架構狀態對於執行資源共享存取。如可以看到的,當某些資源是共享的並且另一些係專用於架構狀態,硬體執行緒和核心的命名法之間的線重疊。然而通常,核心和硬體執行緒被作業系統視為個別邏輯處理器,其中該作業系統能夠獨立地在每個邏輯處理器上將操作排程。
如圖4所示,實體處理器400包括兩個核心,核心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中的重新排序緩衝器、ILTB 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可包括針對整數和浮點運算的獨立暫存器檔案。為了配置、控制和其他操作,一組機器專用暫存器 (MSRs)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包括指令快取610,其耦接以提供指令給指令解碼器615。分支預測器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控股有限公司的ARM Cortex A53設計的微架構。在實現中,8級管線可被提供,其配置以執行32位元和64位元代碼。核心700包括提取單元710,其被配置以提取指令並將它們提供給可解碼該指令的解碼單元715,例如,給定ISA的巨集指令,諸如ARMv8 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(或更高)-寬和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控股公司的ARM為基礎的 設計或其被授權者,或來自加州桑尼維爾MIPS科技公司的MIPS為基礎的設計或其被授權者或採用者可替代出現在其它實施例中,如蘋果A7處理器、高通Snapdragon處理器或德州儀器OMAP處理器。這樣的SoC可被用於在低功率系統,諸如智慧手機、平板電腦、平板手機電腦、UltrabookTM電腦或其它可攜式計算裝置。
在圖9中所示的高階視圖,處理器900包括複數個核心單元9100-910n。每個核心單元可以包括一或多個處理器核心、一或多個快取記憶體和其他電路。每個核心單元910可以支援一或多個指令集(例如,x86指令集(具有一些擴展,其已添加更新的版本);MIPS指令集;ARM指令集(具有可選的額外擴展,諸如NEON))或其他指令集或其組合。請注意,某些核心單元可以是異質資源(例如,不同的設計)。此外,每個這樣的核心可以被耦接到快取記憶體(未顯示),其在實施例中可以是共享的層級(L2)快取記憶體。一種非揮發性儲存930可用於儲存各種程式和其它資料。例如,此儲存可被用於儲存微碼的至少一部分、開機資訊,諸如BIOS、其他系統軟體或等等。
每個核心單元910還可以包括介面,諸如匯流排介面單元,其用以致使到處理器的額外電路的互連。在實施例中,每個核心單元910耦接到一個相干結構,其可以用作主要快取相干晶粒上互連,其接著耦接到記憶體控制器935。接著,記憶體控制器935控制與記憶體,諸 如DRAM(為了便於說明,未在圖9中顯示)的通訊。
除了核心單元,額外的處理引擎存在於處理器內,其包括至少一個圖形單元920,其可包括一或多個圖形處理單元(GPU)以執行圖形處理以及用以可能執行在圖形處理器上的通用操作(所謂的GPGPU操作)。此外,至少一個影像訊號處理器925可以存在。訊號處理器925可以被配置以處理從無論是SoC內部的或晶片外部的一或多個拍攝裝置接收的輸入影像資料。
其它加速器也可以存在。在圖9的圖示中,視頻編碼器950可以執行編碼操作,其包括對於視頻資訊編碼和解碼,例如,提供高清晰度視頻內容的硬體加速支援。顯示控制器955還可以被提供以加速顯示操作,其包括提供系統的內部和外部顯示的支援。此外,安全處理器945可存在以執行安全操作,諸如安全開機操作、各種密碼操作等。
每個單元可以具有經由功率管理器940控制其功率消耗,其可包括用以執行本文描述的各種功率管理技術的控制邏輯。
在一些實施例中,SoC 900還可以包括一個非相干結構,其將該相干結構耦接到可以耦接的各種周邊裝置。一或多個介面960a-960d致使與一或多個晶片外裝置的通訊。這種通訊可以經由各種通訊協議,諸如PCIeTM、GPIO、USB、I2C、UART、MIPI、SDIO、DDR、SPI、HDMI,在其他類型的通訊協議之間。雖然圖9的實施例 中顯示在這個高層次,應理解本發明的範圍不限於這方面。
現在參考圖10,其顯示代表性SoC的方塊圖。在顯示的實施例中,SoC 1000可以是被配置為低功率操作的SoC,其用以針對結合智慧手機或其他低功率裝置,諸如平板電腦或其它可攜式計算裝置被最佳化。作為一個實例,系統晶片1000可以使用非對稱的或不同類型的核心,諸如更高功率和/或低功率核心的組合,例如亂序核心和依序核心來實現。在不同的實施例中,這些核心可以基於Intel® ArchitectureTM核心設計或ARM架構設計。在其他實施例中,英特爾和ARM核心的混合可以在給定的SoC中實現。
如圖10所示,SoC 1000包括具有複數個第一核心10100-10123的第一核心域1010。在實例中,這些核心可以是低功率核心,諸如依序核心。在一個實施例中,這些第一核心可被實現為ARM Cortex A53核心。接著,這些核心耦接到核心域1010的快取記憶體1015。此外,SoC 1000包括第二核心域1020。在圖10的圖示中,第二核心域1020具有複數個第二核心10220-10223。在實例中,這些核心可以是比第一核心1012更高功率消耗的核心。在實施例中,第二核心可以是亂序核心,其可以被實現為ARM Cortex A57核心。接著,這些核心耦接到核心域1020的快取記憶體1025。請注意,雖然圖10所示的實例在每個域中包括4個核心,應理解更多或更少的核心 可以存在於其他實施中的給定域。
進一步參考圖10,圖形域1030也被提供,其可包括配置以獨立地執行圖形工作負載的一或多個圖形處理單元(GPUs),例如,由核心域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係適於併入到各種各樣的可攜式和其它裝置,諸如智慧手機、平板電腦,智慧電視等。在所示的實例中,SoC 1100包括中央處理器單元(CPU)域1110。在實施例中,複數個個別的處理器核心可以存在於CPU域1110中。作為一個實例,CPL域1110可以是具有4個多執行緒核心的四核心處理器。這樣的處理器可以是同質或異質處理器,例如,低功率和高功率處理器核心的混合。
接著,GPU域1120被提供以執行在一或多個GPU用以處理圖形和計算APIs的高階圖形處理。DSP單元1130可提供用於處理低功率多媒體應用,諸如音樂播放、音頻/視頻等的一或多個低功率DSPs,另外高階計算可能在多媒體指令的執行期間出現。接著,通訊單元1140可以包括各種元件以經由各種無線協議,諸如蜂巢 式通訊(包括3G/4G LTE)、無線區域網路協議,諸如BluetoothTM、IEEE 802.11等提供連接。
更進一步地,多媒體處理器1150可以被用來執行拍攝和播放的高清晰度視頻和音頻內容,其包含用戶手勢的處理。感測器單元1160可以包括複數個感測器和/或感測器控制器用以與存在於給定的平台中的各種晶片外感測器介面。影像訊號處理器1170可以一或多個個別的ISPs提供以執行關於從包含靜態和視頻相機的平台的一或多個相機拍攝的內容的影像處理。
顯示處理器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可進一步包括安全處理器1250,其可耦接到應用處理器1210。複數個感測器1225可耦接到應用處理器1210以致使各種感測的資訊,諸如加速計和其他環境資訊的輸入。音頻輸出裝置1295可以提供輸出聲音的介面,例如,以語音通訊、播放或串流音頻資料等的形式。
如進一步顯示,近場通訊(NFC)非接觸介面1260被提供,其經由NFC天線1265在NFC近場中進行通訊。雖然圖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電源經由AC適配器1395供電。除了此基於電源的功率管理,PMIC1380還可以根據環境和使用條件來執行平台功率管理活動。更進一步,PMIC 1380可傳送控制和狀態資訊到SoC 1310以導致SoC 1310內的各種功率管理操作。
仍然參照圖13,用以提供無線功能,WLAN單元1350係連接到SoC 1310並且接著到天線1355。在各種實現中,WLAN單元1350可以根據一或多個無線協議來提供通訊。
如進一步所示,複數個感測器1360可耦接到SoC 1310。這些感測器可以包括各種加速度計、環境和其他感測器,其包括用戶手勢感測器。最後,音頻編解碼器1365被耦接到SoC 1310以提供介面到音頻輸出裝置1370。應當理解,雖然在圖13中以此特定實現顯示,許多變形和替代是可能的。
現在參考圖14,其顯示代表性的電腦系統的方塊圖,例如筆記型電腦、UltrabookTM或其它小形狀因數的系統。處理器1410,在一個實施例中,其包括微處理器、多核心處理器、多執行緒處理器、超低電壓處理器、 嵌入式處理器或其它已知的處理元件。在圖示的實現中,處理器1410做為主處理單元以及與系統1400的許多各種部件通訊的中央集線器。作為一個實例,處理器1400係實現為單晶片。
處理器1410,在一個實施例中,與系統記憶體1415進行通訊。作為說明性實例,系統記憶體1415經由多個記憶體裝置或模組被實現以提供給定數量的系統記憶體。
為了提供用於資訊的永久儲存,諸如資料、應用程式、一或多個作業系統等,大容量儲存1420還可以耦接到處理器1410。在各種實施例中,為了致使更薄更輕的系統設計以及改善系統的響應,這種大容量儲存可經由SSD實現,或者大容量儲存可主要使用硬碟(HDD)與較少量的SSD充當SSD快取以致使在斷電事件期間,情境狀態以及其他此類資訊的非揮發性儲存,以便快速啟動可能發生在系統活動的重新開始。在圖14中還顯示,快閃裝置1422可耦接到處理器1410,例如,經由串行周邊介面(SPI)。這種閃光裝置可以提供系統軟體的非揮發性儲存,其包括基本輸入/輸出軟體(BIOS)以及該系統的其它韌體。
各種輸入/輸出(I/O)裝置可以存在於顯示系統1400之內。在圖14的實施例中具體地顯示的是可以是高清晰度LCD或LED面板的顯示器1424,其進一步提供用於觸控螢幕1425。在一個實施例中,顯示器1424可以 經由可被實現為高效能圖形互連的顯示器互連被耦接到處理器1410。觸控螢幕1425可以經由另一個互連耦接到處理器1410,其在實施例中可以是I2C互連。如在圖14中進一步顯示,除了觸控螢幕1425,藉由觸控方式的用戶輸入也可以經由觸控墊1430發生,其可被配置在機箱內,並且還可以耦接到相同的I2C互連,諸如觸控螢幕1425。
針對感知計算和其他目的,各種感測器可以用不同的方式存在於系統中,並且可以耦接至處理器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,短距離BluetoothTM通訊可以發生。這些單元可以經由給定的鏈路與處理器1410進行通訊。
此外,無線廣域通訊,例如,根據蜂巢式或其它無線廣域協議,可以經由WWAN單元1456發生,其接著耦接到用戶識別模組(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或其它功率管理邏輯以執行基於處理器的功率管理。
仍然參照圖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,連同匯流排橋1518,其將第一匯流排1516耦接到第二匯流排1520。在一個實施例中,各種裝置可以被耦接到第二匯流排1520,其包括,例如,鍵盤/滑鼠1522、通訊裝置1526和資料儲存單元1528,諸如可包括代碼1530的磁碟驅動器或其它大容量儲存裝置。此外,音頻I/O 1524可被耦接到第二匯流排1520。實施例可被併入到其他類型的系統,其包括行動裝置,諸如智慧蜂巢式電話、平板電腦、小筆電、超輕薄筆電或等等。
多晶片處理器(MCP)封裝和其他多裝置元件,諸如雙列直插記憶體模組(DIMM)具有為封裝在共用基板的每個裝置(例如,每個晶粒或晶片)提供溫度資訊的能力。然而,平台的熱管理通常不需要高度粒度(例如,密度)的感測器資料,其可能來自所有的溫度感測器。相對地,平台伺服器管理韌體(SMFW)可基於冷卻 區內的不同部件動作以提供所需冷卻。一種提供冷卻的適當層級的技術可以基於冷卻區所有元件的最小熱餘裕。
為了簡化以MCP實現的SMFW,機制可以將從溫度感測器接收的資料正常化和匯總。例如,SMFW可以在MCP中的感測器的最小餘裕動作。例如,在每個測量的晶粒溫度和與熱控制技術,如冷卻或限制相關的判定的觸發值之間的最小差異。
在實施例中,MCP包括處理器晶粒和平台控制器集線器(PCH)晶粒。在另一實施例中,MCP包括處理器晶粒、一或多個動態隨機存取記憶體(DRAM)晶粒,以及網路介面控制器(NIC)晶粒。在另一個實施例中,MCP包括處理器晶粒和NIC晶粒。在其它實施例中,MCP可以包括二或多個晶粒的其他組合。
為了降低SMFW複雜度,同時確保操作的效率,MCP可受益於用以報告一或多個預設的閾值的每一個(例如,測得的溫度和預先設定的閾值之間的差異)的最小溫度餘裕的機制。在實施例中,提供給SMFW的餘裕可以包括MCP內的所有晶粒的溫度控制參數(控制溫度餘裕)的最小餘裕,和MCP內的所有晶粒的限制參數的最小餘裕。最小的溫度控制餘裕可以被用以判斷是否提供冷卻到MCP,而最小的限制餘裕可以被用以預測MCP中的限制活動。此外,來自MCP內的所有晶粒的最高溫度可被報告。
MCP內的晶粒的溫度控制參數(△T控制)餘裕 可藉由晶粒的測量溫度與控制溫度T控制(例如,冷卻劑將被循環以便降低操作溫度的預設溫度)之間的差異的計算被判斷。例如,該冷卻劑可以是由一或多個風扇循環的氣體(例如,空氣)或將由,例如,泵裝置或其它類型的冷卻劑循環機制循環的液體冷卻劑。
限制參數(△T限制)餘裕可藉由MCP內的晶粒之一的測量溫度與限制溫度T限制(例如,晶粒被限制的預設溫度,例如,活動層級被降低)之間的差異的計算被判斷。晶粒內的活動限制(例如,降低)可藉由在晶粒內的邏輯的時鐘頻率的減少、邏輯的操作電壓的減少、執行邏輯的指令產出量的減少、晶粒內的一或多個邏輯的工作週期的減少等,任何前述限制技術或其它限制技術的組合來實現。
圖16是根據本發明實施例的多晶片封裝1600的方塊圖。MCP 1600可以包括複數個晶粒16100-1610N,其包括處理器晶粒16100和平台控制器集線器(PCH)和晶粒16101
該處理器晶粒16100可以包括核心域1620,其可以包括複數個核心16240-1624N、複數個溫度感測器16260-1626N和快取記憶體1628。該處理器晶粒16100還可包括非核心域1630,其可包括功率管理單元(PMU)1632、互連邏輯1636以及各自與一或多個溫度感測器1638代理的一或多個非核心。PMU 1632可以包括溫度比較邏輯1634、溫度資料計時器1642和封裝睡眠狀態計時 器1644。PMU 1632可以包括硬體(例如,控制器)、軟體、韌體或其組合。例如,PMU 1632可以包括硬體控制器以執行計算,例如,接收的溫度值和溫度控制參數之間差異的判斷、最大複數個值的判斷等。
PCH晶粒16101可以包括溫度感測器1646,和溫度報告邏輯1640。額外的晶粒16102-1610N可以包括一或多個動態隨機存取記憶體(DRAM)、網路介面控制器(NIC)晶粒和/或其它晶粒。其它晶粒16102-1610N各可包括溫度感測器和溫度報告邏輯(未顯示)。
在操作中,該溫度報告邏輯1640可能會向PMU 1632報告與PCH晶粒16101的溫度相關的溫度資料。該溫度資料可以由溫度感測器1646產生(可替代地,溫度報告邏輯1640可以從溫度感測器1646接收原始的溫度資料,並且可以在向PMU 1632報告之前,將接收的原始溫度資料轉換成溫度資料)。溫度資料可以從溫度報告邏輯1640根據由溫度資料計時器1642判斷的周期,在週期性的基礎上,由溫度比較邏輯1634接收。該溫度資料計時器1642可週期性地倒數預設時間周期(△t),並且當完成時間周期△t時,從溫度感測器1646由溫度報告邏輯1640接收的溫度資料可由PMU 1632接收並且可被輸入至該溫度比較邏輯1634。在一些實施例中,當△t到期時,溫度資料基本上可以被即時測量並且瞬時溫度資料可被從PCH 16101發送到PMU 1632。在其他實施例中,在時間週期△t的期間,溫度資料可以被多次測量。 測量的溫度資料可以被平均並且測量的溫度資料對於△t的平均可提供給溫度比較邏輯1634。
根據從每個晶粒接收的溫度資料,溫度比較邏輯1634可以計算MCP內的最高溫度(T最高)。溫度比較邏輯1634還可計算各晶粒的一或兩者的△T限制和△T控制。例如,第K類型的晶粒的第j個晶粒的△T限制j可藉由計算晶粒的測量的溫度的差異來判斷(基於接收的溫度資料來判斷),並且判斷限制溫度T限制K(例如,類型K的晶粒的限制溫度,其中K是相應於晶粒類型的整數)。從計算的△T限制j值,特定K的最小值可被判斷(“△T限制”)。該溫度比較邏輯1634可以從△T限制K的計算值(對於K的所有值)選擇△T限制K的最小值(“△T限制”)。
以類似的方式,溫度比較邏輯1634可針對第K類型的晶粒的第j個晶粒(j=1、2、...)來判斷△T控制j,當晶粒的測量的溫度和判斷的控制溫度T控制K(例如,晶粒類型K的控制溫度,其中K是相應於晶粒類型的整數)不同。溫度比較邏輯1634可以判斷,或每個K值、第K類型的晶粒的最小的△T控制j(“△T控制K”)。從所有K值的各種△T控制K,最小限制餘裕△T控制可能被選擇。熱報告可以包括一或多個T最高、△T限制和△T控制。熱報告可以被儲存,例如,在PMU 1632中,並根據要求可能被提供。例如,該報告可以被提供給該軟體管理韌體(SMFW,未顯示),其可以是MCP 1600的外部。
基於熱報告,SMFW可以判斷行動過程以減 少在MCP 1600的操作溫度。例如,如果△T控制由SMFW解讀為指出MCP 1600正操作在過高的溫度,該SMFW可能影響MCP 1600的冷卻,例如,藉由冷卻劑,諸如空氣,或另一冷卻劑,例如,液體冷卻劑的循環。例如,如果冷卻劑是空氣,然後冷卻可經由一或多個風扇的接合來實現以循環空氣。如果冷卻劑為液體時,冷卻可以藉由一或多個液體泵的接合來實現以循環冷卻劑。如果,從△T控制的隨後的值,判斷MCP 1600不操作在過高的溫度,該冷卻劑循環機制可以被減少、解除或關閉。
如果從△T限制判斷晶粒1610i之一正操作在超過晶粒1610i的T限制K的溫度,MCP 1600的一或多個晶粒的限制可被指示。如果從△T限制的隨後的值,判斷沒有核心溫度超過其相應的控制溫度T限制K,則限制可能被停止。
圖17是根據本發明實施例的方法1700的流程圖。在方塊1702,溫度報告請求被接收,例如,在MCP的功率管理單元(PMU)。繼續到方塊1704,溫度資料係由PMU從MCP的每個晶粒接收。前進到方塊1706,MCP的所有N個晶粒的最大溫度T最大可被判斷。
在不同類型的晶粒收集的對於溫度的熱餘裕可能被不同地處理,因為類型K的每個晶粒可具有專用於晶粒類型K的T限制K和/或T控制K。繼續到方塊1707,K被初始化至1的值,移到方塊1708,限制的餘裕(△T限制j)可被用於判斷在MCP中特定類型K的每個晶粒(例如,K=1,2,3等)。(在一些實施例中,所有晶粒的限制溫 度T限制K是相同的。在其他實施例中,類型K的每個晶粒的限制溫度T限制K可以變化。)繼續進行到方塊1710,類型K的晶粒的最小的△T限制K可以從△T限制j的值來判斷。
繼續到方塊1712,控制餘裕△T控制j可以針對類型K的每個晶粒被判斷。(在一些實施例中,所有晶粒的控制溫度T控制K是相同的。在其他實施例中,控制溫度T控制K可以取決於晶粒類型K)。前進到方塊1714,類型K的晶粒的最小的△T控制j(=△T控制K)可以從△T控制j的值來判斷。移動到決定菱形1716,如果另一種類型的晶粒存在於MCP,則進行到方塊1718,K被遞增並返回到方塊1708,最小的餘裕(例如,△T限制K和△T控制K)針對另一晶粒類型被判斷。進行到方塊1720,△T限制和△T控制針對所有的K值被判斷為△T限制K和△T控制K的最小的各自值。前進到方塊1722,MCP熱報告可以響應於該請求被儲存,並且可以包括一或多個的T最大、△T限制和△T控制。該報告可以根據請求被提供,例如,到外部請求者,諸如包括MCP、SMFW或到另一請求者的平台。
圖18是根據本發明其他實施例的方法1800的流程圖。在方塊1802,溫度計時器(例如,在MCP的功率管理單元(PMU)之內)可以被啟動以計時第一周期,例如,計時的區間是在從MCP的一或多個晶粒接收溫度資料到該PMU之前發生。繼續到決定菱形1804,如果溫度計時器還沒有完成其第一週期的計時,溫度計時器可以繼續運行,直到該第一週期完成。進行到決定菱形 1806,如果MCP處於活動的狀態(例如,該MCP處於封裝C0狀態),繼續到方塊1814,溫度資料可以由PMU從MCP的晶粒接收。
如果,在決定菱形1806,該MCP處於睡眠狀態(例如,在睡眠狀態中,諸如封裝C3狀態、封裝C6狀態等),進行到方塊1808,延遲計時器可被啟動以延遲由PMU接收的溫度資料,其可以允許MCP保持在睡眠模式長達可導致節能的額外延遲時間,與先前的“喚醒”(例如,為了收集溫度資料)比較,其將在第一週期期滿時,由PMU請求。繼續到決定菱形1810,延遲計時器可運行以完成延遲週期。當完成延遲週期時,前進到方塊1811,MCP可以從睡眠狀態被喚醒以收集來自MCP的晶粒的溫度資料。移動到方塊1812,延遲計時器可被重置。進行到方塊1814,溫度資料可以從MCP的晶粒讀取,並進行到方塊1816,溫度資料計時器可被重置。繼續到方塊1802,該溫度資料計時器可再次被啟動以計時溫度測量之間的另一個第一週期。因此,當MCP處於睡眠狀態中,資料採集的計時實例,其包括延遲計時器可以提供相比於第一週期更長的“下降時間”,(例如,包括第一週期和延遲週期的第二週期)。當MCP處於睡眠模式,由於MCP處於睡眠模式的時間間隔延長,第二週期的實現可以導致增加省電。
其它實施例描述如下。
第1實施例是一種處理器,其包括至少一個 核心和功率管理邏輯。該功率管理邏輯係用以從在包括該處理器的封裝內之複數個晶粒來接收溫度資料;判斷複數個溫度控制餘裕的最小溫度控制餘裕,其中每個溫度控制餘裕將基於與該晶粒相關的各別熱控制溫度並且基於與該晶粒相關的各別溫度資料來判斷;產生熱報告,該熱報告係用以包括最小的溫度控制餘裕;以及儲存該熱報告。
第2實施例包括第1實施例的元件。此外,該功率管理邏輯係進一步用以判斷該等複數個晶粒的每個晶粒的該相應的溫度控制餘裕,其中每個溫度控制餘裕係基於與該晶粒相關的該各別熱控制溫度和與該晶粒相關的該各別溫度資料之間的差異來判斷。
第3實施例包括第2實施例的元件。此外,該功率管理邏輯係用以從該等複數個溫度控制餘裕選擇最小的熱控制餘裕。
第4實施例包括第2實施例的元件。此外,該功率管理邏輯係用以判斷該封裝是否處於活動狀態,並響應於該封裝係處於該活動狀態的判斷,該功率管理邏輯係用以根據第一時間週期週期性地從該封裝的每個晶粒接收相應的溫度資料。
第5實施例包括第4實施例的元件。此外,響應於由該功率管理邏輯判斷該封裝係處於睡眠狀態,該功率管理邏輯係用以在第二時間週期已經過去之後喚醒該封裝至該活動狀態,其中該第二週期係長於該第一時間週期,並且在喚醒該封裝至該活動狀態時,該功率管理邏輯 係用以從該等複數個晶粒的每個晶粒接收該相應的溫度資料。
第6實施例包括第1實施例的元件,其中該功率管理邏輯係用以提供響應於請求的該熱報告。
第7實施例包括第1實施例的元件,其中該功率管理邏輯係進一步用以判斷複數個限制餘裕的每個,並且其中每個限制餘裕係基於限制溫度和從該等複數個晶粒的相應晶粒接收的相應溫度資料來判斷。
第8實施例包括第7實施例的元件。此外,該功率管理邏輯係進一步用以判斷該等複數個限制餘裕的最小限制餘裕,並用以包括在該熱報告中的最小限制餘裕。
第9實施例包括第1~9實施例中任一項的元件,其中該功率管理邏輯係進一步用以基於所接收的該溫度資料來判斷該等複數個晶粒的最高溫度,並用以包括在該熱報告中的該等複數個晶粒的最高溫度。
第10實施例是一種多晶片封裝(MCP),其係用以包括複數個晶粒,每個晶粒係用以提供與該晶粒的晶粒溫度有關的相應溫度資料;以及。該MCP係進一步包括功率管理邏輯,其用以接收複數個溫度資料,該等複數個溫度資料包括來自每個晶粒的該相應溫度資料、用以基於該晶粒的相應溫度資料和基於該晶粒的各自熱控制溫度來判斷複數個溫度控制餘裕、每個溫度控制餘裕、用以判斷該溫度控制餘裕的最小溫度控制餘裕,並且用以儲存 包括該最小溫度控制餘裕的報告。
第11實施例包括第10實施例的元件。此外,該功率管理邏輯係用以從複數個溫度資料來判斷最大晶粒溫度,並用以在該報告中包括與該晶粒的該最大晶粒溫度相關的資訊。
第12實施例包括第10實施例的元件,其中該功率管理邏輯係進一步用以判斷每個晶粒的限制餘裕,該限制餘裕係基於該晶粒的各自限制溫度與基於從該晶粒接收的該溫度資料之晶粒溫度的比較來判斷。
第13實施例包括第12實施例的元件,並且該功率管理邏輯係進一步用以從該等複數個限制餘裕判斷最小限制餘裕,並用以在該報告中包括該最小限制餘裕。
第14實施例包括第10~13實施例中任一項的元件。此外,該功率管理邏輯係用以響應於該MCP係處於活動狀態,根據第一時間週期週期性地從每個晶粒收集相應的溫度資料。
第15實施例包括第14實施例的元件。此外,響應於該MCP係處於睡眠狀態,該功率管理邏輯係用以在長於該第一時間週期的第二時間週期之後喚醒該MCP,並且用以從每個晶粒收集該相應的溫度資料。
第16實施例一種機器可讀媒體,其具有儲存於其上的資料,其由至少一個機器所使用,使得該至少一個機器用以製造至少一個積體電路來執行一種方法,其包含在多晶片封裝(MCP)的功率管理邏輯,從複數個多晶 片封裝(MCP)的晶粒的每個晶粒接收相應的溫度資料;基於該相應的溫度資料並基於該晶粒的各自控制溫度來由功率管理邏輯判斷每個晶粒的相應控制溫度餘裕;由該功率管理邏輯從該控制溫度的餘裕判斷最小控制溫度餘裕;以及由該功率管理邏輯儲存包括該最小控制溫度餘裕的熱報告。
第17實施例包括第16實施例的元件。此外,該方法進一步包括由該功率管理邏輯基於該晶粒溫度與降低該MCP的活動相關的限制溫度的比較來判斷該晶粒的最小限制餘裕,並且在該熱報告包括該最小限制餘裕。
第18實施例包括第16~17實施例中任一項的元件。此外,該MCP係處於活動狀態和非活動狀態之一,並且該方法進一步包括由該功率管理邏輯判斷該MCP是否處於該活動狀態。
第19實施例包括第18實施例的元件,並且該方法進一步包括響應於該MCP係處於該活動狀態的判斷,根據第一時間週期週期性地從每個晶粒接收該相應的溫度資料。
第20實施例包括第19實施例的元件,並且該方法進一步包括響應於該MCP係處於該非活動狀態的判斷,導致該MCP在大於該第一週期的第二時間週期已經過去之後,用以改變到該活動狀態,並且當該MCP係處於該活動狀態時,接收該相應的溫度資料。
第21實施例一種方法,其包括在多晶片封裝(MCP)的功率管理邏輯,從複數個多晶片封裝(MCP)的晶粒的每個晶粒接收相應的溫度資料;基於該相應的溫度資料並基於該晶粒的各自控制溫度來由功率管理邏輯判斷每個晶粒的相應控制溫度餘裕;由該功率管理邏輯從該控制溫度的餘裕判斷最小控制溫度餘裕;以及由該功率管理邏輯儲存包括該最小控制溫度餘裕的熱報告。
第22實施例包括第21實施例的元件,並且進一步包括由該功率管理邏輯基於該晶粒溫度與降低該MCP的活動相關的限制溫度的比較來判斷該晶粒的最小限制餘裕,並且在該熱報告包括該最小限制餘裕。
第23實施例包括第21實施例的元件,其中該MCP係處於活動狀態和非活動狀態之一,並且該方法進一步包括由該功率管理邏輯判斷該MCP是否處於該活動狀態。
第24實施例包括第23實施例的元件,並且進一步包括響應於該MCP係處於該活動狀態的判斷,根據第一時間週期週期性地從每個晶粒接收該相應的溫度資料。
第25實施例包括第24實施例的元件,並且進一步包括響應於該MCP係處於該非活動狀態的判斷,導致該MCP在大於該第一週期的第二時間週期已經過去之後,用以改變到該活動狀態,並且當該MCP係處於該活動狀態時,接收該相應的溫度資料。
第26實施例包括第21實施例的元件,並且進一步包括響應於請求提供該熱報告。
第27實施例包括一種裝置,其用以執行第21~26實施例中任一項的方法。
第28實施例包括一種裝置,其包括用以執行第21~26實施例中任一項的方法的機制。
第29實施例是一種裝置,其係用以包括從複數個多晶片封裝(MCP)的晶粒的每個晶粒接收相應的溫度資料的機制;基於該相應的溫度資料並基於該晶粒的各自控制溫度來判斷每個晶粒的相應控制溫度餘裕的機制;從該控制溫度的餘裕判斷最小控制溫度餘裕的機制;以及儲存包括該最小控制溫度餘裕的熱報告的機制。
第30實施例包括第29實施例的元件,並且進一步包括基於該晶粒溫度與降低該MCP的活動相關的限制溫度的比較來判斷該晶粒的最小限制餘裕,並且在該熱報告包括該最小限制餘裕的機制。
第31實施例包括第29實施例的元件。該MCP係處於活動狀態和非活動狀態之一,並且該方法進一步包括判斷該MCP是否處於該活動狀態的機制。
第32實施例包括第31實施例的元件,並且進一步包括響應於該MCP係處於該活動狀態的判斷,根據第一時間週期週期性地由該功率管理邏輯從每個晶粒接收該相應的溫度資料的機制。
第33實施例包括第32實施例的元件,進一 步包括響應於該MCP係處於該非活動狀態的判斷,導致該MCP在大於該第一週期的第二時間週期已經過去之後,用以改變到該活動狀態,並且當該MCP係處於該活動狀態時,接收該相應的溫度資料的機制。
第34實施例包括第29~33實施例中任一項的元件,並且進一步包括響應於請求提供熱報告的機制。
實施例可以用代碼來實現,並且可以被儲存在非暫態儲存媒體,其上儲存有指令,該指令可用於將系統程式化以執行指令。實施例也可用資料被實現,並且可以被儲存在非暫態儲存媒體,其如果由至少一個機器使用,使得至少一個機器用以製造的至少一個積體電路以執行一或多個操作。儲存媒體可以包括但不限於任何類型的碟,其包括軟碟、光碟、固態硬碟(SSD)、唯讀光碟(CD-ROM)、可複寫光碟(CD-RW)和磁光碟、半導體裝置,諸如唯讀記憶體(ROM)、隨機存取記憶體(RAM),諸如動態隨機存取記憶體(DRAM)、靜態隨機存取記憶體(SRAM)、可抹除可程式化唯讀記憶體(EPROM)、快閃記憶體、電可抹除除可程式化唯讀記憶體(EEPROM)、磁卡或光卡或任何其它類型的適於儲存電子指令的媒體。
雖然本發明已經描述相對有限數量的實施例,本領域的技術人員將理解從中的許多修改和變化。所附申請專利範圍第意圖涵蓋所有這些修改和變化落入本發明的真實精神和範圍內。
100‧‧‧系統
110‧‧‧處理器
120a‧‧‧核心
120n‧‧‧核心
125a‧‧‧積體電壓調節器
125n‧‧‧積體電壓調節器
125x‧‧‧積體電壓調節器
132‧‧‧輸入/輸出介面
134‧‧‧介面
136‧‧‧積體記憶體控制器
138‧‧‧功率控制單元(PCU)
150‧‧‧電源供應
160‧‧‧外部電壓調節器

Claims (20)

  1. 一種處理器,其包含:至少一個核心;以及功率管理邏輯,其用以:從在包括該處理器的封裝內之複數個晶粒來接收溫度資料;判斷複數個溫度控制餘裕的最小溫度控制餘裕,每個溫度控制餘裕將基於與該晶粒相關的各別熱控制溫度並且基於與該晶粒相關的各別溫度資料來判斷;產生熱報告,該熱報告係用以包括最小的溫度控制餘裕;以及儲存該熱報告。
  2. 如申請專利範圍第1項的處理器,其中該功率管理邏輯係進一步用以判斷該等複數個晶粒的每個晶粒的該相應的溫度控制餘裕,其中每個溫度控制餘裕係基於與該晶粒相關的該各別熱控制溫度和與該晶粒相關的該各別溫度資料之間的差異來判斷。
  3. 如申請專利範圍第2項的處理器,其中該功率管理邏輯係用以從該等複數個溫度控制餘裕選擇最小的熱控制餘裕。
  4. 如申請專利範圍第2項的處理器,其中該功率管理邏輯係用以判斷該封裝是否處於活動狀態,並響應於該封裝係處於該活動狀態的判斷,該功率管理邏輯係用以根據第一時間週期週期性地從該封裝的每個晶粒接收相應的溫 度資料。
  5. 如申請專利範圍第4項的處理器,其中響應於由該功率管理邏輯判斷該封裝係處於睡眠狀態,該功率管理邏輯係用以在第二時間週期已經過去之後喚醒該封裝至該活動狀態,其中該第二週期係長於該第一時間週期,並且在喚醒該封裝至該活動狀態時,該功率管理邏輯係用以從該等複數個晶粒的每個晶粒接收該相應的溫度資料。
  6. 如申請專利範圍第4項的處理器,其中該功率管理邏輯係用以提供響應於請求的該熱報告。
  7. 如申請專利範圍第1項的處理器,其中該功率管理邏輯係進一步用以判斷複數個限制餘裕的每個,並且其中每個限制餘裕係基於限制溫度和從該等複數個晶粒的相應晶粒接收的相應溫度資料來判斷。
  8. 如申請專利範圍第7項的處理器,其中該功率管理邏輯係進一步用以判斷該等複數個限制餘裕的最小限制餘裕,並用以包括在該熱報告中的最小限制餘裕。
  9. 如申請專利範圍第1項的處理器,其中該功率管理邏輯係進一步用以基於所接收的該溫度資料來判斷該等複數個晶粒的最高溫度,並用以包括在該熱報告中的該等複數個晶粒的最高溫度。
  10. 一種多晶片封裝(MCP),其包含:複數個晶粒,每個晶粒係用以提供與該晶粒的晶粒溫度有關的相應溫度資料;以及功率管理邏輯,其用以接收複數個溫度資料,該等複 數個溫度資料包括來自每個晶粒的該相應溫度資料、用以基於該晶粒的相應溫度資料和基於該晶粒的各自熱控制溫度來判斷複數個溫度控制餘裕、每個溫度控制餘裕、用以判斷該溫度控制餘裕的最小溫度控制餘裕,並且用以儲存包括該最小溫度控制餘裕的報告。
  11. 如申請專利範圍第10項的MCP,其中該功率管理邏輯係用以從複數個溫度資料來判斷最大晶粒溫度,並用以在該報告中包括與該晶粒的該最大晶粒溫度相關的資訊。
  12. 如申請專利範圍第10項的MCP,其中該功率管理邏輯係進一步用以判斷每個晶粒的限制餘裕,該限制餘裕係基於該晶粒的各自限制溫度與基於從該晶粒接收的該溫度資料之晶粒溫度的比較來判斷。
  13. 如申請專利範圍第12項的MCP,其中該功率管理邏輯係進一步用以從該等複數個限制餘裕判斷最小限制餘裕,並用以在該報告中包括該最小限制餘裕。
  14. 如申請專利範圍第10項的MCP,其中該功率管理邏輯係用以響應於該MCP係處於活動狀態,根據第一時間週期週期性地從每個晶粒收集相應的溫度資料。
  15. 如申請專利範圍第14項的MCP,其中響應於該MCP係處於睡眠狀態,該功率管理邏輯係用以在長於該第一時間週期的第二時間週期之後喚醒該MCP,並且用以從每個晶粒收集該相應的溫度資料。
  16. 一種機器可讀媒體,其具有儲存於其上的資料, 其由至少一個機器所使用,使得該至少一個機器用以製造至少一個積體電路來執行一種方法,其包含:在多晶片封裝(MCP)的功率管理邏輯,從複數個多晶片封裝(MCP)的晶粒的每個晶粒接收相應的溫度資料;基於該相應的溫度資料並基於該晶粒的各自控制溫度來由功率管理邏輯判斷每個晶粒的相應控制溫度餘裕;由該功率管理邏輯從該控制溫度的餘裕判斷最小控制溫度餘裕;以及由該功率管理邏輯儲存包括該最小控制溫度餘裕的熱報告。
  17. 如申請專利範圍第16項的機器可讀媒體,其中該方法進一步包括由該功率管理邏輯基於該晶粒溫度與降低該MCP的活動相關的限制溫度的比較來判斷該晶粒的最小限制餘裕,並且在該熱報告包括該最小限制餘裕。
  18. 如申請專利範圍第16項的機器可讀媒體,其中該MCP係處於活動狀態和非活動狀態之一,並且該方法進一步包括由該功率管理邏輯判斷該MCP是否處於該活動狀態。
  19. 如申請專利範圍第18項的機器可讀媒體,其中該方法進一步包括響應於該MCP係處於該活動狀態的判斷,根據第一時間週期藉由該功率管理邏輯週期性地從每個晶粒接收該相應的溫度資料。
  20. 如申請專利範圍第19項的機器可讀媒體,其中該 方法進一步包括響應於該MCP係處於該非活動狀態的判斷,導致該MCP在大於該第一週期的第二時間週期已經過去之後,用以改變到該活動狀態,並且當該MCP係處於該活動狀態時,接收該相應的溫度資料。
TW104138328A 2014-12-23 2015-11-19 用以提供多晶片封裝之熱參數報告的裝置與方法 TWI592794B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
IN6510CH2014 2014-12-23
US14/852,859 US10877530B2 (en) 2014-12-23 2015-09-14 Apparatus and method to provide a thermal parameter report for a multi-chip package

Publications (2)

Publication Number Publication Date
TW201635083A true TW201635083A (zh) 2016-10-01
TWI592794B TWI592794B (zh) 2017-07-21

Family

ID=56129300

Family Applications (2)

Application Number Title Priority Date Filing Date
TW106116733A TWI656427B (zh) 2014-12-23 2015-11-19 用以提供多晶片封裝之熱參數報告的裝置與方法
TW104138328A TWI592794B (zh) 2014-12-23 2015-11-19 用以提供多晶片封裝之熱參數報告的裝置與方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
TW106116733A TWI656427B (zh) 2014-12-23 2015-11-19 用以提供多晶片封裝之熱參數報告的裝置與方法

Country Status (6)

Country Link
US (2) US10877530B2 (zh)
EP (2) EP3237999B1 (zh)
CN (3) CN112257356A (zh)
DE (1) DE202015009867U1 (zh)
TW (2) TWI656427B (zh)
WO (1) WO2016105710A1 (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10877530B2 (en) * 2014-12-23 2020-12-29 Intel Corporation Apparatus and method to provide a thermal parameter report for a multi-chip package
US11137807B2 (en) * 2018-03-28 2021-10-05 Intel Corporation System, apparatus and method for controllable processor configuration based on a temperature specification
US11182100B2 (en) * 2018-11-07 2021-11-23 Intel Corporation SSD temperature control technique
KR20200137664A (ko) * 2019-05-31 2020-12-09 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작방법
US11287865B2 (en) * 2019-06-14 2022-03-29 Microchip Technology Incorporated USB hub with integrated power and thermal management
JP7394880B2 (ja) * 2019-09-12 2023-12-08 長江存儲科技有限責任公司 熱インジケータを備えた基板を含む電子部品
TWI752458B (zh) * 2020-04-09 2022-01-11 招慶 林 匯流排上元件動態定址系統
JP2022049531A (ja) * 2020-09-16 2022-03-29 キオクシア株式会社 メモリシステム
TW202324034A (zh) * 2021-06-25 2023-06-16 美商高通公司 用於基於SoC的電子設備的分層級電源管理架構
WO2022272213A1 (en) * 2021-06-25 2022-12-29 Nuvia, Inc. Dynamic power management for soc-based electronic devices
US11733757B2 (en) 2021-06-25 2023-08-22 Qualcomm Incorporated Hierarchical power management architecture for SoC-based electronic devices
US20230110664A1 (en) * 2021-10-07 2023-04-13 Micron Technology, Inc. Managing a memory sub-system based on composite temperature
WO2024072934A1 (en) * 2022-09-30 2024-04-04 Tesla, Inc. Method and apparatus for telemetry of system on a wafer

Family Cites Families (105)

* 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
US6470289B1 (en) 1999-08-05 2002-10-22 Compaq Information Technologies Group, L.P. Independently controlling passive and active cooling in a computer system
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
US20020173858A1 (en) 2001-03-29 2002-11-21 Sherlock Ian J. Method for achieving adaptive thermal management of DSL modems
US6928565B2 (en) 2001-04-13 2005-08-09 Dell Products L.P. Computer system thermal lap management method and apparatus
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
US6873883B2 (en) 2001-12-26 2005-03-29 Hewlett-Packard Development Company, L.P. Adaptive fan controller for a computer system
US6751781B2 (en) * 2002-01-18 2004-06-15 Advanced Semiconductor Engineering, Inc. Thermal data automatic service system
US6996728B2 (en) 2002-04-26 2006-02-07 Hewlett-Packard Development Company, L.P. Managing power consumption based on utilization statistics
US7086058B2 (en) 2002-06-06 2006-08-01 International Business Machines Corporation Method and apparatus to eliminate processor core hot spots
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
JP2006518064A (ja) 2003-01-23 2006-08-03 ユニバーシティー オブ ロチェスター マルチクロックドメインを有するマイクロプロセッサ
JP4061492B2 (ja) 2003-02-10 2008-03-19 ソニー株式会社 情報処理装置および消費電力制御方法
US6856009B2 (en) * 2003-03-11 2005-02-15 Micron Technology, Inc. Techniques for packaging multiple device components
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
US7480587B2 (en) 2004-06-30 2009-01-20 Intel Corporation Method for adaptive performance margining with thermal feedback
US8190863B2 (en) * 2004-07-02 2012-05-29 Intel Corporation Apparatus and method for heterogeneous chip multiprocessors via resource allocation and restriction
US7347621B2 (en) 2004-07-16 2008-03-25 International Business Machines Corporation Method and system for real-time estimation and prediction of the thermal state of a microprocessor unit
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
US7925902B1 (en) 2004-09-10 2011-04-12 Micro Industries Corporation System and method for controlling an integrated display computer heat sink temperature
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
US20060161375A1 (en) 2004-12-30 2006-07-20 Allen Duberstein Optimizing processing speed based on measured temperatures
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
US7260007B2 (en) 2005-03-30 2007-08-21 Intel Corporation Temperature determination and communication for multiple devices of a memory module
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
US7590473B2 (en) * 2006-02-16 2009-09-15 Intel Corporation Thermal management using an on-die thermal sensor
US20070204106A1 (en) * 2006-02-24 2007-08-30 James Donald Adjusting leakage power of caches
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
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
US7480124B2 (en) * 2007-01-31 2009-01-20 Rockwell Automation Technologies, Inc. Detection of an AC input phase-loss on a multi-phase AC servo drive
US7730340B2 (en) 2007-02-16 2010-06-01 Intel Corporation Method and apparatus for dynamic voltage and frequency scaling
WO2008117133A1 (en) 2007-03-26 2008-10-02 Freescale Semiconductor, Inc. Anticipation of power on of a mobile device
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
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 엘지전자 주식회사 전원관리 제어 장치 및 방법
US8156362B2 (en) 2008-03-11 2012-04-10 Globalfoundries Inc. Hardware monitoring and decision making for transitioning in and out of low-power state
AU2009261991B2 (en) 2008-06-26 2013-03-14 Google Llc Data center thermal monitoring
TWI387089B (zh) * 2008-11-14 2013-02-21 Chipmos Technologies Inc 多晶片封裝結構及其製造方法
US8954977B2 (en) 2008-12-09 2015-02-10 Intel Corporation Software-based thread remapping for power savings
US8260474B2 (en) 2009-09-25 2012-09-04 Intel Corporation Sensor-based thermal specification enabling a real-time metric for compliance
US8700943B2 (en) 2009-12-22 2014-04-15 Intel Corporation Controlling time stamp counter (TSC) offsets for mulitple cores and threads
US8312258B2 (en) * 2010-07-22 2012-11-13 Intel Corporation Providing platform independent memory logic
US8943334B2 (en) 2010-09-23 2015-01-27 Intel Corporation Providing per core voltage and frequency control
US8793512B2 (en) * 2010-10-29 2014-07-29 Advanced Micro Devices, Inc. Method and apparatus for thermal control of processing nodes
US8538598B2 (en) 2010-12-23 2013-09-17 Intel Corporation Power and thermal optimization of processor and cooling
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
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
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
US9141159B2 (en) * 2011-11-03 2015-09-22 International Business Machines Corporation Minimizing aggregate cooling and leakage power with fast convergence
US8874949B2 (en) * 2011-12-22 2014-10-28 Intel Corporation Method, apparatus, and system for energy efficiency and energy conservation including enhanced temperature based voltage control
US9122464B2 (en) * 2011-12-22 2015-09-01 Intel Corporation Method, apparatus, and system for energy efficiency and energy conservation including energy efficient processor thermal throttling using deep power down mode
WO2013137860A1 (en) 2012-03-13 2013-09-19 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
US9323316B2 (en) 2012-03-13 2016-04-26 Intel Corporation Dynamically controlling interconnect frequency in a processor
WO2013147760A1 (en) * 2012-03-28 2013-10-03 Intel Corporation Securing thermal management parameters in firmware from cyber attack
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
US9063727B2 (en) * 2012-08-31 2015-06-23 Intel Corporation Performing cross-domain thermal control in a processor
US8946871B2 (en) * 2012-11-07 2015-02-03 Lsi Corporation Thermal improvement of integrated circuit packages
US10324642B2 (en) * 2013-06-07 2019-06-18 Sanmina Corporation Peripheral component interconnect express (PCIe) solid state drive (SSD) accelerator
US20160147280A1 (en) * 2014-11-26 2016-05-26 Tessil Thomas Controlling average power limits of a processor
US10048744B2 (en) * 2014-11-26 2018-08-14 Intel Corporation Apparatus and method for thermal management in a multi-chip package
US10877530B2 (en) * 2014-12-23 2020-12-29 Intel Corporation Apparatus and method to provide a thermal parameter report for a multi-chip package

Also Published As

Publication number Publication date
TWI592794B (zh) 2017-07-21
TWI656427B (zh) 2019-04-11
CN112257356A (zh) 2021-01-22
EP3237999B1 (en) 2022-03-16
EP3237999A1 (en) 2017-11-01
US20160179158A1 (en) 2016-06-23
CN107077175B (zh) 2021-12-28
WO2016105710A1 (en) 2016-06-30
CN114201011A (zh) 2022-03-18
US20200301490A1 (en) 2020-09-24
TW201809951A (zh) 2018-03-16
DE202015009867U1 (de) 2020-11-13
US11543868B2 (en) 2023-01-03
EP3789846A1 (en) 2021-03-10
US10877530B2 (en) 2020-12-29
EP3237999A4 (en) 2018-08-29
CN107077175A (zh) 2017-08-18

Similar Documents

Publication Publication Date Title
TWI592794B (zh) 用以提供多晶片封裝之熱參數報告的裝置與方法
US10908660B2 (en) Determining thermal margins in a multi-die processor
TWI610161B (zh) 處理器溫度之均衡控制及儲存可執行指令的電腦可讀媒體
US11435816B2 (en) Processor having accelerated user responsiveness in constrained environment
US11481013B2 (en) Multi-level loops for computer processor control
US10324519B2 (en) Controlling forced idle state operation in a processor
WO2017083020A1 (en) Dynamically optimizing power management operational parameters of a processor
US20180314289A1 (en) Modifying an operating frequency in a processor
US20160224090A1 (en) Performing context save and restore operations in a processor
US11016916B2 (en) Generation of processor interrupts using averaged data