关于联邦资助研究或开发的声明本发明是在国防先进研究项目局(darpa)授予的hr0011-13-c-0022的政府支持下完成的。政府对本发明具有一定权利。
背景技术:
::本发明涉及芯片上电源噪声电压降低和/或减轻,且更具体来说,涉及处理器核心中的主动电压下降降低和/或减轻。技术实现要素:以下给出了概述以提供对本发明的一个或多个实施例的基本理解。本概述不旨在标识关键或重要元素,或描绘特定实施例的任何范围或权利要求的任何范围。其唯一目的是以简化形式呈现概念,作为稍后呈现的更详细描述的序言。在本文描述的一个或多个实施例中,描述了促进主动电压下降减少和/或减轻的系统、计算机实现的方法、装置和/或计算机程序产品。根据实施例,系统可以包括存储计算机可执行组件的存储器和执行存储在存储器中的计算机可执行组件的处理器。计算机可执行组件可包括在处理器流水线的第一级检测一个或多个事件的观察组件。所述一个或多个事件中的事件可以是被确定为增加在处理器流水线的第二级期间消耗的功率水平的定义的事件。所述计算机可执行组件还可包括指令组件,其可基于所述事件为所述经界定事件而在所述处理器管线的所述第二级期间消耗的所述功率电平的所述增加之前应用电压下降减轻对策。另外,计算机可执行组件可以包括反馈组件,该反馈组件可以向指令组件提供通知。该通知可以指示由指令部件应用的电压下降缓解对策的结果的成功或失败。根据实施例,计算机实现的方法可以包括由处理器核基于对在处理器流水线的第一阶段发生的定义的事件的检测来预测电压下降事件。所述经定义事件可为经确定以在所述处理器管线的第二级期间增加功率消耗的事件。此外,计算机实现的方法可包括由处理器核基于预测来应用电压下降缓解对策。第二阶段可以在第一阶段之后的限定数目的循环发生。此外,可以在第二阶段期间在功耗增加之前执行应用电压下降缓解对策。根据另一实施例,一种促进主动电压下降减轻的计算机程序产品可包括具有体现于其中的程序指令的计算机可读存储媒体。程序指令可以由处理器执行。程序指令可以使处理器在处理器流水线的第一级检测一个或多个事件。所述一个或多个事件中的事件可以是被确定为增加在处理器流水线的第二级期间消耗的功率水平的定义的事件。所述程序指令还可致使所述处理器基于所述事件为所述经界定事件而在所述处理器管线的所述第二级期间消耗的所述功率电平的所述增加之前应用电压下降减轻对策。此外,程序指令可以使处理器提供指示所应用的电压下降缓解对策的结果的成功或失败的通知。附图说明现在将参考附图仅通过示例的方式描述本发明的实施例,在附图中:图1示出了根据本文所述的一个或多个实施例的促进处理器核心中的主动电压下降减少和/或缓解的示例非限制性系统的框图。图2示出了根据本文所述的一个或多个实施例的用于在处理器的核之间共享的主动电压下降减少和/或缓解的示例非限制性系统。图3示出了根据本文所述的一个或多个实施例的在处理器的核之间共享的主动电压降降低和/或减轻的替代实现的示例非限制性系统。图4示出了基于反应缓解动作的使用的示例性非限制时间线。图5示出了根据本文所述的一个或多个实施例的当应用主动缓解动作时的示例性非限制性时间线。图6示出了根据本文描述的一个或多个实施例的当实现主动缓解动作但事件不发生时的示例非限制性时间线。图7示出了根据本文所述的一个或多个实施例的用于基于处理器核处的局部噪声水平来实现电压下降缓解对策的示例非限制性系统。图8示出了根据本文所述的一个或多个实施例的用于基于处理器核处的本地噪声水平和一个或多个远程噪声水平来实现电压下降缓解对策的示例非限制性系统。图9示出了根据本文所述的一个或多个实施例的用于将加权分数应用于一个或多个噪声水平以确定节流水平的示例非限制性系统。图10示出了根据本文所述的一个或多个实施例的基于从各种噪声指示符接收的信息来实现连续(或持续)节流等级的示例非限制性系统。图11图示了根据本文描述的一个或多个实施例的用于基于在处理器核处实现的一个或多个主动下降减轻对策来提供反馈环的示例非限制性系统。图12示出了根据本文所述的一个或多个实施例的利用功率预测器信号的示例非限制性实现。图13示出了根据本文所述的一个或多个实施例的利用功率预测器信号的另一示例非限制性实现。图14示出了根据本文所述的一个或多个实施例的用于中频下垂缓解的示例非限制性逻辑流程。图15示出了根据本文所述的一个或多个实施例的示例性非限制性逻辑流程。图16示出了根据本文所述的一个或多个实施例的另一示例性非限制性逻辑流程。图17示出了根据本文所述的一个或多个实施例的用于处理器核心中的主动电压下降减少和/或减轻的示例非限制性计算机实现的方法的流程图。图18图示了根据本文描述的一个或多个实施例的用于基于测量本地噪声水平来选择性地调整主动缓解对策的示例非限制性计算机实现的方法的流程图。图19图示了根据本文描述的一个或多个实施例的用于基于本地噪声水平和远程噪声水平选择性地调整主动减轻对策的示例非限制性计算机实现的方法的流程图。图20图示了根据本文描述的一个或多个实施例的用于在离线诊断模式期间选择性地应用电压下降缓解对策的示例非限制性计算机实现的方法的流程图。图21示出了根据本文所述的一个或多个实施例的用于在在线模式期间选择性地应用电压下降缓解对策的示例性非限制性计算机实现的方法的流程图。图22示出了其中可促进此处所描述的一个或多个实施例的示例、非限制性操作环境的框图。具体实施方式以下详细描述仅是说明性的,并且不旨在限制实施例和/或实施例的应用或使用。此外,并不意图受前面的
背景技术:
:或
发明内容部分或具体实施方式部分中呈现的任何明示或暗示的信息的约束。现在参考附图描述一个或多个实施例,其中相同的附图标记始终用于表示相同的元件。在以下描述中,出于解释的目的,阐述了许多具体细节以便提供对一个或多个实施例的更透彻理解。然而,在各种情况下,显然可在没有这些特定细节的情况下实践所述一个或一个以上实施例。集成电路(例如,处理器)可以从电源(例如,电源)接收功率,以便为相关联的电路提供源电压。电流量和电路负载量可以是相关电路的工作速度和电源电压的函数。由于电路的有源特性,电路负载可能变化,这可能导致电源电压电平下降或下降到定义的电压电平以下。例如,电源噪声可以从电源产生,并且进一步可以传播到相关联的电路,这可以导致处理器的各种路径或单元中的电压下降。电压下降(或多于一个的电压下降)可以影响处理器的工作速度。本文所论述的各个方面涉及在负载电流中的大时间梯度的情况下促进处理器核心中的主动电压下降减少及/或减轻。可通过在处理器管线的较早阶段期间回顾处理器的行为以预测未来功率改变且因此防止及/或减轻那些未来功率改变来启用本文所论述的主动方法。本文所论述的主动下降减轻可利用来自深管线处理器的较早级的选定事件作为预测器来确定功率在短时间段内的急剧改变。所选事件的早期信息可以用于节流通过管道的流量,以防止在功率变化发生之前急剧的功率变化。因此,可以减小和/或减轻电压下降。根据本文所讨论的各种实现,在处理器流水线中,可以存在消耗成比例地大量功率的各种单元(例如,核)。可主动地确定指示处理器管线中的各种单元中的一者(或一者以上)预期消耗比通常量大的功率且因此可在电流及/或电压噪声方面产生摆动的事件。基于主动确定,可基于尽可能早地提供的节流指令来减小和/或减轻电压噪声,以便在发生急剧电力改变之前防止和/或减轻急剧电力改变。图1示出了根据本文所述的一个或多个实施例的促进处理器核心中的主动电压下降减少和/或缓解的示例非限制性系统100的框图。本公开中所解释的系统(例如,系统100等)、装置或过程的各方面可以构成在(一个或多个)机器内体现的(一个或多个)机器可执行组件,例如,在与一个或多个机器相关联的一个或多个计算机可读介质(或媒体)中体现的。当由一个或多个机器(例如,计算机、计算设备、虚拟机等)执行时,这样的组件可以使机器执行所描述的操作。在各种实施例中,系统100可以用于包括处理器和/或可以能够与有线和/或无线网络进行有效和/或操作性通信的任何类型的部件、机器、装置、设施、设备和/或仪器中。可构成系统100的组件、机器、装置、设备、设施和/或工具可包括平板计算设备、手持式设备、服务器类计算机器和/或数据库、膝上型计算机、笔记本计算机、台式计算机、蜂窝电话、智能电话、消费电器和/或仪器、工业和/或商业设备、手持式设备、数字助理、多媒体因特网使能的电话、多媒体播放器等。如图所示,系统100可包括观察组件102、指令组件104、反馈组件106、至少一个存储器108、以及至少一个处理器110。可能存在由负载电流中的大时间梯度引起的事件。基于这些事件,在处理器核心中可能突然耗散更多的电流和/或功率。基于电流和/或功率耗散,可能存在电源电压下降的电压下降事件。在一些情况下,可以设置静态保护带,使得可以输入增加量的电源电压,以便防止电压下降事件。对于所公开的方面,可以利用较低的电压设定点(例如,没有静态保护带,或较小的静态保护带)。较低静态保护带值可以转化为性能和/或功率节省,因为处理器不必在用于静态保护带值的较高电压下操作。观察组件102可在处理器流水线的第一级处检测一个或多个事件。例如,处理器流水线可以包括多个阶段,其中第一阶段在时间上早于第二阶段发生。第二阶段可以在时间上早于第三阶段发生,等等。所述一个或一个以上事件可为可经确定以在处理器管线的第二级(或后续级)期间增加功率消耗的事件。例如,观察组件102可以从诸如噪声传感器之类的一个或多个传感器接收输入数据112。因此,观察组件102可接收关于在处理器内核本地发生的噪声和/或在处理器内核远程发生的噪声(例如,在其它处理器内核处发生的噪声)的信息作为输入数据112。例如,如果存在功率增加或功率减小,则功率的变化可以产生电压噪声事件,其可以由一个或多个传感器检测。在示例中,观察组件102可分析逻辑行为,其可被用于标识可导致在逻辑流水线的几个周期内活动增加(以及功耗增加)的事件。例如,当在流水线中执行指令时,大量功率可能被耗散,这是大量功率摆动可能发生的地方。因此,如果在例如五个或十个周期内存在大量指令,则其可指示大功率事件,这可用作预防性指示器以防止电压降。因此,处理器中的一个或多个不同组件的活动可用于标识将来的功率改变。实例包括但不限于,在错误分支预测之后的刷新、退出等待状态/停顿、高速缓存未命中响应、从慢速指令流到快速指令流的转换、xcond(例如,取消所有当前执行、清除锁存器并将处理器恢复到最后完成、检查和保存状态的立即复位条件)等。在另一个示例中,队列(inq)中的写入/分派/发出的急剧增加可以用作即将到来的功率增加的预测器。基于由观测组件102检测到事件为经界定事件,指令组件104可在处理器管线的第二级期间消耗的功率电平增加之前应用电压下降减轻对策。因此,基于主动电压下降缓解的系统100可以比反应式主动电压下降缓解更早地发起对多个循环的节流。电压下降缓解对策可由指令组件104输出作为输出数据114。由指令组件104应用的电压下降缓解对策可以增加处理器的处理效率。此外,处理效率可以降低功耗和/或提高处理器的性能。因此,由指令部件104应用的电压下降缓解对策可以是主动的,或者可以在实际电压下降事件之前发生。作为示例,假设1.0伏(v)(1000毫伏(mv))是设定电压,最坏情况下,在10纳秒(ns)内发生100mv的电压下降。例如,1ns下降10mv。对于重新激活的电压下降缓解过程,可以先验地确定定义的阈值电压值。在该示例中,所定义的阈值电压是60mv。因此,系统100将必须等待直到电压已经下降60mv以做出节流决定(例如,在可以实现电压下降缓解之前)。具有较小的定义的阈值电压值可能导致过度节流,这可能影响性能。如图所示,在处理器核心处接收节流指示可能需要额外的2ns(10个周期)。因此,电压在回升之前将下降20mv。如果100mv压降降低到80mv,则它可以提供20mv的总保护频带降低(例如,2%的益处)。根据本文所论述的各个方面,对于主动电压下降减轻,如果在-20mv处检测到下降以做出抑制的决策,且如果抑制指示花费2ns到达处理器核心,那么电压将在返回之前下降20mv以上。因此,根据本文提供的各个方面,最低电压命中是-40mv,其可以产生约60mv的增益(例如,约6%的益处)。继续参考图1,反馈部件106可以接收与电压下降缓解对策是否导致处理器流水线的第二级处的电压下降的减少和/或缓解有关的信息作为输入数据112。反馈组件106可在实施电压下降缓解对策时或之后向指令组件104提供通知。该通知可以指示电压下降降低和/或缓解对策的结果的成功或失败。因此,反馈组件106可提供可用于调整未来的主动电压下降缓解对策的反馈回路。根据一些实现,反馈组件106可提供反馈环路以便提供与当前电压下降缓解对策有关的信息,这可导致缓解对策的改变、电流缓解对策的继续、或中止缓解对策。至少一个存储器108可以存储计算机可执行组件和/或计算机可执行指令,其可以由至少一个处理器110(或处理器核心)实现。至少一个存储器108可以存储与实现如本文所讨论的主动电压下降减少和/或缓解相关联的协议。此外,至少一个存储器108可以促进控制通信的动作,使得系统100可以采用所存储的协议和/或算法来实现如本文所描述的主动电压下降的减少和/或减轻。图2示出了根据本文所述的一个或多个实施例的用于在处理器的核之间共享的主动电压下降的减少和/或缓解的示例非限制性系统200。为了简洁,省略了在这里描述的其它实施例中采用的类似元件的重复描述。系统200可以包括系统100的一个或多个组件和/或功能,反之亦然。如图所示,处理器可以包括多个核,示为第一核202、第二核204、第三核206和第四核208。注意,尽管示出并描述了四个核,但是根据各个方面,处理器可以包括四个核、少于四个核、或多于四个核。根据示例,在多核处理器中,取决于设计的最大d(i)/d(t)和rlc(电阻器、电感器、电容器)特性,可能是单个核的功率的急剧变化不足以大到导致需要实现下降缓解对策。在这种情况下,本文讨论的功率管理逻辑可以共享关于核之间的活动水平的知识。例如,在图2中,中央主动缓解系统210(例如,图1的系统100)可以用于在多个核之间共享节流指令212和电力代理信息214。因此,功率管理逻辑可以是所有核心共用的(例如,全局的)。图3示出了根据本文所述的一个或多个实施例的在处理器的核之间共享的主动电压降降低和/或减轻的替代实现的示例非限制性系统300。为了简洁,省略了在这里描述的其它实施例中采用的类似元件的重复描述。系统300可以包括系统100的一个或多个组件和/或功能,反之亦然。如图3中所示,本地主动缓解系统302(例如,图1的系统100)可以用于在核之间共享节流指令212和功率代理信息214。此外,来自/去往其它核的活动索引304可被包括在系统300中。因此,功率管理逻辑可以是核(例如,第一核202)本地的,并且被传递到其他核(例如,第二核204、第三核206、第四核208等)。图4示出了基于反应缓解动作的使用的示例性非限制时间线。在该时间线400中,在应用缓解动作之前没有利用预测(例如,其是反应性缓解动作)。时间沿水平轴表示。如图所示,事件402在第一时间发生,并且在事件402发生时或之后,发生事件的检测404。在检测404时或之后,在缓解动作408可以发生之前可以存在延迟406。延迟406可以基于确定应用哪种减轻对策、要发送的指令信号、要在处理器核处接收的指令信号以及处理器核实现减轻动作408所花费的时间。图5示出了根据本文所述的一个或多个实施例的当应用主动缓解动作(例如,对策)时的示例性非限制性时间线。为了简洁,省略了在这里描述的其它实施例中采用的类似元件的重复描述。时间沿水平轴表示。如第一时间所示,发生事件的预测502(例如,经由观察组件102),并且可以发送指令(例如,经由指令组件104)。在延迟406(例如,用于发送/接收指令的时间)时或之后,可以在处理器核处应用缓解动作408。注意,因为缓解对策的实现是主动的,所以事件402在延迟406期间发生。因此,减轻动作408可以比图4中表示的情况更快地执行。图6示出了根据本文描述的一个或多个实施例的当实现主动缓解动作但事件不发生时的示例非限制性时间线。为了简洁,省略了在这里描述的其它实施例中采用的类似元件的重复描述。时间沿水平轴表示。如图所示,发生预测502,并且可以发送用于实现缓解对策的信号。然而,可以确定没有事件602发生。例如,虽然在处理器流水线中较早地确定事件指示电压下降事件,但是处理器核心没有经历电压下降事件。因此,在604处,可以发送另一指令以逆转缓解对策和/或不执行缓解对策。因此,不采取动作606,或者如果采取了动作,则该动作可以被反转或停止。图7示出了根据本文所述的一个或多个实施例的用于基于处理器核处的局部噪声水平来实现电压下降缓解对策的示例非限制性系统700。为了简洁,省略了在这里描述的其它实施例中采用的类似元件的重复描述。系统700可以包括系统100、系统200、系统300的组件和/或功能中的一个或多个,反之亦然。根据一些实现,指令组件104可以生成抑制指示(或抑制指令)作为电压下降缓解对策。例如,节流指示可以由指令组件104基于确定在处理器流水线的第二级处的活动水平满足定义的活动水平并且在第二级处的远程噪声水平满足定义的远程噪声水平来生成。进一步对于该实现,测量组件702可测量本地噪声水平。例如,局部噪声水平可以是局部测量的噪声(例如,在处理器核处)。测量组件702可以直接测量本地噪声水平和/或可以与一个或多个本地噪声传感器或指示器接口以接收指示本地噪声水平的信息。基于由测量组件702提供的本地噪声水平,噪声水平分析组件704可以确定本地噪声水平是高于还是低于所定义的本地噪声水平量。所定义的局部噪声电平量可以基于在应当实施缓解对策之前可以容忍的噪声量。如果本地噪声水平高于所定义的本地噪声水平量,则指令组件104可以生成抑制指令,或者如果抑制指令已经被发送,则可以继续生成抑制指令。然而,如果本地噪声水平低于所定义的本地噪声水平量,则指令组件104可以降低节流指令中所指示的节流水平。在一些实现中,如果本地噪声水平低于所定义的本地噪声水平量,则指令组件104可以发送停止节流的指令。图8示出了根据本文所述的一个或多个实施例的用于基于处理器核处的本地噪声水平和一个或多个远程噪声水平来实现电压下降缓解对策的示例非限制性系统。为了简洁,省略了在这里描述的其它实施例中采用的类似元件的重复描述。系统800可以包括系统100、系统200、系统300和/或系统700的组件和/或功能中的一个或多个,反之亦然。至少一个本地噪声指示器802(或本地噪声传感器)可以测量处理器核处的本地噪声水平,并且测量组件702可以接收本地噪声水平指示作为输入数据112。此外,一个或多个远程噪声指示器804(或远程噪声传感器)可以测量一个或多个远程噪声水平。例如,本地噪声指示符802可以测量第一处理器核处的噪声水平,并且一个或多个远程噪声指示符804中的至少第一远程噪声指示符可以测量第二处理器核处的第一远程噪声水平,第二处理器核可以与第一处理器核相邻。此外,一个或多个远程噪声指示符804中的至少第二远程噪声指示符可以测量第三处理器核处的第二远程噪声水平,第三处理器核可以与第一处理器核和/或第二处理器核相邻。根据实施方式,一个或多个远程噪声指示符804中的后续远程噪声指示符可以测量处理器的后续处理器核处的后续远程噪声水平。基于作为输入数据112接收的测量,噪声水平确定组件806可以计算总噪声得分。例如,总噪声得分可以是由本地噪声指示器802确定的本地噪声水平和由远程噪声指示器804确定的远程噪声水平的组合。在一些实施方式中,由多于一个本地噪声指标测量的多于一个本地噪声水平和/或由多于一个远程噪声指标测量的多于一个远程噪声水平可以被噪声水平确定组件806用来计算总噪声得分。此外,在一些实现中,加权组件706可以将相应的权重应用于一个或多个本地噪声水平和/或远程噪声水平,并且由噪声水平确定组件806计算的总噪声分数可以基于加权值。例如,由加权组件706应用的相应权重可以是各种噪声指标的准确性和/或可靠性的函数。指令组件104可基于由总噪声得分定义的扼制值来确定扼制级别。根据一些实现,指令组件104可以参考节流致动表来确定节流等级。因此,指令组件104可以基于将总分数转换为扼制级别的表(或多于一个的表)来计算扼制级别。例如,下面的表1示出了根据实现方式的可以用于调用调节的示例性非限制性调节表。table1.根据上面的示例表格1,当预测性噪声传感器(例如,本地噪声指示器802)指示处理器核心中的低噪声值时,指令部件104不发送节流信号。此外,当预测噪声传感器指示高本地噪声值,但远程噪声值低时,指令部件104不发送节气门信号。然而,根据表1,如果预测性噪声传感器示出高活动水平,并且由远程噪声指示器804确定的远程噪声也示出高噪声值,则指令部件104可以调用节流。在另一示例中,下面的表2示出了可以根据所公开的方面来使用的示例性非限制性调节表。table2.因此,根据表2的示例,可以利用本地噪声来检查压制信号的延迟版本,并且如果本地噪声也高,则可以维持压制。然而,如果本地噪声较低,则可以降低(或校正)节流。在根据表2的一个示例中,如果本地噪声较低并且系统尚未节流,则指令组件104可以继续不节流。在另一示例中,如果本地噪声较低并且正在执行节流,则可以停止节流。如果本地噪声较高,并且没有执行节流,则系统可以继续不进行节流。然而,如果局部噪声高,并且正在执行节流,则问题没有被校正,因此,指令部件104可以发送信号以进一步节流。图9示出了根据本文所述的一个或多个实施例的用于将加权分数应用于一个或多个噪声水平以确定节流水平的示例非限制性系统900。为了简洁,省略了在这里描述的其它实施例中采用的类似元件的重复描述。系统900可以包括系统100、系统200、系统300、系统700和/或系统800的组件和/或功能中的一个或多个,反之亦然。一个或多个噪声指标(例如,本地噪声指标802、远程噪声指标804、一个或多个其他本地噪声指标和/或一个或多个其他远程噪声指标)可以确定相应的噪声水平。评分组件902可以基于(例如,经由加权组件706)应用于一个或多个噪声指示符的相应输出的相应权重来确定所有噪声水平的总值(例如,单个值)。指令组件104可基于由打分组件902确定的总值来应用节制级别。更详细地,图10示出了根据本文描述的一个或多个实施例的基于从各种噪声指示符接收的信息来实现连续(或持续)节流等级的示例非限制性系统1000。为了简洁,省略了在这里描述的其它实施例中采用的类似元件的重复描述。系统1000可以包括系统100、系统200、系统300、系统700、系统800和/或系统900的组件和/或功能中的一个或多个,反之亦然。系统1000可以包括至少一个本地反应性噪声传感器1002、至少一个本地前摄噪声传感器1004和至少一个本地关键路径监视器1006(例如,本地噪声指示符802)。此外,系统1000可以包括一个或多个反应性远程噪声传感器1008、一个或多个主动式远程噪声传感器1010和/或一个或多个远程关键路径监视器1012(例如,远程噪声指示器804)。一个或多个传感器或指示器可测量表示为噪声信息(例如,输入数据112)的噪声。来自各个传感器的相应噪声信息可以被加权和评分(例如,经由加权组件706和评分组件902)。因此,由至少一个本地反应噪声传感器1002测量的信息可以被分配第一权重10141,并且测量的结果乘以第一权重10141可以得到用于至少一个本地反应噪声传感器1002的第一分数10161。此外,由至少一个本地前摄噪声传感器1004测量的信息可以被分配第二权重10142,并且测量的结果乘以第二权重10142可以产生用于至少一个本地前摄噪声传感器1004的第二分数10162。由至少一个局部关键路径监测器1006测量的信息可以被分配第三权重10143,并且测量结果乘以第三权重10143可以产生用于至少一个局部关键路径监测器1006的第三得分10163。此外,由一个或多个反应性远程噪声传感器1008测量的信息可以被分配相应的第四权重10144,并且可以确定一个或多个反应性远程噪声传感器1008的结果第四得分10164。由一个或多个主动远程噪声传感器1010测量的信息可以被分配相应的第五权重10145,并且可以确定用于一个或多个主动远程噪声传感器1010的结果第五分数10165。另外,由一个或多个远程关键路径监视器1012测量的信息可以被分配相应的第六权重10146,并且可以确定用于一个或多个远程关键路径监视器1012的结果第六分数10166。施加到一个或多个传感器的权重可以基于单个传感器的精度和/或可靠性。评分可以是负的或正的。根据实施方式,负得分可以指示没有测量到噪声(或低于定义的噪声水平的噪声);正的分数可以指示噪声的存在。然而,在一些实施方式中,负的分数可以指示噪声的存在,而正的分数可以指示没有测量到噪声。第一分数10161、第二分数10162、第三分数10163、第四分数10164、第五分数10165和/或第六分数10166可由例如评分组件902组合为总分数1018。至少部分地基于总分数1018,可以应用所选择的节制级别1020(例如,经由指令组件104)。例如,节流等级1020可以基于可以将总分数转换为节流等级1022的表来计算。作为示例而非限制,可利用上述示例性表1和/或示例性表2。图11图示了根据本文描述的一个或多个实施例的用于基于在处理器核处实现的一个或多个主动下降减轻对策来提供反馈回路的示例非限制性系统1100。为了简洁,省略了在这里描述的其它实施例中采用的类似元件的重复描述。系统1100可以包括系统100、系统200、系统300、系统700、系统800、系统900和/或系统1000的组件和/或功能中的一个或多个,反之亦然。检测组件1102可以确定在处理器核的第二级处的电压下降事件的发生。例如,观察组件102在处理器流水线的第一阶段检测到一个或多个事件。第一阶段的事件被用于预测预期在第二阶段发生的电压下降。因此,检测组件1102可确定预期电压下降实际上是否确实发生在处理器核心的第二级。检测组件1102的确定可以基于由电压测量组件1206在处理器流水线的第二级处测得的电压来作出。测量的电压可以由电压比较组件1106与预期电压进行比较。如果所测量的电压与预期的电压相差所定义的电压电平,则可以指示例如没有发生电压下降,或者电压下降大于预期。跟踪组件1108可以保留与检测组件1102的确定相关的信息。例如,所保留的信息可以是确定该事件(或一个或多个事件)是所定义的事件并且导致第二阶段的预期电压下降的确定。该信息可以作为历史信息被保留(例如,在至少一个存储器108中)。根据本文所讨论的各个方面,可以在随后的主动预测和电压降低和/或缓解对策期间利用历史信息。图12示出了根据本文所述的一个或多个实施例的利用功率预测器信号用于逻辑流程1200的示例性非限制性实现。为了简洁,省略了在这里描述的其它实施例中采用的类似元件的重复描述。如图所示,输入可以包括各自的功率预测信号,即第一功率预测信号12021、第二功率预测信号12022到第n功率预测信号1202n,其中n是整数。相应的功率预测器信号12021、12022到1202n可以是作为未来活动的早期流水线指示(例如,在处理器核的第二级)的信号。功率预测信号12021、12022、至1202n可以通过一个或多个可编程延迟(由方框内的"d"指示)来处理。尽管针对各种功率预测器说明四个可编程延迟,但可利用任何数目的可编程延迟,且所揭示的方面不限于四个可编程延迟。可以选择一个或多个可编程延迟的输出,并且可以应用加权。例如,可以选择12041第一功率预测器信号12021的输出,并且可以应用第一权重12061来确定第一值。此外,可以选择12042第二功率预测器信号12022的输出,并且可以应用第二权重12062来确定第二值。此外,可以选择1204n个功率预测信号1202n的输出,并且可以应用第n个权重1206n来确定第n个值。可确定第一值、第二值到第n值的和1208。总和1208可通过一个或一个以上额外可编程延迟(由正方形框内的"d"指示)和一个或一个以上掩码(由正方形框内的"m"指示)来处理。可编程延迟可以用于调整后硅中的逻辑以便更好地启用。例如,可编程性可以提供在后硅中进行校正的灵活性。可以确定与可编程延迟和掩码的输出相关联的相应和。例如,可以确定第一总和1210和第二总和1212,并且可以评估第一总和1210与第二总和1212之间的差1214。如果差1214小于规定值1216,则可应用主动节流1218(例如,可输出节流指令)。因此,可配置逻辑可以允许结果的校准,并且可以定义用于主动节流的新设置。下面将参照图13-16提供进一步的细节。图13示出了根据本文所述的一个或多个实施例的利用功率预测器信号的另一示例非限制性实现。为了简洁,省略了在这里描述的其它实施例中采用的类似元件的重复描述。图13中示出了逻辑流程1300的逐周期活动。如图所示,逻辑流程1200的结果(例如,第一总和1210和第二总和1212之间的差1214与定义的值1216相比)可以与来自反应减轻逻辑的结果一起输入到逻辑门。例如,在1304处,来自一个或多个远程电抗性传感器1302(例如,远程噪声指示器804、电抗性噪声传感器等)的结果可以通过相应的可编程延迟输入并且被加在一起。一个或多个远程电抗性传感器1304的结果值可以与图12的逻辑流程1200的结果组合。此外,可以利用局部噪声值1306和来自关键路径监视器1308的值,并且可以应用节流校正1310。节流修正1310的结果可以包括在逻辑流程1200和来自一个或多个远程反应传感器1302的信息的组合中,通过x个处理器单元周期(dx)的延迟来处理,以确定用于节流的周期数1312。图12和图13的可编程延迟可以用于允许在硬件中实现和执行逻辑的时间。下面将参照图14-16提供进一步的细节。图14示出了根据本文所述的一个或多个实施例的用于中频下垂缓解的示例非限制性逻辑流程1400。为了简洁,省略了在这里描述的其它实施例中采用的类似元件的重复描述。电抗性传感器1402(例如,电抗性实现)可以接收一个或多个电力代理事件1404。此外,主动传感器1406(例如,主动实现)可以接收一个或多个电力代理事件1408。电力代理事件1404和电力代理事件1408可以是相同的事件,或者至少一些代理事件可以是不同的事件。第一比较1410可以在电抗性传感器1402的输出和定义值之间执行。在1412,基于第一比较1410,可以对第一定义数量的循环(例如,m3个循环)执行扼制。可以以两种不同的方式评估前摄传感器1406的输出。首先,前摄传感器1406的输出可输入到斜坡1414,并且输出与限定值比较1416。在1418,可以对第二规定数量的周期(例如,m2个周期)执行扼制。在第二实现中,在1422,可将前摄传感器1406的输出与定义值比较1420,并基于该比较,可在第三定义的循环数量(例如,m-1个循环)内执行节流。1412、1418和1422处的扼制判定可通过or判定模块1424来处理,并且对应于该逻辑的扼制信号可被发送到一个或多个处理器核心。例如,节流决定可被发送到例如参考图3示出和描述的处理器核心。图15示出了根据本文描述的一个或多个实施例的另一示例性非限制性逻辑流程1500。为了简洁,省略了在这里描述的其它实施例中采用的类似元件的重复描述。如图所示,电抗性传感器1402可以接收一个或多个电力代理事件1404。主动传感器1406可以接收一个或多个主动事件1502。在这种实现中,如果前摄传感器1406能够在实际的d(i)/d(t)事件之前的限定数量的周期预测电压下降,则前摄传感器1406可以是有益的。因此,前摄传感器1406可以在核心级实现。注意,可以基于从核向嵌套以及向核返回传送信息的循环的数目来确定循环的定义数目。例如,第一比较1410可以导致m2个周期1504的节流,并且第二比较1420可以导致m1个周期1506的节流。可通过or判决块1508来处理节制判决1504和1506,并且可传输节制指令。在非限制性示例中,用于信息传输的周期的数量可以是大约25个周期,并且因此,周期的限定数量可以是10至20个周期。然而,所公开的方面不限于这些循环次数。图16示出了根据本文所述的一个或多个实施例的另一示例性非限制性逻辑流程1600。为了简洁,省略了在这里描述的其它实施例中采用的类似元件的重复描述。如所示出的,可以利用主动成功指示符1602。主动成功指示器1602可以防止错误的主动接合。主动成功指示符1602可以是反馈回路的一部分。例如,主动成功指示符1602可以是图1的反馈组件106。可以存在主动成功指示器可以在其中操作的两种模式:离线诊断模式和在线模式。在离线诊断模式中,如果预测到噪声,则可以记录噪声,但是不产生节流信号。然后,可以使用局部关键路径监视器(cpm)信息来验证噪声是否实际发生。对于在线模式,如果预测噪声,则可以生成节流信号并将其插入到管线中。由于该抑制信号而减轻的噪声量可以被估计,并且稍后与本地cpm信息进行比较。如果两个信息匹配或在定义的错误量内,则可以宣布成功,图17示出了根据本文所述的一个或多个实施例的用于处理器核心中的主动电压下降降低和/或缓解的示例性非限制性计算机实现的方法1700的流程图。为了简洁,省略了在这里描述的其它实施例中采用的类似元件的重复描述。根据一些实现方式,计算机实现的方法1700可以由处理器核和/或包括处理器的系统来实现。本文所论述的各种方面涉及利用来自深管线处理器的较早级的选定事件作为预测器(或指示符)来预测功率在短时间段内的急剧改变的主动下降减轻。所选事件的早期信息可以允许对通过管线的流量进行节流,并且防止在其实际发生之前的急剧功率变化,并且因此减少和/或减轻电压下降。因此,各个方面提供在实际功率改变或电压下降发生之前开始缓解,且因此可减小和/或最小化电压下降的大小。在计算机实现的方法1700的1702处,可以基于对在处理器流水线的第一级处发生的定义的事件的检测(例如,经由观测组件102)来预测电压下降事件。所述经定义事件可为经确定以在所述处理器管线的第二级期间增加功率消耗的事件。根据一种实现方式,可以从一个或多个已定义事件中选择已定义事件。此外,对于该实现,可确定一个或多个所定义的事件在处理器流水线的第二级期间增加功耗。在计算机实现的方法1700的1704处,可以基于在1702处对计算机实现的方法1700的预测(例如,经由指令部件104)来应用电压下降缓解对策。第二阶段在第一阶段之上或之后的限定数量的循环发生。根据一实施方案,可在所述第二阶段期间在所述电力消耗增加之前执行应用所述电压下降减轻对策。根据一些实施方式,应用电压下降缓解对策可以包括基于确定第二阶段的活动水平满足定义的活动水平并且第二阶段的远程噪声水平满足定义的远程噪声(例如,经由噪声水平分析部件704和/或电压比较部件1106)来生成节流信号。根据一些实现,预测可以包括对来自第一指示符的第一加权值和来自至少第二指示符的至少第二加权值的组合进行评分(例如,经由评分组件902)。进一步对于此实施方案,应用电压下降减轻对抗措施可包含基于第一加权值与至少第二加权值的组合来计算节流等级。在一些实现中,可以确定预测的功耗没有发生。因此,根据这些实现,计算机实现的方法1700可以包括基于确定在处理器流水线的第二阶段期间功耗没有增加(例如,经由电压比较组件1106)来终止电压下降缓解对策。图18图示了根据本文描述的一个或多个实施例的用于基于测量本地噪声水平选择性地调整主动缓解对策的示例非限制性计算机实现的方法1800的流程图。为了简洁,省略了在这里描述的其它实施例中采用的类似元件的重复描述。根据一些实现方式,计算机实现的方法1800可以由处理器核和/或包括处理器的系统实现。在计算机实现的方法1800的1802处,可以基于对在处理器流水线的第一级处发生的定义的事件的检测(例如,经由观察组件102)来预测电压下降事件。经定义事件可为已确定在处理器管线的第二(或稍后)阶段期间增加功率消耗的事件。基于该预测,在计算机实现的方法1800的1804处,可以应用电压下降缓解对策(例如,经由指令组件104)。在1806处,可以测量本地噪声水平(例如,经由测量部件702),并且在计算机实现的方法1800的1808处,可以确定本地噪声水平是否高于定义的噪声水平(例如,经由噪声水平分析部件704)。如果确定本地噪声水平高于所定义的噪声水平("是"),则在计算机实现的方法1800的1810处,可以维持节流信号中所指示的节流水平(例如,经由指令组件104)。然而,如果在1808处确定本地噪声水平不高于所定义的噪声水平("否"),则在1812处,计算机实现的方法1800,可以(例如,经由指令组件104)降低扼制信号中所指示的扼制水平。图19示出了根据本文描述的一个或多个实施例的用于基于本地噪声水平和远程噪声水平选择性地调整主动缓解对策的示例非限制性计算机实现的方法1900的流程图。为了简洁,省略了在这里描述的其它实施例中采用的类似元件的重复描述。根据一些实现方式,计算机实现的方法1900可以由处理器核和/或包括处理器的系统实现。在计算机实现的方法1900的1902,可基于对在处理器流水线的第一级处发生的定义的事件的检测(例如,经由观察组件102)来预测电压下降事件。经定义事件可为已确定在处理器管线的第二(或稍后)阶段期间增加功率消耗的事件。基于该预测,在计算机实现的方法1900的1904处,可以应用电压下降缓解对策(例如,经由指令部件104)。在计算机实现的方法1900的1906处,可以从本地噪声指示符接收第一噪声得分,并且可以从远程噪声指示符接收第二噪声得分(例如,经由噪声水平确定组件806)。负的分数可以指示没有检测到噪声,而正的分数可以指示检测到噪声。然而,所公开的方面不限于该实现。在计算机实现的方法1900的1908处,可以基于第一噪声得分和第二噪声得分的组合来确定总体噪声得分(例如,经由评分组件902)。在计算机实现的方法1900的1910处,可以基于总体噪声得分与定义的节流级别之间的相关性(例如,经由指令部件104)来计算节流级别。图20图示了根据本文描述的一个或多个实施例的用于在离线诊断模式期间选择性地应用电压下降缓解对策的示例非限制性计算机实现的方法2000的流程图。为了简洁,省略了在这里描述的其它实施例中采用的类似元件的重复描述。根据一些实现方式,计算机实现的方法2000可以由处理器核和/或包括处理器的系统来实现。在2002,计算机实现的方法2000可以基于对在处理器流水线的第一级处发生的定义的事件的检测(例如,经由观察组件102)来预测电压下降事件。经定义事件可为已确定在处理器管线的第二(或稍后)阶段期间增加功率消耗的事件。基于该预测,在2004处的计算机实现的方法2000,可以应用电压下降缓解对策(例如,经由指令组件104)。在2006处,在计算机实现的方法2000处,可以记录电压下降事件的预测的指示(例如,经由跟踪部件1108)。在计算机实现的方法2000的2008处,可以确定电压下降事件是否发生(例如,经由检测组件1102)。在离线诊断模式期间不产生节流信号。此外,在计算机实现的方法2000的2010处,指示和确定的结果可以被保留为历史诊断信息(例如,经由跟踪部件1108)。图21图示了根据本文描述的一个或多个实施例的用于在在线模式期间选择性地应用电压下降减轻对策的示例非限制性计算机实现的方法2100的流程图。为了简洁,省略了在这里描述的其它实施例中采用的类似元件的重复描述。根据一些实现方式,计算机实现的方法2100可以由处理器核和/或包括处理器的系统来实现。在计算机实现的方法2100的2102处,可以基于对在处理器流水线的第一级处发生的定义的事件的检测(例如,经由观测组件102)来预测电压下降事件。经定义事件可为已确定在处理器管线的第二(或稍后)阶段期间增加功率消耗的事件。根据一些实施方式,在在线模式期间,可以基于噪声水平进行预测。基于该预测,在计算机实现的方法2100的2104处,可以(例如,经由指令部件104)应用电压下降缓解对策。在计算机实现的方法2100的2106处,可以将生成的调节信号插入到处理器流水线中(例如,经由指令部件104)。在2108处,可以估计作为所生成的节流信号的结果而减轻的噪声量(例如,经由噪声水平确定组件806)。在计算机实现的方法2100的2110处,可以(例如,经由反馈部件106)做出噪声减轻的量与本地检测到的电压变化信息之间的差是否在定义的范围内的确定。如果该差不在所定义的范围("否")内,则计算机实现的方法2100可以在2110处基于确定电压下降缓解对策没有缓解在第二阶段期间的功耗的后果来继续生成节制信号。可替换地,如果该差在定义的范围内("是"),则计算机实现的方法2100在2112处可以基于电压下降缓解对策缓解了第二阶段期间的功耗的后果的确定来停止生成的节流信号。此外,在计算机实现的方法2100的2110处,可以基于确定所减轻的噪声量与本地检测到的电压变化信息之间的差异在定义的范围内(例如,经由反馈组件106),来确定电压下降减轻对策减轻了第二阶段期间的功耗的后果。为了解释的简单起见,将计算机实现的方法描绘和描述为一系列动作。可以理解和明白,本发明不受所示动作和/或动作次序的限制,例如,动作可以按各种次序和/或并发地发生,并且可以与本文未呈现和描述的其它动作一起发生。此外,并非所有示出的动作都是实现根据所公开的主题的计算机实现的方法所必需的。另外,本领域技术人员将理解和明白,计算机实现的方法可以替换地经由状态图或事件被表示为一系列相互关联的状态。另外,还应当理解,下文中以及贯穿本说明书所公开的计算机实现的方法能够被存储在制品上,以便于将这些计算机实现的方法传输和转移到计算机。如本文所使用的术语制品旨在涵盖可从任何计算机可读设备或存储介质访问的计算机程序。为了提供所公开的主题的各个方面的上下文,图22以及以下讨论旨在提供对其中可实现所公开的主题的各个方面的合适环境的一般描述。图22示出了其中可便于此处所描述的一个或多个实施例的示例、非限制性操作环境的框图。为了简洁,省略了在这里描述的其它实施例中采用的类似元件的重复描述。参考图22,用于实现本公开的各方面的合适的操作环境2200还可包括计算机2212。计算机2212还可包括处理单元2214、系统存储器2216和系统总线2218。系统总线2218将包括但不限于系统存储器2216的系统组件耦合到处理单元2214。处理单元2214可以是各种可用处理器中的任一种。双微处理器和其它多处理器体系结构也可用作处理单元2214。系统总线2218可以是若干种总线结构中的任一种,包括存储器总线或存储器控制器、外围总线或外部总线、和/或使用各类可用总线体系结构中的任一种的局部总线,这些总线体系结构包括但不限于,工业标准体系结构(isa)、微通道体系结构(msa)、扩展isa(eisa)、智能驱动电子设备(ide)、vesa局部总线(vlb)、外围组件互连(pci)、卡总线、通用串行总线(usb)、高级图形端口(agp)、火线(ieee1394)、以及小型计算机系统接口(scsi)。系统存储器2216还可以包括易失性存储器2220和非易失性存储器2222。基本输入/输出系统(bios)包含诸如在启动时在计算机2212内的元件之间传输信息的基本例程,它储存在非易失性存储器2222中。作为说明而非限制,非易失性存储器2222可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)、闪存或非易失性随机存取存储器(ram)(例如,铁电ram(feram),易失性存储器2220还可包括用作外部高速缓存的随机存取存储器(ram),作为说明而非限制,ram可以多种形式获得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路dram(sldram)、直接存储器总线ram(drram)、直接存储器总线动态ram(drdrram)和存储器总线动态ram。计算机2212还可包括可移动/不可移动、易失性/非易失性计算机存储介质。例如,图22示出了盘存储2224。盘存储2224还可包括但不限于,诸如磁盘驱动器、软盘驱动器、磁带驱动器、jaz驱动器、zip驱动器、ls-100驱动器、闪存卡、或记忆棒等设备。盘存储2224还可包括单独的存储介质或与其它存储介质组合的存储介质,其它存储介质包括但不限于,诸如紧致盘rom设备(cd-rom)、cd可记录驱动器(cd-r驱动器)、cd可重写驱动器(cd-rw驱动器)或数字多功能盘rom驱动器(dvd-rom)等光盘驱动器。为了便于将磁盘存储器2224连接到系统总线2218,通常使用可移动或不可移动的接口,诸如接口2226。图22还描述了用作用户和在合适的操作环境2200中描述的基本计算机资源之间的中介的软件。这样的软件还可以包括例如操作系统2228。可存储在盘存储装置2224上的操作系统2228用于控制和分配计算机2212的资源。系统应用程序2230利用操作系统2228通过例如存储在系统存储器2216或盘存储装置2224上的程序模块2232和程序数据2234对资源的管理。应当理解,本公开可以用各种操作系统或操作系统的组合来实现。用户通过输入设备2236向计算机2212输入命令或信息。输入设备2236包括但不限于诸如鼠标、跟踪球、指示笔、触摸垫等定点设备、键盘、话筒、操纵杆、游戏垫、圆盘式卫星天线、扫描仪、tv调谐卡、数码相机、数码摄像机、web相机等等。这些和其它输入设备通过系统总线2218经由接口端口2238连接到处理单元2214。接口端口2238包括,例如,串行端口、并行端口、游戏端口和通用串行总线(usb)。(多个)输出设备2240使用与(多个)输入设备2236相同类型的端口中的一些。因此,例如,usb端口可用于向计算机2212提供输入,并从计算机2212向输出设备2240输出信息。提供输出适配器2242以示出除了其他输出设备2240之外还存在一些需要特殊适配器的输出设备2240,如监视器、扬声器和打印机。作为说明而非限制,输出适配器2242包括提供输出设备2240和系统总线2218之间的连接方法的显卡和声卡。应当注意,其它设备和/或设备的系统提供输入和输出能力,诸如远程计算机2244。计算机2212可使用至一个或多个远程计算机,诸如远程计算机2244的逻辑连接在网络化环境中操作。远程计算机2244可以是计算机、服务器、路由器、网络pc、工作站、基于微处理器的电器、对等设备或其它常见网络节点等,并且通常还可包括相对于计算机2212描述的许多或所有元件。为了简洁起见,仅存储器存储设备2246与远程计算机2244一起示出。远程计算机2244通过网络接口2248逻辑上连接到计算机2212,然后通过通信连接2250物理连接。网络接口2248包含有线和/或无线通信网络,诸如局域网(lan)、广域网(wan)、蜂窝网络等。lan技术包括光纤分布式数据接口(fddi)、铜线分布式数据接口(cddi)、以太网、令牌环等。wan技术包括,但不限于,点对点链路、像综合业务数字网(isdn)及其变体那样的电路交换网络、分组交换网络、以及数字用户线(dsl)。通信连接2250指的是用于将网络接口2248连接到系统总线2218的硬件/软件。虽然为了清楚说明,通信连接2250被示为在计算机2212内部,但是它也可以在计算机2212外部。仅出于示例性目的,用于连接到网络接口2248的硬件/软件还可包括内部和外部技术,诸如包括常规电话级调制解调器、电缆调制解调器和dsl调制解调器的调制解调器、isdn适配器和以太网卡。在任何可能的技术细节结合层面,本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式压缩盘只读存储器(cd-rom)、数字多功能盘(dvd)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、集成电路配置数据或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如smalltalk、c 等,以及过程式编程语言—诸如“c”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能的实施例的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实施例中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。尽管以上在运行在一个和/或多个计算机上的计算机程序产品的计算机可执行指令的一般上下文中描述了本主题,但是本领域的技术人员将认识到,本公开也可以结合其它程序模块来实现或可以结合其它程序模块来实现。通常,程序模块包括执行特定任务和/或实现特定抽象数据类型的例程、程序、组件、数据结构等。此外,本领域的技术人员可以理解,本发明的计算机实现的方法可以用其它计算机系统配置来实施,包括单处理器或多处理器计算机系统、小型计算设备、大型计算机、以及计算机、手持式计算设备(例如,pda、电话)、基于微处理器的或可编程的消费或工业电子产品等。所示的各方面也可以在其中任务由通过通信网络链接的远程处理设备执行的分布式计算环境中实践。然而,本公开的一些方面,如果不是所有方面,可以在独立计算机上实践。在分布式计算环境中,程序模块可以位于本地和远程存储器存储设备中。如本申请中所使用的,术语"组件"、"系统"、"平台"、"接口"等可以指代和/或可以包括计算机相关的实体或与具有一个或多个特定功能的操作机器相关的实体。这里公开的实体可以是硬件、硬件和软件的组合、软件、或执行中的软件。例如,组件可以是,但不限于,在处理器上运行的进程、处理器、对象、可执行文件、执行线程、程序和/或计算机。作为说明,在服务器上运行的应用程序和服务器都可以是组件。一个或多个组件可以驻留在进程和/或执行的线程内,并且组件可以位于一个计算机上和/或分布在两个或更多计算机之间。在另一示例中,相应组件可从其上存储有各种数据结构的各种计算机可读介质执行。这些组件可以经由本地和/或远程进程进行通信,例如根据具有一个或多个数据分组的信号(例如,来自一个组件的数据,该组件经由该信号与本地系统、分布式系统中的另一个组件进行交互和/或通过诸如因特网之类的网络与其它系统进行交互)。作为另一个示例,组件可以是具有由电气或电子电路操作的机械部件提供的特定功能的装置,该电气或电子电路由处理器执行的软件或固件应用程序操作。在这种情况下,处理器可以在装置的内部或外部,并且可以执行软件或固件应用的至少一部分。作为又一示例,组件可以是通过电子组件而不是机械部件来提供特定功能的装置,其中电子组件可以包括处理器或其他方法以执行至少部分地赋予电子组件的功能的软件或固件。在一方面,组件可经由虚拟机来仿真电子组件,例如在云计算系统内。此外,术语"或"旨在表示包含性的"或"而不是排他性的"或"。也就是说,除非另外指定,或者从上下文中清楚,否则"x采用a或b"旨在表示任何自然的包含性排列。也就是说,如果x使用a;x采用b;或者x采用a和b两者,则在任何前述实例下都满足"x采用a或b"。此外,除非另外指定或从上下文中清楚是指单数形式,否则如在本说明书和附图中使用的冠词"一"和"一个"一般应被解释为表示"一个或多个"。如本文所使用的,术语"示例"和/或"示例性的"用于表示用作示例、实例或说明。为了避免疑惑,本文公开的主题不受这些示例限制。此外,本文中描述为"示例"和/或"示例性"的任何方面或设计不一定被解释为比其它方面或设计优选或有利,也不意味着排除本领域普通技术人员已知的等效示例性结构和技术。如在本说明书中所采用的,术语"处理器"可以指基本上任何计算处理单元或设备,包括但不限于单核处理器;具有软件多线程执行能力的单处理器;多核处理器;具有软件多线程执行能力的多核处理器;具有硬件多线程技术的多核处理器;平行平台;以及具有分布式共享存储器的并行平台。另外,处理器可以指被设计为执行本文描述的功能的集成电路、专用集成电路(asic)、数字信号处理器(dsp)、现场可编程门阵列(fpga)、可编程逻辑控制器(plc)、复杂可编程逻辑器件(cpld)、分立门或晶体管逻辑、分立硬件组件或其任意组合。此外,处理器可以采用纳米级架构,例如但不限于基于分子和量子点的晶体管、开关和门,以便优化空间使用或增强用户设备的性能。处理器也可以实现为计算处理单元的组合。在本公开中,诸如"存储"、"数据库"以及与组件的操作和功能相关的基本上任何其他信息存储组件之类的术语被用来指代"存储器组件"、"在"存储器"中体现的实体"或包括存储器的组件。应了解,本文所描述的存储器和/或存储器组件可为易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。作为说明而非限制,非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除rom(eeprom)、闪存或非易失性随机存取存储器(ram)(例如,铁电ram(feram),易失性存储器可包括ram,ram可用作外部高速缓存存储器,例如作为说明而非限制,ram可以许多形式获得,诸如同步ram(sram)、动态ram(dram)、同步dram(sdram)、双倍数据率(ddrsdram)、增强型sdram(esdram)、同步链路dram(sldram)、直接rambusram(drram)、直接rambus动态ram(drdram)和rambus动态ram(rdram)。以上描述的内容仅包括系统和计算机实现的方法的示例。当然,不可能为了描述本公开而描述组件或计算机实现的方法的每个可想到的组合,但是本领域的普通技术人员可以认识到,本公开的许多进一步的组合和置换是可能的。此外,就在详细描述、权利要求书、附录和附图中使用术语"包括"、"具有"、"拥有"等来说,这些术语旨在以与术语"包含"在权利要求书中用作过渡词时所解释的类似的方式为包含性的。.以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本
技术领域:
:的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本
技术领域:
:的其它普通技术人员能理解本文披露的各实施例。当前第1页1 2 3 当前第1页1 2 3 
技术特征:1.一种系统,包括:
存储器,其存储计算机可执行组件;以及
处理器,其执行存储在所述存储器中的所述计算机可执行组件,其中所述计算机可执行组件包括:
观测组件,其检测处理器流水线的第一级处的一个或多个事件,其中所述一个或多个事件中的事件是被确定为增加在所述处理器流水线的第二级期间消耗的功率水平的经定义的事件;
指令组件,其基于所述事件为所述经界定事件而在所述处理器管线的所述第二级期间消耗的所述功率电平的所述增加之前应用电压下降减轻对策;以及
反馈组件,其向所述指令组件提供通知,其中所述通知指示由所述指令组件应用的所述电压下降缓解对策的结果的成功或失败。
2.如权利要求1所述的系统,其特征在于,所述指令组件基于确定所述第二阶段的活动水平满足定义的活动水平,并且所述第二阶段的远程噪声水平满足定义的远程噪声水平,生成节流指示作为所述电压下降缓解对策。
3.如权利要求2所述的系统,其特征在于,所述观察组件确定所述活动水平继续满足所定义的活动水平,所述系统还包括:
测量本地噪声水平的测量组件,其中,所述指令组件基于确定所述本地噪声水平高于定义的本地噪声水平量来继续生成所述抑制指示,并且其中,所述指令组件基于确定所述本地噪声水平低于所述定义的本地噪声水平量来降低所述抑制指示中指示的抑制水平。
4.根据权利要求1所述的系统,还包括:
本地噪声指示符,其测量本地噪声电平;以及
测量远程噪声水平的远程噪声指示器;以及
噪声水平确定组件,其基于所述本地噪声水平和所述远程噪声水平的组合来计算总体噪声得分,其中,所述指令组件基于由所述总体噪声得分定义的抑制值来确定抑制水平。
5.根据权利要求1所述的系统,还包括:
检测组件,其确定在所述第二级处的电压下降事件的发生;以及
跟踪部件,其保留与所述一个或多个事件中的所述事件是所述定义的事件的所述确定以及所述第二阶段处的所述电压下降事件的所述发生有关的信息作为历史诊断信息。
6.根据权利要求1所述的系统,其进一步包括一个或一个以上噪声指示符,其中所述系统包括计分组件,所述计分组件基于应用于所述一个或一个以上噪声指示符的相应输出的相应权重来确定总值,且其中所述指令组件基于所述总值来应用节流等级。
7.如权利要求1所述的系统,其特征在于,由所述指令组件应用的所述电压下降缓解对策增加所述处理器的处理效率。
8.一种计算机实现的方法,包括:
由处理器核基于对在处理器流水线的第一级处发生的定义的事件的检测来预测电压下降事件,其中所述定义的事件是被确定为增加所述处理器流水线的第二级期间的功耗的事件;以及
由所述处理器核基于所述预测来应用电压下降缓解对策,其中所述第二阶段在所述第一阶段之后的定义数目个循环发生,并且其中在所述第二阶段期间在所述功耗的所述增加之前执行所述应用所述电压下降缓解对策。
9.如权利要求8所述的计算机实现的方法,其特征在于,所述应用所述电压下降缓解对策包括由所述处理器核基于确定所述第二阶段的活动水平满足定义的活动水平并且所述第二阶段的远程噪声水平满足定义的远程噪声水平来生成抑制信号。
10.根据权利要求9所述的计算机实现的方法,还包括:
由所述处理器核心测量局部噪声水平;以及
执行以下至少一个:
由所述处理器核基于确定所述本地噪声水平高于定义的噪声水平来维持所述节流信号中指示的节流水平;或
由所述处理器核基于确定所述本地噪声水平低于所述定义的噪声水平来降低所述节流信号中指示的所述节流水平。
11.如权利要求8所述的计算机实现的方法,其特征在于,所述应用所述电压下降缓解对策包括:
由所述处理器核心接收来自本地噪声指示器的第一噪声得分和来自远程噪声指示器的第二噪声得分,其中负得分指示没有检测到噪声,并且正得分指示检测到噪声;
由所述处理器核基于所述第一噪声得分和所述第二噪声得分的组合来确定总体噪声得分;以及
由所述处理器核基于所述总噪声得分与定义的扼制级别之间的相关性来计算扼制级别。
12.根据权利要求8所述的计算机实现的方法,还包括:
由所述处理器核基于确定所述功耗在所述处理器流水线的所述第二阶段期间没有增加而终止所述电压下降缓解对策。
13.如权利要求8所述的计算机实现的方法,其特征在于,在离线诊断模式期间,所述应用所述电压下降缓解对策包括:
由所述处理器核心记录对所述电压下降事件的预测的指示;
由所述处理器核确定是否发生所述电压下降事件,其中在所述离线诊断模式期间不生成节流信号;以及
由所述处理器核心将所述指示和所述确定的结果保留为历史诊断信息。
14.如权利要求8所述的计算机实现的方法,其特征在于,在在线模式期间,所述预测基于噪声水平,并且其中所述应用所述电压下降缓解对策包括:
由所述处理器核心将所生成的节流信号插入到所述处理器流水线中;
由所述处理器核心估计由于所生成的抑制信号而减轻的噪声量;
由所述处理器核基于确定所述电压下降缓解对策没有缓解在所述第二阶段期间的所述功耗的后果而继续所生成的抑制信号,所述确定基于确定所缓解的噪声量与本地检测到的电压变化信息之间的差异在定义的范围之外而进行;以及
由所述处理器核基于确定所述电压下降缓解对策缓解了所述第二级期间的所述功耗的后果而停止所生成的抑制信号,所述确定基于确定噪声缓解的量与本地检测到的电压变化信息之间的差异在定义的范围内。
15.根据权利要求8所述的计算机实现的方法,其中,所述定义的事件是从一个或多个定义的事件中选择的,并且其中,所述一个或多个定义的事件被确定为增加在所述处理器流水线的所述第二阶段期间的所述功耗。
16.如权利要求8所述的计算机实现的方法,其特征在于,所述预测包括对来自第一指示符的第一加权值和来自至少第二指示符的至少第二加权值的组合进行评分,并且其中所述应用所述电压下降缓解对策包括基于所述第一加权值和至少所述第二加权值的所述组合来计算节流等级。
17.一种促进主动电压下降缓解的计算机程序产品,所述计算机程序产品包括计算机可读存储介质,所述计算机可读存储介质具有随其体现的程序指令,所述程序指令可由处理器执行以使所述处理器:
在处理器流水线的第一级检测一个或多个事件,其中所述一个或多个事件中的事件是被确定为增加在所述处理器流水线的第二级期间消耗的功率水平的定义的事件;
基于所述事件为所述经界定事件而在所述处理器管线的所述第二级期间消耗的所述功率电平的所述增加之前应用电压下降减轻对抗措施;以及
提供指示所应用的所述电压下降缓解对策的结果的成功或失败的通知。
18.根据权利要求17所述的计算机程序产品,其中所述程序指令使所述处理器:
基于由本地噪声指标测量的本地噪声水平和由远程噪声指标测量的远程噪声水平的组合来计算总噪声得分;以及
基于由所述总体噪声得分定义的扼制值来确定扼制级别。
19.根据权利要求17所述的计算机程序产品,其中所述程序指令使所述处理器:
在离线诊断模式期间,记录电压下降事件的预测的指示;
确定所述电压下降事件是否发生,其中在所述离线诊断模式期间不生成节流信号;以及
将所述指示和所述确定的结果保留为历史诊断信息。
20.根据权利要求17所述的计算机程序产品,其中所述程序指令使所述处理器:
在联机模式期间,将所产生的调节信号插入处理器管线中;
估计由于所生成的节流信号而减轻的噪声量;以及
基于确定所缓解的噪声量与本地检测到的电压变化信息之间的差异在定义的范围内,确定缓解在所述第二级期间消耗的功率的结果的所述电压下降缓解对策。
技术总结提供了促进处理器核心中的电压下降的降低和/或缓解的技术。在一个示例中,系统可以包括存储计算机可执行组件的存储器和执行计算机可执行组件的处理器。计算机可执行组件可包括在处理器流水线的第一级检测一个或多个事件的观察组件。所述一个或多个事件中的事件可以是被确定为增加在处理器流水线的第二级期间消耗的功率水平的定义的事件。所述计算机可执行组件还可包括:指令组件,其在所述处理器管线的所述第二级期间消耗的功率电平增加之前应用电压下降减轻对策;以及反馈组件,其向所述指令组件提供指示所述电压下降减轻对策的结果的成功或失败的通知。
技术研发人员:G·比拉恩;P·罗伯;T·韦伯尔;A·布约克托苏诺格鲁;C·维兹耶尔特兹斯;R·博特兰曼福特;P·I-J·庄;P·J·瑞斯特乐;P·鲍瑟
受保护的技术使用者:国际商业机器公司
技术研发日:2018.08.02
技术公布日:2020.06.05