管理多核处理器中的功耗的制作方法

xiaoxiao2020-7-22  2

【专利下载】Tel:18215660330

管理多核处理器中的功耗的制作方法
【专利摘要】处理器可包括核区和非核区。由核区消耗的功率可通过以下操作来控制:控制处理器的Cdyn以使得该Cdyn落在可容许Cdyn值内而与核区正处理的应用无关。功率管理技术包括测量数字活动因素(DAF)、监视架构和数据活动水平、以及通过基于活动水平扼制指令来控制功率消耗。作为扼制指令的结果,可在第三下降和热量设计点(TDP)中实现。而且,在所述核区处于深度功率节省状态时,由非核区消耗的空闲功率可通过改变参考电压VR和提供给非核区的VP来减小。结果,可减小由非核区消耗的空闲功率。
【专利说明】管理多核处理器中的功耗
【背景技术】
[0001]计算机系统可包括处理器,该处理器可包括核区域和非核区域。核区域可包括一个或多个处理核、高速缓存(例如,LI和L2)、线路占用缓冲器(line-fill buffer),而非核区域可包括末级高速缓存、存储器控制器以及此类其他块。处理器功率管理技术旨在降低核区域所消耗的功率。在一个现有办法中,测量核区域中的活动因素,并且确定与活动因素相对应的功率值(实际功耗值)。随后,电压和/或频率操作点可基于实际功耗值与可允许功率值之间的比较而改变。功率管理技术可在检测到实际功耗值等于或高于可允许功率值之后降低电压和/或频率操作点。然而,在检测到高活动的点与实际降低电压和/或频率擦作点之间可能导致特定时间量。在这两个点之间,计算机系统可以高功率状态操作和高活动状态操作。为了避免这样的情形,处理器(或部分)不得不在较低电压和频率点(V/F)点下装箱(bin)。
[0002]在另一现有方法中,电压和/或频率操作点可基于处理器功率节省(P)状态和引导模式来选择,这可基于实际功耗值来调制电压和/或频率操作点。以上方法依赖于电压操作范围来通过频率增大或减小功率和性能。通过使用每个新一代处理器,电压范围可被减小,因为在VCCmin(VCC最小)保持几乎恒定的同时,针对栅极-氧化物可靠性降低VCCmax (VCC最大)。以上方法本质上对于过功率状况是反应性的。以上所讨论的功率管理技术仅在处理器达到高热量或功率状态之后才作出响应。结果,响应于热量或功率状态的改变而实际改变电压和/或频率操作点所花的时间(或等待时间)是相当多的,因此需要减小等待时间。
[0003]而且,另一方面,现代处理器以许多核设计为目标,并且这些核被耦合至公共非核区。通过进程技术的改进,处理器内的非核区在尺寸上变得更大。现代处理器中的非核区可包括许多功能和逻辑块(例如,存储器控制器、末级高速缓存、归属代理、路由代理、高速缓存代理、功率控制单元、接口以及此类其他块)并且通常可在与核区的功率平面(powerplane)不同的功率平面上操作。合需的是,这些处理器需要消耗低空闲功率,例如,以便降低所消耗的总能量和/或改进电池寿命。然而,此类较大非核区所消耗的功率已达到相当的水平(接近处理器所消耗的总功率的50% )。
[0004]对非核区中功耗的管理已变得比以往更加重要。非核区中的功率管理提出了附加挑战,因为没有像核区那样的良好定义的睡眠状态(例如,CO至C6/C7)。尤其是,当核区处于诸如C3、C6/C7之类的深度睡眠状态或任何其他类似的状态(称为封装C状态)时,核架构状态被保存在非核区中,并且使用每核功率门限晶体管(PGT)或嵌入式功率门限(EPG)将核电压减小至基本最小值。在此状况下,核区的空闲功耗几乎为零,而非核区所消耗的空闲功率是相当大的。而且,与核区不同,非核区必须活跃以在指定等待时间内服务任何外部请求。这些处理器中的许多是针对多插座配置而设计的,且分布式存储器被耦合至这多个插座。通过使用诸如电压和功率缩放之类的功率优化技术可影响对对等插座的探听或存储器访问响应或者系统代理响应等待时间。因而,当前处理器不使用电压/频率缩放技术来在核区处于封装C状态时保存非核区中的功率。结果,处理器封装空闲功率高达热量设计功率(TDP)功率的20-40%。因而,需要处理器的核区和非核区两者中的改进的功率管理技术。
【专利附图】

【附图说明】
[0005]本文中所描述的本发明通过示例而非限制地在附图中示出。为说明的简单和清楚起见,在附图中示出的元件不一定按比例绘制。例如,为清楚起见,某些元件的尺寸可能相对于其它元件被放大。此外,在认为合适的地方,在附图中重复附图标记以指示相应或相似的元件。
[0006]图1例示了处理器100,其支持根据一个实施例的核区中基于活动的功率节省技术以及非核区中基于负载线IR电压降的功率节省技术。
[0007]图2例示了根据一个实施例的依照总电容(Ctotal (C总计))和动态电容(Cdyn)建模的处理器的核区。
[0008]图3例示了根据一个实施例的Cdyn根据应用中的工作负载的改变而变化的标绘图。
[0009]图4例示了流程图,该流程图描绘了根据一个实施例的用在核区中的基于活动的功率节省技术。
[0010]图5例示了根据一个实施例的用于实现用在核区中的基于活动的功率节省技术的框图。
[0011]图6例示了根据一个实施例的用于实现用在核区中的基于活动的功率节省技术的活动累积逻辑的框图。
[0012]图7是例示根据一个实施例的基于活动的功率节省技术对核区中的瞬时活动的影响的曲线图。
[0013]图8是例示根据一个实施例的基于活动的功率节省技术对核区中的平均活动的影响的曲线图。
[0014]图9例示了流程图,该流程图描绘了根据一个实施例的用在非核区中的基于负载线IR电压降的功率节省技术。
[0015]图10㈧、10(B)和10(C)例示了根据一个实施例的在使用基于负载线IR电压降的功率节省技术时提供给非核区的电压的减小。
[0016]图11(A)、11 (B)和Il(C)是时序图,它们例示了根据一个实施例的响应于在非核区中基于负载线IR电压降的功率节省技术,电流、电压和功率的变化。
[0017]图12例示了根据本发明的实施例的计算机系统的框图。
[0018]详细描述
[0019]以下描述描绘了用于投递弱有序事务(weakly ordered transaction)的技术的实施例。在以下描述中,陈述了诸如逻辑实现、资源定位、或共享、或复制实现、系统组件的类型和相互关系、以及逻辑划分/整合选择之类的多个具体细节,以提供对本发明的更透彻理解。然而,本领域技术人员应当理解,本发明无需这些特定细节也可实现。在其它实例中,未详细示出控制结构、门级电路以及完整软件指令序列,以免使本发明难以理解。本领域技术人员利用所包括的描述将能在无需过度实验的情况下实现适当的功能。
[0020]在说明书中对“一个实施例”、“实施例”、“示例实施例”等的引用表明所描述的实施例可包括特定特征、结构或特性,但不一定每个实施例均包括该特定特征、结构或特性。此外,这样的短语不一定是指同一个实施例。此外,当结合实施例描述特定特征、结构或特性时,认为本领域技术人员知道结合无论是否明显描述的其他实施例来实现这些特征、结构或特性。
[0021]本发明的实施例可实现在硬件、固件、软件或它们的任意组合中。本发明的实施例还可被实现为存储在机器可读介质上的指令,其可由一个或多个处理器读取和执行。机器可读介质可包括用于存储或传送机器(例如,计算设备)可读形式的信息的任何机制。
[0022]例如,机器可读介质可包括只读存储器(ROM);随机存取存储器(RAM);磁盘存储介质;光存储介质;闪存存储设备;电气、光学、声学或其他类似信号。此外,固件、软件、例程和指令在本文中可被描述为执行特定动作。然而,应当理解,此类描述仅仅是出于方便起见,并且此类动作实际上由计算设备、处理器、控制器、以及其他设备执行固件、软件、例程和指令而导致的。
[0023]处理器形成计算系统的重要部分。当前处理器具有包括多个处理核和高速缓存的核区以及大的非核区。处理器所消耗的功率对计算系统所消耗的整体功率有影响。处理器所消耗的动态功率(P)可由P = Cdyn*(Vcc)2*F给出。在一个实施例中,处理器的核区所消耗的功率可通过控制处理器的CMyn来控制。在一个实施例中,可控制CMyn以使得CMyn在可容许Cdyn值之内,而与核区正处理的应用(或代码)无关。在一个实施例中,功率管理技术可包括测量数字活动因素(DAF)、监视架构和数据活动水平、以及通过基于活动水平扼制指令来控制功耗。在一个实施例中,这样的方法可提供细粒度功率管理技术,以及提供用于创建与对被处理的代码起反应的升压模式(boost mode)相比,在处理代码时控制代码的升压模式的能力。在一个实施例中,升压模式可以指以较高频率和较高电压操作点操作核或处理器,以对较轻工作负载实现较高性能。
[0024]在一个实施例中,为了控制核区所消耗的功率,处理器可包括多个活动传感器、活动累积逻辑、扼制逻辑和扼制器。在一个实施例中,活动传感器可感测块(例如,指令获取和解码单元、执行单元、以及处理核内的此类其他单元)内发生的活动,并将活动水平(架构和数据活动值)提供给活动累积逻辑。在一个实施例中,活动传感器可被设置在处理核内的每个块的接口(或端口)中,以使得活动传感器能检测架构和数据活动事件。在一个实施例中,活动累积逻辑可响应于收集来自活动传感器的活动值生成累积活动值。在一个实施例中,活动累积逻辑可将累积的活动水平提供给扼制逻辑。在一个实施例中,活动累积逻辑(AAL)可包括加权逻辑和聚合器,并且该加权逻辑可向由活动传感器提供的每个活动值指派权重,而聚合器可累积(或总计)活动值以生成累积活动值。
[0025]在一个实施例中,扼制逻辑可响应于接收到累积的活动水平确定Cdyn_actual (Cdyn_实际)。在一个实施例中,扼制逻辑还可将Cdyn_actual校准到功率计分值。在一个实施例中,扼制逻辑可将功率计分与由功率控制单元提供的目标值(可容许Cdyn值)作比较,并且如果功率计分大于目标值,则生成第一信号,而如果功率计分小于目标值,则生成第二信号。在一个实施例中,扼制逻辑可确定基于第一信号的第一指令散发率(或值)以及基于第二信号的第二指令散发值。在一个实施例中,扼制逻辑将第一或第二指令散发率提供给扼制器。
[0026]在一个实施例中,扼制器可基于接收自扼制逻辑的信号改变(增大或减小)对指令散发(或向执行单元提供指令的速率)的扼制,或者维持先前扼制水平。在一个实施例中,扼制器可响应于接收到第一指令散发值增大指令扼制(即,更少的指令可被提供给执行单元),而扼制器可响应于接收到第二指令散发值减小指令扼制(即,更大数目的指令被允许抵达执行单元)。因而,核区中(或处理核内)的功耗可通过基于处理核中的活动水平扼制指令散发来控制。作为基于活动水平(或Cdyn_actual)扼制指令的结果,可以不同时域(诸如第三下降(3rddr00p) (I微秒)以及热量设计点(TDP) (I毫秒))实现扼制,这允许长期(即,TDP)和短期(即,第三下降)操作以控制处理器的核区中的功耗。
[0027]非核区的尺寸在现有处理器中一直持续增大,所以处理器的非核区所消耗的功率也持续增加。特别地,在一个实施例中,非核区所消耗的空闲功率(即,在核区处于诸如封装C-状态之类的深度功率节省状态时非核区所消耗的功率)可通过改变提供给非核区的电压(即,参考电压VR)来减小。在一个实施例中,电压调节器的输出可通过负载电阻器RL耦合至非核区的供电引脚。非核区的供电引脚处的电压(VP)比VR小等于IR电压降(=ICORL)的量,即,VP= [VR-(ICORL)]。
[0028]在一个实施例中,如果非核区必须在由部件的制造商指定的频率值下操作,则最小电压值(VPmin)将被提供给非核区。在一个实施例中,如果VR = X且ICC = ICC_peak(ICC_ 峰值),则 VP_peak = (X_ICC_peak*RL)伏特。在一个实施例中,VP_peak 应当至少等于VPmin以避免设计失败,并且可能不能将VP_peak减小至低于VPmin值。在一个实施例中,如果核区处于封装C-状态中,则ICC的值可等于ICC_idle(ICC_空闲),且非核区的供电引脚处的电压(¥?」(116(¥?_空闲))可等于=(X-1CC_idle*RL)。由于ICC_idle小于ICC_peak,因此乘积(ICC_idle*RL)将小于乘积(ICC_peak*RL)。结果,VP_idle将大于VP_peak。在一个实施例中,在核区处于封装C-状态下时在非核区的引脚处提供最小电压(VPmin)可能是足够的。
[0029]但是,在不存在用于在电流(ICCjdle)流过负载电阻器RL时改变参考电压VR的技术的情形中,大于VPmin (或VP_peak)的电压VP_idle被提供给非核区。不必要地是,将等于(VP_idle-VP_peak)的额外电压值提供给非核区,即使在ICC_idle流过负载电阻器RL时。结果,即使在非核区空闲时,非核区也消耗与等于(VP_idle-VP_peak)的电压的平方成比例的额外功率。在一个实施例中,在核区处于深度封装C-状态时,可改变参考电压(VR)以减小在非核区的供电引脚提供的电压(VPjdle)。在一个实施例中,可将参考电压VR减小至VP_reduced(VP_经减小)以使VP_idle减至稍微高于VPmin (或VP_peak)的值。在一个实施例中,如果(VP_idle-VP_peak)趋向于零,则非核区所消耗的空闲功率可以是最小值。在一个实施例中,在核区处于深度封装C-状态时,可改变参考电压(VR)以节省或减小在非核区的所消耗的空闲功率。
[0030]图1中例示了处理器100的实施例,该处理器可支持用于减小处理器的核区和非核区中消耗的功率的功率节省技术。在一个实施例中,处理器100可包括核区105和非核区150。在一个实施例中,核105和非核150可支持点对点双向总线以增强处理核(P-核)110之间以及核区105与非核区150之间的通信。在一个实施例中,核区105可设置有功率平面195,该功率平面可包括电压调节器180,并且电压调节器182的输出101可通过负载电阻器RL102耦合至供电引脚104 。
[0031]在一个实施例中,核区105可包括处理核,诸如P-核110-A至110-N、分别与P-核IlO-A至IIO-N相关联的每-核高速缓存120-A至120-N、以及分别与P-核110-A至110-N相关联的中-级高速缓存130-A至130-N。在一个实施例中,P-核110可包括指令队列106、扼制器107、活动累积逻辑AAL108、扼制逻辑TL109、指令获取单元IFU112、解码单元113、保留站RS114、执行单元EU115、浮点执行单元FPU116、重排序缓冲器ROB117、以及回退单元RUl 18。在一个实施例中,每个处理器核IIO-B至IIO-N可包括与处理核110-A中描绘的块相类似的块,并且出于简便起见,处理核110-B至110-N的每一个中的内部细节不被示出。在一个实施例中,每核高速缓存120可包括可支持较高访问速度的存储器技术,这可减小例如指令和数据获取的等待时间。
[0032]在一个实施例中,活动传感器179可感测块IFU112、DU113、RS114、EU115、FPU116、R0B117和RU118内发生的活动,并且将活动水平(架构和数据活动值)提供给活动累积逻辑。在一个实施例中,活动传感器179可被设置在处理核110-A内的每个块的数据路径中,以使得活动传感器179能检测架构和数据活动值。在一个实施例中,为了控制核区105所消耗的功率,AAL108可收集多个活动传感器179感测的活动水平并生成累积活动值。在一个实施例中,活动累积逻辑AAL108可将累积的活动值提供给扼制逻辑TL109。
[0033]在一个实施例中,TL109可响应于接收到累积的活动水平确定Cdyn_actual。在一个实施例中,TL109还可将Cdyn_actual校准到功率计分值。在一个实施例中,TL109可将功率计分与目标值(所容许Cdyn值)作比较并生成控制信号,这可指示是增大还是减小、抑或维持指令或指令散发速率的扼制水平。在一个实施例中,扼制器107可基于接收自TL109的控制信号改变(增大、减小)或者维持对指令或指令散发速率的扼制。在一个实施例中,扼制器107可响应于接收到控制信号增大指令扼制(即,较少的指令可被提供给执行单元)或者减小指令扼制(即,更多数目的指令被允许抵达执行单元)。
[0034]因而,核区105中(或处理核110内)的功率消耗可通过基于处理核110中的活动水平(或Cdyn_actual)扼制指令来控制。在一个实施例中,对指令的扼制可直接基于活动水平(或Cdyn)来执行,用于控制功耗的能力可以更快。而且,通过将Cdyn限制为设定值,对核中的功率的消耗的控制可基于主动基础来执行,而非是对过度功耗状况的发生起反应。作为基于活动水平(或Cdyn_actual)扼制指令的结果,可以不同时域(诸如第三下降(droop) (I微秒)以及热量设计点(TDP) (I毫秒))实现扼制,这可允许长期(即,TDP)和短期(即,第三下降)操作以控制处理器100的核区105中的功耗。在一个实施例中,Cdyn及其与类型应用的关系在以下图3中例示出。
[0035]虽然核区105中的功耗可通过使用以上所讨论的基于活动水平的技术来控制或管理,但是非核区150中的功耗可通过使用以下描述的功率管理技术来管理。在一个实施例中,非核区150可包括存储器控制器155、末级高速缓存LLC160、归属代理HA161、高速缓存代理CA162、路由代理RA163、全局块/PLL164、接口 165、和功率管理单元168。在一个实施例中,参考电压VR可被改变以在核区105可处于深度封装C-状态(S卩,诸如C3、C6/C7之类的深度功率节省状态)时减小——特别是——非核区150所消耗的空闲功率。在一个实施例中,非核区150可设置有功率平面197,并且该功率平面197可包括电压调节器195,且电压调节器195的输出196可通过负载电阻器RL192耦合至非核区150的供电引脚194。在一个实施例中,在核区105处于封装C-状态时,接口路径199上的活动或传输可以为零。
[0036]在核区105活跃时,峰值电流量(ICC_peak(ICC_峰值))可流过RL192,并且非核区150的供电引脚194处的电压(VP_peak(VP_峰值))可比(电压调节器195的输出196处的)参考电压VR小等于IR电压降(=ICC_peak*RL)的量,即,VP_peak = [VR-(ICC_peak*RL)]。例如,如果 VR= I 伏特,RL192 = 1.4 毫欧,且 ICC193 = ICC_peak = 50 安培,则IR电压降可等于(ICC*RL) = (50安培*1.4毫欧)=70毫伏(mv)。结果,供电引脚194处提供的电压(VP_peak)可等于[lvolt_70mv] = 0.93伏特。在一个实施例中,如果非核区150必须在由部件(即,处理器100)的制造商所指定的频率值(或面元(bin)频率)下操作,则电压VPmin的最小值(在此示例中,其等于VP-peak)可被提供给非核区150。在一个实施例中,为了避免设计失败,其可能不能将参考电压VR的值减小至指定值(在以上示例中为I伏特)之下。
[0037]在不存在用于改变参考电压VR的技术的情况下且在核区105处于封装C-状态时,流过RL192的电流(ICC193)可等于ICC_idle (ICC_空闲)且非核区150的供电引脚194 处的电压(¥卩_1(116(¥?_空闲))可等于=[VR-(ICC_idle*RL)]。由于 ICC_idle 小于ICC_peak,因此乘积(ICC_idle*RL)将小于乘积(ICC_peak*RL)。结果,VP_idle 将大于VP_peak。例如,ICCjdle可等于20安培,而VP = [I伏特_ (20安培*1.4毫欧)]=[I伏特-28mv] = 0.972 伏特,这大于 VP_peak(0.93 伏特)。结果,等于(VP_idle_VP_peak)=(0.972-0.93 = 0.042伏特)的额外电压不必提供给非核区150。结果,处于空闲状态的非核区所消耗的功率(即,power consumed_idle (功率消耗_空闲))可以是normal_power_consumed_idle (正常_功率_消耗_空闲),这可等于(=动态功率+漏泄功率={[Cdyn*(VP_idle)2*f] + [(VP_idle)4 的函数]} = {[5nF* (0.972) 2*2.53GhZ] + [5 瓦特]}=16.95瓦特。
[0038]在一个实施例中,通过基于核区105是否处于深度功率节省状态或封装C-状态来机会性地改变参考电压VR可提供在核区105的空闲状态期间节省功耗的机会。在一个实施例中,提供给核区105的电压可通过使用功率门限晶体管(PGT)或嵌入式功率门限(EPG)而基本上被切断。在一个实施例中,在核区105在深度功率节省状态下操作时,由核区105注入到非核区150中的活动可能基本上很低。在一个实施例中,在核区105处于封装C-状态下时在非核区150的供电引脚194处提供最小电压(VPmin = 0.93伏特)可能是足够的。为了将VP_idle减小至VP_reduced(VP_减小),即可能更接近VPmin的值,功率管理单元168可检测核区105的封装C-状态状况并生成数字格式的电压值(VID_R)。在一个实施例中,VID_R值可被提供给电压调节器195。在一个实施例中,电压调节器195可响应于从功率管理单元168接收卩10_1?值生成参考电压VR,其可能小于VR_peak( = I伏特)。
[0039]在一个实施例中,供电引脚194处提供的VP_idle (或¥?_1101'1^1(¥?_正常))可被减小,这归因于VR的值从VR_peak(VR_峰)值(或VR_normal)至VR_reduced(VR_减小)值的减小。在一个实施例中,将参考电压VR从VR_normal值减小至VR_reduced值可导致VP从VP_idle至VP_reduced(VP_减小)的减小。在一个实施例中,非核区150所消耗的功率也可响应于VP的值从VP_idle减小至VP_reduced而减小。例如,响应于接收到VID,电压调节器195可将VR从VR_normal (I伏特)减小至VR_reduced(0.96伏特),结果,VP 可从 VP_idle 减小至 VP_reduced [ = 0.96-(20 安培 *1.4 毫欧)=(0.96-0.028)=0.932伏特]。在一个实施例中,power consumed_idle (消耗的功率_空闲)可被减小至 Reduced_power_consumed_idle (减小 _ 功率 _ 消耗 _ 空闲)(即,P_idle_reduced =动态功率 + 漏泄功率={[Cdyn*(VP_reduced)2*f] + [(VP_reduced)4 的函数]} = {例如,[5nF*(0.932)2*2.53GhZ] + [4 瓦特]} = 14.998 瓦特)。结果,节省的功率=[(normal_power_consumed_idle)-(Reduced_power_consumed_idle) = (16.95-14.998) = L 96 瓦特)。因此,在一个实施例中,响应于核区105进入封装C-状态,通过机会性地改变参考电压VR,非核区 150 所消耗的功率可从 normal_power_consumed_idle 减小至 reduced_power_consumed_idle。
[0040]在一个实施例中,功率管理单元168可检测核区105从封装C-状态至正常模式的退出事件的开始。响应于监测到退出事件的开始,功率管理单元168可生成与正常参考电压相对应的VID_N值,并且该VID_N值可被提供给电压调节器195。在一个实施例中,响应于接收到VID_N值,电压调节器195可将VR值从VR_reduced增大至VR_normal (或VR_peak)值。结果,非核区150的供电引脚104处提供的电压可被维持在VPmin值或略微高于该VPmin值。在一个实施例中,参考电压从VR_reduced至VR_normal的改变以及VP从VP_reduced至VP_idle (或VP_normal)的改变可在非核150可看到核区105导致的任何活动之前的退出等待时间内良好地进行。因而,最小值电压VPmin水平可被维持,而不影响处理器100的性能。
[0041]图2中例示了核区105的实施例以及确定相对应的动态电容Cdyn。在一个实施例中,核210可由总电容CT()tal (C,6 )220来表示,而动态电容Cdyn240可等于(CT()tal220*活动因子)。在一个实施例中,Cdyn240可基于正被处理的应用(或代码)而改变。例如,与诸如主流应用之类的一些其他应用相比,诸如功率病毒和HPC之类的一些应用可展现更高的活动水平。因而,Cdyn240可以是CT()tal220的几分之一。
[0042]图3中描绘了各种应用类型的Cdyn对工作负载的曲线图300。曲线图300包括Y轴310和X轴320,这可分别表示归一化Cdyn以及基于各种应用类型可用的应用的恰当数目。在一个实施例中,曲线图300包括各种应用,诸如空闲应用330,该空闲应用在数目上可能是较大的,接下来是主流应用340、高性能计算HPC应用350、和功率病毒应用360。在一个实施例中,针对主流应用340可通过将扼制设置成由线345指示的较低应用比率0.55来优化处理器100。然而,如果将针对HPC应用优化处理器100,则扼制可被设置成由线355指示的较高应用比率0.633。在一个实施例中,应用比率可以指与诸如功率病毒(PV)之类的最高功率消耗应用所消耗的功率相比,给定应用消耗的功率的比率。在其他实施例中,应用比率也可指真实应用与功率病毒应用的比率。
[0043]在一个实施例中,如果要功率病毒应用360,则目标值(可容许Cdyn)可被设置成这样的值:该值使得Cdyn_actual与目标值的比较可设置更紧缩(即,更高)的扼制值,以使得与处理HPC应用350或主流应用340时的情况相比,在给定时间段内较少指令抵达执行单元。在一个实施例中,以上所讨论的功率管理技术可允许处理器100处理功率病毒应用,然而,对指令的扼制可设置更紧缩(即,更高)扼制值以使得更少指令将被处理。此类办法避免其中高功率应用(例如,功率病毒)限制可处理所有应用的频率的情形。此外,通过扼制高功率应用,在处理高功率应用时汲取的电流被减小,从而允许通过扼制水平来设置最低操作电压(以及因此的频率)。而且,此类办法可允许用户监视和配置处理器以通过配置机器专用寄存器MSRlll来针对HPC代码或主流代码实时地优化。
[0044]图4中例示了描绘执行以上所描述的功率管理技术的同时核区105的操作的流程图。在框410,活动传感器179或数据图案传感器505可基于诸如IFU510、IQ520和EU550之类的一个或多个功能单元的端口或数据路径上提供的数据图案和架构事件来生成活动值/水平。在一个实施例中,活动值可被提供给活动累积逻辑AAL570。
[0045]在框420,活动累积逻辑AAL570可接收来自数据图案(或活动)传感器的活动值并生成累积活动值。在一个实施例中,AAL570可包括加权逻辑610、求和单元630、640、650和660,以及累积器670。在一个实施例中,加权逻辑610可包括加权元件6IO-A至610-H,并且加权元件610-A至610-D中的每一个可从诸如IFU510、IQ520和EU550之类的功能单元接收数据输入605-A至605-D,如此接收到的数据输入605-A至605-D可指示正被执行的工作。在一个实施例中,接收自功能单元510、520和550的数据输入605-A至605-D可每周期地更新,且此类数据输入605-A至605-D的宽度可小于128比特。在一个实施例中,接收自功能单元的数据输入605-A至605-D可表示操作功率,并且可例如包括浮点单元数字活动因子(FPUDAF)、指令获取和重操纵数字活动因子(IFRDAF),以及此类其他类似输入值。在一个实施例中,在将经加权输入提供给求和单元630之前,可基于预定逻辑向数据输入605-A至605-D提供权重值。在一个实施例中,加权元件6IO-E至6IO-H可从指示正被消耗的数据的寄存器文件接收数据输入605-E至605-H。在一个实施例中,数据输入605-E至605-H可每128周期地更新,并且在将经加权输入提供给求和单元640之前,可向数据输入605-E至605-H提供权重值。在一个实施例中,求和单元650和660以及累积器670可一起生成恰当宽度(例如,44比特宽)的累积活动值。在一个实施例中,求和单元650可将来自640的数据输入总和与来自650的活动输入总和进行求和。在一个实施例中,累积器锁存器670可通过累积器求和器660反馈值,并且可生成恰当宽度的累积活动值。
[0046]在框430中,扼制逻辑TL560可接收由AAL560提供的累积活动值,并生成动态电容(Cdyn)值。在一个实施例中,扼制逻辑TL560可基于CT()tal和累积活动值确定Cdyn_actual。在框450中,扼制逻辑TL560可校准Cdyn_actual以表示功率计分值。
[0047]在框460,扼制逻辑TL560可将基于Cdyn_actual值生成的功率计分与由功率管理单元PMU580提供的目标值作比较。在一个实施例中,由PMU580提供的目标值可表示被校准为功率计分的可容许Cdyn值。在一个实施例中,用户可针对HPC应用350优化处理器,并且可容许Cdyn值可等于应用比率0.633,该可容许Cdyn值可被校准至功率计分值。在一个实施例中,如果核区105正处理功率病毒应用360,则活动水平、累积活动值、Cdyn_actual、和功率计分可表示较高值。
[0048]在框470,TL560可将对应于可容许Cdyn的功率计分与对应于Cdyn_actual的功率计分作比较,并且如果功率计分小于目标值,则控制传递至框480,否则传递至框490。在一个实施例中,TL560在功率计分小于目标值的情况下可生成第一信号,而在功率计分大于目标值的情况下可生成第二信号。在以上示例中,TL560可将对应于功率病毒PV应用360的功率计分(即,校准至Cdyn_actual)与目标值作比较,该目标值可针对对应于HPC应用350的可容许Cdyn来设置,并且当功率计分可能大于目标值时,TL560可生成第二信号。
[0049]在框480,扼制器530可响应于接收到第一信号维持或减小对指令的扼制。在一个实施例中,第一信号可指示更多指令可被处理而并未超出Cdyn包络或功率计分包络,并且扼制器530可减小扼制(或增大指令吞吐量)。另一方面,如果第一信号指示指令吞吐量小于目标值,但是非常接近目标值,则扼制器530可维持指令吞吐量而不改变扼制水平。[0050]在框490,扼制器530可增大对指令的扼制以确保功耗在TDP包络内。在一个实施例中,如果功率计分大于目标值,则通过增大扼制水平由此允许更少的指令抵达执行单元来减小指令吞吐量。在以上示例中,扼制器530可快速增大扼制水平以减小指令吞吐量。作为基于活动水平(或Cdyn_actual)扼制指令的结果,可以不同时域(诸如第三下降(droop) (I微秒)以及热量设计点(TDP) (I毫秒))实现扼制,这可允许长期(即,TDP)和短期(即,第三下降)操作以控制处理器100的核区105中的功耗。
[0051]图7中例不了描绘具有扼制和没有扼制的瞬时活动的标绘的曲线图700。曲线图700包括表示应用比率的Y轴710和表示时间(以微秒计)的X轴740。在一个实施例中,如果可能发生历经比小持续时间Tl更短的持续时间的突发活动(瞬时活动)可在任何扼制下被允许,并且曲线图700中描绘了可在没有被扼制的情况下被允许的这样的突发750。然而,在一个实施例中,如果发生可能存在超过时间持续期Tl的持久活动,则以上所描述的功率管理技术可开始扼制指令。曲线图700描绘了持久活动760,其可如经扼制的活动770所示的被扼制。可观测到,持久活动760如果保持未扼制则可能历经时间持续期T2,然而,在一个实施例中,持久活动760可通过使用以上所描述的功率管理技术来扼制。作为扼制的结果,指令散发或指令吞吐量可被改变,且持久活动760可在更长的时间持续期T3上伸展,并且这样的经伸展的活动可被称为经扼制的活动770。
[0052]图8例示了描绘一时段上所需的平均活动和准许的平均活动的标绘的曲线图800。曲线图800包括表示应用比率的Y轴810和表示时间(以微秒计)的X轴840。在一个实施例中,所需的平均活动可由标绘830来表示,而准许的平均活动可由标绘820来表示。在一个实施例中,时段T5上所需的平均活动可能具有峰值应用比率I。然而,在一个实施例中,峰值应用比率可能不被以上所讨论的功率管理技术所准许。替代地,较低应用比率(例如,0.8)可被准许,并且可能发生所准许的此类经扼制的平均活动820历经的时段为T6, T6 大于 T5。
[0053]图9中例示了在核区105处于封装C状态时用于减小非核区150所消耗的空闲功率的包括功率管理单元PMU168和电压调节器195的功率管理路径的操作的实施例。
[0054]在框910,PMU168可检查核区105是否已进入封装C-状态,且如果核区105已进入封装C-状态,则控制传递至框915,并且PMU168可等待核区105进入深度功率节省状态(或封装C-状态)。
[0055]在框915,PMU168可生成第一电压值(FVID或以上讨论的VID_R),该第一电压值将被提供给向处理器100的非核区150供电的电压调节器195。在一个实施例中,FVID或VID_R可表示数字值(9比特值),电压调节器195可基于该数字值生成参考电压VR ( = VR_reduced)。在框920,PMU168可将FVID提供给电压调节器195。
[0056]在框930,电压调节器195可基于FVID值将VR从正常参考电压(VR_normal)改变为减小的参考电压(VR_reduced)。在一个实施例中,可将VR从I伏特的VR_normal减至
0.96 伏特的 VR_reduced 值。
[0057]在框940,作为VR从VR_normal改变为VR_reduced的结果,供电引脚194处提供的电压VP可改变为VP_reduced。在一个实施例中,可响应于VR从I伏特改变为0.96伏特将VP从0.972伏特的VP_idle减小至0.932伏特,如上所述的。
[0058]在框945,作为VP从VP_idle改变为VP_reduced (即,从0.972伏特至0.932伏特)的结果,可向非核区150的供电引脚194提供引脚电压VP_reduCed( = 0.932伏特)。作为降低提供给非核区150的电压值的结果,由非核区150消耗的空闲功率也减小(例如,从16.95瓦特到14.988瓦特,从而导致1.96瓦特的功率节省,如以上所描述的)。
[0059]在框950,PMU168可检查核的封装C-状态退出事件,并且如果PMU168检测到封装C-状态退出事件,则控制传递至框960。在一个实施例中,框950中由PMU168执行的操作可与框915至945中的操作并行地执行或独立地执行。
[0060]在框960,PMU168可在核区105或核区105内的任何处理核110从封装C-状态退出以进入活跃状态之前执行框965至990。在框965,PMU168可生成第二电压值(SVID或以上讨论的VID_N),该第二电压值将被提供给向处理器100的非核区150供电的电压调节器195。在一个实施例中,SVID或VID_N可表示数字值(9比特值),电压调节器195可基于该数字值生成参考电压VR ( = VR_normal)。在框970,PMU168可将SVID (或VID_N)提供给电压调节器195。
[0061]在框975,电压调节器195可基于SVID值将VR从VR_reduced改变为正常参考电压(VR_normal)。在一个实施例中,可将VR从0.96伏特的VR_reduced值增至I伏特的VR_normal 值。
[0062]在框980,作为VR从VR_reduced改变为VR_normal的结果,供电引脚194处提供的电压VP可改变为VP_idie。在一个实施例中,可响应于VR从0.96伏特改变为I伏特将VP从VP_reduced(0.932伏特)增大至0.972伏特,如上所述的。
[0063]在框990,流过负载电阻器RL192的电流可从ICC_idle(20安培)改变为ICC_peak( = 50安培),作为VP从VP_reduced改变为VP_idle(即,从0.932改变为0.972伏特)以及电流从ICCjdle改变为ICC_peak的结果,可在非核区150的供电引脚194处提供电压VP( = 0.93伏特)。
[0064]图10 (A)、10⑶和10 (C)例示了以上所描述的在使用和不使用功率管理技术的情况下电压调节器195在正常和空闲状况下的操作的实施例。在图10(A)中,虽然核区150在峰值下工作,但是参考电压VR可等于VR_normal,ICC193可等于ICC_peak ;而引脚电压VP 可等于 VP_idle。在一个实施例中,VP_idle 可等于{[VR_normal- (ICC_peak*RL192) ]}。
[0065]例如,如果VR_normal = I 伏特,ICC_peak = 50 安培,且 RL192 = 1.4 莫姆,贝丨JVPjdle = 1-(50*1.4) = 0.93V。如果处理器100必须在针对部件指定的频率F(例如,=2.53GhZ)下操作,则提供电压最小值(=0.93伏特)作为VP_idle。
[0066]然而,当核区105处于封装C-状态时,如图10⑶中所示的,流过负载电阻器RL192的电流ICC193可改变为ICCjdle (例如,=20A),则VP_idle等于[VR_normal-(ICC_idle*RL192)],即 VP_idle = 1-(20*1.4) = 0.972V。但是,0.93V 的 VP_idle足以使处理器100在针对部件指定的频率F下操作,且额外电压(VP_idle-电压最小值=0.972-0.93 = 0.042V)被提供给非核区150。额外电压可导致比所需更多的额外功率消耗。结果,功耗P_normal =动态功率+漏泄功率,P_normal = Cdyn*V2*f+f (V4),=5nf*(0.972*0.972)*2.53Ghz+5 瓦特,=(11.95+5) = 16.95 瓦特。
[0067]为了减小VP,VR将从VR_normal减小至VR_reduced,如图10(C)中所示的。为了减小VR_uncore (VR_非核),PMU168可生成FVID (如框915中所描述的),并将FVID (如框920中所描述的)提供给电压调节器195。响应于接收到FVID,电压调节器195可将VR减小至 VR_reduced(例如,=0.96V)。响应于 VR 从 VR_normal 改变至 VR_reduced, VP_idle变为 VP_reduced ( = 0.96-(20*1.4) = 0.96-0.028 = 0.932V)。结果,功耗 P_reduced =Cdyn*V2*f+f (V4) = 5nf*(0.932*0.932)*2.53Ghz+4 瓦特=(10.988+4) = 14.988 瓦特。因此,节省的功率=P_normal-P_reduced = 16.95-14.988 = 1.96 瓦特。
[0068]图ll(a)、ll(b)和11(c)分别描绘了曲线图110、1140和1160,这些曲线图例示了响应于核区105进入深度功率节省状态(封装C-状态)而对非核区150的影响。在一个实施例中,图11(a)的曲线图包括表示时间的X轴1101,以及表示电流(ICC193)的Y轴1102。在一个实施例中,在核区105进入由进入点1102前的区域所指示的封装C-状态之前,ICC193可等于ICC_peakll06(例如,=50安培)。在进入点1105,核区105可开始进入封装C-状态,并且响应于点1105处的进入事件,电流ICC193可从CC_peak改变为点1108处的ICCjdle ( = 20安培),并且ICCjdle水平可由ICC_idlell07指示。在一个实施例中,在退出点1109,ICC193可从ICCjdlel 107改变为ICC_peakll06,并且核区105的退出事件可在时间点1110处完成。在一个实施例中,点1108与1105之间的时间差可表示进入等待时间,而点1109与1110之间的时间差可表示退出等待时间。
[0069]图11(b)例示了响应于电流从ICC_peakll06改变为ICC_idlell07以及从ICC_idlell07改变回ICC_peakll06,参考电压VR以及引脚电压VP的变化。在一个实施例中,图11(b)的曲线图包括表示时间的X轴1111,以及表示电压(VR和VP)的Y轴1112。在进入点1105之前,电压参考VR和VP可分别等于VR_normal 1113和VP_idle或VP_normal 1115。在退出点1109之后,电压参考VR和VP可分别等于VR_normallll3和VP_idlelll5。响应于在点1105发生进入事件,电压调节器195可接收FVID (或VID_R),且参考电压VR可从VR_normal 1113(例如,=I伏特)改变为VR_reducedlll4 (例如,=0.96伏特)。响应于参考电压VR从VR_normallll3改变为VR_reducedlll4,供电引脚194处的引脚电压VP可从 VP_idlelll5(例如,=0.972 伏特)减至 VP_reducedlll6 (例如,=0.932 伏特)。在一个实施例中,参考电压VR和引脚电压VP在时间点1108与1109之间可分别保持在VR_reducedlll4和VP_reducedlll6,时间点1108与1109之间可表示其中核区105保持在深度功率节省状态中的时间持续期。
[0070]图11(c)例示了响应于引脚电压VP从VP_idlelll5至VP_reducedlll6的改变所消耗的功率的变化。在一个实施例中,图11(c)的曲线图包括表示时间的X轴1121,以及表示所消耗功率的Y轴1122。在进入点1105之前,powerConsumed_idle (消耗功率_空闲)可等于正常功率消耗1123 (例如,=16.95瓦特)。在退出点1109之后,power Consumed_idle可再次抵达先前水平的正常功率消耗1123。在一个实施例中,响应于核区105进入封装C-状态,非核区150所消耗的功率可减至经减小功率消耗1124 (例如,=14.988瓦特)。在一个实施例中,当引脚电压VP从VPjdlel 115减至VP_reducedlll6时,非核区150所消耗的功率可减小,并且非核区150所消耗的功率可能与供电引脚164处提供的引脚电压的平方成比例。在一个实施例中,所节省的功率的量可等于(Power Consumed_idle_经减小功率消耗)=(16.95-14.988) = 1.95 伏特。
[0071]参看图12,计算系统1200可包括通用处理器1202,该通用处理器包括单指令多数据(SMD)处理器和图形处理器单元(GPU) 1205。在一个实施例中,除执行各个其他任何任务或存储指令序列之外,处理器1202可执行增强操作以提供机器可读存储介质1225中的增强操作。然而,指令序列也可被存储在存储器1220中或任何其他适合的存储介质中。
[0072]虽然在图12中描绘了分开的图形处理器单元1205,但是作为另一示例,在一些实施例中,图形处理器单元1205可被用来执行增强操作。操作计算机系统1200的处理器1202可以是耦合至逻辑1230的一个或多个处理器核。逻辑1230可被耦合至一个或多个I/O设备1260,其可提供与计算机系统1200的接口。例如,在一个实施例中,逻辑1230可以是芯片组逻辑。逻辑1230被耦合至存储器1220,后者可以是任何类型的存储,包括光学、磁、或半导体存储。图形处理器单元1205通过帧缓冲器耦合至显示器1240。
[0073]在一个实施例中,处理器1202可包括核区1203和非核区1204。在一个实施例中,处理器1202的核区1203所消耗的功率可通过控制处理器1202的Cdyn来控制。在一个实施例中,可控制Cdyn以使得Cdyn在可容许Cdyn值之内,而与核区1203正处理的应用(或代码)无关。在一个实施例中,功率管理技术可包括测量数字活动因素(DAF)、监视架构和数据活动水平、以及通过基于活动水平扼制指令来控制功率消耗,如以上所述的。作为基于活动水平(或Cdyn_actual)扼制指令的结果,可以不同时域(诸如第三下降(droop) (I微秒)以及热量设计点(TDP) (I毫秒))实现扼制,这允许长期(即,TDP)和短期(S卩,第三下降)操作以控制处理器的核区中的功耗。在一个实施例中,这样的方法可提供细粒度功率管理技术,以及提供用于创建与对被处理的代码起反应的升压模式相比,在处理代码时控制代码的升压模式的能力。
[0074]在一个实施例中,非核区1204所消耗的空闲功率(即,在核区处于诸如封装C-状态之类的深度功率节省状态时非核区所消耗的功率)可通过改变提供给非核区1204的电压(即,参考电压VR)来减小。在一个实施例中,电压调节器1206的输出可通过负载电阻器耦合至非核区1204的供电引脚。在核区处于深度封装C-状态时,可减小参考电压VR以及由此的非核区1204的供电引脚处的引脚电压(VP)。在一个实施例中,可减小参考电压VR以使VP_idle减至稍微高于VPmin (或VP_peak)的值。结果,参考电压(VR)可被改变以节省或减小非核区1204所消耗的空闲功率。
[0075]已参考示例实施例描述了本发明的特定特征。然而,描述并非旨在以限制的含义来解释。对本【技术领域】中的技术人员显而易见的示例实施例的各种修改以及本发明的其它实施例被认为落在本发明的精神和范围内。
【权利要求】
1.一种处理器,包括: 非核区,其中所述非核区包括功率管理单元和电压调节器,其中所述电压调节器用于向所述非核区提供经调节的电压(VR),以及 核区,其中所述核区包括多个功能块、多个传感器、活动累积逻辑、扼制逻辑、和扼制器,其中所述多个传感器用于收集来自所述多个功能块的多个活动水平,并将所述多个活动水平提供给活动累积逻辑,其中所述活动累积逻辑用于生成累积活动值并将所述累积活动水平提供给所述扼制逻辑,其中所述扼制逻辑用于基于所述累积活动值与目标值的比较生成指示要适应的扼制水平,其中所述扼制器用于基于所述扼制水平扼制提供给执行单元的指令。
2.如权利要求1所述的处理器,其特征在于,在所述多个功能单元的一个或多个端口中设置所述多个传感器,用于感测所述多个功能单元的数据活动和架构活动。
3.如权利要求1所述的处理器,其特征在于,所述扼制逻辑用于基于数据图案观测和所述累积活动值来确定实际动态电容值。
4. 如权利要求4所述的处理器,其特征在于,所述扼制逻辑用于将所述实际动态电容(Cdyn)值校准至功率计分值。
5.如权利要求4所述的处理器,其特征在于,所述扼制逻辑用于将所述功率计分值与由所述功率管理单元提供的目标值作比较,其中所述目标值是基于可容许动态电容值来确定的。
6.如权利要求3所述的处理器,其特征在于,所述扼制逻辑用于在所述功率积分值大于所述目标值的情况下生成指示增大所述扼制水平的所述信号。
7.如权利要求6所述的处理器,其特征在于,所述扼制器用于响应于接收到指示增大所述扼制水平的所述信号减小指令吞吐量,其中减小所述指令吞吐量是为了将所述实际动态电容维持在所述可容许动态电容之下。
8.如权利要求3所述的处理器,其特征在于,所述扼制逻辑用于在所述功率积分值小于所述目标值的情况下生成指示减小所述扼制水平的所述信号。
9.如权利要求8所述的处理器,其特征在于,所述扼制器用于响应于接收到指示减小所述扼制水平的所述信号增大指令吞吐量。
10.一种处理器,包括核区和非核区, 其中所述非核区包括功率管理单元和电压调节器,其中所述电压调节器用于向所述非核区提供经调节的电压(VR), 其中所述功率管理单元用于检测基于其所述核区将进入深度功率节省状态的事件,并且作为响应向所述电压调节器提供第一电压, 其中所述电压调节器用于基于所述第一电压值将所述经调节的电压(VR)从正常参考电压值减小至经减小的参考电压值, 其中减小所述经调节的电压(VR)导致所述非核区的供电引脚处提供的引脚电压值的减小,其中所述引脚电压值的所述减小是为了减小所述非核区所消耗的功率, 其中所述引脚电压值被减小至足以维持最小引脚电压值至来在所指定的频率值下操作所述处理器的水平。
11.如权利要求10所述的处理器,其特征在于,所述非核区消耗减小的功率量,直至所述核区处在所述深度功率节省状态。
12.如权利要求11所述的处理器,其特征在于,在所述核区操作在所述深度功率节省状态中且由所述核区注入所述非核区的活动相当低时,提供给所述核区的所述电压基本上被切断。
13.如权利要求10所述的处理器,其特征在于,所述功率控制单元用于响应于检测到所述核区依照其退出所述深度功率节省状态的退出事件生成第二电压值,并将所述第二电压值提供给所述电压调节器。
14.如权利要求13所述的处理器,其特征在于,所述电压调节器响应于接收到所述第二电压值将所述参考电压(VR)从所述经减小的参考电压值增大至所述正常参考电压值。
15.如权利要求14所述的处理器,其特征在于,所述参考电压增大至所述正常参考电压值是为了在所述非核区的所述供电引脚处提供至少所述最小电压值,以允许处理器操作在所指定的频率值。
16.处理器的核区中的一种方法,包括: 使用多个传感器从多个功能块收集活动水平,并将所述多个活动水平提供给活动累积逻辑, 基于累积活动逻辑中的所述多个活动水平生成累积活动值, 使用扼制逻辑基于所述累积活动值的比较生成指示要适应的扼制水平的信号,以及 基于由所述信号提供的所述扼制水平扼制提供给执行单元的指令, 其中所述处理器包括核区,所述核区包括所述多个功能块、所述多个传感器、所述活动累积逻辑、所述扼制逻辑、和所 述扼制器。
17.如权利要求16所述的方法,其特征在于,包括在所述多个功能单元的一个或多个端口中设置所述多个传感器,用于感测所述多个功能单元的数据活动和架构活动。
18.如权利要求16所述的方法,其特征在于,包括在所述扼制逻辑中基于数据图案观测和所述累积活动值来确定实际动态电容值。
19.如权利要求18所述的方法,其特征在于,包括在所述扼制逻辑中将所述实际动态电容(Cdyn)值校准至功率计分值。
20.如权利要求18所述的方法,其特征在于,包括在所述扼制逻辑中将所述功率计分值与由所述功率管理单元提供的目标值作比较,其中所述目标值是基于可容许动态电容值来确定的。
21.如权利要求18所述的方法,其特征在于,包括在所述扼制逻辑中在所述功率积分值大于所述目标值的情况下生成指示增大所述扼制水平的所述信号。
22.如权利要求21所述的方法,其特征在于,包括在所述扼制器中响应于接收到指示增大所述扼制水平的所述信号减小指令吞吐量,其中减小所述指令吞吐量是为了将所述实际动态电容维持在所述可容许动态电容之下。
23.如权利要求18所述的方法,其特征在于,包括在所述扼制逻辑中在所述功率积分值小于所述目标值的情况下生成指示减小所述扼制水平的所述信号。
24.如权利要求23所述的方法,其特征在于,包括在所述扼制器中响应于接收到指示减小所述扼制水平的所述信号增大指令吞吐量。
25.处理器的非核区中的一种方法,包括:检测基于其核区进入深度功率节省状态的进入事件,所述进入事件是通过使用功率管理单元来检测的, 向电压调节器提供第一电压值,其中所述第一电压值是通过使用所述功率管理单元来生成的, 基于所述第一电压值将经调节的电压从正常参考电压值减小至经减小的参考电压值,以及 将所述经减小的参考电压提供给所述非核区, 其中减小所述经调节的电压(VR)导致所述非核区的供电引脚处提供的引脚电压值的减小,其中所述引脚电压值的所述减小是为了减小所述非核区所消耗的功率, 其中所述非核区被耦合至所述核区,其中所述非核区包括所述功率管理单元和电压调节器。
26.如权利要求25所述的方法,其特征在于,包括确定所述第一电压值,所述第一电压值用于将所述引脚电压值减小至足以维持最小引脚电压值来使所述处理器在所指定频率值下操作的水平。
27.如权利要求26所述的方法,其特征在于,所述非核区消耗减小的功率量,直至所述核区处在所述深度功率节省状态。
28.如权利要求27所述的方法,其特征在于,当所述核区在深度功率节省状态下操作时,由所述核区注入到非核区的活动相当低。
29.如权利要求26所述的方法,其特征在于,包括:` 响应于检测到所述核区依照其退出所述深度功率节省状态的退出事件,生成第二电压值,以及 将所述第二电压值提供给所述电压调节器。
30.如权利要求28所述的方法,其特征在于,包括响应于接收到所述第二电压值将所述参考电压(VR)从所述经减小的参考电压值增大至所述正常参考电压值。
【文档编号】G06F1/32GK103492976SQ201280020735
【公开日】2014年1月1日 申请日期:2012年3月19日 优先权日:2011年3月21日
【发明者】E·菲特泽, R·J·雷杜林格, D·索尔蒂斯, W·J·鲍希尔, S·石栗玛丽, K·西斯特拉, E·罗特姆, R·库马, V·加吉, A·纳韦, L·沙玛 申请人:英特尔公司

最新回复(0)