掌桥专利:专业的专利平台
掌桥专利
首页

一种芯片功耗调整方法、装置、电子设备和存储介质

文献发布时间:2023-06-19 11:22:42


一种芯片功耗调整方法、装置、电子设备和存储介质

技术领域

本申请涉及芯片功耗控制技术领域,特别涉及一种芯片功耗调整方法、装置、电子设备和存储介质。

背景技术

随着集成电路设计规模及制造工艺的发展,功耗成为芯片的重要指标,过高的功耗对芯片的性能及成本影响很大,特别是移动端设备的迅速发展,更加注重芯片功耗,显然芯片低功耗设计已成为必不可少的环节。

目前降低芯片功耗的方法多是在芯片后端布局布线阶段通过工具自动插入门控时钟等单元以降低功耗,不能特别有效的降低芯片功耗。

因此,如何提供一种解决上述技术问题的方案是本领域技术人员目前需要解决的问题。

发明内容

本申请的目的是提供一种芯片功耗调整方法、装置、电子设备和存储介质,能够随着模组使用率的不同动态调整对应的时钟频率,从而有效降低了芯片功耗。其具体方案如下:

本申请提供一种芯片功耗调整方法,包括:

获取芯片的模组的模组使用率;

根据所述模组使用率的大小确定与所述模组对应的时钟频率;

调整所述模组的当前时钟频率为所述时钟频率,以调整所述模组的功耗。

优选的,所述获取芯片的模组的模组使用率,包括:

当所述模组被访问或者所述模组工作时,控制所述模组的使能信号为高电平,否则,控制所述模组的使能信号为低电平;

当所述模组的时序逻辑中寄存器组中的寄存器的值变化时,则控制寄存器使能信号为高电平,否则,控制所述寄存器使能信号为低电平;其中,所有所述寄存器使能信号构成时序逻辑使能信号组;

根据所述使能信号和所述时序逻辑使能信号组确定所述模组的所述模组使用率。

优选的,所述根据所述使能信号和时序逻辑使能信号组确定所述模组的所述模组使用率,包括:

当所述使能信号是高电平时,将所述时序逻辑使能信号组中的高电平数量除以所述时序逻辑使能信号组的位宽总数,得到所述模组使用率;

当所述使能信号为低电平,则确定所述模组使用率为零。

优选的,所述根据所述模组使用率的大小确定与所述模组对应的时钟频率,包括:

当所述模组使用率大于设定值时,确定所述模组的时钟频率为最高频率;

当所述模组使用率不大于设定值时,根据所述模组使用率大小修改所述模组的时钟频率。

优选的,还包括:

当所述模组使用率为零时,关闭所述模组的工作时钟。

优选的,还包括:

当所述模组使用率为零且持续设定时间,则关闭所述模组的电源。

优选的,还包括:

当所述模组使用率大于设定值时,确定为正常模式;

当所述模组使用率不大于设定值时,确定为降频模式;

当所述模组使用率为零时,确定为时钟关闭模式;

当所述模组的所述模组使用率为零且持续设定时间时,确定为电源关闭模式。

本申请提供一种芯片功耗调整装置,包括:

模组使用率获取模块,用于获取芯片的模组的模组使用率;

时钟频率确定模块,用于根据所述模组使用率的大小确定与所述模组对应的时钟频率;

频率调整模块,用于调整所述模组的当前时钟频率为所述时钟频率,以调整所述模组的功耗。

本申请提供一种电子设备,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现如上所述芯片功耗调整方法的步骤。

本申请提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述芯片功耗调整方法的步骤。

本申请提供一种芯片功耗调整方法,包括:获取芯片的模组的模组使用率;根据模组使用率的大小确定与模组对应的时钟频率;调整模组的当前时钟频率为时钟频率,以调整模组的功耗。可见,本申请在芯片前端设计阶段设计了该芯片功耗调整方法,根据芯片的各个模组的模组使用率的大小确定时钟频率,能够随着模组使用率的不同动态调整当前时钟频率,从而有效降低了芯片功耗。本申请同时还提供了一种芯片功耗调整装置、电子设备和存储介质,均具有上述有益效果,在此不再赘述。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本申请实施例提供的一种芯片功耗调整方法的流程图;

图2为本申请实施例提供的一种芯片功耗调整装置的结构示意图;

图3为本申请实施例提供的一种电子设备的结构示意图;

图4为本申请实施例提供的另一种电子设备的结构示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

随着集成电路设计规模及制造工艺的发展,功耗成为芯片的重要指标,过高的功耗对芯片的性能及成本影响很大,特别是移动端设备的迅速发展,更加注重芯片功耗,显然芯片低功耗设计已成为必不可少的环节。

目前降低芯片功耗的方法多是在芯片后端布局布线阶段通过工具自动插入门控时钟等单元以降低功耗,不能特别有效的降低芯片功耗。

基于上述技术问题,本申请提供一种芯片功耗调整方法,包括:获取芯片的模组的模组使用率;根据模组使用率的大小确定与模组对应的时钟频率;调整模组的当前时钟频率为时钟频率,以调整模组的功耗。

可见,本申请在芯片前端设计阶段设计了该芯片功耗调整方法,根据芯片的各个模组的模组使用率的大小确定时钟频率,能够随着模组使用率的不同动态调整当前时钟频率,从而有效降低了芯片功耗。

具体请参考图1,图1为本申请实施例提供的一种芯片功耗调整方法的流程图,具体包括:

S110、获取芯片的模组的模组使用率;

其中,芯片上集成有多个模组,每个模组对应有模组使用率。本步骤是获取芯片的每一个模组的模组使用率。本实施例不对模组使用率的确定方式进行限定,用户可自定义设置。该芯片可以是SoC芯片还可以是其他芯片。

S120、根据模组使用率的大小确定与模组对应的时钟频率。

根据模组使用率的大小确定模组对应的时钟频率的方式可以是每一模组使用率对应唯一一个时钟频率;还可以是多个模组使用率的对应同一时钟频率,且,模组使用率的降低,时钟频率保持不变或者降低。通过实时判断芯片各模组的模组使用率大小,控制芯片的模组自动切换对应的时钟频率,从而有效降低了芯片功耗。

S130、调整模组的当前时钟频率为时钟频率,以调整模组的功耗。

调整模组的当前时钟频率为时钟平率,如果模组使用率升高,则对应的时钟频率升高或者保持不变,也就是说,当前时钟频率不大于时钟频率;如果模组使用率降低,则对应的时钟频率降低或者保持不变,也就是说,当前时钟频率不小于时钟频率。

基于上述技术方案,本实施例在芯片前端设计阶段设计了该芯片功耗调整方法,根据芯片的各个模组的模组使用率的大小确定时钟频率,能够随着模组使用率的不同动态调整当前时钟频率,从而有效降低了芯片功耗。

在一种可实现的实施方式中,本实施例提供一种具体的使用率的确定方式,S110获取芯片的模组的模组使用率,包括:

S111、当模组被访问或者模组工作时,控制模组的使能信号为高电平,否则,控制模组的使能信号为低电平;

S112、当模组的时序逻辑中寄存器组中的寄存器的值变化时,则控制寄存器使能信号为高电平,否则,控制寄存器使能信号为低电平;其中,所有寄存器使能信号构成时序逻辑使能信号组;

其中,一个模组的时序逻辑中寄存器组包括多个寄存器,如果一个寄存器的值发生变化时,表示在使用,因此,控制寄存器使能信号为高电平;如果寄存器的值保持不变,则控制寄存器使能信号为低电平。

S113、根据使能信号和时序逻辑使能信号组确定模组的模组使用率。

具体地,S113根据使能信号和时序逻辑使能信号组确定模组的模组使用率,包括:

S1131、当使能信号是高电平时,将时序逻辑使能信号组中的高电平数量除以时序逻辑使能信号组的位宽总数,得到模组使用率;

例如,时序逻辑使能信号组B[n-1:0],其中,n为模组时序逻辑中定义为寄存器类型的信号数目,也就是位宽总数。当需要访问该模组或模组工作时,控制使能信号A保持高电平,否则保持低电平;当模组内时序逻辑中寄存器组的值变化时则拉高对应使能信号B[m],否则将使能信号置为低电平。通过使能信号A和B可计算出模组代码使用率,当信号A保持高电平时,信号组B中高电平位数x除以n即可得到使用率。

S1132、当使能信号为低电平,则确定模组使用率为零。

具体的,当使能信号是高电平时表明模组被访问或者模组工作,此时利用高电平数量除以寄存器的数量的值作为模组使用率。

当使能信号为低电平表明模组未被访问或者模组未工作,无论寄存器的高点平数量的变化也将该模组使用率确定为零。通过上述方式采用了使能信号和时序逻辑使能信号组中的高电平信号共同判定模组使用率,提高了精准度。

当然,113根据使能信号和时序逻辑使能信号组确定模组的模组使用率,也可以包括:将时序逻辑使能信号组中的高电平数量除以寄存器的数量,得到模组使用率。当时该种方式忽略了系统的波动造成的影响。

在一种可实现的实施方式中,S120根据模组使用率的大小确定与模组对应的时钟频率,包括:

S121、当模组使用率大于设定值时,确定模组的时钟频率为最高频率;

当系统的模组使用率大于设定值时,表示该模组在正常工作,此时以最高频率作为时钟频率。以该种方式减少了系统的运算压力。

S122、当模组使用率不大于设定值时,根据模组使用率大小修改模组的时钟频率。

具体的,当模组使用率不大于设定值时,可以是每一模组使用率确定唯一对应的时钟频率。例如,模组使用率a对应时钟频率b;模组使用率c对应时钟频率d;模组使用率e对应时钟频率f,其中,a>c>e,b>d>f。当然还可以是每一模组使用率所处的范围对应唯一的时钟频率。具体的方式本实施例不再进行限定,只要是能够实现本实施例的目的即可。

进一步地,还包括:当模组使用率为零时,关闭模组的工作时钟。

为了节约能耗,当模组使用率为零时,表示该模组未工作,因此,关闭其工作时钟,减少能耗。

进一步地,还包括:当模组的模组使用率为零且持续设定时间,则关闭模组的电源。当持续设定时间模组使用率为零,则表示该模组长期未工作,关闭电源,进一步减少能耗。

进一步地,本实施例设定多个模式,针对不同的模式选择不同的时钟频率的处理,具体的,还包括:

当模组使用率大于设定值时,确定为正常模式;

正常模式是芯片各模块处于正常工作状态,电源正常开启,时钟频率为最高频率,芯片处于性能最佳模式。

当模组使用率不大于设定值时,确定为降频模式;

降频模式是降低了芯片模块工作时钟频率,芯片主频下降。该模式下可包含几种不同的时钟频率,根据模块代码使用率的不同,可分别对应不同的时钟频率。此时模组的时钟频率根据模组使用率的大小确定,当模组使用率不大于设定值时如果比上一时刻的模组使用率大,则调高时钟频率(总是小于正常模式下的时钟频率);如果比上一时刻的模组使用率小,则调低时钟频率。

当模组使用率为零时,确定为时钟关闭模式;

时钟关闭模式是在芯片模块使用率为零时,关闭该模块工作时钟,模块处于停止工作状态。

当模组的模组使用率为零且持续设定时间时,确定为电源关闭模式。

电源关闭模式是在芯片模块使用率为零且持续到一定时间周期时,为了进一步降低功耗,直接关断该模块电源,模块处于停止工作状态。

可以理解的是,依据芯片不同工作状态,可以划分出上述四种工作模式,不同模式下芯片功耗不同。同时实时判断芯片各模组使用率,当模组使用率低于设定值时,降低对应的时钟频率;当模组使用率为零(即该模块未工作)时,自动关断对应时钟;当模块未工作状态到达特定个时钟周期后,关断对应模块电源;当模组使用率变化时,控制芯片切换到对应工作模式。这样就控制芯片模块在各个模式进行自动切换,通过降低时钟频率、关闭时钟及关闭电源的方式有效降低了芯片功耗。

基于上述任一实施例,本实施例提供一种具体的芯片功耗调整方法,包括:

芯片代码设计时,各模组采用模组级使能信号A及时序逻辑使能信号组B[n-1:0](n为模组时序逻辑中定义为寄存器类型的信号数目),当需要访问该模组或模组工作时,控制使能信号A保持高电平,否则保持低电平;当模组内时序逻辑中寄存器组的值变化时则拉高对应使能信号B[m],否则将使能信号置为低电平。通过使能信号A和B可计算出模组代码使用率,当信号A保持高电平时,信号组B中高电平位数x除以n即可得到使用率;当信号A为低电平时,则使用率为零。

芯片的模组工作在正常模式时,实时判断模组使用率的大小,当使模组使用率低于设定值,比如低于50%时,通过修改模组对应PLL的配置寄存器降低时钟频率,从而进入降频模式。可选的,根据模组代码的模组使用率的不同,可分别对应不同的时钟频率。同时为了提高效率,通常模组使用率率低于设定值时开始计数,计数达到特定个时钟周期(如100个时钟周期)时,才会修改时钟频率。相反的,芯片的模组工作在降频模式时,模组使用率高于设定值时,通过修改模组对应PLL的配置寄存器提高时钟频率,从而恢复到正常模式。芯片的模组工作在正常模式或者降频模式,模组使用率为零时,通过修改门控时钟使能信号,直接关断时钟,从而进入时钟关闭模式,当模组使用率大于零时,则修改门控时钟使能信号,重新开启时钟,恢复到时钟关闭前的工作模式。芯片的模组工作在时钟关闭模式时开始计数,计数达到特定个时钟周期(如1000个时钟周期)时,通过修改门控电源使能信号,关断模组电源,从而进入电源关闭模式,当使用率大于零时,则修改门控电源使能信号,模组重新上电,进入正常模式。

可见,本实施例提出一种SOC芯片低功耗设计方法,依据芯片的模组的不同工作状态,可以划分出几种工作模式,不同模式下芯片的模组功耗不同。同时实时判断芯片各模组使用率,当模组使用率低于设定值时,降低对应的时钟频率;当模组使用率为零(即该模组未工作)时,自动关断对应时钟;当模组未工作状态到达特定个时钟周期后,关断对应模组电源;当模组使用率变化时,控制芯片切换到对应工作模式。这样就控制芯片模组在各个模式进行自动切换,通过降低时钟频率、关闭时钟及关闭电源的方式有效降低了芯片功耗。

下面对本申请实施例提供的一种芯片功耗调整装置进行介绍,下文描述的芯片功耗调整装置与上文描述的芯片功耗调整方法可相互对应参照,参考图2,图2为本申请实施例提供的一种芯片功耗调整装置的结构示意图,包括:

模组使用率获取模块201,用于获取芯片的模组的模组使用率;

时钟频率确定模块202,用于根据模组使用率的大小确定与模组对应的时钟频率;

频率调整模块203,用于调整模组的当前时钟频率为时钟频率,以调整模组的功耗。

优选地,模组使用率获取模块201,包括:

使能信号确定单元,用于当模组被访问或者模组工作时,控制模组的使能信号为高电平,否则,控制模组的使能信号为低电平;

寄存器使能信号调控单元,用于当模组的时序逻辑中寄存器组中的寄存器的值变化时,则控制寄存器使能信号为高电平,否则,控制寄存器使能信号为低电平;其中,所有寄存器使能信号构成时序逻辑使能信号组;

模组使用率确定单元,用于根据使能信号和时序逻辑使能信号组确定模组的模组使用率。

优选地,模组使用率确定单元,包括:

第一确定子单元,用于当使能信号是高电平时,将时序逻辑使能信号组中的高电平数量除以时序逻辑使能信号组的位宽总数,得到模组使用率;

第二确定子单元,用于当使能信号为低电平,则确定模组使用率为零。

优选地,时钟频率确定模块202,包括:

最高频率确定单元,用于当模组使用率大于设定值时,确定模组的时钟频率为最高频率;

时钟频率修改单元,用于当模组使用率不大于设定值时,根据模组使用率大小修改模组的时钟频率。

优选地,还包括:

工作时钟关闭模块,用于当模组使用率为零时,关闭模组的工作时钟。

优选地,还包括:

电源关闭模块,用于当模组的模组使用率为零且持续设定时间,则关闭模组的电源。

优选地,还包括:模式确定模块,用于:

当模组使用率大于设定值时,确定为正常模式;

当模组使用率不大于设定值时,确定为降频模式;

当模组使用率为零时,确定为时钟关闭模式;

当模组的模组使用率为零且持续设定时间时,确定为电源关闭模式。

由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。

下面对本申请实施例提供的一种电子设备进行介绍,下文描述的电子设备与上文描述的方法可相互对应参照。

请参考图3,图3为本申请实施例提供的一种电子设备的结构示意图,包括:

存储器100,用于存储计算机程序;

处理器200,用于执行计算机程序时实现如上芯片功耗调整方法的步骤。

具体的,存储器100包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机可读指令,该内存储器为非易失性存储介质中的操作系统和计算机可读指令的运行提供环境。处理器200为电子设备提供计算和控制能力,执行存储器100中保存的计算机程序时,可以实现芯片功耗调整方法的步骤。

在上述实施例的基础上,作为优选实施方式,参见图4,图4为本申请实施例提供的另一种电子设备的结构示意图,该电子设备还包括:

输入接口300,与处理器200相连,用于获取外部导入的计算机程序、参数和指令,经处理器200控制保存至存储器100中。该输入接口300可以与输入装置相连,接收用户手动输入的参数或指令。该输入装置可以是显示屏上覆盖的触摸层,也可以是终端外壳上设置的按键、轨迹球或触控板,也可以是键盘、触控板或鼠标等。

显示单元400,与处理器200相连,用于显示处理器200发送的数据。该显示单元400可以为PC机上的显示屏、液晶显示屏或者电子墨水显示屏等。

网络端口500,与处理器200相连,用于与外部各终端设备进行通信连接。该通信连接所采用的通信技术可以为有线通信技术或无线通信技术,如移动高清链接技术(MobileHigh-Definition Link,MHL)、通用串行总线(Universal Serial Bus,USB)、高清多媒体接口(High Definition Multimedia Interface,HDMI)、无线保真技术(WiFi)、蓝牙通信技术、低功耗蓝牙通信技术、基于IEEE802.11s的通信技术等。

由于电子设备部分的实施例与方法部分的实施例相互对应,因此电子设备部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。

下面对本申请实施例提供的一种计算机可读存储介质进行介绍,下文描述的计算机可读存储介质与上文描述的方法可相互对应参照。

本申请提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上芯片功耗调整方法的步骤。

由于计算机可读存储介质部分的实施例与方法部分的实施例相互对应,因此计算机可读存储介质部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。

说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。

以上对本申请所提供的一种芯片功耗调整方法、装置、设备和介质进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。

相关技术
  • 一种芯片功耗调整方法、装置、电子设备和存储介质
  • 芯片静态功耗的预测方法、装置、电子设备和存储介质
技术分类

06120112901877