TWI817741B - 管理電路以及電流抑制方法 - Google Patents
管理電路以及電流抑制方法 Download PDFInfo
- Publication number
- TWI817741B TWI817741B TW111136541A TW111136541A TWI817741B TW I817741 B TWI817741 B TW I817741B TW 111136541 A TW111136541 A TW 111136541A TW 111136541 A TW111136541 A TW 111136541A TW I817741 B TWI817741 B TW I817741B
- Authority
- TW
- Taiwan
- Prior art keywords
- current
- processor cores
- throttling
- management circuit
- processor
- Prior art date
Links
- 230000001629 suppression Effects 0.000 title claims abstract description 25
- 238000000034 method Methods 0.000 title claims description 19
- 230000000694 effects Effects 0.000 claims abstract description 34
- 238000001514 detection method Methods 0.000 claims abstract description 11
- 230000007704 transition Effects 0.000 claims description 21
- 230000008030 elimination Effects 0.000 claims description 4
- 238000003379 elimination reaction Methods 0.000 claims description 4
- 230000007774 longterm Effects 0.000 claims description 4
- 230000004913 activation Effects 0.000 claims description 3
- 238000006243 chemical reaction Methods 0.000 claims description 2
- 238000001994 activation Methods 0.000 claims 2
- 230000000977 initiatory effect Effects 0.000 claims 2
- 239000002699 waste material Substances 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 17
- 230000007246 mechanism Effects 0.000 description 3
- 239000003990 capacitor Substances 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000008859 change Effects 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
- 239000013078 crystal Substances 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000017525 heat dissipation Effects 0.000 description 1
- 230000009249 intrinsic sympathomimetic activity Effects 0.000 description 1
- 238000012417 linear regression Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000003068 static effect Effects 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
- 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/3296—Power saving characterised by the action undertaken by lowering the supply or operating voltage
-
- 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/28—Supervision thereof, e.g. detecting power-supply failure by out of limits supervision
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02J—CIRCUIT ARRANGEMENTS OR SYSTEMS FOR SUPPLYING OR DISTRIBUTING ELECTRIC POWER; SYSTEMS FOR STORING ELECTRIC ENERGY
- H02J7/00—Circuit arrangements for charging or depolarising batteries or for supplying loads from batteries
- H02J7/0029—Circuit arrangements for charging or depolarising batteries or for supplying loads from batteries with safety or protection devices or circuits
- H02J7/00304—Overcurrent protection
-
- 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/324—Power saving characterised by the action undertaken by lowering clock frequency
-
- 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/3243—Power saving in microcontroller unit
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02J—CIRCUIT ARRANGEMENTS OR SYSTEMS FOR SUPPLYING OR DISTRIBUTING ELECTRIC POWER; SYSTEMS FOR STORING ELECTRIC ENERGY
- H02J7/00—Circuit arrangements for charging or depolarising batteries or for supplying loads from batteries
- H02J7/0063—Circuit arrangements for charging or depolarising batteries or for supplying loads from batteries with circuits adapted for supplying loads from the battery
-
- 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
-
- 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)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Power Engineering (AREA)
- Power Sources (AREA)
- Measurement Of Current Or Voltage (AREA)
- Emergency Protection Circuit Devices (AREA)
- Control Of Electrical Variables (AREA)
Abstract
本發明提供了一種管理電路以及執行電流抑制的方法,管理電路包括檢測電路和節流信號產生器。檢測電路用於接收來自每個處理器核的活動信號,並基於多個活動信號估計多個處理器核消耗的總電流。其中活動信號指示與給定時間段內處理器核的電流消耗成比例的電流指數。節流信號產生器可以基於從總電流計算出的一個或多個度量一次一個處理器核地啟用或消除到所述多個處理器核的多個節流信號。
Description
本發明涉及電源管理(power management),更具體地說,涉及多核系統(multi-core system)中的電流抑制。
第1圖例示了印刷電路板(printed circuit board,PCB)系統的框圖,PCB系統包括耦接到積體電路(IC)負載120的電源110。電源110通過PCB板跡線130和諸如電感器(L)和電容器(C)的元件140,向IC負載120提供電源。IC負載120包括諸如處理器核之類的耗電電子器件。處理器核會產生超過最大電流限制的電流超載,並導致PCB元件和跡線損壞。如PCB系統上方的虛線塊所示,處理器核還會在短時間內產生浪湧電流(inrush current),導致電壓下降和系統故障。
用於抑制電流的傳統方法是使用多個電容和電感。但是,將這些組件添加到PCB板上會增加總硬體尺寸、熱消耗和成本。另一種方法是使用軟體命令來降低電源和工作頻率。但是,軟體命令通常會產生較長的延遲,並且無法及時抑制電流急劇上升。
因此,需要改進處理系統中的電源管理以確保安全操作。
有鑑於此,本發明提供了一種管理電路以及執行電流抑制的方法,以解決上述問題。
在一個實施例中,提供耦接到多個處理器核的管理電路用於執行電流抑制。管理電路包括檢測電路和節流信號產生器。檢測電路用於接收來自每個處理器核的活動信號,並基於多個活動信號估計多個處理器核消耗的總電流。其中活動信號指示與給定時間段內處理器核的電流消耗成比例的電流指數。節流信號產生器可以基於從總電流計算出的一個或多個度量一次一個處理器核地啟用或消除到所述多個處理器核的多個節流信號。
在另一個實施例中,提供了一種用於執行電流抑制的方法。該方法包括以下步驟:從多個處理器核中的每個處理器核接收活動信號,所述活動信號指示與給定時間段內所述處理器核的電流消耗成比例的電流指數;基於多個活動信號估計所述多個處理器核消耗的總電流;以及基於從所述總電流計算的一個或多個度量,一次一個處理器核地啟用或消除到所述多個處理器核的多個節流信號。
本發明提供了一種在多核系統中用於最大電流抑制(maximum current suppression, MCS)的機制,以實現PCB板的電源完整性。MCS機制可以保護PCB板跡線和元件免受物理損壞,以及防止電壓下降和系統故障。
在閱讀了在各種附圖中示出的優選實施例的以下詳細描述之後,本發明的這些和其他目的對於本領域習知技藝者無疑將變得顯而易見。
在說明書及申請專利範圍當中使用了某些詞彙來指稱特定的元件。本領域技術人員應可理解,電子設備製造商可以會用不同的名詞來稱呼同一元件。本說明書及申請專利範圍並不以名稱的差異來作為區別元件的方式,而是以元件在功能上的差異來作為區別的基準。在通篇說明書及後續的申請專利範圍當中所提及的“包括”是開放式的用語,故應解釋成“包括但不限定於”。此外,“耦接”一詞在此是包含任何直接及間接的電氣連接手段。因此,若文中描述第一裝置電性連接於第二裝置,則代表該第一裝置可直接連接於該第二裝置,或通過其他裝置或連接手段間接地連接至該第二裝置。
在以下描述中,闡述了許多具體細節。然而,應當理解,可以在沒有這些具體細節的情況下實踐本發明的實施例。在其他情況下,未詳細示出眾所周知的電路、結構和技術,以免混淆對本描述的理解。然而,本領域的技術人員將理解,本發明可以在沒有這些具體細節的情況下實施。
本發明的實施例提供了一種在多核系統中用於最大電流抑制(maximum current suppression, MCS)的機制,以抑制峰值電流和/或浪湧電流以實現PCB板上的電源完整性。MCS可以抑制峰值電流,以保護PCB板跡線和元件免受物理損壞。MCS還可以抑制浪湧電流轉換率(slew rate),以防止電壓下降和系統故障。在一個實施例中,MCS從多核系統中的每個處理器核接收活動信號(activity signal)並相應地啟用(assert)或消除(de-assert)節流信號(throttle signal)。基於每個內核的活動信號,MCS可以檢測觸發事件並使用節流信號來減少內核的活動。
在本文描述的系統中,“處理器核”可以是中央處理單元(CPU)、數位訊號處理器(DSP)、多媒體處理器、圖形處理單元(GPU)、人工智慧(AI)處理器、向量處理器或其他通用或專用處理電路。在一些系統中,處理器可以與“內核”或“處理器核”或“處理器內核”相同,而在一些其他系統中,處理器可能包括多個內核。多處理器系統也可以稱為多核系統。在本文所述的系統中,術語“內核”與術語“處理器”和“處理器核”可互換使用。
第2圖是例示根據一個實施例的峰值電流抑制和浪湧電流抑制的示意圖200。示意圖200示出了最大電流(IMAX)限制線210,它是峰值電流的上限。示意圖200還示出了浪湧電流限制線220,它是每單位時間電流變化的上限。虛線250是在沒有MCS時電流-時間曲線,實線260是有MCS時的電流-時間曲線。MCS對峰值電流抑制的影響由第一箭頭230指示,而對浪湧電流抑制的影響由第二箭頭240指示。因此,MCS可以抑制峰值電流以保護PCB系統免受物理損壞。MCS還可以抑制浪湧電流轉換率,以保護PCB系統免受電壓下降和系統故障的影響。
第3圖是例示根據一個實施例的包括MCS管理電路320的系統300的框圖。系統300包括統稱為處理器核310的處理器核(例如,核_1 310a、核_2 310b、...、核_N 310n),其中索引n可以是大於1的任何整數。處理器核310可以具有相同的處理器類型和/或不同的處理器類型。處理器核310可以共用相同的指令集架構(instruction set architecture,ISA)和/或不同的ISA。
在一個實施例中,系統300可以集成在單個積體電路裸芯(die)上,或者集成在多電路封裝中的單獨裸芯上。在一個實施例中,系統300可以集成為片上系統(system-on-a-chip,SOC)。應當理解,第3圖的實施例為了便於說明已被簡化。可能包括額外的硬體元件。
儘管第3圖中未示出,但系統300還包括記憶體。記憶體可以包括片上和片外記憶體器件,例如動態隨機訪問記憶體(dynamic random access memory,DRAM)、靜態RAM(SRAM)、快閃記憶體和其他易失性或非易失性記憶體件。系統300還可以包括動態電壓頻率縮放(dynamic voltage frequency scaling,DVFS)控制器,以控制系統300中有源計算電路的操作點(例如,頻率和電壓)。
在一個實施例中,MCS管理電路320 (也稱為管理電路320)接收活動信號,並向每個處理器核310發送節流信號。活動信號指示由每個處理器核310估計的電流指數(current index),其中電流指數與處理器核310在給定時間段內的電流消耗成正比。在一個實施例中,為處理器核310的每個操作碼(operation code,OPCODE)分配預定的活動單元(unit of activity)。例如,搬移操作碼(move, MOV)操作可以生成11個活動單元,而乘法操作碼(multiple, MUL)操作可以生成 55個活動單元。活動單位的數量與OPCODE的電流消耗成正比,例如,100個活動單元可對應200毫安培(mA)的電流消耗,200個活動單元可對應400毫安培的電流消耗。每個處理器核310將給定時間段內的總活動單元求和以生成電流指數。給定時間段可以是可配置的時間段。在給定時間段內生成總活動單元的OPCODE可以是處於解碼階段的OPCODE、處於執行階段的OPCODE、或者最近由相應處理器核310執行的OPCODE。
管理電路320從每個處理器核310接收活動信號,並且計算總電流和總電流的移動平均值(moving averages)。基於總電流和移動平均值,管理電路320可以檢測峰值電流和浪湧電流兩者,並啟用或消除至每個處理器核的節流信號。當至處理器核的節流信號被啟用時,處理器核可以節流(throttle)其處理管線(processing pipeline),以減少活動和電流消耗。
第4圖是例示根據一個實施例的MCS管理電路320(“管理電路320”)的框圖。管理電路320包括總電流產生器410、移動平均值(moving average,MA)產生器420、電流檢測器(或稱為檢測電路)480、有限狀態機(finite state machine,FSM)控制電路450和節流信號產生器460。在一個實施例中,電流檢測器480包括峰值電流檢測器(peak current detector,PCD) 430,用於檢測由處理器核產生或導致的峰值電流。在一個實施例中,電流檢測器480包括浪湧電流檢測器(inrush current detector,ICD)440,用於檢測由處理器核產生或導致的浪湧電流。儘管PCD 430和ICD 440都顯示在第4圖中,但在一些實施例中,電流檢測器480可以包括PCD 430或ICD 440,而在一些其他實施例中,電流檢測器480可以包括PCD 430和ICD 440。
總電流產生器410使用縮放和求和來計算總電流值,其中總電流值=(Activity[n]×Weight)的總和+Leakage_current,n是標識處理器核1,…,N的索引。在使用8位元匯流排來承載每個活動信號的實施例中,Activity[n] 是8位元值並且是上面結合第3圖提到的電流指數。位元數量可以根據精度和成本而不同。
在一個實施例中,Weight =電流縮放×DVFS縮放。在一個實施例中,例如,電流縮放= IMAX.Dyn(mA)/[8’hFF],其中 IMAX.Dyn(mA) 是以毫安培 (mA) 為單位的最大平均動態電流,8'hFF為8位元的16進制表示式。例如,如果IMAX.Dyn(mA) = 4000 mA 且Activity[n]為8位元,則電流縮放 = 4000/255 = 15.7。在替代實施例中,可以通過線性回歸方法獲得電流縮放以提高精度。
在一個實施例中,DVFS縮放=(Vcur×Fcur)/(Vmax×Fmax)。例如,當Vcur = 0.7V,Fcur = 0.9 GHz,Vmax = 0.75V,Fmax = 1 GHz,DVFS縮放= 0.84。因此,在此示例中,Weight =電流縮放×DVFS縮放= 15.7×0.84 = 13.2。
移動平均值(moving average,MA)產生器420產生總電流的移動平均值。作為示例,移動平均值可以包括8MA、32MA、64MA等。例如,8MA= Average (TA[T], TA[T-1], ... TA[T-7]),32MA =Average (8MA[T], 8MA[T-8], 8MA[T-16] ], 8MA[T-24]),其中TA[T]表示T時間的總電流(Total Activity),T是一個定時週期。額外的移動平均 64MA、128MA、256MA、512MA、1024MA 等可以以與32MA相同的方式生成。
在一個實施例中,峰值電流檢測器(peak current detector,PCD) 430使用短期(short-term)移動平均值(例如,32MA或其他移動平均值)來檢測峰值電流。對於每個內核,PCD 430將檢測到的峰值電流與高閾值 (TH1h)進行比較,以檢測PCD_Trigger事件,並且將檢測到的峰值電流與低閾值 (TH1l) 進行比較以檢測 PCD_Release事件。例如,當32MA > TH1h 時即滿足 PCD_Trigger事件的條件,當32MA< TH1l時則滿足PCD_Release事件的條件,其中 TH1h 和 TH1l 是可程式設計閾值。
在一個實施例中,浪湧電流檢測(ICD) 440計算短期移動平均值和長期移動平均值之間的差值,並使用該差值來檢測浪湧電流。對於每個內核,ICD 440將該差值與高閾值(TH2h) 進行比較,以檢測ICD_Trigger事件,並將該差值與低閾值(TH2l)進行比較,以檢測ICD_Release事件。例如,差值可以計算為32MA-1024MA。在一個實施例中,當(32MA-1024MA)>TH2h時滿足ICD_Trigger事件的條件,並且當(32MA-1024MA)<TH2l時滿足ICD_Release事件的條件,其中TH2h和TH2l是可程式設計閾值。注意,TH1h和TH2h可以彼此不同,而TH1l和TH2l可以彼此不同。
第5圖是例示根據一個實施例的總電流和移動平均值(例如,32MA和1024MA)的關係的示意圖。總電流用實線表示,32MA用短虛線表示,1024MA用長虛線表示。
第6圖是根據一個實施例的有限狀態機(FSM) 600的示意圖。FSM 600是第4圖中FSM的示例。FSM 600中存在三種狀態:空閒狀態610、斜降(ramp-down)狀態620和斜升(ramp-up)狀態630。空閒狀態610表示空閒,即,系統中的任何處理器核都沒有被節流。斜降狀態620意味著將處理器核的總電流消耗從高電流消耗斜降到低電流消耗。斜升狀態630意味著將處理器核的總電流消耗從低電流消耗增加到高電流消耗。
FSM 600回應於觸發事件(trigger events)和釋放事件(release events)而經歷狀態轉換。更具體地說,FSM 600中的觸發事件可以是PCD_Trigger事件或ICD_Trigger事件。也就是說,當滿足PCD_Trigger事件或 ICD_Trigger事件的條件時,則觸發事件轉換被啟動。當PCD_Trigger事件和 ICD_Trigger 事件兩者的條件都滿足時,也可以啟動觸發事件轉換。當PCD_Release 事件和ICD_Release事件兩者的條件都滿足時,FSM 600 中的釋放事件轉換被啟動。
當接收到觸發事件以降低處理器核的總電流消耗時,FSM 600轉換到斜降狀態620。當接收到釋放事件以提高處理器核的總電流消耗時,FSM 600轉換到斜升狀態630。
第7圖是例示根據一個實施例的由節流信號產生器460 (第4圖)生成的節流信號的時序波形的示意圖。還參考第3圖、第4圖和第6圖,系統(例如,第3圖中的系統300)最初處於空閒狀態610。當檢測到觸發事件時(例如,當PCD_Trigger事件或者ICD_Trigger事件的條件滿足),管理電路320(第4圖)啟動觸發事件轉換。即,節流信號產生器460啟用節流信號以將系統轉換到斜降狀態620。逐個地對每個處理器核啟用節流信號,在連續的節流信號的啟用之間存在時間間隔,以防止系統電壓過沖(overshooting)。時間間隔可以是可程式設計數值;例如,t1納秒 (ns),其中t1>16。
當系統處於斜降狀態620並且檢測到釋放事件時(例如,當PCD_Release事件和ICD_Release事件兩者的條件都滿足時),管理電路320啟動釋放事件轉換。即,節流信號產生器460消除節流信號,將系統轉換到斜升狀態630。逐個地對每個處理器核消除節流信號,在連續的節流信號的消除之間存在時間間隔,以防止系統電壓過沖(overshooting)。時間間隔可以是可程式設計數值;例如,t2納秒 (ns),其中t2>32。
當系統處於斜升狀態630並且檢測到觸發事件時,節流信號產生器460啟用節流信號以將系統轉換到斜降狀態620。如前所述的,逐個地對每個處理器核啟用節流信號。或者,當沒有檢測到觸發事件時,系統可以從斜升狀態630轉換到空閒狀態610。
當系統處於從斜降狀態620到斜升狀態630的轉換中時,在所有處理器核從節流中被釋放之前管理電路320可能檢測到觸發事件的條件被滿足。在檢測此後,管理電路320啟用節流信號至被釋放的處理器核,以降低總電流。例如,系統可以處於從斜降狀態620到斜升狀態630的轉變中,並且當檢測到觸發事件時,3個內核中只有內核1和2被從節流中釋放。管理電路320可以重新啟用節流信號1和2以重新節流內核1和2並且系統重新進入斜降狀態620。在這個示例中,節流信號3保持被啟用並且內核3保持被節流狀態。
類似地,當系統處於從斜升狀態630到斜降狀態620的轉換中時,管理電路320可以檢測到在所有處理器核被節流信號節流之前釋放事件的條件被滿足。在檢測後,管理電路320消除至被節流的那些處理器核的節流信號,以便提高總電流。
第8圖是例示根據一個實施例的用於電流抑制的方法800的流程圖。方法800可以由諸如第3圖和第4圖中MCS管理電路320的電路來執行。在替代實施例中,MCS管理電路320的操作可以由存儲在記憶體中的軟體指令來執行並且由通用或專用處理硬體執行。該電路耦接到多個處理器核,例如第3圖中的內核310。
在步驟810,電路從每個處理器核接收活動信號。活動信號指示與給定時間段內處理器核的電流消耗成比例的電流指數。在步驟820,電路基於這些活動信號,估計多個處理器核消耗的總電流。在步驟830,電路基於從總電流計算出的一個或多個度量,一次一個處理器核地啟用或消除至處理器核的節流信號。
在一個實施例中,電路進一步估計處理器核消耗的峰值電流和浪湧電流。該電路可以通過計算總電流的移動平均值,來估計峰值電流,並且基於峰值電流啟用或消除節流信號。該電路可以通過計算總電流的短期移動平均值和長期移動平均值之間的差值,來估計浪湧電流,並且基於浪湧電流啟用或消除節流信號。該電路可以通過將所有處理器核的加權電流指數加上洩漏電流,來估計總電流,其中每個加權電流指數等於每個處理器核的電流指數乘以電流縮放因數和DVFS因數。
在一個實施例中,當峰值電流或浪湧電流超過高閾值時,電路啟動觸發事件轉換,以使處理器核消耗的總電流下降。當觸發事件轉換開始時,電路將一次一個處理器核地啟用至處理器核的節流信號,並且在連續節流信號的啟用之間具有可程式設計的時間間隔。當峰值電流和浪湧電流都低於低閾值時,電路啟動釋放事件轉換,從而提高處理器核消耗的總電流。當釋放事件轉換開始時,電路將一次一個處理器核地消除到多個處理器核的節流信號,在連續節流信號的消除之間具有可程式設計的時間間隔。
已經參照第3圖和第4圖的示例性實施例描述了第8圖的流程圖的操作。然而,應該理解的是,第8圖的流程圖的操作可以由除了第3圖和第4圖的實施例之外的本發明實施例來執行,並且第3圖和第4圖的實施例可以執行與參考流程圖討論的那些操作所不同的操作。雖然第8圖的流程圖示出了由本發明的某些實施例執行的操作的特定順序,但應該理解這種順序是示例性的(例如,替代實施例可以以不同的循序執行操作、組合某些操作、重複某些操作等)。
本文已經描述了各種功能元件、塊或模組。如本領域習知技藝者將理解的,功能塊或模組可以通過電路(在一個或多個處理器和編碼指令的控制下操作的專用電路或通用電路)實現,電路通常包括電晶體,電晶體可以被配置為根據這裡描述的功能和操作來控制電路的操作。
儘管本發明已根據若干實施例進行了描述,但本領域習知技藝者將認識到本發明不限於所描述的實施例,並且可以在所附申請專利範圍的精神和範圍內進行修改和變更來實施。本發明因此被認為是說明性的而不是限制性的。
110:電源
120:負載
130:PCB板跡線
140:元件
200:示意圖
210:最大電流(IMAX)限制線
220:浪湧電流限制線
250:沒有MCS時的電流-時間曲線
260:有MCS時的電流-時間曲線
230:第一箭頭
240:第二箭頭
300:系統
320:MCS管理電路
310, 310a, 310b…310n:處理器核
410:總電流產生器
420:移動平均值(MA)產生器
480:電流檢測器
450:有限狀態機
460:控制電路和節流信號產生器
430:峰值電流檢測器(PCD)
440:浪湧電流檢測器(ICD)
600:有限狀態機(FSM)
610:空閒狀態
620:斜降狀態
630:斜升狀態
800:方法
810, 820, 830:步驟
本發明通過結合附圖,閱讀隨後的詳細描述和實施例可以更全面地理解,其中:
第1圖例示了印刷電路板系統的框圖。
第2圖是例示根據一個實施例的峰值電流抑制和浪湧電流抑制的示意圖。
第3圖是例示根據一個實施例的包括MCS管理電路的系統的框圖。
第4圖是例示根據一個實施例的MCS管理電路(“管理電路”)的框圖。
第5圖是例示根據一個實施例的總電流和移動平均值(例如,32MA和1024MA)的關係的示意圖。
第6圖是根據一個實施例的有限狀態機(FSM)的示意圖。
第7圖是例示根據一個實施例的由節流信號產生器(第4圖)生成的節流信號的時序波形的示意圖。
第8圖是例示根據一個實施例的用於電流抑制的方法的流程圖。
320:MCS管理電路
410:總電流產生器
420:移動平均值(MA)產生器
480:電流檢測器
450:有限狀態機
460:控制電路和節流信號產生器
430:峰值電流檢測器(PCD)
440:浪湧電流檢測器(ICD)
Claims (18)
- 一種管理電路,耦接到多個處理器核以執行電流抑制,所述管理電路包括:檢測電路,用於:從每個處理器核接收活動信號,所述活動信號指示與給定時間段內所述處理器核的電流消耗成比例的電流指數;以及基於多個活動信號估計由所述多個處理器核消耗的總電流;以及節流信號產生器,用於基於從所述總電流計算出的一個或多個度量,一次一個處理器核地啟用或消除到所述多個處理器核的多個節流信號,其中,所述檢測電路進一步用於:通過將所述多個處理器核的多個加權電流指數的和與洩漏電流相加,來估計所述總電流,其中每個加權電流指數等於每個處理器核的電流指數乘以電流縮放因數和動態電壓頻率縮放(DVFS)因數。
- 如請求項1之管理電路,其中,所述檢測電路進一步用於估計由所述多個處理器核消耗的峰值電流和浪湧電流。
- 如請求項1之管理電路,其中,所述管理電路還用於:通過計算所述總電流的移動平均值來估計所述多個處理器核的峰值電流;以及根據所述峰值電流啟用或消除所述多個節流信號。
- 如請求項1之管理電路,其中,所述管理電路還用於:通過計算所述總電流的短期移動平均值和長期移動平均值之間的差值來估計所述多個處理器核的浪湧電流;以及根據所述浪湧電流啟用或消除所述多個節流信號。
- 如請求項1之管理電路,還包括:有限狀態機(FSM),根據該有限狀態機,當峰值電流或浪湧電流超過高 閾值時,所述管理電路啟動觸發事件轉換,從而降低所述多個處理器核消耗的所述總電流。
- 如請求項5之管理電路,其中,所述節流信號產生器進一步用於:一次一個處理器核地啟用到所述多個處理器核的所述多個節流信號,在連續節流信號的啟用之間具有可程式設計的時間間隔。
- 如請求項1之管理電路,還包括:有限狀態機(FSM),根據所述有限狀態機,當峰值電流和浪湧電流均低於低閾值時,所述管理電路啟動釋放事件轉換,從而提高所述多個處理器核消耗的所述總電流。
- 如請求項7之管理電路,其中,所述節流信號產生器還用於:一次一個處理器核地消除到所述多個處理器核的所述多個節流信號,在連續節流信號的消除之間具有可程式設計的時間間隔。
- 如請求項1之管理電路,其中,所述管理電路還用於:檢測在所有處理器核被所述多個節流信號節流之前滿足釋放事件的條件;以及消除到被節流的處理器核的節流信號,從而提高所述總電流。
- 如請求項1之管理電路,其中,所述管理電路還用於:在所有處理器核從節流中被釋放之前檢測到觸發事件的條件被滿足;以及啟用至被釋放的處理器核的節流信號,從而降低所述總電流。
- 一種用於執行電流抑制的方法,包括:從多個處理器核中的每個處理器核接收活動信號,所述活動信號指示與給定時間段內所述處理器核的電流消耗成比例的電流指數;基於多個活動信號估計所述多個處理器核消耗的總電流;以及 基於從所述總電流計算的一個或多個度量,一次一個處理器核地啟用或消除到所述多個處理器核的多個節流信號,其中估計所述總電流還包括:通過將所述多個處理器核的多個加權電流指數的和與洩漏電流相加,來估計所述總電流,其中每個加權電流指數等於每個處理器核的電流指數乘以電流縮放因數和DVFS因數。
- 如請求項11之用於執行電流抑制的方法,其中估計所述總電流還包括:估計由所述多個處理器核消耗的峰值電流和浪湧電流。
- 如請求項11之用於執行電流抑制的方法,還包括:通過計算所述總電流的移動平均值,估計所述多個處理器核的峰值電流;以及基於所述峰值電流啟用或消除所述多個節流信號。
- 如請求項11之用於執行電流抑制的方法,還包括:通過計算所述總電流的短期移動平均值與長期移動平均值之間的差值,估計所述多個處理器核的浪湧電流;以及根據所述浪湧電流啟用或消除所述多個節流信號。
- 如請求項11之用於執行電流抑制的方法,還包括:當峰值電流或浪湧電流超過高閾值時啟動觸發事件轉換,從而降低所述多個處理器核消耗的所述總電流。
- 如請求項15之用於執行電流抑制的方法,其中啟用或消除所述多個節流信號進一步包括:一次一個處理器核地啟用到所述多個處理器核的所述多個節流信號,在連續節流信號的啟用之間具有可程式設計的時間間隔。
- 如請求項11之用於執行電流抑制的方法,還包括:當峰值電流和浪湧電流均低於低閾值時啟動釋放事件轉換,從而提高所述多個處理器核消耗的所述總電流。
- 如請求項17之用於執行電流抑制的方法,其中啟用或消除所述多個節流信號進一步包括:一次一個處理器核地消除至所述多個處理器核的所述多個節流信號,在連續節流信號的消除之間具有可程式設計的時間間隔。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202163286124P | 2021-12-06 | 2021-12-06 | |
US63/286,124 | 2021-12-06 | ||
US17/866,483 | 2022-07-16 | ||
US17/866,483 US11989077B2 (en) | 2021-12-06 | 2022-07-16 | Maximum current suppression for power management in a multi-core system |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202324035A TW202324035A (zh) | 2023-06-16 |
TWI817741B true TWI817741B (zh) | 2023-10-01 |
Family
ID=84389367
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW111136541A TWI817741B (zh) | 2021-12-06 | 2022-09-27 | 管理電路以及電流抑制方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11989077B2 (zh) |
EP (1) | EP4191381A1 (zh) |
CN (1) | CN116231777A (zh) |
TW (1) | TWI817741B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW201725477A (zh) * | 2015-12-15 | 2017-07-16 | 英特爾公司 | 處理器核心能源管理技術 |
US10656699B2 (en) * | 2013-12-23 | 2020-05-19 | Dell Products, L.P. | Predictive power capping and power allocation to computing nodes in a rack-based information handling system |
CN111971641A (zh) * | 2018-05-01 | 2020-11-20 | 英特尔公司 | 功率控制仲裁 |
CN112753004A (zh) * | 2018-09-27 | 2021-05-04 | 英特尔公司 | 使用优先级排序对组件进行节流 |
CN113366410A (zh) * | 2019-03-28 | 2021-09-07 | 英特尔公司 | 用于处理器的功率许可控制的系统、装置和方法 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6564328B1 (en) * | 1999-12-23 | 2003-05-13 | Intel Corporation | Microprocessor with digital power throttle |
US7584372B2 (en) * | 2006-04-25 | 2009-09-01 | Mediatek Inc. | Station control method and station using the same |
US8942932B2 (en) * | 2010-08-31 | 2015-01-27 | Advanced Micro Devices, Inc. | Determining transistor leakage for an integrated circuit |
US9069555B2 (en) * | 2011-03-21 | 2015-06-30 | Intel Corporation | Managing power consumption in a multi-core processor |
US8539269B2 (en) * | 2011-03-31 | 2013-09-17 | Intel Corporation | Apparatus and method for high current protection |
US8650428B2 (en) * | 2011-07-19 | 2014-02-11 | Ati Technologies Ulc | Dynamic weight calculation in a digital power estimation and management system |
US9552034B2 (en) * | 2014-04-29 | 2017-01-24 | Qualcomm Incorporated | Systems and methods for providing local hardware limit management and enforcement |
GB2530782A (en) * | 2014-10-02 | 2016-04-06 | Ibm | Voltage droop reduction in a processor |
US20190146567A1 (en) * | 2017-11-10 | 2019-05-16 | Advanced Micro Devices, Inc. | Processor throttling based on accumulated combined current measurements |
US11429173B2 (en) * | 2018-12-21 | 2022-08-30 | Intel Corporation | Apparatus and method for proactive power management to avoid unintentional processor shutdown |
US11586272B2 (en) * | 2019-09-27 | 2023-02-21 | Qualcomm Incorporated | Power control based on performance modification through pulse modulation |
US20210334187A1 (en) * | 2020-04-28 | 2021-10-28 | Intel Corporation | Real-time power meter for optimizing processor power management |
US20210208659A1 (en) * | 2021-03-19 | 2021-07-08 | Intel Corporation | Apparatus and method to detect power supply security attack and risk mitigation |
US11966786B2 (en) * | 2021-08-28 | 2024-04-23 | International Business Machines Corporation | Proxy-based instruction throttling control |
US11625087B2 (en) * | 2021-08-28 | 2023-04-11 | International Business Machines Corporation | Current prediction-based instruction throttling control |
US11831159B2 (en) * | 2022-01-25 | 2023-11-28 | Infineon Technologies Ag | Systems, devices and methods for power management and power estimation |
-
2022
- 2022-07-16 US US17/866,483 patent/US11989077B2/en active Active
- 2022-09-27 TW TW111136541A patent/TWI817741B/zh active
- 2022-10-10 CN CN202211238050.4A patent/CN116231777A/zh active Pending
- 2022-12-05 EP EP22211364.9A patent/EP4191381A1/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10656699B2 (en) * | 2013-12-23 | 2020-05-19 | Dell Products, L.P. | Predictive power capping and power allocation to computing nodes in a rack-based information handling system |
TW201725477A (zh) * | 2015-12-15 | 2017-07-16 | 英特爾公司 | 處理器核心能源管理技術 |
CN111971641A (zh) * | 2018-05-01 | 2020-11-20 | 英特尔公司 | 功率控制仲裁 |
CN112753004A (zh) * | 2018-09-27 | 2021-05-04 | 英特尔公司 | 使用优先级排序对组件进行节流 |
CN113366410A (zh) * | 2019-03-28 | 2021-09-07 | 英特尔公司 | 用于处理器的功率许可控制的系统、装置和方法 |
Also Published As
Publication number | Publication date |
---|---|
US20230176645A1 (en) | 2023-06-08 |
US11989077B2 (en) | 2024-05-21 |
TW202324035A (zh) | 2023-06-16 |
CN116231777A (zh) | 2023-06-06 |
EP4191381A1 (en) | 2023-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6648140B2 (ja) | システム最大電流保護 | |
JP5689965B2 (ja) | コンピュータシステムにおける電流および電力管理 | |
US9575529B2 (en) | Voltage droop reduction in a processor | |
US6819538B2 (en) | Method and apparatus for controlling current demand in an integrated circuit | |
CN110658903A (zh) | 用于功率资源保护的方法和设备 | |
CN110710107B (zh) | 用于减小时钟闭锁引起的电压下降的装置和方法 | |
CN109062391B (zh) | 一种上电时序控制电路及电子设备 | |
WO2013060802A1 (en) | Battery-operated electronic device and method | |
US20130219206A1 (en) | Method And Apparatus For Reducing Server Power Supply Size And Cost | |
US11449127B2 (en) | Peak power determination for an integrated circuit device | |
JP2003007838A (ja) | オン・チップ電圧モニタを利用して、電力消費を管理するためのシステム及び方法 | |
US10152106B2 (en) | Power excursion tolerant power system | |
KR20200116530A (ko) | 전압 레벨 및 드룹 이벤트의 온보드 모니터링 | |
CN112232521A (zh) | 高功率机器学习asic中使用指令速率限制的功率节流机制 | |
TWI817741B (zh) | 管理電路以及電流抑制方法 | |
US9098260B2 (en) | System and method for omitting a clock pulse from a clock signal in response to a change in current consumption | |
US9268393B2 (en) | Enforcing a power consumption duty cycle in a processor | |
US20240047966A1 (en) | Systems, devices and methods for power management and power estimation | |
CN109814700B (zh) | 电源管理系统的待机模式控制系统和控制方法 | |
US9071250B2 (en) | Semiconductor integrated circuit and control method for the same | |
US20160306406A1 (en) | Performance State Selection for Low Activity Scenarios | |
CN116860547A (zh) | 频率监控方法、装置、设备及存储介质 |