CN110245366B - 动态功耗估计方法、装置及系统 - Google Patents
动态功耗估计方法、装置及系统 Download PDFInfo
- Publication number
- CN110245366B CN110245366B CN201810191683.1A CN201810191683A CN110245366B CN 110245366 B CN110245366 B CN 110245366B CN 201810191683 A CN201810191683 A CN 201810191683A CN 110245366 B CN110245366 B CN 110245366B
- Authority
- CN
- China
- Prior art keywords
- target
- power consumption
- signal
- signals
- unit time
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 36
- 238000012360 testing method Methods 0.000 claims description 33
- 230000006870 function Effects 0.000 claims description 13
- 238000004088 simulation Methods 0.000 claims description 13
- 238000012417 linear regression Methods 0.000 claims description 10
- 239000012634 fragment Substances 0.000 claims description 8
- 238000013461 design Methods 0.000 claims description 7
- 230000007306 turnover Effects 0.000 abstract description 5
- 238000012549 training Methods 0.000 description 9
- 238000012545 processing Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 230000003068 static effect Effects 0.000 description 5
- 230000001360 synchronised effect Effects 0.000 description 4
- 238000012795 verification Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000017525 heat dissipation Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/28—Supervision thereof, e.g. detecting power-supply failure by out of limits supervision
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/08—Clock generators with changeable or programmable clock frequency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/396—Clock trees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2117/00—Details relating to the type or aim of the circuit design
- G06F2117/04—Clock gating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/06—Power analysis or power optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/12—Timing analysis or timing optimisation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Power Sources (AREA)
- Measurement Of Unknown Time Intervals (AREA)
- Debugging And Monitoring (AREA)
Abstract
一种动态功耗估计方法、装置及系统。所述方法包括:记录待测目标的n路目标信号中的每路目标信号在单位时间内的统计数值,其中,目标信号为经过时钟门控后的时钟信号,且统计数值为翻转次数,或者,目标信号为时钟门控信号,且统计数值为使能周期数,n为正整数;根据n路目标信号中的每路目标信号在单位时间内的统计数值,计算待测目标在单位时间内的动态功耗。本申请实施例提供的方案中,由于目标信号反映了待测目标内的各个电路模块的翻转情况,不翻转的电路模块自然没有动态功耗,因此采用上述方式根据电路的实际翻转状态来估计动态功耗,准确性高。
Description
技术领域
本申请实施例涉及芯片技术领域,特别涉及一种动态功耗估计方法、装置及系统。
背景技术
为了应对日益增长的温度调度需求,ARM公司开发了功耗感知调度(Energy AwareScheduling,EAS)和智能功率分配(Intelligent Power Allocation,IPA)技术(以下简称“EAS&IPA”),以动态调整系统级芯片(System on Chip,SOC)内各个子系统的工作频率,以达到最大化利用散热空间,从而最大化系统性能,最优化用户温度体验的目的。
EAS&IPA为达到温控和相应的子系统调度目的,需要获取下述参数:温度、功耗和负载。其中,温度和负载较易获得精确值,但现有技术所提供的获取功耗的方式,准确性较低。
SOC的功耗包括静态功耗和动态功耗两部分。静态功耗主要由静电流、漏电流等因素造成,动态功耗主要由电路中信号变换时产生的瞬态开路电流(crowbar current)和负载电流(load current)等因素造成。目前,相关现有技术所提供获取动态功耗的方式如下:通过电压、频点、负载率等参数来静态折算得到动态功耗。
上述方式所获得的动态功耗的准确性较低。
发明内容
本申请提供了一种动态功耗估计方法、装置及系统,可用于提高动态功耗估计的准确性。
一方面,本申请实施例提供一种动态功耗估计装置,该装置包括:计数单元和运算单元。计数单元,用于记录待测目标的n路目标信号中的每路目标信号在单位时间内的统计数值,其中,目标信号为经过时钟门控后的时钟信号,且统计数值为翻转次数,或者,目标信号为时钟门控信号,且统计数值为使能周期数;将n路目标信号中的每路目标信号在单位时间内的统计数值发送给运算单元,n为正整数。运算单元,用于根据n路目标信号中的每路目标信号在单位时间内的统计数值,计算待测目标在单位时间内的动态功耗。
本申请实施例提供的方案中,通过记录待测目标的n路目标信号在单位时间内的统计数值,根据上述统计数值计算待测目标在单位时间内的动态功耗,由于目标信号为经过时钟门控后的时钟信号或者时钟门控信号,其反映了待测目标内的各个电路模块的翻转情况,不翻转的电路模块自然没有动态功耗,因此采用上述方式根据电路的实际翻转状态来估计动态功耗,准确性高。
在一个可能的设计中,本申请实施例提供的装置还包括:存储单元。存储单元,用于存储n路目标信号中的每路目标信号各自对应的权重系数。运算单元,具体用于根据n路目标信号中的每路目标信号在单位时间内的统计数值,以及n路目标信号中的每路目标信号各自对应的权重系数,计算待测目标在单位时间内的动态功耗。
可选地,运算单元,具体用于按照下述公式计算待测目标在单位时间内的动态功耗p:
其中,ki表示n路目标信号中的第i路目标信号在单位时间内的统计数值,ai表示所述第i路目标信号对应的权重系数,ε为误差项,1≤i≤n且i为整数。
在一个可能的设计中,计数单元包括:n个计数器。可选地,n个计数器异步工作。n个计数器中的每一个计数器,用于对一路目标信号在单位时间内的统计数值进行计数。
由于待测目标内时钟树设置及收敛需要大量工作量,如果输入至计数器的目标信号与计数时钟之间要做同步收敛,则需要消耗大量的资源及时间进行处理,影响待测目标内子模块的收敛时序,采用n个计数器异步工作的方式,可以不对目标信号与计数时钟之间做同步收敛,节省处理资源和时间。
在一个可能的设计中,待测目标中存在多级时钟门控。目标信号为经过第一级时钟门控后的时钟信号,或者,目标信号为第一级时钟门控信号。
由于经过第一级时钟门控后的时钟信号或者第一级时钟门控信号对应的电路模块的覆盖率已经较高,因此一方面能够确保动态功耗的估计准确性,另一方面能够使得所获取的目标信号的数量不至于过多,有效控制计算复杂度。
另一方面,本申请实施例提供一种电子设备,该电子设备包括上述方面所述的动态功耗估计装置。
再一方面,本申请实施例提供一种动态功耗估计方法,该方法包括:记录待测目标的n路目标信号中的每路目标信号在单位时间内的统计数值,n为正整数;根据n路目标信号中的每路目标信号在单位时间内的统计数值,计算待测目标在单位时间内的动态功耗。
在一个可能的设计中,用于计算所述动态功耗的公式采用下述方法得到:获取j个测试功耗片段,j个测试功耗片段中的每个测试功耗片段包括:所述待测目标的n路目标信号中的每路目标信号在单位时间内的统计数值Kj,以及所述待测目标在单位时间内的动态功耗pj,j为正整数;采用线性回归对j个测试功耗片段中的所述Kj和所述pj进行拟合;根据拟合结果确定所述公式。
在一个可能的设计中,获取j个测试功耗片段,包括:构建电子设计自动化(Electronics Design Automation,EDA)仿真环境,该EDA仿真环境中包括:待测目标的寄存器转换级(Register Transfer Level,RTL)和智能温度调度(Intelligent TemperatureScheduling,ITS)模块的RTL,其中,待测目标的RTL用于仿真待测目标中除ITS模块以外的其它功能,ITS模块的RTL用于仿真ITS模块的功能,ITS模块用于实现动态功耗估计;在EDA仿真环境中执行j个测试用例,得到j个测试功耗片段。
本申请实施例提供的方案中,通过EDA仿真获取测试功耗片段,后续根据该测试功耗片段训练得到用于计算动态功耗的公式,能够在芯片完成成品加工前即可得到较为准确的公式。
又一方面,本申请实施例提供一种动态功耗估计系统,该系统包括处理器和存储器,所述存储器用于存储指令,所述处理器用于基于所述指令执行上述动态功耗估计方法的步骤。
附图说明
图1是本申请一个实施例提供的动态功耗估计方法的流程图;
图2是本申请一个实施例提供的训练过程的流程图;
图3是本申请一个实施例提供的动态功耗估计装置的示意图;
图4是本申请一个实施例提供的动态功耗估计系统的示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
请参考图1,其示出了本申请一个实施例提供的动态功耗估计方法的流程图,该方法可以包括如下几个步骤:
步骤101,记录待测目标的n路目标信号中的每路目标信号在单位时间内的统计数值,n为正整数。
在本申请实施例中,待测目标可以是一个芯片,也可以是由两个或者两个以上的芯片组成的芯片系统,或者是一个芯片中的一部分电路模块。在一个示例中,待测目标为SOC。SOC是一个有专用目标的集成电路,其中包含完整系统并嵌有软件。在诸如手机、平板电脑之类的终端中,SOC可以是应用处理器(Application Processor,AP)芯片,AP芯片包括应用处理器,以及除应用处理器外的其它一个或多个器件,如存储器、图形处理器等。
在本申请的一个示例中,目标信号为经过时钟门控后的时钟信号,且统计数值为翻转次数。也即上述步骤101为:记录待测目标的n路经过时钟门控后的时钟信号中的每路时钟信号在单位时间内的翻转次数。时钟信号的翻转即是指时钟信号在高低电平之间切换,时钟信号由高电平变为低电平,或者由低电平变为高电平,均记为翻转一次。
在本申请的另一个示例中,目标信号为时钟门控信号,且统计数值为使能周期数。也即上述步骤101为:记录待测目标的n路时钟门控信号中的每路时钟门控信号在单位时间内的使能周期数。
时钟门控(clock gating)技术是一种简单和有效的功耗控制方法,其基本原理是通过关闭芯片上暂时用不到的功能和该功能对应的时钟,以达到降低功耗的目的。在时钟门控技术中,通过一个时钟门控信号与一个时钟信号作逻辑运算,以达到对该时钟信号进行门控的目的。例如,用一个时钟门控信号和一个时钟信号相与,可以控制该时钟信号的起作用时间。由于待测目标(如SOC)可以包括多个不同功能的电路模块,因此待测目标中可以包括多路时钟信号,每一路时钟信号均可采用时钟门控技术进行控制。
上述n路目标信号可以是待测目标中的所有目标信号,也可以是待测目标中的部分目标信号。通常来讲,所获取的目标信号的数量越多,相应的电路模块的覆盖率就越高,有助于提升后续估计出的动态功耗的准确性,但计算复杂度也会相应提升;反之,所获取的目标信号的数量越少,相应的电路模块的覆盖率就越低,这会降低后续估计出的动态功耗的准确性,但计算复杂度会相应降低。因此,在确定所要获取的目标信号时,需要进行合理选择,以兼顾动态功耗的估计准确性和计算复杂度。
针对某一时钟信号,可能存在多级时钟门控。例如,初始的时钟信号经过第一级时钟门控之后,得到经过第一级时钟门控后的时钟信号;经过第一级时钟门控后的时钟信号经过第二级时钟门控之后,得到经过第二级时钟门控后的时钟信号;以此类推。可选地,当待测目标中存在多级时钟门控时,所获取的n路目标信号为经过第一级时钟门控后的时钟信号,或者为第一级时钟门控信号,所述第一级时钟门控信号是指在第一级时钟门控中与初始的时钟信号作逻辑运算的时钟门控信号。上述方式获取的n路目标信号对应的电路模块的覆盖率已经较高,因此一方面能够确保动态功耗的估计准确性,另一方面能够使得所获取的目标信号的数量不至于过多,有效控制计算复杂度。
在获取到n路目标信号之后,对每路目标信号的统计数值进行计数。以单位时间为计数周期,单位时间可以预先设定,如1us、1ms等,本申请实施例对此不作限定。
可选地,通过硬件计数器对统计数值进行计数,包括如下几个子步骤:
1、将n路目标信号分别输入至n个计数器;
2、通过n个计数器对n路目标信号中的每路目标信号在单位时间内的统计数值进行计数。
上述n路目标信号和n个计数器一一对应,也即,1个计数器用于对1路目标信号的统计数值进行计数。
计数器包括时钟输入端和使能输入端。
在本申请的一个示例中,当目标信号为经过时钟门控后的时钟信号时,计数器的时钟输入端输入1路经过时钟门控后的时钟信号,计数器的使能输入端输入的使能信号用于控制计数器启动和停止计数,使能信号能够根据单位时间的时长进行设定,计数器的计数结果即为该路经过时钟门控后的时钟信号在单位时间内的翻转次数。例如,某一时钟信号与一时钟门控信号做逻辑运算之后,得到经过时钟门控后的时钟信号,经过时钟门控后的时钟信号在单位时间内的翻转次数为8,表示该经过门控后的时钟信号在单位时间内由高电平变为低电平的次数,以及由低电平变为高电平的次数之和为8。
在本申请的另一个示例中,当目标信号为时钟门控信号时,计数器的时钟输入端输入1路时钟信号,计数器的使能输入端输入1路时钟门控信号,计数器的计数结果即为单位时间内的使能周期数。其中,单位时间内的使能周期数,是指在单位时间内,时钟门控信号允许时钟信号正常翻转的周期数。一个正常翻转的周期,是指相邻两个上升沿之间的翻转过程,或者相邻两个下降沿之间的翻转过程。以最简单的“与”逻辑为例,假设时钟门控信号为高电平,那么无论时钟信号是高电平还是低电平,都只会输出高电平。也就是说,将输出锁死为高电平,也即经过高电平的时钟门控之后时钟信号无法正常翻转。而当时钟门控信号为低电平时,输出完全依照时钟信号,如果时钟信号翻转,那么输出也会翻转。假设某一时钟信号在单位时间内正常翻转的周期数为20,将该时钟信号和上述时钟门控信号一起作为“与”逻辑的输入,输出经过时钟门控后的时钟信号,假设该经过时钟门控后的时钟信号在单位时间内正常翻转的周期数为12,则该时钟门控信号在单位时间内的使能周期数为12。另外,输入至各个计数器的时钟信号可以相同,也可以不同,本申请实施例对此不作限定。并且,输入至计数器的时钟信号,可以是待测目标上电路模块的时钟信号,也可以是其它预设的时钟信号。
可选地,n个计数器可以同步工作,也可以异步工作。由于待测目标内时钟树设置及收敛需要大量工作量,如果输入至计数器的目标信号与计数时钟之间要做同步收敛,则需要消耗大量的资源及时间进行处理,影响待测目标内子模块的收敛时序,采用n个计数器异步工作的方式,可以不对目标信号与计数时钟之间做同步收敛,节省处理资源和时间。
步骤102,根据n路目标信号中的每路目标信号在单位时间内的统计数值,计算待测目标在单位时间内的动态功耗。
在记录得到每路目标信号在单位时间内的统计数值之后,便可根据预先拟合得到的各路目标信号的统计数值与动态功耗之间的函数关系,计算待测目标在单位时间内的动态功耗。该函数关系可以称为用于计算动态功耗的公式或者功耗计算模型,有关该函数关系的拟合过程,将在下文实施例中介绍说明。
在一个示例中,采用线性回归算法拟合得到n路目标信号中的每路目标信号各自对应的权重系数,相应地,在计算动态功耗时,根据n路目标信号中的每路目标信号在单位时间内的翻转次数,以及n路目标信号中的每路目标信号各自对应的权重系数,计算待测目标在单位时间内的动态功耗。可选地,按照下述公式计算待测目标在单位时间内的动态功耗p:
其中,ki表示n路目标信号中的第i路目标信号在单位时间内的统计数值,ai表示所述第i路目标信号对应的权重系数,ε为误差项,1≤i≤n且i为整数。误差项ε的取值可以在上述公式的训练过程中确定,其用于表示公式的本征误差。
动态功耗可以输入至待测目标(如SOC)的EAS&IPA模块,由该EAS&IPA模块结合动态功耗、静态功耗、温度以及负载等参数,进行调度及温控。
本申请实施例提供的技术方案中,通过记录待测目标的n路目标信号在单位时间内的统计数值,根据上述统计数值计算待测目标在单位时间内的动态功耗,由于目标信号为经过时钟门控后的时钟信号或者时钟门控信号,其反映了待测目标内的各个电路模块的翻转情况,不翻转的电路模块自然没有动态功耗,因此采用上述方式根据电路的实际翻转状态来估计动态功耗,准确性高。
下面,在图2实施例中,对上述用于计算动态功耗的公式的训练过程进行介绍说明。该训练过程可以包括如下几个步骤:
步骤201,获取j个测试功耗片段。
上述j个测试功耗片段中的每个测试功耗片段包括:待测目标的n路目标信号中的每路目标信号在单位时间内的统计数值Kj,以及待测目标在单位时间内的动态功耗pj,j为正整数,n为正整数。有关待测目标、目标信号和统计数值的介绍说明可参见上文,此处不再赘述。
在本申请实施例中,通过EDA仿真获取上述j个测试功耗片段。首先,构建EDA仿真环境,该EDA仿真环境中包括:待测目标的RTL和ITS模块的RTL,其中,待测目标的RTL用于仿真待测目标中除ITS模块以外的其它功能,ITS模块的RTL用于仿真ITS模块的功能,ITS模块用于实现动态功耗估计;而后,在EDA仿真环境中执行j个测试用例,得到j个测试功耗片段,其中,每个测试功耗片段中包括的统计数值可以由ITS模块的RTL统计得到,动态功耗由EDA仿真输出。
步骤202,采用线性回归对j个测试功耗片段中的Kj和pj进行拟合。
可选地,采用线性回归(linear regression)对j个测试功耗片段中的Kj和pj进行拟合,拟合结果即为各路目标信号的统计数值与动态功耗之间的函数关系。线性回归是利用数理统计中回归分析,来确定两种或者两种以上变量间相互依赖的定量关系的一种统计分析方法。线性回归可以利用称为线性回归方程的最小平方函数对一个或多个自变量和因变量之间关系进行建模,从而得到自变量和因变量之间的关系。
步骤203,根据拟合结果确定上述用于计算动态功耗的公式。
具体的,确定上述公式中n路目标信号各自对应的权重系数。
示例性地,采用线性回归算法拟合得到的n路目标信号中的每路目标信号对应的权重系数如下表-1所示:
目标信号的序号 | 权重系数 |
1 | 5.496485e+00 |
2 | 4.212942e+00 |
3 | 3.451386e+00 |
4 | -6.889167e+01 |
5 | 1.377307e+01 |
6 | -5.568340e+00 |
… | … |
表-1
在本申请实施例中,通过EDA仿真获取测试功耗片段,后续根据该测试功耗片段训练得到用于计算动态功耗的公式,能够在芯片完成成品加工前即可得到较为准确的公式。
另外,在芯片成品加工完成之后,可以获取若干个校验功耗片段,每个校验功耗片段包括:待测目标的n路目标信号中的每路目标信号在单位时间内的统计数值,以及实测得到的待测目标在单位时间内的动态功耗。采用上述校验功耗片段对公式的准确率进行校验,如果准确率不符合预设期望,则采用新的测试功耗片段对公式进行训练,直至准确率符合预设期望时停止训练。完成训练的公式可以硬化至用于动态功耗估计的硬件电路中,以进行动态功耗估计。
下述为本申请装置和系统实施例,对于本申请装置和系统实施例中未披露的细节,参见本申请方法实施例。
请参考图3,其示出了本申请一个实施例提供的动态功耗估计装置30的示意图。所述动态功耗估计装置30可以由硬件实现,例如该动态功耗估计装置30可以是一数字电路。可选地,动态功耗估计装置30为待测目标(如SOC)或者待测目标中的一部分电路模块。或者,所述动态功耗估计装置30也可以由硬件执行相应的软件实现。如图3所示,动态功耗估计装置30可以包括:计数单元31和运算单元32。
计数单元31,用于记录待测目标的n路目标信号中的每路目标信号在单位时间内的统计数值,其中,目标信号为经过时钟门控后的时钟信号,且统计数值为翻转次数,或者,目标信号为时钟门控信号,且统计数值为使能周期数;将n路目标信号中的每路目标信号在单位时间内的统计数值发送给运算单元32,n为正整数。
运算单元32,用于根据n路目标信号中的每路目标信号在单位时间内的翻转次数,计算待测目标在单位时间内的动态功耗。
可选地,动态功耗估计装置30还包括:存储单元33。
存储单元33,用于存储n路目标信号中的每路目标信号各自对应的权重系数。可选地,存储单元33还用于存储运算单元32的计算结果,也即动态功耗。
运算单元32,具体用于根据n路目标信号中的每路目标信号在单位时间内的统计数值,以及n路目标信号中的每路目标信号各自对应的权重系数,计算待测目标在单位时间内的动态功耗。
在一个示例中,运算单元32,具体用于按照下述公式计算待测目标在单位时间内的动态功耗p:
其中,ki表示n路目标信号中的第i路目标信号在单位时间内的统计数值,ai表示所述第i路目标信号对应的权重系数,ε为误差项,1≤i≤n且i为整数。
可选地,计数单元31包括n个计数器。上述n个计数器在图3中以计数器1、计数器2、…、计数器n示出。可选地,该n个计数器异步工作。n个计数器中的每一个计数器,用于对一路目标信号在单位时间内的统计数值进行计数。
可选地,待测目标中存在多级时钟门控。目标信号为经过第一级时钟门控后的时钟信号,或者,目标信号为第一级时钟门控信号。
可选地,动态功耗估计装置30还包括:配置单元和时钟产生单元(图中未示出)。
配置单元用于对运算单元32的处理逻辑和参数进行配置,例如对动态功耗的计算公式进行配置,对权重系数进行配置等。时钟产生单元产生用于控制运算单元32的时钟信号。
需要说明的是,动态功耗估计装置30为了实现上述功能,其可以包含实现各个功能相应的硬件电路结构。例如,计数单元31包括n个计数器,上述计数器是由硬件电路实现的计数器。运算单元32可以是硬件乘加器电路。存储单元33可以是寄存器,该寄存器用于存储权重系数,且寄存器中存储的权重系数可配置,权重系数根据公式的训练结果确定,并将其配置在寄存器中。硬件乘加器电路能够从寄存器中读取上述权重系数,并结合各个计数器输出的统计数值,进行乘加运算得到动态功耗。
本申请实施例提供的技术方案中,通过记录待测目标的n路目标信号在单位时间内的统计数值,根据上述统计数值计算待测目标在单位时间内的动态功耗,由于目标信号为经过时钟门控后的时钟信号或者时钟门控信号,其反映了待测目标内的各个电路模块的翻转情况,不翻转的电路模块自然没有动态功耗,因此采用上述方式根据电路的实际翻转状态来估计动态功耗,准确性高。
请参考图4,其示出了本申请一个实施例提供的动态功耗估计系统40的示意图。所述动态功耗估计系统40可以是一个芯片,也可以是由两个或者两个以上的芯片组成的芯片系统,或者是一个芯片中的一部分电路模块。可选地,所述动态功耗估计系统40为SOC。如图4所示,动态功耗估计系统40可以包括:处理器41和存储器42。
处理器41可以是中央处理器(Central Processing Unit,CPU),通用处理器,数字信号处理器(Digital Signal Processor,DSP),专用集成电路(Application-SpecificIntegrated Circuit,ASIC),现场可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。所述处理器41也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。
存储器42可以是随机存取存储器(Random Access Memory,RAM)、闪存、只读存储器(Read Only Memory,ROM)、可擦除可编程只读存储器(Erasable Programmable ROM,EPROM)、电可擦可编程只读存储器(Electrically EPROM,EEPROM)、寄存器、硬盘、移动硬盘、只读光盘(CD-ROM)或者本领域熟知的任何其它形式的存储介质。
处理器41和存储器42之间可以通过总线相互连接;总线可以是外设部件互连标准(Peripheral Component Interconnect,PCI)总线或扩展工业标准结构(ExtendedIndustry Standard Architecture,EISA)总线等。所述总线可以分为地址总线、数据总线、控制总线等。
在上述图3实施例中,本申请实施例公开内容所描述的方法的步骤是以硬件的方式来实现。在本实施例中,本申请实施例公开内容所描述的方法的步骤是由处理器41执行软件指令的方式来实现。上述软件指令可以存放在存储器42中。具体的,所述存储器42用于存储指令,所述处理器41用于基于所述指令执行下列步骤:
记录待测目标的n路目标信号中的每路目标信号在单位时间内的统计数值,其中,所述目标信号为经过时钟门控后的时钟信号,且所述统计数值为翻转次数,或者,所述目标信号为时钟门控信号,且所述统计数值为使能周期数,所述n为正整数;
根据所述n路目标信号中的每路目标信号在单位时间内的统计数值,计算所述待测目标在单位时间内的动态功耗。
可选地,所述处理器41用于基于所述指令具体执行下列步骤:
根据所述n路目标信号中的每路目标信号在单位时间内的统计数值,以及所述n路目标信号中的每路目标信号各自对应的权重系数,计算所述待测目标在单位时间内的动态功耗。
可选地,所述处理器41用于基于所述指令具体执行下列步骤:
按照下述公式计算所述待测目标在单位时间内的动态功耗p:
其中,ki表示所述n路目标信号中的第i路目标信号在单位时间内的统计数值,ai表示所述第i路目标信号对应的权重系数,ε为误差项,1≤i≤n且i为整数。
可选地,所述处理器41用于基于所述指令具体执行下列步骤:
将所述n路目标信号分别输入至n个计数器,所述n路目标信号和所述n个计数器一一对应;
通过所述n个计数器对所述n路目标信号中的每路目标信号在单位时间内的统计数值进行计数。
本申请一示例性实施例还提供了一种电子设备,该电子设备包括如图3实施例提供的动态功耗估计装置30或者包括如图4实施例提供的动态功耗估计系统40。可选地,电子设备可以是手机、平板电脑、电子书阅读器、多媒体播放设备、可穿戴设备、个人计算机(Personal Computer,PC)等,本申请实施例对此不作限定。
以上所述的具体实施方式,对本申请实施例的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本申请实施例的具体实施方式而已,并不用于限定本申请实施例的保护范围,凡在本申请实施例的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本申请实施例的保护范围之内。
Claims (14)
1.一种动态功耗估计装置,其特征在于,所述装置包括:计数单元和运算单元;
所述计数单元,用于记录待测目标的n路目标信号中的每路目标信号在单位时间内的统计数值,其中,所述待测目标是一个芯片、一个由两个或者两个以上的芯片组成的芯片系统或者一个芯片中的部分电路模块,所述n路目标信号是待测目标中经过选择的部分信号,所述目标信号为经过时钟门控后的时钟信号,且所述统计数值为翻转次数,或者,所述目标信号为时钟门控信号,且所述统计数值为使能周期数;将所述n路目标信号中的每路目标信号在单位时间内的统计数值发送给所述运算单元,所述n为正整数;
所述运算单元,用于按照下述公式计算所述待测目标在单位时间内的动态功耗p:
其中,ki表示所述n路目标信号中的第i路目标信号在单位时间内的统计数值,ai表示所述第i路目标信号对应的权重系数,ε为误差项,1≤i≤n且i为整数。
2.根据权利要求1所述的装置,其特征在于,所述装置还包括:存储单元;
所述存储单元,用于存储所述n路目标信号中的每路目标信号各自对应的权重系数。
3.根据权利要求1或2任一项所述的装置,其特征在于,所述计数单元包括:n个计数器;
所述n个计数器中的每一个计数器,用于对一路目标信号在单位时间内的统计数值进行计数。
4.根据权利要求1或2任一项所述的装置,其特征在于,所述待测目标中存在多级时钟门控;
所述目标信号为经过第一级时钟门控后的时钟信号,或者,所述目标信号为第一级时钟门控信号。
5.根据权利要求3所述的装置,其特征在于,所述待测目标中存在多级时钟门控;
所述目标信号为经过第一级时钟门控后的时钟信号,或者,所述目标信号为第一级时钟门控信号。
6.一种电子设备,其特征在于,所述电子设备包括如权利要求1至5任一项所述的动态功耗估计装置。
7.一种动态功耗估计方法,其特征在于,所述方法包括:
记录待测目标的n路目标信号中的每路目标信号在单位时间内的统计数值,其中,所述待测目标是一个芯片、一个由两个或者两个以上的芯片组成的芯片系统或者一个芯片中的部分电路模块,所述n路目标信号是待测目标中经过选择的部分信号,所述目标信号为经过时钟门控后的时钟信号,且所述统计数值为翻转次数,或者,所述目标信号为时钟门控信号,且所述统计数值为使能周期数,所述n为正整数;
按照下述公式计算所述待测目标在单位时间内的动态功耗p:
其中,ki表示所述n路目标信号中的第i路目标信号在单位时间内的统计数值,ai表示所述第i路目标信号对应的权重系数,ε为误差项,1≤i≤n且i为整数。
8.根据权利要求7所述的方法,其特征在于,所述公式采用下述方法得到:
获取j个测试功耗片段,所述j个 测试功耗片段中的每个测试功耗片段包括:所述待测目标的n路目标信号中的每路目标信号在单位时间内的统计数值Kj,以及所述待测目标在单位时间内的动态功耗pj,所述j为正整数;
采用线性回归对所述j个测试功耗片段中的所述Kj和所述pj进行拟合;
根据拟合结果确定所述公式。
9.根据权利要求8所述的方法,其特征在于,所述获取j个测试功耗片段,包括:
构建电子设计自动化EDA仿真环境,所述EDA仿真环境中包括:所述待测目标的寄存器转换级电路RTL和智能温度调度ITS模块的RTL,其中,所述待测目标的RTL用于仿真所述待测目标中除所述ITS模块以外的其它功能,所述ITS模块的RTL用于仿真所述ITS模块的功能,所述ITS模块用于实现动态功耗估计;
在所述EDA仿真环境中执行j个测试用例,得到所述j个测试功耗片段。
10.根据权利要求7至9任一项所述的方法,其特征在于,所述记录待测目标的n路目标信号中的每路目标信号在单位时间内的统计数值,包括:
将所述n路目标信号分别输入至n个计数器,所述n路目标信号和所述n个计数器一一对应;
通过所述n个计数器对所述n路目标信号中的每路目标信号在单位时间内的统计数值进行计数。
11.根据权利要求7至9任一项所述的方法,其特征在于,所述待测目标中存在多级时钟门控;
所述目标信号为经过第一级时钟门控后的时钟信号,或者,所述目标信号为第一级时钟门控信号。
12.根据权利要求10所述的方法,其特征在于,所述待测目标中存在多级时钟门控;
所述目标信号为经过第一级时钟门控后的时钟信号,或者,所述目标信号为第一级时钟门控信号。
13.一种动态功耗估计系统,其特征在于,所述系统包括处理器和存储器,所述存储器用于存储指令,所述处理器用于基于所述指令执行下列步骤:
记录待测目标的n路目标信号中的每路目标信号在单位时间内的统计数值,其中,所述待测目标是一个芯片、一个由两个或者两个以上的芯片组成的芯片系统或者一个芯片中的部分电路模块,所述n路目标信号是待测目标中经过选择的部分信号,所述目标信号为经过时钟门控后的时钟信号,且所述统计数值为翻转次数,或者,所述目标信号为时钟门控信号,且所述统计数值为使能周期数,所述n为正整数;
按照下述公式计算所述待测目标在单位时间内的动态功耗p:
其中,ki表示所述n路目标信号中的第i路目标信号在单位时间内的统计数值,ai表示所述第i路目标信号对应的权重系数,ε为误差项,1≤i≤n且i为整数。
14.一种计算机可读存储介质,其特征在于,所述计算机存储介质中存储有至少一条程序指令或代码,所述程序指令或代码由处理器加载并执行时以使计算机实现如权利要求7-12中任一所述的动态功耗估计方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810191683.1A CN110245366B (zh) | 2018-03-08 | 2018-03-08 | 动态功耗估计方法、装置及系统 |
PCT/CN2019/077091 WO2019170094A1 (zh) | 2018-03-08 | 2019-03-06 | 动态功耗估计方法、装置及系统 |
EP19763771.3A EP3751443A4 (en) | 2018-03-08 | 2019-03-06 | METHOD, DEVICE, AND SYSTEM FOR ESTIMATING DYNAMIC ENERGY CONSUMPTION |
US17/014,371 US12099392B2 (en) | 2018-03-08 | 2020-09-08 | Dynamic power consumption estimation method, apparatus, and system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810191683.1A CN110245366B (zh) | 2018-03-08 | 2018-03-08 | 动态功耗估计方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110245366A CN110245366A (zh) | 2019-09-17 |
CN110245366B true CN110245366B (zh) | 2022-01-14 |
Family
ID=67846923
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810191683.1A Active CN110245366B (zh) | 2018-03-08 | 2018-03-08 | 动态功耗估计方法、装置及系统 |
Country Status (4)
Country | Link |
---|---|
US (1) | US12099392B2 (zh) |
EP (1) | EP3751443A4 (zh) |
CN (1) | CN110245366B (zh) |
WO (1) | WO2019170094A1 (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111694714B (zh) * | 2020-06-15 | 2023-06-06 | 中国人民解放军国防科技大学 | 一种众核芯片功耗估算方法、装置、设备及可读存储介质 |
CN111737935B (zh) * | 2020-06-30 | 2023-09-29 | 中国电子产品可靠性与环境试验研究所((工业和信息化部电子第五研究所)(中国赛宝实验室)) | 功率器件失效率评估方法、计算机设备以及存储介质 |
CN112149367A (zh) * | 2020-08-11 | 2020-12-29 | 上海华虹集成电路有限责任公司 | 一种mcu芯片功耗评估的方法 |
CN112416709B (zh) * | 2020-11-19 | 2023-03-21 | 海光信息技术股份有限公司 | 芯片动态功耗估计方法、装置、处理器芯片及服务器 |
CN112559282A (zh) * | 2020-12-08 | 2021-03-26 | 海光信息技术股份有限公司 | 功耗监测系统、相关方法、装置、处理器及介质 |
CN112631849B (zh) * | 2020-12-17 | 2023-05-12 | 海光信息技术股份有限公司 | 功耗检测模型构建方法、功耗检测方法、装置及电子设备 |
CN112257358B (zh) * | 2020-12-22 | 2021-03-05 | 上海国微思尔芯技术股份有限公司 | 一种动态功耗精确分析方法及装置 |
WO2022226936A1 (zh) * | 2021-04-29 | 2022-11-03 | 华为技术有限公司 | 一种限制功耗的方法和装置 |
CN113238648B (zh) * | 2021-05-11 | 2023-05-09 | 成都海光集成电路设计有限公司 | 一种功耗调整方法及其装置 |
CN113177369B (zh) * | 2021-06-15 | 2024-03-01 | 中冶赛迪技术研究中心有限公司 | 一种能源调度评估方法及系统 |
CN114327025A (zh) * | 2021-11-16 | 2022-04-12 | 北京紫光展锐通信技术有限公司 | Cpu能效模型优化方法及装置 |
CN114578950B (zh) * | 2022-03-07 | 2023-11-07 | 成都九华圆通科技发展有限公司 | 一种基于微型电磁感知设备的低功耗管理控制系统及方法 |
CN116502596B (zh) * | 2023-06-28 | 2023-10-31 | 杭州行芯科技有限公司 | 芯片功耗评估方法、功耗模型的生成方法和计算机设备 |
CN116842903B (zh) * | 2023-09-04 | 2023-11-21 | 深圳鲲云信息科技有限公司 | 优化芯片动态功耗的方法及芯片、电子设备和计算设备 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7085942B2 (en) * | 2003-05-21 | 2006-08-01 | Agilent Technologies, Inc. | Method and apparatus for defining an input state vector that achieves low power consumption in a digital circuit in an idle state |
US7096374B2 (en) * | 2003-05-21 | 2006-08-22 | Agilent Technologies, Inc. | Method and apparatus for defining an input state vector that achieves low power consumption in digital circuit in an idle state |
US7222039B2 (en) * | 2005-06-10 | 2007-05-22 | Azuro (Uk) Limited | Estimation of average-case activity for digital state machines |
US7930673B2 (en) * | 2007-05-29 | 2011-04-19 | Magma Design Automation, Inc. | Method for automatic clock gating to save power |
US8108194B2 (en) * | 2008-04-25 | 2012-01-31 | Cadence Design Systems, Inc. | Peak power detection in digital designs using emulation systems |
CN101493717B (zh) * | 2009-02-19 | 2011-04-13 | 浪潮电子信息产业股份有限公司 | 一种用于soc的动态多时钟低功耗ahb总线的设计方法 |
CN101881812A (zh) * | 2010-07-05 | 2010-11-10 | 中国人民解放军63908部队 | 一种混合模式的内建自测试系统及其方法 |
CN102439535A (zh) * | 2011-10-25 | 2012-05-02 | 深圳市海思半导体有限公司 | 降低动态功耗的方法和电子设备 |
CN102866291B (zh) * | 2012-08-27 | 2014-11-05 | 中国科学院微电子研究所 | 基于硬件平台的门级功耗分析装置及方法 |
CN102866912A (zh) * | 2012-10-16 | 2013-01-09 | 首都师范大学 | 一种单指令集异构多核系统静态任务调度方法 |
CN104237791A (zh) * | 2013-06-20 | 2014-12-24 | 电子科技大学 | 一种锂电池荷电状态估算方法及电池管理系统和电池系统 |
JP2017102790A (ja) * | 2015-12-03 | 2017-06-08 | 富士通株式会社 | 情報処理装置、演算処理装置および情報処理装置の制御方法 |
-
2018
- 2018-03-08 CN CN201810191683.1A patent/CN110245366B/zh active Active
-
2019
- 2019-03-06 EP EP19763771.3A patent/EP3751443A4/en active Pending
- 2019-03-06 WO PCT/CN2019/077091 patent/WO2019170094A1/zh unknown
-
2020
- 2020-09-08 US US17/014,371 patent/US12099392B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US12099392B2 (en) | 2024-09-24 |
EP3751443A1 (en) | 2020-12-16 |
EP3751443A4 (en) | 2021-07-14 |
WO2019170094A1 (zh) | 2019-09-12 |
US20200401201A1 (en) | 2020-12-24 |
CN110245366A (zh) | 2019-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110245366B (zh) | 动态功耗估计方法、装置及系统 | |
US8095354B2 (en) | Power consumption peak estimation program for LSI and device therefor | |
US7725744B2 (en) | Method and apparatus to generate circuit energy models with multiple clock gating inputs | |
US7900172B2 (en) | Method and apparatus for analyzing power consumption | |
Barrois et al. | The hidden cost of functional approximation against careful data sizing—A case study | |
US10409936B2 (en) | Method and apparatus for modelling power consumption of integrated circuit | |
US11755797B2 (en) | System and method for predicting performance, power and area behavior of soft IP components in integrated circuit design | |
Gupta et al. | Adaptive performance prediction for integrated GPUs | |
US7260809B2 (en) | Power estimation employing cycle-accurate functional descriptions | |
JP4651620B2 (ja) | 電力算出装置、電力算出方法、耐タンパ性評価装置及び耐タンパ性評価方法 | |
US20140325461A1 (en) | Method and apparatus for generating gate-level activity data for use in clock gating efficiency analysis | |
CN107769987B (zh) | 一种报文转发性能评估方法和装置 | |
Tempelmeier et al. | Experimental power and performance evaluation of CAESAR hardware finalists | |
US20120253775A1 (en) | Multidimensional Monte-Carlo Simulation for Yield Prediction | |
US11831159B2 (en) | Systems, devices and methods for power management and power estimation | |
CN114595063A (zh) | 确定数据的访问频繁程度的方法及装置 | |
Maragos et al. | Application performance improvement by exploiting process variability on FPGA devices | |
CN115144739A (zh) | 芯片功耗获取方法、电路、装置及设备 | |
Darwish et al. | Transaction level power modeling (TLPM) methodology | |
Bachmann et al. | Efficient algorithms for multilevel power estimation of VLSI circuits | |
JP2011238137A (ja) | 性能推定装置 | |
KR102605288B1 (ko) | 집적 회로에 대한 소비 전력을 예측하기 위한 시뮬레이션 방법 및 이를 수행하는 집적 회로 시뮬레이션 시스템 | |
Tuzov et al. | Robustness-aware design space exploration through iterative refinement of d-optimal designs | |
Abdel-Haleem et al. | TLM virtual platform for fast and accurate power estimation | |
US20230063107A1 (en) | State dependent and path dependent power estimation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |