CN107003685B - 系统最大电流保护 - Google Patents
系统最大电流保护 Download PDFInfo
- Publication number
- CN107003685B CN107003685B CN201580063668.3A CN201580063668A CN107003685B CN 107003685 B CN107003685 B CN 107003685B CN 201580063668 A CN201580063668 A CN 201580063668A CN 107003685 B CN107003685 B CN 107003685B
- Authority
- CN
- China
- Prior art keywords
- domains
- current
- frequency
- state
- power
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 claims abstract description 69
- 238000004364 calculation method Methods 0.000 claims description 20
- 230000004044 response Effects 0.000 claims description 8
- 230000011664 signaling Effects 0.000 claims description 5
- 238000012545 processing Methods 0.000 description 50
- 230000008569 process Effects 0.000 description 30
- 230000015654 memory Effects 0.000 description 22
- 238000010586 diagram Methods 0.000 description 19
- 230000007704 transition Effects 0.000 description 19
- 238000007726 management method Methods 0.000 description 9
- 239000003795 chemical substances by application Substances 0.000 description 8
- 230000009471 action Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000002596 correlated effect 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
- 230000007423 decrease Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000013021 overheating Methods 0.000 description 1
- 229920000729 poly(L-lysine) polymer Polymers 0.000 description 1
- 230000004043 responsiveness Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05F—SYSTEMS FOR REGULATING ELECTRIC OR MAGNETIC VARIABLES
- G05F1/00—Automatic systems in which deviations of an electric quantity from one or more predetermined values are detected at the output of the system and fed back to a device within the system to restore the detected quantity to its predetermined value or values, i.e. retroactive systems
- G05F1/10—Regulating voltage or current
-
- 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
-
- 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
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K7/00—Modulating pulses with a continuously-variable modulating signal
- H03K7/08—Duration or width modulation ; Duty cycle modulation
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03L—AUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
- H03L7/00—Automatic control of frequency or phase; Synchronisation
- H03L7/06—Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
- H03L7/08—Details of the phase-locked loop
-
- 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 Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Electromagnetism (AREA)
- Automation & Control Theory (AREA)
- Power Sources (AREA)
- Power Conversion In General (AREA)
- Control Of Eletrric Generators (AREA)
- Amplifiers (AREA)
- Electrical Discharge Machining, Electrochemical Machining, And Combined Machining (AREA)
Abstract
一种用于提供主动电流保护的方法和装置。在一个实施例中,所述方法包括:在变换到集成电路(IC)的新状态之前,通过基于所述新状态下的单独域频来计算多个域中的每个域的预期电流并且将所述预期电流与其针对所述新状态的所述多个域中的每个域的相关联电压相乘来计算所述IC中的所述多个域的预期功率之和;将所述和与功率限值进行比较;以及如果所述和大于所述功率限值则降低与所述多个域中的至少一个域相关联的所述单独域频以便将所述IC的总瞬时功率维持为低于所述功率限值。
Description
技术领域
本发明的实施方式涉及功率管理领域;更具体地,本发明的实施例涉及判定设备(例如,片上系统(SOC))的预期电流是否在所述设备的电流的范围内。
背景技术
高性能SoC受到一系列功率传递网络(PDN)限制。一种这样的限制涉及小电池及其通过来自SoC上运行的过程的高功耗的短脉冲变得遭受应力而出现故障的可能性。如果被SoC消耗的瞬时功率能够超过设定限值,则所述瞬时功率可以显著地影响电源和电池。而且,超过此限值可导致I*R压降,所述I*R压降可引起“蓝屏”或触发过流保护并关闭系统。因此,瞬时电流会对所述系统施加显著限制。
为了补偿这些PDN限制,已经使用或者已经开发了大量的功率管理技术。具有可在已经超过功率限值之后使用的反应技术。这些包括功率限值1(PL1)、功率限值2(PL2)和功率限值3(PL3)。PL1是所述系统可承受而不会过热的长期CPU功率限值。PL2是到更高时钟的、用于临时偏差的短期脉冲限值(例如,在加载程序的同时到提高响应性的更快时钟频率的快速旅行)。PL3是用于芯片上的动态电压和频率调整技术。以秒为单位对PL2进行测量,而以毫秒对PL3限值进行监测以防止瞬时功率使用损坏设备的电池。这些技术均需要待做出的功率测量,并且响应于那些功率管理,PL2和PL3两者降低SoC的频率。然而,由于这些技术需要功率测量,因此它们太慢而难以做出响应并在其升高时降低SoC的瞬时功率。
在另一反应方式中,平台层上的接口在瞬时功率限值被超过时进行监测并且将信号从所述平台发送至中央处理单元(CPU)以便扼制其操作并将电流降至所述瞬时限值之下。
在又另一反应方式中,做出对每电压调节器域的电流的计算以便查看所述电流是否在最大值(限值)之上。然而,此方式不用于多个电压调节器(VR)域并且因此不适用于封装层功率传递问题,因为限制每个VR域中的功率可导致不期望地降低域的性能并增加更高限值的成本。然而,由于这些技术在本质上是反应的,因此它们无法防止瞬时电流变得太高并在它们被返回至更安全的水平之前此造成损害。
附图说明
通过以下给出的详细描述并根据本发明的各实施例的附图,将更加充分的理解本发明,然而,所述详细说明和所述附图不应被用来将本发明限制于具体实施例,而是仅用于解释和理解。
图1是集成电路(IC)的一个实施例的框图。
图2A是执行系统状态变换的过程的一个实施例的流程图。
图2B是计算每个域的预期电流的一个实施例的流程图。
图3是判定是否基于功率比较来执行系统状态变换的过程的另一实施例的流程图。
图4是对所有域的功率进行求和的过程的一个实施例的流程图。
图5是执行每域功率计算的过程的一个实施例的流程图。
图6是执行平台功率计算的过程的一个实施例的流程图。
图7是可以具有多于一个核的处理器的框图。
图8是根据本发明的实施例的SoC的框图。
具体实施方式
在以下描述中,阐述了众多细节以便提供对本发明的更加透彻的解释。然而,对于本领域技术人员而言,可以在不具有这些具体细节的情况下实践本发明将是明显的。在其他实例中,以框图形式而非详细地示出了公知结构和设备,以便避免模糊本发明。
公开了一种用于对集成电路(IC)的功率进行限制的方法和装置。所述IC可以是片上系统(SoC)、处理器等。所述功率限制过程执行主动计算并且将IC总瞬时功率维持在所述功率限值之下。
更具体地,在做出到所述IC的新状态(例如,新工作点)的变换之前,主动完成功率计算。当做出变换到新状态的请求之前,计算每个域(例如,电压调节器(VR)域)的预期电流并且将其乘以那个新状态的目标电压以便产生和,所述和表示在处于新状态下时那个域的预期功率。在一个实施例中,基于泄露、最大功率与动态电容(C动态)以及在新状态中待使用的目标频率来计算每个域的预期电流。将所述各个域的全部预期功率值相加在一起以产生总预期功率,将所述总预期功率与所述功率限值进行比较。如果所述总预期功率大于所述限值,则降低所述域中的一个或多个域的频率,从而使得所述新状态(例如,所述新工作点)的总功率将处于所述功率限值之下。
图1是集成电路(IC)的一个实施例的框图。返回至图1,所述集成电路包括多个域。例如,指令架构(IA)域1031(例如,中央处理单元(CPU)域)、图形域1032、以及一个或多个其他域(诸如域103N)。每个域可以具有一个或多个核(例如,处理器核、执行核)或者专用逻辑。
在一个实施例中,功率管理单元(PMU)微控制器101控制并管理所述IC的功率。在一个实施例中,PMU微控制器101指定了所述域中的每个域的时钟的频率。PMU微控制器101将那些频率中的每个频率信令发送至与所述域中的每个域相关联的锁相环(PLL)。例如,所述PLL包括:为IA域1031提供时钟的PLL 1021、向图形域1032提供时钟的PLL 1022、以及为域103N提供时钟的PLL 104N。在一个实施例中,PMU微控制器101是CPU的一部分。
在一个实施例中,域103中的每个域向PMU微控制器101提供域特定系统状态请求。例如,IA域1031、图形域1032和其他域103N向PMU微控制器101提供域特定系统状态请求1041、1042、104N。所述特定系统状态请求指定了特定域在变换之后将处于的状态。在一个实施例中,所述系统状态请求包括频率以及睡眠状态或执行状态中的至少一项。注意的是,处理器核以及与处理器核相关联的域的睡眠状态和执行状态在本领域中是公知的。
基于所述接收的域系统状态请求,PMU微控制器101针对每个域生成计算与其将处于变换之后的所述系统状态相关联的预期电流以及与那个系统状态下的域相关联的预期功率。换言之,在系统状态的每次变化之前,PMU微控制器101计算所述新工作点处的每个域的预期电流。注意的是,在每个变换之后,一些域可以处于相同或不同的系统状态下,并且因此所述域中的一个或多个域的预期功率计算值可以等于其当前用电量。
PMU微控制器对所有域的预期功率进行求和并且将所述和与功率限值进行比较。在一个实施例中,此功率限值是瞬时功率限值。在一个实施例中,由外部代理(例如,BIOS、嵌入式控制器等)来设定所述功率限值。在另一示例中,由控制软件来设定所述功率限值。在这种情况下,所述控制软件静态地或者在运行时间进行设定。
如果所述和不超过所述功率限值,则PMU微控制器101不执行任何操作并且允许变换到系统状态。如果所述和确实超过所述功率限值,则PMU微控制器101采取一个或多个动作以便降低由于所述变换所引起的预期功率。在一个实施例中,由PMU微控制器101在所述和超过所述功率限值时执行的动作之一是用于降低所述域中的每个域的系统状态的频率。PMU微控制器101然后将降低的频率信令发送至用于针对其域生成时钟的相应时钟发生器(例如,PLL)。以此方式,PMU微控制器101执行域频控制。
在一个实施例中,针对每个域,PMU微控制器101计算当处于其所请求的所述新系统状态下的所述域所期望存在的所述活动电流和静态电流两者。在一个实施例中,PMU微控制器101通过对所有工作核(例如,并非处于空闲或者以其他方式处于断电(例如,门控)状态下的核)上的最差情况C动态进行求和来计算所述活动电流。所述最差情况C动态根据所述域的执行状态而不同。PMU微控制器101将所述最差情况C动态乘以频率和与所请求的系统状态相关联的电压。在一个实施例中,在所述请求的系统状态信息中指定了所述频率,而由PMU微控制器101将所述电压确定为所述频率的函数。
PMU微控制器101还确定所述域的静态电流。在一个实施例中,通过取所请求的状态下的所述域的那个电压和当前温度(如利用温度传感器测量的)下的估计泄露来确定所述静态电流。PMU微控制器101对所述域中的所有泄露核上的估计泄露进行求和,并且门控核未被统计。注意的是,基础核泄露可根据内选通而不同。
一旦已经确定了所述请求系统状态下的所述域的活动电流和静态电流,则PMU微控制器101对所述活动电流和静态电流一起求和。这表示域的最坏情况电流。
在替代性实施例中,所述请求系统状态下的所述域的电流尽可以基于先前测量的电流,其中随时间推移对最大电流进行标识。此最大电流则将用作所述域的最坏情况电流。
PMU微控制器101将每域此最坏情况电流乘以其所述请求系统状态(以其指定频率)的电压以便得到所述域的计算最坏情况功率。PMU微控制器101对全部域的计算最坏情况功率进行求和以便将所有域所请求的系统状态考虑在内来获得所述IC的计算最坏情况功率。
PMU微控制器101将总计算最坏情况(预期)功率与功率限值进行比较。如果计算功率低于所述功率限值,则不采取任何动作并且发生所述域中的每个域到请求系统状态的变换。如果计算功率高于所述功率限值,则PMU微控制器101采取一个或多个动作,诸如将所述域将在新系统中使用的频率降低一倍。在一个实施例中,此因子是所述功率限值与所述计算功率之前的比值:
功率限值/计算最坏情况功率。
在一个实施例中,PMU微控制器101将每个域的请求频率降低所述比值。即通过计算所述比值并且将其乘以所述频率中的每个频率来完成所述降低。在一个实施例中,如果乘法的结果不是约整数,则对所述降低频率进行取整。这应当确保与新系统状态、或工作点相关联的用电量低于所述功率限值。如果否,则再次重复所述过程。
在另一实施例中,所述比值仅应用于域的子集。在此情况下,可能需要执行一个或多个附加功率降低操作以便将预期功率维持在所述功率限值之下。例如,在一个实施例中,未扼制SoC系统代理(SA)域中的频率。这些频率包括存储器时钟的频率。在这种情况下,必须对其他域(诸如用于进行补偿的指令架构(IA)域)进行额外扼制。在又另一实施例中,以替代性方式选择每个域的新频率。
图2A是执行系统状态变换的过程的一个实施例的流程图。所述过程由处理逻辑执行,所述处理逻辑可以包括硬件(电路、专用逻辑等)、软件(例如在通用计算机系统或专用机器上运行)、固件或这三者的组合。
返回至图2A,在变换到集成电路(IC)的新状态之前,处理逻辑通过基于所述新状态下的单独域频计算多个域中的每个域的预期电流并且将所述预期电流与其针对所述新状态的所述多个域中的每个域的相关联电压相乘来计算所述IC中的所述多个域的预期功率之和(处理框201)。在一个实施例中,计算每个域的所述预期电流基于电流泄露、目标频率和动态电容(C动态)。在一个实施例中,所述新状态包括:频率以及每个域的睡眠状态和执行状态中的一项或多项。在一个实施例中,计算每个域的所述预期电流包括:计算每个域的活动电流和静态电流,并且然后将这两者一起进行求和。
图2B是计算每个域的预期电流的一个实施例的流程图。所述过程由处理逻辑执行,所述处理逻辑可以包括硬件(电路、专用逻辑等)、软件(例如在通用计算机系统或专用机器上运行)、固件或这三者的组合。返回至图2B,所述过程包括计算所述域的所述活动电流,包括:对处于唤醒状态下的所述域中的每个核的最坏情况C动态进行求和并且将所述最坏情况C动态乘以所述频率和所述域的所述相关联电压(处理框211)。在一个实施例中,所述相关联电压是所述请求频率的函数。
作为所述过程的一部分,处理逻辑还通过对所述域中的每个核的泄漏电流进行求和来计算所述静态电流(处理框212)。这些是处于唤醒状态而非处于空闲或断电(例如,电源门控)状态的核。在一个实施例中,所述泄漏电流是所述核(域)的所述电压和温度下的估计泄漏电流。
返回至图2A,在计算所述域的所述预期功率之和之后,处理逻辑将所述和与功率限值进行比较(处理框202)。接着,处理逻辑测试所述域的所述预期功率之和是否大于所述功率限值(处理框210)。如果所述和大于所述功率限值,则处理逻辑变换到处理框203(在所述处理框中,处理逻辑降低与所述多个域中的至少一个域(例如,多于一个的域,全部域)相关联的所述频率以便将所述IC的总瞬时功率维持在所述功率限值之下),并且所述过程变换到重复所述过程的处理框201。在一个实施例中,降低与所述多个域中的每个域相关联的所述单独域频包括:计算所述域的总预期最差情况功率与所述功率限值之间的比值,并且将与所述多个域中的每个域相关联的所述单独域频减少至少所述比值。
在一个实施例中,如果所述和大于所述功率限值,则处理逻辑还发送指示所述和大于所述功率限值的通知。在一个实施例中,所述通知被发送至软件(例如,操作系统、BIOS等)。在一个实施例中,通过设定所述IC(例如,机器状态寄存器(MSR)、存储器映射输入/输出(MMIO)寄存器)上的存储器中的状态位来做出所述通知。在另一实施例中,通过使用中断来做出所述通知。
返回至处理框210,如果所述域的所述预期功率之和小于所述功率限值(并且在已经降低所述(多个)域的所选频率或多个频率之后),则所述过程变换至处理框204,在所述处理框中,处理逻辑将指定在每个域中使用的频率的新频率值发送至与那些域相关联的时钟发生器(PLL)。
如果所述域的所述预期功率之和小于所述功率限值,则处理逻辑准许变换到所述新状态(处理框205)。
图3是判定是否执行系统状态变换的过程的一个实施例的流程图。所述过程由处理逻辑执行,所述处理逻辑可以包括硬件(电路、专用逻辑等)、软件(例如在通用计算机系统或专用机器上运行)、固件或这三者的组合。在一个实施例中,由设备(例如,SoC、处理器等)中的功率管理单元来执行所述过程。
返回至图3,处理逻辑测试与新系统状态(所述域的预期功率之和)相关联的所述功率301是否大于与所述平台的所述功率限值相关联的所述功率限值302(处理框310)。如果否,则处理逻辑变换到处理框340,在所述处理框中,处理逻辑执行到所述新状态的变换。然而,如果与所述新系统状态相关联的所述功率301大于功率限值302,则所述处理器变换到处理框320,在所述处理框中,处理逻辑降低所述频率。在一个实施例中,通过计算比值并且将其乘以所述域中的每个域已经请求的所述频率中的每个频率来完成所述降低。在一个实施例中,所述比值是将所述功率限值除以所述域的总预期功率。针对所述新系统状态所请求的所述频率中的每个频率乘以所述比值以便创建将用于所述新系统状态中的频率。在一个实施例中,通过对数值进行取整来执行对新计算的频率值的任何必要取整。
在降低所述频率之后,处理逻辑计算新工作点(处理框320)并且变换到处理框310以重复所述过程。
图4是对所有域的功率进行求和的过程的一个实施例的流程图。所述过程由处理逻辑执行,所述处理逻辑可以包括硬件(电路、专用逻辑等)、软件(例如在通用计算机系统或专用机器上运行)、固件或这三者的组合。在一个实施例中,由设备(例如,SoC、处理器等)中的功率管理单元来执行所述过程。
返回至图4,针对所述域(诸如域IA 401、域图形402、域SA 403以及其他域404)中的每个域来执行基于其新状态下的所述预期功率的每域功率计算。如在此讨论的,虽然图4中仅示出了四个域,但是所述设备可以具有更多或更少的域,针对所述更多或更少的域来执行单独的每域功率计算。
通过对逻辑405进行求和来对针对所述域中的每个域的预期功率计算进行求和以便生成计算功率。所述计算功率410是到PMU逻辑的以便判定所述系统是否可变换到新系统状态的输入。
图5是执行每域功率计算的过程的一个实施例的流程图。所述过程由处理逻辑执行,所述处理逻辑可以包括硬件(电路、专用逻辑等)、软件(例如在通用计算机系统或专用机器上运行)、固件或这三者的组合。在一个实施例中,由设备(例如,SoC、处理器等)中的功率管理单元来执行所述过程。
用于计算当前域的电流和电压的逻辑510接收输入频率501以及系统状态输入502。频率501表示当处于所述新系统状态下时所述域请求使用的频率。所述核状态输入表示所述域中的不同核的所述新系统状态。如所示出的,具有核0-N的状态输入。注意的是,一些域只可以具有一个核,而其他域具有两个或更多个核。在多核域的情况下,以相同的频率对所有核进行计时,尽管这对于在此描述的教导不是所需的。
域电流计算器520将频率501发送至逻辑520,所述逻辑基于频率501生成与所述新状态相关联的电压503。在一个实施例中,频率电压曲线用于向每个频率分配匹配电压。在一个实施例中,逻辑520包括表,所述表指定与提供至其的每个频率相关联的特定电压。所述逻辑510使用这些输入来确定将与所述新状态相关联的所述预期电流。逻辑510将预期电流504以及电压503一起输出至功率计算单元530。功率计算单元530将预期电流504乘以电压503以便生成功率505,所述功率表示所述域在所述新状态下的最差情况功率。
图6是执行平台功率计算的过程的一个实施例的流程图。所述过程由处理逻辑执行,所述处理逻辑可以包括硬件(电路、专用逻辑等)、软件(例如在通用计算机系统或专用机器上运行)、固件或这三者的组合。在一个实施例中,由设备(例如,SoC、处理器等)中的功率管理单元来执行所述过程。
处理逻辑接收配置变化指示601。在一个实施例中,指示601与电池漏极情况相关。随着电池的耗尽,其可维持更低的电力汲取,电压随着电池的耗尽而下降。突然的功率耗用可导致突然的压降,并且如果电池被耗尽,则其可在进入电压阈值之下之前维持更低的功率耗用。为了避免这一点,软件根据电池耗用设定限值,从而触发指示的变化。这使得能够延长电池寿命。
响应于此配置变化指示601,处理逻辑读取电池充电状态以及交流(AC)适配器或其他无限制的电源的能力(处理框610)。使用此信息,处理逻辑计算平台的此系统的最大功率能力(P系统最大),所述平台具有那个电池和AC适配器(处理框620)。接着,处理逻辑获得平台配置并且计算与所述平台的剩余部分相关联的最大平台功率(处理框630)。所述平台的剩余部分的最大平台功率与未统计的所述域的功率相对应。然后,处理逻辑将SOC(或IC)功率预算、或限值设定为所述系统的计算最大功率能力与所述平台的剩余部分的最大功率之间的差。
PL4=P系统最大-PROP
换言之,图7是根据本发明的实施例的可以具有多于一个核的、可以具有集成存储器控制器的、并且可以具有集成图形的处理器700的框图。图7中的实线框展示了具有单个核702A、系统代理710、一组一个或多个总线控制器单元716的处理器700,而虚线框的可选添加展示了具有多个核702A-N、系统代理单元710中的一组一个或多个集成存储器控制器单元714以及专用逻辑708的替代处理器700。
因此,处理器700的不同实现方式可以包括:1)CPU,其中专用逻辑708为集成图形和/或科学(吞吐量)逻辑(其可以包括一个或多个核),并且所述核702A-N为一个或多个通用核(例如,通用有序核、通用无序核、或这两者的组合)。2)协处理器,其中核702A-N是旨在主要用于图形和/或科学(吞吐量)的大量专用核;以及3)协处理器,其中核702A-N是大量通用有序核。因此,处理器700可以是通用处理器、协处理器或专用处理器,例如网络或通信处理器、压缩引擎、图形处理器、GPGPU(通用图形处理单元)、高吞吐量集成众核(MIC)协处理器(包括30个或更多个核)、嵌入式处理器等。所述处理器可以在一个或多个芯片上实现。处理器700可以是一个或多个衬底的一部分和/或可以使用诸如例如BiCMOS、CMOS或NMOS的多种加工技术中的任何一种技术在一个或多个衬底上被实现。
在一个实施例中,以上所述的核中的每个核表示具有分离的时钟发生器(PLL)和电压调节器的不同电源域。
在一个实施例中,专用逻辑708的另一部分包括功率管理单元(PMU),诸如以上所述的PMU。
存储器层级包括所述核内的一个或多个级别的高速缓存,一组或一个或多个共享高速缓存单元706、以及外部存储器(未示出),所述外部存储器耦合至所述一组集成存储器控制器单元714。所述一组共享高速缓存单元706可以包括一个或多个中级高速缓存,如2级(L2)、3级(L3)、4级(L4)、或其他级别的高速缓存、终极高速缓存(LLC)、和/或其组合。虽然在一个实施例中,基于环形的互连单元712将专用逻辑708、所述一组共享高速缓存单元706、以及系统代理单元710/(多个)集成存储器控制器单元714互连,但替代性实施例可以使用任何数量的用于互连这样的单元的已知技术。在一个实施例中,维持一个或多个高速缓存单元706与核702A-N之间的一致性。
在一些实施例中,所述核702A-N中的一个或多个核能够进行多线程。系统代理710包括协调和操作核702A-N的那些部件。系统代理单元710可以包括例如功率控制单元(PCU)和显示单元。PCU可以是或包括用于调节核702A-N和集成图形逻辑708的功率状态所需的逻辑和部件。显示单元用于驱动一个或多个外部连接的显示器。
就架构指令集而言,核702A-N可以是同质的或异构的;也就是说,核702A-N中的两个或更多个核能够执行相同的指令集,而其他的核能够仅执行那个指令集的子集或执行不同的指令集。
图8是根据本发明的实施例的SoC 800的框图。图7中的相似元件具有相同的参考数字。而且,虚线框是关于更先进的SoC的可选特征。在图8中,(多个)互连单元802耦合至:应用处理器810,所述应用处理器包括一组一个或多个核202A-N和多个共享高速缓存单元706;系统代理单元710;(多个)总线控制器单元716;(多个)集成存储器控制器单元714;一组或一个或多个协处理器820,所述协处理器可以包括集成图形逻辑、图像处理器、音频处理器、以及视频处理器;静态随机存取存储器(SRAM)单元830;直接存储器访问(DMA)单元832;以及显示单元840,所述显示单元用于耦合至一个或多个外部显示器。在一个实施例中,所述(多个)协处理器820是专用处理器,诸如例如网络或通信处理器、压缩引擎、GPGPU、高吞吐量MIC处理器、嵌入式处理器等。
在第一示例实施例中,一种方法包括:在变换到集成电路(IC)的新状态之前,通过基于所述新状态下的单独域频计算多个域中的每个域的预期电流并且将所述预期电流与针对所述新状态的所述多个域中的每个域的所述预期电流的相关联电压相乘来计算所述IC中的所述多个域的预期功率之和;将所述和与功率限值进行比较;以及如果所述和大于所述功率限值则降低与所述多个域中的至少一个域相关联的所述单独域频以便将所述IC的总瞬时功率维持为低于所述功率限值。
在另一示例实施例中,所述第一示例实施例的主题可以可选地包括:计算所述多个域中的每个域的所述预期电流基于电流泄露、目标频率和动态电容(C动态)。
在另一示例实施例中,所述第一示例实施例的主题可以可选地包括:计算所述多个域中的每个域的所述预期电流包括:计算活动电流和静态电流,并且对所述活动电流和静态电流进行求和。在另一示例实施例中,所述此示例实施例的主题可以可选地包括:计算活动电流包括:对处于唤醒状态下的所述域中的每个核的最坏情况的C动态进行求和,并且将所述最坏情况的C动态乘以所述域的频率和所述相关联电压。在另一示例实施例中,此示例实施例的主题可以可选地包括:所述相关联电压是所述请求频率的函数。
在另一示例实施例中,所述第一示例实施例的主题可以可选地包括:计算静态电流包括对所述唤醒状态下的所述域中的每个核的泄露进行求和。在另一示例实施例中,此示例实施例的主题可以可选地包括:所述泄露是所述域的所述电压和温度下的估计泄露。
在另一示例实施例中,所述第一示例实施例的主题可以可选地包括:降低与所述多个域中的至少一个域相关联的所述单独域频包括:计算所述功率之和与所述功率限值之间的比值,并且将与所述多个域中的每个域相关联的所述单独域频减少至少所述比值。
在另一示例实施例中,所述第一示例实施例的主题可以可选地包括:将指定将在所述多个域中的每个域中使用的频率的新频率值发送至与所述多个域中的每个域相关联的时钟发生器(PLL)。
在另一示例实施例中,所述第一示例实施例的主题可以可选地包括:如果所述和小于所述功率限值,则将所述IC变换到所述新状态。
在另一示例实施例中,所述第一示例实施例的主题可以可选地包括:所述新状态包括频率以及以下一项或多项:所述多个域中的每个域的睡眠状态和执行状态。
在另一示例实施例中,所述第一示例实施例的主题可以可选地包括:响应于确定所述和高于所述功率限值而发送通知。
在另一示例实施例中,所述第一示例实施例的主题可以可选地包括:通过以下各项来确定所述功率限值:如果有的话,基于电池的交流适配器能力和充电状态中的一项或多项来确定可用功率;计算所述IC的最大功率能力;计算所述IC的、不被包括在所述多个域中的部分的最大功率;以及将所述功率限值设定为所述IC的最大功率能力与所述IC的、不被包括在所述多个域中的所述部分的最大功率能力之间的差。
在第二示例实施例中,一种集成电路(IC)包括:多个域;单元,所述单元耦合至所述多个域,用于响应于从所述多个域中的每个域接收请求而执行以下各项:在变换到新状态之前,通过基于所述新状态下的单独域频计算所述多个域中的每个域的预期电流并且将所述预期电流与针对所述新状态的所述多个域中的每个域的所述预期电流的相关联电压相乘来计算所述多个域的预期功率之和,将所述和与功率限值进行比较,并且如果所述和大于所述功率限值,则降低与所述多个域中的至少一个域相关联的所述单独域频以便将所述IC的总瞬时功率维持为低于所述功率限值。
在另一示例实施例中,所述第二示例实施例的主题可以可选地包括:所述单元基于电流泄露、目标频率和动态电容(C动态)来计算所述多个域中的每个域的所述预期电流。
在另一示例实施例中,所述第二示例实施例的主题可以可选地包括:所述单元通过计算活动电流和静态电流并且对所述活动电流和静态电流进行求和来计算所述多个域中的每个域的所述预期电流。
在另一示例实施例中,所述第二示例实施例的主题可以可选地包括:所述单元通过对处于唤醒状态下的所述域中的每个核的最坏情况的C动态进行求和,并且将所述最坏情况的C动态乘以所述域的频率和所述相关联电压来计算活动电流。
在另一示例实施例中,所述第二示例实施例的主题可以可选地包括:所述相关联电压是所述请求频率的函数。
在另一示例实施例中,所述第二示例实施例的主题可以可选地包括:所述单元通过对唤醒状态(例如,非断电状态)下的所述域中的每个核的泄露进行求和来计算静态电流。
在另一示例实施例中,所述第二示例实施例的主题可以可选地包括:所述泄露是所述域的所述电压和温度下的估计泄露。
在另一示例实施例中,所述第二示例实施例的主题可以可选地包括:所述单元通过计算所述功率之和与所述功率限值之间的比值并且将与所述多个域中的每个域相关联的所述单独域频减少至少所述比值来降低与所述多个域中的至少一个域相关联的所述单独域频。
在另一示例实施例中,所述第二示例实施例的主题可以可选地包括:所述单元将指定将在所述多个域中的每个域中使用的频率的新频率值发送至与所述多个域中的每个域相关联的时钟发生器(PLL)。
在另一示例实施例中,所述第二示例实施例的主题可以可选地包括:如果所述和小于所述功率限值,则所述IC变换到所述新状态。
在另一示例实施例中,所述第二示例实施例的主题可以可选地包括:所述新状态包括频率以及一项一项或多项:所述多个域中的每个域的睡眠状态和执行状态。
在第三示例实施例中,一种方法包括:基于集成电路(IC)的功率限值与从最坏情况电流确定得出的最坏功率计算值之间的比较来生成所述IC中的多个域中的每个域的新频率,所述最坏情况电流确定与所述每个域请求进入的状态相关联;以及将向与所述多个域中的每个域相关联的时钟发生器(PLL)信令发送的生成以供用于所述多个域中的每个域中的时钟的所述新频率信令发送至与所述多个域中的每个域相关联的时钟发生器(PLL)。
在另一示例实施例中,所述第三示例实施例的主题可以可选地包括所述最坏情况电流确定基于:基于电流泄露、目标频率和动态电容(C动态)来计算所述多个域中的每个域的所述预期电流。
在第四示例实施例中,一种制品具有存储有指令的一个或多个非瞬态计算机可读介质,所述指令在被执行时使集成电路执行一种方法,所述方法包括:在变换到集成电路(IC)的新状态之前,通过基于所述新状态下的单独域频计算多个域中的每个域的预期电流并且将所述预期电流与针对所述新状态的所述多个域中的每个域的所述预期电流的相关联电压相乘来计算所述IC中的所述多个域的预期功率之和;将所述和与功率限值进行比较;以及如果所述和大于所述功率限值则降低与所述多个域中的至少一个域相关联的所述单独域频以便将所述IC的总瞬时功率维持为低于所述功率限值。
在另一示例实施例中,所述第四示例实施例的主题可以可选地包括:计算所述多个域中的每个域的所述预期电流基于电流泄露、目标频率和动态电容(C动态)。
在此公开的机制的实施例可以以硬件、软件、固件或这种实现方式的组合来实现。本发明的实施例可以被实现为在可编程系统上执行的计算机程序或程序代码,所述可编程系统包括至少一个处理器、存储系统(包括易失性和非易失性存储器和/或存储元件)、至少一个输入设备、以及至少一个输出设备。
可以将程序代码应用于输入指令以执行在此描述的功能并生成输出信息。所述输出信息可以以已知的方式应用于一个或多个输出设备。出于本申请的目的,处理系统包括具有处理器的任何系统,诸如例如:数字信号处理器(DSP)、微控制器、专用集成电路(ASIC)、或微处理器。
所述程序代码可以以高级程序或面向对象的编程语言来实现,以与处理系统通信。如果期望的话,所述程序代码还可以以汇编或机器语言实现。事实上,在此描述的机制的范围不限于任何特定的编程语言。在任何情况下,所述语言可以是编译或解释语言。
可以由机器可读介质上所存储的代表性指令实现至少一个实施例的一个或多个方面,所述指令代表处理器内的各种逻辑,所述指令当被机器读取时使所述机器制作用于执行在此所描述的技术的逻辑。此类表示(称为“IP核”)可以被存储在有形的机器可读介质上并提供给各顾客或制造设施以加载至实际制作该逻辑或处理器的制作机器中。
这样的机器可读存储介质可以包括但不限于:由机器或设备制造或形成的物品的非瞬态有形安排,包括诸如硬盘的存储介质;任何其他类型的盘,包括软盘、光盘、致密盘只读存储器(CD-ROM)、致密盘可擦写光盘(CD-RW)、和磁光盘;半导体设备,例如只读存储器(ROM);随机存取存储器(RAM),例如动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM);可擦可编程只读存储器(EPROM);闪存存储器;电可擦可编程只读存储器(EEPROM);相变存储器(PCM);磁卡或光卡;或者适合于存储电子指令的任何其他类型的介质。
因此,本发明的实施例还包括包含指令或包含设计数据(如硬件描述语言(HDL))的非瞬态、有形机器可读介质,所述非瞬态、有形机器可读介质限定在此描述的结构、电路、装置、处理器和/或系统特征。这类实施例也可以被称为程序产品。
就对计算机存储器内的数据比特进行的操作的算法和符号表示而言,呈现在以上所述的详细说明书的一些部分。这些算法描述和表示是被数据处理领域中的技术人员使用的手段,以便最有效地将他们的工作的实质传递给本领域的其他技术人员。此处并且通常想到算法是产生所期望的结果的自相一致的一序列步骤。所述步骤是需要对物理量的物理操纵的步骤。通常地但不一定,这些量采用能够被存储、传递、组合、比较、以及以其他方式操纵的电或磁信号的形式。这已被证明是有时便于(主要由于公共使用的原因)涉及如比特、数值、元素、符号、字符、术语、数字等等的这些信号。
然而,应当记住的是,这些和类似术语中的全部术语将与适当的物理数量相关联并且仅是应用于这些量上的方便标签。除非以其他方式从以下讨论中具体陈述,否则应理解,在本说明书中,利用术语如“处理”或“运算”或“计算”或“确定”或“显示”等等的讨论内容是指计算机系统、或者将表示为在计算机系统的寄存器和存储器内的物理(电子)量的数据操纵和变换成类似地表示为在计算机系统存储器或寄存器或其他这种信息存储、传输或显示设备内的物理量的其他数据的类似电子计算设备的动作和处理。
本发明还涉及用于执行在此的操作的装置。此设备可以被专门构造成用于所需目的,或者其可以包括通过存储于计算机中的计算机程序选择性地激活或重新配置的通用计算机。这种计算机程序可以存储于计算机可读存储介质中,诸如但不限于任何类型的磁盘,包括软盘、光盘、CD-ROM、以及磁-光盘、只读存储器(ROM)、随机存取存储器(RAM)、EPROM、EEPROM、磁卡或光卡,或适于存储电子指令并各自耦合至计算机系统总线的任何类型的介质。
在此所呈现的算法和显示器并非固有地与任何具体的计算机或其他装置相关。各种通用系统可以与根据在此的教导的程序一起使用,或者构建更专门的装置来执行所需方法步骤可以证明是方便的。用于各种各样的这些系统的所需结构从以下说明书中将变得明显。此外,不参考任何特定的编程语言对本发明进行描述。将认识到的是,各种编程语言都可以用来实现在此描述的本发明的教导。
虽然在阅读前面的描述后,本发明的实施例的许多更改和修改将毫无疑问对于本领域的技术人员将变得明显,但要理解的是,通过图示示出和描述的任何特定实施例决不旨在被认为是限制性的。因此,对各实施例的细节的引用不旨在限制权利要求的范围,所述权利要求本身仅记载那些被认为对于本发明来说必不可少的特征。
Claims (49)
1.一种用于基于电流来控制功率的方法,所述方法包括:
在变换到集成电路(IC)的新状态之前,通过基于所述新状态下的单独域频计算多个域中的每个域的预期电流并且将所述预期电流与针对所述新状态的所述多个域中的每个域的所述预期电流的相关联电压相乘来计算所述IC中的所述多个域的预期功率之和;
将所述和与功率限值进行比较;以及
如果所述和大于所述功率限值,则降低与所述多个域中的至少一个域相关联的所述单独域频以便将所述IC的总瞬时功率维持为低于所述功率限值,其中,降低与所述多个域中的至少一个域相关联的所述单独域频包括:计算所述功率之和与所述功率限值之间的比值,并且将与所述多个域中的每个域相关联的所述单独域频减少至少所述比值。
2.如权利要求1所述的方法,其中,计算所述多个域中的每个域的所述预期电流基于电流泄露、目标频率和动态电容(C动态)。
3.如权利要求1所述的方法,其中,计算所述多个域中的每个域的所述预期电流包括:计算活动电流和静态电流,并且对所述活动电流和静态电流进行求和。
4.如权利要求3所述的方法,其中,计算活动电流包括:对处于唤醒状态下的所述域中的每个核的最坏情况的C动态进行求和,并且将所述最坏情况的C动态乘以所述域的频率和所述相关联电压。
5.如权利要求4所述的方法,其中,所述相关联电压是所请求频率的函数。
6.如权利要求3所述的方法,其中,计算静态电流包括:对唤醒状态下的所述域中的每个核的泄露进行求和。
7.如权利要求6所述的方法,其中,所述泄露是所述域的所述电压和温度下的估计泄露。
8.如权利要求1所述的方法,进一步包括:将指定将在所述多个域中的每个域中使用的频率的新频率值发送至与所述多个域中的每个域相关联的时钟发生器。
9.如权利要求1所述的方法,进一步包括:如果所述和小于所述功率限值,则将所述IC变换到所述新状态。
10.如权利要求1所述的方法,其中,所述新状态包括:频率以及以下一项或多项:所述多个域中的每个域的睡眠状态和执行状态。
11.如权利要求1所述的方法,进一步包括:响应于确定了所述和小于所述功率限值,发送通知。
12.如权利要求1所述的方法,进一步包括:通过以下步骤来确定所述功率限值:
如果有的话,基于电池的交流适配器能力和充电状态来确定可用功率;
计算所述IC的最大功率能力;
计算所述IC的、不被包括在所述多个域中的的部分的最大功率;以及
将所述功率限值设定为所述IC的最大功率能力与所述IC的、不被包括在所述多个域中的所述部分的最大功率能力之间的差。
13.一种基于电流来控制功率的集成电路(IC),所述IC包括:
多个域;以及
单元,所述单元耦合至所述多个域,用于响应于从所述多个域中的每个域接收请求而执行以下各项:
在变换到新状态之前,通过基于所述新状态下的单独域频计算所述多个域中的每个域的预期电流并且将所述预期电流与针对所述新状态的所述多个域中的每个域的所述预期电流的相关联电压相乘来计算所述多个域的预期功率之和,
将所述和与功率限值进行比较,以及
如果所述和大于所述功率限值,则降低与所述多个域中的至少一个域相关联的所述单独域频以便将所述IC的总瞬时功率维持为低于所述功率限值,其中,所述单元通过计算所述功率之和与所述功率限值之间的比值并且将与所述多个域中的每个域相关联的所述单独域频减少至少所述比值来降低与所述多个域中的至少一个域相关联的所述单独域频。
14.如权利要求13所述的集成电路(IC),其中,所述单元基于电流泄露、目标频率和动态电容(C动态)来计算所述多个域中的每个域的所述预期电流。
15.如权利要求13所述的集成电路(IC),其中,所述单元通过计算活动电流和静态电流并且对所述活动电流和静态电流进行求和来计算所述多个域中的每个域的所述预期电流。
16.如权利要求15所述的集成电路(IC),其中,所述单元通过对处于唤醒状态下的所述域中的每个核的最坏情况的C动态进行求和并且将所述最坏情况的C动态乘以所述域的频率和相关联电压来计算活动电流。
17.如权利要求15所述的集成电路(IC),其中,所述单元通过对唤醒状态下的所述域中的每个核的泄露进行求和来计算静态电流。
18.如权利要求17所述的集成电路(IC),其中,所述泄露是所述域的所述电压和温度下的估计泄露。
19.如权利要求13所述的集成电路(IC),其中,所述单元将指定将在所述多个域中的每个域中使用的频率的新频率值发送至与所述多个域中的每个域相关联的时钟发生器。
20.一种基于电流来控制功率的方法,所述方法包括:
基于集成电路(IC)的功率限值与从最坏情况电流确定得出的最坏功率计算值之间的比较并且通过计算所述最坏情况功率计算值与功率限值之间的比值以及将与多个域中的每个域相关联的单独域频减少至少所述比值来来生成所述IC中的多个域中的每个域的新频率,所述最坏情况电流确定与所述每个域请求进入的状态相关联;以及
将向与所述多个域中的每个域相关联的时钟发生器信令发送的生成以供用于所述多个域中的每个域中的时钟的所述新频率信令发送至与所述多个域中的每个域相关联的时钟发生器。
21.如权利要求20所述的方法,其中,所述最坏情况电流确定基于:基于电流泄露、目标频率和动态电容(C动态)来计算所述多个域中的每个域的预期电流。
22.一种其上存储有指令的计算机可读介质,所述指令当被执行时使集成电路执行一种用于基于电流来控制功率的方法,所述方法包括:
在变换到集成电路(IC)的新状态之前,通过基于所述新状态下的单独域频计算多个域中的每个域的预期电流并且将所述预期电流与针对所述新状态的所述多个域中的每个域的所述预期电流的相关联电压相乘来计算所述IC中的所述多个域的预期功率之和;
将所述和与功率限值进行比较;以及
如果所述和大于所述功率限值,则降低与所述多个域中的至少一个域相关联的所述单独域频以便将所述IC的总瞬时功率维持为低于所述功率限值,其中,降低与所述多个域中的至少一个域相关联的所述单独域频包括:计算所述功率之和与所述功率限值之间的比值,并且将与所述多个域中的每个域相关联的所述单独域频减少至少所述比值。
23.如权利要求22所述的计算机可读介质,其中,计算所述多个域中的每个域的所述预期电流基于电流泄露、目标频率和动态电容(C动态)。
24.如权利要求22所述的计算机可读介质,其中,计算所述多个域中的每个域的所述预期电流包括:计算活动电流和静态电流,并且对所述活动电流和静态电流进行求和。
25.如权利要求24所述的计算机可读介质,其中,计算活动电流包括:对处于唤醒状态下的所述域中的每个核的最坏情况的C动态进行求和,并且将所述最坏情况的C动态乘以所述域的频率和所述相关联电压。
26.如权利要求25所述的计算机可读介质,其中,所述相关联电压是所请求频率的函数。
27.如权利要求24所述的计算机可读介质,其中,计算静态电流包括:对唤醒状态下的所述域中的每个核的泄露进行求和。
28.如权利要求27所述的计算机可读介质,其中,所述泄露是所述域的所述电压和温度下的估计泄露。
29.如权利要求22所述的计算机可读介质,所述方法进一步包括:将指定将在所述多个域中的每个域中使用的频率的新频率值发送至与所述多个域中的每个域相关联的时钟发生器。
30.如权利要求22所述的计算机可读介质,所述方法进一步包括:如果所述和小于所述功率限值,则将所述IC变换到所述新状态。
31.如权利要求22所述的计算机可读介质,其中,所述新状态包括:频率以及以下一项或多项:所述多个域中的每个域的睡眠状态和执行状态。
32.如权利要求22所述的计算机可读介质,所述方法进一步包括:响应于确定了所述和小于所述功率限值,发送通知。
33.如权利要求22所述的计算机可读介质,所述方法进一步包括:通过以下步骤来确定所述功率限值:
如果有的话,基于电池的交流适配器能力和充电状态来确定可用功率;
计算所述IC的最大功率能力;
计算所述IC的、不被包括在所述多个域中的部分的最大功率;以及
将所述功率限值设定为所述IC的最大功率能力与所述IC的、不被包括在所述多个域中的所述部分的最大功率能力之间的差。
34.一种其上存储有指令的计算机可读介质,所述指令当被执行时使集成电路执行一种用于基于电流来控制功率的方法,所述方法包括:
基于集成电路(IC)的功率限值与从最坏情况电流确定得出的最坏功率计算值之间的比较并且通过计算所述最坏情况功率计算值与功率限值之间的比值以及将与多个域中的每个域相关联的单独域频减少至少所述比值来生成所述IC中的多个域中的每个域的新频率,所述最坏情况电流确定与所述每个域请求进入的状态相关联;以及
将向与所述多个域中的每个域相关联的时钟发生器信令发送的生成以供用于所述多个域中的每个域中的时钟的所述新频率信令发送至与所述多个域中的每个域相关联的时钟发生器。
35.如权利要求34所述的计算机可读介质,其中,所述最坏情况电流确定基于:基于电流泄露、目标频率和动态电容(C动态)来计算所述多个域中的每个域的预期电流。
36.一种用于基于电流来控制功率的设备,所述设备包括:
用于在变换到集成电路(IC)的新状态之前通过以下方式来来计算所述IC中的多个域的预期功率之和的装置:基于所述新状态下的单独域频计算多个域中的每个域的预期电流,并且将所述预期电流与针对所述新状态的所述多个域中的每个域的所述预期电流的相关联电压相乘;
用于将所述和与功率限值进行比较的装置;以及
用于如果所述和大于所述功率限值则降低与所述多个域中的至少一个域相关联的所述单独域频以便将所述IC的总瞬时功率维持为低于所述功率限值的装置,其中,用于降低与所述多个域中的至少一个域相关联的所述单独域频的装置包括:用于计算所述功率之和与所述功率限值之间的比值的装置;以及用于将与所述多个域中的每个域相关联的所述单独域频减少至少所述比值的装置。
37.如权利要求36所述的设备,其中,计算所述多个域中的每个域的所述预期电流基于电流泄露、目标频率和动态电容(C动态)。
38.如权利要求36所述的设备,其中,用于计算所述多个域中的每个域的所述预期电流包括:用于计算活动电流和静态电流的装置;以及用于对所述活动电流和静态电流进行求和的装置。
39.如权利要求38所述的设备,其中,用于计算活动电流的装置包括:用于对处于唤醒状态下的所述域中的每个核的最坏情况的C动态进行求和的装置;以及用于将所述最坏情况的C动态乘以所述域的频率和所述相关联电压的装置。
40.如权利要求39所述的设备,其中,所述相关联电压是所请求频率的函数。
41.如权利要求38所述的设备,其中,用于计算静态电流的装置包括:用于对唤醒状态下的所述域中的每个核的泄露进行求和的装置。
42.如权利要求41所述的设备,其中,所述泄露是所述域的所述电压和温度下的估计泄露。
43.如权利要求36所述的设备,进一步包括:用于将指定将在所述多个域中的每个域中使用的频率的新频率值发送至与所述多个域中的每个域相关联的时钟发生器的装置。
44.如权利要求36所述的设备,进一步包括:用于如果所述和小于所述功率限值则将所述IC变换到所述新状态的装置。
45.如权利要求36所述的设备,其中,所述新状态包括:频率以及以下一项或多项:所述多个域中的每个域的睡眠状态和执行状态。
46.如权利要求36所述的设备,进一步包括:用于响应于确定了所述和小于所述功率限值而发送通知的装置。
47.如权利要求36所述的设备,进一步包括:用于通过以下步骤来确定所述功率限值的装置:
如果有的话,基于电池的交流适配器能力和充电状态来确定可用功率;
计算所述IC的最大功率能力;
计算所述IC的、不被包括在所述多个域中的的部分的最大功率;以及
将所述功率限值设定为所述IC的最大功率能力与所述IC的、不被包括在所述多个域中的所述部分的最大功率能力之间的差。
48.一种基于电流来控制功率的设备,所述设备包括:
用于基于集成电路(IC)的功率限值与从最坏情况电流确定得出的最坏功率计算值之间的比较并且通过计算所述最坏情况功率计算值与功率限值之间的比值以及将与多个域中的每个域相关联的单独域频减少至少所述比值来生成所述IC中的多个域中的每个域的新频率的装置,所述最坏情况电流确定与所述每个域请求进入的状态相关联;以及
用于将向与所述多个域中的每个域相关联的时钟发生器信令发送的生成以供用于所述多个域中的每个域中的时钟的所述新频率信令发送至与所述多个域中的每个域相关联的时钟发生器的装置。
49.如权利要求48所述的设备,其中,所述最坏情况电流确定基于:基于电流泄露、目标频率和动态电容(C动态)来计算所述多个域中的每个域的预期电流。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/579,794 US9477243B2 (en) | 2014-12-22 | 2014-12-22 | System maximum current protection |
US14/579,794 | 2014-12-22 | ||
PCT/US2015/059762 WO2016105677A1 (en) | 2014-12-22 | 2015-11-09 | System maximum current protection |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107003685A CN107003685A (zh) | 2017-08-01 |
CN107003685B true CN107003685B (zh) | 2020-02-18 |
Family
ID=56129276
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580063668.3A Active CN107003685B (zh) | 2014-12-22 | 2015-11-09 | 系统最大电流保护 |
Country Status (7)
Country | Link |
---|---|
US (2) | US9477243B2 (zh) |
EP (1) | EP3237995B1 (zh) |
JP (1) | JP6648140B2 (zh) |
KR (1) | KR102425341B1 (zh) |
CN (1) | CN107003685B (zh) |
TW (1) | TWI562075B (zh) |
WO (1) | WO2016105677A1 (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9477243B2 (en) * | 2014-12-22 | 2016-10-25 | Intel Corporation | System maximum current protection |
US10152112B2 (en) * | 2015-06-10 | 2018-12-11 | Sonics, Inc. | Power manager with a power switch arbitrator |
US10234920B2 (en) * | 2016-08-31 | 2019-03-19 | Intel Corporation | Controlling current consumption of a processor based at least in part on platform capacitance |
US20180113502A1 (en) * | 2016-10-24 | 2018-04-26 | Nvidia Corporation | On-chip closed loop dynamic voltage and frequency scaling |
US10423209B2 (en) * | 2017-02-13 | 2019-09-24 | Apple Inc. | Systems and methods for coherent power management |
US10656700B2 (en) * | 2017-07-10 | 2020-05-19 | Oracle International Corporation | Power management in an integrated circuit |
JP6919538B2 (ja) * | 2017-12-05 | 2021-08-18 | 富士通株式会社 | 電力制御システム及び電力制御プログラム |
JP7193718B2 (ja) | 2018-12-19 | 2022-12-21 | 富士通株式会社 | 制御プログラム、情報処理装置及び制御方法 |
KR20200084987A (ko) * | 2019-01-03 | 2020-07-14 | 삼성전자주식회사 | 전력을 제어하기 위한 전자 회로 |
DE102019128074B3 (de) * | 2019-10-17 | 2020-11-12 | Fujitsu Technology Solutions Intellectual Property Gmbh | Verfahren zum Vorgeben einer Leistungsgrenze eines Prozessors |
US11181961B2 (en) * | 2020-04-07 | 2021-11-23 | Dell Products L.P. | System and method for increasing power delivery to information handling systems |
US12093101B2 (en) * | 2021-11-30 | 2024-09-17 | Meta Platforms Technologies, Llc | Systems and methods for peak power control |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8775833B2 (en) * | 2011-09-06 | 2014-07-08 | Intel Corporation | Dynamically allocating a power budget over multiple domains of a processor |
Family Cites Families (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5539603A (en) | 1994-03-02 | 1996-07-23 | Maxim Integrated Products | Current protection method and apparatus and current protected low dropout voltage circuits |
EP1176496A1 (en) * | 2000-07-24 | 2002-01-30 | Hewlett-Packard Company, A Delaware Corporation | Voltage regulation in an integrated circuit |
WO2004107144A1 (en) * | 2003-05-27 | 2004-12-09 | Koninklijke Philips Electronics N.V. | Monitoring and controlling power consumption |
US7615965B2 (en) | 2004-05-14 | 2009-11-10 | O2Micro International Limited | Power management system |
US7509505B2 (en) * | 2005-01-04 | 2009-03-24 | Cisco Technology, Inc. | Method and system for managing power delivery for power over Ethernet systems |
JP2006331107A (ja) * | 2005-05-26 | 2006-12-07 | Matsushita Electric Ind Co Ltd | 電力管理回路、及び電子回路 |
CN100559678C (zh) | 2005-08-18 | 2009-11-11 | 昂宝电子(上海)有限公司 | 具有恒定最大电流的电源变换器保护控制系统与方法 |
US7716502B2 (en) * | 2005-08-24 | 2010-05-11 | Radu Muresan | Current flattening and current sensing methods and devices |
JP2008026948A (ja) * | 2006-07-18 | 2008-02-07 | Renesas Technology Corp | 半導体集積回路 |
JP2008026761A (ja) * | 2006-07-25 | 2008-02-07 | Sony Corp | 消費電力制御装置、画像処理装置、自発光表示装置、電子機器、消費電力制御方法及びコンピュータプログラム |
US8060765B1 (en) * | 2006-11-02 | 2011-11-15 | Nvidia Corporation | Power estimation based on block activity |
US8156362B2 (en) | 2008-03-11 | 2012-04-10 | Globalfoundries Inc. | Hardware monitoring and decision making for transitioning in and out of low-power state |
US8010824B2 (en) * | 2008-04-11 | 2011-08-30 | Advanced Micro Devices , Inc. | Sampling chip activity for real time power estimation |
US8527794B2 (en) * | 2010-05-27 | 2013-09-03 | Advanced Micro Devices, Inc. | Realtime power management of integrated circuits |
US8942932B2 (en) | 2010-08-31 | 2015-01-27 | Advanced Micro Devices, Inc. | Determining transistor leakage for an integrated circuit |
US20120144215A1 (en) * | 2010-12-03 | 2012-06-07 | Advanced Micro Devices, Inc. | Maximum current limiting method and apparatus |
JP2011129147A (ja) * | 2011-01-31 | 2011-06-30 | Panasonic Corp | プロセッサシステム、命令列最適化装置、および命令列最適化プログラム |
US9069555B2 (en) * | 2011-03-21 | 2015-06-30 | Intel Corporation | Managing power consumption in a multi-core processor |
US8862909B2 (en) * | 2011-12-02 | 2014-10-14 | Advanced Micro Devices, Inc. | System and method for determining a power estimate for an I/O controller based on monitored activity levels and adjusting power limit of processing units by comparing the power estimate with an assigned power limit for the I/O controller |
US8924758B2 (en) * | 2011-12-13 | 2014-12-30 | Advanced Micro Devices, Inc. | Method for SOC performance and power optimization |
US9141166B2 (en) | 2011-12-13 | 2015-09-22 | Intel Corporation | Method, apparatus, and system for energy efficiency and energy conservation including dynamic control of energy consumption in power domains |
WO2013147801A1 (en) | 2012-03-29 | 2013-10-03 | Intel Corporation | Dynamic power limit sharing in a platform |
WO2014023812A1 (en) * | 2012-08-08 | 2014-02-13 | St-Ericsson Sa | Adaptive voltage scaling mechanism based on voltage shoot measurement |
EP2892122B1 (en) * | 2012-08-31 | 2020-04-22 | Panasonic Intellectual Property Management Co., Ltd. | Power management system, power management device, and large power-using power load |
EP2912477B1 (en) * | 2012-10-23 | 2018-08-29 | Philips Lighting Holding B.V. | Device and method for determining an individual power representation of operation states |
US20140237272A1 (en) * | 2013-02-19 | 2014-08-21 | Advanced Micro Devices, Inc. | Power control for data processor |
US9335813B2 (en) * | 2013-05-28 | 2016-05-10 | Intel Corporation | Method and system for run-time reallocation of leakage current and dynamic power supply current |
US8963620B2 (en) * | 2013-07-23 | 2015-02-24 | International Business Machines Corporation | Controlling circuit voltage and frequency based upon location-dependent temperature |
US9671844B2 (en) * | 2013-09-26 | 2017-06-06 | Cavium, Inc. | Method and apparatus for managing global chip power on a multicore system on chip |
US9250910B2 (en) * | 2013-09-27 | 2016-02-02 | Intel Corporation | Current change mitigation policy for limiting voltage droop in graphics logic |
US20160147280A1 (en) * | 2014-11-26 | 2016-05-26 | Tessil Thomas | Controlling average power limits of a processor |
US9477243B2 (en) * | 2014-12-22 | 2016-10-25 | Intel Corporation | System maximum current protection |
US9559521B1 (en) * | 2015-12-09 | 2017-01-31 | King Electric Vehicles Inc. | Renewable energy system with integrated home power |
-
2014
- 2014-12-22 US US14/579,794 patent/US9477243B2/en active Active
-
2015
- 2015-11-09 KR KR1020177013817A patent/KR102425341B1/ko active IP Right Grant
- 2015-11-09 JP JP2017533314A patent/JP6648140B2/ja active Active
- 2015-11-09 EP EP15873904.5A patent/EP3237995B1/en not_active Not-in-force
- 2015-11-09 CN CN201580063668.3A patent/CN107003685B/zh active Active
- 2015-11-09 WO PCT/US2015/059762 patent/WO2016105677A1/en active Application Filing
- 2015-11-20 TW TW104138570A patent/TWI562075B/zh not_active IP Right Cessation
-
2016
- 2016-10-21 US US15/331,051 patent/US10222851B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8775833B2 (en) * | 2011-09-06 | 2014-07-08 | Intel Corporation | Dynamically allocating a power budget over multiple domains of a processor |
Also Published As
Publication number | Publication date |
---|---|
EP3237995A4 (en) | 2018-07-25 |
EP3237995A1 (en) | 2017-11-01 |
US20170038815A1 (en) | 2017-02-09 |
TW201629761A (zh) | 2016-08-16 |
US9477243B2 (en) | 2016-10-25 |
KR20170098215A (ko) | 2017-08-29 |
JP2018505470A (ja) | 2018-02-22 |
US20160179110A1 (en) | 2016-06-23 |
JP6648140B2 (ja) | 2020-02-14 |
CN107003685A (zh) | 2017-08-01 |
TWI562075B (en) | 2016-12-11 |
WO2016105677A1 (en) | 2016-06-30 |
KR102425341B1 (ko) | 2022-07-27 |
EP3237995B1 (en) | 2019-07-24 |
US10222851B2 (en) | 2019-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107003685B (zh) | 系统最大电流保护 | |
US11307628B2 (en) | Multi-level CPU high current protection | |
US9377841B2 (en) | Adaptively limiting a maximum operating frequency in a multicore processor | |
US9235252B2 (en) | Dynamic balancing of power across a plurality of processor domains according to power policy control bias | |
US11360540B2 (en) | Processor core energy management | |
US9335813B2 (en) | Method and system for run-time reallocation of leakage current and dynamic power supply current | |
US20090172434A1 (en) | Latency based platform coordination | |
Salehi et al. | Dynamic voltage and frequency scheduling for embedded processors considering power/performance tradeoffs | |
US9360909B2 (en) | System, method and apparatus for energy efficiency and energy conservation by configuring power management parameters during run time | |
GB2511628A (en) | Dynamically controlling a maximum operating voltage for a processor | |
WO2016105876A1 (en) | Enabling system low power state when compute elements are active | |
KR101655030B1 (ko) | 태스크 특성 기반의 여유시간 분배를 통한 동적 전압 주파수 스케일링 방법, 그 방법을 실행시키기 위하여 매체에 저장된 컴퓨터프로그램 및 그 매체 | |
US20140281634A1 (en) | Controlling power supply unit power consumption during idle state | |
US11853111B2 (en) | System and method for controlling electrical current supply in a multi-processor core system via instruction per cycle reduction | |
TW202206973A (zh) | 漏電流退化控制及量測 | |
CN104798002B (zh) | 在处理器中实施功率消耗占空比 | |
Usman et al. | A comparative study of voltage/frequency scaling in NoC | |
KR101863578B1 (ko) | 컴퓨팅 시스템의 적응적인 캐시 메모리 접근 장치 및 그 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |