TWI483265B - 硬體動態快取電源管理 - Google Patents
硬體動態快取電源管理 Download PDFInfo
- Publication number
- TWI483265B TWI483265B TW100135686A TW100135686A TWI483265B TW I483265 B TWI483265 B TW I483265B TW 100135686 A TW100135686 A TW 100135686A TW 100135686 A TW100135686 A TW 100135686A TW I483265 B TWI483265 B TW I483265B
- Authority
- TW
- Taiwan
- Prior art keywords
- operations
- memory
- power
- circuit block
- circuit
- Prior art date
Links
- 230000015654 memory Effects 0.000 claims description 229
- 230000002093 peripheral effect Effects 0.000 claims description 75
- 230000004044 response Effects 0.000 claims description 27
- 230000001360 synchronised effect Effects 0.000 claims description 6
- 238000000034 method Methods 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 13
- 238000004891 communication Methods 0.000 description 9
- 238000012545 processing Methods 0.000 description 9
- 238000012546 transfer Methods 0.000 description 9
- 230000003068 static effect Effects 0.000 description 6
- 230000001427 coherent effect Effects 0.000 description 5
- 238000012790 confirmation Methods 0.000 description 5
- 230000009977 dual effect Effects 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 230000007704 transition Effects 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000002618 waking effect Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000001816 cooling Methods 0.000 description 1
- 239000013078 crystal Substances 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- 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
-
- 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
-
- 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/3275—Power saving in memory, e.g. RAM, cache
-
- 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
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4418—Suspend and resume; Hibernate and awake
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1028—Power efficiency
-
- 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
-
- 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
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Computer Security & Cryptography (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Power Sources (AREA)
Description
本發明係關於數位系統之領域,且更特定言之,係關於數位系統中之電源管理。
隨著包括於積體電路「晶片」上之電晶體的數目不斷增大,積體電路中之電源管理的重要性不斷增大。電源管理對於包括於諸如個人數位助理(PDA)、行動電話、智慧型電話、膝上型電腦、網上電腦(net top computer)等等之行動裝置中的積體電路可為關鍵的。此等行動裝置常常依賴於電池電源,且減少積體電路中之功率消耗可增大電池壽命。另外,減少功率消耗可減少藉由積體電路產生之熱,此情形可減少包括積體電路之裝置(不論其是否依賴於電池電源)中的冷卻要求。
時脈閘控常常用以減少積體電路中之動態功率消耗,從而停用對閒置電路之時脈且由此防止閒置電路中之切換。除了時脈閘控以外,一些積體電路亦已實施電源閘控。在電源閘控的情況下,閒置電路之電源至接地路徑被中斷,從而將漏電流減少至接近零。當電源經閘控至一區塊且稍後被恢復時,該區塊可需要重新初始化。該重新初始化係藉由執行於系統中之處理器上的軟體處置。
在一實施例中,一控制電路經組態以將操作傳輸至在被斷電之後被供電之一電路區塊,以重新初始化該電路區塊以供操作。該等操作可儲存於該控制電路所耦接至之一記憶體(例如,一組暫存器)中,且執行於包括該控制電路及該電路區塊之系統中的軟體可在該電路區塊之該斷電之前的一時間藉由該等操作來程式化該記憶體。在一實施例中,該控制電路亦可經組態以在該電路區塊被斷電之前將其他操作自該記憶體傳輸至該電路區塊。因此,該電路區塊可甚至在該系統中之處理器被斷電(且由此,軟體當時係不可執行的)的時間期間仍被供電或斷電,而不針對供電/斷電事件來喚醒該等處理器。
在一實施例中,該電路區塊可為耦接至該一或多個處理器之一快取記憶體,且該控制電路可為將一或多個周邊裝置及/或周邊介面控制器耦接至該快取記憶體之一橋接器之部分。若該等處理器被斷電且該等周邊裝置閒置(至少相對於存取記憶體)歷時一時段,則該快取記憶體可被斷電。該快取記憶體可經供電用於一周邊記憶體操作或以向該等處理器供電。在一實施例中,該快取控制電路可被斷電,但該快取記憶體可仍被供電以保持儲存於該快取記憶體中之快取區塊。
儘管本發明容易經受各種修改及替代形式,但本發明之特定實施例係藉由實例而在圖式中予以展示且將在本文中予以詳細地描述。然而,應理解,圖式及其詳細描述不意欲將本發明限於所揭示之特定形式,而相反地,本發明應涵蓋屬於如藉由附加申請專利範圍界定的本發明之精神及範疇的所有修改、等效物及替代例。本文所使用之標題僅係出於組織目的,且並不有意要用以限制該描述之範疇。如貫穿本申請案所使用,字詞「可」係在准許性意義(亦即,意謂具有可能性)而非強制性意義(亦即,意謂必須)上予以使用。類似地,字詞「包括」意謂包括但不限於。
各種單元、電路或其他組件可被描述為「經組態以」執行一或多個任務。在此等內容背景中,「經組態以」為通常意謂「具有在操作期間執行該或該等任務之電路」之結構的廣泛敍述。因而,該單元/電路/組件可經組態以甚至在該單元/電路/組件當前未接通時仍執行該任務。一般而言,形成對應於「經組態以」之結構的電路可包括硬體電路及/或儲存可執行以實施操作之程式指令的記憶體。該記憶體可包括揮發性記憶體(諸如,靜態或動態隨機存取記憶體),及/或非揮發性記憶體(諸如,光碟或磁碟儲存器、快閃記憶體、可程式化唯讀記憶體,等等)。類似地,為了描述之便利起見,各種單元/電路/組件可被描述為執行一或多個任務。此等描述應被解譯為包括短語「經組態以」。敍述經組態以執行一或多個任務之單元/電路/組件明確地不意欲援引針對彼單元/電路/組件的35 U.S.C. S 112之第六段解譯。
以下[實施方式]參考現被簡要地描述之隨附圖式。
下文描述例示性系統及積體電路,其中層級2(L2)快取記憶體可在處理器被斷電的同時被供電或斷電,且橋接器中之控制電路可經組態以執行操作以在供電時初始化快取記憶體及/或使快取記憶體準備好斷電。然而,其他實施例可實施類似機制以在系統中之處理器被斷電的時間期間向任何電路區塊供電/使任何電路區塊斷電。該等操作可為組態暫存器寫入操作(如下文針對L2快取記憶體所論述),或可為其他類型之操作,諸如,暫存器讀取操作或藉由電路區塊解譯以針對供電/斷電來改變電路區塊之狀態的命令。
通常,一電路區塊可包括實施一或多個可識別功能之一組相關電路。該等相關電路可被稱為邏輯電路,此係因為該等電路可對輸入實施邏輯操作以產生輸出。因為給定電路區塊中之電路係相關的,所以該等電路可作為一單元被供電或斷電。每一電路區塊通常可在積體電路之設計期間被處理為一單元(例如,作為一單元而實體地置放於積體電路內)。電路區塊可進一步包括為邏輯電路之部分的記憶體電路(例如,各種靜態隨機存取記憶體或SRAM)及其他儲存裝置。舉例而言,在實施晶載系統(SOC)之積體電路中,SOC之組件可各自為一分離電路區塊。
現轉至圖1,展示系統5之一實施例的方塊圖。在圖1之實施例中,系統5包括耦接至外部記憶體12A-12B之積體電路(IC)10。在所說明實施例中,積體電路10包括中央處理器單元(CPU)區塊14,CPU區塊14包括一或多個處理器16及一層級2(L2)快取記憶體18。其他實施例可能不包括L2快取記憶體18及/或可包括額外層級之快取記憶體。另外,預料包括兩個以上處理器16及包括僅一個處理器16之實施例。積體電路10進一步包括一組一或多個非即時(NRT)周邊裝置20及一組一或多個即時(RT)周邊裝置22。在所說明實施例中,CPU區塊14耦接至橋接器/直接記憶體存取(DMA)控制器30,橋接器/DMA控制器30可耦接至一或多個周邊裝置32A-32C及/或一或多個周邊介面控制器34。在各種實施例中,周邊裝置32及周邊介面控制器34之數目可自零至任何所要數目而變化。圖1所說明之系統5進一步包括圖形單元36,圖形單元36包含一或多個圖形控制器(諸如,G0 38A及G1 38B)。在其他實施例中,每圖形單元的圖形控制器之數目及圖形單元之數目可變化。如圖1所說明,系統5包括耦接至一或多個記憶體實體介面電路(PHY)42A-42B之記憶體控制器40。記憶體PHY 42A-42B經組態以在積體電路10之插腳上與記憶體12A-12B通信。記憶體控制器40亦包括一組埠44A-44E。埠44A-44B分別耦接至圖形控制器38A-38B。CPU區塊14耦接至埠44C。NRT周邊裝置20及RT周邊裝置22分別耦接至埠44D-44E。在其他實施例中,包括於記憶體控制器40中之埠的數目可變化,記憶體控制器之數目亦可變化。亦即,可存在多於或少於圖1所示之埠的埠。在其他實施例中,記憶體PHY 42A-42B及對應記憶體12A-12B之數目可為一個或兩個以上。
通常,埠可為記憶體控制器40上用以與一或多個來源通信之通信點。在一些狀況下,埠可專用於一來源(例如,埠44A-44B可分別專用於圖形控制器38A-38B)。在其他狀況下,埠可在多個來源當中被共用(例如,處理器16可共用CPU埠44C,NRT周邊裝置20可共用NRT埠44D,且RT周邊裝置22可共用RT埠44E)。每一埠44A-44E耦接至一介面以與其各別代理通信。該介面可為任何類型之通信媒體(例如,匯流排、點對點互連,等等)且可實施任何協定。記憶體控制器與來源之間的互連亦可包括任何其他所要互連,諸如,網格、晶片組構上之網路、共用匯流排、點對點互連,等等。
處理器16可實施任何指令集架構,且可經組態以執行在彼指令集架構中所定義之指令。處理器16可使用任何微架構,包括純量、超純量、管線式、超管線式、無次序、按次序、臆測性、非臆測性,等等,或其組合。處理器16可包括電路,且視情況可實施微編碼技術。處理器16可包括一或多個層級1快取記憶體,且由此,快取記憶體18為L2快取記憶體。其他實施例可在處理器16中包括多個層級之快取記憶體,且快取記憶體18可為在階層中向下之下一層級。快取記憶體18可使用任何大小及任何組態(組關聯性、直接映射式,等等)。
圖形控制器38A-38B可為任何圖形處理電路。通常,圖形控制器38A-38B可經組態以呈現待顯示至圖框緩衝器中之物件。圖形控制器38A-38B可包括圖形處理器,該等圖形處理器可執行圖形軟體以執行圖形操作之部分或全部及/或某些圖形操作之硬體加速。硬體加速及軟體實施之量可在不同實施例之間變化。
NRT周邊裝置20可包括出於效能及/或頻寬原因而被提供對記憶體12A-12B之獨立存取的任何非即時周邊裝置。亦即,藉由NRT周邊裝置20之存取係獨立於CPU區塊14,且可與CPU區塊記憶體操作並行地進行。諸如周邊裝置32A-32C及/或耦接至藉由周邊介面控制器34控制之周邊介面之周邊裝置的其他周邊裝置亦可為非即時周邊裝置,但可能不需要對記憶體之獨立存取。NRT周邊裝置20之各種實施例可包括視訊編碼器及解碼器、定標器電路,及影像壓縮及/或解壓縮電路,等等。
RT周邊裝置22可包括具有針對記憶體潛時之即時要求的任何周邊裝置。舉例而言,RT周邊裝置可包括一影像處理器及一或多個顯示管。顯示管可包括用以提取一或多個圖框且調合該等圖框以產生顯示影像之電路。顯示管可進一步包括一或多個視訊管線。顯示管之結果可為待顯示於顯示螢幕上之像素串流。像素值可傳輸至顯示控制器以供顯示於顯示螢幕上。影像處理器可接收相機資料且將該資料處理至待儲存於記憶體中之影像。
橋接器/DMA控制器30可包含用以將(多個)周邊裝置32及(多個)周邊介面控制器34橋接至記憶體空間之電路。在所說明實施例中,橋接器/DMA控制器30可將記憶體操作自周邊裝置/周邊介面控制器經由CPU區塊14而橋接至記憶體控制器40。CPU區塊14亦可維持經橋接之記憶體操作與來自處理器16/L2快取記憶體18之記憶體操作之間的連貫性。L2快取記憶體18亦可藉由待在CPU介面上傳輸至CPU埠44C的來自處理器16之記憶體操作仲裁經橋接之記憶體操作。橋接器/DMA控制器30亦可提供代表周邊裝置32及周邊介面控制器34之DMA操作,以將資料區塊傳送至記憶體及自記憶體傳送資料區塊。更特定言之,DMA控制器可經組態以執行代表周邊裝置32及周邊介面控制器34的經由記憶體控制器40而至及自記憶體12A-12B之傳送。DMA控制器可藉由處理器16程式化以執行DMA操作。舉例而言,DMA控制器可經由描述符而程式化。該等描述符可為描述DMA傳送(例如,來源及目的地位址、大小,等等)的儲存於記憶體12A-12B中之資料結構。或者,DMA控制器可經由DMA控制器中之暫存器而程式化(未圖示)。
周邊裝置32A-32C可包括積體電路10上所包括之任何所要輸入/輸出裝置或其他硬體裝置。舉例而言,周邊裝置32A-32C可包括諸如一或多個網路連接媒體存取控制器(MAC)(諸如,乙太網路MAC或無線保真度(WiFi)控制器)之網路連接周邊裝置。包括各種音訊處理裝置之音訊單元可包括於周邊裝置32A-32C中。一或多個數位信號處理器可包括於周邊裝置32A-32C中。周邊裝置32A-32C可包括任何其他所要功能,諸如,計時器、晶載秘密記憶體、加密引擎,等等,或其任何組合。
周邊介面控制器34可包括用於任何類型之周邊介面的任何控制器。舉例而言,周邊介面控制器可包括各種介面控制器,諸如,通用串列匯流排(USB)控制器、周邊組件互連快速(PCIe)控制器、快閃記憶體介面、一般用途輸入/輸出(I/O)插腳,等等。
記憶體12A-12B可為任何類型之記憶體,諸如,動態隨機存取記憶體(DRAM)、同步DRAM(SDRAM)、雙資料速率(DDR、DDR2、DDR3,等等)SDRAM(包括諸如mDDR3等等的SDRAM之行動版本,及/或諸如LPDDR2等等的SDRAM之低功率版本)、RAMBUS DRAM(RDRAM)、靜態RAM(SRAM),等等。一或多個記憶體裝置可耦接至電路板上以形成記憶體模組,諸如,單列直插式記憶體模組(SIMM)、雙列直插式記憶體模組(DIMM),等等。或者,該等裝置可經安裝有呈晶片疊置組態、封裝疊置組態或多晶片模組組態之積體電路10。
記憶體PHY 42A-42B可處置至記憶體12A-12B之低層級實體介面。舉例而言,記憶體PHY 42A-42B可負責信號之計時、對同步DRAM記憶體之適當時控,等等。在一實施例中,記憶體PHY 42A-42B可經組態以鎖定至在積體電路10內所供應之時脈,且可經組態以產生藉由記憶體12使用之時脈。
應注意,其他實施例可包括組件之其他組合,包括圖1所示之組件的子集或超集及/或其他組件。儘管圖1中可展示給定組件之一個例項,但其他實施例可包括給定組件之一或多個例項。類似地,在[實施方式]的整個敘述中,即使展示僅一個例項,亦可包括給定組件之一或多個例項,及/或即使展示多個例項,亦可使用包括僅一個例項之實施例。
現轉至圖2,更詳細地展示積體電路10之部分之一實施例的方塊圖。特定言之,CPU區塊14及橋接器/DMA控制器30連同電源管理器50一起被展示。CPU區塊14包括處理器16及L2快取記憶體18。在圖2之實施例中,L2快取記憶體18經說明為L2快取記憶體控制18A及L2快取記憶體18B。L2快取記憶體控制18A可包括快取控制電路52及連貫性控制電路54。快取控制電路52及連貫性控制電路54中每一者可包括組態暫存器,諸如,組態暫存器56A-56D。處理器16耦接至L2快取記憶體控制18A,且更特定言之,耦接至連貫性控制電路54。連貫性控制電路54可耦接至快取控制電路52。L2快取記憶體控制18A(且更特定言之,快取控制電路52)可耦接至L2快取記憶體18B。L2快取記憶體控制18A可進一步耦接至記憶體控制器40(例如,圖1中之CPU埠44C)。電源管理器50可耦接至L2快取記憶體控制18A(例如,圖2中之L2電源控制信號)及處理器16(例如,圖2中之處理器電源控制信號)。
橋接器/DMA控制器30可包括連貫I/O介面單元(CIF)58、供電/斷電記憶體60,及DMA控制器62。CIF 58耦接至供電/斷電記憶體60、耦接至DMA控制器62、耦接至L2快取記憶體控制18A(且更特定言之,耦接至連貫性控制電路54)、耦接至電源管理器50(例如,經由圖2中之I/O閒置信號、PwrUpReq信號及PwrUpAck信號),且耦接至周邊裝置32A-32C及/或周邊介面控制器34。DMA控制器62進一步耦接至周邊裝置32A-32C及周邊介面控制器34。在一實施例中,DMA控制器62及CIF 58可耦接至周邊裝置32A-32C及/或周邊介面控制器34之各別子集。該等子集可重疊(例如,一些周邊裝置/周邊介面控制器可經組態以既經由DMA又經由與CIF 58之直接通信而與記憶體通信)。其他周邊裝置/周邊介面控制器可僅經由DMA或僅經由直接傳輸至CIF 58之操作而與記憶體通信。
可藉由軟體來程式化組態暫存器56A-56D以控制快取控制電路52及連貫性控制電路54之操作的各種態樣。通常,電路區塊可實施組態暫存器以准許軟體在各種可程式化組態當中進行選擇。舉例而言,L2快取記憶體18之大小及組態可在某些預定義最大值內進行選擇。可組態快取記憶體之直寫/回寫操作。可經由組態暫存器56A-56D啟用及控制連貫性模式。在一些實施例中,僅快取控制電路52可包括快取記憶體組態暫存器56A-56D,或僅連貫性控制電路54可包括快取記憶體組態暫存器56A-56D。
若L2快取記憶體18被斷電,則儲存於組態暫存器56A-56D中至少一些中之組態資料會丟失。為了在L2快取記憶體18之斷電及後續供電之後恢復組態,可將組態資料儲存於供電/斷電記憶體60中。舉例而言,當軟體藉由亦待在供電時恢復之值來程式化組態暫存器56A-56D時,軟體亦可將該值寫入至供電/斷電記憶體60。類似地,可存在待在斷電之前執行的組態暫存器寫入或其他暫存器寫入。舉例而言,可藉由同步命令來寫入暫存器以在斷電之前使L2快取記憶體18同步(確保任何未處理記憶體操作或其他通信完成)。
CIF 58可經組態以在供電或斷電事件期間自供電/斷電記憶體60讀取操作。電源管理器50可經組態以向CIF 58用信號通知供電或斷電事件,且CIF 58可經組態以讀取記憶體60且將用於對應事件之操作傳輸至L2快取記憶體18。一旦操作完成,CIF 58隨即可經組態以將該完成傳達至電源管理器50。作為回應,電源管理器50可完成供電/斷電事件。
任何通信可實施於電源管理器50與CIF 58之間。在所說明實施例中,電源管理器50可使用PwrUpReq信號而用信號通知供電或斷電事件。更具體言之,電源管理器50可經組態以確證PwrUpReq信號以指示L2快取記憶體18被供電,且可經組態以撤銷確證PwrUpReq信號以指示L2快取記憶體18被斷電。回應於PwrUpReq信號之確證,CIF 58可經組態以讀取經指示為供電操作的在供電/斷電記憶體60中之任何操作,且可經組態以將該等操作傳達至L2快取記憶體18。CIF 58可經組態以判定操作完成(例如,接收對應於每一暫存器寫入操作之寫入完成),且CIF 58可經組態以確證PwrUpAck信號以認可供電事件。電源管理器50可經組態以回應於PwrUpAck信號之確證而重新啟用至L2快取記憶體18之通信。
使L2快取記憶體18斷電可包括至少使快取控制電路52斷電。在一些實施例中,亦可使連貫性控制電路54斷電。L2快取記憶體18B在一些實施例中可仍被通電,從而保持快取記憶體中之快取狀態(例如,來自記憶體之各種快取區塊、諸如標籤之快取區塊的狀態、有效性,及連貫性狀態,等等)。或者,作為使L2快取記憶體18斷電之部分,亦可使L2快取記憶體18B斷電。經斷電之任何電路/記憶體可回應於供電事件而再次被供電。
供電/斷電記憶體60可由任何半導體儲存器形成。舉例而言,可提供可藉由軟體讀取/寫入之多個暫存器。其他實施例可使用其他形式之儲存器(例如,諸如靜態隨機存取記憶體(RAM)之RAM)。
供電/斷電記憶體60通常可包括多個輸入項。圖2之記憶體60中說明兩個例示性輸入項。在所說明實施例中,供電/斷電記憶體60中之每一輸入項可包括一位址及資料對,其經說明為圖2之輸入項中的A欄位及資料欄位。位址可識別待寫入之組態暫存器,且資料可為待寫入至組態暫存器之值。位址可為相對的(例如,更具體言之,位址可為自對應於L2快取記憶體控制18A之基本位址的偏移,或連貫性控制電路54及/或快取控制電路52之基本位址)。或者,位址可為將藉由處理器16在寫入操作中傳輸至對應暫存器56A-56D之全位址。每一輸入項亦可包括一有效位元(V),該有效位元(V)指示該輸入項是否正儲存有效資訊。另外,在此實施例中,每一輸入項可包括一斷電(D)欄位,該斷電(D)欄位指示組態暫存器寫入係在斷電期間抑或在供電期間被執行。D欄位中之D位元可經設定以指示斷電暫存器寫入,且清除以指示供電暫存器寫入。其他實施例可使用不同記憶體以用於斷電及供電,或可以已知型式劃分記憶體,且D欄位可能不包括於每一輸入項中。
在一實施例中,可預期軟體在供電/斷電記憶體60之初始輸入項中寫入斷電位址/資料對,且在後續輸入項中寫入供電位址/資料對。在此實施例中,回應於斷電事件,CIF 58可讀取始於初始輸入項之操作,直至遇到D位元被清除之輸入項為止。CIF 58可保持對該輸入項之指標,且可回應於供電事件而自所指示輸入項開始讀取供電操作(此後,該指標可經重設以再次指向初始輸入項)。
儘管供電/斷電記憶體60可儲存組態暫存器寫入,但其他實施例可儲存待執行的任何類型之操作(例如,暫存器寫入、暫存器讀取、命令,等等)。因此,可支援用於向L2快取記憶體18供電及使L2快取記憶體18斷電之靈活機制。該機制可在處理器16被斷電的同時支援向L2快取記憶體18供電或使L2快取記憶體18斷電(而不喚醒處理器16)。另外,因為操作在記憶體60中係可程式化的,所以可改變待執行之操作且可改變操作之次序。因此,即使該機制自身以硬體而操作,亦可經由軟體改變而校正該機制(若錯誤地操作)。
快取控制電路52通常可經組態以管理對L2快取記憶體18B之存取。快取控制電路52可偵測針對快取記憶體存取之命中/遺漏、起始針對遺漏之快取記憶體填充、管理L2快取記憶體18中之替換策略,等等。連貫性控制電路54可針對處理器16之記憶體操作及針對來自CIF 58之記憶體操作(例如,來自DMA控制器62之DMA操作及/或直接自周邊裝置32A-32C及/或周邊介面控制器34所接收之其他記憶體操作)來控制CPU區塊14中之快取連貫性。連貫性控制54可維持處理器16中之快取記憶體的窺探標籤,且亦可經組態以出於快取連貫性目的而產生對快取控制電路52之快取記憶體存取以窺探L2快取記憶體18B。
電源管理器50可經組態以監控處理器16及L2快取記憶體18,以及積體電路10中之各種其他活動(圖2中未圖示)。電源管理器50可經由處理器電源控制信號而控制處理器16之電源狀態,包括向處理器16供電或使處理器16斷電。在各種實施例中,處理器16可獨立地或同步地被供電及斷電。
若L2快取記憶體18閒置,則電源管理器50可經組態以亦使L2快取記憶體18斷電。電源管理器50可以多種型式偵測L2快取記憶體18閒置。舉例而言,電源管理器50可意識到,處理器16被斷電,且由此,可能不會自處理器16預期記憶體操作。另外,電源管理器50可偵測橋接器/DMA控制器30閒置(至少相對於記憶體操作)。在所說明實施例中,CIF 58可產生I/O閒置信號。CIF 58可確證I/O閒置信號以指示不存在自周邊裝置32A-32C及/或周邊介面控制器34未決之記憶體操作,包括無來自DMA控制器62之記憶體操作。在一實施例中,CIF 58可偵測:在確證至電源管理器50之I/O閒置信號之前,不存在針對可程式化數目個連續時脈循環之記憶體操作。在一實施例中,若CIF 58已確證I/O閒置信號且隨後接收記憶體操作,則CIF 58可經組態以撤銷確證I/O閒置信號。然而,CIF 58可等待可傳輸記憶體操作的來自電源管理器50之指示。該指示可避免電源管理器50在記憶體操作之接收之前已開始斷電事件的競態條件,且由此可防止記憶體操作傳輸至L2快取記憶體18,在L2快取記憶體18處,作為斷電事件之部分,記憶體操作可丟失。在一實施例中,可藉由電源管理器50提供就緒信號(未圖示)以指示在I/O閒置信號之確證(及撤銷確證)之後L2快取記憶體18就緒以用於記憶體操作。
接下來轉至圖3至圖6,展示說明用於L2快取記憶體18之供電及斷電事件的電源管理器50及CIF 58之一實施例之操作的流程圖。儘管為了易於理解而以特定次序展示區塊,但可使用其他次序。可在電源管理器50及/或CIF 58中之組合邏輯電路中並行地執行區塊。區塊、區塊之組合及/或流程圖總體上可遍及多個時脈循環為管線式。電源管理器50及/或CIF 58可經組態以實施流程圖所說明之操作。更特定言之,電源管理器50及/或CIF 58可包括實施所說明之操作的硬體電路。
圖3為說明用於斷電事件的電源管理器50之一實施例之操作的流程圖。電源管理器50可判定:若處理器16被斷電(決策區塊70,「是」支路)且若CIF 58已用信號通知I/O閒置(決策區塊72,「是」支路),則將發生斷電事件。若發生斷電事件,則電源管理器50可撤銷確證至CIF 58之PwrUpReq信號(區塊74),從而起始斷電事件。電源管理器50可等待來自CIF 58之認可(決策區塊76),且回應於PwrUpAck之撤銷確證(決策區塊76,「是」支路),電源管理器50可使L2快取記憶體斷電(區塊78)。
圖4為說明用於斷電事件的CIF 58之一實施例之操作的流程圖。斷電事件之CIF 58處理可回應於來自電源管理器50之PwrUpReq信號之撤銷確證(決策區塊80,「是」支路)而開始。CIF 58可自供電/斷電記憶體60讀取初始輸入項(區塊82),且可判定該輸入項是否有效且是否針對斷電事件(V及D設定,決策區塊84)。若輸入項有效且針對斷電事件(決策區塊84,「是」支路),則CIF 58可將位址/資料對傳輸至L2控制18A以更新所識別之組態暫存器56A-56D(區塊86),且可讀取記憶體60中之下一輸入項(區塊82)。若輸入項不有效且不針對斷電事件(決策區塊84,「否」支路),則CIF 58可判定是否已自L2控制18A接收針對所有組態暫存器寫入之寫入回應(決策區塊88)。若已接收該等回應(決策區塊88,「是」支路),則可使L2控制18A準備好斷電,且CIF 58可撤銷確證PwrUpAck信號以認可斷電請求(區塊90)。
圖5為說明用於供電事件的電源管理器50之一實施例之操作的流程圖。電源管理器50可判定:若處理器16待供電或若在CIF 58中接收記憶體操作(引起I/O閒置撤銷確證),則將發生供電事件。電源管理器50可向L2快取記憶體控制供電(區塊100),且可等待電源穩定。電源管理器50可確證PwrUpReq信號(區塊102),且可等待PwrUpAck信號被確證(決策區塊104)以判定L2快取記憶體18被初始化且就緒以用於再次通信。
圖6為說明用於供電事件的CIF 58之一實施例之操作的流程圖。供電事件之CIF 58處理可回應於PwrUpReq信號之確證(決策區塊110,「是」支路)而開始。CIF 58可讀取供電/斷電記憶體60中之下一輸入項(區塊112)。若該輸入項有效且為供電操作(V設定且D清除,決策區塊114,「是」支路),則CIF 58可將組態暫存器寫入傳輸至L2快取記憶體控制18A(區塊116)且可讀取記憶體60中之下一輸入項(區塊112)。若該輸入項不有效或為斷電操作(決策區塊114,「否」支路),則CIF 58可判定是否已接收針對暫存器寫入之回應(決策區塊118)。若已接收針對暫存器寫入之回應(決策區塊118,「是」支路),則CIF 58可確證PwrUpAck信號(區塊120)。
在一些實施例中,電源管理器50可判定L2快取記憶體18將在供電事件之處理期間斷電,或可判定L2快取記憶體18將在斷電事件之處理期間供電。在一些實施中,電源管理器50可經組態以准許進行中之轉變在起始新轉變之前完成。在其他實施中,電源管理器50可經組態以在判定後隨即用信號通知新轉變(例如,藉由改變PwrUpReq信號之狀態)。CIF 58可經組態以監控PwrUpReq信號以偵測狀態改變,且可停止處理進行中之事件。CIF 58可經組態以在無進一步處理之情況下認可所改變之狀態,抑或可處理新事件(執行針對新事件之暫存器寫入)。
圖7為說明針對一實施例之用於L2快取記憶體18之斷電及供電序列的時序圖。時間可以任意單位在圖7中自左至右增大。L2快取記憶體18可被供電且在時序圖之開始時操作(區塊130),且PwrUpReq及PwrUpAck信號兩者被確證。電源管理器50可判定L2快取記憶體待斷電,且可撤銷確證PwrUpReq信號(虛線132)。CIF 58可開始傳輸暫存器寫入且收集回應(區塊134)。一旦寫入完成且接收回應,CIF 58隨即可撤銷確證PwrUpAck(虛線136)且L2快取記憶體18可被斷電(區塊138)。在稍後時間點,電源管理器50可判定L2快取記憶體18待供電,且可在建立至L2快取記憶體18之電源之後確證PwrUpReq信號(虛線140)。CIF 58可傳輸暫存器寫入以初始化組態暫存器(區塊142),且可回應於完成寫入及接收回應而確證PwrUpAck信號(虛線144)。L2快取記憶體18可被供電且在此時間點再次操作(區塊146)。
現轉至圖8,展示說明可更新L2快取記憶體組態之軟體之一實施例的流程圖。舉例而言,該軟體可包括可在系統5之開機期間及/或在該系統之操作期間L2快取記憶體組態改變之其他時間執行的L2組態碼。L2組態碼可執行於處理器16中之一者上以實施圖8所示之操作。亦即,L2組態碼可包括在藉由處理器16中之一者執行時實施圖8所示之操作的指令。儘管為了易於理解而以特定次序展示區塊,但可使用其他次序。
L2組態碼可在L2快取記憶體18中寫入一或多個組態暫存器(區塊150)。若亦需要在L2快取記憶體18之斷電期間寫入該等組態暫存器中之一或多者(決策區塊152,「是」支路),則該碼可將該組態暫存器之位址及對應資料寫入至供電/斷電記憶體60(區塊154)。舉例而言,可包括引起L2快取記憶體18之同步的暫存器寫入。該碼可設定藉由斷電寫入所寫入之每一輸入項中的V及D位元。若將在L2快取記憶體18之供電期間復原該等組態暫存器中之一或多者(決策區塊156,「是」支路),則該碼可將該組態暫存器之位址及對應資料寫入至供電/斷電記憶體60且可在每一輸入項中設定V位元及清除D位元(區塊158)。應注意,在一些實施例中,同一組態暫存器可包括於斷電寫入及供電寫入兩者中。
在另一實施例中,CIF 58可經組態以偵測至組態暫存器56A-56D(或待在供電事件時恢復及/或在斷電事件時寫入的該等組態暫存器之子集)之寫入。CIF 58可自動地俘獲寫入至供電/斷電記憶體60中之暫存器的值,且由此,L2組態碼不需要明確地執行至記憶體60之寫入。在一些此等實施例中,除了上文所提及之自動俘獲以外,L2組態碼可能亦能夠更新記憶體60。舉例而言,L2組態碼可***針對斷電事件之同步命令。
接下來轉至圖9,展示電腦可存取儲存媒體200的方塊圖。一般而言,電腦可存取儲存媒體可包括在使用期間可藉由電腦存取以將指令及/或資料提供至電腦之任何儲存媒體。舉例而言,電腦可存取儲存媒體可包括儲存媒體,諸如,磁性或光學媒體,例如,磁碟(固定或抽取式)、磁帶、CD-ROM或DVD-ROM、CD-R、CD-RW、DVD-R、DVD-RW,或Blu-Ray。儲存媒體可進一步包括揮發性或非揮發性記憶體媒體,諸如,RAM(例如,同步動態RAM(SDRAM)、雙資料速率(DDR、DDR2、DDR3,等等)SDRAM、低功率DDR(LPDDR2,等等)SDRAM、Rambus DRAM(RDRAM)、靜態RAM(SRAM),等等)、ROM、快閃記憶體、可經由諸如通用串列匯流排(USB)介面之周邊介面而存取的非揮發性記憶體(例如,快閃記憶體),等等。儲存媒體可包括微機電系統(MEMS),以及可經由諸如網路及/或無線鏈路之通信媒體而存取的儲存媒體。圖9中之電腦可存取儲存媒體200可儲存L2組態碼202,L2組態碼202可實施圖8之流程圖。通常,電腦可存取儲存媒體200可儲存任何指令集,該等指令在執行時實施圖8所示之流程圖之部分或全部。載體媒體可包括電腦可存取儲存媒體,以及諸如有線或無線傳輸之傳輸媒體。
現轉至圖10,展示系統350之一實施例的方塊圖。在所說明實施例中,系統350包括耦接至外部記憶體352之積體電路10之至少一例項。外部記憶體352可形成上文關於圖1所論述之主記憶體子系統(例如,外部記憶體352可包括記憶體12A-12B)。積體電路10耦接至一或多個周邊裝置354及外部記憶體352。亦提供電源供應器356,其將供應電壓供應至積體電路358以及將一或多個供應電壓供應至記憶體352及/或周邊裝置354。在一些實施例中,可包括積體電路10之一個以上例項(且亦可包括一個以上外部記憶體352)。
記憶體352可為任何類型之記憶體,諸如,動態隨機存取記憶體(DRAM)、同步DRAM(SDRAM)、雙資料速率(DDR、DDR2、DDR3,等等)SDRAM(包括諸如mDDR3等等的SDRAM之行動版本,及/或諸如LPDDR2等等的SDRAM之低功率版本)、RAMBUS DRAM(RDRAM)、靜態RAM(SRAM),等等。一或多個記憶體裝置可耦接至電路板上以形成記憶體模組,諸如,單列直插式記憶體模組(SIMM)、雙列直插式記憶體模組(DIMM),等等。或者,該等裝置可經安裝有呈晶片疊置組態、封裝疊置組態或多晶片模組組態之積體電路10。
取決於系統350之類型,周邊裝置354可包括任何所要電路。舉例而言,在一實施例中,系統350可為行動裝置(例如,個人數位助理(PDA)、智慧型電話,等等),且周邊裝置354可包括用於各種類型之無線通信的裝置,諸如,wifi、藍芽、蜂巢式、全球定位系統,等等。周邊裝置354亦可包括額外儲存器,包括RAM儲存器、固態儲存器或磁碟儲存器。周邊裝置354可包括諸如顯示螢幕之使用者介面裝置,包括觸控式顯示螢幕或多觸控式顯示螢幕、鍵盤或其他輸入裝置、麥克風、揚聲器,等等。在其他實施例中,系統350可為任何類型之計算系統(例如,桌上型個人電腦、膝上型電腦、工作站、網上電腦,等等)。
對於熟習此項技術者,一旦完全地瞭解以上揭示內容,眾多變化及修改隨即將變得顯而易見。希望將以下申請專利範圍解譯為包含所有此等變化及修改。
5...系統
10...積體電路(IC)
12A...外部記憶體
12B...外部記憶體
14...中央處理器單元(CPU)區塊
16...處理器
18...層級2(L2)快取記憶體
18A...L2快取記憶體控制
18B...L2快取記憶體
20...非即時(NRT)周邊裝置
22...即時(RT)周邊裝置
30...橋接器/直接記憶體存取(DMA)控制器
32A...周邊裝置
32B...周邊裝置
32C...周邊裝置
34...周邊介面控制器
36...圖形單元
38A...圖形控制器
38B...圖形控制器
40...記憶體控制器
42A...記憶體實體介面電路(PHY)
42B...記憶體實體介面電路(PHY)
44A...埠
44B...埠
44C...埠
44D...埠
44E...埠
50...電源管理器
52...快取控制電路
54...連貫性控制電路
56A...組態暫存器
56B...組態暫存器
56C...組態暫存器
56D...組態暫存器
58...連貫I/O介面單元(CIF)
60...供電/斷電記憶體
62...DMA控制器
200...電腦可存取儲存媒體
202...L2組態碼
350...系統
352...外部記憶體
354...周邊裝置
356...電源供應器
358...積體電路
圖1為系統之一實施例的方塊圖。
圖2為更詳細地針對一實施例的圖1所示之系統之部分的方塊圖。
圖3為說明用以動態地使快取記憶體斷電之電源管理器之一實施例之操作的流程圖。
圖4為說明用以動態地使快取記憶體斷電之核心介面單元之一實施例之操作的流程圖。
圖5為說明用以動態地向快取記憶體供電之電源管理器之一實施例之操作的流程圖。
圖6為說明用以動態地向快取記憶體供電之核心介面單元之一實施例之操作的流程圖。
圖7為說明快取記憶體之動態斷電及供電的時序圖。
圖8為說明快取記憶體組態碼之一實施例之操作的流程圖。
圖9為電腦可存取儲存媒體的方塊圖。
圖10為系統之另一實施例的方塊圖。
14...中央處理器單元(CPU)區塊
16...處理器
18A...L2快取記憶體控制
18B...L2快取記憶體
30...橋接器/直接記憶體存取(DMA)控制器
50...電源管理器
52...快取控制電路
54...連貫性控制電路
56A...組態暫存器
56B...組態暫存器
56C...組態暫存器
56D...組態暫存器
58...連貫I/O介面單元(CIF)
60...供電/斷電記憶體
62...DMA控制器
Claims (18)
- 一種用於電源管理之設備,其包含:一記憶體,其經組態以儲存識別待在使一電路區塊斷電之前執行之一第一組操作及待在向該電路區塊供電之後執行之一第二組操作的資料,其中待在使該電路區塊斷電之前執行之該第一組操作包含對該電路區塊內之一暫存器之至少一個寫入操作;一控制電路,其經耦接以接收對在包括該記憶體及該控制電路之一系統中之處理器被斷電的一時間期間使該電路區塊斷電之一請求,其中該控制電路經組態以回應於該請求而執行在該記憶體中所識別之該對應第一組操作,該對應第一組操作包括該至少一個暫存器寫入操作,其中該至少一個暫存器寫入操作引起該電路區塊內之一同步操作。
- 如請求項1之設備,其中該第一組操作包含針對該電路區塊中之第一複數個暫存器的第一複數個暫存器寫入操作,其中該第一複數個暫存器寫入操作包括該至少一個寫入操作且其中該記憶體中之該資料包含識別該複數個暫存器之第一複數個位址及待寫入至該第一複數個暫存器之第一複數個資料值,且其中該第二組操作包含針對該電路區塊中之第二複數個暫存器的第二複數個暫存器寫入操作,且其中該記憶體中之該資料包含識別該第二複數個暫存器之第二複數個位址及待寫入至該第二複數個暫存器之第二複數個資料值。
- 如請求項2之設備,其中一第一暫存器包括於該第一複數個暫存器及該第二複數個暫存器兩者中。
- 如請求項1之設備,其中該記憶體包含可藉由軟體以該第一組操作及該第二組操作程式化之一或多個暫存器。
- 如請求項1之設備,其中該控制電路經進一步組態以接收對在該系統中之該等處理器被斷電的一時間期間向一電路區塊供電之一請求,且其中該控制電路經組態以回應於對向該電路區塊供電之該請求而執行在該記憶體中所識別之該對應第二組操作。
- 一種用於電源管理之系統,其包含:一或多個處理器;一電路區塊,其耦接至該一或多個處理器;及一橋接器,其耦接至該電路區塊且經組態以耦接至一或多個周邊裝置,其中該橋接器包含可藉由資料程式化之複數個暫存器,該資料表示待在使該電路區塊斷電之前執行之第一複數個操作及待在該電路區塊之一供電期間執行之第二複數個操作,其中待在使該電路區塊斷電之前執行之該第一複數個操作包含對該電路區塊內之一暫存器之至少一個寫入操作,其中該至少一個寫入操作引起該電路區塊中之一同步操作且其中該橋接器經組態以回應於針對該電路區塊之一斷電事件而執行該第一複數個操作且回應於針對該電路區塊之一供電事件而執行該第二複數個操作。
- 如請求項6之系統,其中該電路區塊為一快取記憶體。
- 如請求項7之系統,其中該快取記憶體包含複數個組態暫存器,且其中該第二複數個操作中至少一些為至該複數個組態暫存器中之一或多者之寫入,且其中該複數個暫存器係藉由該複數個組態暫存器中之該一或多者的位址及待寫入至該複數個組態暫存器中之該一或多者的值而程式化。
- 如請求項7之系統,其進一步包含一電源管理器,該電源管理器經組態以回應於偵測該一或多個處理器被斷電且進一步回應於偵測不存在來自該一或多個周邊裝置之未決操作而產生該斷電事件。
- 如請求項9之系統,其中該橋接器經組態以回應於完成該第一複數個操作而認可該斷電事件。
- 如請求項10之系統,其中該電源管理器經組態以產生該供電事件,且其中該橋接器經組態以回應於完成該第二複數個操作而認可該供電事件。
- 如請求項7之系統,其中該複數個暫存器包括針對該複數個暫存器中所表示之每一操作的一指示,該指示用以指示該操作為該第一複數個操作或該第二複數個操作中之一者。
- 一種用於電源管理之方法,其包含:偵測一電路區塊待在包括耦接至該電路區塊之一或多個處理器的一系統中供電,其中該一或多個處理器在該偵測之一時間被斷電;將一請求發出至耦接至該電路區塊之一控制電路; 該控制電路藉由執行儲存於該控制電路中之複數個操作以初始化該電路區塊而回應於該請求;偵測該電路區塊待斷電;回應於偵測該電路區塊待斷電而將一第二請求發出至該控制電路;及該控制電路藉由執行儲存於該控制電路中之一或多個第二操作而回應於該第二請求,其中該一或多個第二操作包括對該電路區塊中之一第一組態暫存器之一第一寫入操作,其中該第一寫入操作引起該電路區塊中之一同步操作。
- 如請求項13之方法,其中每一操作係藉由該電路區塊中一組態暫存器之一位址及待寫入至該組態暫存器中之一值表示。
- 如請求項13之方法,其進一步包含:該控制電路判定該一或多個第二操作完成;該控制電路回應於該判定而認可該第二請求;及回應於該控制電路認可而使該電路區塊斷電。
- 一種電腦可存取儲存媒體,其儲存複數個指令,當該複數個指令在一系統之開機期間執行於該系統中時:在該系統之開機期間初始化一電路區塊之一或多個組態暫存器;及在該系統之開機期間在一橋接器中之一記憶體中寫入用於該等組態暫存器之對應資料,以在一斷電事件及一後續供電事件之後自動地恢復該等組態暫存器。
- 如請求項16之電腦可存取儲存媒體,其中該複數個指令在執行時:寫入對應於用於每一組態暫存器之每一對應資料的一旗標,該旗標指示該對應資料待在該供電事件期間寫入。
- 如請求項17之電腦可存取儲存媒體,其中該複數個指令在執行時:將對應於待在一斷電事件期間執行之一或多個額外暫存器寫入操作的資料寫入至該橋接器中之該記憶體;及寫入對應於該等額外暫存器寫入操作之該旗標以指示該一或多個額外暫存器寫入操作待在該斷電事件期間執行。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/894,516 US8806232B2 (en) | 2010-09-30 | 2010-09-30 | Systems and method for hardware dynamic cache power management via bridge and power manager |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201225102A TW201225102A (en) | 2012-06-16 |
TWI483265B true TWI483265B (zh) | 2015-05-01 |
Family
ID=44785486
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW100135686A TWI483265B (zh) | 2010-09-30 | 2011-09-30 | 硬體動態快取電源管理 |
Country Status (9)
Country | Link |
---|---|
US (1) | US8806232B2 (zh) |
EP (1) | EP2437138A3 (zh) |
JP (1) | JP5537533B2 (zh) |
KR (1) | KR101317526B1 (zh) |
CN (1) | CN102646446B (zh) |
GB (1) | GB2484204B (zh) |
NL (1) | NL2007481C2 (zh) |
TW (1) | TWI483265B (zh) |
WO (1) | WO2012050773A1 (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9104499B2 (en) | 2010-12-21 | 2015-08-11 | Qualcomm Incorporated | System for minimizing resource latency between processor application states in a portable computing device by scheduling resource state set transitions |
US9285856B2 (en) * | 2010-12-21 | 2016-03-15 | Qualcomm Incorporated | Method and system for rapid entry into and for rapid exiting from sleep states for processors of a portable computing device |
US8954980B2 (en) | 2011-11-11 | 2015-02-10 | Qualcomm Incorporated | Conserving power through work load estimation for a portable computing device using scheduled resource set transitions |
US9513693B2 (en) | 2014-03-25 | 2016-12-06 | Apple Inc. | L2 cache retention mode |
JP6695320B2 (ja) * | 2014-07-30 | 2020-05-20 | リニア アルジェブラ テクノロジーズ リミテッド | 低電力コンピュータイメージング |
GB2539459A (en) * | 2015-06-16 | 2016-12-21 | Nordic Semiconductor Asa | Waveform generation |
US10156887B2 (en) * | 2016-09-29 | 2018-12-18 | Qualcomm Incorporated | Cache memory clock generation circuits for reducing power consumption and read errors in cache memory |
US10921874B2 (en) * | 2017-03-06 | 2021-02-16 | Facebook Technologies, Llc | Hardware-based operating point controller for circuit regions in an integrated circuit |
US20200264788A1 (en) * | 2019-02-15 | 2020-08-20 | Qualcomm Incorporated | Optimal cache retention mechanism |
US11409560B2 (en) * | 2019-03-28 | 2022-08-09 | Intel Corporation | System, apparatus and method for power license control of a processor |
US11507174B2 (en) * | 2020-02-25 | 2022-11-22 | Qualcomm Incorporated | System physical address size aware cache memory |
CN112131175B (zh) * | 2020-08-28 | 2022-06-17 | 山东云海国创云计算装备产业创新中心有限公司 | 一种SoC芯片、功耗控制方法及可读存储介质 |
CN112199244B (zh) * | 2020-10-16 | 2022-08-02 | 苏州浪潮智能科技有限公司 | 一种服务器掉电检测的方法、***、设备及介质 |
US20230275597A1 (en) * | 2021-11-08 | 2023-08-31 | Ambiq Micro, Inc. | Low power and wide dynamic range analog-to-digital converter |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5642489A (en) * | 1994-12-19 | 1997-06-24 | International Business Machines Corporation | Bridge between two buses of a computer system with a direct memory access controller with accessible registers to support power management |
US5689714A (en) * | 1995-08-28 | 1997-11-18 | Motorola, Inc. | Method and apparatus for providing low power control of peripheral devices using the register file of a microprocessor |
US5923829A (en) * | 1994-08-25 | 1999-07-13 | Ricoh Company, Ltd. | Memory system, memory control system and image processing system |
WO2001033322A2 (en) * | 1999-11-05 | 2001-05-10 | Intel Corporation | Sleep state transitioning |
US20060020765A1 (en) * | 2004-07-02 | 2006-01-26 | Peter Mahrla | Configuration of components for a transition from a low-power operating mode to a normal-power operating mode |
EP1653331A2 (en) * | 2004-10-29 | 2006-05-03 | STMicroelectronics Pvt. Ltd | An apparatus and method for entering and exiting low power mode |
US20070113057A1 (en) * | 2005-11-15 | 2007-05-17 | Mips Technologies, Inc. | Processor utilizing a loop buffer to reduce power consumption |
US20070260794A1 (en) * | 2006-05-01 | 2007-11-08 | Freescale Semiconductor, Inc. | Method of transitioning between active mode and power-down mode in processor based system |
US20070288776A1 (en) * | 2006-06-09 | 2007-12-13 | Dement Jonathan James | Method and apparatus for power management in a data processing system |
US20080148083A1 (en) * | 2006-12-15 | 2008-06-19 | Microchip Technology Incorporated | Direct Memory Access Controller |
US20090235099A1 (en) * | 2008-03-11 | 2009-09-17 | Alexander Branover | Protocol for Transitioning In and Out of Zero-Power State |
US20100057950A1 (en) * | 2008-09-02 | 2010-03-04 | David Barrow | Dma assisted data backup and restore |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5632038A (en) | 1994-02-22 | 1997-05-20 | Dell Usa, L.P. | Secondary cache system for portable computer |
US6052789A (en) | 1994-03-02 | 2000-04-18 | Packard Bell Nec, Inc. | Power management architecture for a reconfigurable write-back cache |
AU3313795A (en) | 1994-10-14 | 1996-04-26 | Compaq Computer Corporation | Circuit for placing a cache memory into low power mode in response to special bus cycles |
US5530932A (en) | 1994-12-23 | 1996-06-25 | Intel Corporation | Cache coherent multiprocessing computer system with reduced power operating features |
US6510525B1 (en) | 1999-04-26 | 2003-01-21 | Mediaq, Inc. | Method and apparatus to power up an integrated device from a low power state |
JP2002196846A (ja) | 2000-12-26 | 2002-07-12 | Mitsubishi Electric Corp | Lsiのリーク電流低減方法 |
US6826704B1 (en) | 2001-03-08 | 2004-11-30 | Advanced Micro Devices, Inc. | Microprocessor employing a performance throttling mechanism for power management |
JP2002305475A (ja) | 2001-04-04 | 2002-10-18 | Kyocera Corp | 省電力状態移行方法、及び移動通信機 |
US7848718B2 (en) | 2004-05-05 | 2010-12-07 | St-Ericsson Sa | Method apparatus comprising integrated circuit and method of powering down such circuit |
US7610497B2 (en) * | 2005-02-01 | 2009-10-27 | Via Technologies, Inc. | Power management system with a bridge logic having analyzers for monitoring data quantity to modify operating clock and voltage of the processor and main memory |
US7869835B1 (en) | 2005-03-02 | 2011-01-11 | Nvidia Corporation | Method and system for pre-loading and executing computer instructions within the cache memory |
US9052892B2 (en) | 2007-06-04 | 2015-06-09 | Ericsson Modems, SA | Power supply management integrated circuit |
US8527709B2 (en) | 2007-07-20 | 2013-09-03 | Intel Corporation | Technique for preserving cached information during a low power mode |
US7779191B2 (en) | 2008-07-29 | 2010-08-17 | Nvidia Corporation | Platform-based idle-time processing |
-
2010
- 2010-09-30 US US12/894,516 patent/US8806232B2/en active Active
-
2011
- 2011-09-21 WO PCT/US2011/052599 patent/WO2012050773A1/en active Application Filing
- 2011-09-23 EP EP11182547A patent/EP2437138A3/en not_active Withdrawn
- 2011-09-27 NL NL2007481A patent/NL2007481C2/en active
- 2011-09-30 TW TW100135686A patent/TWI483265B/zh active
- 2011-09-30 GB GB1116886.1A patent/GB2484204B/en active Active
- 2011-09-30 KR KR1020110099679A patent/KR101317526B1/ko active IP Right Grant
- 2011-09-30 CN CN201110459693.7A patent/CN102646446B/zh active Active
- 2011-09-30 JP JP2011230166A patent/JP5537533B2/ja active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5923829A (en) * | 1994-08-25 | 1999-07-13 | Ricoh Company, Ltd. | Memory system, memory control system and image processing system |
US5642489A (en) * | 1994-12-19 | 1997-06-24 | International Business Machines Corporation | Bridge between two buses of a computer system with a direct memory access controller with accessible registers to support power management |
US5689714A (en) * | 1995-08-28 | 1997-11-18 | Motorola, Inc. | Method and apparatus for providing low power control of peripheral devices using the register file of a microprocessor |
WO2001033322A2 (en) * | 1999-11-05 | 2001-05-10 | Intel Corporation | Sleep state transitioning |
US20060020765A1 (en) * | 2004-07-02 | 2006-01-26 | Peter Mahrla | Configuration of components for a transition from a low-power operating mode to a normal-power operating mode |
EP1653331A2 (en) * | 2004-10-29 | 2006-05-03 | STMicroelectronics Pvt. Ltd | An apparatus and method for entering and exiting low power mode |
US20070113057A1 (en) * | 2005-11-15 | 2007-05-17 | Mips Technologies, Inc. | Processor utilizing a loop buffer to reduce power consumption |
US20070260794A1 (en) * | 2006-05-01 | 2007-11-08 | Freescale Semiconductor, Inc. | Method of transitioning between active mode and power-down mode in processor based system |
US20070288776A1 (en) * | 2006-06-09 | 2007-12-13 | Dement Jonathan James | Method and apparatus for power management in a data processing system |
US20080148083A1 (en) * | 2006-12-15 | 2008-06-19 | Microchip Technology Incorporated | Direct Memory Access Controller |
US20090235099A1 (en) * | 2008-03-11 | 2009-09-17 | Alexander Branover | Protocol for Transitioning In and Out of Zero-Power State |
US20100057950A1 (en) * | 2008-09-02 | 2010-03-04 | David Barrow | Dma assisted data backup and restore |
Also Published As
Publication number | Publication date |
---|---|
CN102646446A (zh) | 2012-08-22 |
JP2012079320A (ja) | 2012-04-19 |
NL2007481A (en) | 2012-04-02 |
US8806232B2 (en) | 2014-08-12 |
TW201225102A (en) | 2012-06-16 |
EP2437138A2 (en) | 2012-04-04 |
CN102646446B (zh) | 2016-01-06 |
KR101317526B1 (ko) | 2013-10-15 |
GB2484204A (en) | 2012-04-04 |
GB2484204B (en) | 2013-02-13 |
EP2437138A3 (en) | 2012-10-03 |
WO2012050773A1 (en) | 2012-04-19 |
US20120084589A1 (en) | 2012-04-05 |
GB201116886D0 (en) | 2011-11-16 |
JP5537533B2 (ja) | 2014-07-02 |
KR20120034041A (ko) | 2012-04-09 |
NL2007481C2 (en) | 2012-11-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI483265B (zh) | 硬體動態快取電源管理 | |
JP5963282B2 (ja) | 割り込み分配スキーム | |
US10401945B2 (en) | Processor including multiple dissimilar processor cores that implement different portions of instruction set architecture | |
US9690353B2 (en) | System and method for initiating a reduced power mode for one or more functional blocks of a processor based on various types of mode request | |
US9280471B2 (en) | Mechanism for sharing private caches in a SoC | |
WO2015199909A1 (en) | Accelerating boot time zeroing of memory based on non-volatile memory (nvm) technology | |
US9898071B2 (en) | Processor including multiple dissimilar processor cores | |
US11922172B2 (en) | Configurable reduced memory startup | |
US8078800B2 (en) | Dynamic operating point modification in an integrated circuit | |
JP2016066361A (ja) | モバイルデバイスにおけるバッテリー限界ステータスの表示 | |
US9152588B2 (en) | Race-free level-sensitive interrupt delivery using fabric delivered interrupts | |
US10127153B1 (en) | Cache dependency handling | |
TW202328896A (zh) | 多媒體壓縮訊框感知快取記憶體替換策略 |