控制处理系统中的电压偏差的制作方法

文档序号:14392996阅读:192来源:国知局

所揭示的方面涉及控制处理系统中的电压偏差。更特定来说,例示性方面涉及一种调度器,其经配置以在对事务进行调度之前提前估计电压偏差且实施校正性措施以缓解电压过冲或下冲。



背景技术:

管理处理器及微处理器中的功率消耗为至关重要的设计考虑因素。举例来说,当功率消耗增大时,且更特定来说,当跨越其上集成有处理器的芯片或裸片的功率分布中存在偏差或噪声时出现的问题的实例为减小的电池使用寿命及增大的热产生。

一些处理器采用电压调节器及自订功率递送/分布网络(pdn)以迎合系统单芯片(soc)上的不同组件及子系统的变化的功率及电压值。需要防止或缓解在执行处理器上的过程期间发生电压及功率偏差。然而,可能难以控制跨越各种过程的此类偏差,此是因为不同过程可以不同方式外加应力于soc的组件。送到各个组件的供应电流可能在极小时间段内显著地变化。电流的变化依据微分式di/dt测量,其中i为电流且t为时间。对于给定电感l,电压降v通过表达式v=l(di/dt)给出。因此,通过控制di/dt,有可能管理电压偏差且对应地管理功率波动(因为功率为v*i)。

为此目的,针对控制电压偏差的一些努力集中于(例如,在处理器的个别时钟周期期间)监测处理器或soc的功能块的活动水平。举例来说,时钟门控技法可用于基于每一时钟周期中的功能块的特定特征来开启或关闭特定功能块。已(例如)基于低级电路模拟提前知晓针对每一功能块的在作用中及闲置状态(即,开/关状态)的电流消耗。处理器可包含监测器(其可使用合适的硬件及/或软件的组合实施)(例如)以基于功能块在特定时钟周期中是否在作用中而确定所述功能块在所述特定时钟周期中的电流消耗。监测器可确定各种功能块在每一时钟周期中的电流消耗,且将其加在一起以确定处理器在时钟周期中的总电流消耗。监测器可经配置以计算步阶响应或脉冲响应(例如,针对所述pdn的给定电感/电容)来获得时钟周期中的电压偏差。

监测器可具备可接受的最大/正电压偏差阈值及最小/负电压偏差阈值。如果存在分别相对于正或负电压偏差阈值的电压过冲或下冲,则监测器可经配置以对此类过冲或下冲做出反应。举例来说,如果存在相对于负电压偏差阈值的下冲(即,电压偏差降到负电压偏差阈值以下(或在负方向上超出所述阈值)),则监测器可使得采取动作来降低电流以试图缓解所述电压偏差。举例来说,可停止指令处理,可实施时钟门控,等等。另一方面,如果存在相对于正电压偏差阈值的过冲(即,电压偏差升到正电压偏差阈值以上(或在正方向上超出所述阈值)),则监测器可使得执行将增大电流消耗的动作(例如,引入假性操作(例如,无操作或“nop”来消耗电流以试图缓解电压偏差)。

因此,监测器可包含反馈回路或其它控制系统来对电压偏差做出反应且实施校正性动作。然而,引发从电压偏差发生之时到可实施校正性动作之时的时间延迟。因此,在从电压偏差发生之时到系统可做出反应且实施校正性措施之时的临时持续时间中,处理器或soc可能遭受大电压偏差的负作用。归因于控制逻辑中所涉及的时延及在如上文所描述实施校正性措施中所涉及的反馈路径,此临时持续时间在一些情况下可能为显著的。

因此,需要对可有效地控制电压偏差及功率波动而不遭受习知技法面对的前述挑战的解决方案。



技术实现要素:

本发明的例示性方面涉及用于控制处理系统中的电压偏差的系统及方法。在例示性方面中,调度器接收待调度以在管线中执行的事务。在对特定事务进行调度之前,估计在所述事务执行于管线中的情况下将发生的电压偏差。使用阈值比较器来确定所述估计的电压偏差是否将超过指定阈值以造成电压过冲或下冲。所述调度器经配置以在对事务进行调度以执行于管线中之前实施一或多个校正性措施,例如增大或减小管线中的能量,以缓解可能的电压过冲或下冲。

因此,例示性方面涉及一种控制处理系统中的电压偏差的方法,所述方法包括:在发布事务以在管线中执行之前,估计在处理系统的管线中执行所述事务的情况下将发生的电压偏差;确定所述估计的电压偏差是否超出指定阈值;及如果所述估计的电压偏差超出所述指定阈值,则实施一或多个校正性措施以缓解电压偏差。

另一例示性方面涉及一种处理系统,其包括:调度器,其经配置以接收事务且对所述事务进行调度以待执行于管线中;滤波器,其经配置以估计在事务执行于管线中的情况下将发生的电压偏差;及阈值比较器,其用于确定所述估计的电压偏差是否超出指定阈值,其中所述调度器经配置以在所述事务经发布以执行于所述管线中之前实施一或多个校正性措施来缓解电压偏差。

又一例示性方面涉及一种处理系统,其包括:用于估计在事务执行于处理系统的管线中的情况下将发生的电压偏差的装置;用于确定所述估计的电压偏差是否超出指定阈值的装置;及用于在所述估计的电压偏差超出指定阈值的情况下,在所述事务经发布以在管线中执行之前实施一或多个校正性措施来缓解电压偏差的装置。

又一例示性方面涉及一种非暂时性计算机可读存储媒体,其包括在由处理器执行时使处理器执行用于控制处理系统中的电压偏差的操作的代码;所述非暂时性计算机可读存储媒体包括:用于估计在事务执行于处理系统的管线中的情况下将发生的电压偏差的代码;用于确定所述估计的电压偏差是否超出指定阈值的代码;及用于在所述估计的电压偏差超出所述指定阈值的情况下,在发布所述事务以在管线中执行之前实施一或多个校正性措施以缓解电压偏差的代码。

附图说明

呈现随附图式以辅助描述本发明的方面,且提供随附图式仅用于说明所述方面而非对其加以限制。

图1为习知处理系统的示意图。

图2为例示性处理系统的示意图。

图3为描绘根据例示性方面的控制处理系统中的电压偏差的方法的流程图。

图4说明可在其中有利地采用本发明的方面的例示性计算装置400。

具体实施方式

本发明的方面揭示于以下描述及针对本发明的特定方面的相关图式中。可在不脱离本发明的范围的情况下设计替代性方面。此外,将不详细描述或将省略本发明的熟知元件以免混淆本发明的相关细节。

词语“例示性”在本文中用以意谓“充当实例、例子或说明”。本文中描述为“例示性”的任何方面未必被解释为比其它方面更佳或更有利。同样,术语“本发明的方面”并不要求本发明的所有方面都包含所论述的特征、优点或操作模式。

本文中所使用的术语仅出于描述特定方面的目的,且并不意欲限制本发明的方面。如本文中所使用,单数形式“一”及“所述”同样意欲包含复数形式,除非上下文另外清晰指示。应进一步理解,当在本文中使用术语“包括”及/或“包含”时,其指定所陈述的特征、整体、步骤、操作、元件及/或组件的存在,但并不排除一或多个其它特征、整体、步骤、操作、元件、组件及/或其群组的存在或添加。

此外,就待由(例如)计算装置的元件执行的动作的序列来说描述许多方面。应认识到,可由特定电路(例如,专用集成电路(asic))、由正由一或多个处理器执行的程序指令或由两者的组合来执行本文中所描述的各种动作。此外,可认为本文描述的这些动作的序列完全实施于任何形式的计算机可读存储媒体内,所述计算机可读存储媒体中已存储有一组相对应的计算机指令,所述计算机指令在执行时将使相关联的处理器执行本文描述的功能。因此,本发明的各种方面可以数种不同形式实施,预期所有形式都在所主张的标的物的范围内。此外,对于本文描述的方面中的每一者,任何这些方面的对应形式可在本文中描述为(例如)“经配置以执行所描述的动作的逻辑”。

大体来说,所揭示的方面包含使用系统(例如处理器或soc)的动态过程模型的模型预测控制器(mpc)。使用mpc,可预测(例如)未来时隙的活动。使用对未来时隙的预测,可管理及最佳化在考虑之中的当前时隙。在一些情况下,所述当前及未来时隙可为处理器的时钟周期。因此,使用mpc,可预测或估计未来时钟周期的电压及功率偏差,且可采取校正性动作来缓解估计的电压及功率偏差。

举例来说,在本发明的方面中,预测未来事件且将所述预测用于缓解非所要的电压噪声或偏差、功率尖峰/突波、大的电流变化、温度差异等。根据例示性方面,处理器的调度器经配置以通过预看处理器的指令管线且确定对未来事务进行调度是否可能导致以上偏差中的一或多者而对事务进行调度。所述例示性调度器可使得校正性措施得以提前实施,以使得可缓解所预测的偏差。

参看图1,首先描述习知调度器。图1说明处理系统100,其可为任何通用或专用处理系统(例如,数字信号处理器(dsp))或系统单芯片(soc)。处理系统100可包含存储器结构,例如指令高速缓冲存储器(i高速缓冲存储器)102,可将指令存储于其中且可从其检索指令。在本发明中,术语“事务”用以指可通过例如管线110的指令管线处理的一或多个指令。调度器106经配置以从i高速缓冲存储器102接收指令或传入事务104且提供经发布的待在管线110中处理的事务108。

也监测提供到管线110的已发布的事务108以检测是否可能在将已发布的事务108实施或执行于管线110中时发生电压及功率偏差。如先前所提及,管线110可包含用于在一或多个时钟周期中执行已发布的事务108的不同功能块。基于个别事务的特定特征或属性,有可能提前确定将使用哪些功能块,或更特定来说,确定在各个时钟周期中将消耗多少电流。因此,可将在总线上展示为已发布的属性112的已发布的事务的某些属性(例如,指令语义、操作码等)提取出且提供到滤波器114。已发布的属性112可用于确定在那些事务执行于管线110中的期间对应的已发布的事务108的电流消耗。

滤波器114可为前述监测器的部分,其中滤波器114可经配置以基于已发布的属性112确定电压偏差值。举例来说,滤波器114可能能够针对自已发布的属性112确定的电流消耗或(更特定来说)随时间推移的电流变化(di/dt)来实施数字滤波器(例如有限脉冲响应(fir)滤波器、无限脉冲响应(iir)滤波器、步阶功能响应等)来输出电压偏差值。可提供阈值比较器116及118来分别确定电压偏差是否降到负电压偏差阈值以下(或在负方向上超出所述阈值)(即,电压从先前值降了比所述负电压偏差阈值更大的值),或电压偏差是否升到正电压偏差阈值以上(或在正方向上超出所述阈值)(即,电压从先前值升了比所述正电压偏差阈值更大的值)。

如果阈值比较器116检测到电压偏差降到负电压偏差阈值以下(或在负方向上超出所述阈值),则称为检测到下冲117。将下冲117的通知提供给调度器106。调度器106可实施校正性措施(例如停止发布事务、使时钟门控实施于管线110中,等)或使得所述措施得以实施,以试图缓解负电压偏差或下冲。

如果阈值比较器118检测到电压偏差升到正电压偏差阈值以上(或在正方向上超出所述阈值),则称为检测到过冲119。将过冲119的通知提供给调度器106。调度器106可实施校正性措施(例如,将nop发布在已发布的事务108上或使假性事务实施于管线110中)或使得所述措施得以实施,以试图降低正电压偏差或过冲。

在下冲117及过冲119的情况下,在产生及提供通知到调度器106以及对这些通知做出反应(例如,通过使得校正性措施被实施)的过程中可能涉及显著时延。在跨越相关的时延的临时持续时间中,处理系统100可能经受大电压及功率偏差的负作用。

现在参看图2,说明例示性处理系统200。处理系统200的调度器206可(例如)从i高速缓冲存储器202接收传入事务204,且调度器206可经配置以将已发布的事务208提供到管线210。在此上下文中,事务可指在进行或执行时可能消耗能量的一或多个指令、过程或任何其它任务。在一些情况下,事务可包括一或多个指令,例如,其中处理系统200可经配置以支持超标量处理或极大指令字(vliw)指令的处理,其中可并行地提取及执行两个或多于两个指令。对应地,管线210可包括数个功能块,其可支持包括所述一或多个指令的已发布的事务208的执行。

在处理系统200的一个实施方案中,可在总线上提取出传入事务204的一或多个属性(例如,语义、操作码等)(描绘为传入属性220)。举例来说,特定传入事务204可为包括四成分算术指令(例如两个乘法指令及两个加法指令)的vliw指令。这些四成分指令的属性可包含其成分指令的特征,例如其操作码(或“op码”)、运算元的数目(例如,源寄存器及目的地寄存器)、操作模式(例如,精度、有正负号/无正负号、舍入模式,等)。将由管线210消耗以执行传入事务204的能量可视这些属性而定。

因此,可提前确定与事务的多个属性相关联的能量且将其存储于能量表225中。举例来说,由管线210在执行具有多个属性的乘法及加法指令时所消耗的能量可提前予以确定(例如,基于对由所涉及的多个功能块针对特定属性所消耗的电流的分析)且存储于能量表225中。可基于低级电路模拟模型来确定电流使用情况。时钟门控模型可用于基于对应的属性确定在执行一或多个指令时是否针对一或多个周期或管线级而开启或门控关闭管线210的一或多个功能块(未明确说明)。权重可与功能块中的每一者相关联以指示在作用中状态及闲置状态中的电流消耗。针对每一管线级的电流消耗或di/dt可通过利用对应的权重加权(乘以)每一功能块的消耗且接着将乘积求和而获得。此举提供跨越多个时钟循环的电流消耗或di/dt的分布。可(例如)基于与功能块相关联的电阻负载(例如,基于方程式e=i2rt,其中e为能量,i为电流,r为电阻,且t为测量能量所经历的时间段)来确定与电流消耗相关联的能量。因此,与每一属性相关联的能量可予以确定且存储于能量表225中。

可通过所述属性为能量表225编索引,且可从能量表225获得针对传入属性220中的每一属性的每属性的能量224。能量表225可为任何合适的存储器结构(例如,只读存储器(rom)),所述存储器结构可结合能量值编程且可(例如)通过对应的属性来编索引。在一些情况下,能量表225可支持多个端口以同时查找及提供针对两个或多于两个属性的两个或多于两个能量值(且对应地,总线(每属性的能量224)可包括两个或多于两个携载针对传入属性220的两个或多于两个属性的能量值的总线)。

乘法器222可包括经配置以通过从每属性的能量224所获得的每一传入属性的对应能量值来乘以或加权每一传入属性220的一或多个乘法器。加法器226可经配置以对来自乘法器222的一或多个乘法器的能量进行总计(例如,执行对经加权的值的求和或对乘积的求和)。由加法器226产生的乘积的总和对应于传入能量228,其表示传入事务204的累积能量。调度器206可接收一或多个传入事务204且将其连同其在发布队列207中的对应传入能量228一起排入队列以供发布。

发布队列207可包括一或多个项目,且每一项目包括至少一个传入事务204及对应的传入能量228。在处理系统200支持事务的按次序处理的实施中,调度器206可以传入事务204被接收的相同次序来将事务(在总线上展示为已发布的事务208)发布到管线210。因此,针对按次序处理,可以发布队列207填充传入事务204(及对应的传入能量228)的相同次序而从发布队列207发布已发布的事务208。在一些情况下,处理系统200可支持无序处理,其中已发布的事务208可不按次序发布,且将事务发布于已发布的事务208上的次序可能不对应于将传入事务204(及对应的传入能量228)填充于发布队列207的次序。

不论实施按次序处理还是无序处理,调度器206可经配置以从发布队列207确定对已发布的事务208进行调度的次序。换句话说,如果第一事务发布在已发布的事务208上,则调度器206可经配置以选择将在第一事务之后发布在已发布的事务208上的下一个事务(比如,第二事务)。类似地,调度器206可确定将发布在已发布的事务208上的一或多个未来事务。如先前所描述,对应于已发布的第一事务的能量以及对应于下一个或未来事务(例如,第二事务及一或多个未来事务)的能量也可从发布队列207确定。

在图2中,对应于已发布的事务208上的一或多个先前发布的事务(例如,已发布的第一事务)的能量展示为已发布的能量212,而对应于下一个或未来事务的能量展示为下一个/未来能量230。在例示性方面中,可基于已发布的能量212及下一个/未来能量230来估计可能的未来电压偏差。出于说明起见,考虑一个简单情况:如果对应于第一事务的已发布的能量212与对应于第二事务的下一个/未来能量230大体上相同,则在第一事务后发布第二事务将不会引起管线210所消耗的能量的显著偏差。然而,如果第二事务的下一个/未来能量230显著地比第一事务的已发布的能量212高或低(例如,达到大于各别正或负阈值的量),则发布第二事务将引起管线210所消耗的能量的对应显著偏差。通过估计到将发生偏差,在对第二事务进行调度之前,调度器206可在对已发布的事务208上的第二事务进行调度以执行于管线210中之前实施校正性措施以降低偏差。

更详细地,设想(例如)在第一事务执行于管线210中之后,第一电压电平即刻在管线210形成(例如,基于管线210中的一或多个代表性节点的电压(未特定说明))。类似地,执行第二事务可导致第二电压电平形成于管线210中。出于此论述起见,也采用正电压偏差阈值及负电压偏差阈值。

在第一实例中,第二电压电平可比第一电压电平大(或在正方向上超出所述第一电压电平),超出的量大于正电压偏差阈值。在此实例中,基于电压偏差大于正电压偏差阈值,假定第二电压电平造成不可接受地高的过冲或正电压偏差。为缓解过冲,可在对第二事务进行调度之前采取一或多个校正性动作。实例校正动作可包含对将使管线210的电压电平变为中间电压电平的一或多个中间事务进行调度,所述中间电压电平可大于第一电压电平(但不使得正电压偏差大于正电压偏差阈值)。就能量来说,这些中间事务可称为高能量事务,其增大管线210的能量,从而在第二事务被调度之前引发较高中间电压电平。因此,当第二事务被调度时,可能造成的任何可能正电压偏差将与中间电压电平(其可比第一电压电平高)有关。如果与中间电压电平有关的第二电压电平的正电压偏差小于正电压偏差阈值,则在第二事务执行于管线210中时将避免不可接受地高的正电压偏差或过冲。

在第二实例中,可采用类似技术来缓解在负方向上的电压偏差;在所述实例中,第二电压电平可造成下冲或降到第一电压电平以下(或在负方向上超出所述第一电压电平),达到不可接受地大于负电压偏差阈值的量。为缓解此情况中的下冲,一或多个校正性动作可包含对将使管线210的电压电平变为中间电压电平的一或多个中间事务进行调度,所述中间电压电平可小于第一电压电平(但不造成可接受地大的负电压偏差)。就能量来说,这些中间事务可为低能量事务,其减小管线210的能量,从而在第二事务被调度之前引发较低中间电压电平。因此,当第二事务被调度时,可能造成的任何可能负电压偏差将与中间电压电平(其可比第一电压电平低)有关。如果与中间电压电平有关的第二电压电平的负电压偏差小于负电压偏差阈值,则在第二事务执行于管线210中时将避免不可接受地大的负电压偏差或下冲。

因此,在以上所描述的第一及第二实例中,校正性措施可包含增大或减小管线210的能量以在对第二及进一步事务进行调度之前缓解管线210中的估计的电压过冲或下冲。在一些情况下,调度器206也可基于(例如)处理系统的一些组件的特征来在对第二及未来事务进行调度时在相对较长时间段(例如,若干时钟周期)中记住或留存能量。举例来说,可存在于管线210中的如电感器及电容器的被动组件可存储可在多个时钟周期中释放的能量。因此,可能难以基于下一个/未来能量214与已发布的能量212的简单比较来准确地估计正/负电压偏差。因此,可提供滤波器214来改良准确度。

滤波器214可经配置以基于已发布的能量212及下一个/未来能量230的知识来估计电压偏差。滤波器214可包含如此项技术中已知的数字滤波器(例如有限脉冲响应(fir)、无限脉冲响应(iir)、非线性滤波器等),其可用于基于(例如)用以获取随电荷而变的能量变化的管线210的模拟模型来获取电压偏差(一般来说,应认识到:v=e/q,其中v为电压(例如,以伏计),e为能量(例如,以焦耳计)且q为电荷(例如,以库仑计))。因此,滤波器214可经配置以考量管线210中的电荷的能量(包含与第一及第二事务相关联的能量)及分布的多个样本点(例如)来确定对应的电压偏差。如所展示,滤波器214可经配置以确定下一个/未来电压偏差232,所述下一个/未来电压偏差为在具有对应的下一个/未来能量214的一或多个未来事务经发布以执行于管线210中的情况下将发生的电压偏差的估计。

对应地,处理系统200也可包括阈值比较器216及218以确定下一个/未来电压偏差232是否超出指定阈值,或换句话说,对一或多个未来事务进行调度(例如,以原先由调度器206确定的从发布队列207调度的次序)是否将引发显著电压偏差。如所展示,阈值比较器216及218可向调度器206(例如,在总线上分别展示为下冲217及过冲219)通知下一个/未来电压偏差232是否分别超出正电压偏差阈值(在正方向上)或负电压偏差阈值(在负方向上)。在任一情况下,即,不论报告下冲217还是报告过冲219,调度器206都可在对未来事务(例如,第二事务)进行调度以执行于管线210中之前实施一或多个校正性措施以缓解估计的电压偏差(下一个/未来电压偏差232)。以此方式,调度器206可在已实施将避免或缓解过冲及下冲的校正性措施(或使得其实施)之后对事务进行调度。所述校正性措施可视是否存在过冲或下冲而定,其将在下文更详细地加以解释。

阈值比较器216为下冲阈值比较器,其经配置以确定下一个/未来电压偏差232是否降到指定负电压偏差阈值以下(在负方向上超出所述阈值)。负电压偏差阈值可基于针对处理系统200的可接受电压偏差,其中降到负电压偏差阈值以下的电压偏差可能不可接受(即,对应的噪声可能显著得足以损害性能)。举例来说,阈值比较器216可包括如此项技术中已知的低通滤波器,如果下一个/未来电压偏差232在负方向上降到负电压偏差阈值以下,则其将报告或确证下冲217信号。下冲217作为输入提供到调度器206。如果确证下冲217,则调度器206可在将第二事务发布在已发布的事务208上之前如下实施一或多个校正性措施。

如先前论述,针对下冲的校正性措施可包含降低管线210的能量的措施,以使得当对第二事务(及可能一或多个额外未来事务)进行调度时,能量偏差将足够低而不造成显著负电压偏差。换句话说,如果在第二及未来事务之前降低管线210的能量,则执行第二及未来事务时的能量偏差及(对应地)负电压偏差将较低,且因此可防止或缓解下冲。因此,用以降低能量的校正性措施可包含(例如)针对一或多个时钟周期停止发布事务在已发布的事务208上。

在一些情况下,降低能量也可包含将来自发布队列207的低能量事务发布于已发布的事务208上。举例来说,如果在发布队列207上存在等待发布的比第二事务能量更低的一或多个事务(例如,第三事务)且处理系统200支持无序处理,则调度器206可经配置以在发布第二事务之前发布所述一或多个较低能量事务,而非针对一或多个时钟周期完全停止事务的发布。

在如上实施一或多个校正性措施的一或多个时钟周期之后,下一个/未来电压偏差232可降低。对应地,一旦下一个/未来电压偏差232停止降到负电压偏差阈值以下,则阈值比较器216可解除确证下冲207,且此可为供调度器206发布第二事务(及可能仍在发布队列207中等待发布且尚未如上文所论述被无序发布的一或多个未来事务)的提示。以此方式,可提前估计未来下冲,且用于降低能量的校正性措施(例如,停止事务的发布或发布来自发布队列207的较低能量事务)可缓解或避免未来下冲。

现谈论阈值比较器218,阈值比较器218为过冲阈值比较器,其经配置以确定下一个/未来电压偏差232是否升到指定正电压偏差阈值以上(或在正方向上超出所述阈值)。正电压偏差阈值可基于针对处理系统200的可接受电压偏差,其中升到正电压偏差阈值以上的电压偏差可能不可接受(即,对应的噪声可能显著得足以损害性能)。举例来说,阈值比较器218可包括如此项技术中已知的高通滤波器,如果下一个/未来电压偏差232在正方向上升到正电压偏差阈值以上,则其将报告或确证过冲219信号。过冲219也作为输入提供到调度器206。如果确证过冲219,则调度器206在将第二事务发布在已发布的事务208上之前可如下实施一或多个校正性措施。

如先前论述,针对过冲的校正性措施可包含增大管线210的能量的措施,以使得当对第二事务(及可能一或多个额外未来事务)进行调度时,能量偏差将足够低而不引发显著正电压偏差。换句话说,如果在第二及未来事务被调度之前增大管线210的能量,则执行第二及未来事务时的能量偏差及(对应地)正电压偏差将较低,且因此可防止或缓解过冲。因此,增大能量的校正性措施可包含针对一或多个时钟周期(例如)在已发布的事务208上发布假性操作或nop(例如,结果将不被记录或写入到寄存器文件的操作)。

在一些情况下,增大能量也可包含将来自发布队列207的高能量事务(例如,除nop之外)发布在已发布的事务208上。举例来说,如果在发布队列207上存在等待发布的比第二事务能量更高的一或多个事务(例如,第三事务)且处理系统200支持无序处理,则调度器206可经配置以在发布第二事务之前发布所述一或多个较高能量事务。

在如上实施一或多个校正性措施的一或多个时钟周期之后,下一个/未来电压偏差232可降低。对应地,一旦下一个/未来电压偏差232停止大于正电压偏差阈值,则阈值比较器218可解除确证过冲209,且此可为供调度器206发布第二事务(及可能仍在发布队列207中等待发布且尚未如上文所论述被无序发布的一或多个未来事务)的提示。以此方式,可提前估计未来过冲,且用于增大能量的校正性措施(例如,发布nop或来自发布队列207的较高能量事务)可缓解或避免未来过冲。

虽然未详细地描述,但在不脱离本发明的范围的情况下可能有处理系统200的替代性实施,其中参考图2所描述的功能块中的一些可以不同方式配置。举例来说,并非提前计算传入能量228及将传入能量228存储在发布队列207中,(例如)可在运行中(例如)基于存取能量表225而使用其对应事务的属性来计算下一个/未来能量230及已发布的能量212。此类替代性实施可降低发布队列207中的(用于存储传入能量228的)存储空间,但可能产生用于在运行中计算下一个/未来能量230及已发布的能量212的时延。也可基于针对时钟速度、系统功率消耗等特定设计考虑因素而对处理系统200进行其它修改。

因此,应了解,方面包含用于执行本文所揭示的过程、功能及/或算法的各种方法。举例来说,如图3中所说明,方面可包含控制处理系统(例如,处理系统200)中的电压偏差的方法300。

在块302中,方法300包括估计在事务执行于处理系统的管线(例如,管线210)中的情况下将发生的电压偏差。举例来说,在块302中,可(例如)基于对应的所接收事务的一或多个传入属性220来确定与所接收事务(例如,包括前述第一及第二事务的传入事务204)相关联的能量。每属性的能量224可从能量表225获得,且逻辑(例如,乘法器222的一或多个乘法器及加法器226)可经配置以确定针对传入事务204的传入能量228。传入事务204及对应的传入能量228可存储于发布队列207中。在事务经发布以执行于管线210中的情况下将针对所述事务(例如,第二事务)而发生的电压偏差可使用滤波器214至少基于与所述事务相关联的能量(例如,第二及视情况选用的一或多个额外未来事务的下一个/未来能量230)及与一或多个先前发布的事务相关联的能量(例如,例如先前发布在已发布的事务208上的第一事务的一或多个事务的已发布的能量212)来予以估计。

块304包括确定所述估计的电压偏差是否超出指定阈值。举例来说,阈值比较器216/218可用于分别确定所述估计的电压偏差是否超出指定最小/正电压偏差阈值(例如,分别确定是否确证下冲217/过冲219)。

块306包括在估计的电压偏差超出指定阈值的情况下,在发布事务以执行于管线中之前实施一或多个校正性措施以缓解电压偏差。举例来说,在将事务发布在已发布的事务208上之前,如果存在下冲217,则校正性措施可涉及降低管线210中的能量(例如,停止发布事务208,或时钟门控);且如果存在过冲219,则校正性措施可涉及增大管线210中的能量(例如,在已发布的事务208上发布nop)。

在其它方面中,可在发布事务之前确定实施于块306中的校正性措施(即,将电压偏差降低)是否有效(例如,基于以下确定:对于对应情况(其中归因于估计的电压偏差超出各别最小或正电压偏差阈值,确证下冲217或过冲219),已发布的事务208的已发布的能量212是否使下冲217或过冲219被解除确证)。

还应了解,本发明的方面包含用于执行本文描述的功能的各种功能块或装置。举例来说,结合能量表225、滤波器214及处理系统200的相关方面用于调度器206的装置可包括用于估计在事务执行于处理系统的管线中的情况下将发生的电压偏差的装置。阈值比较器216及218可包括用于确定估计的电压偏差是否超出指定阈值的装置。在例示性方面中,调度器206(包括发布队列207)也可包括用于在估计的电压偏差超出指定阈值的情况下,在事务经发布以执行于管线中之前实施一或多个校正性措施来缓解电压偏差的装置。

在图4中,说明根据例示性方面的计算装置400的特定说明性方面的框图。计算装置400可经配置以在一些方面中执行图3的方法300。计算装置400包含系统级封装或系统单芯片装置422,其可类似于图2的处理系统200。图4中的计算装置400的表示中仅展示来自图2的处理系统200的经选择的方面,而为清楚起见已省去其它特征。如所展示,计算装置400包含处理器402,其经展示包括图2的调度器206、能量表225、滤波器214及管线210(能量表225与调度器206之间的连接以虚线展示,以表达来自能量表225的信息可用于导出供应到调度器206的传入能量228,如参看图2所解释)。应注意,虽然处理系统200的各种其它功能块及相关的互连未在此说明,但可实施于计算装置400中。如图4中所展示,处理器402可与存储器432通信。虽然未展示,但一或多个高速缓冲存储器(例如,i高速缓冲存储器202)或其它存储器结构也可包含于计算装置400中。

图4也展示耦合到处理器402及显示器428的显示控制器426。编码器/解码器(codec)434(例如,音频及/或语音codec)可耦合到处理器402。还说明例如无线控制器440(其可包含调制解调器)的其它组件。扬声器436及麦克风438可耦合到codec434。图4还指示无线控制器440可耦合到无线天线442。在特定方面中,处理器402、显示控制器426、存储器432、codec434及无线控制器440包含于前述系统级封装或系统单芯片装置422中。

在特定方面中,输入装置430及电力供应器444耦合到系统单芯片装置422。此外,在特定方面中,如图4中所说明,显示器428、输入装置430、扬声器436、麦克风438、无线天线442及电力供应器444在系统单芯片装置422外部。然而,显示器428、输入装置430、扬声器436、麦克风438、无线天线442及电力供应器444中的每一者可耦合到系统单芯片装置422的组件,例如接口或控制器。

应注意,虽然图4描绘无线通信装置,但处理器402及存储器432也可集成于机顶盒、音乐播放器、视频播放器、娱乐单元、导航装置、个人数字助理(pda)、固定位置数据单元或计算机中。此外,计算装置400的至少一或多个例示性方面可集成于至少一个半导体裸片中。

所属领域的一般技术人员将了解,可使用多种不同技术及技法中的任一者来表示信息及信号。举例来说,可通过电压、电流、电磁波、磁场或磁粒子、光场或光粒子或其任何组合来表示在贯穿以上描述可能提及的数据、指令、命令、信息、信号、位、符号及码片。

此外,所属领域的一般技术人员将了解,结合本文中所揭示的方面而描述的各种说明性逻辑块、模块、电路及算法步骤可实施为电子硬件、计算机软件或两者的组合。为清晰说明硬件与软件的此可互换性,上文已大体在其功能性方面描述了各种说明性组件、块、模块、电路及步骤。将此功能性实施为硬件还是软件视特定应用及外加于整个系统上的设计约束而定。所属领域的一般技术人员可针对每一特定应用以变化的方式实施所描述的功能性,但不应将这些实施决策解释为导致脱离本发明的范围。

结合本文中所揭示的方面而描述的方法、序列及/或算法可直接在硬件中、在由处理器执行的软件模块中或在两者的组合中实施。软件模块可驻留于ram存储器、快闪存储器、rom存储器、eprom存储器、eeprom存储器、寄存器、硬盘、可装卸式磁盘、cd-rom,或此项技术中已知的任何其它形式的存储媒体中。例示性存储媒体耦合到处理器,使得处理器可从存储媒体读取信息且将信息写入到存储媒体。在替代例中,存储媒体可与处理器成一体。

因此,本发明的方面可包含一种计算机可读媒体,其实施操作处理器(且更特定来说,控制处理器中的电压偏差)的方法。因此,本发明不限于所说明的实例,且用于执行本文中所描述的功能性的任何装置都包含于本发明的方面中。

虽然前文揭示内容展示本发明的说明性方面,但应注意,在不脱离如由所附权利要求书所界定的本发明的范围的情况下,可在此作出各种改变及修改。无需按任何特定次序来执行根据本文中所描述的本发明的方面的方法权利要求的功能、步骤及/或动作。此外,虽然可能以单数形式描述或主张本发明的元件,但除非明确陈述限于单数形式,否则还涵盖复数形式。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1