TWI516909B - 包括在裝置中自主的硬體式深度省電之能源效率及能源節約的方法、設備及系統 - Google Patents
包括在裝置中自主的硬體式深度省電之能源效率及能源節約的方法、設備及系統 Download PDFInfo
- Publication number
- TWI516909B TWI516909B TW101145429A TW101145429A TWI516909B TW I516909 B TWI516909 B TW I516909B TW 101145429 A TW101145429 A TW 101145429A TW 101145429 A TW101145429 A TW 101145429A TW I516909 B TWI516909 B TW I516909B
- Authority
- TW
- Taiwan
- Prior art keywords
- power saving
- state
- deep power
- processor
- unit
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0625—Power saving in storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/325—Power saving in peripheral device
- G06F1/3278—Power saving in modem or I/O interface
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3287—Power saving characterised by the action undertaken by switching off individual functional units in the computer system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0634—Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy 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)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Power Sources (AREA)
Description
本發明之揭示係有關積體電路中之能源效率及能源節約,且尤係有關(但非獨佔地有關)減少電腦處理系統中之裝置的功率消耗。
半導體處理及邏輯設計的進展容許可存在於積體電路裝置中的邏輯數量之增加。因此,電腦系統組態已自一系統中之單一或多個積體電路演進到個別積體電路中之多個硬體執行緒、多個核心、多個裝置、及/或完整的系統。此外,由於積體電路密度成長,所以計算系統(自嵌入式系統到伺服器)的功率要求也逐步增加。此外,軟體的無效率及其硬體要求也造成計算裝置的能源消耗增加。事實上,某些研究指出計算裝置消耗了諸如美國等的國家的整個電力供應中之相當大的百分率。因此,對與積體電路相關聯的能源效率及能源節約有很大的需求。當伺服器、桌上型電腦、筆記本電腦、超輕薄筆記本電腦、平板電腦、行動電話、處理器、嵌入式系統等的裝置變得更為普遍時(被納入在從一般電腦、汽車、及電視到生物技術),這些需求將增加。
本發明說明了包括能夠執行裝置的自主硬體式深度省
電的能源效率及能源節約系統、設備、及方法之實施例。在一實施例中,一系統包含一裝置、一靜態記憶體、以及被耦合到該裝置及該靜態記憶體之一功率控制單元。該系統進一步包含該功率控制單元之一深度省電邏輯,用以監視該裝置之狀態,且在該裝置閒置時將該裝置轉移到一深度省電狀態。在該系統中,該裝置在該深度省電狀態時消耗比在閒置狀態時少的功率。
在下文的說明中,述及了許多特定細節。然而,我們應可了解:可在沒有這些特定細節之情形下實施本發明之實施例。在其他的情形中,並未詳細示出習知的電路、結構、及技術,以便不會模糊了對本說明的了解。
在本說明書中提及"一個實施例"、"一實施"、"一例示實施例"等的詞語時,意指所述之該實施例可包含一特定特徵、結構、或特性,但是每一實施例可以不必然包含該特定特徵、結構、或特性。此外,這些詞語不必然都參照到相同的實施例。此外,當以與一實施例有關之方式述及一特定特徵、結構、或特性時,即認為以與其他實施例有關之方式影響該特徵、結構、或特性是在熟悉此項技術者的知識範圍內,且不論其是否被明確地述及都是如此。
雖然將參照諸如計算平台或微處理器中之特定積體電路中之能源節約及能源效率而說明下文中之實施例,但是其他實施例可適用於其他類型的積體電路及邏輯裝置。可
將本發明述及的實施例之類似技術及教導應用於亦可受益於較佳的能源效率及能源節約之其他類型的電路或半導體裝置。例如,所揭示之該等實施例不限於桌上型電腦系統,且亦可被用於諸如手持裝置、系統單晶片(System On a Chip;簡稱SOC)、及嵌入式應用等的其他裝置。手持裝置的某些例子包括細胞式電話、網際網路通訊協定裝置、數位相機、個人數位助理(Personal Digital Assistant;簡稱PDA)、及手持個人電腦(PC)。嵌入式應用通常包括微控制器、數位信號處理器(Digital Signal Processor;簡稱DSP)、系統單晶片、網路電腦(NetPC)、機上盒、網路集線器、廣域網路(Wide Area Network;簡稱WAN)交換器、或可執行下文中揭示的功能及操作之任何其他的系統。此外,本發明述及的該等設備、方法、及系統不限於實體計算裝置,而是亦可與能源節約及效率之軟體最佳化有關。自下文之說明將可易於了解:本發明(不論是參照硬體、韌體、軟體、或以上各項的組合)述及的方法、設備、及系統之實施例對於諸如包含美國經濟結構的大部分的各種產品中之省電及能源效率等的"綠色科技"未來是相當重要的。
下文是能夠執行一處理系統中之裝置的自主深度省電因而有利於減少該等裝置的能源消耗且減少該處理系統的整體能源消耗的實施例。當計算系統處於現用狀態,例如當計算系統正在執行處理操作或顯示資料等的操作時,該等計算系統將消耗電力。為了在該計算系統處於非現用狀
態時省電,各處理核心可進入一深度省電狀態。該深度省電狀態能夠降低處理核心的電壓,因而又減少了處理核心的功率消耗。在本發明述及的裝置中,能夠在沒有軟體介入之情形下使諸如圖形處理裝置、顯示器、周邊組件互連(Peripheral Component Interconnect;簡稱PCI)控制器、影像信號處理器、音訊加速器、視訊加速器等的裝置進入一深度省電狀態。在一實施例中,監視該裝置,以便決定該裝置何時進入閒置狀態。在一實施例中,當該裝置進入閒置狀態時,一專用靜態機存取記憶體(靜態RAM)儲存用於該裝置的背景資料(context data)(例如,啟動背景、內部暫存器內之資料等的背景資料),該RAM的一維持電力軌提供一標稱量的電力,以便使該RAM能夠維持該背景資料的儲存,且該裝置被設定到一深度省電狀態。在一實施例中,該深度省電狀態是一C6電源狀態(power state)。在一實施例中,由於儲存了背景資料且進入了一深度省電狀態,所以能夠使該裝置的內部電壓降低到包括零的任何值,而在該內部電壓降低到零時,將完全關閉該裝置。因此,可藉由使該裝置進入一深度省電狀態,而將該裝置的功率消耗最小化,且甚至沒有功率消耗。
在一實施例中,進一步監視該裝置,以便決定何時將該裝置自該深度省電狀態喚醒。在一實施例中,當將該裝置自該深度省電狀態喚醒,且電力回復時,將該背景資料自該專用靜態RAM載入該裝置。在一實施例中,將該背
景資料載入該裝置,而使該裝置具有與該裝置進入該深度省電狀態時相同的組態,且該裝置的進入及退出該深度省電狀態對該處理系統及該處理系統執行的應用軟體是透通的。此外,如將於下文中更詳細說明的,可由不同的試探法(heuristics)決定該裝置何時處於閒置狀態且被置於一深度省電狀態、以及何時喚醒該裝置而退出該深度省電狀態。
第1圖示出具有用於裝置的深度省電的一系統100之一方塊圖。在一實施例中,系統100是諸如下文中之第6-9圖所示的那些處理系統等的較大電腦處理系統之一部分。在一實施例中,系統100包含一維持電源110、一功率控制單元102、以及一裝置130。
如前文所述,裝置130可以是圖形處理裝置、顯示器、PCI控制器等的裝置。在一實施例中,一裝置驅動單元140控制裝置130的操作。在一實施例中,裝置驅動單元140是使裝置130能夠與一處理系統互動之軟體、硬體、或以上兩者的組合。在一實施例中,功率控制單元102包含諸如一硬體式有限狀態機等的深度省電邏輯104,用以監視裝置130的狀態。在一實施例中,深度省電邏輯104是一永遠清醒的邏輯,該邏輯藉由監視自裝置驅動單元140接收的命令、在暫存器132、134上執行的操作、功率控制操作、裝置130與系統100的其他裝置(圖中未示出)或一CPU核心(圖中未示出)間之交易等的活動,而監視裝置130的狀態。在一實施例中,深度
省電邏輯104根據裝置130之被監視的狀態而決定該裝置是否處於閒置狀態(亦即,並未正在接收命令、在特定時間中不曾接收到一暫存器讀取或寫入命令等的狀態),且決定裝置130是否應該進入一深度省電狀態。
在一實施例中,功率控制單元102開始將裝置130置於一深度省電狀態之程序。在一實施例中,功率控制單元102將裝置130維護的背景資料儲存在暫存器132、134,且將其他背景資料儲存在靜態RAM 112。在一實施例中,靜態RAM 112是一專用RAM。在一實施例中,該背景資料提供了裝置130在進入一深度省電狀態之前所處於的狀態之一快照(snapshot)。在一實施例中,靜態RAM 112被耦合到一維持電源110,該維持電源110將足夠的電力提供給靜態RAM 112,以便保持該背景資料的完整性。然而,維持電源110提供給靜態RAM 112的電力小於操作一處理器且將裝置130保持在一閒置狀態所需的電力。在一實施例中,裝置130被置於該深度省電狀態,以便藉由節省裝置130保持在閒置狀態而不進入深度省電狀態所耗用的能源,而節省系統100所使用的能源。在一實施例中,諸如裝置130等的每一裝置都有其自己的靜態RAM及維持電力軌,以供進入及退出一深度省電狀態。
在一實施例中,功率控制單元102的深度省電邏輯104持續監視裝置130,以便決定裝置130何時要進入一喚醒狀態(亦即,離開該深度省電狀態,且使功率上升,以供正常的操作)。在一實施例中,深度省電邏輯104監
視暫存器132、134、裝置驅動單元140等的組件,以便決定何時要求了裝置130的一或多個服務。在一實施例中,功率控制單元102回應深度省電邏輯104決定裝置130應進入一喚醒狀態,而將該背景資料自靜態RAM 112載入裝置130。在一實施例中,該背景資料藉由恢復暫存器132、134中之值及設定裝置組態等的操作,而使裝置130回復到裝置130進入該深度省電狀態之前所處的狀態。裝置130然後可在該喚醒狀態下執行任務。
在一實施例中,如本發明所述的,係以對一處理系統中之諸如第6-9圖所示的那些其他裝置或軟體等的其他裝置或軟體透通之方式,使裝置130能夠進入及退出一深度省電狀態。因此,雖然裝置130所在的該系統並不處於一閒置狀態或深度省電狀態,但是當裝置130處於閒置狀態時,裝置130可進入一深度省電狀態,因而節省裝置130的能源使用。此外,功率控制單元102可進一步根據數種試探法而使裝置130進入及退出一深度省電狀態。
在一實施例中,當系統100的一中央處理單元(Central Processing Unit;簡稱CPU)核心(圖中未示出)進入一閒置模式時,裝置130將進入一深度省電狀態。在一實施例中,因為裝置130最後將跟隨CPU核心而進入閒置,所以功率控制單元102將以與該CPU核心鎖步(lock-step)之方式使裝置130進入一深度省電狀態。在另一實施例中,當裝置130處於閒置狀態但是一CPU核心並非處於閒置狀態時,功率控制單元102可根據
裝置130之閒置本質而仍然使裝置130進入一深度省電狀態。藉由不將裝置130鎖定到一CPU核心的相同電源狀態,功率控制單元102能夠利用可能顯著長於該CPU核心的閒置期間之裝置130的閒置期間,因而導致顯著低於CPU核心或作業系統的喚醒頻次。此外,能夠以獨立於CPU核心之方式進入一深度省電狀態,因而可減少裝置130之能源使用。
同樣地,功率控制單元102可根據一CPU核心,或可以獨立於該CPU核心之方式,使裝置130進入一喚醒狀態。在一實施例中,當該CPU核心進入閒置狀態時,裝置130最後也將進閒置狀態,且在該CPU核心再度變成忙碌狀態之前不會再處於現用狀態。因此,在一實施例中,當一CPU核心退出一深度省電狀態時,裝置130再度以鎖步之方式跟隨該CPU核心,且亦退出一深度省電狀態。藉由使某些裝置130的喚醒時間能夠與CPU核心的喚醒時間並行,可減少對CPU的功率消耗及效能的影響。在另一實施例中,縱然在一CPU核心進入一喚醒狀態時,裝置130仍可保持在一深度省電狀態。藉由將獨立的喚醒期間提供給裝置130,可在裝置130的延伸閒置時間期間中省電。
在一實施例中,功率控制單元102之深度省電邏輯104決定功率控制單元102應將哪一試探法(亦即,跟隨CPU核心的深度省電狀態或以獨立於CPU核心之方式進入/退出一深度省電狀態)應用於裝置130。在一實施例
中,深度省電邏輯104可根據裝置130之狀態、系統100的各組件之狀態、裝置130接收的命令之型樣或時序、暫存器132、134上的讀取/寫入操作之型樣或時序、與另一裝置或一CPU核心間之交易之型樣或時序等的一或多個度量而即時決定。在一實施例中,深度省電邏輯104監視一時間間隔中與裝置104、其他裝置、及一處理系統相關聯的各種度量,以便決定哪一試探法(亦即,跟隨CPU核心的深度省電狀態或以獨立於CPU核心之方式進入/退出一深度省電狀態)可被用來得到最大功率/效能最佳化點。在一實施例中,深度省電邏輯104週期性地監視該等各種度量,以便更新目前被深度省電邏輯104採用的試探法。例如,深度省電邏輯104可決定:在一特定時間間隔中,裝置130應跟隨一處理器的深度省電狀態改變;但是決定:在一不同的時間間隔中,裝置130應獨立地進入及退出一深度省電狀態。
第2A圖示出啟動一處理系統的一裝置中之深度省電的一方法200之一實施例。在一實施例中,由諸如一硬體式有限狀態機等的一處理邏輯執行該方法。
在一實施例中,監視諸如一圖形控制器、監視器、PCI介面等的一現用裝置(處理方塊202)。在一實施例中,係按照週期性時間間隔或持續地監視該裝置。在一實施例中,監視該裝置要求的操作、該裝置執行的操作、以及該裝置與一處理系統中之其他裝置間之交易。此外,也監視諸如裝置的暫存器讀取/寫入操作以及電力操作等的
內部裝置操作。在一實施例中,也監視諸如一或多個CPU核心之狀態等的一處理系統中之其他裝置之狀態。
在一實施例中,處理邏輯決定該裝置是否處於閒置狀態(處理方塊204)。在一實施例中,根據一或多個試探法而決定該裝置處於閒置狀態。在一實施例中,當也決定一CPU核心處於一閒置狀態或深度省電狀態時,決定該裝置處於閒置狀態。在另一實施例中,當該裝置在一特定量的時間中(例如,在0.5毫秒中或在根據該裝置的電源/策略模式的一時間間隔中等的一一特定量的時間中)並未執行操作時,決定該裝置處於閒置狀態。
在一實施例中,當處理邏輯決定該裝置並非處於閒置狀態時(處理方塊204),該程序終止。然而,當處理邏輯決定該裝置處於閒置狀態時,處理邏輯將裝置的背景資料儲存在一專用記憶體(處理方塊206),且使該裝置轉移到一深度省電狀態(處理方塊208)。在一實施例中,該專用記憶體是一靜態RAM記憶體。在一實施例中,該深度省電狀態是一C6電源狀態。
第2B圖示出將一裝置自該深度省電狀態喚醒的一方法250之一實施例。在一實施例中,由諸如一硬體式有限狀態機等的一處理邏輯執行該方法。
在一實施例中,監視諸如一圖形控制器、監視器、PCI介面等的處於該深度省電狀態之一裝置(處理方塊252)。如前文所述,可監視與該裝置有關的各方面、以及與其他裝置及電腦處理系統組件有關的各方面。
在一實施例中,處理邏輯決定是否應將該裝置自該深度省電狀態喚醒(處理方塊254)。在一實施例中,處理邏輯將以本發明述及的方式根據一或多個試探法使該裝置進入一喚醒狀態。在一實施例中,當一CPU核心自一閒置或深度省電狀態轉變到一喚醒狀態時,該裝置將進入一喚醒狀態。在另一實施例中,當一交易要求該裝置執行一行動時,處理邏輯將使該裝置進入一喚醒狀態。例如,當另一裝置或CPU要求該裝置執行一操作時,當該裝置接收到一暫存器讀取/寫入要求時等的時機。
當處理邏輯決定該裝置不應離開該深度省電狀態時,該程序終止。而,當處理邏輯決定該裝置應被喚醒時,處理邏輯開始對該裝置供電到一現用狀態(處理方塊256),且將背景資料載入該裝置(處理方塊258)。一實施例中,該背景資料是來自各裝置暫存器的資料、以及該裝置在進入該深度省電狀態之前所維護的其他資料。
可針對不同之目的且在不同之處理器中以不同的方式實施處理器核心。例如,此類核心之實施例可包括:(1)適用於一般用途計算之一般用途循序執行核心(in-order core);(2)適用於一般用途計算之高效能一般用途亂序執行核心(out-of-order core);以及(3)主要適用於圖形及/或科學(執行率)計算之特殊用途核心。不同的處理器之實施例可包括:(1)包含適用於一般用途計算的一或多個一般用途循序執行核心及/或適用於一般
用途計算的一或多個一般用途亂序執行核心之CPU;以及(2)包含要適用於圖形及/或科學(執行率)計算的一或多個特殊用途核心之共處理器。這些不同的處理器導致不同的電腦系統架構,該等架構可包括:(1)在與CPU不同的晶片上之共處理器;(2)在與CPU相同的封裝中之一不同的晶粒上之共處理器;(3)在與CPU相同的晶粒上之共處理器(在此種情形中,該共處理器有時被稱為諸如整合式圖形及/或科學(執行率)邏輯等的特殊用途邏輯,或被稱為特殊用途核心);以及(4)在相同的晶粒上可包含所述之CPU(有時被稱為應用核心或應用處理器)、前文所述之共處理器、及額外的功能之系統單晶片。下文中將說明例示核心架構,然後將說明例示處理器及電腦架構。
第3A圖是根據本發明的一實施例的一例示循序管線及一例示暫存器重命名(register renaming)亂序發出/執行管線之一方塊圖。第3B圖是將被包含在根據本發明的實施例的一處理器之一例示循序架構核心及一例示暫存器重命名亂序發出/執行架構核心之一方塊圖。第3A-B圖中之實線框示出該循序管線及循序執行核心,而以可供選擇採用之方式加入的虛線框示出該暫存器重命名亂序發出/執行管線及核心。由於循序執行層面是亂序執行層面
的一子集,所以將說明亂序執行層面。
在第3A圖中,一處理器管線300包含一提取階段302、一長度解碼階段304、一解碼階段306、一分配階段308、一重命名階段310、一排程(也被稱為派發或發出)階段312、一暫存器讀取/記憶體讀取階段314、一執行階段316、一寫回/記憶體寫入階段318、一異常處置階段322、以及一提交階段324。
第3B圖示出包含被耦合到一執行引擎單元350的一前端單元330之處理器核心390,而該前端單元330及該執行引擎單元350都被耦合到一記憶體單元370。該核心390可以是一精簡指令集計算(Reduced Instruction Set Computing;簡稱RISC)核心、一複雜指令集計算(Complex Instruction Set Computing;簡稱CISC)、一極長指令集(Very Long Instruction Word;簡稱VLIW)核心、或一混合或替代核心類型。作為又一選項,該核心390可以是諸如網路或通訊核心、壓縮引擎、共處理器核心、通用計算圖形處理單元(General Purpose computing Graphics Processing Unit;簡稱GPGPU)核心、或圖形核心等的特殊用途核心。
前端單元330包含被耦合到一指令快取記憶體單元334之一分支預測單元332,該指令快取記憶體單元334被耦合到一指令轉譯後備緩衝區(Translation Lookaside Buffer;簡稱TLB)336,該指令TLB 336被耦合到一指令提取單元338,該指令提取單元338被耦合到一解碼單
元340。解碼單元340(或解碼器)可將指令解碼,且產生自原始指令解碼的、或以其他方式反映原始指令的、或自原始指令衍生的一或多個微操作、微碼入口點(entry point)、微指令、其他指令、或其他控制信號,作為一輸出。可使用各種不同的機制實施解碼單元340。適當的機制之例子包括(但不限於)查詢表、硬體實施方式、可程式邏輯陣列(Programmable Logic Array;簡稱PLA)、及微碼唯讀記憶體(Read Only Memory;簡稱ROM)等的機制。在一實施例中,核心390包含一微碼ROM或用來儲存某些微指令的微碼之其他媒體(例如,在解碼單元340中或在前端單元330內的其他部分)。解碼單元340被耦合到執行引擎單元350中之一重命名/分配器單元352。
執行引擎單元350包含被耦合到一指令引退單元354及一組的一或多個排程器單元356之重命名/分配器單元352。該一或多個排程器單元356代表其中包括保留站(reservation station)及中央指令視窗(central instruction window)等的任何數目之不同的排程器。該一或多個排程器單元356被耦合到一或多個實體暫存器檔案單元358。該一或多個實體暫存器檔案單元358中之每一實體暫存器檔案單元代表一或多個實體暫存器檔案,該等實體暫存器檔案中之不同的實體暫存器檔案儲存諸如純量整數、純量浮點、緊縮整數(packed integer)、緊縮浮點(packed floating point)、向量整數、向量浮點、
或狀態(例如,係為將要被執行的下一指令的位址之指令指標)等的一或多個不同的資料類型。在一實施例中,該一或多個實體暫存器檔案單元358包含一向量暫存器單元、一寫入遮罩(write mask)暫存器單元、以及一純量暫存器單元。這些暫存器單元可提供架構向量暫存器、向量遮罩暫存器(vector mask register)、以及一般用途暫存器。該一或多個實體暫存器檔案單元358被指令引退單元354重疊,而示出可實施暫存器重命名及亂序執行的各種方式(例如,使用一或多個重排序緩衝器(reorder buffer)以及一或多個指令引退暫存器檔案;使用一或多個未來檔案(future file)、一或多個歷史緩衝器(history buffer)、以及一或多個指令引退暫存器檔案;使用一暫存器對照表(register map)以及一集區的暫存器等的方式)。該指令引退單元354及該一或多個實體暫存器檔案單元358被耦合到一或多個執行叢集360。該一或多個執行叢集360包含一組的一或多個執行單元362及一組的一或多個記憶體存取單元364。該等執行單元362可執行各種操作(例如,移位、加法、減法、乘法),且可對各種類型的資料(例如,純量浮點、緊縮整數、緊縮浮點、向量整數、向量浮點)執行操作。雖然某些實施例可包含專用於一些特定功能或一些特定組的功能之一些執行單元,但是其他實施例可以只包含全都被用來執行所有功能的一個執行單元或多個執行單元。所示之排程器單元356、實體暫存器檔案單元358、及執行叢集360可能是
複數個,這是因為某些實施例為某些類型的資料/操作創建個別的管線(例如,分別有其自己的排程器單元、實體暫存器檔案單元、及/或執行叢集之一純量整數管線、一純量浮點/緊縮整數/緊縮浮點/向量整數/向量浮點管線、及/或一記憶體存取管線;且在一個別的記憶體存取管線之情形中,實施只有該管線的執行叢集具有記憶體存取單元364之某些實施例)。我們亦應可了解:當使用個別的管線時,這些管線中之一或多個管線可以是亂序發出/執行,且其餘的管線可以是循序執行。
該組記憶體存取單元364被耦合到記憶體單元370,記憶體單元370包含被耦合到一資料快取記憶體單元374之一資料TLB單元372,且資料快取記憶體單元374被耦合到一第2階(L2)快取記憶體單元376。在一實施例中,該等記憶體存取單元364可包含分別被耦合到記憶體單元370中之資料TLB單元372的一載入單元、一儲存位址單元、及一儲存資料單元。指令快取記憶體單元334被進一步耦合到記憶體單元370中之第2階(L2)快取記憶體單元376。L2快取記憶體單元376被耦合到一或多個其他階的快取記憶體,且最後被耦合到一主記憶體。
舉例而言,該例示暫存器重命名亂序發出/執行核心架構可以下列方式實施管線300:(1)指令提取單元338執行提取及長度解碼階段302及304;(2)解碼單元340執行解碼階段306;(3)重命名/分配器單元352執行分配階段308及重命名階段310;(4)排程器單元356
執行排程階段312;(5)實體暫存器檔案單元358及記憶體單元370執行暫存器讀取/記憶體讀取階段314,執行叢集360執行該執行階段316;(6)記憶體單元370及實體暫存器檔案單元358執行寫回/記憶體寫入階段318;(7)各單元可能涉及異常處置階段322;以及(8)指令引退單元354及實體暫存器檔案單元358執行提交階段324。
核心390可支援其中包括本發明述及的指令之一或多種指令集(例如,x86指令集(且具有在較新版本中被加入的某些延伸);MIPS Technologies(位於Sunnyvale,CA)的MIPS指令集;ARM Holdings(位於Sunnyvale,CA)的ARM指令集(且具有諸如NEON等的一些可供選擇採用的延伸)。在一實施例中,核心390包含用來支援緊縮資料指令集延伸(例如,AVX1、AVX2)之邏輯,因而可使用緊縮資料執行許多多媒體應用程式使用的操作。
我們應可了解:該核心可支援多緒執行(multithreading)(執行兩個或更多個平行組的操作或執行緒),且可以其中包括時間切割(time sliced)多緒執行、同時多緒執行(當一實體核心將一邏輯核心提供給每一執行緒時,該實體核心是同時多緒執行)、或以上兩者的一組合(例如,諸如在Intel®超執行緒(Hyperthreading)技術中之時間切割式提取及解碼以及後續的同時多緒執行)之各種方式支援多緒執行。
雖然是在亂序執行的背景中說明暫存器重命名,但是
我們應可了解:可將暫存器重命名用於循序架構。雖然該處理器的所示實施例也包含個別的指令及資料快取記憶體單元334/374以及一共用的L2快取記憶體單元376,但是替代實施例可具有用於指令及資料之諸如一第1階(L1)內部快取記憶體等的一單一內部快取記憶體、或多階的內部快取記憶體。在某些實施例中,該系統可包含一內部快取記憶體及在核心及/或處理器外部的一外部快取記憶體之一組合。在替代實施例中,所有該等快取記憶體都可以是在核心及/或處理器的外部。
第4A-B圖示出一更特定的例示循序執行核心架構之一方塊圖,其中該核心將是一晶片中之數個邏輯方塊(包括相同類型的及/或不同類型的其他核心)中之一邏輯方塊。取決於應用,該等邏輯方塊經由一高頻寬互連網路(例如,一環狀網路(ring network))而與某些固定功能邏輯、記憶體輸入/輸出(I/O)介面、及其他必要的I/O邏輯通訊。
第4A圖是根據本發明的實施例的一單一處理器核心以及該處理器核心的晶粒內建互連網路402之連接及第2階(L2)快取記憶體的該處理器核心之本地子集404。在一實施例中,一指令解碼器400支援具有緊縮資料指令集延伸之x86指令集。一L1快取記憶體406可容許將快取記憶體的內容低延遲地存取到純量及向量單元。雖然在一
實施例中(為了簡化設計),一純量單元408及一向量單元410使用個別的暫存器集(分別為純量暫存器412及向量暫存器414,且在該等暫存器之間轉移的資料被寫到記憶體,然後自第一階(L1)快取記憶體406讀回,但是本發明之替代實施例可使用一種不同的方法(例如,使用單一暫存器集,或包含可在無須被寫入及讀回之情形下在兩個暫存器檔案之間轉移資料之一通訊路徑)。
L2快取記憶體之本地子集404是一總體L2快取記憶體的一部分,其中該總體L2快取記憶體被分成一些個別的本地子集,且每一處理器有一本地子集。每一處理器核心具有L2快取記憶體之其自己的本地子集404之一直接存取路徑。一處理器核心讀取的資料被儲存在其L2快取記憶體子集404,且可以與其他處理器核心存取其自己的L2快取記憶體本地子集平行之方式迅速地存取該資料。一處理器核心寫入之資料被儲存在其自己的L2快取記憶體子集404,且於必要時自其他子集清除該資料。該環狀網路保證被共用的資料之一致性。該環狀網路是雙向的,而可讓諸如處理器核心、L2快取記憶體、及其他邏輯方塊等的代理單元在該晶片內相互通訊。每一環狀資料路徑在每一方向的寬度是1012位元。
第4B圖是根據本發明的一實施例的第4A圖中之處理器核心的一部分之一放大圖。第4B圖包含L1快取記憶體404的一L1資料快取記憶體406A、以及與向量單元410及向量暫存器414有關的更多細節。具體而言,向量
單元410是一16倍寬向量處理單元(Vector Processing Unit;簡稱VPU)(請參閱16倍寬ALU 428),該16倍寬VPU執行整數、單精準度浮點、及雙精確度浮點指令中之一或多個指令。該VPU以拌和單元420支援對暫存器輸入的拌和,以數值轉換單元422A-B支援數值轉換,且以複製單元424支援記憶體輸入的複製。寫入遮罩暫存器426可預測所導致的向量寫入。
第5圖是可具有一個以上的核心、可具有一整合式記憶體控制器、且可具有根據本發明的實施例的整合式圖形之一處理器500之一方塊圖。第5圖中之實線框示出具有一單一核心502A、一系統代理單元510、及一組的一或多個匯流排控制器單元516之一處理器500,而以可供選擇採用之方式加入的虛線框示出示出具有多個核心502A-N、系統代理單元510中之一組的一或多個整合式記憶體控制器單元514、及特殊用途邏輯508之一替代處理器500。
因此,處理器500之不同的實施例可包括:(1)具有係為整合式圖形及/或科學(執行率)邏輯的特殊用途邏輯508(可包括一或多個核心)及係為一或多個一般用途核心的核心502A-N(例如,一般用途循序執行核心、一般用途亂序執行核心、以上兩者的一組合)之一CPU;(2)具有係為主要適用於圖形及/或科學(執行率)的
大量特殊用途核心的核心502A-N之一共處理器;以及(3)具有係為大量一般用途循序執行核心的核心502A-N之一共處理器。因此,處理器500可以是一般用途處理器、諸如網路或通訊處理器、壓縮引擎、圖形處理器、通用圖形處理單元(GPGPU)、高執行率的多重整合核心(Many Integrated Core;簡稱MIC)共處理器(包含30個或更多個核心)等的共處理器或特殊用途處理器、或嵌入式處理器等的處理器。可在一或多個晶片上實施該處理器。處理器500可以是使用諸如雙載子互補金屬氧化物半導體(BiCMOS)互補金屬氧化物半導體(CMOS)或N型金屬氧化物半導體(NMOS)等的的任何數目的製程技術之一或多個基材的一部分,且/或可在該一或多個基材上實施處理器500。
記憶體階層包括該等核心內之一或多階的快取記憶體、一組的一或多個共用快取記憶體單元506、以及被耦合到該組的整合式記憶體控制器單元514之外部記憶體(圖中未示出)。組的共用快取記憶體單元506可包括諸如第2階(L2)、第3階(L3)、第4階(L4)、或其他階的快取記憶體等的一或多個中階快取記憶體、最後一階快取記憶體(Last Level Cache;簡稱LLC)、及/或以上各項之組合。然在一實施例中,一環狀互連單元512將整合式圖形邏輯508、該組共用快取記憶體單元506、以及系統代理單元510/整合式記憶體控制器單元514互連,但是替代實施例可將任何數目的習知技術用來將這些
單元互連。一實施例中,於一或多個快取記憶體單元506與核心502A-N之間維持一致性。
在某些實施例中,該等核心502A-N中之一或多個核心能夠進行多緒執行。系統代理單元510包含用來協調及操作核心502A-N之那些組件。系統代理單元510可包含諸如一功率控制單元(Power Control Unit;簡稱PCU)及一顯示單元。該PCU可以是或包括用來管制核心502A-N及整合式圖形邏輯508的電源狀態所需之邏輯及組件。該顯示單元被用來驅動一或多個外部連接的顯示器。
核心502A-N在架構指令集方面可以是同質的或異質的;亦即,核心502A-N中之兩個或更多個核心能夠執行相同的指令集,而其他核心只能夠執行該指令集的一子集、或一不同的指令集。
第6-9圖是一些例示電腦架構之方塊圖。膝上型電腦、桌上型電腦、手持個人電腦(PC)、個人數位助理、工程工作站、伺服器、網路裝置、網路集線器、交換器、嵌入式處理器、數位信號處理器(DSP)、圖形裝置、視訊遊戲裝置、機上盒、微控制器、細胞式電話、可攜式媒體播放器、手持裝置、及各種其他電子裝置的技術中習知之其他系統設計及組態也是適用的。一般而言,能夠包含本發明述及的處理器及/或其他執行邏輯之極多種的系統或電子裝置也是普遍適用的。
現在請參閱第6圖,圖中示出根據本發明的一實施例的一系統600之一方塊圖。系統600可包含被耦合到一控制中心620之一或多個處理器610、615。在一實施例中,控制中心620包括一圖形及記憶體控制器(Graphics and Memory Controller Hub;簡稱GMCH)690及一輸入/輸出控制器(Input/Output Hub;簡稱IOH)650(該等兩個控制中心可在各別的晶片上);該GMCH 690包括被耦合到記憶體640及一共處理器645之記憶體及圖形控制器;IOH 650將一些輸入/輸出(Input/Output;簡稱I/O)裝置660耦合到GMCH 690。在替代實施例中,一或兩個記憶體及圖形控制器被整合在該處理器內(如本發明所述),記憶體640及共處理器645被直接耦合到處理器610,且控制中心620及IOH 650是在一單晶片中。
第6圖中以折線表示額外的處理器615之可供選擇採用的本質。每一處理器610、615可包含一或多個本發明述及的處理核心,且可以是處理器500的某一版本。
記憶體640可以是諸如動態隨機存取記憶體(Dynamic Random Access Memory;簡稱DRAM)、相變化記憶體(Phase Change Memory;簡稱PCM)、或以上兩者的組合。對於至少一實施例而言,控制中心620經由諸如一前端匯流排(Front Side Bus;簡稱FSB)等的一多點傳輸匯流排、諸如快速路徑互連(QuickPath Interconnect;簡稱QPI)等的點對點介面、或類似的連接695而與處理器610、615通訊。
在一實施例中,共處理器645是諸如高執行率MIC處理器、網路或通訊處理器、壓縮引擎、圖形處理器、通用圖形處理單元(GPGPU)、或嵌入式處理器等的一特殊用途處理器。在一實施例中,控制中心620可包括一整合式圖形加速器。
實體資源610、615在其中包括架構、微架構、熱特性、及功率消耗特性等的優點衡量項目上可能有各種差異。
在一實施例中,處理器610執行用來控制一般類型的處理操作之指令。共處理器指令可被嵌入該等指令內。處理器610將這些共處理器指令視為應被附屬的共處理器645執行的類型之指令。因此,處理器910經由一共處理器匯流排或其他互連而將這些共處理器指令(或代表共處理器指令之控制信號)發出到共處理器645。一或多個共處理器645接受且執行該等被接收之共處理器指令。
現在請參閱第7圖,圖中示出根據本發明的一實施例的一第一更特定之例示系統700之一方塊圖。如第7圖所示,多處理器系統700是一點對點互連系統,且包含經由一點對點互連750而被耦合之一第一處理器770及一第二處理器780。處理器770及780中之每一處理器可以是處理器500的某一版本。在本發明的一實施例中,處理器770及780分別是處理器610及615,而共處理器738是共處理器645。在另一實施例中,處理器770及780分別是處理器610及共處理器645。
處理器770及780被示出分別包含整合式記憶體控制器(Integrated Memory Controller;簡稱IMC)單元772及782。處理器770也包含點對點(Point-to-Point;簡稱P-P)介面776及778作為其匯流排控制器單元的一部分;同樣地,第二處理器780包含P-P介面786及788。處理器770、780可使用P-P介面電路778、788而經由點對點介面750交換資訊。如第7圖所示,IMC 772及782將該等處理器耦合到各別的記憶體,亦即,耦合到可以是在本地被連接到該等各別的處理器的主記憶體的一部分之一記憶體732及一記憶體734。
處理器770、780可分別使用點對點介面電路776、794、786、798而經由個別的P-P介面752、754與一晶片組790交換資訊。晶片組790在可供選擇採用之情形下可經由一高效能介面739而與共處理器738交換資訊。在一實施例中,共處理器738是諸如高執行率MIC處理器、網路或通訊處理器、壓縮引擎、圖形處理器、通用圖形處理單元(GPGPU)、或嵌入式處理器等的一特殊用途處理器。
一共用快取記憶體(圖中未示出)可被包含在任一處理器中,或是在兩個處理器之外,但是仍然經由一P-P互連而與該等處理器連接,因而處理器被置於一低功率模式時,可將任一或兩個處理器的本地快取記憶體資訊儲存在該共用快取記憶體。
晶片組790可經由一介面796而被耦合到一第一匯流
排716。在一實施例中,第一匯流排716可以是一周邊組件互連(Peripheral Component Interconnect;簡稱PCI)匯流排、或諸如一周邊組件高速互連(PCI Express)匯流排或另一第三代I/O互連匯流排等的一匯流排,但是本發明之範圍不限於此。
如第7圖所示,各種I/O裝置714以及一匯流排橋接器718可被耦合到第一匯流排716,該匯流排橋接器718將第一匯流排716耦合到一第二匯流排720。在一實施例中,諸如共處理器、高執行率MIC處理器、通用圖形處理單元(GPGPU)、加速器(例如,圖形加速器或數位信號處理(DSP)單元)、現場可程式閘陣列、或任何其他處理器等的一或多個額外的處理器715被耦合到第一匯流排716。在一實施例中,第二匯流排720可以是一低接腳數(Low Pin Count;簡稱LPC)匯流排。在一實施例中,其中包括一鍵盤及/或滑鼠722、一些通訊裝置727、諸如磁碟機或可包含指令/程式碼及資料730之其他大量儲存裝置等的儲存單元728之各種裝置可被耦合到第二匯流排720。此外,一音訊I/O 724可被耦合到第二匯流排720。請注意,其他的架構也是可能的。例如,可不實施第7圖所示之點對點架構,而替代地實施多點傳輸匯流排或其他的此類架構。
現在請參閱第8圖,圖中示出根據本發明的一實施例的一第二更特定之例示系統800之一方塊圖。第7及8圖中之類似元件具有類似的參考編號,且第8圖中已省略了
第7圖之某些觀點,以避免模糊了第8圖之其他觀點。
第8圖示出處理器770、780可分別包含整合式記憶體及I/O控制邏輯(Control Logic;簡稱CL)772及782。因此,CL 772、782包含整合式記憶體控制器單元及被包含的I/O控制邏輯。第8圖示出:不只是記憶體732、734被耦合到CL 772、782,而且一些I/O裝置814也被耦合到CL 772、782。傳統I/O裝置815被耦合到晶片組790。
現在請參閱第9圖,圖中示出根據本發明的一實施例的一SoC 900之一方塊圖。第5圖中之類似元件具有類似的參考號碼。此外,虛線框是更先進的SoC上的一些可供選擇採用的特徵。在第9圖中,一互連單元902被耦合到:一應用處理器910,該應用處理器包含一組的一或多個核心202A-N及一或多個共用快取記憶體單元506;一系統代理單元510;一匯流排控制器單元516;一整合式記憶體控制器單元514;一組或一或多個共處理器920,該等共處理器920可包括整合式圖形邏輯、一影像處理器、一音訊處理器、及一視訊處理器;一靜態機存取記憶體(Static Random Access Memory;簡稱SRAM)單元930;一直接記憶體存取(Direct Memory Access;簡稱DMA)單元932;以及用於耦合到一或多個外部顯示器之一顯示單元940。在一實施例中,該一或多個共處理器920包括諸如網路或通訊處理器、壓縮引擎、通用圖形處理單元(GPGPU)、高執行率MIC處理器、或嵌入式處
理器等的一特殊用途處理器。
可以硬體、軟體、韌體、或這些實施方式的一組合實施本發明揭示的該等機制之實施例。可將本發明之實施例實施為在包含至少一處理器、一儲存系統(包括揮發性及非揮發性記憶體及/或儲存元件)、至少一輸入裝置、及至少一輸出裝置的可程式系統上執行之電腦程式或程式碼。
可施加諸如第7圖所示之程式碼730等的程式碼而輸入用來執行本發明述及的功能且產生輸出資訊之指令。可以習知之方式將該輸出資訊施加到一或多個輸出裝置。為了便於說明本申請案,處理系統包括具有諸如一數位信號處理器(DSP)、一微控制器、一特定應用積體電路(Application Specific Integrated Circuit;簡稱ASIC)、或一微處理器等的一處理器之任何系統。
可以高階程序或物件導向程式語言實施該程式碼,以便與一處理系統通訊。如有需要,亦可以組合語言或機器語言實施該程式碼。事實上,本發明述及的該等機制在範圍上不限於任何特定程式語言。無論如何,該語言可以是一編譯式或直譯式語言。
可以機器可讀取的媒體中儲存之代表性指令實施至少一實施例之一或多個觀點,該等代表性指令代表處理器內之各種邏輯,且該等代表性指令被一機器讀取時,將使該機器製造用來執行本發明述及的該等技術之邏輯。被稱為"智慧財產權核心"("IP core")之此種表示法可被儲存在
一實體之機器可讀取的媒體,且被供應到各客戶或製造設施,以便載入可實際製造出該邏輯或處理器之製造機器。
此種機器可讀取的媒體可包括(但不限於)由機器或裝置製造或形成的非短暫性實體物品配置,其中包括諸如硬碟等的儲存媒體、包括軟碟、光碟、唯讀光碟(Compact Disk Read Only Memory;簡稱CD-ROM)、可複寫式光碟(Compact Disk Rewritable;簡稱CD-RW)、及磁光碟之任何其他類型的磁碟或光碟、諸如唯讀記憶體(Read Only Memory;簡稱ROM)、動態隨機存取記憶體(Dynamic Random Access Memory;簡稱DRAM)、靜態機存取記憶體(SRAM)等的隨機存取記憶體(Random Access Memory;簡稱RAM)、可抹除可程式唯讀記憶體(Erasable Programmable Read-Only Memory;簡稱EPROM)、快閃記憶體、電氣可抹除可程式唯讀記憶體(Electrically Erasable Programmable ROM;簡稱EEPROM)、相變化記憶體(PCM)等的半導體裝置、磁卡或光學卡、或適於儲存電子指令之任何其他類型的媒體。
因此,本發明之實施例也包括含有指令或含有諸如硬體描述語言(Hardware Description Language;簡稱HDL)等的設計資料之非短暫性實體機器可讀取的媒體,其中該HDL界定了本發明述及的結構、電路、設備、處理器、及/或系統特徵。此類實施例亦可被稱為程式產品。
在某些例子中,一指令轉換器可被用來將指令自一來源指令集轉換為一目標指令集。例如,該指令轉換器可(諸如使用靜態二進制轉譯、其中包括動態編譯之動態二進制轉譯、轉譯(morph)、仿真(emulate)、或其他方式)將一指令轉換為將要被該核心處理的一或多個其他指令。可以軟體、硬體、韌體、或以上各項之一組合實施該指令轉換器。該指令轉換器可設於處理器中,可設於處理器之外,或可部分地設於處理器中且部分地設於處理器之外。
第10圖是根據本發明的實施例而使用一軟體指令轉換器將一來源指令集中之二進制指令轉換為一目標指令集中之二進制指令的一對照方塊圖。在該所示之實施例中,該指令轉換器是一軟體指令轉換器,但是可替代地以軟體、韌體、硬體、或以上各項的各種組合實施該指令轉換器。第10圖示出:可使用一x86編譯器1004編譯以一高階語言1002撰寫的一程式,而產生可由具有至少一x86指令集核心之處理器1016以原生方式執行之x86二進制碼1006。具有至少一x86指令集核心之處理器1016代表可以相容之方式執行或以其他方式處理下列項目以便得到與具有至少一x86指令集核心之Intel處理器實質上相同的結果因而實質上執行與具有至少一x86指令集核心之
Intel處理器相同的功能之任何處理器:(1)Intel x86指令集核心的指令集之很大一部分;或(2)目標在具有至少一x86指令集核心之Intel處理器上運行的應用程式或其他軟體之目的碼(object code)版本。該x86編譯器1004代表可操作而產生可以在具有或不具有額外鏈接處理之情形下在具有至少一x86指令集核心之處理器1016上執行的x86二進制碼1006(例如,目的碼)之編譯器。同樣地,第10圖示出:可使用一替代指令集編譯器1008編譯以該高階語言1002撰寫的程式,而產生可由不具有x86指令集核心之處理器1014(例如,具有用來執行MIPS Technologies(位於Sunnyvale,CA)的MIPS指令集及/或用來執行ARM Holdings(位於Sunnyvale,CA)的ARM指令集的核心之處理器)以原生方式執行之替代指令集二進制碼1010。指令轉換器1012被用來將x86二進制碼1006轉換為可由不具有x86指令集核心之處理器1014的處理器以原生方式執行之碼。該被轉換的碼不可能相同於替代指令集二進制碼1010,這是因為能夠執行指令轉換的指令轉換器難以轉換出相同的二進制碼;然而,該被轉換的碼將完成一般的操作,且將構成來自該替代指令集之指令。因此,指令轉換器1012代表利用仿真、模擬、或任何其他程序而可讓不具有x86指令集處理器或核心之處理器或其他電子裝置可執行x86二進制碼1006的軟體、韌體、硬體、或以上各項的組合。
雖然該等圖式中之流程圖示出由本發明的某些實施例
執行的操作之一特定順序,但是我們應可了解:該順序是例示的(例如,替代實施例可按照不同的順序執行該等操作,可合併某些操作,或可重疊合併某些操作等的替代執行方式)。
在前文的說明中,為了便於解說,述及了許多特定細節,以便提供對本發明的實施例之徹底了解。然而,熟悉此項技術者當可了解:可在沒有這些特定細節之情形下實施一或多個其他實施例。不是為了限制本發明,而是為了例示本發明之實施例,而提供所述之該等特定實施例。並不由前文提供的該等特定例子決定本發明之範圍,而是只由最後的申請專利範圍決定本發明之範圍。
100,600,700,800‧‧‧系統
110‧‧‧維持電源
102‧‧‧功率控制單元
130‧‧‧裝置
140‧‧‧裝置驅動單元
104‧‧‧深度省電邏輯
132,134‧‧‧暫存器
112‧‧‧靜態機存取記憶體
300‧‧‧處理器管線
302‧‧‧提取階段
304‧‧‧長度解碼階段
306‧‧‧解碼階段
308‧‧‧分配階段
310‧‧‧重命名階段
312‧‧‧排程階段
314‧‧‧暫存器讀取/記憶體讀取階段
316‧‧‧執行階段
318‧‧‧寫回/記憶體寫入階段
322‧‧‧異常處置階段
324‧‧‧提交階段
330‧‧‧前端單元
350‧‧‧執行引擎單元
370‧‧‧記憶體單元
390‧‧‧處理器核心
332‧‧‧分支預測單元
334‧‧‧指令快取記憶體單元
336‧‧‧指令轉譯後備緩衝區
338‧‧‧指令提取單元
340‧‧‧解碼單元
352‧‧‧重命名/分配器單元
354‧‧‧指令引退單元
356‧‧‧排程器單元
358‧‧‧實體暫存器檔案單元
360‧‧‧執行叢集
362‧‧‧執行單元
364‧‧‧記憶體存取單元
372‧‧‧資料轉譯後備緩衝區單元
374‧‧‧資料快取記憶體單元
376‧‧‧第2階快取記憶體單元
402‧‧‧互連網路
404‧‧‧第2階快取記憶體之本地子集
406‧‧‧第1階快取記憶體
408‧‧‧純量單元
410‧‧‧向量單元
412‧‧‧純量暫存器
414‧‧‧向量暫存器
406A‧‧‧第1階資料快取記憶體
428‧‧‧16倍寬算術邏輯單元
420‧‧‧拌和單元
422A-B‧‧‧數值轉換單元
424‧‧‧複製單元
426‧‧‧寫入遮罩暫存器
500,610,615,715,770,780‧‧‧處理器
502A-N‧‧‧核心
510‧‧‧系統代理單元
516‧‧‧匯流排控制器單元
514,772,782‧‧‧整合式記憶體控制器單元
508‧‧‧特殊用途邏輯
506‧‧‧共用快取記憶體單元
620‧‧‧控制中心
690‧‧‧圖形及記憶體控制中心
650‧‧‧輸入/輸出控制中心
640,732,734‧‧‧記憶體
645,738,920‧‧‧共處理器
660‧‧‧輸入/輸出裝置
695‧‧‧連接
750‧‧‧點對點互連
776,778,786,788,794,798‧‧‧點對點介面電路
752,754‧‧‧點對點介面
790‧‧‧晶片組
739‧‧‧高效能介面
796‧‧‧介面
716‧‧‧第一匯流排
714,814‧‧‧輸入/輸出裝置
718‧‧‧匯流排橋接器
720‧‧‧第二匯流排
722‧‧‧鍵盤及/或滑鼠
727‧‧‧通訊裝置
730‧‧‧程式碼及資料
728‧‧‧資料儲存裝置
724‧‧‧音訊輸入/輸出
772,782‧‧‧控制邏輯
815‧‧‧傳統I/O裝置
900‧‧‧系統單晶片
902‧‧‧互連單元
910‧‧‧應用處理器
930‧‧‧靜態機存取記憶體單元
932‧‧‧直接記憶體存取單元
940‧‧‧顯示單元
1002‧‧‧高階語言
1004‧‧‧x86編譯器
1014‧‧‧不具有x86指令集核心之處理器
1016‧‧‧具有至少一x86指令集核心之處理器
1006‧‧‧x86二進制碼
1008‧‧‧替代指令集編譯器
1010‧‧‧替代指令集二進制碼
1012‧‧‧指令轉換器
已參照各附圖而以舉例且非限制之方式說明了本發明,在該等附圖中,相像的代號指示類似的元件,其中:第1圖示出具有用於裝置的深度省電的一系統之一方塊圖。
第2A圖示出執行一處理系統的一裝置中之深度省電的一方法之一實施例。
第2B圖示出將一裝置自一處理系統的一深度省電狀態喚醒的一方法之一實施例。
第3A圖是根據本發明的一實施例的一例示循序管線及一例示暫存器重命名亂序發出/執行管線之一方塊圖。
第3B圖是將被包含在根據本發明的實施例的一處理
器之一循序架構核心實施例及一例示暫存器重命名亂序發出/執行架構核心之一方塊圖。
第4A-B圖示出一更特定的例示循序執行核心架構之一方塊圖。
第5圖是一處理器之一方塊圖。
第6-9圖是一些例示電腦架構之方塊圖。
第10圖是根據本發明的實施例而使用一軟體指令轉換器將一來源指令集中之二進制指令轉換為一目標指令集中之二進制指令的一對照方塊圖。
100‧‧‧系統
110‧‧‧維持電源
102‧‧‧功率控制單元
130‧‧‧裝置
140‧‧‧裝置驅動單元
104‧‧‧深度省電邏輯
132,134‧‧‧暫存器
112‧‧‧靜態機存取記憶體
Claims (17)
- 一種高效率能源消耗之系統,包含:一裝置,在一中央處理單元(CPU)外部;一靜態記憶體;以及被耦合到該裝置及該靜態記憶體之一功率控制單元,該功率控制單元包含一深度省電邏輯,用以監視該裝置之狀態,且在該裝置閒置時將該裝置轉移到一深度省電狀態並且當該裝置被轉移到該深度省電狀態時,將自該裝置取得的背景資料儲存在該靜態記憶體,其中該裝置在該深度省電狀態時消耗比在閒置狀態時少的功率並且該靜態記憶體為專用於該深度省電狀態背景儲存的SRAM。
- 如申請專利範圍第1項之系統,進一步包含:回應該深度省電邏輯監視到一事件,該深度省電邏輯喚醒該裝置,其中該深度省電邏輯將該裝置轉移到一現用狀態,且將該背景資料自該靜態記憶體載入該裝置。
- 如申請專利範圍第2項之系統,其中該事件是自一閒置狀態喚醒該系統的一處理器。
- 如申請專利範圍第2項之系統,其中該事件是將要被該裝置處理的一事件,且其中該系統的一處理器保持在一閒置狀態。
- 如申請專利範圍第1項之系統,其中該深度省電邏輯決定該裝置是閒置的,且在該系統的一處理器進入一閒置狀態時開始該轉移。
- 如申請專利範圍第1項之系統,其中當該系統的一 處理器處於一現用狀態時,該深度省電邏輯開始將該裝置轉移到該深度省電狀態。
- 如申請專利範圍第1項之系統,其中該靜態記憶體被耦合到一維持電源,以便供電給該靜態記憶體。
- 如申請專利範圍第1項之系統,其中該裝置是一圖形處理單元。
- 如申請專利範圍第1項之系統,其中該深度省電狀態是一C6狀態。
- 一種高效率能源消耗之方法,包含下列步驟:監視一裝置之狀態,該裝置於一中央處理單元核心外部;決定對應於該裝置之一閒置狀態;從至少二個試探法中決定遵循哪一個以用於被應用到該裝置的省電,其中一第一試探法跟隨該中央處理單元核心的深度省電狀態,並且一第二試探法無關於該中央處理單元核心而轉變到深度省電狀態;以及當決定該裝置是閒置時,以一硬體式深度省電邏輯將該裝置轉移到一深度省電狀態,其中當選擇該第二試探法時,該裝置在該深度省電狀態時消耗比在閒置狀態時少的功率;當選擇該第一試探法時當該中央處理器單元核心在一深度省電狀態中時,以硬體式深度省電邏輯將該裝置轉移到深度省電狀態;以及當該裝置被轉移到該深度省電狀態時,將自該裝置取 得的背景資料儲存在靜態隨機存取記憶體。
- 如申請專利範圍第10項之方法,進一步包含下列步驟:回應監視到一事件而喚醒該裝置;將該裝置轉移到一現用狀態;以及將該背景資料自該靜態記憶體載入該裝置。
- 如申請專利範圍第11項之方法,其中該事件是自一閒置狀態喚醒系統的一處理器。
- 如申請專利範圍第11項之方法,其中該事件是將要被該裝置處理的一事件,且其中該系統的一處理器保持在一閒置狀態。
- 如申請專利範圍第10項之方法,其中當該系統的一處理器進入一閒置狀態時,開始將該裝置轉移到該深度省電狀態。
- 如申請專利範圍第10項之方法,其中當該系統的一處理器處於一現用狀態時,開始將該裝置轉移到該深度省電狀態。
- 如申請專利範圍第10項之方法,其中該裝置是一圖形處理單元。
- 一種高效率能源消耗之設備,包含:一靜態SRAM記憶體;以及被耦合到一裝置及該靜態記憶體之一功率控制單元,該功率控制單元包含一深度省電邏輯,用以監視該裝置之狀態,且在該裝置閒置時將該裝置轉移到一深度省電狀 態,其中該裝置在該深度省電狀態時消耗比在閒置狀態時少的功率,其中當該裝置被轉移到該深度省電狀態時,該功率控制單元將自該裝置取得的背景資料儲存在該靜態記憶體。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/335,738 US9400545B2 (en) | 2011-12-22 | 2011-12-22 | Method, apparatus, and system for energy efficiency and energy conservation including autonomous hardware-based deep power down in devices |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201346519A TW201346519A (zh) | 2013-11-16 |
TWI516909B true TWI516909B (zh) | 2016-01-11 |
Family
ID=46456153
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW101145429A TWI516909B (zh) | 2011-12-22 | 2012-12-04 | 包括在裝置中自主的硬體式深度省電之能源效率及能源節約的方法、設備及系統 |
Country Status (4)
Country | Link |
---|---|
US (4) | US9400545B2 (zh) |
CN (1) | CN104011624B (zh) |
TW (1) | TWI516909B (zh) |
WO (1) | WO2013095869A1 (zh) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9400545B2 (en) * | 2011-12-22 | 2016-07-26 | Intel Corporation | Method, apparatus, and system for energy efficiency and energy conservation including autonomous hardware-based deep power down in devices |
US9383812B2 (en) | 2012-09-28 | 2016-07-05 | Intel Corporation | Method and apparatus for efficient store/restore of state information during a power state |
US9563256B2 (en) * | 2013-01-04 | 2017-02-07 | Intel Corporation | Processor hiding its power-up latency with activation of a root port and quickly sending a downstream cycle |
US9395805B2 (en) * | 2013-03-15 | 2016-07-19 | Seagate Technology Llc | Device sleep partitioning and keys |
US9312005B2 (en) | 2013-09-10 | 2016-04-12 | Micron Technology, Inc. | Accessing memory cells in parallel in a cross-point array |
US10025367B2 (en) | 2014-08-19 | 2018-07-17 | Intel Corporation | Dynamic scaling of graphics processor execution resources |
CN105183506A (zh) * | 2015-08-17 | 2015-12-23 | 山东超越数控电子有限公司 | 一种解决s3唤醒时pci设备寄存器掉电重置的方法 |
US10078356B2 (en) * | 2015-08-20 | 2018-09-18 | Intel Corporation | Apparatus and method for saving and restoring data for power saving in a processor |
WO2017049592A1 (en) | 2015-09-25 | 2017-03-30 | Intel Corporation | Method and apparatus to improve shared memory efficiency |
US20170177068A1 (en) * | 2015-12-17 | 2017-06-22 | Intel Corporation | Systems, methods and devices for standby power savings |
US9978343B2 (en) * | 2016-06-10 | 2018-05-22 | Apple Inc. | Performance-based graphics processing unit power management |
US10424107B2 (en) | 2017-04-01 | 2019-09-24 | Intel Corporation | Hierarchical depth buffer back annotaton |
US11010953B2 (en) | 2017-04-21 | 2021-05-18 | Intel Corporation | Dedicated fixed point blending for energy efficiency |
KR102480017B1 (ko) * | 2017-08-11 | 2022-12-21 | 삼성전자 주식회사 | 입출력 장치의 성능 및 전력소모를 조절하는 메모리 컨트롤러, 어플리케이션 프로세서 및 메모리 컨트롤러의 동작방법 |
US10178619B1 (en) | 2017-09-29 | 2019-01-08 | Intel Corporation | Advanced graphics power state management |
WO2019203782A1 (en) * | 2018-04-16 | 2019-10-24 | Hewlett-Packard Development Company, L.P. | Data storage device power provisions |
US11114057B2 (en) * | 2018-08-28 | 2021-09-07 | Samsung Display Co., Ltd. | Smart gate display logic |
US10923082B2 (en) * | 2018-10-31 | 2021-02-16 | Ati Technologies Ulc | Maintaining visibility of virtual function in bus-alive, core-off state of graphics processing unit |
TWI713039B (zh) * | 2020-05-05 | 2020-12-11 | 華邦電子股份有限公司 | 半導體存儲裝置及快閃記憶體運行方法 |
US11307636B2 (en) | 2020-05-26 | 2022-04-19 | Winbond Electronics Corp. | Semiconductor storing apparatus and flash memory operation method |
US11907043B2 (en) | 2022-05-25 | 2024-02-20 | Apple Inc. | Adaptive wake-up for power conservation in a processor |
Family Cites Families (71)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5586332A (en) * | 1993-03-24 | 1996-12-17 | Intel Corporation | Power management for low power processors through the use of auto clock-throttling |
US5493684A (en) * | 1994-04-06 | 1996-02-20 | Advanced Micro Devices | Power management architecture including a power management messaging bus for conveying an encoded activity signal for optimal flexibility |
US5546590A (en) * | 1994-09-19 | 1996-08-13 | Intel Corporation | Power down state machine for PCMCIA PC card applications |
JP3763903B2 (ja) * | 1996-10-29 | 2006-04-05 | 株式会社日立製作所 | 情報処理装置 |
US5954820A (en) * | 1997-09-26 | 1999-09-21 | International Business Machines Corporation | Portable computer with adaptive demand-driven power management |
US6799242B1 (en) * | 1999-03-05 | 2004-09-28 | Sanyo Electric Co., Ltd. | Optical disc player with sleep mode |
US7058834B2 (en) * | 2001-04-26 | 2006-06-06 | Paul Richard Woods | Scan-based state save and restore method and system for inactive state power reduction |
US7149909B2 (en) | 2002-05-09 | 2006-12-12 | Intel Corporation | Power management for an integrated graphics device |
GB2395302B (en) * | 2002-11-13 | 2005-12-28 | Advanced Risc Mach Ltd | Hardware driven state save/restore in a data processing system |
US7191349B2 (en) | 2002-12-26 | 2007-03-13 | Intel Corporation | Mechanism for processor power state aware distribution of lowest priority interrupt |
US7137018B2 (en) | 2002-12-31 | 2006-11-14 | Intel Corporation | Active state link power management |
US6971034B2 (en) | 2003-01-09 | 2005-11-29 | Intel Corporation | Power/performance optimized memory controller considering processor power states |
US6885974B2 (en) * | 2003-01-31 | 2005-04-26 | Microsoft Corporation | Dynamic power control apparatus, systems and methods |
EP3321769A1 (en) * | 2003-05-07 | 2018-05-16 | Conversant Intellectual Property Management Inc. | Managing power on integrated circuits using power islands |
US7299370B2 (en) | 2003-06-10 | 2007-11-20 | Intel Corporation | Method and apparatus for improved reliability and reduced power in a processor by automatic voltage control during processor idle states |
US7369815B2 (en) * | 2003-09-19 | 2008-05-06 | Qualcomm Incorporated | Power collapse for a wireless terminal |
US7197651B2 (en) | 2003-10-30 | 2007-03-27 | Intel Corporation | Power mode calibration for add-on cards on mobile platforms |
US7698575B2 (en) | 2004-03-30 | 2010-04-13 | Intel Corporation | Managing power consumption by requesting an adjustment to an operating point of a processor |
US7401241B2 (en) | 2004-06-22 | 2008-07-15 | Intel Corporation | Controlling standby power of low power devices |
US7343502B2 (en) | 2004-07-26 | 2008-03-11 | Intel Corporation | Method and apparatus for dynamic DLL powerdown and memory self-refresh |
US7664970B2 (en) | 2005-12-30 | 2010-02-16 | Intel Corporation | Method and apparatus for a zero voltage processor sleep state |
US7363523B2 (en) | 2004-08-31 | 2008-04-22 | Intel Corporation | Method and apparatus for controlling power management state transitions |
US7451333B2 (en) | 2004-09-03 | 2008-11-11 | Intel Corporation | Coordinating idle state transitions in multi-core processors |
US7222253B2 (en) | 2004-12-28 | 2007-05-22 | Intel Corporation | Dynamic power control for reducing voltage level of graphics controller component of memory controller based on its degree of idleness |
US20060137377A1 (en) | 2004-12-29 | 2006-06-29 | Samson Eric C | Method and apparatus for external processor thermal control |
KR100736748B1 (ko) * | 2005-09-14 | 2007-07-09 | 삼성전자주식회사 | 컴퓨터 및 그 제어방법 |
US7380147B1 (en) * | 2005-10-24 | 2008-05-27 | Western Digital Technologies, Inc. | Computer device employing a sliding window to set an idle mode timeout interval |
US7925899B2 (en) | 2005-12-29 | 2011-04-12 | Intel Corporation | Method, system, and apparatus for runtime power estimation |
US7516342B2 (en) * | 2005-12-30 | 2009-04-07 | Intel Corporation | Method, apparatus and system to dynamically choose an optimum power state |
US8314806B2 (en) | 2006-04-13 | 2012-11-20 | Intel Corporation | Low power display mode |
US7802116B2 (en) * | 2006-09-27 | 2010-09-21 | Intel Corporation | Subsystem power management |
US7849334B2 (en) | 2006-09-29 | 2010-12-07 | Intel Coporation | Transitioning a computing platform to a low power system state |
US7917784B2 (en) * | 2007-01-07 | 2011-03-29 | Apple Inc. | Methods and systems for power management in a data processing system |
KR101429674B1 (ko) * | 2007-09-11 | 2014-08-13 | 삼성전자주식회사 | 시스템 온 칩에서 전력 소모를 감소시키기 위한 장치 및방법 |
US20090204837A1 (en) * | 2008-02-11 | 2009-08-13 | Udaykumar Raval | Power control system and method |
US8156362B2 (en) * | 2008-03-11 | 2012-04-10 | Globalfoundries Inc. | Hardware monitoring and decision making for transitioning in and out of low-power state |
US8762759B2 (en) * | 2008-04-10 | 2014-06-24 | Nvidia Corporation | Responding to interrupts while in a reduced power state |
JPWO2009150815A1 (ja) * | 2008-06-11 | 2011-11-10 | パナソニック株式会社 | マルチプロセッサシステム |
US8078891B2 (en) * | 2008-06-30 | 2011-12-13 | Intel Corporation | Method, device, and system for guaranteed minimum processor power state dwell time |
US8719610B2 (en) * | 2008-09-23 | 2014-05-06 | Qualcomm Incorporated | Low power electronic system architecture using non-volatile magnetic memory |
US8112651B2 (en) * | 2008-09-25 | 2012-02-07 | Intel Corporation | Conserving power in a computer system |
US8181046B2 (en) * | 2008-10-29 | 2012-05-15 | Sandisk Il Ltd. | Transparent self-hibernation of non-volatile memory system |
US8402290B2 (en) | 2008-10-31 | 2013-03-19 | Intel Corporation | Power management for multiple processor cores |
US8386808B2 (en) | 2008-12-22 | 2013-02-26 | Intel Corporation | Adaptive power budget allocation between multiple components in a computing system |
US8171319B2 (en) * | 2009-04-16 | 2012-05-01 | International Business Machines Corporation | Managing processor power-performance states |
US8117428B2 (en) * | 2009-06-04 | 2012-02-14 | Texas Instruments Incorporated | Apparatus and method for automatically saving and restoring pad configuration registers implemented in a core power domain |
US8943347B2 (en) * | 2009-09-09 | 2015-01-27 | Advanced Micro Devices, Inc. | Controlling the power state of an idle processing device |
US8316255B2 (en) * | 2009-09-09 | 2012-11-20 | Ati Technologies Ulc | Method and apparatus for responding to signals from a disabling device while in a disabled state |
US8352770B2 (en) * | 2009-09-25 | 2013-01-08 | Intel Corporation | Method, system and apparatus for low-power storage of processor context information |
US8291249B2 (en) * | 2009-09-25 | 2012-10-16 | Advanced Micro Devices, Inc. | Method and apparatus for transitioning devices between power states based on activity request frequency |
US8645738B2 (en) * | 2009-10-27 | 2014-02-04 | Nokia Corporation | Nonvolatile device |
CN102109899B (zh) * | 2009-12-23 | 2015-06-24 | 联想(北京)有限公司 | 计算机、显示器、及计算机的显示方法 |
US9171165B2 (en) | 2009-12-23 | 2015-10-27 | Intel Corporation | Methods, systems, and apparatuses to facilitate configuration of a hardware device in a platform |
US8887171B2 (en) * | 2009-12-28 | 2014-11-11 | Intel Corporation | Mechanisms to avoid inefficient core hopping and provide hardware assisted low-power state selection |
US8839006B2 (en) * | 2010-05-28 | 2014-09-16 | Nvidia Corporation | Power consumption reduction systems and methods |
US8438416B2 (en) * | 2010-10-21 | 2013-05-07 | Advanced Micro Devices, Inc. | Function based dynamic power control |
US9063730B2 (en) * | 2010-12-20 | 2015-06-23 | Intel Corporation | Performing variation-aware profiling and dynamic core allocation for a many-core processor |
US8732496B2 (en) * | 2011-03-24 | 2014-05-20 | Nvidia Corporation | Method and apparatus to support a self-refreshing display device coupled to a graphics controller |
US8745366B2 (en) * | 2011-03-31 | 2014-06-03 | Nvidia Corporation | Method and apparatus to support a self-refreshing display device coupled to a graphics controller |
US10126803B1 (en) * | 2011-04-04 | 2018-11-13 | Google Llc | Conditional power management activities |
US20130007492A1 (en) * | 2011-06-30 | 2013-01-03 | Sokol Jr Joseph | Timer interrupt latency |
US10817043B2 (en) * | 2011-07-26 | 2020-10-27 | Nvidia Corporation | System and method for entering and exiting sleep mode in a graphics subsystem |
US20130031392A1 (en) * | 2011-07-29 | 2013-01-31 | Mclane William J | Usb device side wake-up for power conservation and management |
US8692833B2 (en) * | 2011-08-09 | 2014-04-08 | Apple Inc. | Low-power GPU states for reducing power consumption |
US8782454B2 (en) * | 2011-10-28 | 2014-07-15 | Apple Inc. | System and method for managing clock speed based on task urgency |
US9348656B2 (en) * | 2011-12-19 | 2016-05-24 | Advanced Micro Devices, Inc. | Apparatus and method for managing power among a plurality of processors sharing a thermal platform |
US9423847B2 (en) * | 2011-12-20 | 2016-08-23 | Advanced Micro Devices, Inc. | Method and apparatus for transitioning a system to an active disconnect state |
US8819461B2 (en) * | 2011-12-22 | 2014-08-26 | Intel Corporation | Method, apparatus, and system for energy efficiency and energy conservation including improved processor core deep power down exit latency by using register secondary uninterrupted power supply |
US9400545B2 (en) * | 2011-12-22 | 2016-07-26 | Intel Corporation | Method, apparatus, and system for energy efficiency and energy conservation including autonomous hardware-based deep power down in devices |
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 |
US8230247B2 (en) * | 2011-12-30 | 2012-07-24 | Intel Corporation | Transferring architectural functions of a processor to a platform control hub responsive to the processor entering a deep sleep state |
-
2011
- 2011-12-22 US US13/335,738 patent/US9400545B2/en not_active Expired - Fee Related
-
2012
- 2012-11-26 CN CN201280063695.7A patent/CN104011624B/zh active Active
- 2012-11-26 WO PCT/US2012/066557 patent/WO2013095869A1/en active Application Filing
- 2012-12-04 TW TW101145429A patent/TWI516909B/zh active
-
2016
- 2016-07-25 US US15/219,183 patent/US9792064B2/en active Active
-
2017
- 2017-10-17 US US15/786,424 patent/US10509576B2/en active Active
-
2019
- 2019-12-16 US US16/715,747 patent/US11467740B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US9400545B2 (en) | 2016-07-26 |
WO2013095869A1 (en) | 2013-06-27 |
US20180260153A1 (en) | 2018-09-13 |
US20160335020A1 (en) | 2016-11-17 |
CN104011624A (zh) | 2014-08-27 |
US20120179927A1 (en) | 2012-07-12 |
US20200319806A1 (en) | 2020-10-08 |
US10509576B2 (en) | 2019-12-17 |
CN104011624B (zh) | 2018-03-30 |
TW201346519A (zh) | 2013-11-16 |
US9792064B2 (en) | 2017-10-17 |
US11467740B2 (en) | 2022-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI516909B (zh) | 包括在裝置中自主的硬體式深度省電之能源效率及能源節約的方法、設備及系統 | |
CN105144082B (zh) | 基于平台热以及功率预算约束,对于给定工作负荷的最佳逻辑处理器计数和类型选择 | |
TWI537821B (zh) | 對每一核心提供電壓及頻率控制之技術 | |
US8819461B2 (en) | Method, apparatus, and system for energy efficiency and energy conservation including improved processor core deep power down exit latency by using register secondary uninterrupted power supply | |
TWI550518B (zh) | 用於包括執行緒合併之能源效率及能源節約的方法、裝置及系統 | |
US8954977B2 (en) | Software-based thread remapping for power savings | |
US9098274B2 (en) | Methods and apparatuses to improve turbo performance for events handling | |
CN112445310A (zh) | 主动di/dt电压下降抑制 | |
US8874949B2 (en) | Method, apparatus, and system for energy efficiency and energy conservation including enhanced temperature based voltage control | |
US8615647B2 (en) | Migrating execution of thread between cores of different instruction set architecture in multi-core processor and transitioning each core to respective on / off power state | |
US10156884B2 (en) | Local power gate (LPG) interfaces for power-aware operations | |
US9348594B2 (en) | Core switching acceleration in asymmetric multiprocessor system | |
US20090089562A1 (en) | Methods and apparatuses for reducing power consumption of processor switch operations | |
US20120159074A1 (en) | Method, apparatus, and system for energy efficiency and energy conservation including dynamic cache sizing and cache operating voltage management for optimal power performance | |
US8879346B2 (en) | Mechanisms for enabling power management of embedded dynamic random access memory on a semiconductor integrated circuit package | |
US8611170B2 (en) | Mechanisms for utilizing efficiency metrics to control embedded dynamic random access memory power states on a semiconductor integrated circuit package | |
TW202303389A (zh) | 用以提供執行緒排程提示給軟體處理的裝置、方法及系統 |