微处理器的功率估算器的利记博彩app

文档序号:6411782阅读:208来源:国知局
专利名称:微处理器的功率估算器的利记博彩app
技术领域
本发明涉及由命令汇编描述对包含多个存储器的微处理器的命令级的消耗电力进行评估的微处理器的功率估算器。
近年来,由于计算机技术和半导体集成电路的飞速发展,电子设备、特别是个人计算机的小型化和便携化正在不断进展。在这种趋势中,在提高微处理器的处理速度的同时、低消耗电力化成为重要的课题。在达到低消耗电力化当中,有必要在设计微处理器时正确地评估消耗电力。
如例如文献“Vivek Tiwari,Sharad malik,Aadrew Wolfe“Power Analysis ofEmbedded SoftwareA First Step towards Software Power Minimization”.,IN IEEE-94,PP.384-390(1994)”中所述的那样,至今所知的是包含软件的微处理器的消耗电力评估方法。
这种评估方法,实际上是着眼于在微处理器中执行命令时被执行的命令的种类、对消耗电力进行估计的方法。也就是说,对在微处理器中被执行的每个不同的命令、预先求出消耗电力,以在微处理器中被执行的程序汇编描述级、将每个预定命令求出的消耗电力适用于各个命令、估计在微处理器中执行程序时的总消耗电力。
如前所述,在以往的微处理器的消耗电力评估方法中,已知有考虑软件进行估计的方法。但是,在这种方法中,不考虑涉及微处理器的高速缓冲存储器。也就是说,在消耗电力的评估方法中,不区别包含由提高处理速度观点出发而被多级化的多个高速缓冲存储器的微处理器和不包含这种结构的微处理器。
一般地由于存取速度和所说存储容量的结构上的不同,高速缓冲存储器在存取命令时的消耗电力不同。为此,按命令从哪一个高速缓冲存储器读入、多个高速缓冲存储器中消耗电力不同。但是,在以往的方法中,因使用对所有的高速缓冲存储器不加区别的相同的消耗电力,所以招致难于正确地评价微处理器的命令级的消耗电力的不合适。
因此,本发明鉴于前述问题、其目的在于,提供改善包含多个存储器的微处理器的命令级消耗电力的评价精度的微处理器的功率估算器。
为达到前述目的,权利要求1所述的发明的结构是在从被执行的命令的汇编描述、求出包括CPU(运算单元)和存储读入所述CPU中并被执行的命令的多个存储器的微处理器中命令执行时的消耗电力的微处理器的功率估算器中,包括对所述各个存储器、求出在所述CPU中被执行的命令是从所述多个存储器读入的场合的消耗电力值的手段;判断在所述CPU中被执行的命令是从所述多个存储器中哪一个存储器读入的手段;和使对于所述各个存储器求出的消耗电力值对应于存储读入命令的存储器的判断结果、求出微处理器的消耗电力的手段。
权利要求2所述的发明的结构是在权利要求1所述的微处理器的功率估算器中,还包括在所述CPU中被执行的命令从第1高速缓冲存储器读入所述CPU中的同时,在能用比所述第1高速缓冲存储器更高速且容量少的存储m条命令的第2高速缓冲存储器中、包含从第1高速缓冲存储器读入所述CPU中的命令、顺次接续地存储最多m条命令、并从所述第2高速缓冲存储器将命令读入所述CPU中、直到存储于所述第2高速缓冲存储器中的命令全部被执行为止、重复执行命令的动作的场合中,求出从所述第1高速缓冲存储器读入在所述CPU中被执行的命令的场合的第1消耗电力值;求出从所述第2高速缓冲存储器读入在所述CPU中被执行的命令的场合的第2消耗电力值;在开始命令的读入后、在m条命令的每条命令的执行中使用所述第1消耗电力值、在其它命令的执行中使用所述第2消耗电力值,求出微处理器的消耗电力。
权利要求3所述的发明结构是在权利要求2所述的微处理器的功率估算器中,还包括在执行变换分支命令、转移命令、例外处理命令等一系列的命令执行顺序的命令的场合中,在开始所述命令的执行后、在m条命令的每条命令的执行中使用所述第1消耗电力值、在其它命令的执行中使用所述第2消耗电力值,求出微处理器的消耗电力。
权利要求4所述的发明的结构是在权利要求2所述的微处理器的功率估算器中,还包括在开始变换分支命令、转移命令、例外处理命令等一系列的命令执行顺序的命令的执行后,在所述命令的下一个命令以后接续地0或者m条未完的命令的执行中使用所述第2消耗电力值、在然后接续地m条命令的每条命令的执行中使用所述第1消耗电力值、在其它命令的执行中使用所述第2消耗电力值,求出微处理器的消耗电力。
权利要求5所述的发明的结构是在如权利要求2所述的微处理器的功率估算器中,还包括在开始执行变换分支命令、转移命令、例外处理命令等一系列的命令执行顺序的命令、并接着所述命令、变换1次或者多次执行被描述的命令的后续命令顺序的场合中,在接着所述命令、多次执行被描述的命令并在m条命令的每条命令的执行中使用所述第1消耗电力值、在其它命令的执行中使用所述第2消耗电力值,求出微处理器的消耗电力。
权利要求6所述的发明的结构是在权利要求2所述的微处理器的功率估算器中,还包括在开始执行变换分支命令、转移命令、例外处理命令等一系列的命令执行顺序的命令、并接着所述命令、变换多次执行被描述的命令的后续命令顺序的场合中,在接着所述命令、1次或者多次执行被描述的命令并在下一个命令以后接续地0或者m条未完的命令执行中使用所述第2消耗电力值、在然后接续地m条命令的每条命令的执行中使用所述第1消耗电力值、在其它命令的执行中使用所述第2消耗电力值,求出微处理器的消耗电力。
权利要求7所述的发明的结构是在权利要求1所述的微处理器功率估算器中,还包括基于变换在所述CPU中被执行的命令数、分支命令、转移命令。例外处理命令等一系列的命令执行顺序的命令数和所述存储器的容量、对于各存储器求出从所述存储器读入的命令的次数;对于所述各存储器、求出对所述存储器求出的次数与对应于所述存储器求出的消耗电力值和乘积;对于所述各存储器求出求得的次数与消耗电力乘积的和并求出微处理器的消耗电力。
权利要求8所述的发明的结构是在权利要求1所述的微处理器的功率估算器中,还包括基于变换在所述CPU中被执行的命令数、分支命令、转移命令、例外处理命令等一系列的命令执行顺序的命令发生的概率和所述存储器的容量、对于所述各存储器、求出从所述存储器读入的命令的次数;对于所述各存储器、求出对所述存储器求出的次数与对应于所述存储器求出的消耗电力值的乘积;对于所述各存储器求出求得的次数与消耗电力乘积的和并求出微处理器的消耗电力。


图1表示在与权利要求1所述发明的实施例相关的功率估算器中被评价的微处理器的结构图。
图2表示在与权利要求2所述发明的实施例相关的功率估算器中被评价的微处理器的结构图。
图3表示图2所示的微处理器的命令读出的流程图。
图4表示被执行的命令的一例的图。
图5表示在图2所述结构中被执行命令的第1循环的命令读入流程图。
图6表示在图2所示结构中被执行命令的第1循环结束时的高速缓冲存储器的命令存储状态图。
图7表示在图2所示结构中被执行命令的第2循环的命令读入流程图。
图8表示每条执行命令的命令读入地址的图。
图9表示转移命令后的每条执行命令的命令读入地址的图。
图10表示区分微处理器的存储单元和CPU单元的图。
图11表示基于以往方法的基本消耗电力值的一例的图。
图12表示用图11所示的基本消耗电力值求出图8中消耗电力的一例的图。
图13表示在与权利要求7所述发明的实施例相关的基本消耗电力值的一例的图。
图14表示用图13所示的基本消耗电力值求出图8中消耗电力的一例的图。
图15表示被执行的命令列的一例的图。
图16表示在高速缓冲存储器中存储命令的状态的图。
图17表示与权利要求3所述发明的实施例相关的命令执行顺序图。
图18表示与权利要求4所述发明的实施例相关的命令执行顺序图。
图19表示与权利要求5所述发明的实施例相关的命令执行顺序图。
图20表示与权利要求6所述发明的实施例相关的命令执行顺序图。
下面,参照附图对本发明的实施例进行说明。
图1表示在与权利要求1所述发明的实施例相关的微处理器的功率估算器评价消耗电力的微处理器的一结构图。
如权利要求1所述发明的微处理器的功率估算器,是一种从被执行的命令的汇编描述、求出包括CPU(运算单元)和存储读入CPU中并被执行的命令的多个存储器的微处理器中命令执行时的消耗电力的装置,它具有对各个存储器、求出在CPU中被执行的命令从多个存储器读入的场合的消耗电力值的手段;判断在CPU中被执行的命令是从多个存储器中哪一个存储器读入的手段;和使对于各个存储器求出的消耗电力值对应于存储读入命令的存储器的判断结果、求出微处理器的消耗电力的手段,实现了使用微计算机的评价用工具。
此外,包含于评价消耗电力的微处理器中的前述存储器是主存储、高速缓冲存储器、缓冲存储器、命令序列等的各种各样的存储器。
这里,在对图1所示的微处理器的消耗电力评价的作用进行说明时,为易于理解、对于图1所示的结构、图2所示,用两个高速缓冲存储器、高速缓冲存储器6和比高速缓冲存储器6速度高的缓冲器7、缓冲器7读入的命令数为4的结构的微处理器,进行说明。
这种实现状态的特征是在CPU5中被执行的命令从成为第1高速缓冲存储器的高速缓冲存储器6读入CPU5中的同时,在能用比高速缓冲存储器6更高速且容量少地存储4条命令的成为第2高速缓冲存储器的缓冲器7中、包含从高速缓冲存储器6读入CPU5中的命令、顺次接续地存储最多4条命令、并从缓冲器7将命令读入CPU5中、直到存储于缓冲器7中的命令全部被执行为止、重复执行命令的动作的场合中,求出从高速缓冲存储器6读入在CPU5中被执行的命令的场合的第1消耗电力值;求出从缓冲器7读入在CPU5中被执行的命令的场合的第2消耗电力值;在开始命令的读入后、在4条命令的每条命令的执行中使用第1消耗电力值、在其它命令的执行中使用第2消耗电力值,求出微处理器的消耗电力。
在图2所示结构的微处理器中,如图3所示、预先求出区别在CPU5中被执行的命令是从主存储器1读入(路线A)、还是从高速缓冲存储器6读入(路线B)、还是从缓冲器7读入(路线C)的消耗电力值,在实际执行命令时,判断是从哪条路线读入、借助于使用与其相应的消耗电力值数,估计消耗电力值。
接着,对与权利要求3所述的发明的一实施相关的功率估算器进行说明。
这种实施形态的功率估算器的特征是在前述实施形态的特征上增加在执行变换分支命令、转移命令、例外处理命令等一系列的命令执行顺序的命令的场合中,在开始命令的执行后、在4条命令的每条命令的执行中使用第1消耗电力值、在其它命令的执行中使用第2消耗电力值,求出微处理器的消耗电力。
作为对象的微处理器的动作,在执行例如图4所示的命令群时,如图5所示、在一次循环中将命令从主存储器1保存在高速缓冲存储器6中,与此同时在CPU5中执行命令。这时如图6所示,命令被存储在高速缓冲存储器6内。
接着,用转移命令再次执行相同的命令群时,执行命令不是从主存储器1、而是从高速缓冲存储器6读入。这时,为提高执行速度,如图7所示,向缓冲器7一次同时读入4个命令(路线B),然后将命令从缓冲器7读入CPU5,直到缓冲器7内没有命令为止(路线C)。
这时,在经过路线(B)的场合,因消耗大电力的高速缓冲存储器6动作,所以为大的消耗电力,在经过路线(C)的场合,因消耗较高速缓冲存储器6动作时小的电力,所以为小的消耗电力。为此,为了估计在所述高速缓冲存储器6中已经误入的命令执行时的消耗电力,预先求出从高速缓冲存储器6读入命令时的消耗电力值和从缓冲器7读入命令时的消耗电力值,如图8所示、如果从高速缓冲存储器6向缓冲器7一次读入的命令数是m(在本实施例中4是)条,则其特征为每隔m条命令使用从高速缓冲存储器6读入时的消耗电力值,对其以外的命令使用从缓冲器7读入时的消耗电力值。
另一方面,在前述命令的执行中,利用变换转移、分支、例外处理命令等一系列的命令的执行顺序的命令,不执行在缓冲器7中读入的全部命令,而有成为执行其它命令的场合。
例如,如果图9表示执行图4所示的命令群的图8所示的命令流的继续,则由于转移命令、执行不是在缓冲器7中读入命令的命令。与这种场合相对应,每隔m条命令、追加从高速缓冲存储器6读入时的消耗电力,在进行转移、分支、例外处理命令等的场合,接着被执行的命令的消耗电力值使用从高速缓冲存储器6读入时的值,然后每隔m条命令使用从高速缓冲存储器6读入时的值,对其以外的命令使用从缓冲器7读入时的值。
接着,对与权利要求4所述发明的实施形态相关的功率估算器进行说明。
这种实施形态的特征是在评价图2所示的微处理器的消耗电力的场合中,在开始变换分支命令、转移命令、例外处理命令等一系列的命令执行顺序的变换命令的执行后,在变换命令的下一个命令以后接续地0或者m条未完的命令的执行中使用从缓冲器7读入场合的消耗电力值(第2消耗电力值)、在然后接续地m条命令的每条命令的执行中使用从高速缓冲存储器6读入场合的消耗电力值(第1消耗电力值)、在其它命令的执行中使用前述第2消耗电力值,求出微处理器的消耗电力。
例如,如图16(各数字表示命令、jump3在命令3中表示转移命令)所示,在执行存储于高速缓冲存储器中的命令的场合中,按权利要求3所述的发明的一实施形态中如图17所示的执行顺序,与此相对,在本实施形态中的执行命令如图18所示、jump3(变换命令)执行后,从高速缓冲存储器6读入jump3命令的下一条命令(命令3),从缓冲器7读入所述命令(命令3)的下一条命令(命令4),然后从高速缓冲存储器6读入接着每4(=m)条命令。这是因为从图16所示的高速缓冲存储器6向缓冲器7每次进行的读入是高速缓冲存储器6的一行的缘故。
接着,对与权利要求5所述发明的实施形态相关的功率估算器进行说明。
这种实施形态的特征是在评价图2所示的微处理器的消耗电力、开始执行变换分支命令、转移命令、例外处理命令等一系列的命令执行顺序的命令、并接着变换命令、变换1次或者多次执行被描述的命令的后续命令顺序的场合中,在接着变换命令、多次执行被描述的命令并在m条命令的每条命令的执行中使用从高速缓冲存储器读入场合的消耗电力值(第1消耗电力值)、在其它命令的执行中使用从缓冲器7读入场合的消耗电力值(第2消耗电力值),求出微处理器的消耗电力。
例如,如图16所示、在执行存储于高速缓冲存储器的命令的场合中,如图19所示、从高速缓冲存储器6读入例如执行jump3命令后的一条命令(命令8)被执行后的每4(=m)条命令。
接着,对与权利要求6所述发明的实施形态相关的功率估算器进行说明。
这种实施形态的特征是同时实施权利要求4和权利要求5所述发明的一实施形态的双方,在执行图16所示命令的场合中,按图20所示的顺序执行命令。
接着,对与权利要求7所述发明的实施形态相关的功率估算器进行说明。
这种实施形态的功率估算器的特征是基于变换在CPU5中被执行的命令数、分支命令、转移命令。例外处理命令等一系列的命令执行顺序的命令数和存储器的容量、对于各存储器求出从存储器读入的命令的次数;对于各存储器、求出对存储器求出的次数与对应于存储器求出的消耗电力值和乘积;对于各存储器求出求得的次数与消耗电力乘积的和并求出微处理器的消耗电力。
如图10所示,在微处理器中能用CPU单元9和存储器单元8的消耗电力的和求出执行某个命令时的消耗电力。也就是说,(某个执行命令时的消耗电力)(X)=(CPU单元9的消耗电力)(Y)+(存储单元8的消耗电力)(Z)其中,消耗电力(Y)和消耗电力(Z)能独立求出。
例如,不区别存储器单元8和CPU单元9求出图8所示命令的一个一个的消耗电力值的场合,即在以往如图11所示,有必要求出基本消耗电力值。并且,用图11求出图8中消耗电力时,就成为图12所示。与此相对,当区别存储单元8和CPU单元9求出消耗电力值时,即在这种实施形态中,以只用图13所示的基本消耗电力值就可以。当用这种图13所示的基本消耗电力值求出图8中消耗电力时,就成为图14所示,可见图12和图14是等同的。
由此,在求出对象命令数是a个、使用存储器的种类是b个的CPU的消耗电力时,在以往有必要求出(a×b)个基本消耗电力值。但是在本实施形态中,求(a+b)个基本消耗电力值就行,能减少预先求出的消耗电力值模式数。
接着,对与权利要求8所述发明的实施形态相关的功率估算器进行说明。
这种实施形态的功率估算器的特征是基于变换在CPU1中被执行的命令数、分支命令、转移命令、例外处理命令等一系列的命令执行顺序的命令发生的概率和存储器的容量、对于各存储器、求出从存储器读入的命令的次数;对于各存储器、求出对存储器求出的次数与对应于存储器求出的消耗电力值的乘积;对于各存储器求出求得的次数与消耗电力乘积的和并求出微处理器的消耗电力。
这种实施形态是借助于设定从外部不规则发生的高速缓冲存储器6的读入数的发生概率,估计从存储器来的命令读入次数。
例如,在图2所示的微处理器中,在执行被描述的命令数是10个、总共执行命令数是23个的命令群时,首先,读入来自主存储器命令的次数被判断成9个来自总描述命令数,如果对于剩下的14个、分支等的发生概率设定为14.3%,则能假设在(100/14.3)=7次中、发生一次不规则的来自高速缓冲存储器6的读入。因为每4条命令进行规则的来自高速缓冲存储器6的读入,所以能估计在7条命令执行中、二次读入来自高速缓冲器6的命令。
因此,如图15所示,因总执行命令数是23个,所以一执行该命令群,就能估计进行2×2=4次的来自高速缓冲存储器6的命令读入,成为来自高速缓冲存储器6读入的命令11和来自缓冲器7读入的命令12。
如果对此在具有二级高速缓冲存储器的场合进行一般化,则在一次从高速缓冲存储器向缓冲器读入P处的微处理器中,当执行总描述命令数t个,总执行命令数q个的命令群时,如果分支等的发生概率设定为r%,则不规则的来自高速缓冲存储器的命令读入周期S为S=(100/r),在S个命令中进行([S/P]+1)次的来自高速缓冲存储器的命令读入。可见这种周期来自命令总数(q-t)有(q-t)/S次。
因此,由[(q-t)/s]×([s/p]+1)能够一般化。但是,这里用舍去小数点后的数字来表示中括号括住的除法运算的结果(成为[5/2]+[7/4]=2+1=3)。
在某个微处理器的例中,执行add命令时的消耗电力值、在从高速缓冲存储器6读入执行的场合为560mw、在从缓冲器7读入执行的场合为404mw的情况,有约40%的差异发生。借助于对其进行校正,能提高命令级消耗电力估计的精度。
如前所述,采用本发明,则因使用在每个命令读入的各存储器求出的消耗电力并能求出在CPU执行命令群时的消耗电力,所以能提高包含多个存储器的微处理器的消耗电力评价的精度。
权利要求
1.一种微处理器的功率估算器,从被执行的命令的汇编描述、求出包括CPU(运算单元)和存储读入所述CPU中并被执行的命令的多个存储器的微处理器中命令执行时的消耗电力,其特征在于,具有对所述各个存储器、求出在所述CPU中被执行的命令从所述多个存储器读入的场合的消耗电力值的手段;判断在所述CPU中被执行的命令是从所述多个存储器中哪一个存储器读入的手段;和使对于所述各个存储器求出的消耗电力值对应于存储读入命令的存储器的判断结果、求出微处理器的消耗电力的手段。
2.如权利要求1所述的微处理器的功率估算器,其特征在于,在所述CPU中被执行的命令从第1高速缓冲存储器读入所述CPU中的同时,在能用比所述第1高速缓冲存储器更高速且容量少的存储m条命令的第2高速缓冲存储器中、包含从第1高速缓冲存储器读入所述CPU中的命令、顺次接续地存储最多m条命令、并从所述第2高速缓冲存储器将命令读入所述CPU中、直到存储于所述第2高速缓冲存储器中的命令全部被执行为止、重复执行命令的动作的场合中,求出从所述第1高速缓冲存储器读入在所述CPU中被执行的命令的场合的第1消耗电力值;求出从所述第2高速缓冲存储器读入在所述CPU中被执行的命令的场合的第2消耗电力值;在开始命令的读入后、在m条命令的每条命令的执行中使用所述第1消耗电力值、在其它命令的执行中使用所述第2消耗电力值,求出微处理器的消耗电力。
3.如权利要求2所述的微处理器的功率估算器,其特征还在于,在执行变换分支命令、转移命令、例外处理命令等一系列的命令执行顺序的命令的场合中,在开始所述命令的执行后、在m条命令的每条命令的执行中使用所述第1消耗电力值、在其它命令的执行中使用所述第2消耗电力值,求出微处理器的消耗电力。
4.如权利要求2所述的微处理器的功率估算器,其特征还在于,在开始变换分支命令、转移命令、例外处理命令等一系列的命令执行顺序的命令的执行后,在所述命令的下一个命令以后接续地0或者m条未完的命令的执行中使用所述第2消耗电力值、在然后接续地m条命令的每条命令的执行中使用所述第1消耗电力值、在其它命令的执行中使用所述第2消耗电力值,求出微处理器的消耗电力。
5.如权利要求2所述的微处理器的功率估算器,其特征还在于,在开始执行变换分支命令、转移命令、例外处理命令等一系列的命令执行顺序的命令、并接着所述命令、变换1次或者多次执行被描述的命令的后续命令顺序的场合中,在接着所述命令、多次执行被描述的命令并在m条命令的每条命令的执行中使用所述第1消耗电力值、在其它命令的执行中使用所述第2消耗电力值,求出微处理器的消耗电力。
6.如权利要求2所述的微处理器的功率估算器,其特征还在于,在开始执行变换分支命令、转移命令、例外处理命令等一系列的命令执行顺序的命令、并接着所述命令、变换多次执行被描述的命令的后续命令顺序的场合中,在接着所述命令、1次或者多次执行被描述的命令并在下一个命令以后接续地0或者m条未完的命令执行中使用所述第2消耗电力值、在然后接续地m条命令的每条命令的执行中使用所述第1消耗电力值、在其它命令的执行中使用所述第2消耗电力值,求出微处理器的消耗电力。
7.如权利要求1所述的微处理器功率估算器,其特征还在于,基于变换在所述CPU中被执行的命令数、分支命令、转移命令。例外处理命令等一系列的命令执行顺序的命令数和所述存储器的容量、对于各存储器求出从所述存储器读入的命令的次数;对于所述各存储器、求出对所述存储器求出的次数与对应于所述存储器求出的消耗电力值和乘积;对于所述各存储器求出求得的次数与消耗电力乘积的和并求出微处理器的消耗电力。
8.如权利要求1所述的微处理器的功率估算器,其特征还在于,基于变换在所述CPU中被执行的命令数、分支命令、转移命令、例外处理命令等一系列的命令执行顺序的命令发生的概率和所述存储器的容量、对于所述各存储器、求出从所述存储器读入的命令的次数;对于所述各存储器、求出对所述存储器求出的次数与对应于所述存储器求出的消耗电力值的乘积;对于所述各存储器求出求得的次数与消耗电力乘积的和并求出微处理器的消耗电力。
全文摘要
本发明揭示一种微处理器的功率估算器,从命令的汇编描述、求出包括多个高速缓冲存储器(2)、(3)、(4)的微处理器的消耗电力,其特征在于,求出在CPU(5)中被执行的命令从主存储器(1)读入的场合的消耗电力值和从高速缓冲存储器(2)、(3)、(4)读入的场合的消耗电力值,判断是从主存储器(1)或高速缓冲存储器的哪一个读入命令,使对于各个存储器求出的消耗电力值对应于判断结果、求出消耗电力。
文档编号G06F1/28GK1162148SQ97102630
公开日1997年10月15日 申请日期1997年2月12日 优先权日1996年2月8日
发明者影岛淳, 宇佐美公良 申请人:东芝株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1