处理器动态调节方法、装置及处理器芯片转让专利

申请号 : CN201710852734.6

文献号 : CN107678855B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 雷登云陆裕东成立业俞鹏飞恩云飞黄云

申请人 : 中国电子产品可靠性与环境试验研究所

摘要 :

本发明处理器动态调节方法、装置及处理器芯片,能够结合处理器多方位信息进行动态调节,通过处理器的当前工作状态数据得到最大工作频率,并结合预期任务量获得任务量评估参数,再获得加权任务量参数,通过对比任务量评估参数和加权任务量参数,得到最优工作频率,将最优工作频率写入处理器实现频率调节。利用多种传感器采集传感器不同的信息,获取处理器当前的工作状况,结合处理器的工作负载动态,全面的评估处理器当前的工作状态,并利用反映处理器多方面信息的复合状态来动态调节处理器的工作频率和电压,从而更好地平衡处理器的性能与功耗。

权利要求 :

1.一种处理器动态调节方法,其特征在于,包括以下步骤:

获取处理器的当前工作状态数据;所述当前工作状态数据包括所述处理器的当前温度、当前电压、当前TDDB退化量、当前BTI退化量和当前HCI退化量;

对所述当前工作状态数据进行映射加权处理,得到所述处理器在最大电压条件下的最大工作频率;

将预期任务量与所述最大工作频率的比值作为任务量评估参数,并获取所述处理器在频率调节过程中、各频率节点对应的加权任务量参数;所述预期任务量为根据所述处理器的当前任务量以及排队任务量、预测得到的预设时间段内的系统任务量;

对比所述加权任务量参数和所述任务量评估参数,得到所述处理器的最优工作频率;

根据所述最优工作频率,进行所述处理器的动态调节;所述动态调节包括工作频率调节和/或工作电压调节;

对所述当前工作状态数据进行所述映射加权处理的步骤包括:

根据所述当前TDDB退化量、所述当前BTI退化量、所述当前HCI退化量与所述当前温度、所述当前电压的映射关系,得到最大TDDB退化量、最大BTI退化量、最大HCI退化量;

对所述最大TDDB退化量、所述最大BTI退化量、所述最大HCI退化量进行加权处理,获得最大工作状态退化量。

2.根据权利要求1所述的处理器动态调节方法,其特征在于,得到所述处理器在最大电压条件下的最大工作频率的步骤包括:获取所述当前温度的退化时间延时量;

根据所述最大工作状态退化量和所述当前温度的退化时间延时量,得到所述最大工作频率。

3.根据权利要求1所述的处理器动态调节方法,其特征在于,得到所述处理器在最大电压条件下的最大工作频率的步骤包括:获取所述处理器在预设调频调压周期内的温度变化量;

获取所述温度变化量与裕度系数的乘积值,对所述乘积值和所述当前温度求和,得到所述处理器的实际工作温度;

获取所述实际工作温度的退化时间延时量;

根据所述实际工作温度的退化时间延时量和所述最大工作状态退化量,得到所述最大工作频率。

4.根据权利要求1至3任意一项所述的处理器动态调节方法,其特征在于,对比所述加权任务量参数和所述任务量评估参数,得到所述处理器的最优工作频率的步骤中:将对比所述加权任务量参数和所述任务量评估参数得到的、最接近且大于所述任务量评估参数的频率点,确认为所述最优工作频率。

5.一种处理器动态调节装置,其特征在于,包括:

获取单元,用于获取处理器的当前工作状态数据;所述当前工作状态数据包括所述处理器的当前温度、当前电压、当前TDDB退化量、当前BTI退化量和当前HCI退化量;

处理单元,用于对所述当前工作状态数据进行映射加权处理,得到所述处理器在最大电压条件下的最大工作频率;所述映射加权处理为根据当前TDDB退化量、当前BTI退化量、当前HCI退化量与当前温度、当前电压的映射关系,得到最大TDDB退化量、最大BTI退化量、最大HCI退化量;对所述最大TDDB退化量、所述最大BTI退化量、所述最大HCI退化量进行加权处理,获得最大工作状态退化量;

参数获取单元,用于将预期任务量与所述最大工作频率的比值作为任务量评估参数,并获取所述处理器在频率调节过程中、各频率节点对应的加权任务量参数;所述预期任务量为根据所述处理器的当前任务量以及排队任务量、预测得到的预设时间段内的系统任务量;

最优工作频率获取单元,用于对比所述加权任务量参数和所述任务量评估参数,得到所述处理器的最优工作频率;

动态调节单元,用于根据所述最优工作频率,进行所述处理器的动态调节;所述动态调节包括工作频率调节和/或工作电压调节。

6.根据权利要求5所述的处理器动态调节装置,其特征在于,

所述处理单元包括映射加权模块、最大工作频率模块;

所述映射加权模块,用于根据当前TDDB退化量、当前BTI退化量、当前HCI退化量与当前温度、当前电压的映射关系,得到最大TDDB退化量、最大BTI退化量、最大HCI退化量;对所述最大TDDB退化量、所述最大BTI退化量、所述最大HCI退化量进行加权处理,获得最大工作状态退化量;

最大工作频率模块,用于获取所述当前温度的退化时间延时量;根据所述最大工作状态退化量和所述当前温度的退化时间延时量,得到所述最大工作频率。

7.根据权利要求5所述的处理器动态调节装置,其特征在于,

所述处理单元包括实际最大工作频率模块;

所述实际最大工作频率模块,用于获取所述处理器在预设调频调压周期内的温度变化量;获取所述温度变化量与裕度系数的乘积值,对所述乘积值和所述当前温度求和,得到所述处理器的实际工作温度;获取所述实际工作温度的退化时间延时量;根据所述实际工作温度的退化时间延时量和所述最大工作状态退化量,得到所述最大工作频率。

8.一种处理器芯片,其特征在于,包括处理器,以及分别与所述处理器连接温度传感器、压降传感器、TDDB传感器、HCI传感器、BTI传感器、时钟电压调节模块;

所述处理器包括存储器和处理模块,其中所述存储器存储有计算机程序,所述程序被处理模块执行时能够实现权利要求1至4中任意一项所述方法的步骤。

9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1至4中任意一项所述方法的步骤。

说明书 :

处理器动态调节方法、装置及处理器芯片

技术领域

[0001] 本发明涉及集成电路领域,特别是涉及处理器动态调节方法、装置及处理器芯片。

背景技术

[0002] 随着集成电路工艺水平的不断提升,集成电路的规模也在摩尔定律的指导下,以每一年半翻一翻的速度快速增加。从单功能芯片到系统级芯片,并向着片上网络化芯片的方向发展。更高的性能是高端集成电路发展不变的目标。对于架构确定的芯片而言,提升工作频率能够大幅提高芯片的性能。然而,芯片的工作频率受多方面因素的影响。对于商业化产品而言,其最终最高工作频率往往由批量芯片中的短板决定,即由最低性能芯片的频率所统一决定。
[0003] 为了能够使处理器能够在低功耗与高性能间相互切换,动态调频调压(Dynamic Voltage Frequency Scaling,DVFS)技术被广泛应用于芯片设计之中。DVFS技术根据处理器的状态和运行任务,自动地实现处理器运行时电压与频率的调节,从而实现在高性能要求时采用高电压、高频率实现性能最大化,在无任务时降低电压、降低频率降低功耗。但是目前处理器在动态调频调压时主要的依据是根据系统的任务量或者仅仅根据处理器工作温度,依据定义的切换查找表来选定切换到的电压与频率值。传统的动态调频调压方法对当前处理器的工作状态评估不全面,因此造成在平衡处理器的性能和功耗时有效性较差。

发明内容

[0004] 基于此,有必要针对传统的动态处理器动态调节方法对当前处理器的工作状态评估不全面,因此造成在平衡处理器的性能和功耗时有效性较差的问题,提供一种处理器动态调节方法和装置。
[0005] 为了实现上述目的,本发明实施例提供了一种处理器动态调节方法,包括以下步骤:
[0006] 获取处理器的当前工作状态数据;
[0007] 对当前工作状态数据进行映射加权处理,得到处理器在最大电压条件下的最大工作频率;
[0008] 将预期任务量与最大工作频率的比值作为任务量评估参数,并获取处理器在频率调节过程中、各频率节点对应的加权任务量参数;预期任务量为根据处理器的当前任务量以及排队任务量、预测得到的预设时间段内的系统任务量;
[0009] 对比加权任务量参数和任务量评估参数,得到处理器的最优工作频率;
[0010] 根据最优工作频率,进行处理器的动态调节;动态调节包括工作频率调节和/或工作电压调节。
[0011] 在一个具体的实施例中,当前工作状态数据包括处理器的当前温度、当前电压、当前TDDB退化量、当前BTI退化量和当前HCI退化量;
[0012] 对当前工作状态数据进行映射加权处理的步骤包括:
[0013] 根据当前TDDB退化量、当前BTI退化量、当前HCI退化量与当前温度、当前电压的映射关系,得到最大TDDB退化量、最大BTI退化量、最大HCI退化量;
[0014] 对最大TDDB退化量、最大BTI退化量、最大HCI退化量进行加权处理,获得最大工作状态退化量。
[0015] 在一个具体的实施例中,得到处理器在最大电压条件下的最大工作频率的步骤包括:
[0016] 获取当前温度的退化时间延时量;
[0017] 根据最大工作状态退化量和当前温度的退化时间延时量,得到最大工作频率。
[0018] 在一个具体的实施例中,得到处理器在最大电压条件下的最大工作频率的步骤包括:
[0019] 获取处理器在预设调频调压周期内的温度变化量;
[0020] 获取温度变化量与裕度系数的乘积值,对乘积值和当前温度求和,得到处理器的实际工作温度;
[0021] 获取实际工作温度的退化时间延时量;
[0022] 根据实际工作温度的退化时间延时量和最大工作状态退化量,得到最大工作频率。
[0023] 在一个具体的实施例中,对比加权任务量参数和任务量评估参数,得到处理器的最优工作频率的步骤中:
[0024] 将对比加权任务量参数和任务量评估参数得到的、最接近且大于任务量评估参数的频率点,确认为最优工作频率。
[0025] 本发明实施例中提供了一种处理器动态调节装置,包括:
[0026] 获取单元,用于获取处理器的当前工作状态数据;
[0027] 处理单元,用于对当前工作状态数据进行映射加权处理,得到处理器在最大电压条件下的最大工作频率;
[0028] 参数获取单元,用于将预期任务量与最大工作频率的比值作为任务量评估参数,并获取处理器在频率调节过程中、各频率节点对应的加权任务量参数;预期任务量为根据处理器的当前任务量以及排队任务量、预测得到的预设时间段内的系统任务量;
[0029] 最优工作频率获取单元,用于对比加权任务量参数和任务量评估参数,得到处理器的最优工作频率;
[0030] 动态调节单元,用于根据最优工作频率,进行处理器的动态调节;动态调节包括工作频率调节和/或工作电压调节。
[0031] 在一个具体的实施例中,处理单元包括映射加权模块、最大工作频率模块;
[0032] 映射加权模块,用于根据当前TDDB退化量、当前BTI退化量、当前HCI退化量与当前温度、当前电压的映射关系,得到最大TDDB退化量、最大BTI退化量、最大HCI退化量;对最大TDDB退化量、最大BTI退化量、最大HCI退化量进行加权处理,获得最大工作状态退化量;
[0033] 最大工作频率模块,用于获取当前温度的退化时间延时量;根据最大工作状态退化量和当前温度的退化时间延时量,得到最大工作频率;
[0034] 在一个具体的实施例中,处理单元包括实际最大工作频率模块;
[0035] 实际最大工作频率模块,用于获取处理器在预设调频调压周期内的温度变化量;获取温度变化量与裕度系数的乘积值,对乘积值和当前温度求和,得到处理器的实际工作温度;获取实际工作温度的退化时间延时量;根据实际工作温度的退化时间延时量和最大工作状态退化量,得到最大工作频率。
[0036] 本发明实施例中提供了一种处理器芯片,包括处理器,以及分别与处理器连接温度传感器、压降传感器、TDDB传感器、HCI传感器、BTI传感器、时钟电压调节模块;
[0037] 处理器包括存储器和处理模块,其中存储器存储有计算机程序,程序被处理模块执行时能够本发明所有的方法的步骤。
[0038] 本发明实施例中提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明所有的方法的步骤。
[0039] 本发明具有如下优点和有益效果:
[0040] 本发明处理器动态调节方法、装置和处理器芯片,能够结合处理器多方位信息的频率调节,利用多种传感器采集传感器不同的信息(当前工作状态数据,例如温度、电压、退化量),获取处理器当前的工作状况,并基于处理器的工作负载动态,全面的评估处理器当前的工作状态,最终基于当前的工作状态得到最优工作状态;本发明能够利用反映处理器多方面信息的复合状态,并依据每一个芯片自身状况来动态调节处理器的工作频率和电压,从而更好地平衡处理器的性能与功耗。

附图说明

[0041] 图1为传统技术的温度感知与控制电路;
[0042] 图2为本发明处理器动态调节方法实施例1的步骤流程图;
[0043] 图3为本发明处理器动态调节方法中基于当前温度的退化时间延时量获取最大工作频率的流程示意图;
[0044] 图4为本发明处理器动态调节方法中基于实际工作温度的退化时间延时量获取最大工作频率的流程示意图;
[0045] 图5为本发明处理器动态调节方法的周期动态循环调节流程图;
[0046] 图6为本发明处理器动态调节装置实施例1的结构框图;
[0047] 图7为处理器芯片动态调节架构框图。

具体实施方式

[0048] 为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述。附图中给出了本发明的首选实施例。但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使对本发明的公开内容更加透彻全面。
[0049] 除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。
[0050] 本发明处理器动态调节方法、装置及处理器芯片的一具体应用场景
[0051] 传统技术提出一种DVFS方法,该方法首先从处理器任务列表中选取出当前的主要负载,该负载信息包括指令流与数据流。根据当前的负载信息,查找预设的状态切换查找表。结合查找表上的电压值和频率值来向上和向下调节处理器的电压和频率值。在完成处理器频率与电压调节后,依据处理器频率与电压值,结合外部设备/存储的负载情况,进行对应的调节,从而完成整个系统的频率与电压的调节。但是该电路仅关注系统任务量信息,对处理器芯片所处的其余状态并不关注,因此其调节过程必须留有较大的裕度,防止出现时序的紊乱。然而,该裕度会造成处理器功耗的增加,使处理器效能无法有效发挥。
[0052] 另外传统技术还提出一种利用处理器工作温度来动态调节处理器工作频率的方法,图1为温度感知与控制电路,如图1所示,该方法选取处理器温度、温度变化率、功耗作为处理器动态特性指标。以处理器温度为例,当处理器当前温度范围超出温度设定阈值时,处理器中断被触发。但是该方法选定温度作为处理器频率变化的触发条件,其频率调节的外部参考因素依旧较为单一,受外部电压变化、器件老化等因素的影响,处理器工作频率最高限制可能低于由温度因素限定的阈值,从而导致处理器工作不稳定。
[0053] 以上传统技术存在的缺陷,是由于处理器电路在制造过程中存在工艺偏差、工艺抖动等问题,各个芯片之间存在较大的差异,包括芯片的功耗、漏电流、最高频率等多个方面。目前在实际应用中为了方便使用,通常采用的是最差处理器的最大工作频率作为整个产品的最大工作频率(即Fwork-max=min(Fmax)),该造成其他处理器无法发挥其最大的效率。
[0054] 目前常见到的处理器频率调节方案均是基于上述提到的Fwork-max,并依据任务量来动态调节处理器频率和工作电压。传统技术同样采用的是这种思路,然而,该思路存在一个前提,即所有处理器均具有同样的工作,同样的最优工作点,但是该前提并不是真实存在的,所有这些调节方法均是接近优化的方法。由于不同芯片的最大工作频率、工作条件、使用历史不同,因此有必要依靠本处理器实际状态动态实现频率与电压的调节,实现调节方案的智能化。
[0055] 本发明采用多种传感器(温度传感器、压降传感器、可靠性传感器)作为处理器信息获取源,获取处理器当前的工作状况,并依据该工作状况,结合处理器的工作负载动态,并利用能够反映处理器多方面信息的复合状态来调节处理器的工作频率和电压。
[0056] 本发明处理器动态调节方法提供了一种处理器动态调节方法实施例1,图2为本发明处理器动态调节方法实施例1的步骤流程图,如图2所示,包括以下步骤:
[0057] 步骤S110,获取处理器的当前工作状态数据;
[0058] 具体而言,当处理器上电后,处理器会处于一个较低的初始频率f0,并完成处理器硬件配置初始化,载入软件,调频调压软件开始运行,调频调压软件从传感器电路中读取温度传感器、可靠性传感器和压降传感器采集的数据,处理器将调频调压软件读取的数据计算为处理器的当前工作状态数据,当前工作状态数据可以为处理器的当前温度、当前电压、当前退化量。
[0059] 需要说明的是,初始频率f0是启动处理器时系统给定的一个较低的频率,保证处理器在启动时能够正常执行指令。可靠性传感器可以为TDDB(time dependent dielectric breakdown,经时击穿)传感器、HCI(Hot carrier injection,热载流子注入)传感器和BTI(Bias Temperature Instability),偏压温度不稳定效应)传感器。
[0060] 步骤S120,对当前工作状态数据进行映射加权处理,得到处理器在最大电压条件下的最大工作频率。
[0061] 具体而言,处理器获取当前温度、当前电压和当前退化量后,根据当前退化量与当前温度、当前电压的映射关系,得到最大退化量,在对最大退化量进行加权处理,再根据当前温度下的时间延时量和最大退化量得到最大工作
[0062] 步骤S130,将预期任务量与最大工作频率的比值作为任务量评估参数,并获取处理器在频率调节过程中各频率节点对应的加权任务量参数;预期任务量为处理器根据当前任务量以及排队任务量预测得到的预设时间段内的系统任务量。
[0063] 具体而言,操作系统会将所有任务都放在任务队列里,并依据任务执行的优先顺序进行排队。根据历史统计数据会对每一个任务占用处理器时间、响应优先级有一个评估,根据这些数据可以计算出未来一段时间内的任务量情况,即预期任务量。
[0064] 并将预期任务量与最大工作频率的比值作为任务量评估参数,由于实际电路设计要求,频率调节不是连续的,而是选定的一些离散频率点。根据统计情况,给予每个频率点一个加权任务量对应参数。
[0065] 步骤S140,对比加权任务量参数和任务量评估参数,得到处理器的最优工作频率[0066] 具体而言,对比各频率节点上加权任务量参数和任务量评估参数,可以得到最接近并大于任务量评估参数的频率点,该频率点为最优工作频率。
[0067] 步骤S150,根据最优工作频率,进行处理器的动态调节;动态调节包括工作频率调节和/或工作电压调节。
[0068] 需要说明的是,动态调节为根据最优工作频率,对处理器进行工作频率的调节;
[0069] 或
[0070] 获取最优工作频率对应的最优工作电压;根据最优工作电压,对处理器进行工作电压的调节;
[0071] 或
[0072] 获取最优工作频率对应的最优工作电压;根据最优工作频率和最优工作电压,对处理器进行工作频率与工作电压的调节。
[0073] 具体而言,处理器计算出最优工作频率和/或最优工作电压后,并将最优工作频率和/或最优工作电压写入到硬件,实现频率和电压的调节。
[0074] 本发明处理器动态调节方法、装置和处理器芯片,能够结合处理器多方位信息的频率调节,利用多种传感器采集传感器不同的信息(当前工作状态数据,例如温度、电压、退化量),获取处理器当前的工作状况,并基于处理器的工作负载动态,全面的评估处理器当前的工作状态,最终基于当前的工作状态得到最优工作状态;本发明能够利用反映处理器多方面信息的复合状态,并依据每一个芯片自身状况来动态调节处理器的工作频率和电压,从而更好地平衡处理器的性能与功耗。
[0075] 在一个具体的实施例中,当前工作状态数据包括处理器的当前温度、当前电压、当前TDDB退化量、当前BTI退化量和当前HCI退化量;
[0076] 对当前工作状态数据进行映射加权处理的步骤包括:
[0077] 根据当前TDDB退化量、当前BTI退化量、当前HCI退化量与前温度数据、当前电压数据的映射关系,得到最大TDDB退化量、最大BTI退化量、最大HCI退化量;
[0078] 对最大TDDB退化量、最大BTI退化量、最大HCI退化量进行加权处理,获得最大工作状态退化量。
[0079] 具体而言,利用温度传感器、压降传感器、栅介质击穿(TDDB)传感器、热载流子注入(HCI)传感器、偏压温度不稳定性(BTI)传感器分别获取处理器的前温度、当前电压、当前TDDB退化量、当前HCI退化量、当前BTI退化量。
[0080] 需要说明的是,最大TDDB退化量、最大BTI退化量、最大HCI退化量为根据以下步骤获得:
[0081] 假定当时电压测量值为VT,温度测量值T,则TDDB退化量、BTI退化量、HCI退化量传感器测得的延时增加量分别标记为Dtddb-vmax-T,Dbti-vmax-T,Dhci-vmax-T。
[0082] 根据TDDB退化量、BTI退化量、HCI退化量测量值与温度、电压的映射关系(采用经验曲线方式),可以得到:
[0083] Dtddb-vmax-T=f(Dtddb-vc-T,VT,T)
[0084] Dbti-vmax-T=g(Dbti-vc-T,VT,T)
[0085] Dhci-vmax-T=h(Dhci-vc-T,VT,T)
[0086] 其中f(·),g(·),h(·)分别为TDDB退化量、BTI退化量、HCI退化量映射关系函数(以经验曲线形式表示)
[0087] 其中Dtddb-vmax-T为则最大TDDB退化量,Dbti-vmax-T为最大BTI退化量,Dhci-vmax-T为最大HCI退化量。
[0088] 本发明处理器动态调节方法、装置及处理器芯片,能够利用温度传感器、压降传感器和可靠性传感器实现自主的信息感知,能够获取处理器自身温度、电压、退化量等信息,根据以上信息并结合负载信息对处理器当前工作状况全面评估。
[0089] 在一个具体的实施例中,本发明提供了两种获得最大工作频率的方法,
[0090] 第一种方法:图3为本发明处理器动态调节方法中基于当前温度的退化时间延时量获取最大工作频率的流程示意图,如图3所示,得到处理器在最大电压条件下的最大工作频率的步骤包括:
[0091] 步骤330,获取当前温度的退化时间延时量;
[0092] 步骤340,根据最大工作状态退化量和当前温度的退化时间延时量,得到最大工作频率。
[0093] 或者另一种优选的方法:图4为本发明处理器动态调节方法中基于实际工作温度的退化时间延时量获取最大工作频率的流程示意图,如图4所示,
[0094] 得到处理器在最大电压条件下的最大工作频率的步骤包括:
[0095] 步骤430,获取处理器在预设调频调压周期内的温度变化量;
[0096] 步骤440,获取温度变化量与裕度系数的乘积值,对乘积值和当前温度求和,得到处理器的实际工作温度;
[0097] 步骤450,获取实际工作温度的退化时间延时量;
[0098] 步骤460,根据实际工作温度的退化时间延时量和最大工作状态退化量,得到最大工作频率。
[0099] 需要说明的是,可以根据处理器的实际需要,选择以上两种方法的任意一种,但是也不仅局限于以上两种方法。
[0100] 具体而言,第一种方法:对于一般处理器而言,工作电压高时其工作频率才能提高到较高频率,即最大工作电压Vmax条件下对应最大工作频率Fmax。
[0101] 由于当前温度、当前TDDB退化量、当前BTI退化量、当前HCI退化量传感器均是针对当前电压条件下测得的传感值,因此需要将测试值映射到最大工作电压Vmax条件下。由于温度在处理器频率调节计算时间周期内变化较小,因此认为温度在该时段不变。
[0102] 假定当前电压测量值为VT,当前温度测量值T,则当前TDDB退化量、当前BTI退化量、当前HCI退化量传感器测得的延时增加量分别标记为Dtddb-vmax-T,Dbti-vmax-T,Dhci-vmax-T。
[0103] 根据当前TDDB退化量、当前BTI退化量、当前HCI退化量测量值与当前温度、当前电压的映射关系(采用经验曲线方式),可以得到:
[0104] Dtddb-vmax-T=f(Dtddb-vc-T,VT,T)
[0105] Dbti-vmax-T=g(Dbti-vc-T,VT,T)
[0106] Dhci-vmax-T=h(Dhci-vc-T,VT,T)
[0107] 其中f(·),g(·),h(·)分别为当前TDDB退化量、当前BTI退化量、当前HCI退化量映射关系函数(以经验曲线形式表示)
[0108] 由于当前TDDB退化量、当前BTI退化量、当前HCI退化量测量值均是应对最恶劣测试单元的退化测量值。工作单元受到的退化小于该值,采用加权方式得到对于工作单元的最大工作状态退化值Dwork-vmax-T:
[0109] Dwork-vmax-T=αDbti-vmax-T+βDbti-vmax-T+γDhci-vmax-T
[0110] 其中:α,β,γ为权重信息,根据芯片工艺尺寸、电路拓扑、信号跳转概率等信息确定。
[0111] 依据最大工作状态退化值Dwork-vmax-t可以得到电路延迟的增加量,此时可以计算出最大工作频率Fmax,即:
[0112]
[0113] 其中,t0-T为未退化前温度T下的时间延时量。
[0114] 具体而言,另一种优选的方法:由于计算的最大工作频率是一个理想的条件,由于电压与温度的变化很可能造成该工作频率下处理器工作不稳定。
[0115] 为此,依据两次频率调节时间节点上的电压与温度的差距来设定实际最大工作频率。假定两次频率调节时间间隔Ts内,温度变化量为ΔTp,则考虑本次周期内温度变化量为kΔTp(k为裕度系数,一般取2~5),从而保证留有一定的裕度。则此时实际最大工作频率的工作条件为:
[0116] T′=T+kΔTp
[0117] 此时有实际最大工作频率Fwork-max:
[0118]
[0119] 此公式中t0-T′为未退化前温度T′下的时间延时。由于温度变化接近,为减少计算量,采用T温度下Dwork-vmax-T近似代表T′温度下的退化量。
[0120] 本发明处理器动态调节方法、装置及处理器芯片,提出的方法结构简单,实现成本较低,计算过程自动化,能够有效地提升处理器的费效比。
[0121] 在一个具体的实施例中,对比加权任务量参数和任务量评估参数,得到处理器的最优工作频率的步骤中:
[0122] 将对比加权任务量参数和任务量评估参数得到的、最接近且大于任务量评估参数的频率点,确认为最优工作频率。
[0123] 具体而言,假定处理器频率调节计算时间周期为Ts,处理器最大计算能力为C(对应最大工作频率Fmax与最大工作电压Vmax。已知最大工作频率Fmax,每周期执行指令数N,则每秒最大计算能力NFmax,Ts内最大计算能力为C=TsNFmax,)。
[0124] 从任务队列中取出任务量不小于C的任务,构成任务合集U。
[0125] 对于任务合集U中,由于不同的任务具备不同的响应优先级,对于需要及时响应的任务赋予更大的权重,否则给予较小的权重。
[0126] 此时可以计算出加权任务量C′为:
[0127]
[0128] ui为任务合集U中的一项任务,pi为该项任务的优先级权重。
[0129] 根据计算得到的加权任务量C′,可以明确未来一段时间内的预期任务量以及对响应要求情况。
[0130] 任务合集U中的所有任务并不要求全部都在Ts内完成,因此实际任务量小于C。定义任务量评估参数θwork:
[0131]
[0132] 由于实际电路设计要求,频率调节不是连续的,而是选定的一些离散频率点。根据统计情况,给予每个频率点一个加权任务量对应加权任务量参数θf。
[0133] 对比各频率节点上的加权任务量参数θf和任务量评估参数θwork,可以得到最接近并大于任务量评估参数θwork的频率点,该频率点为最优工作频率Ftime。
[0134] 需要说明的是,可以依据相应的软件处理或函数处理过程,例如Excel中的相关算法,获取到该最接近且大于任务量评估参数的频率点。
[0135] 其中,当加权任务量参数θf大于任务量评估参数θwork时,处理器能完成需要的工作量。因此本发明选取最接近任务量评估参数θwork且大于任务量评估参数θwork的参数作为加权任务量参数θf,并依据该加权任务量参数θf可以选选取最合适的工作频率。
[0136] 具体的,任务量评估参数θwork是指当前任务需要的计算量占最大计算量,加权任务量参数θf是针对存在的多个可调节频率点而言的。频率点(最优工作频率Ftime)是最终的选择结果。
[0137] 本发明各实施例中获取最优工作频率的具体过程可以为:根据处理器已知的多个可调节频率点计算对应的加权任务量参数θf作为比较对象。在当次评估过程中,依据任务情况计算任务量评估参数θwork,并与之前的加权任务量参数θf进行对比,选取合适的加权任务量参数θf,依据加权任务量参数θf寻找对应的频率点,该频率点就是最优工作频率Ftime。
[0138] 由于工作频率与工作电压是对应的,最优工作频率Ftime确定后,最优工作电压Vtime也确定了。
[0139] 本发明处理器动态调节方法、装置和处理器芯片提出一种能够结合处理器多方位信息的频率调节方法和装置。利用多种传感器采集传感器不同的信息,获取处理器当前的工作状况,结合处理器的工作负载动态,全面的评估处理器当前的工作状态,并利用反映处理器多方面信息的复合状态来动态调节处理器的工作频率和电压,从而更好地平衡处理器的性能与功耗;能够依据每一个芯片自身状况动态调节工作频率与电压,避免传统所有芯片统一策略的方式。
[0140] 本发明处理器动态调节方法一具体实施例,图6为本发明处理器动态调节方法的周期动态循环调节流程图,如图6所示,
[0141] 基于以上处理器动态调节方法各实施例的技术原理,特以应用本发明处理器动态调节方法的处理器为例,说明本发明处理器动态调节方法的工作实现过程:
[0142] 本发明工作过程如下:
[0143] 当处理器上电后,处理器会处于一个较低的初始频率f0,并完成处理器初始化硬件配置工作,载入软件,频率电压调节控制软件(以下简称:控制软件)开始运行;
[0144] 控制软件读取温度传感器、可靠性传感器、压降传感器的数据;
[0145] 控制软件利用获取的传感器数据计算芯片所处的温度、电压、TDDB退化量、BTI退化量、HCI退化量;
[0146] 控制软件通过计算得到的温度、电压、TDDB退化量、BTI退化量、HCI退化量计算出该处理器对应最大电压条件Vmax下的最大工作频率Fmax;
[0147] 控制软件获取当前处理器任务量情况,并结合处理器中排队任务预测未来一小段时间内系统任务量情况;
[0148] 为了保障处理器工作为稳定,实际最大工作频率相比最大工作频率需要留有一定的裕度。结合实际最大工作频率Fwork-max与任务量情况,计算出功耗与性能的最优工作频率Ftime和对应的工作电压Vtime;
[0149] 将最优工作频率Ftime和对应的工作电压对应的控制数据写入硬件,实现频率与电压的调节;
[0150] 经历时间Ts后,重复执行步骤2,进行新的调节计算。
[0151] 本发明处理器动态调节方法、装置和处理器芯片,能够结合处理器多方位信息的频率调节,利用多种传感器采集传感器不同的信息(当前工作状态数据,例如温度、电压、退化量),获取处理器当前的工作状况,并基于处理器的工作负载动态,全面的评估处理器当前的工作状态,最终基于当前的工作状态得到最优工作状态;本发明能够利用反映处理器多方面信息的复合状态,并依据每一个芯片自身状况来动态调节处理器的工作频率和电压,从而更好地平衡处理器的性能与功耗。
[0152] 本发明处理器动态调节装置提供了一个具体的处理器动态调节装置实施例1,图6为本发明处理器动态调节装置实施例1的结构框图,如图6所示,包括:
[0153] 获取单元610,用于获取处理器的当前工作状态数据;
[0154] 处理单元620,用于对当前工作状态数据进行映射加权处理,得到处理器在最大电压条件下的最大工作频率;
[0155] 参数获取单元630,用于将预期任务量与最大工作频率的比值作为任务量评估参数,并获取处理器在频率调节过程中、各频率节点对应的加权任务量参数;预期任务量为根据处理器的当前任务量以及排队任务量、预测得到的预设时间段内的系统任务量;
[0156] 最优工作频率获取单元640,用于对比加权任务量参数和任务量评估参数,得到处理器的最优工作频率;
[0157] 动态调节单元650,用于根据最优工作频率,进行处理器的动态调节;动态调节包括工作频率调节和/或工作电压调节。
[0158] 需要说明的是,以上各个单元的功能分别对应于方法实施例1中的各个步骤,此处不再重复赘述。
[0159] 本发明处理器动态调节方法、装置和处理器芯片,能够结合处理器多方位信息的频率调节,利用多种传感器采集传感器不同的信息(当前工作状态数据,例如温度、电压、退化量),获取处理器当前的工作状况,并基于处理器的工作负载动态,全面的评估处理器当前的工作状态,最终基于当前的工作状态得到最优工作状态;本发明能够利用反映处理器多方面信息的复合状态,并依据每一个芯片自身状况来动态调节处理器的工作频率和电压,从而更好地平衡处理器的性能与功耗。
[0160] 在一个具体的实施例中,理单元包括映射加权模块、最大工作频率模块;
[0161] 映射加权模块,用于根据当前TDDB退化量、当前BTI退化量、当前HCI退化量与当前温度、当前电压的映射关系,得到最大TDDB退化量、最大BTI退化量、最大HCI退化量;对最大TDDB退化量、最大BTI退化量、最大HCI退化量进行加权处理,获得最大工作状态退化量;
[0162] 最大工作频率模块,用于获取当前温度的退化时间延时量;根据最大工作状态退化量和当前温度的退化时间延时量,得到最大工作频率。
[0163] 本发明处理器动态调节方法、装置及处理器芯片,能够利用温度传感器、压降传感器和可靠性传感器实现自主的信息感知,能够获取处理器自身温度、电压、退化量等信息,根据以上信息并结合负载信息对处理器当前工作状况全面评估。
[0164] 在一个具体的实施例中,处理单元包括实际最大工作频率模块;
[0165] 实际最大工作频率模块,用于获取处理器在预设调频调压周期内的温度变化量;获取温度变化量与裕度系数的乘积值,对乘积值和当前温度求和,得到处理器的实际工作温度;获取实际工作温度的退化时间延时量;根据实际工作温度的退化时间延时量和最大工作状态退化量,得到最大工作频率。
[0166] 本发明处理器动态调节方法、装置及处理器芯片,提出的方法结构简单,实现成本较低,计算过程自动化,能够有效地提升处理器的费效比。
[0167] 本发明中的处理器芯片,包括处理器,以及分别与处理器连接温度传感器、压降传感器、TDDB传感器、HCI传感器、BTI传感器、时钟电压调节模块;
[0168] 处理器包括存储器和处理模块,其中存储器存储有计算机程序,程序被处理模块执行时能够实现本发明方法实施例中的中的方法步骤。
[0169] 具体而言,图7为处理器芯片动态调节架构框图,如图7所示,该方法能够结合处理器所处的电压、温度、退化量和工作负载等信息智能的调节处理器频率。该方法的实现装置主要由三个层次构成:电路层、内核层和应用层。其中:
[0170] 电路层:用于完成系统功能的电路结构,为实现装置中的基础模块,实现对当前芯片工作状态信息的感知。电路层由多组模块构成,包括温度传感器、可靠性传感器、压降传感器、通用处理器模块、时钟电压调节模块。
[0171] 温度传感器用于测量芯片内部的温度与温度变化信息。
[0172] 可靠性传感器用于测量MOS器件与导线受到环境应力造成的影响,包括时间相关的栅介质击穿(TDDB)传感器、热载流子注入(HCI)传感器、偏压温度不稳定性(BTI)传感器、金属化电迁移(EM)传感器等等。
[0173] 压降传感器用于测量芯片供电电压的变化。
[0174] 通用处理器模块为处理器的主要模块,用于实现处理器主要功能逻辑。
[0175] 时钟电压调节模块用于根据处理器指令调节处理器的供电电压和时钟频率,实现功耗和性能的动态平衡。
[0176] 内核层:主要包括:驱动程序、操作系统内核和DVFS(Dynamic Voltage Frequency Scaling,动态调频调压)程序。
[0177] 驱动程序用于实现对传感器电路功能的抽象,实现对目标数据的读取与写入。
[0178] 操作系统内核为操作系统与硬件交互的接口,用于实现对硬件资源的抽象与访问调度。
[0179] DVFS程序用于实现对时钟电压调节模块的控制。
[0180] 应用层主要实现处理器智能控制算法,包括数据收集、参数计算、状态合成和阈值计算四个步骤。
[0181] 数据收集实现对传感器模块数据的读取以及获取当前处理器负载状态。
[0182] 参数计算主要利用传感器计算温度、电压、可靠性参数等信息。
[0183] 状态合成利用获取的参数、处理器负载信息等信息进行合成,得到当前芯片的复合状态。
[0184] 阈值计算利用处理器当前状态给出当前合适的处理器的工作频率和电压,设定下次调节阈值条件,并控制DVFS模块进行电压与频率调节。
[0185] 本发明实施例中的计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明方法实施例中的各方法步骤。
[0186] 以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,的程序可以存储于一计算机可读取存储介质中,该程序在执行时,包括以上方法的步骤,的存储介质,如:ROM/RAM、磁碟、光盘等。
[0187] 以上实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。