TW202248855A - 晶粒至晶粒動態時脈及電力閘控 - Google Patents
晶粒至晶粒動態時脈及電力閘控 Download PDFInfo
- Publication number
- TW202248855A TW202248855A TW111117565A TW111117565A TW202248855A TW 202248855 A TW202248855 A TW 202248855A TW 111117565 A TW111117565 A TW 111117565A TW 111117565 A TW111117565 A TW 111117565A TW 202248855 A TW202248855 A TW 202248855A
- Authority
- TW
- Taiwan
- Prior art keywords
- network
- soc
- socs
- circuit
- reduced power
- Prior art date
Links
- 230000004044 response Effects 0.000 claims abstract description 79
- 230000000694 effects Effects 0.000 claims abstract description 13
- 238000000034 method Methods 0.000 claims description 70
- 230000005540 biological transmission Effects 0.000 claims description 4
- 101150114085 soc-2 gene Proteins 0.000 claims 1
- 238000007726 management method Methods 0.000 description 75
- 238000013461 design Methods 0.000 description 27
- 238000004891 communication Methods 0.000 description 25
- 238000003860 storage Methods 0.000 description 13
- 238000004519 manufacturing process Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 230000002093 peripheral effect Effects 0.000 description 9
- 239000004065 semiconductor Substances 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 230000009467 reduction Effects 0.000 description 7
- 230000036541 health Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 239000000463 material Substances 0.000 description 5
- 230000006855 networking Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000001419 dependent effect Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012806 monitoring device Methods 0.000 description 4
- 230000007704 transition Effects 0.000 description 4
- 230000001413 cellular effect Effects 0.000 description 3
- 230000002618 waking effect Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000004378 air conditioning Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000001816 cooling Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000009365 direct transmission Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 238000010438 heat treatment Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
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
- G06F1/16—Constructional details or arrangements
- G06F1/18—Packaging or power distribution
-
- 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/3206—Monitoring of events, devices or parameters that trigger a change in power modality
- G06F1/3209—Monitoring remote activity, e.g. over telephone lines or network connections
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4022—Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
- G06F13/4291—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
-
- 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/3237—Power saving characterised by the action undertaken by disabling clock generation or distribution
-
- 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
-
- 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)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Power Engineering (AREA)
- Human Computer Interaction (AREA)
- Computing Systems (AREA)
- Power Sources (AREA)
- Software Systems (AREA)
- Direct Current Feeding And Distribution (AREA)
- Micro-Organisms Or Cultivation Processes Thereof (AREA)
- Control Of Eletrric Generators (AREA)
- Rectifiers (AREA)
Abstract
一種系統包括由一網路連接的複數個系統單晶片(SoC)。該複數個SoC及該網路經組態以作為一單一邏輯運算系統操作。該複數個SoC可經組態以交換指示在該網路之其等各別部分上發生的網路活動的本端電力資訊。該複數個SoC中之一給定者可經組態以判定已滿足用於使對應於該給定SoC的該網路之該各別部分處於一減少電力模式的一本端條件。該給定SoC可進一步經組態以回應於判定滿足該減少電力模式的一全域條件而使該網路之該各別部分處於該減少電力模式。可基於用於該複數個SoC之其餘者的目前本端電力資訊來評估該全域條件。
Description
本文中所描述之實施例係關於系統單晶片(SoC),且更具體而言,係關於用以耦接SoC之平行通訊介面。
系統單晶片(SoC)積體電路(IC)通常包括用作為用於系統之中央處理單元(CPU)的一或多個處理器,連同各種其他組件,諸如記憶體控制器及周邊組件。特定SoC IC上可包括用作為給定裝置之主要處理器的額外組件。例如,SoC可包括一或多個通用處理器、一圖形處理器、一音訊處理器、網路電路(例如,乙太網路、通用串列匯流排(USB)、快速周邊組件互連(PCIe))、記憶體控制器、顯示器控制器等的任何合適組合。可經由使用SoC內之一或多個網路耦接處理器及組件之組合以實現通訊。
對於增加效能定向應用之能力在SoC IC上增加數個處理器及/或包括其他離散組件係所欲的,而一組減少之能力可能對於具成本敏感的應用係可接受的。增加IC上的處理器數目會增加成本,對成本敏感應用不利。此外,IC可具有在晶粒大小方面的物理限制。增加SoC上之處理器及/或其他電路的數目可在達到所欲效能能力之前達到物理限制。在單一設計中,用於按比例調整SoC能力之另一技術係在單一設計中使用多個SoC。基本SoC可用於成本敏感應用,而在效能定向應用中可包括基本SoC之二或更多個例項。
在一實施例中,一種系統包括藉由一網路連接的複數個系統單晶片(SoC)。該複數個SoC及該網路經組態以作為一單一邏輯運算系統操作。該複數個SoC可經組態以交換指示在該網路之其等各別部分上發生的網路活動的本端電力資訊。該複數個SoC中之一給定者可經組態以判定已滿足用於使對應於該給定SoC的該網路之該各別部分處於一減少電力模式的一本端條件。該給定SoC可進一步經組態以回應於判定滿足該減少電力模式的一全域條件而使該網路之該各別部分處於該減少電力模式。可基於用於該複數個SoC之其餘者的目前本端電力資訊來評估該全域條件。
在另一實例中,為了交換本端電力資訊,該複數個SoC可經組態以依一特定時間間隔將其各別本端電力資訊傳送至該複數個之至少一個其他SoC。在另一實例中,為了交換本端電力資訊,該給定SoC經組態以傳送進入該減少電力模式之一請求至該等其餘SoC。該給定SoC可進一步經組態以:從該等其餘SoC接收該等對應SoC之該各別本端電力資訊;及判定該所接收本端電力資訊是否滿足該全域條件。
在一實例中,該給定SoC可係經組態以起始進入該減少電力模式的一主要SoC。該等其餘SoC可係經組態以等待來自該主要SoC進入該減少電力模式之一指示的次要SoC。在一實施例中,為了使該網路之該各別部分處於該減少電力模式,該給定SoC可經組態以傳送進入該減少電力模式之一請求至該等其餘SoC,及等待來自該等其餘SoC之各別回覆,其中該等各別回覆核准或拒絕該請求。
在一進一步實施例中,該等其餘SoC之一特定SoC可進一步經組態以:回應於判定該特定SoC中的該網路之該各別部分正在等待一異動完成而延遲傳送對該請求之一回覆;及回應於判定該異動已完成而傳送該回覆。該回覆可包括進入該減少電力模式之一核准。
在另一實施例中,該等其餘SoC之一特定SoC進一步經組態以:回應於判定該特定SoC中的該網路之該各別部分正在等待一異動完成而傳送對該請求之一回覆。該回覆可包括進入該減少電力模式之一拒絕。該給定SoC可進一步經組態以:回應於接收該拒絕回覆而取消進入該減少電力模式之該請求。
如上文所描述,系統單晶片(SoC)設計可包括一或多個網路電路以實現複數個代理之間的通訊。如本文中所使用,「代理」(agent)係指能夠起始或係網路上之異動的目的地的功能性電路。因此,通用處理器、圖形處理器、記憶體控制器及其他類似電路可稱為代理。兩個代理跨網路電路中之一者之間的資料交換在本文中稱為「異動」(transaction)。為了管理各種代理之間的各種資料異動,可實施複數個網路電路。
利用SoC之多個例項會面臨數個挑戰。例如,為了縮減與SoC間通訊相關聯的延時,SoC間網路介面可包括大量引腳,從而允許在二或更多個SoC之間平行交換大量位元。用於多核心SoC之晶片上網路可利用一或多個通訊匯流排,其中數百或甚至一千或更多個信號平行行進。為了將二或更多個此類SoC耦合在一起會需要網路介面,該網路介面提供對通訊匯流排之大部分的存取,潛在需要跨二或更多個晶粒耦接數百個引腳。此類SoC間網路可實現在SoC之二或更多個例項上的內部通訊匯流排,以作為單一、相干性通訊網狀架構,從而允許以類似於在相同晶粒上的兩個代理之間交換之異動的方式在不同晶粒的代理之間交換異動。從功能觀點,SoC之多個例項可執行為單一積體電路。
為了匹配或至甚至接近接近通訊匯流排之內部晶片上通訊頻率,SoC間網路電路之大量引腳的時序特性可利用高速電路元件,這在閒置時可能不具有電力效率。因此,當SoC間網路電路閒置時使其處於減少電力模式係所欲的。在減少電力模式中,給定網路電路的電力消耗小於在操作模式中操作時。例如,對在給定網路電路中之一或多個電力節點的電力可被減少或閘控。類似地,可減少時脈信號之頻率,或可從給定網路電路中之一或多個時脈節點閘控時脈信號。在其他實施例中,減少電力模式可對應於執行一作用中網路電路的一卸除,使得經卸除網路電路不回應於在共同介面上保持作用中之其他網路電路的網路流量。
連同減少電力,給定網路電路處於減少電力模式時的能力也可小於在操作模式中操作時。因此,在多SoC系統中,若特定SoC自主地使其各別網路電路處於減少電力狀態,則在等待一個SoC使其網路電路返回操作模式時,會遺漏或阻擋從不同SoC傳送至特定SoC上之代理的異動。因此,一種用於使各別網路電路處於減少電力模式的未協調方法會導致無法接受的異動數目被遺漏或阻擋,從而降低多SoC系統的有效性。
為了解決此類問題,設想包括由包括多SoC網路之各別部分的多個SoC交換指示在該網路之其等各別部分上發生的網路活動的本端電力資訊。然後,SoC中之一給定者可判定已滿足用於使該網路之其各別部分處於減少電力模式的本端條件。作出回應,然後,該給定SoC可判定是否滿足該減少電力模式之全域條件。可基於用於多SoC系統之其他SoC的目前本端電力資訊來評估此類全域條件。在判定該全域條件已滿足之後,然後,可使該網路之該各別部分處於該減少電力模式。
圖1繪示包括由一共用網路耦接之四個SoC的一邏輯運算系統的實施例的方塊圖。如所說明,系統100包括SoC 101a至101d(統稱為SoC 101)。各SoC 101包括電力管理電路120a至120d(統稱為電力管理電路120)之一各別者。SoC 101亦包括網路105之各別部分,該網路包括網路電路110a至110d之各別者(統稱為共同網路電路110)。使用網路105該SoC 101可交換各別電力資訊130a至130d(統稱為電力資訊130)。
如所示,SoC 101位於各別晶粒上,且藉由網路105連接,該網路之各別部分位於包括各別網路電路110的各別晶粒之不同者上。SoC 101及網路105經組態以作為單一邏輯運算系統操作,例如,作為一運算裝置(諸如膝上型電腦或桌上型電腦、平板電腦、智慧型手機及類似者)中的一主應用程式處理器。如本文中所使用,「邏輯運算系統(logical computing system)」係指包括一或多個處理器電路的運算系統,該一或多個處理器電路經組態以執行包括於一軟體程式中的程式指令,該軟體程式引起該一或多個處理器電路利用一或多個記憶體電路及/或經由共同匯流排協定存取的其他功能性電路來接收、處理及產生資料。可使用可在單一積體電路(IC)上或跨二或更多個IC配置的多個SoC來實施邏輯運算系統。當跨多個IC實施時,如系統100中所示,在多個IC中使用共同匯流排協定以允許軟體程式存取各種IC上之代理,而不需意識到代理之實體位置。各SoC 101包括一或多個代理(未圖示),諸如處理器核心、圖形處理器、記憶體系統、有線及/或無線網路介面等。使用網路105,例如SoC 101a上之代理可以相同於與SoC 101內之其他代理的方式來與其他SoC 101上之代理通訊。
如所繪示,SoC 101經組態以交換指示在網路105之其等各別部分上發生的網路活動的各別電力資訊130。例如,SoC 101b上的電力管理電路120b維持指示網路電路110b上之活動的電力資訊130b。在一些實施例中,電力資訊130b係在網路電路110b中發生之網路活動的一指示,該指示包括例如一或多個資訊片段,諸如網路電路130b已閒置之連續時脈循環數目、在網路電路110b中所包括之一或多個佇列中的擱置中異動的數目的指示、以及該等佇列中之擱置中異動的目的地,及類似者。在其他實施例中,可在電力資訊130b中包括額外資訊,諸如目前電力模式狀態。在一些實施例中,電力資訊130可簡單地包括來自對應SoC 101的對各別網路電路110上之本端流量滿足關閉網路105之條件的一指示,而無需提供額外的網路流量資訊。電力管理電路120b可更新電力資訊130b作為變更發生及/或特定間隔,包括例如與網路電路110b相關聯的時脈信號之每個循環。在各種實施例中,SoC 101可依一特定時間間隔或回應於特定事件(諸如來自另一SoC 101的請求)而交換其各別電力資訊130。
如所繪示,SoC 101b經組態以判定已滿足用於使網路電路110b處於減少電力模式的本端條件。例如,此本端條件可對應於網路電路110b在時脈循環之連續數目個循環期間仍維持閒置狀態。如本文中所使用,網路電路之「閒置狀態(idle state)」係指不具有對處理之異動的網路電路。待經由網路電路傳送及/或接收之異動可儲存在一或多個佇列中。異動可保持排入佇列,直到處理異動之資源可用。例如,經排入佇列之異動可保持排入佇列,直到目的地代理具有接收異動的頻寬。具有排入佇列之異動但無異動被主動處理的網路電路不被視為閒置,因為其具有一旦資源可用就處理的異動。若無異動被排入佇列或處理中,則網路電路可被視為閒置。網路電路處於閒置狀態的每一時脈循環被稱為「閒置循環(idle cycle)」。
如所示,網路電路110之一給定者使各別SoC 101能夠經由網路105來與其他三個SoC 101通訊。在一些實施例中,在各別SoC 101內之二或更多個代理交換異動時,給定網路電路110可處於閒置狀態。網路電路110經組態以提供介於晶片上通訊匯流排(未示出)與網路105之間的橋接器,允許例如SoC 101a上之代理使用與將異動傳送至SoC 101a上之不同代理的類似命令,將異動傳送至SoC 101d上之代理。
在SoC 101b判定電力資訊130b滿足本端條件之後,SoC 101b進一步經組態以回應於判定滿足減少電力模式的全域條件而使網路電路110b處於減少電力模式。如所述,SoC 101交換其各別電力資訊130,使得各電力管理電路120可能夠評估跨網路105之電力使用的全域條件。在一些實施例中,為了交換電力資訊130,複數個SoC 101經組態以依一特定時間間隔將其各別電力資訊130傳送至其他SoC 101。在其他實施例中,SoC 101b可傳送進入減少電力模式之一請求至SoC 101a、101c及101d,且繼而接收來自SoC 101a、101c、及101d的用於對應SoC之各別電力資訊130。SoC 101b進一步經組態以判定所接收電力資訊130a、130c及130d滿足全域條件。
如所示,基於用於其餘SoC 101a、101c及101d的目前電力資訊130來評估全域條件。例如,從其他SoC 101接收的電力資訊130可包括用於經排入佇列之異動的目的地。SoC 101b之全域條件的實例包括網路電路110a、110c、及110d不具有含在SoC 101b上之目的地的經排入佇列之異動。在一些實施例中,共用電力資訊130包括目前閒置循環計數。除非所有四個網路電路已閒置達一臨限時間量,否則電力管理電路120b可不使網路電路110b處於減少電力模式。
在一些實施例中,SoC 101之一給定者被指定為一主要SoC,該主要SoC經組態以起始判定如電力資訊130a至130d所指示之網路流量是否滿足用於停止所有網路流量的條件,而非允許SoC 101中之任一者起始進入減少電力模式之請求。其餘SoC 101係經組態以等待來自主要SoC之請求的次要SoC,以提供其各別電力資訊130。SoC 101可各提供關於是否滿足條件以允許網路電路110中之一或多者進入減少電力模式的指示。若所有SoC 101同意,則SoC 101中之任一特定者可使各別網路電路110處於減少電力模式中。
例如,SoC 101a可係被指定之主要SoC,而SoC 101b至101d係次要SoC。在此類實例中,電力資訊130之交換包括SoC 101b至101d基於歷時特定時間間隔或回應於來自SoC 101a之請求而傳送電力資訊130b至130d之各別者至SoC 101a。電力管理電路120a接收電力資訊130b至130d,且與本端電力資訊130a組合,判定是否滿足關閉網路105的條件,並允許一或多個SoC 101進入減少電力模式。在一些實施例中,在所有SoC 101之間共用電力資訊130a至130d,允許各SoC 101拒絕關閉網路105的機會,在此情況下,無網路電路110可處於減少電力模式。
在一些實施例中,主要SoC 101a可針對SoC 101判定是否所有SoC 101使其各別網路電路110處於低電力模式的全域條件。例如,電力資訊130可指示無異動在網路電路110中之任一者中排入佇列,且無異動待完成。然後,如果滿足其各別本端條件,電力管理電路120a可傳送關於網路105被關閉及其可使其各別網路電路110b至110d處於減少電力模式的通知至電力管理電路120b至120d。在一些情況下,電力管理電路120b至120d之一特定者可用否決指示作出回應。此類否決指示可取消網路105關閉。
在其他實施例中,主要SoC 101a可針對SoC 101之各者個別地判定是否給定一或多個SoC 101使其各別網路電路110處於低電力模式的本端及全域條件。例如,基於電力資訊130,電力管理電路120a可判定網路電路110a及網路電路110d滿足進入減少電力模式的條件,而網路電路110b及110c具有作用中及/或排入佇列之異動以在SoC 101b與101c之間交換,且因此必須保持作用中。在此類實施例中,SoC 101a可將主要要指定傳遞至SoC 101b或101c中之任一者,使得具有作用中網路電路110之SoC 101被指定為主要SoC 101。在其他實施例中,SoC 101a可保持主要要指定,儘管網路電路110a進入減少電力模式。
用於網路電路之此類電力管理系統可允許多SoC系統(諸如系統100)降低網路電路之電力消耗,同時保持分散式網路系統之適當操作。所揭示之電力管理技術可允許分散式網路系統支援在SoC中之任一特定者上執行軟體以定址該等SoC中之其他者中的代理,而無需知道其他代理在不同SoC晶粒上。
應注意,如圖1所繪示的系統100僅係實例。圖1之圖示已簡化以突顯關於本揭露之特徵。各種實施例可包括不同組態之電路元件。例如,系統100經展示具有四個SoC。在其他實施例中,可包括用任何合適數目個SoC。為了清楚起見,繪示各SoC僅具有各別網路電路及電力管理電路。在其他實施例中,SoC可具有任何合適數目個額外電路,包括例如一或多個處理器核心、圖形處理器、安全處理器、記憶體電路及/或介面、影像及/或音訊擷取電路,及類似者。
圖1描繪具有分佈在多個SoC中之信號網路的系統。在其他實施例中,可包括各種數目個網路,且該等網路可具有多於一個拓撲。圖2中展示具有兩個網路之系統的實例,該兩個網路具有不同拓撲。
移至圖2,繪示包括由兩個共用網路耦接之四個SoC的一系統的實施例的方塊圖。如所繪示,系統100包括SoC 101,如先前所描述,該等SoC之各者包括電力管理電路120之一各別者以及網路電路110之各別者。網路電路110支援系統200之兩個網路(網路105及網路205),各網路具有不同拓撲。
如所示,網路105及205允許在SoC 101之不同者上之代理之間通訊。各網路105及205可分配給各別類型之異動。例如,網路105可分配給記憶體型異動,其中來源及/或目的地代理中之至少一者包括記憶體電路,允許諸如各種SoC 101之代理存取SoC 101之其他者上的記憶體電路。網路205可分配至例如各SoC 101上的處理器核心,從而允許每一SoC 101上的一或多個處理器核心與其他SoC 101上的核心共用資訊。
為了執行其各別類型之異動,網路105及205以不同拓撲(網狀拓樸及環拓樸)予以配置。網路105以網狀拓樸予以配置,其中各網路節點(例如,網路電路110之各者內的各別電路)可耦接至一或多個其他網路節點。一般而言,網狀拓樸不具有固定結構。在網路105中,例如,SoC 101a可直接耦接至SoC 101b至101d之各者,而SoC 101b及101d亦共用直接連接。SoC 101c可僅直接耦接至SoC 101a。因此,在網路105上至/自SoC 101c的異動可始終通過SoC 101a之網路電路110a。
另一方面,網路205係一環網路,其中各網路節點直接耦接至兩個其他網路節點。如所示,網路205直接耦接SoC 101a至SoC 101b及101c、SoC 101b至SoC 101a及101d、SoC 101d至SoC 101b及101c、以及SoC 101c至SoC 101a及101d。在環網路中,異動「繞環」傳送直到其到達其目的地。在一些環網路中,可在單一方向傳送異動。例如,若網路205具有順時針方向,則從SoC 101a至SoC 101c之異動在到達SoC 101c之前將行進通過SoC 101b,且接著SoC 101d。然而,來自SoC 101c至101a之異動將直接而不通過SoC 101b或101d。在其他實施例中,網路205可係雙向的,允許例如SoC 101a及101c以直接交換異動。
各網路之拓樸可藉由系統設計者基於各種原因來選擇。環網路可搭配處理器核心一起使用以建立更可預測的網路結構,雖然網狀拓樸可允許在網路流量低時更快、更直接傳輸異動的可能性,但亦可能在網路上的流量高時導致兩個網路節點的較長路徑。選擇SoC 101之間的網路拓樸的額外因子包括用於在SoC內之對應網路使用的拓撲。如所繪示,網路105係在SoC 101之各者內之記憶體網路的延伸。若SoC 101使用網狀拓樸用於內部記憶體異動,則使用網狀拓樸以形成網路105允許耦接至網路電路110a的處理器核心藉由使用與存取SoC 101a內之記憶體電路的相同網路協定來存取耦接至網路電路110b至110d的記憶體電路。
若干技術可用以使網路電路110之一給定者處於減少電力模式。在一些實施例中,使網路電路110之一給定者處於減少電力模式阻擋網路105和網路205兩者的通訊。在其他實施例中,網路電路110可被分割使得網路105或網路205的子電路可獨立地處於減少電力模式,從而允許一個網路保持運作,而另一網路進入減少電力模式。
此外,網路拓樸可判定個別網路電路110是否可個別地進入減少電力模式,或是否系統200中的所有網路電路110必須滿足並行地進入減少電力模式的條件。例如,網狀拓樸(諸如網路105)可使網路電路110之單一者(例如,網路電路110c)能夠進入減少電力模式,只要網路電路110a、110b、及110d具有介於其等之間的作用中網路路徑,使得在三個作用中網路電路之任何組合之間的通訊係可行的。相比之下,若一給定網路電路110進入減少電力模式,則環網路(諸如網路205)可阻擋一或多個作用中網路電路之間的通訊。例如,若網路205係單向(例如,僅順時針傳輸),則若任何單一網路電路(諸如網路電路110b)進入減少電力狀態,則網路電路110c無法傳送異動至網路電路110d,且網路電路110a無法傳送異動至網路電路110d或110c。在此類實施例中,所有四個網路電路110將需要並行地進入減少電力模式。
因此,為了使網路電路110a處於減少電力模式,SoC 101a經組態以傳送進入減少電力模式之請求240至SoC 101b至101d。SoC 101a進一步經組態以等待來自SoC 101b至101d之各別回覆245b至245d,其中各別回覆245b至245d核准(245c)或拒絕(245b與245d)請求240。若請求240係使支援環網路205的網路電路110a之一部分處於減少電力模式之請求,或若網路電路110未被分割以獨立地支援網路105及205,則不允許網路電路110a進入減少電力狀態,除非亦滿足網路電路110b至110d的全域條件。如所示,網路電路110b及110d之間的異動235係作用中或在佇列中以待使用網路205處理。因此,網路電路110b及110d必須保持作用中,直到異動235完成,或在一些實施例中,以其他方式終止。若網路205係如上文所描述之單向環網路,網路電路110d需要網路電路110a保持作用中以傳送異動235之部分至網路電路110b,據此,SoC 101b及101d可分別傳送拒絕進入減少電力模式之請求240的回覆245b及245d至SoC 101a。在其他實施例中,SoC 101b及101d可延遲對請求240的回應直到異動235完成/終止,且若滿足本端條件,則可傳送核准回覆而非拒絕。
據此,藉由使用所揭示之技術,可在由多個網路耦接的SoC之系統中管理電力模式。所揭示之技術可允許在滿足條件時使網路之一些或所有部分處於減少電力模式,實現系統的電力消耗降低。
應注意,圖2繪示的實施例係實例。在其他實施例中,可包括元件之不同組合。例如,可包括不同數目個SoC及/或網路。儘管繪示環及網狀網路,但可包括其他類型之已知網路拓撲,例如星狀及/或樹拓樸。
在圖1及圖2之描繪中,系統經展示具有藉由一或多個共用網路耦接的複數個SoC之系統。SoC包括追蹤網路上活動的各別電力管理電路,且可起始使網路電路處於減少電力模式的請求。此類電力管理電路可以各種不同方式實施。圖3展示具有電力管理電路之SoC的更詳細實例。
轉至圖3,描繪於多SoC系統中使用的SoC。如所繪示,SoC 101可對應於圖1及圖2中之SoC 101的任何一或多者。SoC 101包括前述網路電路110及電力管理電路120。SoC 101進一步包括複數個功能性電路370a至370c(統稱為370)及用以在SoC 101內實施網路的一或多個通訊匯流排360。網路電路110包括介面電路310。電力管理電路120包括產生時序值325的計時器電路320以及多個狀態及控制暫存器330。
如所示,網路電路110經組態以在耦接至其他相容網路電路(例如,圖1及圖2中之網路電路110b至110d)時形成網路105之一部分。網路電路110進一步經組態以與該等其他相容網路電路交換複數個異動。網路電路110包括經組態以驅動及接收與網路105相關聯之各種信號的介面電路310。在一些實施例中,可包括介面電路310之多個例項,以將SoC 101耦接至多個不同網路,諸如圖2中之網路105及205。
網路電路110橋接介於功能性電路370之多者與包括在由網路105耦接之其他SoC中的功能性電路之間的通訊。通訊匯流排360可組合地形成在SoC 101內的網路105之一部分。功能性電路370可充當用於經由網路105取得及接收異動的代理。因此,功能性電路370a例如可經組態以使用與用於傳送異動至經由網路105耦接的不同SoC上之功能性電路相同的一網路協定,傳送異動至功能性電路370b。此類組態可允許在SoC 101上執行的軟體定址功能性電路370以及其他SoC上之功能性電路,而無需知道給定功能性電路被定位的特定SoC。
如所繪示,電力管理電路120經組態以追蹤與網路電路110相關聯的本端電力資訊130,且使用電力資訊130來判定滿足進入減少電力模式的本端條件。例如,電力資訊130可包括追蹤網路電路110已閒置期間的連續循環數目。計時器電路320經組態以基於例如網路時脈信號365而增量(或在其他實施例,遞減)時序值325。網路時脈信號365可由網路電路110使用以同步網路105上之異動的傳輸。當時序值325達到特定值時,電力管理電路120可比較電力資訊130與臨限335。若電力資訊130之值滿足臨限335(例如,電力資訊130中的閒置循環計數符合或超過臨限335),則可滿足用於使網路電路110進入減少電力模式的本端條件。
在一些實施例中,電力管理電路120進一步經組態以接收與其他相容網路電路之多者相關聯的其他本端電力資訊。在一些實施例中,在耦接至網路105的所有SoC上之所有電力管理電路可以週期性基礎或回應於來自一特定SoC的請求而彼此交換其各別電力資訊。如先前所揭示,在一些實施例中,網路105之SoC之一特定者可指定為主要SoC,而其餘SoC以輔助身分執行操作。在此類實施例中,主要SoC 101之主要電力管理電路120係可起始由網路105之網路電路110之任何者進入減少電力模式的一個電力管理電路。例如,可藉由將主要要啓用333設定為特定值來將SoC 101指定為網路105中的主要SoC。在判定已滿足本端條件後,以主要要身分執行操作的電力管理電路120可使用來自其他SoC的最近接收到的電力資訊130之值,或可向其他SoC請求電力資訊130之目前值。然後,電力管理電路120可判定是否可使網路電路110及/或定網路105中之其他網路電路處於減少電力模式。在各種實施例中,可比較來自其他網路電路之閒置循環計數與相同臨限335,或對於其他閒置循環計數可使用各別臨限值。在一些實施例中,來自其他SoC的電力資訊可包括來自本端電力資訊130的不同資訊。例如,在其他SoC上的電力管理電路可執行其是否滿足其本端條件的各別判定,且所接收的電力資訊包括用於其他SoC中之每一者是否滿足其本端條件的指示。
在其中SoC 101被指定為主要SoC一些實施例中,電力管理電路120進一步經組態以接收來自其他相容網路電路之不同者的進入減少電力模式之請求。使用所接收之其他本端電力資訊,電力管理電路120經組態以判定是否核准或拒絕請求。例如,用於特定SoC的網路電路可滿足用於進入減少電力模式的本端條件,且作出回應,傳送用於核准使特定網路電路處於減少電力模式的請求至SoC 101。在接收來自特定SoC的請求後,電力管理電路120回應於判定其他本端電力資訊滿足用於進入減少電力模式之全域條件的判定,而傳送回覆145至特定SoC,引起特定SoC之網路電路進入減少電力模式。在一些實施例中,若無額外回覆待傳送至網路105之其他SoC,則電力管理電路120可進一步判定可使網路電路110處於減少電力模式。
在其中SoC 101被指定為次要SoC的實施例中(例如,主要要啟用333被設定為不同值以指示次要SoC指定),為了判定其他本端電力資訊滿足用於進入減少電力模式的全域條件,電力管理電路120經組態以經由網路電路110傳送進入減少電力模式之請求240至其他相容網路電路之一特定者。例如,電力管理電路120首先判定滿足本端條件。接著,電力管理電路120傳送使網路電路110進入減少電力模式之請求240至指定的主要SoC。電力管理電路120進一步經組態以等待來自特定相容網路電路(例如,主要SoC之網路電路)之回覆,其中該回覆核准或拒絕請求。
為了使網路電路110進入減少電力模式,電力管理電路120可減少至網路電路110的一或多個電力信號之電壓或閘控該一或多個電力信號。此外或替代地,電力管理電路120可減少來自網路電路110的網路時脈信號365或閘控極網路時脈信號365之頻率。
在網路電路110已進入該減少電力模式後,無論SoC 101是否被指定為主要或次要SoC,電力管理電路120進一步經組態以回應於接收待經由網路電路110傳送一特定異動至其他相容網路電路之一者的一指示,使網路電路110退出減少電力模式。在網路電路110從減少電力模式喚醒後,電力管理電路120經組態以引起網路電路110傳送喚醒信號350至其他相容網路電路。在一些實施例中,喚醒信號350係不依賴網路時脈信號365的非同步信號,以由其他相容網路電路偵測。
以類似方式,若網路電路110處於減少電力模式且接收到來自網路105的其他網路電路中之一者的喚醒信號,則電力管理電路120可能夠偵測到喚醒信號的接收,同時閘控來自網路電路110的網路時脈信號365。例如,喚醒信號可係從邏輯低電壓至邏輯高電壓的轉變,或反之亦然。可藉由電力管理電路120偵測介面電路310之特定引腳上的轉變,允許電力管理電路120將電力信號、時脈信號、及/或網路電路110之任何其他狀態回復回至操作模式。在網路電路110處於操作模式之後,接著可將應答355傳送至網路105上的其他網路電路。
應注意,圖3的SoC僅是用於示範所揭示之概念。在其他實施例中,SoC可具有不同組態。例如,雖然展示三個功能性電路,但SoC可包括任何合適數目個功能性電路。所展示之來自介面電路的引腳連接數目僅僅係一個實例。在其他實施例中,介面電路可包括任何數目個引腳,包括例如數百或甚至數千個引腳。
圖1至圖3描述具有由共用網路連結的多個SoC之系統的各別實施例,及此類系統中所包括之SoC的實施例。所揭示之系統描述用於管理用於實施共用網路的網路電路之電力的技術。可使用各種技術來管理至這些網路電路的電力。圖4至圖6繪示用於管理用於實施多SoC網路的網路電路之電力模式的若干技術。
繼續進行圖4,其係描繪在圖1之系統100的實施例中由SoC 101a及101b執行以進入減少電力模式的任務之流程圖。如所說明,SoC 101a被指定為主要SoC,而SoC 101b係次要SoC。兩個欄指示SoC執行哪項任務。圖4描繪在作用中異動已完成之前請求進入減少電力模式的情況。
在所繪示的實例中,SoC 101a中的電力管理電路120a追蹤網路電路110a的閒置時間(任務402)。在SoC 101a追蹤此閒置時間時,SoC 101b經由網路電路110b傳送封包至SoC 101a,作為特定異動之部分(任務405)。封包包括預期來自SoC 101a回應其的特定請求(例如,流程控制訊息應答接收封包)。在SoC 101a能夠回應之前,電力管理電路120a判定網路電路110a的閒置時間滿足一臨限時間量(任務410)。例如,在網路電路110a已閒置期間的時脈循環數目滿足或超過臨限循環數目。回應於判定,電力管理電路120a使用網路電路110a以傳送進入減少電力模式之請求至SoC 101b、101c、及101d(任務415)。SoC 101c及101d可用進入減少電力模式之核准作出回應。然而,SoC 101b回應於判定SoC 101b中的網路電路110b正在等待特定異動完成而延遲對請求之回覆(任務420)。
在稍後時間點時,在SoC 101a內完成特定異動,且因此SoC 101a就緒以回應於所接收封包。經由網路電路110a傳送封包回應至網路電路110b(任務422)。在接收封包回應之後,SoC 101b判定特定異動已完成。回應於此判定特定異動已完成,SoC 101b可傳送對來自SoC 101a的進入減少電力模式之請求的回覆(任務425)。回覆包括進入減少電力模式之一核准,從而導致允許電力管理電路120b使網路電路110b處於減少電力模式(任務430)。以類似方式,回應於接收核准回應,允許電力管理電路120b使網路電路110b進入減少電力模式中(任務435)。
在圖5中,描繪圖4之情境的不同實施例。以與圖4類似之方式,SoC 101a指定為主要SoC,而SoC 101b係次要SoC,且描繪在作用中異動已完成之前請求減少電力模式的情況。圖5繪示回應於判定異動保持作用中而處置請求的不同方式。
如所描繪,使用電力管理電路120a的SoC 101a追蹤網路電路110a的閒置時間(任務502)。在SoC 101a追蹤閒置時間時,SoC 101b經由網路電路110b傳送封包至SoC 101a,作為特定異動之部分(任務505),該特定異動需要來自SoC 101a之回應。當處理對特定異動的回應時,電力管理電路120a繼續追蹤網路電路110a的閒置時間。電力管理電路120a判定網路110a已閒置達臨限時間量(任務510)。作出回應,電力管理電路120a經由網路電路110a傳送進入減少電力模式之請求至SoC 101b、101c及101d(任務515),接收來自SoC 101c及101d之減少電力模式之核准的回覆。應注意,圖5之任務502至515對應於圖4之任務402至415。
SoC 101b判定仍預期對特定異動的回應(任務520)。例如,網路電路110b包括異動佇列,在該異動佇列中的擱置中及/或作用中異動經追蹤直到完成。因此,SoC 101b回應於判定網路電路110b正在等待特定異動完成而傳送對減少電力模式請求的回覆,該回覆包括對進入減少電力模式之拒絕(任務525)。SoC 101a進一步經組態以回應於接收來自SoC 101b的拒絕回覆而取消進入減少電力模式之請求(任務535)。SoC 101a亦可傳送指示減少電力模式請求之取消的通知至SoC 101c及101d。
此外,如所示,SoC 101a重新初始化閒置計數,且電力管理電路120a可再重新開始追蹤新閒置時間(任務540)。若網路電路110a保持閒置達另一臨限時間量,則可傳送進入減少電力模式之另一請求。若特定異動已完成且網路電路110b亦滿足本端條件,則SoC 101b可用減少電力模式之核准作出回應。
圖4及圖5對應於用於管理其中傳送進入減少電力模式之請求的情況的不同技術。圖6描繪其中異動準備好由一個SoC 101傳送至SoC 101之一不同者時SoC 101處於減少電力模式的情況。如圖4及圖5中,SoC 101a指定為主要SoC,而SoC 101b係次要SoC。圖6繪示回應於判定異動準備好待傳送而將網路電路從減少電力模式喚醒的技術。
目前實例開始於圖1之系統100中的至少SoC 101a及101b之網路電路110處於減少電力模式。SoC 101b上的電力管理電路102b接收待經由網路電路110b傳送特定異動至SoC 101a之網路電路110a的指示(任務605)。在一些實施例中,網路電路110b之一部分可保持作用中,而其他部分處於減少電力模式,該作用中部分經組態以偵測內部匯流排(例如,圖3中的通訊匯流排360之一者)上的異動,及傳送指示至電力管理電路120b。在其他實施例中,內部匯流排內或耦接至內部匯流排之電路(諸如網路開關電路)回應於判定待經由網路電路110b傳送特定異動而傳送指示。
如所示,電力管理電路120b進一步經組態以回應於指示以引起網路電路110b退出減少電力模式(任務610)。例如,電力管理電路120b開啟對電力信號及/或時脈信號的一或多個閘極以引起網路電路110b從減少電力模式喚醒。在網路電路110b處於操作模式之後,電力管理電路120b引起網路電路110b傳送喚醒信號至網路電路110a,且若適用,至網路電路110c及110d(任務615)。
可以各種方式實施喚醒信號。例如,網路電路110之各者可包括用於非同步喚醒信號的專用引腳,該等專用引腳可藉由共同連接耦接使得所有喚醒信號引腳彼此連接。在減少電力模式中,共同連接上的電壓位準保持在第一邏輯位準(例如,低邏輯位準)。當網路電路110之一給定者想要喚醒其他網路電路時,該給定網路電路經由其各別喚醒信號引腳來確立共同連接上之相反邏輯位準(例如,高邏輯位準)。從第一邏輯位準至第二邏輯位準的轉變可引起耦接至共同連接的所有網路電路從減少電力模式喚醒。若特定網路電路110已喚醒,則其可忽略喚醒信號。在其他實施例中,可使用其他方法,諸如在網路介面之任何給定引腳(諸如位址或資料引腳)上產生一或多個轉變。
回應於由網路電路110b確立喚醒信號,以類似於電力管理電路120b喚醒網路電路110b的方式,電力管理電路120a引起網路電路110a退出減少電力模式(任務620)。在網路電路110a已退出減少電力模式並且處於操作模式之後,網路電路110a傳送應答至網路電路110b以指示網路電路110a現在能夠接收異動(任務625)。可依任何適合方式執行該應答。例如,網路電路110可具有用於確立應答的額外引腳,類似於喚醒信號引腳。在其他實施例中,經喚醒網路電路110可經由網路105傳送特定封包以指示其已返回至操作模式。如所示,網路電路110b進一步經組態以回應於接收來自網路電路110a之應答,而傳送特定異動至網路電路110a(任務630)。
在所繪示之實施例中,網路電路110b等待在傳送特定異動之前,等待來自目的地網路電路110a的應答。在其他實施例中,網路電路110b在傳送任何異動之前可等待直到接收到來自網路105中之所有網路電路的應答。此類技術可避免使一晚期喚醒之網路電路遺漏異動之一部分,在一些實施例中,其會引起由晚期喚醒網路電路執行不當或未知操作。
應注意,在圖4及圖5之技術中,指定的主要SoC起始進入減少電力模式之請求。在圖6所描繪之技術中,SoC中之任一者可起始從減少電力模式喚醒。
此外,圖4至圖6之技術僅是用於示範所揭示之概念的實例。在其他實施例中,可包括額外任務及/或一些任務可依不同順序或以並行方式執行。例如,在圖4中,可使網路電路110a及110b並行地處於其等各別減少電力模式(任務430及435)。
關於圖1至圖6所描述之電路及技術可用以管理包括在共用網路中之網路電路的電力模式。下文關於圖7及圖8描述與進入及退出減少電力模式相關聯的兩種方法。
現在移至圖7,展示用於使網路電路處於減少電力模式之方法的實施例的流程圖。方法700可藉由包括耦接在一起以形成共用網路的二或更多個SoC之系統執行,諸如圖1及圖2中之系統100及200。共同參見圖1與圖7,方法700可開始於方塊710。
在方塊710,方法700包括由位於各別晶粒上的複數個SoC 101之個別者交換用於各別個別SoC 101之電力資訊130。如圖1所示,SoC 101係由跨SoC 101之各別晶粒實施的網路105所連接。如上文所揭示,網路105可在SoC 101之各者內延伸,使得在SoC 101之一特定者上執行的軟體使用相同網路協定來傳達晶片上以及SoC 101之其他者。例如,在SoC 101a上執行的軟體以與存取SoC 101a之功能性電路相同的方式存取SoC 101b至101d上之功能性電路。在一些實施例中,交換電力資訊130包括由個別SoC 101依一特定時間間隔將其各別電力資訊130傳送至其他SoC 101。例如,電力資訊130可每秒傳送,或在特定數目個時脈循環(例如,網路時脈信號365之循環)之後傳送。在其他實施例中,交換電力資訊130包括第一SoC 101(例如,指定為主要SoC的SoC 101之一者)傳送對來自其餘SoC 101之電力資訊130的請求。
方法700,在方塊720,進一步包括由SoC 101a判定SoC 101a的電力資訊130a滿足用於進入減少電力模式的本端條件。如所繪示,電力資訊130a可包括可用於判定活動位準的任何合適資訊,且因此,網路電路110a之電力使用的指示。可比較電力資訊130a與臨限值(例如,圖3中之臨限335)以判定電力資訊130a的目前值滿足該臨限,從而指示網路電路110a之活動位準足夠低以使其處於減少電力模式。
在方塊730,方法700亦包括回應於分別判定SoC 101b、101c、及101d之電力資訊130b、130c及130d滿足用於進入減少電力模式的全域條件,而由SoC 101a進入減少電力模式。如所示,SoC 101a判定在方塊710中接收的電力資訊130b至130d是否滿足用於進入減少電力模式的全域條件。在各種實施例中,電力資訊130b至130d可包括與電力資訊130a相同的資訊、比電力資訊130a更少或更少的資訊,或與電力資訊130a不同的資訊。全域條件可對應於與本端條件相同的臨限或可具有不同的相依性。在一些實施例中,電力資訊130b至130d可包括指示各別SoC 101b至101d是否滿足用於進入該減少電力模式的其本端條件。
在一些實施例中,在SoC 101a判定滿足本端條件之後,執行交換電力資訊130。回應於此判定,方法700可包括由SoC 101a傳送進入減少電力模式之請求至SoC 101b至101d。接著,SoC 101a可從SoC 101b至101d接收各別電力資訊130b至130d,判定所接收電力資訊130b至130d是否滿足全域條件。在此類實施例中,從SoC 101b至101d接收的電力資訊130b至130d可包括對於SoC 101a進入減少電力模式之核准或拒絕。
在一些實施例中,方法700可結束於方塊730,其中SoC 101a回應於判定其他SoC 101亦滿足進入減少電力模式之條件而使網路電路110a處於減少電力模式。回應於判定網路電路110a無法處於減少電力模式,方法700可返回至方塊710。應注意,圖7之方法僅係用於使網路電路處於減少電力模式的實例。
現轉向圖8,繪示用於喚醒已處於該減少電力模式之網路電路之方法的實施例的流程圖。以與上述方法700類似的方式,方法800可由包括實施在複數個SoC上之網路的(諸如圖1及圖2之系統100及200)執行。方法800可在執行方法700之後執行,該方法導致網路電路之一些或全部進入減少電力模式。參照圖1及圖8,在方法700之方塊730已執行且系統100之網路電路110已處於該減少電力模式之後,方法800開始於方塊810。
在方塊810,方法800包括由SoC 101d判定待傳送之特定異動具有在SoC 101a內之目的地。如所示,電力管理電路120d接收特定異動準備好從SoC 101d傳送至SoC 101a中之代理的指示。在各種實施例中,指示可接收自來源代理、從在減少電力模式中保持作用中的網路電路110d之一部分、在SoC 101d中之本端網路開關、或類似者。
在方塊820,方法800亦包括由SoC 101d引起網路105之網路電路110d退出減少電力模式。電力管理電路120d回應於特定異動的指示,而回復網路電路110d中的電力及/或時脈信號,引起網路電路110d從減少電力模式喚醒。
在方塊830,方法800進一步包括由SoC 101d經由網路105確立喚醒信號。網路電路110d可傳送其已進入操作模式的指示至電力管理電路1120d。作為回應,電力管理電路120d可引起網路電路110d傳送喚醒信號(例如,在圖3之喚醒信號350)至網路電路110a。網路電路110d可利用用於傳送喚醒信號的任何合適方法,包括關於圖6所描述之方法。
在方塊840,方法800進一步包括回應於接收來自SoC 101a之應答,由SoC 101d傳送特定異動至SoC 101a。回應於來自網路電路110d的喚醒信號,網路電路110a從減少電力模式喚醒。在電力及/或時脈信號已回復至其操作位準之後,網路電路110a傳送應答至網路電路110d,指示網路電路110a運作且能夠接收異動。回應於此應答,從網路電路110d傳送特定異動至網路電路110a。
在一些實施例中,方法800可結束於區塊840,且系統之操作可返回至方法700。網路電路110a及110d可繼續保持作用中,交換與特定異動相關聯的封包,直到異動已完成。
使用如方法700及800中以及本揭露之其餘部分所描述的此類電力管理技術,可用複雜的分散式網路網狀架構來實現多SoC系統中的電力減少技術。當啟用時,此類複雜的網路網狀架構會消耗大量電力。電力減少技術(諸如所描述者)可減少電力消耗,從而延長電池壽命及/或減少系統內之熱位準。
應注意,圖7及圖8之方法僅為用於管理共用網路中之網路電路之電力模式的實例。設想所揭示之方法之變化,包括方法700及800之操作的組合,諸如,若多於一個網路用於耦接SoC(諸如圖2所示),則可並行地執行該等方法。
圖1至圖8繪示用於系統的設備及方法,其包括編碼及解碼在二或更多個介面電路之間傳送的資料封包。所揭示之邏輯運算系統之任何實施例可被包括於各種電腦系統之一或多者中,諸如桌上型電腦、膝上型電腦、智慧型手機、平板電腦、穿戴裝置及類似者。在一些實施例中,上述電路(例如,SoC 101)可實施在一或多個積體電路上。圖9繪示電腦系統900之實施例的方塊圖。在一些實施例中,電腦系統900可包括系統100及200之任何所揭示實施例。
在所繪示之實施例中,系統900包括SoC 906之二或更多個例項(對應於例如SoC 101之任何或全部),SoC可包括多種類型之處理電路,諸如中央處理單元(CPU)、圖形處理單元(GPU)、或否則通訊網狀架構、及至記憶體及輸入/輸出裝置的介面。在一些實施例中,SoC 906中之一或多個處理器包括多個執行線道(execution lane)及指令問題佇列。在各種實施例中,SoC 906耦接至外部記憶體902、周邊裝置904、與電力供應器908。在一實施例中,SoC 906可使用藉由網路105及/或205耦合在一起的SoC 101之組合來實施以作為單一SoC操作。
亦提供一電力供應器908,其將供應電壓供應至SoC 906以及將一或多個供應電壓供應至記憶體902及/或周邊裝置904。在各種實施例中,電力供應器908代表電池(例如,智慧型手機、膝上型電腦、或平板電腦、或其他裝置中的可再充電電池)。在一些實施例中,包括SoC 906之多於一個例項(且亦包括多於一個外部記憶體902)。
記憶體902係任何類型記憶體,諸如動態隨機存取記憶體(dynamic random access memory, DRAM)、同步DRAM (SDRAM)、雙倍資料速率(DDR、DDR2、DDR3等)SDRAM(包括諸如mDDR3等的SDRAM的行動版本,及/或諸如LPDDR2等的SDRAM的低功率版本)、RAMBUS DRAM (RDRAM)、靜態RAM (SRAM)等。一或多個記憶體裝置耦接至電路板上,以形成記憶體模組,諸如單列記憶體模組(single inline memory module, SIMM)、雙列記憶體模組(dual inline memory module, DIMM)等。替代地,裝置係以疊層晶片(chip-on-chip)組態、疊層封裝(package-on-package)組態、或多晶片模組組態利用SoC或積體電路安裝。
周邊裝置904取決於系統900之類型而包括任何所欲電路系統。例如,在一實施例中,周邊裝置904包括用於各種類型無線通訊之裝置,諸如WiFi、藍牙、蜂巢式、全球定位系統等。在一些實施例中,周邊裝置904亦包括額外儲存器,包括RAM儲存器、固態儲存器、或硬碟儲存器。周邊裝置904包括使用者介面裝置,諸如顯示螢幕(包括觸控顯示螢幕或多觸控顯示螢幕)、鍵盤、或其他輸入裝置、麥克風、揚聲器等。
如所繪示,系統900展示具有在廣泛範圍之區域中的應用。例如,系統900可使用為桌上型電腦910、膝上型電腦920、平板電腦930、蜂巢式或行動電話940、或電視機950(或耦接至電視機的機上盒)之晶片、電路系統、組件等的部分。亦說明了智慧型手錶及健康監測裝置960。在一些實施例中,智慧型手錶可包括多種通用運算相關功能。例如,智慧型手錶可提供電子郵件、電話服務、使用者日曆等等。在各種實施例中,健康監測裝置可係專用醫學裝置或否則包括專用健康相關功能性。例如,健康監測裝置可監測使用者之生命徵象,追蹤使用者對其他使用者的接近性以用於流行病皮社交距離之目的,接觸追跡、在健康危機之情況下向緊急服務提供通訊。流行病學功能(諸如接觸者追蹤(contact tracing))、提供對急診醫療服務之通訊等。在各種實施例中,上文所提及之智慧手錶可或可不包括一些或任何健康監測相關功能。亦設想其他穿戴裝置960,諸如圍繞頸部穿戴之裝置、附接至帽子或其他頭飾之裝置、可植入人體中之裝置、經設計以提供擴增及/或虛擬實境體驗的眼鏡等等。
系統900可進一步用作為基於雲端之服務970之部分。例如,先前所提及之裝置及/或其他裝置可存取雲端中的運算資源(亦即,遠端地定位硬體及/或軟體資源)。再進一步,系統900可用於除先前所提及之外的居家980之一或多個裝置中。例如,居家內之器具可監測及偵測值得關注之條件。例如,在居家內之各種裝置(例如,冰箱、冷氣系統等)可監測裝置之狀態,且提供應偵測到特定事件的警示給屋主(或例如修復設施)。替代地,恆溫器可監測家中之溫度,且可基於屋主對各種條件的回應歷史而自動調整溫氣/冷氣系統。圖9中亦說明了系統900對各種運輸模式990的應用。例如,系統900可用於航空器、火車、公共汽車、汽車租賃、自用汽車、從私人包船遊至遊輪的水面船隻、機車(用於租賃或自用)等等之控制及/或娛樂系統中。在各種情況下,系統900可用以提供自動化指引(例如,自動駕駛車輛)、一般系統控制及其他。
應注意,用於系統900之廣泛各種潛在應用可包括多種效能、成本及電力消耗要求。因此,可擴展之解決方案能夠使用一或多個積體電路以提供效能、成本及電力消耗的適合組合可係有益的。此等及許多其他實施例皆可行及設想。應注意,圖9中所繪示之裝置及應用僅為說明性且不意欲為限制性。其他裝置係可行且經設想的。
如關於圖9所揭示,電腦系統900可包括耦合在一起之二或更多個積體電路,且包括在個人電腦、智慧型手機、平板電腦或其他類型的運算裝置內。下文圖10呈現一種用於使用設計資訊來設計及產生積體電路之方法。
圖10係繪示根據一些實施例之儲存電路設計資訊的非暫時性電腦可讀儲存媒體之實例的方塊圖。圖10的實施例可使用在處理中以設計及製造積體電路(例如,諸如如圖1至圖3所示的SoC 101)。在所說明的實施例中,半導體製造系統1020組態成處理儲存在非暫時性電腦可讀儲存媒體1010上的設計資訊1015,並基於設計資訊1015製造積體電路1030(例如,SoC 101)。
非暫時性電腦可讀儲存媒體1010可包含各種適當類型的記憶體裝置或儲存裝置之任何者。非暫時性電腦可讀儲存媒體1010可係安裝媒體(例如CD ROM、軟碟、或磁帶裝置);一電腦系統記憶體或-隨機存取記憶體(諸如DRAM、DDR RAM、SRAM、EDO RAM、Rambus RAM等);一非揮發性記憶體(諸如快閃、磁性媒體(例如硬碟)、或光學儲存);暫存器或其他類似類型的記憶體元件等。非暫時性電腦可讀儲存媒體1010亦可包括其他類型的非暫時性記憶體或其組合。非暫時性電腦可讀儲存媒體1010可包括可駐留在不同位置(例如,在透過網路連接的不同電腦系統中)之二或更多個記憶體媒體。
設計資訊1015可使用各種適當的電腦語言(包括硬體描述語言)之任何者指定,諸如但不限於:VHDL、Verilog、SystemC、SystemVerilog、RHDL、M、MyHDL等。可由半導體製造系統1020使用設計資訊1015以製造積體電路1030之至少一個部分。例如,設計資訊1015的格式可由至少一個半導體製造系統(諸如,半導體製造系統1020)辨識。在一些實施例中,設計資訊1015可包括指定電路元件庫(celllibrary)的元件以及彼等之連接性的接線對照表。也可將在包括在積體電路1030中之電路的邏輯合成期間使用的一或多個電路元件庫包括在設計資訊1015中。此種電路元件庫可包括指示包括在電路元件庫中之電路元件的裝置或電晶體層級接線對照表、遮罩設計資料、特性化資料、及類似者的資訊。
在各種實施例中,積體電路1030可包括一或多個客製巨集單元,諸如,記憶體、類比或混合信號電路、及類似者。在此類情形中,設計資訊1015可包括與所包括之巨集單元有關的資訊。此種資訊可無限制地包括線路圖擷取資料庫、遮罩設計資料、行為模型、及裝置或電晶體層級接線對照表。如本文所使用的,遮罩設計資料可根據圖形資料系統(GDSII)或任何其他合適格式格式化。
半導體製造系統1020可包括經組態以製造積體電路的各種適當元件的任何者。例如,此可包括用於沉積半導體材料(例如,在可包括遮罩之一晶圓上)、移除材料、變更所沉積之材料的形狀、改質材料(例如,藉由摻雜材料或使用紫外線處理修改介電常數)等的元件。半導體製造系統1020亦可經組態以執行所製造之電路的各種測試以供正確操作。
在各種實施例中,積體電路1030經組態以根據由設計資訊1015所指定之一電路設計操作,其可包括執行如本文所述的功能性之任何者。例如,積體電路1030可包括本文展示或描述之各種元件的任何者。進一步地,積體電路1030可經組態以結合其他組件執行本文所述的各種功能。此外,本文中所描述之功能性可藉由多個連接的積體電路(諸如圖4中之積體電路405a及405b)予以執行。
如本文中所使用,具有「指定一電路經組態以…之一設計的設計資訊」之形式的詞組並非意味所涉電路必須為了滿足該要素而製造。相反,此詞組指示設計資訊所描述之一電路一經製成將經組態以執行所指示的動作或將包括指定組件。
***
本揭露包括「實施例(embodiment)」之提及,其係所揭示之概念之非限制性實施方案。提及「一實施例(an embodiment)」、「一個實施例(one embodiment)」、「一特定實施例(a particular embodiment)」、「一些實施例(some embodiments)」、「各種實施例(various embodiments)」、及類似者不必然指稱相同實施例。設想大量可行的實施例,包括詳細描述之具體實施例,以及落在本揭露之精神或範圍內的修改或替代例。並非所有實施方案將必須表現本文中所描述之潛在優點之任何者或全部。
除非另有說明,否則具體實施例並非意欲將基於本揭露之草擬的申請專利範圍之範圍限於所揭示之形式,即使僅描述關於一特定特徵的一單一實例。所揭露之實施例意欲係說明性而非限制,而沒有與此相反的任何陳述。本申請案係旨在涵蓋此類替代例、修改例、與均等物,此等對於受益於本揭露之所屬技術領域中具有通常知識者來說將是顯而易見的。
可以與此揭露一致的任何合適方式結合特定特徵、結構、或特性。因此,本揭露旨在包括本文中所揭示之任何特徵或特徵組合(明確或隱式)或其任何廣義。據此,在此申請案之審查期間(或主張其優先權之申請案)可對特徵之任何此類組合制定新請求項。具體而言,參照隨附申請專利範圍,可組合來自附屬請求項的特徵與獨立請求項之特徵,且可依任何適合方式組合來自各別獨立請求項之特徵,而非僅在隨附申請專利範圍中列舉之特定組合。
例如,雖然隨附附屬請求項經草擬使得每一者附屬於單一其他請求項,亦設想其他相依性,包括下列:請求項3(可附屬於請求項1至2中之任一者);請求項4(任一前述請求項);請求項5(請求項4)等等。若適當,亦設想以一種法定類型(例如,設備)草擬之請求項意欲支持另一種法定類型(例如,方法)之對應請求項。
***
因為本揭露係一法律文件,所以各種用語及詞組可受到行政與司法解釋的規約。公告特此以下段落以及在整份揭露內容提供的定義將用於判定如何解釋基於本揭露所草擬的申請專利範圍。
除非上下文另外明確指示,否則提及「「一(a)」、「一(an)」及「該(the)」之單數形式意欲意謂「一或多個」。因此,在一請求項提及「一項目(an item)」不排除該項目的額外例項。
在本文中,字語「可(may)」在本文中以許可意涵使用(即,具有可能以、能夠),且非以強制意涵使用(即,必須)。
用語「包含(comprising)」及「包括(including)」及其形式係開放式,意指「包括但不限於(including, but not limited to)」。
當本揭露中關於一選項清單使用用語「或(or)」時,其通常將被理解為以包含性意涵使用,除非上下文另有提供。因此,陳述「x或y (x or y)」相當於「x或y、或兩者(x or y, or both)」,涵蓋x,但不涵蓋y;涵蓋y,但不涵蓋x;及涵蓋x與y兩者。另一方面,諸如「x或y任何者但非兩者(either x or y, but not both)」的詞組清楚表明「或(or)」係以排他性含意意義使用。
陳述「w、x、y、或z、或其任何組合(w, x, y, or z, or any combination thereof)」或「...w、x、y、及z之至少一者(at least one of … w, x, y, and z)」意欲涵蓋涉及在該集合中的單一元件至多總數目個元件的所有可能性。例如,給定集合[w, x, y, z],這些詞組涵蓋該集合之任何單一元件(例如,w,但沒有x、y、或z (w but not x, y, or z))、任何二個元件(例如,w與x,但沒有y或z (w and x, but not y or z))、任何三個元件(例如,w、x與y,但沒有z (w, x, and y, but not z))、及所有四個元件。因此,詞組「...w、x、y、及z之至少一者(atleastoneof…w, x, y, and z)」係指該集合[w, x, y, z]之至少一個元件,藉此涵蓋此選項清單中的所有可行組合。此詞組並不解讀為需要w之至少一個例項、x之至少一個例項、y之至少一個例項、及z之至少一個例項。
在本揭露中,各種「標示」可置於名詞之前。除非上下文另有提供,否則用於一特徵的不同標示(例如,「第一電路(first circuit)」、「第二電路(second circuit)」、「特定電路(specific circuit)」、「給定電路(given circuit)」等)係指該特徵的不同例項。額外地,除非另有說明,否則標示「第一(first)」、「第二(second)」、及「第三(third)」當應用至一特定特徵時並非意味任何類型的順序(例如,空間、時間、邏輯等)。
在本揭露中,不同的實體(其等可能被不同地稱為「單元(unit)」、「電路(circuit)」、其他組件等)可被描述或主張為「經組態(configured)」以執行一或多個任務或操作。此表示法(『實體』經組態以『執行一或多個任務』)在本文中係用以指稱結構(即,實體之物)。具體而言,此表示法係用以指示此結構係經配置以在操作期間執行該一或多個任務。即使一結構目前並未被操作,仍可稱該結構「經組態以(configured to)」執行某任務。因此,經說明或敘述為「經組態以」執行某任務的一實體,係指實體之物,諸如裝置、電路、儲存有可執行用以實施該任務之程式指令的記憶體等。此用語在本文中並非用以指稱無形之物。
硬體電路可包括下列者之任何組合:組合邏輯電路系統、時控儲存裝置(諸如正反器、暫存器、鎖存器等)、有限狀態機、記憶體(諸如靜態隨機存取記憶體或嵌入式動態隨機存取記憶體)、客製化設計電路系統、類比電路系統、可程式化邏輯陣列等。同樣地,為了便於說明,各種單元/電路/組件可被描述為執行一或若干任務。此種描述應被解讀成包括用語「經組態以」。
在一實施例中,根據本揭露之硬體電路可藉由以硬體描述語言(HDL)如Verilog或VHDL來編碼電路之描述而實施。HDL描述可依據針對一給定積體電路製造技術所設計的元件庫而合成,且可針對時序、功率及其他原因進行修改以產生一最終設計資料庫,該最終設計資料庫可傳送至製造廠以製造遮罩,最後生產出積體電路。一些硬體電路或其部分亦可在一簡圖編輯器(schematic editor)中經客製化設計,並隨合成電路系統被轉移至積體電路設計中。積體電路可包括電晶體,且可進一步包括其他電路元件(例如,被動元件諸如電容器、電阻器、電感器等)及電晶體與電路元件間之互連件。一些實施例可實施多個積體電路,該多個積體電路經耦合在一起以實施硬體電路,且/或在一些實施例中可使用離散元件。替代地,HDL設計可經合成至一可程式化邏輯陣列,諸如現場可程式化閘陣列(FPGA),且可於FPGA中實施。
用語「經組態以(configured to)」並非意欲意指「可組態以(configurable to)」。例如,未經程式化的FPGA將不被視為「經組態以(configuredto)」執行某特定功能。然而,此未經程式化的FPGA可係「可組態以(configurable to)」執行該功能。
在後附申請專利範圍中描述一結構「經組態以」執行一或多個任務,係明確地意欲不援引35 U.S.C. § 112(f)對該請求項元件進行解讀。若申請人意欲在審查期間援引章節112(f),將使用「用以『執行一功能』之構件」這樣的句構來陳述請求項元件。
詞組「基於(based on)」係用以敘述影響一判定的一或多個因素。此用語不排除可能有額外因素可影響判定。意即,一判定可單獨基於特定因素,或基於該等特定因素以及其他未指出因素。考慮用語「基於B判定A(determine A based on B)」。此用語指出,B係一用以判定A之因素,或B影響A之判定。此用語不排除亦可基於一些其他因素例如C來判定A。此用語亦意欲涵括其中A係單獨基於B而判定的一實施例。如本文所用,用語「基於(based on)」與用語「至少部分地基於(based at least in part on)」同義。
用語「回應於(in response to)」描述觸發一效應的一或多個因素。此片語不排除額外因素可影響或以其他方式觸發效應之可能性。意即,一效應可係單獨回應於該等因素,或可回應於該等被指出因素以及其他未指出因素。考慮片語「回應於B而執行A(perform A in response to B)」。此片語指出B係一觸發A之執行的因素。此片語不排除亦可能回應於一些其他因素(諸如C)而執行A。此片語亦意欲涵括其中A係單獨回應於B而執行的一實施例。
100:系統
101:系統單晶片(SoC)
101a:系統單晶片(SoC)
101b:系統單晶片(SoC)
101c:系統單晶片(SoC)
101d:系統單晶片(SoC)
105:網路
110a:網路電路
110b:網路電路
110c:網路電路
110d:網路電路
120:電力管理電路
120a:電力管理電路
120b:電力管理電路
120c:電力管理電路
120d:電力管理電路
130:電力資訊
130a:電力資訊
130b:電力資訊
130c:電力資訊
130d:電力資訊
145:回覆
200:系統
205:網路
235:異動
240:請求
245b:回覆「拒絕」
245d:回覆「拒絕」
245c:回覆「核准」
310:介面電路
320:計時器電路
325:時序值
330:暫存器
333:主要啓用
335:臨限
350:喚醒
355:應答
360:通訊匯流排-(網路105之部分)
365:網路時脈信號
370a:功能性電路
370b:功能性電路
370c:功能性電路
110:網路電路
402:追蹤閒置時間
405:傳送封包
410:閒置時間>臨限
415:傳送進入減少電力模式之請求
420:等待對先前異動的回應
422:傳送對封包的回應
425:接收回應後傳送回覆
430:進入減少電力模式
435:進入減少電力模式
502:追蹤閒置時間
505:傳送封包
510:閒置時間>臨限
515:傳送進入減少電力模式之請求
520:預期對該所傳送封包之回應
525:傳送拒絕
535:取消減少電力模式
540:追蹤閒置時間
605:接收用於網路電路之異動的指示
610:退出減少電力模式
615:確立喚醒信號
620:退出減少電力模式
625:傳送應答
630:傳送封包
700:方法
710:由位於各別晶粒上的複數個系統(系統單晶片(SoC))之個別者交換用於該各別個別系統單晶片(SoC)之本端電力資訊,其中該複數個系統單晶片(SoC)係由跨該等各別晶粒實施的一網路所連接
720:由該複數個系統單晶片(SoC)之一給定系統單晶片(SoC)判定該給定系統單晶片(SoC)之本端電力資訊是否滿足用於進入一減少電力模式之一本端條件。
730:回應於判定該等其餘系統單晶片(SoC)之該本端電力資訊滿足用於進入該減少電力模式之一全域條件,而由該給定系統單晶片(SoC)進入所減少電力模式。
800:方法
810:由複數個系統單晶片(SoC)之一不同系統單晶片(SoC)判定待傳送的一特定異動具有在該給定系統單晶片(SoC)內之一目的地。
820:由該不同系統單晶片(SoC)引起該網路之一本端網路電路退出減少電力模式。
830:由該不同系統單晶片(SoC)經由該網路確立一等待信號。
840:回應於接收來自該給定系統單晶片(SoC)之一就緒指示,由該不同系統單晶片(SoC)傳送異動至該給定系統單晶片(SoC)。
900:系統
902:外部記憶體
906:系統單晶片(SOC)
904:周邊裝置
908:電力供應器
910:桌上型電腦
920:膝上型電腦
930:平板電腦
940:蜂巢式或行動電話
950:電視機
960:智慧型手錶及健康監測裝置
970:基於雲端之服務
980:居家
990:運輸模式
1010:非暫時性電腦可讀媒體
1015:設計資訊
1020:半導體製造系統
1030:積體電路
下文實施方式將參照隨附圖式,以下將簡單說明隨附圖式。
〔圖1〕繪示包括經由共用網路耦接之複數個系統單晶片之系統的實施例的方塊圖。
〔圖2〕展示包括經由二個共用網路耦接之複數個系統單晶片(SoC)之另一系統的實施例的方塊圖。
〔圖3〕描繪可用於圖1及圖2之系統中之SoC的實施例的方塊圖。
〔圖4〕繪示在系統中由藉由共用網路耦接的兩個SoC執行的任務以使網路電路處於減少電力模式的描繪。
〔圖5〕展示在系統中由藉由共用網路耦接的兩個SoC執行的任務以使網路電路處於減少電力模式的描繪。
〔圖6〕描繪在系統中由藉由共用網路耦接的兩個SoC執行的任務以喚醒處於減少電力模式之網路電路。
〔圖7〕展示用於使網路電路處於減少電力模式的方法的實施例的流程圖。
〔圖8〕展示用於喚醒處於減少電力模式之網路電路之方法的實施例的流程圖。
〔圖9〕描繪包括耦接積體電路之系統的各種實施例。
〔圖10〕展示根據一些實施例之一實例電腦可讀媒體的方塊圖。
雖然本揭露內容中所述實施例可受到各種修改及具有替代形式,其特定實施例係以圖式中實例之方式提出,且將在本文中詳細說明。然而,應理解,圖式及其詳細說明並非意欲將實施例侷限於所揭示之具體形式,而是意欲涵括所有落於所附申請專利範圍的精神與範圍內的修改、均等例及替代例。
無
100:系統
101a:系統單晶片(SoC)
101b:系統單晶片(SoC)
101c:系統單晶片(SoC)
101d:系統單晶片(SoC)
105:網路
110a:網路電路
110b:網路電路
110c:網路電路
110d:網路電路
120a:電力管理電路
120b:電力管理電路
120c:電力管理電路
120d:電力管理電路
130a:電力資訊
130b:電力資訊
130c:電力資訊
130d:電力資訊
Claims (20)
- 一種系統,其包含: 複數個系統單晶片(SoC),其等位於各別晶粒上,其中該複數個SoC藉由一網路連接,該網路之各別部分位於該等各別晶粒之不同者上,且其中該複數個SoC及該網路經組態以作為一單一邏輯運算系統操作; 其中該複數個SoC經組態以交換指示在該網路之其等各別部分上發生的網路活動的本端電力資訊;及 其中該複數個SoC之一給定者經組態以: 判定已滿足用於使對應於該給定SoC的該網路之該各別部分處於一減少電力模式的一本端條件;及 回應於判定滿足該減少電力模式的一全域條件而使該網路之該各別部分處於該減少電力模式,其中基於用於該複數個SoC之其餘者的目前本端電力資訊來評估該全域條件。
- 如請求項1之系統,其中為了交換本端電力資訊,該複數個SoC經組態以依一特定時間間隔將其等各別本端電力資訊傳送至該複數個之至少一個其他SoC。
- 如請求項1之系統,其中為了交換本端電力資訊,該給定SoC經組態以: 傳送進入該減少電力模式之一請求至該等其餘SoC; 從該等其餘SoC接收該等對應SoC之該各別本端電力資訊;及 判定該所接收本端電力資訊是否滿足該全域條件。
- 如請求項1之系統,其中該給定SoC係經組態以起始進入該減少電力模式的一主要SoC;且 其中該等其餘SoC係經組態以等待來自該主要SoC進入該減少電力模式之一指示的次要SoC。
- 如請求項1之系統,其中為了使該網路之該各別部分處於該減少電力模式,該給定SoC經組態以: 傳送進入該減少電力模式之一請求至該等其餘SoC;及 等待來自該等其餘SoC之各別回覆,其中該等各別回覆核准或拒絕該請求。
- 如請求項5之系統,其中該等其餘SoC之一特定SoC進一步經組態以: 回應於判定該特定SoC中的該網路之該各別部分正在等待一異動完成而延遲傳送對該請求之一回覆;及 回應於判定該異動已完成而傳送該回覆,其中該回覆包括進入該減少電力模式之一核准。
- 如請求項5之系統,其中該等其餘SoC之一特定SoC進一步經組態以:回應於判定該特定SoC中的該網路之該各別部分正在等待一異動完成而傳送對該請求之一回覆,其中該回覆包括進入該減少電力模式之一拒絕;及 其中該給定SoC進一步經組態以回應於接收該拒絕回覆而取消進入該減少電力模式之該請求。
- 一種方法,其包含: 藉由位於各別晶粒上的複數個系統單晶片(SoC)之個別者交換用於一各別個別SoC之本端電力資訊,其中該複數個SoC係由跨該等各別晶粒實施的一網路所連接; 藉由該複數個SoC之一給定SoC判定該給定SoC之該本端電力資訊滿足用於進入一減少電力模式之一本端條件;及 回應於判定該等其餘SoC之該本端電力資訊滿足用於進入該減少電力模式之一全域條件,而藉由該給定SoC進入該減少電力模式。
- 如請求項8之方法,其進一步包含藉由在該複數個SoC之一第一SoC上執行的軟體以與該第一SoC上之功能性電路相同的方式來存取該複數個SoC之一第二SoC上之功能性電路。
- 如請求項8之方法,其進一步包含: 藉由該複數個SoC之一不同SoC判定待傳送的一異動具有在該給定SoC內之一目的地;及 藉由該不同SoC經由該網路確立一喚醒信號。
- 如請求項10之方法,其進一步包含回應於接收來自該給定SoC之一應答,而藉由該不同SoC傳送該異動至該給定SoC。
- 如請求項8之方法,其中交換該本端電力資訊包括:藉由該等個別SoC依一特定時間間隔將各別本端電力資訊傳送至該複數個之其他SoC。
- 如請求項8之方法,其中該交換本端電力資訊包括: 藉由該給定SoC傳送進入該減少電力模式之一請求至該複數個之該等其餘SoC; 藉由該給定SoC從該等其餘SoC接收該等對應其餘SoC之該各別本端電力資訊;及 判定該所接收本端電力資訊是否滿足該全域條件。
- 如請求項13之方法,其中從該等其餘SoC接收之該各別本端電力資訊包含對於該給定SoC進入該減少電力模式的一核准或拒絕。
- 一種設備,其包含: 一網路電路,其經組態以: 在耦接至其他相容網路電路時形成一網路之一部分;及 與該等其他相容網路電路交換複數個異動; 一電力管理電路,其經組態以: 追蹤與該網路電路相關聯的本端電力資訊; 使用該本端電力資訊判定滿足進入一減少電力模式的一本端條件; 接收與該等其他相容網路電路之多者相關聯的其他本端電力資訊;及 回應於判定該其他本端電力資訊滿足用於進入該減少電力模式的一全域條件,引起該網路電路進入該減少電力模式。
- 如請求項15之設備,其中該電力管理電路進一步經組態以: 回應於接收一特定異動待經由該網路電路傳送至該等其他相容網路電路之一者的一指示,使該網路電路退出該減少電力模式;及 引起該網路電路傳送一喚醒信號至該等其他相容網路電路。
- 如請求項16之設備,其中該網路電路進一步經組態以回應於接收來自該等其他相容網路電路的應答,將該特定異動傳送至該等其他相容網路電路之該一者。
- 如請求項15之設備,其中該電力管理電路進一步經組態以: 從該等其他相容網路電路之一不同者接收進入該減少電力模式的一請求;及 使用該所接收其他本端電力資訊,判定是否核准或拒絕該請求。
- 如請求項15之設備,其中為了判定該其他本端電力資訊滿足用於進入該減少電力模式的該全域條件,該電力管理電路經組態以: 經由該網路電路傳送進入該減少電力模式的一請求至該等其他相容網路電路之一特定者;及 等待來自該特定相容網路電路的一回覆,其中該回覆核准或拒絕該請求。
- 如請求項15之設備,其進一步包含一處理器電路,該處理器電路被包括在與該網路電路及該電力管理電路相同的一積體電路上,且經組態以藉由使用與該積體電路上之功能性電路相同的一網路協定來存取耦接至該等其他相容網路電路的功能性電路。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/318,670 | 2021-05-12 | ||
US17/318,670 US11592889B2 (en) | 2021-05-12 | 2021-05-12 | Die-to-die dynamic clock and power gating |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202248855A true TW202248855A (zh) | 2022-12-16 |
TWI806600B TWI806600B (zh) | 2023-06-21 |
Family
ID=83997803
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW112120489A TW202340949A (zh) | 2021-05-12 | 2022-05-11 | 用於電力閘控之系統、方法及設備 |
TW111117565A TWI806600B (zh) | 2021-05-12 | 2022-05-11 | 用於電力閘控之系統、方法及設備 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW112120489A TW202340949A (zh) | 2021-05-12 | 2022-05-11 | 用於電力閘控之系統、方法及設備 |
Country Status (6)
Country | Link |
---|---|
US (2) | US11592889B2 (zh) |
KR (1) | KR20230170049A (zh) |
CN (1) | CN117321538A (zh) |
DE (1) | DE112022001472T5 (zh) |
TW (2) | TW202340949A (zh) |
WO (1) | WO2022240608A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117130671A (zh) * | 2023-01-16 | 2023-11-28 | 荣耀终端有限公司 | 一种系统唤醒方法、电子设备及计算机可读存储介质 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7155623B2 (en) * | 2003-12-03 | 2006-12-26 | International Business Machines Corporation | Method and system for power management including local bounding of device group power consumption |
US7631199B2 (en) * | 2005-06-30 | 2009-12-08 | Intel Corporation | Various methods and apparatuses for power states in a controller |
US7337339B1 (en) * | 2005-09-15 | 2008-02-26 | Azul Systems, Inc. | Multi-level power monitoring, filtering and throttling at local blocks and globally |
US20080307240A1 (en) | 2007-06-08 | 2008-12-11 | Texas Instruments Incorporated | Power management electronic circuits, systems, and methods and processes of manufacture |
IT1394342B1 (it) | 2009-06-15 | 2012-06-06 | St Microelectronics Srl | "risparmio energetico in sistemi on-chip" |
US8635476B2 (en) * | 2010-12-22 | 2014-01-21 | Via Technologies, Inc. | Decentralized power management distributed among multiple processor cores |
US9250682B2 (en) * | 2012-12-31 | 2016-02-02 | Intel Corporation | Distributed power management for multi-core processors |
KR102060430B1 (ko) | 2013-08-08 | 2020-02-11 | 삼성전자주식회사 | 웨이크-업 시간을 줄일 수 있는 시스템 온 칩. 애플리케이션 프로세서, 및 상기 시스템 온 칩을 포함하는 컴퓨터 시스템 |
US9671844B2 (en) * | 2013-09-26 | 2017-06-06 | Cavium, Inc. | Method and apparatus for managing global chip power on a multicore system on chip |
KR102280734B1 (ko) | 2014-12-09 | 2021-07-21 | 삼성전자주식회사 | 시스템 온 칩과 이를 포함하는 모바일 전자 기기 |
US11200192B2 (en) | 2015-02-13 | 2021-12-14 | Amazon Technologies. lac. | Multi-mode system on a chip |
US9946676B2 (en) | 2015-03-26 | 2018-04-17 | Intel Corporation | Multichip package link |
US10169262B2 (en) | 2015-07-14 | 2019-01-01 | Qualcomm Incorporated | Low-power clocking for a high-speed memory interface |
KR102539044B1 (ko) | 2017-10-30 | 2023-06-01 | 삼성전자주식회사 | 시스템 온 칩의 구동 방법, 이를 수행하는 시스템 온 칩 및 이를 포함하는 전자 시스템 |
US11656676B2 (en) | 2018-12-12 | 2023-05-23 | Intel Corporation | System, apparatus and method for dynamic thermal distribution of a system on chip |
US11126245B2 (en) | 2019-06-21 | 2021-09-21 | Intel Corporation | Device, system and method to determine a power mode of a system-on-chip |
-
2021
- 2021-05-12 US US17/318,670 patent/US11592889B2/en active Active
-
2022
- 2022-05-02 DE DE112022001472.5T patent/DE112022001472T5/de active Pending
- 2022-05-02 CN CN202280034262.2A patent/CN117321538A/zh active Pending
- 2022-05-02 WO PCT/US2022/027322 patent/WO2022240608A1/en active Application Filing
- 2022-05-02 KR KR1020237038856A patent/KR20230170049A/ko unknown
- 2022-05-11 TW TW112120489A patent/TW202340949A/zh unknown
- 2022-05-11 TW TW111117565A patent/TWI806600B/zh active
-
2023
- 2023-02-27 US US18/174,985 patent/US20230214350A1/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117130671A (zh) * | 2023-01-16 | 2023-11-28 | 荣耀终端有限公司 | 一种系统唤醒方法、电子设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN117321538A (zh) | 2023-12-29 |
US20220365579A1 (en) | 2022-11-17 |
TW202340949A (zh) | 2023-10-16 |
US20230214350A1 (en) | 2023-07-06 |
KR20230170049A (ko) | 2023-12-18 |
US11592889B2 (en) | 2023-02-28 |
TWI806600B (zh) | 2023-06-21 |
WO2022240608A1 (en) | 2022-11-17 |
DE112022001472T5 (de) | 2023-12-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102355989B1 (ko) | 다중 노드 시스템 저전력 관리 | |
EP4398114A2 (en) | Scalable system on a chip | |
US11886365B2 (en) | DMA control circuit with quality of service indications | |
TWI806600B (zh) | 用於電力閘控之系統、方法及設備 | |
CN115221108A (zh) | 多个独立的芯片上互连件 | |
US20240184355A1 (en) | Latency Events in Multi-Die Architecture | |
US20240160267A1 (en) | Telemetry Push Aggregation | |
US20240201766A1 (en) | System-on-Chip with DVFM Protection Circuit | |
US11853148B2 (en) | Datalogging circuit triggered by a watchdog timer | |
US20230009970A1 (en) | In-band communication interface power management fencing | |
US20220365900A1 (en) | Programmed Input/Output Message Control Circuit | |
US11513848B2 (en) | Critical agent identification to modify bandwidth allocation in a virtual channel | |
US7949978B2 (en) | Structure for system architectures for and methods of scheduling on-chip and across-chip noise events in an integrated circuit | |
US11900146B2 (en) | Memory controller with separate transaction table for real time transactions | |
US12067275B1 (en) | Memory bank with subdomains | |
US11755489B2 (en) | Configurable interface circuit | |
CN117882028A (zh) | 基于限制硬件强制的功率控制的功率管理 | |
WO2023141295A1 (en) | Segment to segment network interface |