JP2013012003A - Data processing device and data processing system - Google Patents

Data processing device and data processing system Download PDF

Info

Publication number
JP2013012003A
JP2013012003A JP2011143703A JP2011143703A JP2013012003A JP 2013012003 A JP2013012003 A JP 2013012003A JP 2011143703 A JP2011143703 A JP 2011143703A JP 2011143703 A JP2011143703 A JP 2011143703A JP 2013012003 A JP2013012003 A JP 2013012003A
Authority
JP
Japan
Prior art keywords
data processing
power
power amount
assumed
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.)
Withdrawn
Application number
JP2011143703A
Other languages
Japanese (ja)
Inventor
Akira Haruzono
映 春園
Seitaro Kikuchi
征太郎 菊地
Tetsuya Suzuki
哲也 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2011143703A priority Critical patent/JP2013012003A/en
Publication of JP2013012003A publication Critical patent/JP2013012003A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Power Sources (AREA)

Abstract

PROBLEM TO BE SOLVED: To further reduce power consumption of a data processing device that performs DVFS control.SOLUTION: A data processing device (1) calculates: actual power amounts (Pr_0-Pr_3) consumed during a predetermined period in a data processing control unit (10) that performs data processing in synchronization with a clock signal (CLK); and assumed power amounts (Pf1_0-Pf1_3, Pf2_0-Pf2_3, Pf3_0-Pf3_3) when assuming operations during the predetermined period by the data processing control unit at assumed frequencies (f1-f3). The data processing device (1) selectively controls the frequency of the clock signal corresponding to a load state relating to the data processing, in consideration of the frequency that achieves lower power consumption among the calculated actual power amounts and assumed power amounts.

Description

本発明は、データ処理装置及びデータ処理システムの消費電力を低減させるための技術に関し、特にクロック信号の周波数や電源電圧を動的に制御する機能を備えるデータ処理装置に適用して有効な技術に関する。   The present invention relates to a technique for reducing power consumption of a data processing apparatus and a data processing system, and more particularly to a technique effective when applied to a data processing apparatus having a function of dynamically controlling the frequency and power supply voltage of a clock signal. .

近年、マイクロプロセッサによるプログラム処理によって制御される組み込み機器の高性能化が進んでいる。これに伴い、マイクロプロセッサの消費電力が増加する傾向にある。このような状況において、マイクロプロセッサの消費電力を低減するための技術の1つである、DVFS(Dynamic Voltage and Frequency Scaling)制御を適用したマイクロプロセッサが増加しつつある。DVFS制御は、CPU等のプロセッサコアの負荷状態に基づいて、プロセッサコアに供給されるクロック信号の周波数と電源電圧とを動的に制御するパワーマネジメント技術である。   In recent years, the performance of embedded devices controlled by program processing by a microprocessor has been increasing. Accordingly, the power consumption of the microprocessor tends to increase. Under such circumstances, an increasing number of microprocessors apply DVFS (Dynamic Voltage and Frequency Scaling) control, which is one of the techniques for reducing the power consumption of the microprocessors. DVFS control is a power management technique that dynamically controls the frequency and power supply voltage of a clock signal supplied to a processor core based on the load state of the processor core such as a CPU.

従来のDVFS制御技術として特許文献1乃至4に、CPUで実行されるタスクやプロセス毎にCPUの負荷を算出して動作周波数と動作電圧を制御する方法が開示されている。また、上記DVFS制御とは異なるが、特許文献5には、CPUリソースが割り当てられて仮想的に生成される仮想サーバを有する物理サーバにおいて、前記仮想サーバの負荷の合計量と前記物理サーバ内のCPUリソースの総量とに基づいてCPUの駆動周波数を制御する技術が開示されている。   As conventional DVFS control techniques, Patent Documents 1 to 4 disclose a method of calculating the CPU load for each task or process executed by the CPU and controlling the operating frequency and operating voltage. Further, although different from the above DVFS control, in Patent Document 5, in a physical server having a virtual server that is virtually generated by allocating CPU resources, the total load of the virtual server and the physical server A technique for controlling the CPU drive frequency based on the total amount of CPU resources is disclosed.

特開2008−107944号公報JP 2008-107944 A 特開2008−59556号公報JP 2008-59556 A 特開2004−152068号公報JP 2004-152068 A 特表2001−517332号公報JP 2001-517332 A 特開2009−175788号公報JP 2009-175788 A

特許文献1乃至5に示されるように、DVFS制御ではCPU等の負荷に基づいて動作周波数や動作電圧を設定するが、その設定によるCPU等の電力状態までは監視しない。そのため、DVFS制御によりCPU等の負荷状態に基づいて動作周波数や動作電圧を設定したとしても、必ずしも電力的に最適な設定(例えば消費電力が最小となる設定)にならない可能性があると、本願発明者は考えた。具体的には、CPUに対するクロック信号の供給を停止するスリープモードや、クロック信号のみならず電源の供給も停止するスタンバイモード等の動作モードを備えるマイクロプロセッサでは、CPUの負荷状態に基づいて動作周波数や動作電圧を設定するだけでは、必ずしも電力的に最適な状態にならない場合がある。例えば、マイクロプロセッサが、1つのデータ処理を完了してから次のデータ処理を開始するまでの待機時間が長いときはスタンバイモードに移行し、短いときはスリープモードに移行する制御を行うものとし、スリープモードよりもスタンバイモードの方がCPUの消費電力が小さいものと仮定した場合を考える。このようなマイクロプロセッサにおけるDVFS制御では、例えばCPUが動作周波数を下げてデータ処理を実行する低速設定と、動作周波数を上げてデータ処理を実行する高速設定の2つの設定状態が考えられる。前記低速設定の場合、データ処理を実行している間は動作周波数を上げて処理する場合に比べて消費電力は小さくなるが、動作周波数を下げている分データ処理に要する時間が長くなる。これにより、1つのデータ処理が完了してから次のデータ処理を開始するまでの待機時間が短くなるため、その後はスタンバイモードに移行できずにスリープモードに移行する可能性があり、その場合スタンバイモードに比べて待機時の消費電力が大きくなる。一方、前記高速設定の場合、データ処理を実行している間は動作周波数を下げて処理する場合に比べて消費電力は大きくなるが、動作周波数が高い分データ処理に要する時間が短くなる。これにより、データ処理が完了してから次のデータ処理を開始するまでの待機時間が長くなるため、スリープモードではなくスタンバイモードに移行できる可能性があり、その場合、より低消費電力となる可能性がある。   As shown in Patent Documents 1 to 5, in the DVFS control, the operating frequency and the operating voltage are set based on the load of the CPU or the like, but the power state of the CPU or the like according to the setting is not monitored. Therefore, even if the operating frequency and the operating voltage are set based on the load state of the CPU or the like by DVFS control, there is a possibility that the setting is not necessarily optimal in terms of power (for example, setting that minimizes power consumption). The inventor thought. Specifically, in a microprocessor having an operation mode such as a sleep mode in which supply of a clock signal to the CPU is stopped or a standby mode in which not only a clock signal but also power supply is stopped, an operation frequency based on a load state of the CPU If only the operating voltage is set, it may not always be in an optimal state in terms of power. For example, when the waiting time from the completion of one data processing to the start of the next data processing is long, the microprocessor shifts to the standby mode, and when it is short, the microprocessor shifts to the sleep mode. Consider a case where the standby mode assumes that the CPU consumes less power than the sleep mode. In DVFS control in such a microprocessor, for example, two setting states are conceivable: a low-speed setting in which the CPU lowers the operating frequency to execute data processing, and a high-speed setting in which the operating frequency is increased to execute data processing. In the case of the low-speed setting, the power consumption is smaller during the data processing than when the operation frequency is increased, but the time required for the data processing becomes longer as the operation frequency is decreased. As a result, the waiting time from the completion of one data processing to the start of the next data processing is shortened, and thereafter there is a possibility that the standby mode cannot be entered and the sleep mode may be entered. Power consumption during standby is greater than in mode. On the other hand, in the case of the high-speed setting, the power consumption is larger than when the operation frequency is lowered during the data processing, but the time required for the data processing is shortened due to the higher operation frequency. This increases the waiting time from the completion of data processing to the start of the next data processing, so it may be possible to shift to standby mode instead of sleep mode, in which case lower power consumption may occur. There is sex.

このように、データ処理時の消費電力だけでなく、データ処理後の待機時間まで含めた期間の消費電力を考慮すると、動作周波数を上げてデータ処理を行った方が動作周波数を下げてデータ処理を実行するよりも、前記期間では低消費電力になる可能性がある。したがって、待機時間の長さに応じてスリープモードとスタンバイモードが選択制御され、且つDVFS制御が行われるマイクロプロセッサでは、CPUの負荷状態だけを判断基準として動作周波数を調整しても、データ処理時間や待機時間の長さによっては必ずしも電力的に最適な状態にならない場合があると、本願発明者は考えた。   In this way, considering not only the power consumption during data processing but also the power consumption during the period including the standby time after data processing, data processing with a lower operating frequency is performed when data processing is performed with a higher operating frequency. There is a possibility that the power consumption may be lower during the period than when executing. Therefore, in the microprocessor in which the sleep mode and the standby mode are selected and controlled according to the length of the standby time and the DVFS control is performed, the data processing time can be adjusted even if the operating frequency is adjusted based only on the CPU load state. The inventor of the present application considered that the optimum state in terms of power may not be obtained depending on the length of the standby time.

本発明の目的は、DVFS制御を行うデータ処理装置において、更なる低消費電力化を図ることにある。   An object of the present invention is to further reduce power consumption in a data processing apparatus that performs DVFS control.

本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。   The above and other objects and novel features of the present invention will be apparent from the description of this specification and the accompanying drawings.

本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。   The following is a brief description of an outline of typical inventions disclosed in the present application.

すなわち、本データ処理装置は、クロック信号に同期してデータ処理を実行するデータ処理制御部において所定期間で消費される実電力量と、仮定した周波数での前記データ処理制御部による前記所定期間における動作を想定したときの想定電力量とを演算し、前記実電力量と前記想定電力量のうち低消費電力となる周波数を考慮して、前記データ処理に係る負荷の状態に対応する前記クロック信号の周波数を選択制御する。   That is, the present data processing apparatus is configured such that the actual amount of power consumed in a predetermined period in the data processing control unit that executes data processing in synchronization with the clock signal and the predetermined period by the data processing control unit at the assumed frequency. The clock signal corresponding to the state of the load related to the data processing is calculated by calculating an assumed power amount when an operation is assumed, and taking into account the actual power amount and the frequency that results in low power consumption among the assumed power amount Select and control the frequency.

本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記のとおりである。   The effects obtained by the representative ones of the inventions disclosed in the present application will be briefly described as follows.

すなわち、本データ処理装置によれば、更なる低消費電力化を図ることができる。   That is, according to this data processing device, it is possible to further reduce power consumption.

図1は、本実施の形態に係るデータ処理装置を含むデータ処理システムを例示するブロック図である。FIG. 1 is a block diagram illustrating a data processing system including a data processing apparatus according to this embodiment. 図2は、単位電力量テーブル3044の一例を示す説明図である。FIG. 2 is an explanatory diagram illustrating an example of the unit power amount table 3044. 図3は、処理時間比テーブル3045の一例を示す説明図である。FIG. 3 is an explanatory diagram showing an example of the processing time ratio table 3045. 図4は、CPU10の実動作時と想定動作時との対応関係を表す説明図である。FIG. 4 is an explanatory diagram illustrating a correspondence relationship between the actual operation and the assumed operation of the CPU 10. 図5は、CPU10の実動作時と想定動作時との対応関係を表す別の説明図である。FIG. 5 is another explanatory diagram showing a correspondence relationship between the actual operation and the assumed operation of the CPU 10. 図6は、DVFS管理モジュール30による実電力量と想定電力量の算出処理の流れの一例を示すフロー図である。FIG. 6 is a flowchart showing an example of the flow of processing for calculating the actual power amount and the assumed power amount by the DVFS management module 30. 図7は、換算時間の算出処理の流れの一例を示すフロー図である。FIG. 7 is a flowchart showing an example of a conversion time calculation process. 図8は、データ処理装置1の動作タイミングの一例を示す説明図である。FIG. 8 is an explanatory diagram showing an example of the operation timing of the data processing apparatus 1. 図9は、比較例に係るデータ処理装置の動作タイミングの一例を示す。FIG. 9 shows an example of the operation timing of the data processing apparatus according to the comparative example. 図10は、データ処理装置1と比較例に係るデータ処理装置の電力特性を示す説明図である。FIG. 10 is an explanatory diagram illustrating power characteristics of the data processing device 1 and the data processing device according to the comparative example.

1.実施の形態の概要
先ず、本願において開示される発明の代表的な実施の形態について概要を説明する。代表的な実施の形態についての概要説明で括弧を付して参照する図面中の参照符号はそれが付された構成要素の概念に含まれるものを例示するに過ぎない。
1. First, an outline of a typical embodiment of the invention disclosed in the present application will be described. Reference numerals in the drawings referred to in parentheses in the outline description of the representative embodiments merely exemplify what are included in the concept of the components to which the reference numerals are attached.

〔1〕(実動作時の電力量と仮定した周波数設定毎の想定電力量を算出してCPUにフィードバックする)
本発明の代表的な実施の形態に係るデータ処理装置(1)は、クロック信号(CLK)に同期してデータ処理を実行するとともに、前記データ処理に係る負荷の状態に基づいて前記クロック信号の周波数を選択制御するデータ処理制御部(10)と、前記データ処理制御部の実動作時に前記データ処理制御部で消費される所定期間(測定回数情報3042)の実電力量(Pr_0〜Pr3)を演算するとともに、仮定した周波数(f1〜f3)での前記データ処理制御部による動作を想定した想定動作時の前記所定期間における想定電力量(Pf1_0〜Pf1_3、Pf2_0〜Pf2_3、Pf3_0〜Pf3_3)を演算する電力算出部(30)と、を有する。前記データ処理制御部は、前記実電力量と前記想定電力量のうち低消費電力となる周波数を考慮して、前記負荷の状態に対応するクロック信号の周波数を選択制御する。
[1] (Calculate the assumed power amount for each frequency setting assuming the power amount during actual operation and feed it back to the CPU)
A data processing device (1) according to a representative embodiment of the present invention executes data processing in synchronization with a clock signal (CLK), and based on the state of a load related to the data processing, A data processing control unit (10) for selecting and controlling the frequency, and an actual power amount (Pr_0 to Pr3) for a predetermined period (measurement count information 3042) consumed by the data processing control unit during actual operation of the data processing control unit. As well as calculating, calculate the assumed power amounts (Pf1_0 to Pf1_3, Pf2_0 to Pf2_3, Pf3_0 to Pf3_3) in the predetermined period during the assumed operation assuming the operation by the data processing control unit at the assumed frequency (f1 to f3). And a power calculation unit (30). The data processing control unit selectively controls the frequency of the clock signal corresponding to the state of the load in consideration of the frequency of low power consumption among the actual power amount and the assumed power amount.

項1のデータ処理装置では、前記所定期間の前記実電力量と前記仮定した周波数での前記想定電力のうち低消費電力となる周波数を判別するから、現状のデータ処理制御部の動作周波数が、前記データ処理制御部にとって電力的に最適な動作周波数であるか否かを判別することができる。これにより、現状のデータ処理制御部の動作周波数が電力的に最適でない場合には、前記データ処理制御部の消費電力をより低減させることができる動作周波数に変更することが可能となる。   In the data processing device according to item 1, since the actual power amount in the predetermined period and the frequency that becomes low power consumption among the assumed power at the assumed frequency are determined, the current operating frequency of the data processing control unit is It is possible to determine whether the operating frequency is optimal for the data processing control unit. As a result, when the current operating frequency of the data processing control unit is not optimal in terms of power, it is possible to change to an operating frequency that can further reduce the power consumption of the data processing control unit.

〔2〕(CPUの動作状態毎に継続時間を把握して、動作状態毎に電力算出)
項1のデータ処理装置において、前記データ処理制御部の動作状態は、データ処理が実行可能なアクティブ状態と、データ処理が実行不能な非アクティブ状態とを含み、前記非アクティブ状態は、前記データ処理制御部に対するクロック信号の供給が停止している第1低消費電力状態(スリープ状態)と、前記データ処理制御部に対する前記クロック信号及び電源電圧の供給が停止している第2低消費電力状態(スタンバイ状態)とを含む。前記電力算出部は、前記実動作時と前記想定動作時における前記アクティブ状態の継続時間と、前記第1低消費電力状態の継続時間と、前記第2低消費電力状態の継続時間とを把握し、夫々の前記継続時間と夫々の前記動作状態における単位時間当たりの消費電力量とに基づいて、前記実電力量と前記想定電力量とを算出する。
[2] (Understanding the duration for each CPU operating state and calculating the power for each operating state)
2. The data processing apparatus according to item 1, wherein the operation state of the data processing control unit includes an active state in which data processing can be performed and an inactive state in which data processing cannot be performed, wherein the inactive state includes the data processing A first low power consumption state (sleep state) in which supply of the clock signal to the control unit is stopped, and a second low power consumption state (in which supply of the clock signal and power supply voltage to the data processing control unit is stopped) Standby state). The power calculation unit grasps the duration of the active state, the duration of the first low power consumption state, and the duration of the second low power consumption state during the actual operation and the assumed operation. The actual power amount and the assumed power amount are calculated based on the duration time and the power consumption amount per unit time in each operation state.

項2のデータ処理装置では、前記所定期間の上記3つの動作状態を区別し、夫々の動作状態の前記継続時間を考慮して電力量の算出を行うから、前記所定期間の前記実電力量と前記想定電力量を、より精度良く算出することができる。   In the data processing device according to item 2, since the three operation states in the predetermined period are distinguished and the electric energy is calculated in consideration of the duration of each operation state, the actual electric energy in the predetermined period and The estimated power amount can be calculated with higher accuracy.

〔3〕(演算完了毎に通知)
項1又は2のデータ処理装置において、前記電力算出部は、前記所定期間の前記実電力量及び前記想定電力量の演算が完了する毎に、前記演算が完了したことを前記データ処理制御部に対して通知する。
[3] (Notification every time calculation is completed)
In the data processing device according to item 1 or 2, the power calculation unit notifies the data processing control unit that the calculation is completed each time the calculation of the actual power amount and the assumed power amount for the predetermined period is completed. Notify them.

これによれば、現状の前記データ処理制御部の動作周波数が電力的に最適な周波数であるか否かを、前記所定期間毎に判別することができる。   According to this, it can be determined at every predetermined period whether or not the current operating frequency of the data processing control unit is an optimal frequency in terms of power.

〔4〕(一定期間毎又はCPUの動作状態の変化毎に電力量を算出)
項2又は3のデータ処理装置において、前記電力算出部は、一定期間(測定時間情報3041に設定されたタイマの上限値)毎又は前記データ処理制御部の前記動作状態の変化毎に前記データ処理制御部で消費される実電力量を算出し、算出した前記実電力量を所定回数分だけ累積することで前記所定期間での前記実電力量を算出する。また、前記電力算出部は、前記実電力量に係る演算毎に前記想定電力量を算出し、算出した前記想定電力量を前記所定回数分だけ累積することで前記所定期間での前記仮想電力量を算出する。
[4] (Calculate the amount of power every fixed period or every change in the CPU operating state)
In the data processing device according to item 2 or 3, the power calculation unit performs the data processing every predetermined period (the upper limit value of the timer set in the measurement time information 3041) or every change in the operation state of the data processing control unit. The actual power amount consumed by the control unit is calculated, and the actual power amount for the predetermined period is calculated by accumulating the calculated actual power amount for a predetermined number of times. Further, the power calculation unit calculates the assumed power amount for each calculation related to the actual power amount, and accumulates the calculated assumed power amount for the predetermined number of times to thereby calculate the virtual power amount in the predetermined period. Is calculated.

これによれば、前記所定期間における前記動作状態を考慮した電力量の算出を容易に行うことができる。また、前記データ処理制御部の前記動作状態が変化しない場合であっても、前記一定期間毎に電力量の算出を行うことができるから、電力量の算出回数が前記所定回数に到達しないことで前記所定期間における電力量の算出が行われなくなることを防止することができる。   According to this, it is possible to easily calculate the electric energy in consideration of the operation state in the predetermined period. In addition, even when the operation state of the data processing control unit does not change, the amount of power can be calculated for each predetermined period, so that the number of times the amount of power is calculated does not reach the predetermined number of times. It is possible to prevent the calculation of the amount of power during the predetermined period from being lost.

〔5〕(1回分の実測電力量の算出方法)
項4のデータ処理装置において、前記所定回数のうち1回分の実電力量は、前記データ処理制御部の前記動作状態における単位時間あたりの消費電力量(PA1〜PA3、PS1〜PS3、PB1〜PB3)と、その1回分における前記実動作時の前記動作状態の継続時間を示す第1継続時間(Tc)と、を乗算することで算出される。
[5] (Calculation method of the actual measured electric energy for one time)
In the data processing device according to item 4, the actual power consumption for one time out of the predetermined number of times is the power consumption per unit time in the operation state of the data processing control unit (PA1 to PA3, PS1 to PS3, PB1 to PB3). ) And the first duration (Tc) indicating the duration of the operation state at the time of the actual operation in one time.

これによれば、前記データ処理制御部の前記実動作時における前記動作状態毎の前記実電力量を容易に算出することができる。   According to this, it is possible to easily calculate the actual power amount for each operation state during the actual operation of the data processing control unit.

〔6〕(1回分の想定電力量の算出方法)
項5のデータ処理装置において、前記所定回数のうち1回分の想定電力量は、前記仮定した周波数での前記データ処理制御部の前記動作状態における単位時間あたりの消費電力量(PA1〜PA3、PS1〜PS3、PB1〜PB3)と、その1回分における前記想定動作時の前記動作状態の継続時間を示す第2継続時間(Tv)と、を乗算することで算出される。
[6] (Calculation method of estimated power consumption for one time)
In the data processing device according to item 5, the assumed power consumption for one of the predetermined times is a power consumption per unit time (PA1 to PA3, PS1) in the operation state of the data processing control unit at the assumed frequency. ˜PS3, PB1 to PB3) and a second duration (Tv) indicating the duration of the operation state at the time of the assumed operation for one time.

これによれば、前記データ処理制御部の前記想定動作時における動作状態毎の前記想定電力量を容易に算出することができる。   According to this, it is possible to easily calculate the assumed power amount for each operation state during the assumed operation of the data processing control unit.

〔7〕(換算時間Tvの算出(アクティブ時))
項6のデータ処理装置において、前記電力算出部は、前記想定動作時の動作状態が前記アクティブ状態である場合には、対応する前記実動作時の前記第1継続時間を、前記想定動作時の周波数での前記データ処理制御部のデータ処理能力(r11〜r13、r21〜r23、r31〜r33)に応じて換算し、換算した時間を前記第2継続時間とする。
[7] (Calculation of conversion time Tv (when active))
In the data processing device according to Item 6, when the operation state at the time of the assumed operation is the active state, the power calculation unit calculates the corresponding first duration time at the actual operation at the time of the assumed operation. It converts according to the data processing capability (r11-r13, r21-r23, r31-r33) of the said data processing control part in a frequency, and let the converted time be the said 2nd continuation time.

前述したように、クロック信号の周波数を高くしてデータ処理を実行すればデータ処理に要する時間は短くなるが、逆に周波数を低くしてデータ処理を実行すればデータ処理に要する時間は長くなる。すなわち、周波数が高ければデータ処理能力が高く、周波数が低ければデータ処理能力が低いともいえる。そこで、項7のデータ処理装置では、現状のデータ処理制御部でのアクティブ状態の継続時間を基準とし、その継続時間を前記仮定した周波数での前記データ処理制御部のデータ処理能力に応じて換算することで、前記第2継続時間を算出する。これによれば、前記仮定した周波数に応じたデータ処理時間を容易に算出することができる。   As described above, if the data processing is executed with the clock signal frequency increased, the time required for the data processing is shortened. Conversely, if the data processing is executed with the frequency lowered, the time required for the data processing is increased. . That is, it can be said that the data processing capability is high when the frequency is high, and the data processing capability is low when the frequency is low. Therefore, in the data processing apparatus according to item 7, the duration of the active state in the current data processing control unit is used as a reference, and the duration is converted according to the data processing capability of the data processing control unit at the assumed frequency. Thus, the second duration time is calculated. According to this, the data processing time corresponding to the assumed frequency can be easily calculated.

〔8〕(換算時間Tvの算出(非アクティブ時))
項7のデータ処理装置において、前記電力換算部は、前記想定動作時の前記データ処理制御部の動作状態が前記アクティブ状態である場合には、算出した前記第2継続時間に対する前記第1継続時間の差分を示す差時間(ΔT)を算出して累積し(T0)、前記想定動作時の前記データ処理制御部の動作状態が前記非アクティブ状態である場合には、前記第1継続時間と前記累積した差時間とを加算して算出した時間に基づいて前記第2継続時間を決定する。
[8] (Calculation of conversion time Tv (when inactive))
In the data processing device according to item 7, when the operation state of the data processing control unit at the time of the assumed operation is the active state, the power conversion unit is configured to perform the first duration with respect to the calculated second duration. When the operation state of the data processing control unit at the time of the assumed operation is the inactive state, the difference time (ΔT) indicating the difference between the first duration and the time is calculated. The second duration time is determined based on a time calculated by adding the accumulated difference time.

前述したように、前記データ処理制御部の動作状態がアクティブ状態から非アクティブ状態に移行する場合、アクティブ状態での継続時間の長さによって、その後の非アクティブ状態での継続時間が変化する。そこで、項8のデータ処理装置によれば、前記データ処理制御部の動作状態がアクティブ状態である場合には前記差時間を累積しておき、その後、前記データ処理制御部の動作状態が非アクティブ状態となったら、累積した前記差時間を用いて非アクティブ状態での前記第2継続時間を決定する。これにより、前記想定動作時における非アクティブ状態の継続時間を、より精度良く算出することができる。   As described above, when the operation state of the data processing control unit shifts from the active state to the inactive state, the duration in the subsequent inactive state varies depending on the length of the duration in the active state. Therefore, according to the data processing device of item 8, when the operation state of the data processing control unit is in the active state, the difference time is accumulated, and then the operation state of the data processing control unit is inactive. When the state is reached, the second duration time in the inactive state is determined using the accumulated difference time. As a result, the duration of the inactive state during the assumed operation can be calculated with higher accuracy.

〔9〕(換算時間Tvに応じたスリープ状態とスタンバイ状態との切り替え)
項8のデータ処理装置における前記電力算出部は、前記想定動作時の前記データ処理制御部の動作状態が前記非アクティブ状態である場合において、前記第2継続時間が所定の閾値(Tth)より大きいときは、前記想定動作時の前記データ処理制御部の動作状態が前記第2低消費電力状態であると仮定し、前記所定の閾値より小さいときは、前記想定動作時の前記データ処理制御部の動作状態が前記第1低消費電力状態であると仮定して、前記想定電力を算出する。
[9] (Switching between sleep state and standby state according to conversion time Tv)
The power calculation unit in the data processing device according to item 8, wherein the second duration is greater than a predetermined threshold (Tth) when the operation state of the data processing control unit during the assumed operation is the inactive state. When the operation state of the data processing control unit during the assumed operation is assumed to be the second low power consumption state, and when the operation state is smaller than the predetermined threshold, the data processing control unit during the assumed operation Assuming that the operating state is the first low power consumption state, the assumed power is calculated.

これによれば、前記想定動作時における前記第1低消費電力状態と前記第2低消費電力状態とを自ら判別するから、前記想定動作時における非アクティブ状態での前記想定電力量をより精度良く算出することができる。   According to this, since the first low power consumption state and the second low power consumption state during the assumed operation are determined by themselves, the estimated power amount in the inactive state during the assumed operation is more accurately determined. Can be calculated.

〔10〕(算出した電力量を格納する記憶領域)
項4乃至9のいずれかのデータ処理装置において、前記電力算出部は、前記算出した前記所定期間毎の前記実電力量に基づく第1電力情報(3065)と、前記算出した前記所定期間毎の前記想定電力量に基づく第2電力情報(3066〜3068)と、を格納するための記憶領域(3062)を有する。前記記憶領域は、前記データ処理制御部によってアクセス可能とされる。
[10] (Storage area for storing the calculated electric energy)
In the data processing device according to any one of Items 4 to 9, the power calculation unit includes first power information (3065) based on the calculated actual power amount for each predetermined period, and the calculated for each predetermined period. Storage area (3062) for storing second power information (3066 to 3068) based on the assumed power amount. The storage area can be accessed by the data processing control unit.

〔11〕(累積差分電力量の情報を格納)
項10のデータ処理装置において、前記電力算出部は、前記実電力量と前記想定電力量のうち最も小さい電力量を選択し、選択した電力量と前記実電力量との差分を示す電力量を前記所定回数だけ累積加算した情報を前記第1電力情報として前記記憶領域に格納するとともに、前記選択した電力量と前記想定電力量との差分を示す電力量を前記所定回数だけ累積加算して前記第2電力情報として前記記憶領域に格納する。
[11] (Stores information on cumulative power difference)
In the data processing device according to item 10, the power calculation unit selects the smallest power amount from the actual power amount and the assumed power amount, and calculates a power amount indicating a difference between the selected power amount and the actual power amount. The information cumulatively added for the predetermined number of times is stored in the storage area as the first power information, and the power amount indicating the difference between the selected power amount and the assumed power amount is cumulatively added for the predetermined number of times. The second power information is stored in the storage area.

これによれば、例えば算出した前記所定期間毎の前記実電力量と前記想定電力量を前記記憶領域に格納する場合に比べて、格納するデータ量を小さくすることができる。これにより、前記記憶領域の容量を小さくすることができるから、例えば半導体基板上に前記データ処理装置を形成する場合には、前記半導体基板の小面積化に資する。   According to this, for example, the amount of data to be stored can be reduced compared to the case where the calculated actual power amount and the assumed power amount for each predetermined period are stored in the storage area. Thereby, since the capacity of the storage area can be reduced, for example, when the data processing device is formed on a semiconductor substrate, it contributes to a reduction in the area of the semiconductor substrate.

〔12〕(累積差分電力量の差分の情報を格納)
項10のデータ処理装置において、前記電力算出部は、前記一定期間毎又は前記データ処理制御部の前記動作状態の変化毎に、前記実電力量と前記想定電力量のうち最も小さい電力量を選択し、選択した電力量と前記実電力量との差分を示す第1差分電力量(3053)を算出するとともに、前記選択した電力量と前記想定電力量との差分を示す第2差分電力量(3054〜3056)とを算出する。また、前記電力算出部は、前回算出した前記第1差分電力量と今回算出した前記第1差分電力量とを加算して、前記実電力量に係る累積差分電力量を算出するとともに、前回に算出した前記第2差分電力量と今回算出した第2差分電力量を加算して、前記想定電力量に係る累積差分電力量を算出する。更に前記電力算出部は、前記実電力量に係る累積差分電力量と前記想定電力量に係る累積差分電力量のうち最も小さい電力量を選択し、当該選択した電力量と前記実電力量に係る累積差分電力量との差分を示す電力量を前記第1電力情報(3065)として前記記憶領域に格納し、当該選択した電力量と前記想定電力量に係る累積差分電力量との差分を示す電力量を前記第2電力情報(3066〜3068)として前記記憶領域に格納する。
[12] (Stores difference information of accumulated power difference)
In the data processing device according to item 10, the power calculation unit selects the smallest power amount among the actual power amount and the assumed power amount for each predetermined period or for each change in the operation state of the data processing control unit. And calculating a first differential power amount (3053) indicating a difference between the selected power amount and the actual power amount, and a second differential power amount indicating a difference between the selected power amount and the assumed power amount ( 3054-3056). In addition, the power calculation unit adds the first difference power amount calculated last time and the first difference power amount calculated this time to calculate a cumulative difference power amount related to the actual power amount. The calculated second differential power amount and the currently calculated second differential power amount are added to calculate a cumulative differential power amount related to the assumed power amount. Further, the power calculation unit selects the smallest power amount among the cumulative difference power amount related to the actual power amount and the cumulative difference power amount related to the assumed power amount, and relates to the selected power amount and the actual power amount. A power amount indicating a difference from the cumulative power difference amount is stored in the storage area as the first power information (3065), and a power indicating a difference between the selected power amount and the cumulative power difference amount related to the assumed power amount. The amount is stored in the storage area as the second power information (3066 to 3068).

これによれば、前記第1電力情報及び前記第2電力情報を、前記累積加算した差分の電力量に対して更に差分をとった電力量の情報とすることで、更にデータ量を小さくすることができる。これにより、前記記憶領域の容量を更に小さくすることができる。   According to this, by making the first power information and the second power information into information on the amount of power obtained by taking a difference with respect to the amount of power of the cumulative difference, the data amount can be further reduced. Can do. Thereby, the capacity of the storage area can be further reduced.

〔13〕(テーブルを用いて電力算出)
項9乃至12のいずれかのデータ処理装置において、前記電力算出部は、前記データ処理制御部の前記動作状態に応じた単位時間あたりの電力量(PA1〜PA3、PS1〜PS3、PB1〜PB3)が前記仮定することが可能な周波数毎に対応されて格納される第1テーブル(3044)と、前記実電力量に係る周波数での前記データ処理制御部によるデータ処理能力と、前記仮定した周波数での前記データ処理制御部によるデータ処理能力との比を示す情報(r11〜r13、r21〜r23、r31〜r33)が前記仮定した周波数毎に格納される第2テーブル(3045)と、を更に有する。前記電力算出部は、前記第1テーブルと前記第2テーブルの値に基づいて、前記実電力量と前記想定電力量の算出を行う。
[13] (Power calculation using a table)
Item 12. The data processing device according to any one of Items 9 to 12, wherein the power calculation unit includes an amount of power per unit time (PA1 to PA3, PS1 to PS3, PB1 to PB3) according to the operation state of the data processing control unit. Is stored corresponding to each frequency that can be assumed, the data processing capability of the data processing control unit at the frequency related to the actual electric energy, and the assumed frequency A second table (3045) in which information (r11 to r13, r21 to r23, r31 to r33) indicating a ratio to the data processing capability of the data processing control unit is stored for each assumed frequency. . The power calculation unit calculates the actual power amount and the assumed power amount based on the values of the first table and the second table.

これによれば、例えば前記データ処理制御部に流れる電流や供給される電圧等を実際に測定することなく、容易に前記実電力量を算出することができる。   According to this, for example, the actual power amount can be easily calculated without actually measuring the current flowing through the data processing control unit, the supplied voltage, or the like.

〔14〕(システム)
本発明の代表的な実施の形態に係るデータ処理システム(100)は、外部からの指示に応じて電源電圧を出力する第1半導体装置(2)と、前記第1半導体装置からの給電により動作する第2半導体装置(1)と、を有するデータ処理システムである。前記データ処理システムにおいて、前記第2半導体装置は、クロック信号(CLK)に同期してデータ処理を実行するとともに前記データ処理に係る負荷の状態に基づいて前記クロック信号の周波数と電源電圧とを選択制御するデータ処理制御部(10)と、前記データ処理制御部による制御に基づいて前記クロック信号を生成して出力するクロック生成部(20)と、前記データ処理制御部の実動作時に前記データ処理制御部で消費される所定期間の実電力量(Pr_0〜Pr_3)を演算するとともに、仮定した周波数での前記データ処理制御部による動作を想定した想定動作時の前記所定期間における想定電力量(Pf1_0〜Pf1_3、Pf2_0〜Pf2_3、Pf3_0〜Pf3_3)を演算する電力算出部(60)と、を有する。前記データ処理制御部は、前記実電力量と前記想定電力量のうち低消費電力となる周波数を考慮して、前記負荷の状態に対応するクロック信号の周波数を選択制御するとともに、前記選択した周波数に応じた電源電圧の供給を前記第1半導体装置に対して指示する。
[14] (System)
A data processing system (100) according to a representative embodiment of the present invention operates with a first semiconductor device (2) that outputs a power supply voltage in response to an instruction from the outside, and power supply from the first semiconductor device. And a second semiconductor device (1). In the data processing system, the second semiconductor device executes data processing in synchronization with a clock signal (CLK) and selects a frequency and a power supply voltage of the clock signal based on a load state related to the data processing. A data processing control unit (10) for controlling, a clock generation unit (20) for generating and outputting the clock signal based on control by the data processing control unit, and the data processing during actual operation of the data processing control unit The actual power amount (Pr_0 to Pr_3) consumed by the control unit for a predetermined period is calculated, and the assumed power amount (Pf1_0) for the predetermined period at the time of the assumed operation assuming the operation by the data processing control unit at the assumed frequency. ~ Pf1_3, Pf2_0 to Pf2_3, Pf3_0 to Pf3_3), and a power calculation unit (60). That. The data processing control unit selectively controls the frequency of the clock signal corresponding to the state of the load in consideration of the frequency with low power consumption among the actual power amount and the assumed power amount, and the selected frequency The first semiconductor device is instructed to supply the power supply voltage according to the above.

前記データ処理システムによれば、項1と同様に、前記データ処理制御部における現状の動作周波数が、前記データ処理制御部にとって電力的に最適な動作周波数であるか否かを判別することができる。これにより、前記データ処理制御部における動作周波数が最適でない場合には、前記データ処理制御部の消費電力をより低減させることができる動作周波数に変更することが可能となる。   According to the data processing system, as in item 1, it is possible to determine whether or not the current operating frequency in the data processing control unit is an optimal operating frequency in terms of power for the data processing control unit. . As a result, when the operating frequency in the data processing control unit is not optimal, it is possible to change to an operating frequency that can further reduce the power consumption of the data processing control unit.

2.実施の形態の詳細
実施の形態について更に詳述する。
2. Details of Embodiments Embodiments will be further described in detail.

≪データ処理システムの構成≫
図1に本実施の形態に係るデータ処理装置を含むデータ処理システムを例示する。同図に示されるデータ処理システム100において、データ処理装置1は、特に制限されないが、公知のCMOS集積回路の製造技術によってCPUや周辺回路モジュール等の複数の回路モジュールを1個の単結晶シリコンのような半導体基板に形成したシステムLSI(SOC:System on Chip)である。
≪Data processing system configuration≫
FIG. 1 illustrates a data processing system including a data processing apparatus according to this embodiment. In the data processing system 100 shown in the figure, the data processing apparatus 1 is not particularly limited, but a plurality of circuit modules such as a CPU and peripheral circuit modules are made of one single crystal silicon by a known CMOS integrated circuit manufacturing technique. This is a system LSI (SOC: System on Chip) formed on such a semiconductor substrate.

データ処理装置1は、外部電源端子を介して電源IC2から電源電圧VDDの供給を受ける。電源IC2は、例えば入力された電圧VINに基づいて電源電圧を生成し、生成した電源電圧をデータ処理装置1、外部メモリ(MRY)3、及び水晶発振器(TCXO)4に供給する電源生成回路である。データ処理装置1は、制御信号11により所望の電源電圧VDDの供給を電源IC2に対して指示し、電源IC2はその指示に応じて電圧を生成して出力する。これにより、データ処理装置1から指示された電圧値の電源電圧VDDがデータ処理装置1に供給される。外部メモリ3は、例えばSDRAM等の揮発性の記憶領域を有する外部記憶装置やフラッシュメモリ等の不揮発性の記憶領域を有する外部記憶装置である。   The data processing apparatus 1 receives supply of the power supply voltage VDD from the power supply IC 2 through the external power supply terminal. The power supply IC 2 is a power generation circuit that generates a power supply voltage based on the input voltage VIN, for example, and supplies the generated power supply voltage to the data processing device 1, the external memory (MRY) 3, and the crystal oscillator (TCXO) 4. is there. The data processing apparatus 1 instructs the power supply IC 2 to supply a desired power supply voltage VDD by the control signal 11, and the power supply IC 2 generates and outputs a voltage according to the instruction. As a result, the power supply voltage VDD having the voltage value instructed from the data processing device 1 is supplied to the data processing device 1. The external memory 3 is an external storage device having a volatile storage area such as an SDRAM or an external storage device having a nonvolatile storage area such as a flash memory.

データ処理装置1は、特に制限されないが、中央処理装置(CPU)10、クロック信号生成部(CPG)20、DVFS管理モジュール30、及び図示されないその他の周辺回路モジュール等から構成される。   The data processing device 1 is not particularly limited, and includes a central processing unit (CPU) 10, a clock signal generation unit (CPG) 20, a DVFS management module 30, and other peripheral circuit modules not shown.

クロック信号生成部20は、水晶発振器4から出力される基準クロック信号に基づいてクロック信号を生成し、生成したクロック信号をCPU10やその他の周辺回路モジュールに供給する。クロック信号生成部20は、例えばPLL(Phase Locked Loop)回路や分周器等から構成され、複数種類の周波数のクロック信号が生成可能とされる。図1には、生成したクロック信号のうちクロック信号CLKをCPU10に供給する場合が代表的に例示されている。クロック信号生成部20は、CPU10からの制御信号12により、所望の周波数のクロック信号CLKの供給が指示されると、その指示に応じた周波数のクロック信号CLKを生成してCPU10に対して出力する。また、クロック信号生成部20は、CPU10に供給しているクロック信号CLKの周波数を示すクロック状態信号VscをDVFS管理モジュール30に対して出力する。   The clock signal generation unit 20 generates a clock signal based on the reference clock signal output from the crystal oscillator 4 and supplies the generated clock signal to the CPU 10 and other peripheral circuit modules. The clock signal generation unit 20 includes, for example, a PLL (Phase Locked Loop) circuit, a frequency divider, and the like, and can generate clock signals having a plurality of types of frequencies. FIG. 1 typically illustrates a case where the clock signal CLK among the generated clock signals is supplied to the CPU 10. When the control signal 12 from the CPU 10 instructs the clock signal generation unit 20 to supply the clock signal CLK having a desired frequency, the clock signal generation unit 20 generates the clock signal CLK having a frequency corresponding to the instruction and outputs the clock signal CLK to the CPU 10. . Further, the clock signal generation unit 20 outputs a clock state signal Vsc indicating the frequency of the clock signal CLK supplied to the CPU 10 to the DVFS management module 30.

CPU10は、図示されないROM(Read Only Memory)や外部メモリ3等の記憶装置に格納されたソフトウェアに基づいて、プログラム処理を実行することで各種のデータ処理を行う。   The CPU 10 performs various data processing by executing program processing based on software stored in a storage device such as a ROM (Read Only Memory) (not shown) or the external memory 3.

CPU10の動作状態としては、例えば、アクティブ状態と非アクティブ状態とが有り、前記非アクティブ状態にはスリープ状態とスタンバイ状態が含まれる。前記アクティブ状態は、データ処理が実行可能な状態であり、例えば、CPU10に対してクロック信号CLKと電源電圧VDDが共に供給されている状態である。一方、非アクティブ状態は、データ処理が実行不能な状態である。また、スリープ状態は、例えばCPU10に対するクロック信号CLKの供給が停止している状態であり、スタンバイ状態は、例えばCPU10に対するクロック信号CLK及び電源電圧VDDの供給が停止している状態である。例えば、電源電圧VDDの供給が停止しているとは、電源IC2からの電源電圧VDDの供給が停止される場合や、図示されない電源スイッチによって、チップ内部で電源電圧VDDの供給が停止される場合などである。前記スタンバイ状態は、上記のようにクロック信号CLKのみならず電源電圧VDDの供給も停止されるため、前記スリープ状態よりも低消費電力となるが、前記スリープ状態に比べてCPU10の復帰に時間を要する。   The operation state of the CPU 10 includes, for example, an active state and an inactive state, and the inactive state includes a sleep state and a standby state. The active state is a state in which data processing can be performed. For example, the clock signal CLK and the power supply voltage VDD are both supplied to the CPU 10. On the other hand, the inactive state is a state where data processing cannot be performed. The sleep state is a state where supply of the clock signal CLK to the CPU 10 is stopped, for example, and the standby state is a state where supply of the clock signal CLK and the power supply voltage VDD to the CPU 10 is stopped, for example. For example, the supply of the power supply voltage VDD is stopped when the supply of the power supply voltage VDD from the power supply IC 2 is stopped or when the supply of the power supply voltage VDD is stopped inside the chip by a power switch (not shown). Etc. In the standby state, not only the clock signal CLK but also the supply of the power supply voltage VDD is stopped as described above, so that the power consumption is lower than that in the sleep state. Cost.

CPU10のアクティブ状態から非アクティブ状態(スリープ状態又はスタンバイ状態)へ移行は以下の制御によって実現される。例えば、CPU10は、1つのデータ処理が完了してから次のデータ処理を開始するまでの待機時間を算出し、前記待機時間が長いときはアクティブ状態からスタンバイ状態に移行する。逆に前記待機時間が短いときはアクティブ状態からスリープ状態に移行する。スタンバイ状態に移行するかスリープ状態に移行するかは、例えば、算出した待機時間を所定の閾値Tthと比較することによって判断される。例えば、算出した待機時間が閾値Tth以上のときは、CPU10はスタンバイ状態に移行し、閾値Tthよりも小さいときは、CPU10はスリープ状態に移行する。CPU10の動作状態は、CPU10から出力されるスタンバイ状態信号Vsb及びスリープ状態信号Vspによって、DVFS管理モジュール30等の周辺回路モジュールに通知される。例えば、CPU10がスタンバイ状態である場合にはスタンバイ状態信号Vsbがアサートされ、CPU10がスリープ状態である場合にはスリープ状態信号Vspがアサートされる。スタンバイ状態信号Vsb及びスリープ状態信号Vspが共にネゲートされているときは、CPU10はアクティブ状態である。   The transition from the active state of the CPU 10 to the inactive state (sleep state or standby state) is realized by the following control. For example, the CPU 10 calculates a standby time from the completion of one data process to the start of the next data process, and shifts from the active state to the standby state when the standby time is long. Conversely, when the waiting time is short, the state shifts from the active state to the sleep state. Whether to shift to the standby state or the sleep state is determined, for example, by comparing the calculated waiting time with a predetermined threshold value Tth. For example, when the calculated standby time is equal to or greater than the threshold value Tth, the CPU 10 shifts to a standby state, and when it is smaller than the threshold value Tth, the CPU 10 shifts to a sleep state. The operating state of the CPU 10 is notified to a peripheral circuit module such as the DVFS management module 30 by a standby state signal Vsb and a sleep state signal Vsp output from the CPU 10. For example, the standby state signal Vsb is asserted when the CPU 10 is in the standby state, and the sleep state signal Vsp is asserted when the CPU 10 is in the sleep state. When the standby state signal Vsb and the sleep state signal Vsp are both negated, the CPU 10 is in an active state.

CPU10は、前記待機時間に応じて動作状態を切り替える制御に加え、実行するデータ処理に係る負荷の状態を監視し、負荷状態に応じてCPU10の動作電圧と動作周波数を調整するDVFS制御を行う。具体的には、CPU10は、実行するタスクやプロセス等の待ち行列等からデータ処理に係る負荷の状態を把握する。前記負荷の状態が、例えば低負荷状態から高負荷状態に変化した場合には、クロック信号生成部20に対してクロック信号の周波数を上げるように指示するとともに、電源IC2に対して変更後の周波数に応じた電源電圧(より高い電源電圧)を供給するように指示する。一方、例えば負荷状態が高負荷状態から低負荷状態に変化した場合には、CPU10は、クロック信号生成部20に対してクロック信号の周波数を下げるように指示するとともに、電源IC2に対して変更後の周波数に応じた電源電圧(より低い電源電圧)を供給するように指示する。   In addition to the control for switching the operation state according to the standby time, the CPU 10 monitors the state of the load related to the data processing to be executed, and performs DVFS control for adjusting the operation voltage and the operation frequency of the CPU 10 according to the load state. Specifically, the CPU 10 grasps the state of a load related to data processing from a queue of tasks and processes to be executed. For example, when the load state changes from a low load state to a high load state, the clock signal generation unit 20 is instructed to increase the frequency of the clock signal, and the power supply IC 2 has the changed frequency. It is instructed to supply a power supply voltage (higher power supply voltage) corresponding to On the other hand, for example, when the load state changes from a high load state to a low load state, the CPU 10 instructs the clock signal generation unit 20 to lower the frequency of the clock signal and also changes the power supply IC 2 after the change. It is instructed to supply a power supply voltage (lower power supply voltage) corresponding to the frequency of.

前述したようにCPU10の負荷状態だけを判断基準として動作周波数を調整しても、データ処理時間や待機時間の長さによっては、必ずしも電力的に最適な状態にならない可能性がある。そこで、本実施の形態に係るデータ処理装置1では、DVFS管理モジュール30がCPU10の実動作時の実電力量と、仮定した動作周波数でのCPU10の動作を想定した想定動作時の想定電力量とを算出し、算出した実電力量と想定電力量とに基づいて、現状のCPU10の動作周波数の設定が電力的に最適であるか否かを判断する。例えば、CPU10は、現状の周波数設定よりも他の周波数設定の方がより低消費電力になると判断したら、データ処理に係る負荷状態を考慮して、動作周波数の設定を変更する。   As described above, even if the operating frequency is adjusted using only the load state of the CPU 10 as a determination criterion, there is a possibility that the optimum state in terms of power may not be obtained depending on the length of the data processing time and the standby time. Therefore, in the data processing device 1 according to the present embodiment, the DVFS management module 30 assumes the actual power amount during the actual operation of the CPU 10 and the assumed power amount during the assumed operation assuming the operation of the CPU 10 at the assumed operating frequency. Based on the calculated actual power amount and the assumed power amount, it is determined whether or not the current setting of the operating frequency of the CPU 10 is optimal in terms of power. For example, if the CPU 10 determines that the other frequency settings have lower power consumption than the current frequency setting, the CPU 10 changes the setting of the operating frequency in consideration of the load state related to data processing.

≪DVFS管理モジュールの概要≫
DVFS管理モジュール30は、CPU10の実動作時にCPU10で消費される所定期間の実電力量を算出するとともに、仮定した動作周波数でのCPU10による動作を想定した想定動作時の前記所定期間における想定電力量を算出する。DVFS管理モジュール30は、例えば、検出部301、モニタ部302、演算部303、基礎データ部304、電力差分生成部305、及び累計部306を備える。
≪Overview of DVFS management module≫
The DVFS management module 30 calculates the actual power amount consumed by the CPU 10 during the actual operation of the CPU 10 and also assumes the assumed power amount during the predetermined operation during the assumed operation assuming the operation of the CPU 10 at the assumed operating frequency. Is calculated. The DVFS management module 30 includes, for example, a detection unit 301, a monitor unit 302, a calculation unit 303, a basic data unit 304, a power difference generation unit 305, and an accumulation unit 306.

検出部301は、スリープ状態信号Vsp、スタンバイ状態信号Vsb、及びクロック状態信号Vscに基づいてCPU10の動作状態(アクティブ状態、スリープ状態、及びスタンバイ状態)と動作周波数を検出し、検出結果を出力する。例えば、検出部301は、スリープ状態変化検出部3011と、スタンバイ状態変化検出部3012と、クロック信号変化検出部3013とを備える。クロック信号変化検出部3013は、クロック状態信号Vscを監視し、クロック信号CLKの周波数の設定を示す信号を出力する。スリープ状態変化検出部3011は、スリープ状態信号Vspを監視し、CPU10がスリープ状態であるか否かを示す信号を出力するとともに、スリープ状態信号Vspの変化に応じた信号を出力する。スタンバイ状態変化検出部3012は、スタンバイ状態信号Vsbを監視し、CPU10がスタンバイ状態であるか否かを示す信号を出力するとともに、スタンバイ状態信号Vsbの変化に応じた信号を出力する。以下、前記スリープ状態信号Vspの変化に応じた信号とスタンバイ状態信号Vsbの変化に応じた信号とを総称して変化検出信号13とも称する。変化検出信号13は、例えばスリープ状態信号Vsp及びスタンバイ状態信号Vsbが変化する毎に信号レベルがハイレベルとローレベルの間で切り替わる信号である。   The detection unit 301 detects the operation state (active state, sleep state, and standby state) and the operation frequency of the CPU 10 based on the sleep state signal Vsp, the standby state signal Vsb, and the clock state signal Vsc, and outputs a detection result. . For example, the detection unit 301 includes a sleep state change detection unit 3011, a standby state change detection unit 3012, and a clock signal change detection unit 3013. The clock signal change detection unit 3013 monitors the clock state signal Vsc and outputs a signal indicating the setting of the frequency of the clock signal CLK. The sleep state change detection unit 3011 monitors the sleep state signal Vsp, outputs a signal indicating whether or not the CPU 10 is in the sleep state, and outputs a signal corresponding to the change in the sleep state signal Vsp. The standby state change detection unit 3012 monitors the standby state signal Vsb, outputs a signal indicating whether or not the CPU 10 is in the standby state, and outputs a signal corresponding to the change in the standby state signal Vsb. Hereinafter, the signal according to the change in the sleep state signal Vsp and the signal according to the change in the standby state signal Vsb are also collectively referred to as a change detection signal 13. The change detection signal 13 is a signal whose signal level is switched between a high level and a low level each time the sleep state signal Vsp and the standby state signal Vsb change, for example.

モニタ部302は、検出部301から出力された信号に基づいて、現在のCPU10の状態を示すデータ(以下、「要素プロファイル」とも称する。)を生成し、変化検出信号13が変化する毎(CPU10の動作状態が変化する毎)又は所定期間が経過する毎に、生成した要素プロファイルを演算部303に出力する。   The monitor unit 302 generates data (hereinafter, also referred to as “element profile”) indicating the current state of the CPU 10 based on the signal output from the detection unit 301, and changes every time the change detection signal 13 changes (CPU 10). The generated element profile is output to the calculation unit 303 every time a predetermined period elapses).

前記要素プロファイルは、例えば、CPUステータス情報3021と、DVFSステータス情報3022と、継続時間情報3023とを含む。   The element profile includes, for example, CPU status information 3021, DVFS status information 3022, and duration information 3023.

CPUステータス情報3021は、CPU10の動作状態を示す情報であり、例えば前記アクティブ状態、前記スリープ状態、及び前記スタンバイ状態のいずれかを示す情報である。   The CPU status information 3021 is information indicating an operation state of the CPU 10, and is information indicating any of the active state, the sleep state, and the standby state, for example.

DVFSステータス情報3022は、CPU10の周波数設定を示す情報である。例えばDVFS制御によって設定可能なCPU10の動作周波数として、第1周波数(f1)、第2周波数(f2)、及び第3周波数(f3)の3つの周波数設定がある場合、3つのうち何れかの周波数設定を示す情報である。   The DVFS status information 3022 is information indicating the frequency setting of the CPU 10. For example, when there are three frequency settings of the first frequency (f1), the second frequency (f2), and the third frequency (f3) as the operating frequency of the CPU 10 that can be set by DVFS control, any one of the three frequencies It is information indicating settings.

継続時間情報3023は、変化検出信号13が変化してから次に変化するまでの時間、又は前記所定期間を示す時間(以下、継続時間Tc、と称する)を示す情報である。具体的には、前記継続時間3023は、前記モニタ部302が内部に設けられたタイマを用いて前記変化検出信号13の変化をトリガとして計時を行うことにより計測される時間である。例えば、モニタ部302は、変化検出信号13が変化してから次に変化するまでの時間を前記タイマでカウントさせ、計測したカウント値を継続時間Tcとする。また、前記モニタ部302は、前記タイマにカウントを開始させてから次の前記変化検出信号13の変化が起こる前に前記所定期間が経過した場合には、その所定期間を示すカウント値を継続時間Tcとする。前記所定期間は、例えば、後述する基礎データ部304の測定時間情報3041に設定されたタイマの上限値である。前記タイマは、前記モニタ部302が前記要素プロファイル(CPUステータス情報3021、DVFSステータス情報3022、継続時間情報3023)を出力する毎にカウント値がリセットされる。これにより、前記タイマは、変化検出信号13が変化する毎又は前記所定期間が経過する毎に、計時を繰り返す。   The duration information 3023 is information indicating a time from when the change detection signal 13 changes to the next change, or a time indicating the predetermined period (hereinafter referred to as a duration Tc). Specifically, the duration 3023 is a time measured when the monitor unit 302 uses a timer provided therein to measure the change detection signal 13 as a trigger. For example, the monitor unit 302 causes the timer to count the time from when the change detection signal 13 changes until the next change, and sets the measured count value as the duration time Tc. Further, when the predetermined period elapses before the next change of the change detection signal 13 occurs after the monitor unit 302 starts counting, the monitor unit 302 displays a count value indicating the predetermined period as a duration time. Let Tc. The predetermined period is, for example, an upper limit value of a timer set in measurement time information 3041 of the basic data unit 304 described later. The count value of the timer is reset every time the monitor unit 302 outputs the element profile (CPU status information 3021, DVFS status information 3022, duration information 3023). As a result, the timer repeats timing every time the change detection signal 13 changes or every time the predetermined period elapses.

モニタ部302の具体的な動作について説明する。例えば、CPU10の動作周波数が第1周波数(f1)であるとき、CPU10の動作状態がアクティブ状態からスタンバイ状態に切り替わると、CPUステータス情報3021にはスタンバイ状態を示す情報が書き込まれ、DVFSステータス情報3022には第1周波数(f1)を示す情報が書き込まれる。また、前記動作状態の切り替わりをトリガとして、前記タイマが計時を開始する。その後、CPU10の動作状態がアクティブ状態に切り替わると、モニタ部303はそのときの前記タイマのカウント値を継続時間Tcとして継続時間情報3023に書き込むとともに、CPUステータス情報3021、DVFSステータス情報3022、及び継続時間情報3023を含む要素プロファイルを演算部303に出力する。その後、モニタ部303は、前記タイマをリセットするとともに計時を再開させ、CPUステータス情報3021にはアクティブ状態を示す情報を書き込む。また、前記タイマが計時を開始した後CPU10の動作状態が変化する前に前記所定時間が経過したら、モニタ部303は前記タイマのカウント値(又は、測定時間情報3041に設定されたタイマの上限値)を継続時間Tcとして継続時間情報3023に書き込むとともに、CPUステータス情報3021、DVFSステータス情報3022、及び継続時間情報3023を含む要素プロファイルを演算部303に出力する。その後、モニタ部303は、前記タイマをリセットするとともに計時を再開させる。以上の処理により、CPU10の動作状態が変化する毎又は所定期間が経過する毎に前記要素プロファイルが生成され、演算部303に出力される。   A specific operation of the monitor unit 302 will be described. For example, when the operating frequency of the CPU 10 is the first frequency (f1), when the operating state of the CPU 10 is switched from the active state to the standby state, information indicating the standby state is written in the CPU status information 3021 and the DVFS status information 3022 is displayed. Is written with information indicating the first frequency (f1). Further, the timer starts measuring time with the switching of the operation state as a trigger. After that, when the operation state of the CPU 10 is switched to the active state, the monitor unit 303 writes the count value of the timer at that time in the duration information 3023 as the duration time Tc, and the CPU status information 3021, DVFS status information 3022, and continuation The element profile including the time information 3023 is output to the calculation unit 303. Thereafter, the monitor unit 303 resets the timer and restarts timing, and writes information indicating the active state in the CPU status information 3021. When the predetermined time elapses before the operation state of the CPU 10 changes after the timer starts measuring time, the monitor unit 303 displays the count value of the timer (or the upper limit value of the timer set in the measurement time information 3041). ) As the duration Tc, and the element profile including the CPU status information 3021, the DVFS status information 3022, and the duration information 3023 is output to the computing unit 303. Thereafter, the monitor unit 303 resets the timer and restarts timing. Through the above processing, the element profile is generated every time the operating state of the CPU 10 changes or every time a predetermined period elapses, and is output to the calculation unit 303.

演算部303は、CPU10で消費される実電力量と、前記想定動作時の想定電力量とを算出するための演算を行う。前記演算は、例えばDSP(Digital Signal Processor)等によるプログラム処理によって実現される。演算部303は、モニタ部302から前記要素プロファイルが与えられる毎に前記実電力量と前記想定電力量とを算出する。具体的には、演算部303は、前記要素プロファイルが与えられると、前記要素プロファイルに応じた動作状態及び周波数設定でのCPU10の消費電力を実電力量3031として算出するとともに、設定可能なクロック信号CLKの周波数(動作周波数)毎に想定電力量を算出し、電力差分生成部305に出力する。例えば、CPU10の動作周波数の設定として、第1周波数(f1)、第2周波数(f2)、及び第3周波数(f3)の3つの周波数設定が可能な場合には、第1周波数設定時の想定電力量3032、第2周波数設定時の想定電力量3033、第3周波数設定時の想定電力量3034を夫々算出する。前記実電力量及び前記想定電力量の詳細な算出方法については後述する。   The calculation unit 303 performs a calculation for calculating the actual power amount consumed by the CPU 10 and the assumed power amount during the assumed operation. The calculation is realized by a program process using, for example, a DSP (Digital Signal Processor). The calculation unit 303 calculates the actual power amount and the assumed power amount each time the element profile is given from the monitor unit 302. Specifically, when the element profile is given, the calculation unit 303 calculates the power consumption of the CPU 10 in the operation state and frequency setting according to the element profile as the actual power amount 3031 and the settable clock signal. An assumed power amount is calculated for each CLK frequency (operating frequency) and output to the power difference generation unit 305. For example, when three frequency settings of the first frequency (f1), the second frequency (f2), and the third frequency (f3) are possible as the setting of the operating frequency of the CPU 10, it is assumed that the first frequency is set. The power amount 3032, the assumed power amount 3033 when the second frequency is set, and the assumed power amount 3034 when the third frequency is set are calculated. A detailed calculation method of the actual power amount and the assumed power amount will be described later.

基礎データ部304には、DVFS管理モジュール30による電力量の算出を行う上で基準となる初期設定データが格納される。例えば、前記初期設定データは製造時等にデータ処理装置1内のROMに格納される。例えば、データ処理装置1に電源が投入され、リセット状態が解除されると、CPU10が前記ROMから前記初期設定データを読み出し、基礎データ部304に設定する。基礎データ部304は、例えば複数のレジスタから構成されるレジスタ群である。基礎データ部304には、初期設定データとして、例えば、測定時間情報3041、閾値情報3043、測定回数情報3042、単位電力量テーブル3044、及び処理時間比テーブル3045が格納される。   The basic data unit 304 stores initial setting data serving as a reference for calculating the amount of power by the DVFS management module 30. For example, the initial setting data is stored in a ROM in the data processing apparatus 1 at the time of manufacture. For example, when the data processing apparatus 1 is turned on and the reset state is released, the CPU 10 reads the initial setting data from the ROM and sets it in the basic data unit 304. The basic data unit 304 is a register group including a plurality of registers, for example. In the basic data unit 304, for example, measurement time information 3041, threshold information 3043, measurement frequency information 3042, a unit power amount table 3044, and a processing time ratio table 3045 are stored as initial setting data.

測定時間情報3041は、前述したように、前記モニタ部303の前記タイマの上限値を定める情報である。閾値情報3043は、前述した閾値Tthの値を示す情報である。   As described above, the measurement time information 3041 is information for determining the upper limit value of the timer of the monitor unit 303. The threshold information 3043 is information indicating the value of the threshold Tth described above.

測定回数情報3042は、DVFS管理モジュール30がDVFS制御によるCPU10の電力状態をCPU10にフィードバックする頻度を決定する情報である。具体的には、DVFS管理モジュール30は、測定回数情報3042に設定された測定回数分の電力量の算出と累計が完了したら、CPU10に対して電力算出の完了を通知する。したがって、測定回数情報3042に設定される測定回数の値が小さいほどCPU10にフィードバックする頻度が上がる。   The measurement frequency information 3042 is information for determining how often the DVFS management module 30 feeds back the power state of the CPU 10 under the DVFS control to the CPU 10. Specifically, the DVFS management module 30 notifies the CPU 10 of the completion of power calculation when the calculation and accumulation of the amount of power for the number of times set in the measurement number information 3042 is completed. Therefore, the smaller the value of the number of measurements set in the number-of-measurements information 3042, the higher the frequency of feedback to the CPU 10.

単位電力量テーブル3044は、DVFS制御によるCPU10の周波数設定毎の単位時間あたりの消費電力量がCPU10の動作状態毎に格納されたルックアップテーブルである。当該デーブルの詳細は後述する。   The unit power amount table 3044 is a look-up table in which the power consumption amount per unit time for each frequency setting of the CPU 10 by DVFS control is stored for each operation state of the CPU 10. Details of the table will be described later.

処理時間比テーブル3045は、実動作時の動作周波数でのCPU10のデータ処理能力と、想定動作時の動作周波数でのCPU10のデータ処理能力との比に応じた処理時間比の値が格納されるルックアップテーブルである。当該テーブルの詳細は後述する。   The processing time ratio table 3045 stores the value of the processing time ratio according to the ratio between the data processing capability of the CPU 10 at the operating frequency during actual operation and the data processing capability of the CPU 10 at the operating frequency during assumed operation. Lookup table. Details of the table will be described later.

電力差分生成部305は、与えられた複数の電力量のデータのうち最も小さい電力量を検出し、検出した電力量と前記複数の電力量との差分を表す差分電力量を、実動作時及び想定動作時の周波数設定毎に生成し、累計部306に出力する。具体的には、電力差分生成部305は、比較部3051と差分算出部3052とを有する。例えば、比較部3051は、演算部303から与えられた実電力量3031及び想定電力量3032〜3034のうち最も小さい電力量(最小電力量)を検出する。差分算出部3052は、前記最小電力量と実電力量3031との差分を表す実動作時の差分電力量3053と、前記最小電力量と想定電力量3032との差分を表す想定動作時(f1)の差分電力量3054と、前記最小電力量と想定電力量3033との差分を表す想定動作時(f2)の差分電力量3055と、前記最小電力量と想定電力量3034との差分を表す想定動作時(f3)の差分電力量3056と、を生成する。差分電力量3053〜3056を生成する処理は、演算部303から実電力量及び想定電力量が出力される毎(CPU10の動作状態が変化する毎又は所定期間が経過する毎)に行われる。   The power difference generation unit 305 detects the smallest power amount among the plurality of given power amount data, and calculates the difference power amount representing the difference between the detected power amount and the plurality of power amounts at the time of actual operation and It is generated for each frequency setting during the assumed operation and is output to the accumulating unit 306. Specifically, the power difference generation unit 305 includes a comparison unit 3051 and a difference calculation unit 3052. For example, the comparison unit 3051 detects the smallest power amount (minimum power amount) among the actual power amount 3031 and the assumed power amount 3032 to 3034 given from the calculation unit 303. The difference calculation unit 3052 has a difference power amount 3053 during actual operation that represents the difference between the minimum power amount and the actual power amount 3031 and an assumed operation time (f1) that represents the difference between the minimum power amount and the assumed power amount 3032. Difference power amount 3054, difference power amount 3055 in the assumed operation (f2) representing the difference between the minimum power amount and the assumed power amount 3033, and assumed operation representing the difference between the minimum power amount and the assumed power amount 3034 Difference electric energy 3056 of time (f3) is generated. The process of generating the difference power amounts 3053 to 3056 is performed every time the actual power amount and the assumed power amount are output from the calculation unit 303 (every time the operation state of the CPU 10 changes or every predetermined period elapses).

更に、前記電力差分生成部305は、CPU10の動作状態が変化する毎又は所定期間が経過する毎に生成された差分電力量3053〜3056を累積加算することにより、実動作時の累積差分電力量の差分の情報3065と、想定動作時の累積差分電力量の差分の情報3066〜3068を生成し、累計部306に出力する。なお、累積差分電力量の差分の情報3065〜3068の詳細な生成方法については後述する。   Further, the power difference generation unit 305 cumulatively adds the difference power amounts 3053 to 3056 generated every time the operation state of the CPU 10 changes or a predetermined period elapses, so that the accumulated difference power amount during actual operation is obtained. Difference information 3065 and accumulated difference power amount difference information 3066 to 3068 during the assumed operation are generated and output to the accumulation unit 306. Note that a detailed method for generating the difference information 3065 to 3068 of the accumulated difference power amount will be described later.

累計部306は、累計電力格納部3062、通知部3063、及びカウンタ3064を有する。累計電力格納部3062は、累積差分電力量の差分の情報3065〜3068を実動作時及び想定動作時の周波数設定毎に格納するための記憶領域を有する。   The accumulating unit 306 includes an accumulated power storage unit 3062, a notification unit 3063, and a counter 3064. The accumulated power storage unit 3062 includes a storage area for storing accumulated difference power amount difference information 3065 to 3068 for each frequency setting during actual operation and assumed operation.

カウンタ3064は、差分電力量3053〜3056を累積加算した回数をカウントし、カウント値を通知部3063に与える。前記通知部3063は、カウンタ3064のカウント値が基礎データ部304に測定回数情報3042として設定された回数の値と一致したら、CPU10に対して電力量の算出が完了したことを通知する。通知を受けたCPU10は、累計電力格納部3062にアクセスして算出された実電力量と想定電力量とを参照し、より低消費電力となる周波数設定を判別することで、現状のCPU10の動作周波数の設定が電力的に最適であるか否かを判断する。   The counter 3064 counts the number of times the difference power amounts 3053 to 3056 are cumulatively added, and gives the count value to the notification unit 3063. When the count value of the counter 3064 matches the value of the number of times set as the number-of-times information 3042 in the basic data unit 304, the notification unit 3063 notifies the CPU 10 that the calculation of the electric energy has been completed. The CPU 10 that has received the notification refers to the actual power amount calculated by accessing the cumulative power storage unit 3062 and the assumed power amount, and determines the frequency setting that results in lower power consumption. It is determined whether the frequency setting is optimal in terms of power.

≪電力量の算出≫
前記実電力量と前記想定電力量の算出方法について詳細に説明する。
≪Calculation of electric energy≫
A method of calculating the actual power amount and the assumed power amount will be described in detail.

(1)実電力量の算出方法
前記実電力量は、CPU10の実動作時の動作状態における単位時間あたりの消費電力量と、その動作状態の継続時間Tcとを乗算することにより算出される。演算部303は、先ず、モニタ部302から前記要素プロファイルを受け取ると、基礎データ部304にアクセスし、単位電力量テーブル3044を参照してCPUステータス情報3021及びDVFSステータス情報3022に対応する単位時間あたりの消費電力量を読み出す。
(1) Calculation method of actual power amount The actual power amount is calculated by multiplying the power consumption amount per unit time in the operation state during the actual operation of the CPU 10 by the duration time Tc of the operation state. First, upon receiving the element profile from the monitor unit 302, the calculation unit 303 accesses the basic data unit 304 and refers to the unit power amount table 3044 per unit time corresponding to the CPU status information 3021 and the DVFS status information 3022. Read the power consumption of.

図2は、単位電力量テーブル3044の一例を示す説明図である。同図に示されるように、単位電力量テーブル3044は、DVFS制御によって設定可能なCPU10の周波数毎の単位時間あたりの消費電力量がCPU10の動作状態毎に格納される。同図には、一例として、3つの周波数設定(f1〜f3)における3つの動作状態(アクティブ状態、スリープ状態、及びスタンバイ状態)毎の単位時間あたりの消費電力が示されている。例えば、図2に示されるように、実動作時のCPU10の動作状態がアクティブ状態であり、且つ動作周波数が第1周波数である場合には、演算部303はパラメータPA1を読み出す。また、実動作時のCPU10の動作状態がスリープ状態であり、且つ動作周波数が第2周波数である場合には、演算部303はパラメータPS2を読み出す。   FIG. 2 is an explanatory diagram illustrating an example of the unit power amount table 3044. As shown in the figure, the unit power amount table 3044 stores the power consumption per unit time for each frequency of the CPU 10 that can be set by the DVFS control for each operation state of the CPU 10. In the figure, as an example, power consumption per unit time for each of three operation states (active state, sleep state, and standby state) at three frequency settings (f1 to f3) is shown. For example, as illustrated in FIG. 2, when the operation state of the CPU 10 during the actual operation is an active state and the operation frequency is the first frequency, the calculation unit 303 reads the parameter PA1. Further, when the operation state of the CPU 10 during the actual operation is the sleep state and the operation frequency is the second frequency, the calculation unit 303 reads the parameter PS2.

演算部303は、読み出した消費電力量のパラメータと継続時間情報3023に含まれる継続時間Tcとを乗算することで実電力量を算出する。すなわち、実電力量Prは、式(Pr=Pn × Tc)で表される。なお、Pnは単位時間あたりの電力量(例えば、1mW/s等)であり、図2に示されるPA1〜PA3、PS1〜PS3、及びPB1〜PB3のパラメータのうちいずれかである。継続時間Tcは、前述したように、変化検出信号13が変化してから次に変化するまでの時間、又は前記所定期間を示す時間の情報であり、前記要素プロファイルの継続時間情報3023に含まれる。例えば、実動作時のCPU10の動作状態が期間4Tのスタンバイ状態であり、且つ動作周波数が第3周波数である場合には、実電力量Pr=Pn × Tc=PB3 × 4Tとなる。   The computing unit 303 calculates the actual power amount by multiplying the read power consumption parameter by the duration Tc included in the duration information 3023. That is, the actual power amount Pr is expressed by an equation (Pr = Pn × Tc). Note that Pn is the amount of power per unit time (for example, 1 mW / s) and is one of the parameters PA1 to PA3, PS1 to PS3, and PB1 to PB3 shown in FIG. As described above, the duration Tc is information on the time from when the change detection signal 13 changes to the next change or the time indicating the predetermined period, and is included in the duration information 3023 of the element profile. . For example, when the operation state of the CPU 10 during the actual operation is a standby state of the period 4T and the operation frequency is the third frequency, the actual electric energy Pr = Pn × Tc = PB3 × 4T.

(2)想定電力量の算出方法
前記想定電力量は、CPU10の想定動作時の動作状態における単位時間あたりの消費電力量と、その動作状態での換算時間Tvとを乗算することにより算出される。
(2) Calculation method of assumed electric energy The said assumed electric energy is calculated by multiplying the consumed electric energy per unit time in the operation state at the time of assumption operation | movement of CPU10, and conversion time Tv in the operation state. .

(i)アクティブ状態での想定電力量
はじめにCPUステータス情報3021がアクティブ状態である場合について説明する。
(I) Assumed power amount in active state First, the case where the CPU status information 3021 is in the active state will be described.

モニタ部302から受け取ったCPUステータス情報3021がアクティブ状態を示す情報である場合、演算部303は、処理時間比テーブル3045を基に換算時間Tvを算出するとともに、差時間ΔTを算出する。   When the CPU status information 3021 received from the monitor unit 302 is information indicating an active state, the calculation unit 303 calculates the conversion time Tv based on the processing time ratio table 3045 and calculates the difference time ΔT.

図3に処理時間比テーブルの一例を示す。同図に示されるように、処理時間比テーブル3045には、CPU10の実動作時の動作周波数でのデータ処理能力に対する想定動作時の動作周波数でのデータ処理能力を表す処理時間比が周波数設定毎に格納される。例えば、第1周波数f1=f、第2周波数f2=2f、第3周波数f3=4fとし、実動作時にCPU10が第1周波数f1で所定のデータ量のデータ処理を実行したときの処理時間を“1”とする。この場合、図3に示されるように、想定動作時の周波数が第1周波数f1であれば、実動作時と同じデータ処理を実行したときの処理時間比は“r11(=1)”となる。一方、想定動作時の周波数が第2周波数f2であれば、実動作時と同じデータ処理を実行したときの処理時間比は“r12(=0.5)”となり、想定動作時の周波数が第3周波数f3であれば、実動作時と同じデータ処理を実行したときの処理時間比は“r13(=0.25)”となる。したがって、想定動作時のアクティブ状態での換算時間Tvは、式(Tv=Tc × rn)で表される。ここで、rnはr11〜r13、r21〜r23、及びr31〜r33のうちいずれかのパラメータである。例えば、実動作時のCPU10の状態が第1周波数設定(f1)、且つ期間4Tのアクティブ状態であり、想定動作時の周波数設定が第3周波数設定(f3)である場合、換算時間Tvは、Tv=Tc × r13=4T × 0.25=1Tとなる。   FIG. 3 shows an example of the processing time ratio table. As shown in the figure, in the processing time ratio table 3045, the processing time ratio indicating the data processing capability at the operating frequency at the assumed operation to the data processing capability at the operating frequency at the actual operation of the CPU 10 is set for each frequency setting. Stored in For example, the first frequency f1 = f, the second frequency f2 = 2f, the third frequency f3 = 4f, and the processing time when the CPU 10 executes data processing of a predetermined amount of data at the first frequency f1 during actual operation is “ 1 ”. In this case, as shown in FIG. 3, if the frequency at the assumed operation is the first frequency f1, the processing time ratio when the same data processing as that at the actual operation is executed is “r11 (= 1)”. . On the other hand, if the frequency at the assumed operation is the second frequency f2, the processing time ratio when the same data processing as that at the actual operation is executed is “r12 (= 0.5)”, and the frequency at the assumed operation is the first frequency. If the frequency is 3 f3, the processing time ratio when the same data processing as in the actual operation is executed is “r13 (= 0.25)”. Therefore, the conversion time Tv in the active state at the time of the assumed operation is expressed by the equation (Tv = Tc × rn). Here, rn is any parameter among r11 to r13, r21 to r23, and r31 to r33. For example, when the state of the CPU 10 during the actual operation is the first frequency setting (f1) and the active state during the period 4T, and the frequency setting during the assumed operation is the third frequency setting (f3), the conversion time Tv is Tv = Tc × r13 = 4T × 0.25 = 1T.

演算部303は、単位電力量テーブル3044を参照して、想定した周波数設定と動作状態に対応する単位時間あたりの消費電力量のパラメータを読み出し、読み出したパラメータと算出した換算時間Tvとを乗算することで、想定電力量を算出する。すなわち、アクティブ状態での想定電力量Pfnは、式(Pfn=Pn × Tv)で表される。例えば、実動作時のCPU10の状態が第1周波数設定(f1)、且つ期間4Tのアクティブ状態であり、想定動作時の周波数設定が第3周波数設定(f3)である場合、想定電力量Pfn=PA3 × 1Tとなる。   The computing unit 303 refers to the unit power amount table 3044, reads out the parameter of the power consumption per unit time corresponding to the assumed frequency setting and the operating state, and multiplies the read parameter by the calculated conversion time Tv. Thus, the assumed power amount is calculated. That is, the assumed power amount Pfn in the active state is expressed by an expression (Pfn = Pn × Tv). For example, when the state of the CPU 10 during the actual operation is the first frequency setting (f1) and the active state for the period 4T, and the frequency setting during the assumed operation is the third frequency setting (f3), the assumed power consumption Pfn = PA3 × 1T.

上述したように、想定動作時におけるアクティブ状態での処理時間(換算時間Tv)は周波数設定によって変動するため、その変動分は次の動作状態の継続時間に影響を与える。そこで、演算部303は、実動作時のアクティブ状態の継続時間Tcと、対応する想定動作時の動作状態の換算時間Tvとの差分を表す差時間ΔTを算出する。   As described above, the processing time (converted time Tv) in the active state at the time of the assumed operation varies depending on the frequency setting. Therefore, the variation affects the duration of the next operation state. Therefore, the calculation unit 303 calculates a difference time ΔT that represents the difference between the active state duration Tc during actual operation and the corresponding operation state conversion time Tv during assumed operation.

CPUステータス情報3021がアクティブ状態である場合、差時間ΔTは、例えば、実動作時のアクティブ状態の継続時間Tcと対応する想定動作時のアクティブ状態の換算時間Tvとを減算した値に、その時点で累積されている差時間(以下、累積差時間、とも称する。)T0を加算することで算出される。すなわち、アクティブ状態での差時間ΔTは、式(ΔT=T0+Tc−Tv)で表される。例えば、実動作時のCPU10の状態が第1周波数設定、且つ期間4Tのアクティブ状態であり、想定動作時の周波数設定が第3周波数設定、且つ累積差時間T0=2Tである場合、差時間ΔTは、ΔT=2T+4T−1T=5Tとなる。   When the CPU status information 3021 is in the active state, the difference time ΔT is, for example, a value obtained by subtracting the duration Tc of the active state during actual operation and the corresponding conversion time Tv of the active state during assumed operation. Is calculated by adding the difference time accumulated in (hereinafter also referred to as accumulated difference time) T0. That is, the difference time ΔT in the active state is expressed by the equation (ΔT = T0 + Tc−Tv). For example, when the state of the CPU 10 during the actual operation is the first frequency setting and the active state during the period 4T, the frequency setting during the assumed operation is the third frequency setting, and the accumulated difference time T0 = 2T, the difference time ΔT ΔT = 2T + 4T-1T = 5T.

なお、前記差時間ΔTを算出する際、継続時間Tcから換算時間Tvを減算する方法に限らず、換算時間Tvから継続時間Tcを減算する方法でもよい。   When calculating the difference time ΔT, the method is not limited to the method of subtracting the converted time Tv from the continuous time Tc, but may be a method of subtracting the continuous time Tc from the converted time Tv.

(ii)非アクティブ状態での想定電力量
次に、CPUステータス情報3021が非アクティブ状態(スリープ状態又はスタンバイ状態)である場合について説明する。CPUステータス情報3021が非アクティブ状態である場合、演算部303は、累積差時間T0と、実動作時の継続時間Tcに基づいて換算時間Tvを算出する。
(Ii) Assumed power amount in inactive state Next, a case where the CPU status information 3021 is in an inactive state (sleep state or standby state) will be described. When the CPU status information 3021 is in an inactive state, the calculation unit 303 calculates a conversion time Tv based on the accumulated difference time T0 and the duration Tc during actual operation.

例えば、累積差時間T0と実動作時の継続時間Tcとを加算した値が“0”より小さいとき、演算部303は、換算時間Tv=0とし、差時間ΔTを式(ΔT=T0+Tc)で表す。一方、累積差時間T0と実動作時の継続時間Tcとを加算した値が“0”以上であるとき、演算部303は、換算時間Tvを式(Tv=T0+Tc)で表し、差時間ΔT=0とする。   For example, when the value obtained by adding the accumulated difference time T0 and the duration time Tc during actual operation is smaller than “0”, the calculation unit 303 sets the conversion time Tv = 0 and the difference time ΔT by the equation (ΔT = T0 + Tc). Represent. On the other hand, when the value obtained by adding the accumulated difference time T0 and the duration time Tc in actual operation is “0” or more, the calculation unit 303 represents the conversion time Tv by the equation (Tv = T0 + Tc), and the difference time ΔT = 0.

演算部303は、単位電力量テーブル3044を参照して、想定した周波数設定と動作状態に対応する単位時間あたりの消費電力量のパラメータを読み出し、読み出したパラメータと算出した換算時間Tvとを乗算することで非アクティブ状態での想定電力量を算出する。すなわち、非アクティブ状態での想定電力量Pfnは、式(Pfn=Pn × Tv)で算出される。   The computing unit 303 refers to the unit power amount table 3044, reads out the parameter of the power consumption per unit time corresponding to the assumed frequency setting and the operating state, and multiplies the read parameter by the calculated conversion time Tv. Thus, the assumed power amount in the inactive state is calculated. That is, the assumed power amount Pfn in the inactive state is calculated by the equation (Pfn = Pn × Tv).

次に、図4及び5を用いて前記実電力量と想定電力量の具体的な算出方法について説明する。   Next, a specific calculation method of the actual power amount and the assumed power amount will be described with reference to FIGS.

(3)実電力量と想定電力量の具体例(図4)
図4は、CPU10の実動作時と想定動作時との対応関係を表す説明図である。同図の(A)には、CPU10の実動作時の動作状態の変化と各動作状態における継続時間Tcが示される。同図の(B)には、CPU10の動作周波数を第1周波数(f1)とした想定動作時の動作状態の変化と各動作状態の換算時間Tvが示される。同図の(C)には、CPU10の動作周波数を第2周波数(f2)とした想定動作時の動作状態の変化と各動作状態の換算時間Tvが示される。同図の(D)には、CPU10の動作周波数を第3周波数(f3)とした想定動作時の動作状態の変化と各動作状態の換算時間Tvが示される。なお、同図を含めた以下の説明では、f1=f、f2=2f、f3=4fと仮定し、スタンバイ状態となる待機時間の閾値Tthを5Tとする。
(3) Specific examples of actual power consumption and assumed power consumption (Fig. 4)
FIG. 4 is an explanatory diagram illustrating a correspondence relationship between the actual operation and the assumed operation of the CPU 10. (A) of the figure shows the change in the operating state during the actual operation of the CPU 10 and the duration Tc in each operating state. (B) of the same figure shows the change of the operation state at the time of the assumed operation in which the operation frequency of the CPU 10 is the first frequency (f1) and the conversion time Tv of each operation state. (C) of the figure shows a change in the operation state at the time of the assumed operation with the operation frequency of the CPU 10 as the second frequency (f2) and a conversion time Tv of each operation state. (D) of the same figure shows the change of the operation state at the time of the assumed operation in which the operation frequency of the CPU 10 is the third frequency (f3) and the conversion time Tv of each operation state. In the following description including this figure, it is assumed that f1 = f, f2 = 2f, and f3 = 4f, and the standby time threshold value Tth for entering the standby state is 5T.

(i)実電力量
同図(A)に示されるように、実動作時のCPU10の動作状態が、スタンバイ状態400、アクティブ状態401、スリープ状態402、アクティブ状態403の順に変化し、夫々の継続時間Tcが5T、4T、4T、4Tであるとする。また、スタンバイ状態400におけるCPU10の動作周波数が第3周波数(f3)であり、それ以外の動作状態401〜403におけるCPU10の動作周波数が第1周波数(f1)であるとする。このとき、スタンバイ状態400の実電力量Pr_0=PB3 × 5T、アクティブ状態401の実電力量Pr_1=PA1 × 4T、スリープ状態402の実電力量Pr_2=PS1 × 4T、アクティブ状態403の実電力量Pr_3=PA1 × 4T、となる。
(I) Actual power amount As shown in FIG. 5A, the operation state of the CPU 10 during actual operation changes in the order of the standby state 400, the active state 401, the sleep state 402, and the active state 403, and continues for each. It is assumed that the time Tc is 5T, 4T, 4T, 4T. Further, it is assumed that the operating frequency of the CPU 10 in the standby state 400 is the third frequency (f3) and the operating frequency of the CPU 10 in the other operating states 401 to 403 is the first frequency (f1). At this time, the real power amount Pr_0 = PB3 × 5T in the standby state 400, the real power amount Pr_1 = PA1 × 4T in the active state 401, the real power amount Pr_2 = PS1 × 4T in the sleep state 402, and the real power amount Pr_3 in the active state 403 = PA1 × 4T.

想定動作時(図4の(B)〜(D))の動作状態は実動作時の動作状態と同様に変化するが、想定動作時の夫々の動作状態が継続する時間は、想定した動作周波数によって異なる。同図(B)〜(D)の夫々における想定電力量は以下となる。   The operation state at the time of the assumed operation ((B) to (D) in FIG. 4) changes in the same way as the operation state at the actual operation, but the time during which each operation state at the assumed operation continues is the assumed operation frequency. It depends on. The assumed electric energy in each of FIGS. (B) to (D) is as follows.

(ii)周波数設定f1の想定電力量
図4(B)に示されるように、スタンバイ状態400に対応する期間410は、CPU10がデータ処理を実行しないスタンバイ状態の期間である。そのため、累積差時間T0=0であるとすると、累積差時間T0と実動作時のスタンバイ状態400の継続時間Tc(=5T)とを加算した値が5Tとなり、0以上であるため、換算時間Tv=T0+Tc=5Tとなる。このとき、差時間ΔTは0となり、想定電力量Pf1_0=PB1 × 5Tとなる。
(Ii) Assumed electric energy of frequency setting f1 As shown in FIG. 4B, a period 410 corresponding to the standby state 400 is a standby state period in which the CPU 10 does not execute data processing. Therefore, assuming that the accumulated difference time T0 = 0, the value obtained by adding the accumulated difference time T0 and the duration time Tc (= 5T) of the standby state 400 during actual operation is 5T, which is 0 or more. Tv = T0 + Tc = 5T. At this time, the difference time ΔT is 0, and the assumed power amount Pf1_0 = PB1 × 5T.

次にアクティブ状態401に対応する期間411は、CPU10がデータ処理を実行可能なアクティブ状態の期間であり、周波数設定は実動作時の周波数設定(f1)と一致している。そのため、換算時間Tv=Tc × r11=4T × 1=4Tとなる。このとき、差時間ΔT=0となり、想定電力量Pf1_1=PA1 × 4Tとなる。   Next, a period 411 corresponding to the active state 401 is an active state period in which the CPU 10 can execute data processing, and the frequency setting coincides with the frequency setting (f1) in actual operation. Therefore, the conversion time Tv = Tc × r11 = 4T × 1 = 4T. At this time, the difference time ΔT = 0, and the assumed power amount Pf1_1 = PA1 × 4T.

以下、期間412、413の換算時間Tvも同様に算出することができ、期間412の想定電力量Pf1_2=PS1 × 4T、期間413の想定電力量Pf1_3=PA1 × 4T、となり、差時間ΔTはいずれも0となる。   Hereinafter, the conversion time Tv of the periods 412 and 413 can be calculated in the same manner, and the assumed power amount Pf1_2 = PS1 × 4T of the period 412 and the assumed power amount Pf1_3 = PA1 × 4T of the period 413 are obtained. Is also 0.

(iii)周波数設定f2の想定電力量
図4(C)に示されるように、スタンバイ状態400に対応する期間420は、CPU10がデータ処理を実行しないスタンバイ状態の期間である。そのため、累積差時間T0が0であるとすると、累積差時間T0と実動作時のスタンバイ状態400の継続時間Tc(=5T)とを加算した値が5Tとなり、0以上であるため、換算時間Tv=T0+Tc=5Tとなる。このとき差時間ΔTは0となり、想定電力量Pf2_0=PB2 × 5Tとなる。
(Iii) Assumed electric energy of frequency setting f2 As shown in FIG. 4C, the period 420 corresponding to the standby state 400 is a period of the standby state in which the CPU 10 does not execute data processing. Therefore, if the accumulated difference time T0 is 0, the value obtained by adding the accumulated difference time T0 and the duration time Tc (= 5T) of the standby state 400 during actual operation is 5T, which is 0 or more. Tv = T0 + Tc = 5T. At this time, the difference time ΔT is 0, and the assumed power amount Pf2 — 0 = PB2 × 5T.

アクティブ状態401に対応する期間421は、CPU10がデータ処理を実行可能なアクティブ状態の期間であり、周波数設定は周波数f2である。したがって、図3の処理時間比テーブル3045より、換算時間Tv=Tc × r12=4T × 0.5=2Tとなる。このとき、差時間ΔT=T0+Tc−Tv=0+4T−2T=2Tとなり、想定電力量Pf2_1=PA2 × 2Tとなる。   A period 421 corresponding to the active state 401 is an active period during which the CPU 10 can execute data processing, and the frequency setting is the frequency f2. Therefore, the conversion time Tv = Tc × r12 = 4T × 0.5 = 2T from the processing time ratio table 3045 in FIG. At this time, the difference time ΔT = T0 + Tc−Tv = 0 + 4T−2T = 2T, and the assumed power amount Pf2_1 = PA2 × 2T.

スリープ状態402に対応する期間422は、CPU10がデータ処理を実行しない非アクティブ状態での期間である。ここで、スリープ状態402の継続時間Tcは4Tであるが、その前の期間421が実動作時よりも短縮されているため、短縮された分の時間を非アクティブ状態の期間として割り当てることが可能となる。すなわち、累積差時間T0と実動作時のスリープ状態402の継続時間Tc(=4T)とを加算した値が6Tとなり、0以上であるため、換算時間Tv=T0+Tc=6Tとなる。この場合、非アクティブ状態の換算時間Tv(=6T)が前記閾値Tth(=5T)以上の値であるため、期間422はスタンバイ状態の期間となる。すなわち、演算部303は、前記期間422をスタンバイ状態が6T続く期間として想定電力量を算出する。したがって、想定電力量Pf2_2=PB2 × 6Tとなる。また、このときの差時間ΔTは0となる。   A period 422 corresponding to the sleep state 402 is a period in an inactive state in which the CPU 10 does not execute data processing. Here, the duration Tc of the sleep state 402 is 4T, but since the previous period 421 is shortened compared to the actual operation time, it is possible to allocate the reduced time as the period of the inactive state. It becomes. That is, the value obtained by adding the accumulated difference time T0 and the duration time Tc (= 4T) of the sleep state 402 during actual operation is 6T, which is 0 or more, so the conversion time Tv = T0 + Tc = 6T. In this case, since the conversion time Tv (= 6T) in the inactive state is equal to or longer than the threshold value Tth (= 5T), the period 422 is a period in the standby state. That is, the calculation unit 303 calculates the assumed power amount with the period 422 as a period in which the standby state continues for 6T. Therefore, the assumed power amount Pf2_2 = PB2 × 6T. Further, the difference time ΔT at this time is zero.

期間423の想定電力量も前記期間421と同様に算出することができ、期間423の想定電力量Pf2_3=PA2 × 2Tとなる。   The assumed power amount of the period 423 can be calculated in the same manner as the period 421, and the assumed power amount of the period 423 is Pf2_3 = PA2 × 2T.

(iv)周波数設定f3の想定電力量
図4(D)に示されるように、先ず、スタンバイ状態400に対応する期間430は、CPU10がデータ処理を実行しないスタンバイ状態の期間である。そのため、累積差時間T0=0であるとすると、累積差時間T0と実動作時のスタンバイ状態400の継続時間Tc(=5T)とを加算した値が5Tとなり、0以上であるため、換算時間Tv=T0+Tc=5Tとなる。このときの差時間ΔTは0となり、想定電力量Pf3_0=PB3 × 5Tとなる。
(Iv) Assumed electric energy of frequency setting f3 As shown in FIG. 4D, first, a period 430 corresponding to the standby state 400 is a period of a standby state in which the CPU 10 does not execute data processing. Therefore, assuming that the accumulated difference time T0 = 0, the value obtained by adding the accumulated difference time T0 and the duration time Tc (= 5T) of the standby state 400 during actual operation is 5T, which is 0 or more. Tv = T0 + Tc = 5T. The difference time ΔT at this time is 0, and the assumed power amount Pf3_0 = PB3 × 5T.

アクティブ状態401に対応する期間431は、CPU10がデータ処理を実行可能なアクティブ状態の期間であり、周波数設定は周波数f3である。そのため、処理時間比テーブル3045に従い、換算時間Tv=Tc × r13=4T × 0.25=1Tとなる。このとき、差時間ΔT=T0+Tc−Tv=0+4T−1T=3Tとなり、想定電力量Pf2_1=PA2 × 1Tとなる。   A period 431 corresponding to the active state 401 is an active state period in which the CPU 10 can execute data processing, and the frequency setting is the frequency f3. Therefore, according to the processing time ratio table 3045, the conversion time Tv = Tc × r13 = 4T × 0.25 = 1T. At this time, the difference time ΔT = T0 + Tc−Tv = 0 + 4T−1T = 3T, and the assumed power amount Pf2_1 = PA2 × 1T.

スリープ状態402に対応する期間432は、CPU10がデータ処理を実行しない非アクティブ状態での期間である。ここで、スリープ状態402の継続時間Tcは4Tであるが、その前の期間431が実動作時よりも短縮されているため、短縮された分の時間を非アクティブ状態の期間として割り当てることが可能となる。すなわち、累積差時間T0(=3T)と実動作時のスリープ状態402の継続時間Tc(=4T)とを加算した値が7Tとなり、0以上であるため、換算時間Tv=T0+Tc=7Tとなる。この場合、非アクティブ状態の換算時間Tv(=7T)が前記閾値Tth(=5T)以上の値であるため、期間432はスタンバイ状態の期間となる。すなわち、演算部303は、前記期間432をスタンバイ状態が7T続く期間として想定電力量を算出する。したがって、想定電力量Pf3_2=PB3 × 7Tとなる。また、このときの差時間ΔTは0となる。   A period 432 corresponding to the sleep state 402 is a period in an inactive state in which the CPU 10 does not execute data processing. Here, the duration Tc of the sleep state 402 is 4T, but since the previous period 431 is shorter than that during actual operation, the reduced time can be assigned as the period of the inactive state. It becomes. That is, the value obtained by adding the cumulative difference time T0 (= 3T) and the duration time Tc (= 4T) of the sleep state 402 during actual operation is 7T, which is 0 or more, and therefore the conversion time Tv = T0 + Tc = 7T. . In this case, since the conversion time Tv (= 7T) in the inactive state is equal to or greater than the threshold value Tth (= 5T), the period 432 is a period in the standby state. That is, the calculation unit 303 calculates the assumed power amount with the period 432 as a period in which the standby state continues for 7T. Therefore, the assumed power amount Pf3_2 = PB3 × 7T. Further, the difference time ΔT at this time is zero.

期間433の想定電力量も前記期間431と同様に算出することができ、期間433の想定電力量Pf3_3=PA3 × 1Tとなる。   The estimated power amount of the period 433 can be calculated in the same manner as the period 431, and the assumed power amount of the period 433 is Pf3_3 = PA3 × 1T.

(4)実電力量と想定電力量の具体例(図5)
図5は、CPU10の実動作時と想定動作時との対応関係を表す別の説明図である。同図の(A)には、CPU10の実動作時の動作状態の変化と各動作状態の換算時間Tcが示される。同図の(B)には、CPU10の動作周波数を第1周波数(f1)とした想定動作時の動作状態の変化と各動作状態の換算時間Tvが示される。同図の(C)には、CPU10の動作周波数を第2周波数(f2)とした想定動作時の動作状態の変化と各動作状態の換算時間Tvが示される。同図の(D)には、CPU10の動作周波数を第3周波数(f3)とした想定動作時の動作状態の変化と各動作状態における継続時間Tvが示される。
(4) Specific examples of actual power consumption and assumed power consumption (Fig. 5)
FIG. 5 is another explanatory diagram showing a correspondence relationship between the actual operation and the assumed operation of the CPU 10. (A) of the same figure shows the change of the operation state during the actual operation of the CPU 10 and the conversion time Tc of each operation state. (B) of the same figure shows the change of the operation state at the time of the assumed operation in which the operation frequency of the CPU 10 is the first frequency (f1) and the conversion time Tv of each operation state. (C) of the figure shows a change in the operation state at the time of the assumed operation with the operation frequency of the CPU 10 as the second frequency (f2) and a conversion time Tv of each operation state. (D) of the figure shows the change of the operation state at the time of the assumed operation in which the operation frequency of the CPU 10 is the third frequency (f3) and the duration Tv in each operation state.

(i)実電力量
先ず、図5(A)に示されるように、実動作時のCPU10の動作状態が、スリープ状態500、アクティブ状態501、スタインバイ状態502、アクティブ状態503の順に変化し、夫々の継続時間が4T、2T、6T、2Tであるとする。また、スリープ状態500におけるCPU10の動作周波数は第1周波数(f1)であり、それ以外の動作状態501〜503におけるCPU10の動作周波数は第3周波数(f3)であるとする。このとき、スタンバイ状態500の実電力量Pr_0=PB1 × 4T、アクティブ状態501の実電力量Pr_1=PA3 × 2T、スリープ状態502の実電力量Pr_2=PS3 × 6T、アクティブ状態503の実電力量Pr_3=PA3 × 2T、となる。
(I) Actual power amount First, as shown in FIG. 5A, the operation state of the CPU 10 during actual operation changes in the order of sleep state 500, active state 501, stein-by state 502, and active state 503. Assume that the respective durations are 4T, 2T, 6T, and 2T. The operating frequency of the CPU 10 in the sleep state 500 is the first frequency (f1), and the operating frequency of the CPU 10 in the other operating states 501 to 503 is the third frequency (f3). At this time, the real power amount Pr_0 = PB1 × 4T in the standby state 500, the real power amount Pr_1 = PA3 × 2T in the active state 501, the real power amount Pr_2 = PS3 × 6T in the sleep state 502, and the real power amount Pr_3 in the active state 503 = PA3 × 2T.

同図(B)〜(D)の夫々における想定電力量は以下となる。   The assumed electric energy in each of FIGS. (B) to (D) is as follows.

(ii)周波数設定f1の想定電力量
図5(B)に示されるように、実動作時のスリープ状態500に対応する期間510は、CPU10がデータ処理を実行しないスリープ状態の期間である。したがって、累積差時間T0が0であるとすると、累積差時間T0と実動作時のスリープ状態500の継続時間Tc(=4T)とを加算した値が4Tとなり、0以上であるため、換算時間Tv=T0+Tc=4Tとなる。このときの差時間ΔTは0となり、想定電力量Pf1_0=PS1 × 4Tとなる。
(Ii) Assumed power consumption of frequency setting f1 As shown in FIG. 5B, a period 510 corresponding to the sleep state 500 during actual operation is a period of the sleep state in which the CPU 10 does not execute data processing. Therefore, if the accumulated difference time T0 is 0, the value obtained by adding the accumulated difference time T0 and the duration time Tc (= 4T) of the sleep state 500 during actual operation is 4T, which is 0 or more. Tv = T0 + Tc = 4T. The difference time ΔT at this time is 0, and the assumed power amount Pf1_0 = PS1 × 4T.

アクティブ状態501に対応する期間511は、CPU10がデータ処理を実行可能なアクティブ状態の期間であり、周波数設定は周波数f1である。したがって、図3の処理時間比テーブル3045より、換算時間Tv=Tc × r31=2T × 4=8Tとなる。このとき、差時間ΔT=T0+Tc−Tv=0+2T−8T=−6Tとなり、想定電力量Pf1_1=PA1 × 8Tとなる。   A period 511 corresponding to the active state 501 is an active state period in which the CPU 10 can execute data processing, and the frequency setting is the frequency f1. Therefore, the conversion time Tv = Tc × r31 = 2T × 4 = 8T from the processing time ratio table 3045 of FIG. At this time, the difference time ΔT = T0 + Tc−Tv = 0 + 2T−8T = −6T, and the assumed power amount Pf1_1 = PA1 × 8T.

スタンバイ状態502に対応する想定動作時の期間512は、CPU10がデータ処理を実行しない非アクティブ状態での期間である。このとき、スタンバイ状態502の継続時間Tcは6Tであるが、その前の期間511が実動作時よりも延長されるため、延長した分の時間と継続時間Tcが相殺され、非アクティブ状態の期間は割り当てられない。すなわち、累積差時間T0(=−6T)と実動作時のスリープ状態502の継続時間Tc(=6T)とを加算した値が0となるため、換算時間Tv=T0+Tc=0となる。その結果、アクティブ状態の期間511とその後のアクティブ状態の期間513が連続することになる。演算部303は、前記期間512をスタンバイ状態が0T続く期間として想定電力量を算出する。すなわち、想定電力量Pf1_2=0となる。また、このときの差時間ΔTは0となる。   A period 512 during an assumed operation corresponding to the standby state 502 is a period in an inactive state in which the CPU 10 does not execute data processing. At this time, the duration Tc of the standby state 502 is 6T. However, since the previous period 511 is extended as compared with the actual operation, the extended time and the duration Tc are offset, and the period of the inactive state Is not assigned. That is, since the value obtained by adding the accumulated difference time T0 (= −6T) and the duration time Tc (= 6T) of the sleep state 502 during actual operation is 0, the conversion time Tv = T0 + Tc = 0. As a result, the active period 511 and the subsequent active period 513 are continued. The calculation unit 303 calculates the assumed power amount with the period 512 as a period in which the standby state continues for 0T. That is, the assumed power amount Pf1_2 = 0. Further, the difference time ΔT at this time is zero.

期間513の想定電力量も前記期間511と同様に算出することができ、期間513の想定電力量Pf1_3=PA1 × 8Tとなる。   The assumed power amount of the period 513 can be calculated in the same manner as the period 511, and the assumed power amount Pf1_3 of the period 513 = PA1 × 8T.

(iii)周波数設定f2の想定電力量
図5(C)に示されるように、スタンバイ状態500に対応する期間520は、CPU10がデータ処理を実行しないスリープ状態の期間である。したがって、累積差時間T0=0であるとすると、累積差時間T0と実動作時のスリープ状態500の継続時間Tc(=4T)とを加算した値が4Tとなり、0以上であるため、換算時間Tv=T0+Tc=4Tとなる。このときの差時間ΔTは0となり、想定電力量Pf2_0=PS2 × 4Tとなる。
(Iii) Assumed power amount of frequency setting f2 As shown in FIG. 5C, a period 520 corresponding to the standby state 500 is a period of a sleep state in which the CPU 10 does not execute data processing. Therefore, assuming that the accumulated difference time T0 = 0, the value obtained by adding the accumulated difference time T0 and the duration time Tc (= 4T) of the sleep state 500 during actual operation is 4T, which is 0 or more. Tv = T0 + Tc = 4T. The difference time ΔT at this time is 0, and the assumed power amount Pf2_0 = PS2 × 4T.

アクティブ状態501に対応する期間521は、CPU10がデータ処理を実行可能なアクティブ状態の期間であり、周波数設定は周波数f2である。したがって、図3の処理時間比テーブル3045により、換算時間Tv=Tc × r32=2T × 2=4Tとなる。このとき、差時間ΔT=T0+Tc−Tv=0+2T−4T=−2Tとなり、想定電力量Pf2_1=PA2 × 4Tとなる。   A period 521 corresponding to the active state 501 is an active period during which the CPU 10 can execute data processing, and the frequency setting is the frequency f2. Therefore, the conversion time Tv = Tc × r32 = 2T × 2 = 4T is obtained from the processing time ratio table 3045 of FIG. At this time, the difference time ΔT = T0 + Tc−Tv = 0 + 2T−4T = −2T, and the assumed electric energy Pf2_1 = PA2 × 4T.

スタンバイ状態502に対応する期間522は、CPU10がデータ処理を実行しない非アクティブ状態での期間である。このとき、スタンバイ状態502の継続時間Tcは6Tであるが、その前の期間511が実動作時よりも延長されるため、延長した分だけ期間522の継続時間が短縮される。すなわち、累積差時間T0(=−2T)と実動作時のスリープ状態502の継続時間Tc(=6T)とを加算した値が4Tとなり、0以上であるため、換算時間Tv=T0+Tc=4Tとなる。この場合、非アクティブ状態の換算時間Tv(=4T)が前記閾値Tth(=5T)よりも小さい値であるため、期間522はスリープ状態の期間となる。すなわち、演算部303は、前記期間522をスリープ状態が4T続く期間として想定電力量を算出する。したがって、想定電力量Pf2_2=PS2 × 4Tとなる。また、このときの差時間ΔTは0となる。   A period 522 corresponding to the standby state 502 is a period in an inactive state in which the CPU 10 does not execute data processing. At this time, the duration Tc of the standby state 502 is 6T, but since the previous period 511 is extended as compared with the actual operation, the duration of the period 522 is shortened by the extended amount. That is, the value obtained by adding the accumulated difference time T0 (= −2T) and the continuation time Tc (= 6T) of the sleep state 502 at the time of actual operation is 4T, which is equal to or greater than 0, and therefore the conversion time Tv = T0 + Tc = 4T Become. In this case, since the conversion time Tv (= 4T) in the inactive state is smaller than the threshold value Tth (= 5T), the period 522 is a period in the sleep state. That is, the calculation unit 303 calculates the assumed power amount with the period 522 as a period in which the sleep state continues for 4T. Therefore, the assumed power amount Pf2_2 = PS2 × 4T. Further, the difference time ΔT at this time is zero.

期間523の想定電力量も前記期間521と同様に算出することができ、期間523の想定電力量Pf2_3=PA2 × 4Tとなる。   The assumed power amount of the period 523 can be calculated in the same manner as the period 521, and the assumed power amount Pf2_3 of the period 523 = PA2 × 4T.

(iv)周波数設定f3の想定電力量
図5(D)に示されるように、スタンバイ状態500に対応する期間530は、CPU10がデータ処理を実行しないスタンバイ状態の期間である。したがって、累積差時間T0=0であるとすると、累積差時間T0と実動作時のスタンバイ状態500の継続時間Tc(=5T)とを加算した値が5Tとなり、0以上であるため、換算時間Tv=T0+Tc=5Tとなる。このとき差時間ΔTは0となり、想定電力量Pf3_0=PB3 × 5Tとなる。
(Iv) Assumed electric energy of frequency setting f3 As shown in FIG. 5D, a period 530 corresponding to the standby state 500 is a period of the standby state in which the CPU 10 does not execute data processing. Therefore, if the accumulated time difference T0 = 0, the value obtained by adding the accumulated time difference T0 and the duration time Tc (= 5T) of the standby state 500 during actual operation is 5T, which is 0 or more. Tv = T0 + Tc = 5T. At this time, the difference time ΔT is 0, and the assumed power amount Pf3_0 = PB3 × 5T.

次にアクティブ状態501に対応する期間531は、CPU10がデータ処理を実行可能なアクティブ状態の期間であり、周波数設定は実動作時の周波数設定(f3)と一致している。したがって、図3の処理時間比テーブル3045より、換算時間Tv=Tc × r33=2T × 1=2Tとなる。このとき、差時間ΔT=2T−2T=0となり、想定電力量Pf3_1=PA3 × 2Tとなる。   Next, a period 531 corresponding to the active state 501 is an active period during which the CPU 10 can execute data processing, and the frequency setting matches the frequency setting (f3) in actual operation. Therefore, the conversion time Tv = Tc × r33 = 2T × 1 = 2T from the processing time ratio table 3045 of FIG. At this time, the difference time ΔT = 2T−2T = 0, and the assumed power amount Pf3_1 = PA3 × 2T.

以下、期間532、533の換算時間Tvも同様に算出することができ、期間532の想定電力量Pf3_2=PS3 × 6T、期間533の想定電力量Pf3_3=PA3 × 2T、となり、差時間ΔTはいずれも0となる。   Hereinafter, the conversion time Tv of the periods 532 and 533 can be calculated in the same manner. The assumed power amount Pf3_2 = PS3 × 6T in the period 532 and the assumed power amount Pf3_3 = PA3 × 2T in the period 533 are obtained, and the difference time ΔT is any Is also 0.

上記のように算出された実電力量と仮想電力量は、CPU10の動作状態が変化する毎又は所定期間が経過する毎(要素プロファイルが生成される毎)に算出され、電力差分生成部305に与えられる。例えば、図4の場合、先ず、スタンバイ状態400に対応する要素プロファイルが演算部303に与えられると、実電力量Pr_0、想定電力量Pf1_0、Pf2_0、及びPf3_0の第1のデータ群が生成され、前記第1のデータ群が電力差分生成部305に出力される。その後、アクティブ状態401に対応する要素プロファイルが演算部303に与えられると、実電力量Pr_1、想定電力量Pf1_1、Pf2_1、及びPf3_1の第2のデータ群が生成され、前記第2のデータ群が電力差分生成部305に与えられる。このように、要素プロファイル毎に電力量のデータ群が生成され、順次、電力差分生成部305に出力される。   The actual power amount and the virtual power amount calculated as described above are calculated every time the operating state of the CPU 10 changes or every time a predetermined period elapses (each time an element profile is generated). Given. For example, in the case of FIG. 4, first, when an element profile corresponding to the standby state 400 is given to the calculation unit 303, a first data group of the actual power amount Pr_0, the assumed power amount Pf1_0, Pf2_0, and Pf3_0 is generated. The first data group is output to the power difference generation unit 305. Thereafter, when an element profile corresponding to the active state 401 is given to the calculation unit 303, a second data group of the actual power amount Pr_1, the assumed power amount Pf1_1, Pf2_1, and Pf3_1 is generated, and the second data group is This is given to the power difference generation unit 305. In this way, a data group of power amount is generated for each element profile, and sequentially output to the power difference generation unit 305.

≪累積差分電力量の生成方法≫
累積差分電力量の生成方法について説明する。
≪Method for generating cumulative power difference≫
A method for generating the accumulated power difference will be described.

ここでは、一例として、前述の図4で生成された各電力量が電力差分生成部305に入力される場合を考える。なお、累計電力格納部3062の初期値は零であるとする。   Here, as an example, consider a case where each power amount generated in FIG. 4 described above is input to the power difference generation unit 305. It is assumed that the initial value of cumulative power storage unit 3062 is zero.

先ず、1回目の電力量のデータ群として、実電力量Pr_0、想定電力量Pf1_0、Pf2_0、及びPf3_0が電力差分生成部305に与えられると、比較部3051が、実電力量Pr_0、想定電力量Pf1_0、Pf2_0、及びPf3_0のうち、最も小さい電力量を検出する。差分算出部3052は、前記検出された最も小さい電力量と、実電力量Pr_0、想定電力量Pf1_0、Pf2_0、及びPf3_0の4つの電力量とに基づいて、差分電力量を生成する。例えば、想定電力量Pf1_0が最も小さい電力量である場合には、ΔPr_0(=Pr_0−Pf1_0)、ΔPf1_0(=Pf1_0−Pf1_0)、ΔPf2_0(=Pf2_0−Pf1_0)、及びΔPf3_0(=Pf3_0−Pf1_0)の4つの差分電力量を算出する。算出された差分電力量ΔPr_0、ΔPf1_0、ΔPf2_0、ΔPf3_0は、累計部306に与えられ、累計電力格納部3062に格納される。   First, when the actual power amount Pr_0, the assumed power amount Pf1_0, Pf2_0, and Pf3_0 are given to the power difference generation unit 305 as the first power amount data group, the comparison unit 3051 displays the actual power amount Pr_0 and the assumed power amount. The smallest electric energy is detected among Pf1_0, Pf2_0, and Pf3_0. The difference calculation unit 3052 generates a difference power amount based on the detected minimum power amount and the four power amounts of the actual power amount Pr_0, the assumed power amount Pf1_0, Pf2_0, and Pf3_0. For example, when the assumed power amount Pf1_0 is the smallest power amount, ΔPr_0 (= Pr_0−Pf1_0), ΔPf1_0 (= Pf1_0−Pf1_0), ΔPf2_0 (= Pf2_0−Pf1_0), and ΔPf3_0 (= Pf3_0−P) Four power differences are calculated. The calculated difference power amounts ΔPr_0, ΔPf1_0, ΔPf2_0, and ΔPf3_0 are given to the accumulation unit 306 and stored in the accumulation power storage unit 3062.

次に、2回目の電力量のデータ群として、実電力量Pr_1、想定電力量Pf1_1、Pf2_1、及びPf3_1が電力差分生成部305に与えられると、前述と同様に、比較部3051は最も小さい電力量を検出し、差分算出部3052が差分電力量を生成する。例えば、想定電力量Pr_1が最も小さい電力量である場合には、ΔPr_1(=Pr_1−Pr_1)、ΔPf1_1(=Pf1_1−Pr_1)、ΔPf2_1(=Pf2_1−Pr_1)、及びΔPf3_1(=Pf3_1−Pr_1)の4つの差分電力量を算出する。そして、電力差分生成部305は、既に累計電力格納部3062に格納されている差分電力量(ΔPr_0、ΔPf1_0、ΔPf2_0、及びΔPf3_0)と今回算出された差分電力量(ΔPr_1、ΔPf1_1、ΔPf2_1、及びΔPf3_1)とを実動作時及び想定動作時の周波数設定毎に加算し、累計電力格納部3062に格納する。例えば、差分算出部3052は、(ΔPr_0+ΔPr_1)と、(ΔPf1_0+Pf1_1)と、(ΔPf2_0−ΔPf2_1)と、(ΔPf3_0−ΔPf3_1)とを算出し、累計電力格納部3062の累積差分電力量の値を更新する。更新された累積差分電力量は、再度、比較部3051に与えられ、差分算出部3052が累積差分電力量の差分を生成する。例えば、4つの累積差分電力量のうち(ΔPf1_0+Pf1_1)が最も小さい電力量である場合には、差分生成部3052は、{(ΔPr_0+ΔPr_1)―(ΔPf1_0+Pf1_1)}、{(ΔPf1_0+ΔPf1_1)―(ΔPf1_0+Pf1_1)}、{(ΔPf2_0+ΔPf2_1)―(ΔPf1_0+Pf1_1)}、及び{(ΔPf3_0+ΔPf3_1)―(ΔPf1_0+Pf1_1)}の4つの累積差分電力量の差分を算出する。ここで、実動作時の累積差分電力量の差分3065は{(ΔPr_0+ΔPr_1)―(ΔPf1_0+Pf1_1)}であり、想定動作時(f1)の累積差分電力量の差分3066は、{(ΔPf1_0+ΔPf1_1)―(ΔPf1_0+Pf1_1)}であり、想定動作時(f2)の累積差分電力量の差分3067は{(ΔPf2_0+ΔPf2_1)―(ΔPf1_0+Pf1_1)}であり、想定動作時(f3)の累積差分電力量の差分3067は{(ΔPf3_0+ΔPf3_1)―(ΔPf1_0+Pf1_1)}である。これらの累積差分電力量の差分の情報は累計電力格納部3062に格納される。   Next, when the actual power amount Pr_1, the assumed power amount Pf1_1, Pf2_1, and Pf3_1 are given to the power difference generation unit 305 as the second power amount data group, the comparison unit 3051 has the smallest power as described above. The amount is detected, and the difference calculation unit 3052 generates a difference power amount. For example, when the assumed power amount Pr_1 is the smallest power amount, ΔPr_1 (= Pr_1-Pr_1), ΔPf1_1 (= Pf1_1-Pr_1), ΔPf2_1 (= Pf2_1-Pr_1), and ΔPf3_1 (= Pf3_1-Pr_1). Four power differences are calculated. Then, the power difference generation unit 305 includes the difference power amounts (ΔPr_0, ΔPf1_0, ΔPf2_0, and ΔPf3_0) that are already stored in the accumulated power storage unit 3062 and the difference power amounts calculated this time (ΔPr_1, ΔPf1_1, ΔPf2_1, and ΔPf3_1). ) Is added for each frequency setting during actual operation and assumed operation and stored in the accumulated power storage unit 3062. For example, the difference calculation unit 3052 calculates (ΔPr_0 + ΔPr_1), (ΔPf1_0 + Pf1_1), (ΔPf2_0−ΔPf2_1), and (ΔPf3_0−ΔPf3_1), and updates the value of the cumulative difference power amount of the cumulative power storage unit 3062. . The updated accumulated difference power amount is again provided to the comparison unit 3051, and the difference calculation unit 3052 generates a difference of the accumulated difference power amount. For example, when (ΔPf1_0 + Pf1_1) is the smallest power amount among the four accumulated differential power amounts, the difference generation unit 3052 uses {(ΔPr_0 + ΔPr_1) − (ΔPf1_0 + Pf1_1)}, {(ΔPf1_0 + ΔPf1_1) − (ΔPf1_0), (ΔPf1_0), The difference between the four accumulated differential power amounts of {(ΔPf2_0 + ΔPf2_1) − (ΔPf1_0 + Pf1_1)} and {(ΔPf3_0 + ΔPf3_1) − (ΔPf1_0 + Pf1_1)} is calculated. Here, the accumulated difference power amount difference 3065 during actual operation is {(ΔPr — 0 + ΔPr — 1) − (ΔPf1 — 0 + Pf1 — 1)}, and the accumulated difference power amount difference 3066 during assumed operation (f1) is {(ΔPf1 — 0 + ΔPf1 — 1) − (ΔPf1 — 0 + Pf1 — 1). )}, And the difference 3067 in the accumulated differential power amount during the assumed operation (f2) is {(ΔPf2 — 0 + ΔPf2 — 1) − (ΔPf1 — 0 + Pf1 — 1)}, and the difference 3067 in the accumulated differential power amount during the assumed operation (f3) is {(ΔPf3 — 0 + ΔPf3 — 1). ) − (ΔPf1_0 + Pf1_1)}. Information on the difference between these accumulated differential power amounts is stored in the accumulated power storage unit 3062.

以上のように、電力差分生成部305が差分電力の生成と累計を繰り返し実行することで、累計電力格納部3062には、CPU10の動作状態が変化する毎又は所定期間が経過する毎に、実動作時及び想定動作時の周波数毎の累積差分電力量の差分の情報3065〜3068が格納される。格納される累積差分電力量の差分の情報は、上記のように最も小さい電力量に対する電力量の差分を累積し、更にその差分をとった情報であるため、単に電力量を測定回数分だけ累積する場合に比べてデータ量を小さくすることができる。これにより、累計電力格納部3062の記憶領域の容量を小さくすることができるから、データ処理装置1のチップ面積の低減に資する。   As described above, the power difference generation unit 305 repeatedly generates and accumulates the difference power, so that the accumulated power storage unit 3062 has an actual value every time the operating state of the CPU 10 changes or every time a predetermined period elapses. The difference information 3065 to 3068 of the accumulated difference power amount for each frequency during the operation and the assumed operation is stored. The stored difference information of the accumulated difference power amount is information obtained by accumulating the difference of the electric energy with respect to the smallest electric energy as described above, and further taking the difference, so that the electric energy is simply accumulated for the number of times of measurement. The amount of data can be reduced as compared with the case of doing so. As a result, the capacity of the storage area of the cumulative power storage unit 3062 can be reduced, which contributes to a reduction in the chip area of the data processing apparatus 1.

≪実電力量と想定電力量の算出に係る処理フロー≫
図6は、DVFS管理モジュール30による実電力量と想定電力量の算出処理の流れの一例を示すフロー図である。
≪Process flow related to calculation of actual power consumption and assumed power consumption≫
FIG. 6 is a flowchart showing an example of the flow of processing for calculating the actual power amount and the assumed power amount by the DVFS management module 30.

データ処理装置1に電源が投入され、リセットが解除されると、実電力量と想定電力量の算出に係る処理が開始される。先ず、CPU10は、例えばROM等に格納された各種初期設定データを基礎データ部304に設定する(S101)。DVFS管理モジュール30は、CPU10のスリープ状態信号Vspやスタンバイ状態信号Vsb等を監視し、CPU10の動作状態の変化、又は所定期間が経過するまで待機する(S102)。DVFS管理モジュール30のモニタ部302は、CPU10の動作状態の変化又は所定期間の経過を検知すると、要素プロファイルを生成し、演算部303に出力する(S103)。その後、モニタ部302は、内部のタイマをリセットし、CPU10の動作状態の変化又は所定期間の経過を監視する(S104)。   When the data processing apparatus 1 is powered on and reset is released, processing related to the calculation of the actual power amount and the assumed power amount is started. First, the CPU 10 sets various initial setting data stored in, for example, a ROM or the like in the basic data unit 304 (S101). The DVFS management module 30 monitors the sleep state signal Vsp, the standby state signal Vsb, and the like of the CPU 10, and waits until a change in the operation state of the CPU 10 or a predetermined period elapses (S102). When the monitor unit 302 of the DVFS management module 30 detects a change in the operating state of the CPU 10 or the elapse of a predetermined period, the monitor unit 302 generates an element profile and outputs it to the computing unit 303 (S103). Thereafter, the monitor unit 302 resets the internal timer and monitors the change in the operating state of the CPU 10 or the elapse of a predetermined period (S104).

前記要素プロファイルを受けった演算部303は、実電力量の算出を開始する(S105)。演算部303は、単位電力量テーブル3044を参照し、受け取った前記要素プロファイルのCPUステータス情報3021及びDVFSステータス情報3022に対応する単位電力量のパラメータを取得する(S106)。そして、演算部303は、受け取った前記要素プロファイルの継続時間情報3023の継続時間Tcと、単位電力量のパラメータに基づいて実電力量を算出する(S107)。   Receiving the element profile, the calculation unit 303 starts calculating the actual power amount (S105). The computing unit 303 refers to the unit power amount table 3044, and acquires the unit power amount parameter corresponding to the received CPU status information 3021 and DVFS status information 3022 of the element profile (S106). Then, the computing unit 303 calculates the actual power amount based on the duration Tc of the received duration information 3023 of the element profile and the unit power amount parameter (S107).

次に、演算部303は、DVFS制御において設定可能な周波数f1、f2、・・・fn−1、fn(nは自然数)のうち、何れか1つの周波数設定での想定電力量の算出を開始する(S108)。演算部303は先ず、想定した周波数設定(例えばf1)での換算時間Tvを算出する(S109)。換算時間Tvの算出に係る処理フローについては、後で詳述する。次に演算部303は、想定した周波数設定(f1)での想定電力量を算出する(S110)。その後、ステップ108〜ステップ110までの処理を、想定した周波数設定f1〜fn毎に繰り返して実行し、各想定動作時の想定電力量を算出する。なお、実電力量と想定電力量の算出手順は特に制限されず、例えば、各想定動作時の想定電力量を算出するステップ108〜ステップ110を実行してから、実電力量を算出するステップ105〜ステップ107を実行する手順としてもよい。   Next, the calculation unit 303 starts calculating the assumed electric energy at any one of the frequencies f1, f2,... Fn−1, fn (n is a natural number) that can be set in the DVFS control. (S108). First, the calculation unit 303 calculates a conversion time Tv at an assumed frequency setting (for example, f1) (S109). The processing flow relating to the calculation of the conversion time Tv will be described in detail later. Next, the computing unit 303 calculates an assumed power amount at the assumed frequency setting (f1) (S110). Thereafter, the processing from step 108 to step 110 is repeatedly executed for each assumed frequency setting f1 to fn, and the assumed power amount at each assumed operation is calculated. Note that the calculation procedure of the actual power amount and the assumed power amount is not particularly limited. For example, Steps 108 to 110 for calculating the assumed power amount at each assumed operation are executed, and then Step 105 for calculating the actual power amount is performed. It is good also as a procedure which performs-step 107.

実電力量と想定電力量が算出されると、電力差分生成部305は、算出した実電力量と想定電力量のうち、最も小さい電力量を検出する(S111)。電力差分生成部305と累計部306は、前述した方法により、実動作時と想定動作時の周波数設定毎に累積差分電力量の差分の情報を生成し、累計電力格納部3062に格納する(S112)。その後、累積部306は、カウンタ3064をインクリメントする(S113)。通知部3063は、カウンタ3064のカウンタ値と測定回数情報3042の設定値とを比較する(S114)。比較の結果、カウンタ値が設定値よりも小さい場合には、ステップ102に移行し、次のCPU10の動作状態の変化、又は所定期間が経過を待って、実電力量及び想定電力量の算出を再度行う(S102〜S113)。一方、カウンタ値が設定値以上である場合には、通知部3063が、実電力量と想定電力量の算出が完了したことをCPU10に対して通知する(S115)。通知を受けたCPU10は、累計電力格納部3062にアクセスして算出された実電力量と想定電力量の情報とを参照し、より低消費電力となる周波数設定を判別し、必要に応じて周波数設定を変更する。   When the actual power amount and the assumed power amount are calculated, the power difference generation unit 305 detects the smallest power amount among the calculated actual power amount and the assumed power amount (S111). The power difference generation unit 305 and the accumulation unit 306 generate the difference information of the accumulated difference power amount for each frequency setting during the actual operation and the assumed operation by the method described above, and store the information in the accumulation power storage unit 3062 (S112). ). Thereafter, the accumulating unit 306 increments the counter 3064 (S113). The notification unit 3063 compares the counter value of the counter 3064 with the set value of the measurement count information 3042 (S114). As a result of the comparison, if the counter value is smaller than the set value, the process proceeds to step 102, and the calculation of the actual power amount and the assumed power amount is performed after the next change in the operating state of the CPU 10 or the predetermined period has elapsed. Perform again (S102 to S113). On the other hand, when the counter value is equal to or larger than the set value, the notification unit 3063 notifies the CPU 10 that the calculation of the actual power amount and the assumed power amount is completed (S115). Receiving the notification, the CPU 10 refers to the actual power amount calculated by accessing the cumulative power storage unit 3062 and the information on the assumed power amount, determines the frequency setting for lower power consumption, and determines the frequency as necessary. Change the setting.

次に、前述のステップ109の換算時間の算出処理について、図7を用いて詳細に説明する。   Next, the conversion time calculation process in step 109 will be described in detail with reference to FIG.

図7は、換算時間の算出処理の流れの一例を示す説明図である。   FIG. 7 is an explanatory diagram illustrating an example of the flow of conversion time calculation processing.

先ず、図6のステップ109において換算時間Tvの算出が開始されると、演算部303は、取得した要素プロファイルのCPUステータス情報3021を参照し、実動作時のCPU10の動作状態がアクティブ状態であるか否かを判別する(S201)。動作状態がアクティブ状態である場合、演算部303は、処理時間比テーブル3045を参照し、実動作時の周波数設定と想定している周波数設定とに対応する処理時間比のパラメータを取得する(S202)。演算部303は、式(Tv=Tc × rn)により、換算時間Tvを算出する(S203)。続いて、演算部303は、式(ΔT=T0 + Tc − Tv)により、差時間ΔTを算出する(S204)。   First, when calculation of the conversion time Tv is started in step 109 of FIG. 6, the calculation unit 303 refers to the CPU status information 3021 of the acquired element profile, and the operation state of the CPU 10 during the actual operation is an active state. Whether or not (S201). When the operation state is the active state, the calculation unit 303 refers to the processing time ratio table 3045, and acquires the processing time ratio parameter corresponding to the frequency setting at the actual operation and the assumed frequency setting (S202). ). The calculation unit 303 calculates the conversion time Tv by the equation (Tv = Tc × rn) (S203). Subsequently, the calculation unit 303 calculates a difference time ΔT by an equation (ΔT = T0 + Tc−Tv) (S204).

ステップ201において、動作状態がアクティブ状態でない場合、演算部303は、実動作時の継続時間Tcと累積差時間T0とを加算した値が0以上であるか否かを判別する(S205)。前記加算した値が0より小さい場合には、演算部303は、式(ΔT=T0 + Tc)により、差時間ΔTを算出する(S206)。続いて、演算部303は、換算時間Tv=0とする(S207)。すなわち、想定動作時の非アクティブ状態の期間が消滅したものとする。   In step 201, when the operation state is not the active state, the calculation unit 303 determines whether or not a value obtained by adding the duration time Tc during the actual operation and the accumulated difference time T0 is 0 or more (S205). When the added value is smaller than 0, the calculation unit 303 calculates the difference time ΔT by the equation (ΔT = T0 + Tc) (S206). Subsequently, the calculation unit 303 sets the conversion time Tv = 0 (S207). That is, it is assumed that the inactive period during the assumed operation has disappeared.

一方、ステップ205において、前記加算した値が0以上である場合には、演算部303は、式(Tv=Tc × rn)により、換算時間Tvを算出する(S208)。続いて演算部303は、差時間ΔT=0とする(S209)。次に、演算部303は、基礎データ部304から閾値情報3043(前記閾値Tth)を読み出す(S210)。演算部303は、読み出した閾値Tthとステップ208で算出した換算時間Tvを比較する(S211)。比較の結果、換算時間Tvが閾値Tth以上である場合には、演算部303は、想定動作時のCPU10の動作状態をスタンバイ状態と決定する(S212)。そうでない場合には、演算部303は、想定動作時のCPU10の動作状態をスリープ状態と決定する(S213)。   On the other hand, when the added value is equal to or greater than 0 in step 205, the calculation unit 303 calculates the conversion time Tv from the equation (Tv = Tc × rn) (S208). Subsequently, the calculation unit 303 sets the difference time ΔT = 0 (S209). Next, the calculation unit 303 reads threshold information 3043 (the threshold Tth) from the basic data unit 304 (S210). The calculation unit 303 compares the read threshold value Tth with the conversion time Tv calculated in step 208 (S211). As a result of the comparison, when the conversion time Tv is equal to or greater than the threshold value Tth, the calculation unit 303 determines the operation state of the CPU 10 during the assumed operation as the standby state (S212). Otherwise, the calculation unit 303 determines the operation state of the CPU 10 during the assumed operation as the sleep state (S213).

以上のステップ204、ステップ212、及びステップ213が完了すると、演算部303は、単位電力量テーブル3044を参照し、想定した周波数設定と想定した動作状態とに対応する単位電力量のパラメータを取得する(S212)。その後は、前述したステップ110に移行し、想定動作時の想定電力量の算出が行われる。   When the above step 204, step 212, and step 213 are completed, the calculation unit 303 refers to the unit power amount table 3044 and acquires the unit power amount parameter corresponding to the assumed frequency setting and the assumed operation state. (S212). Thereafter, the process proceeds to step 110 described above, and the calculation of the assumed power amount during the assumed operation is performed.

≪CPU10に対する実電力量と想定電力量のフィードバックの効果≫
前述したように、実電力量と想定電力量の算出完了の通知を受けたCPU10は、累計電力格納部3062にアクセスして算出された実電力量と想定電力量とを参照し、より低消費電力となる周波数設定を判別することで、必要に応じてCPU10の動作周波数の設定を変更する。
<< Effect of feedback of actual power amount and assumed power amount to CPU 10 >>
As described above, the CPU 10 that has received the notification of the completion of the calculation of the actual power amount and the assumed power amount refers to the actual power amount calculated by accessing the cumulative power storage unit 3062 and the assumed power amount, thereby reducing the power consumption. By determining the frequency setting for power, the setting of the operating frequency of the CPU 10 is changed as necessary.

図8は、本実施の形態に係るデータ処理装置1の動作タイミングの一例を示す説明図である。同図には、一例として、DVFS制御により周波数の設定が低速設定(低周波数設定)と高速設定(高周波数設定)との間で切り替え可能であるとし、DVFS管理モジュール30による実電力量と想定電力量の測定回数(累積回数)が4回である場合が示されている。また、同図の動作状態を示す波形において、ハイレベルである期間はCPU10がデータ処理を実行している期間を示し、ローレベルの期間はCPU10がデータ処理を行っていない期間を示す。   FIG. 8 is an explanatory diagram showing an example of operation timing of the data processing apparatus 1 according to the present embodiment. In the figure, as an example, it is assumed that the frequency setting can be switched between the low speed setting (low frequency setting) and the high speed setting (high frequency setting) by DVFS control, and the actual power amount by the DVFS management module 30 is assumed. The case where the number of times of measurement of electric energy (cumulative number) is 4 is shown. In the waveform showing the operation state of FIG. 6, the high level period indicates a period during which the CPU 10 is executing data processing, and the low level period indicates a period during which the CPU 10 is not performing data processing.

図8に示されるように、データ処理装置1は、スタンバイ状態信号Vsb及びスリープ状態信号Vspが変化する毎に実電力量と想定電力量を算出し、当該電力量の算出が4回完了する毎にCPU10に電力量の算出の完了を通知することで電力量のフィードバックを行う。以下、電力量の完了を通知するタイミングをフィードバックタイミングと称する。先ず、タイミングt0において、CPU10のデータ処理に係る負荷の状態が高負荷状態から低負荷状態に変化すると、CPU10はタイミングt1においてクロック信号の周波数を高速設定から低速設定に切り替えてデータ処理を行う。その後、フィードバックタイミングtf2において、DVFS管理モジュール30から4回分の電力量の算出が完了したことの通知を受けたCPU10は、累計電力格納部3062にアクセスして最も低消費電力となる周波数設定を判別し、その後の負荷状態を考慮した上で周波数設定を変更するか否か判断する。同図では、CPU10が現状の低速設定よりも高速設定の方が低消費電力となると判断し、タイミングt2において周波数設定を高速設定に変更する場合が一例として示されている。この場合、データ処理が低速設定の場合よりも短い時間で完了するため、1つのデータ処理から次のデータ処理までの待機時間が長くなり、スタンバイ状態に移行することが可能となる。同図では、タイミングt3において、CPU10はスタンバイ状態に移行し、スタンバイ状態信号Vsbがアサートされる場合が示されている。   As shown in FIG. 8, the data processing device 1 calculates the actual power amount and the assumed power amount each time the standby state signal Vsb and the sleep state signal Vsp change, and each time the calculation of the power amount is completed four times. The CPU 10 notifies the CPU 10 of the completion of the calculation of the power amount, thereby feeding back the power amount. Hereinafter, the timing for notifying the completion of the electric energy is referred to as feedback timing. First, when the load state related to the data processing of the CPU 10 changes from the high load state to the low load state at the timing t0, the CPU 10 performs the data processing by switching the frequency of the clock signal from the high speed setting to the low speed setting at the timing t1. After that, upon feedback timing tf2, the CPU 10 that has received notification from the DVFS management module 30 that the calculation of the amount of power for four times has been completed accesses the cumulative power storage unit 3062 to determine the frequency setting with the lowest power consumption. Then, it is determined whether or not to change the frequency setting in consideration of the subsequent load state. In the drawing, the case where the CPU 10 determines that the high speed setting consumes less power than the current low speed setting and changes the frequency setting to the high speed setting at the timing t2 is shown as an example. In this case, since the data processing is completed in a shorter time than in the case of the low speed setting, the waiting time from one data processing to the next data processing becomes longer, and it becomes possible to shift to the standby state. In the figure, the case where the CPU 10 shifts to the standby state and the standby state signal Vsb is asserted at the timing t3 is shown.

その後、フィードバックタイミングtf3において、DVFS管理モジュール30から通知を受けたCPU10は、再度、累計電力格納部3062にアクセスして最も低消費電力となる周波数設定を判別し、周波数設定を変更するか否か判断する。同図では、CPU10が現状の高速設定の方が低消費電力となると判断し、引き続き高速設定でCPU10が動作する場合が一例として示されている。その後、負荷状態が高負荷状態に変化してタイミングt4でデータ処理が開始されると、タイミングt5でそのデータ処理が完了し、スタンバイ状態に移行する。   Thereafter, at the feedback timing tf3, the CPU 10 that has received the notification from the DVFS management module 30 accesses the cumulative power storage unit 3062 again to determine the frequency setting with the lowest power consumption, and whether to change the frequency setting. to decide. In the figure, the case where the CPU 10 determines that the current high speed setting is lower in power consumption and the CPU 10 continues to operate at the high speed setting is shown as an example. Thereafter, when the load state changes to the high load state and data processing is started at timing t4, the data processing is completed at timing t5, and the state shifts to the standby state.

ここで、本実施の形態に係るデータ処理装置1の比較例として、実電力量と想定電力量のフィードバックを行わずにDVFS制御を行うデータ処理装置の動作タイミングの一例を図9に示す。   Here, as a comparative example of the data processing apparatus 1 according to the present embodiment, FIG. 9 illustrates an example of operation timing of the data processing apparatus that performs DVFS control without performing feedback of the actual power amount and the assumed power amount.

同図に示されるように、タイミングt0においてCPUのデータ処理に係る負荷の状態が高負荷状態から低負荷状態に変化すると、CPUはタイミングt1において、クロック信号の周波数を高速設定から低速設定に切り替えてデータ処理を行う。比較例に係るデータ処理装置のCPUは、実電力量と想定電力量に基づくフィードバック制御を行わないため、負荷状態が変化するまで周波数設定を変更しない。その結果、次に負荷状態が変化するタイミングt4まで、CPUは低速設定で動作する。この場合、データ処理に要する時間が高速設定の場合よりも長くなるため、1つのデータ処理と次のデータ処理との間の待機時間が短くなり、CPUはスタンバイ状態に移行することができない。そのため、CPUではアクティブ状態とスリープ状態との間で動作状態が交互に切り替わることになる。その後、タイミングt4でデータ処理に係る負荷が低負荷状態から高負荷状態に変化するが、CPUはすぐに高速設定に切り替わることができず、低速設定のままデータ処理を行う。そして、データ処理が完了する直前のタイミングt6で高速設定に切り替わり、そのデータ処理が完了すると、CPUはスリープ状態に移行する。   As shown in the figure, when the load state related to the data processing of the CPU changes from the high load state to the low load state at the timing t0, the CPU switches the frequency of the clock signal from the high speed setting to the low speed setting at the timing t1. Data processing. Since the CPU of the data processing device according to the comparative example does not perform feedback control based on the actual power amount and the assumed power amount, the CPU does not change the frequency setting until the load state changes. As a result, the CPU operates at the low speed setting until the next timing t4 when the load state changes. In this case, since the time required for data processing becomes longer than in the case of the high-speed setting, the waiting time between one data processing and the next data processing is shortened, and the CPU cannot shift to the standby state. Therefore, in the CPU, the operation state is alternately switched between the active state and the sleep state. Thereafter, the load related to data processing changes from the low load state to the high load state at timing t4, but the CPU cannot immediately switch to the high speed setting, and performs the data processing with the low speed setting. Then, at timing t6 immediately before the completion of data processing, the setting is switched to the high speed setting. When the data processing is completed, the CPU shifts to a sleep state.

図10は、データ処理装置1と比較例に係るデータ処理装置の電力特性を示す説明図である。同図において、実線で示される特性501は図8に示した本実施の形態に係るデータ処理装置1の消費電力量を示し、破線で示される特性502は図9に示した比較例のデータ処理装置1の消費電力量を示す。同図に示されるタイミングt0〜t5は、図8及び図9のタイミングt0〜t5に対応される。   FIG. 10 is an explanatory diagram illustrating power characteristics of the data processing device 1 and the data processing device according to the comparative example. In the figure, a characteristic 501 indicated by a solid line indicates the power consumption of the data processing apparatus 1 according to the present embodiment shown in FIG. 8, and a characteristic 502 indicated by a broken line indicates the data processing of the comparative example shown in FIG. The power consumption of the apparatus 1 is shown. Timings t0 to t5 shown in the figure correspond to timings t0 to t5 in FIGS.

同図に示されるように、タイミングt2までは、どちらのデータ処理装置も同様にDVFS制御が行われるため、同一の消費電力となる。比較例に係るデータ処理装置は、その後も低速設定で動作し、スリープ状態とアクティブ状態を繰り返すため消費電力は緩やかに増加する。それに対し、本実施の形態に係るデータ処理装置1は、タイミングt2において高速設定に切り替わる。これにより、1つのデータ処理と次のデータ処理との間の待機時間が長くなるため、タイミングt3においてCPU10はスタンバイ状態に移行でき、消費電力が抑えられる。その後、タイミングt4において、データ処理に係る負荷の状態が低負荷状態から高負荷状態に変化すると、データ処理装置1に係るCPU10は高速設定であるためタイミングt5においてデータ処理が完了し、その後は再びスタンバイ状態となる。この結果、消費電力の増加が抑えられる。一方、比較例に係るデータ処理装置では、タイミングt4でCPUの負荷状態が低負荷状態から高負荷状態に変化した後も、すぐには高速設定には切り替わることができず、CPUは低速設定のままタイミングt6までデータ処理を行う。その間、消費電力は抑えられるがデータ処理に要する時間が長くなる。その後、データ処理が完了する直前のタイミングt6で高速設定に切り替わり、消費電力が増加する。データ処理完了後も、CPUはスタンバイ状態ではなくスリープ状態に移行するため、消費電力が緩やかに増加する。   As shown in the figure, since the DVFS control is similarly performed in both data processing apparatuses until the timing t2, the power consumption is the same. Since the data processing apparatus according to the comparative example continues to operate at a low speed setting and repeats the sleep state and the active state, the power consumption gradually increases. On the other hand, the data processing device 1 according to the present embodiment switches to the high speed setting at the timing t2. As a result, the standby time between one data process and the next data process becomes long, so that the CPU 10 can shift to the standby state at the timing t3, and the power consumption is suppressed. After that, when the load state related to the data processing changes from the low load state to the high load state at timing t4, the data processing is completed at timing t5 because the CPU 10 related to the data processing device 1 is set at high speed, and then again. It will be in a standby state. As a result, an increase in power consumption can be suppressed. On the other hand, in the data processing apparatus according to the comparative example, even after the load state of the CPU changes from the low load state to the high load state at timing t4, the CPU cannot immediately switch to the high speed setting, and the CPU is set to the low speed setting. Data processing is performed until timing t6. During this time, power consumption can be suppressed, but the time required for data processing becomes longer. Thereafter, at time t6 immediately before the completion of data processing, the setting is switched to the high speed setting, and the power consumption increases. Even after the data processing is completed, the CPU shifts to the sleep state instead of the standby state, so that the power consumption gradually increases.

以上のように、高速設定でデータ処理を短時間で終了し、その後スタンバイ状態で待機したデータ処理装置1の方が、比較例に係るデータ処理装置よりも低消費電力になる場合がある。   As described above, the data processing apparatus 1 that finishes data processing in a short time with the high-speed setting and then waits in the standby state may consume less power than the data processing apparatus according to the comparative example.

以上、本実施の形態に係るデータ処理装置1によれば、CPU10のデータ処理に係る負荷の状態だけでなく、前記実電力量と前記想定電力量も演算するから、現状のCPU10の動作周波数の設定が電力的に最適であるか否かを判別することができる。これにより、データ処理装置1は、より低消費電力となる周波数設定に変更することが可能となり、従来のDVFS制御のみを行うデータ処理装置に比べて、消費電力の更なる低減を図ることができる。   As described above, according to the data processing device 1 according to the present embodiment, not only the load state related to the data processing of the CPU 10 but also the actual power amount and the assumed power amount are calculated. It can be determined whether the setting is optimal in terms of power. As a result, the data processing device 1 can be changed to a frequency setting with lower power consumption, and the power consumption can be further reduced as compared with a data processing device that performs only conventional DVFS control. .

以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。   Although the invention made by the present inventor has been specifically described based on the embodiments, it is needless to say that the present invention is not limited thereto and can be variously modified without departing from the gist thereof.

例えば、演算部303がDSPによって構成される場合を示したが、実電力量と想定電力量を算出することができれば、専用のロジック回路で構成することも可能である。また、図8及び図10説明では、測定回数を4回とし、4回の電力量の算出が完了する毎にCPU10に通知する場合を一例として示したが、これに限られず、必要に応じて測定回数を増やしてもよいし、減らしてもよい。また、CPU10のデータ処理の状態に応じて測定回数を変更してもよい。例えば、CPU10によるデータ処理が一定間隔で継続的に行われるような状況では周波数設定を変更する必要性が低いので、測定回数を増やすことで電力量のフィードバックの頻度を低くし、DVFS制御によるCPU10の負荷を低減させる。その後、上記の状況から脱したら、測定回数を減らすことで電力量のフィードバックの頻度を高くし、CPU10の電力状態に応じた周波数設定の変更をし易くする。   For example, although the case where the arithmetic unit 303 is configured by a DSP has been shown, if the actual power amount and the assumed power amount can be calculated, the arithmetic unit 303 can also be configured by a dedicated logic circuit. Further, in the description of FIG. 8 and FIG. 10, the case where the number of times of measurement is four and the CPU 10 is notified every time the calculation of the power amount of four times is completed is shown as an example. The number of measurements may be increased or decreased. Further, the number of measurements may be changed according to the data processing state of the CPU 10. For example, in a situation where data processing by the CPU 10 is continuously performed at regular intervals, it is less necessary to change the frequency setting. Therefore, the frequency of power feedback is reduced by increasing the number of measurements, and the CPU 10 is controlled by DVFS. Reduce the load. Thereafter, when the above situation is avoided, the frequency of power feedback is increased by reducing the number of measurements, and the frequency setting according to the power state of the CPU 10 can be easily changed.

また、累計電力格納部3062に格納される情報は、CPU10が低消費電力となる周波数設定を判別することができる情報であればよく、前記累積差分電力量の差分の情報に限られない。例えば、累計電力格納部3062の記憶領域の容量の増大が許容できるのであれば、差分算出部3052によって差分を算出せずに、実電力量3031及び想定電力量3032〜3034を測定回数分だけ累積加算した情報を、実動作時及び想定動作時の周波数設定毎に格納してもよい。また、例えば、差分算出部3052によって算出された差分電力量3053〜3056を、実動作時及び想定動作時の周波数設定毎に測定回数分だけ累積加算し、累積加算した実動作時の差分電力量と、想定動作時の周波数設定毎の累積加算した差分電力量とを累計電力格納部3062に格納する。これによれば、実電力量3031及び想定電力量3032〜3034を単に累積加算して格納する場合に比べてデータ量を小さくすることができるから、累計電力格納部3062の記憶領域の容量を小さくすることができる。また、前述の累積差分電力量の差分を算出する方法に比べて処理が容易となる。   The information stored in the accumulated power storage unit 3062 may be information that allows the CPU 10 to determine the frequency setting at which the power consumption is low, and is not limited to the difference information of the accumulated difference power amount. For example, if an increase in the capacity of the storage area of the cumulative power storage unit 3062 is allowable, the difference calculation unit 3052 does not calculate the difference, and accumulates the actual power amount 3031 and the assumed power amount 3032 to 3034 by the number of times of measurement. The added information may be stored for each frequency setting during actual operation and assumed operation. Further, for example, the difference power amount 3053 to 3056 calculated by the difference calculation unit 3052 is cumulatively added for the number of times of measurement for each frequency setting at the time of actual operation and assumed operation, and the difference power amount at the time of actual operation obtained by cumulative addition. And the accumulated difference power amount for each frequency setting during the assumed operation is stored in the accumulated power storage unit 3062. According to this, since the amount of data can be reduced as compared with the case where the actual power amount 3031 and the assumed power amount 3032 to 3034 are simply accumulated and stored, the capacity of the storage area of the cumulative power storage unit 3062 can be reduced. can do. Further, the processing becomes easier as compared with the above-described method for calculating the difference between the accumulated differential power amounts.

100 データ処理システム
1 データ処理装置
2 電源IC
3 外部メモリ
4 水晶発振器
10 CPU
20 クロック信号生成部(CPG)
11、12 制御信号
VDD 電源電圧
CLK クロック信号
30 DVFS管理モジュール
301 検出部
3011 スリープ状態変化検出部
3012 スタンバイ状態変化検出部
3013 クロック信号変化検出部
Vsp スリープ状態信号
Vsb スタンバイ状態信号
Vsc クロック状態信号
13 変化検出信号
302 モニタ部
3021 CPUステータス情報
3022 DVFSステータス情報
3023 継続時間情報
303 演算部
3031 実電力量
3032〜3034 想定電力量
3035〜3037 差時間
304 基礎データ部
3041 測定時間情報
3042 測定回数情報
3043 閾値情報
3044 単位電力量テーブル
3045 処理時間比テーブル
305 電力差分生成部
3051 比較部
3052 差分算出部
3053〜3056 差分電力量
306 累計部
3062 累計電力格納部
3063 通知部
3064 カウンタ
3065〜3068 累積差分電力量の差分
400〜403、500〜503 実動作時の動作状態の期間
410〜413、510〜513 想定動作時(周波数f1)の動作状態の期間
420〜423、520〜523 想定動作時(周波数f2)の動作状態の期間
430〜433、530〜533 想定動作時(周波数f3)の動作状態の期間
t0〜t5 タイミング
tf1〜tf3 フィードバックタイミング
501 データ処理装置1の電力特性
502 比較例に係るデータ処理装置の電力特性
100 Data processing system 1 Data processing device 2 Power supply IC
3 External memory 4 Crystal oscillator 10 CPU
20 Clock signal generator (CPG)
11, 12 Control signal VDD Power supply voltage CLK Clock signal 30 DVFS management module 301 Detection unit 3011 Sleep state change detection unit 3012 Standby state change detection unit 3013 Clock signal change detection unit Vsp Sleep state signal Vsb Standby state signal Vsc Clock state signal 13 Change Detection signal 302 Monitor unit 3021 CPU status information 3022 DVFS status information 3023 Duration information 303 Calculation unit 3031 Actual power amount 3032-3034 Estimated power amount 3035-3037 Difference time 304 Basic data unit 3041 Measurement time information 3042 Measurement frequency information 3043 Threshold information 3044 Unit power amount table 3045 Processing time ratio table 305 Power difference generation unit 3051 Comparison unit 3052 Difference calculation unit 3053-30 56 Difference power amount 306 Accumulation unit 3062 Accumulated power storage unit 3063 Notification unit 3064 Counter 3065 to 3068 Difference of accumulated difference energy amount 400 to 403, 500 to 503 Period of operation state in actual operation 410 to 413, 510 to 513 Assumed operation Period of operation state at time (frequency f1) 420 to 423, 520 to 523 Period of operation state at assumed operation (frequency f2) 430 to 433, 530 to 533 Period of operation state at assumed operation (frequency f3) t0 t5 timing tf1 to tf3 feedback timing 501 power characteristic of the data processing apparatus 1 502 power characteristic of the data processing apparatus according to the comparative example

Claims (14)

クロック信号に同期してデータ処理を実行するとともに、前記データ処理に係る負荷の状態に基づいて前記クロック信号の周波数を選択制御するデータ処理制御部と、
前記データ処理制御部の実動作時に前記データ処理制御部で消費される所定期間の実電力量を演算するとともに、仮定した周波数での前記データ処理制御部による動作を想定した想定動作時の前記所定期間における想定電力量を演算する電力算出部と、を有し、
前記データ処理制御部は、前記実電力量と前記想定電力量のうち低消費電力となる周波数を考慮して、前記負荷の状態に対応するクロック信号の周波数を選択制御する、データ処理装置。
A data processing control unit that executes data processing in synchronization with a clock signal and that selectively controls the frequency of the clock signal based on a load state related to the data processing;
The actual power consumption for a predetermined period consumed by the data processing control unit during the actual operation of the data processing control unit is calculated, and the predetermined operation during the assumed operation assuming the operation by the data processing control unit at an assumed frequency. A power calculator that calculates an assumed amount of power in the period,
The data processing control unit is configured to select and control a frequency of a clock signal corresponding to the state of the load in consideration of a frequency with low power consumption among the actual power amount and the assumed power amount.
前記データ処理制御部の動作状態は、データ処理が実行可能なアクティブ状態と、データ処理が実行不能な非アクティブ状態とを含み、
前記非アクティブ状態は、前記データ処理制御部に対するクロック信号の供給が停止している第1低消費電力状態と、前記データ処理制御部に対する前記クロック信号及び電源電圧の供給が停止している第2低消費電力状態とを含み、
前記電力算出部は、前記実動作時と前記想定動作時における前記アクティブ状態の継続時間と、前記第1低消費電力状態の継続時間と、前記第2低消費電力状態の継続時間とを把握し、夫々の前記継続時間と夫々の前記動作状態における単位時間当たりの消費電力量とに基づいて、前記実電力量と前記想定電力量とを算出する、請求項1記載のデータ処理装置。
The operation state of the data processing control unit includes an active state in which data processing can be performed and an inactive state in which data processing cannot be performed,
The inactive state includes a first low power consumption state in which the supply of the clock signal to the data processing control unit is stopped, and a second state in which the supply of the clock signal and the power supply voltage to the data processing control unit is stopped. Including low power consumption state,
The power calculation unit grasps the duration of the active state, the duration of the first low power consumption state, and the duration of the second low power consumption state during the actual operation and the assumed operation. The data processing device according to claim 1, wherein the actual power amount and the estimated power amount are calculated based on each of the duration times and a power consumption amount per unit time in each of the operation states.
前記電力算出部は、前記所定期間の前記実電力量及び前記想定電力量の演算が完了する毎に、前記演算が完了したことを前記データ処理制御部に対して通知する、請求項1記載のデータ処理装置。   The said power calculation part notifies the said data processing control part that the said calculation was completed each time the calculation of the said actual electric energy and the said estimated electric energy of the said predetermined period is completed. Data processing device. 前記電力算出部は、一定期間毎又は前記データ処理制御部の前記動作状態の変化毎に前記データ処理制御部で消費される実電力量を算出し、算出した前記実電力量を所定回数分だけ累積することで前記所定期間での前記実電力量を算出するとともに、
前記実電力量に係る演算毎に前記想定電力量を算出し、算出した前記想定電力量を前記所定回数分だけ累積することで前記所定期間での前記仮想電力量を算出する、請求項2記載のデータ処理装置。
The power calculation unit calculates an actual power amount consumed by the data processing control unit every predetermined period or for each change in the operation state of the data processing control unit, and calculates the calculated actual power amount by a predetermined number of times. While calculating the actual electric energy in the predetermined period by accumulating,
The virtual power amount in the predetermined period is calculated by calculating the assumed power amount for each calculation related to the actual power amount, and accumulating the calculated assumed power amount for the predetermined number of times. Data processing equipment.
前記所定回数のうち1回分の実電力量は、前記データ処理制御部の前記動作状態における単位時間あたりの消費電力量と、その1回分における前記データ処理制御部の動作状態の継続時間を示す第1継続時間と、を乗算することで算出される、請求項4記載のデータ処理装置。   The actual power amount for one time out of the predetermined number of times indicates a power consumption amount per unit time in the operation state of the data processing control unit and a duration time of the operation state of the data processing control unit in the one time. The data processing apparatus according to claim 4, wherein the data processing apparatus is calculated by multiplying one duration. 前記所定回数のうち1回分の想定電力量は、前記仮定した周波数での前記データ処理制御部の前記動作状態における単位時間あたりの消費電力量と、その1回分における前記想定動作時の前記動作状態の継続時間を示す第2継続時間と、を乗算することで算出される、請求項5記載のデータ処理装置。   The assumed power consumption for one time out of the predetermined number of times is the power consumption per unit time in the operation state of the data processing control unit at the assumed frequency, and the operation state at the time of the assumed operation in the one time. The data processing device according to claim 5, wherein the data processing device is calculated by multiplying a second duration time indicating a duration time of. 前記電力算出部は、前記想定動作時の動作状態が前記アクティブ状態である場合には、対応する前記実動作時の前記第1継続時間を、前記想定動作時の周波数での前記データ処理制御部のデータ処理能力に応じて換算し、換算した時間を前記第2継続時間とする、請求項6記載のデータ処理装置。   When the operation state at the time of the assumed operation is the active state, the power calculation unit calculates the corresponding first duration time at the actual operation as the data processing control unit at the frequency at the assumed operation time. The data processing device according to claim 6, wherein conversion is performed in accordance with the data processing capability of the first and the converted time is defined as the second duration time. 前記電力換算部は、前記想定動作時の前記データ処理制御部の動作状態が前記アクティブ状態である場合には、算出した前記第2継続時間に対する前記第1継続時間の差分を示す差時間を算出して累積し、前記想定動作時の前記データ処理制御部の動作状態が前記非アクティブ状態である場合には、前記第1継続時間と前記累積した差時間とを加算して算出した時間に基づいて前記第2継続時間を決定する、請求項7記載のデータ処理装置。   The power conversion unit calculates a difference time indicating a difference between the first duration time and the calculated second duration time when the operation state of the data processing control unit at the time of the assumed operation is the active state. And when the operation state of the data processing control unit at the time of the assumed operation is the inactive state, based on the time calculated by adding the first duration and the accumulated difference time The data processing device according to claim 7, wherein the second duration is determined. 前記電力算出部は、前記想定動作時の前記データ処理制御部の動作状態が前記非アクティブ状態である場合において、前記第2継続時間が所定の閾値より大きいときは、前記想定動作時の前記データ処理制御部の動作状態が前記第2低消費電力状態であると仮定し、前記所定の閾値より小さいときは、前記想定動作時の前記データ処理制御部の動作状態が前記第1低消費電力状態であると仮定して、前記想定電力を算出する、請求項8記載のデータ処理装置。   In the case where the operation state of the data processing control unit at the time of the assumed operation is the inactive state, the power calculation unit, when the second duration is greater than a predetermined threshold, the data at the assumed operation Assuming that the operation state of the processing control unit is the second low power consumption state, and when the operation state is smaller than the predetermined threshold, the operation state of the data processing control unit during the assumed operation is the first low power consumption state. The data processing apparatus according to claim 8, wherein the assumed power is calculated on the assumption that 前記電力算出部は、前記算出した前記所定期間毎の前記実電力量に基づく第1電力情報と、前記算出した前記所定期間毎の前記想定電力量に基づく第2電力情報と、を格納するための記憶領域を有し、
前記記憶領域は、前記データ処理制御部によってアクセス可能とされる、請求項9記載のデータ処理装置。
The power calculation unit stores first power information based on the calculated actual power amount for each predetermined period and second power information based on the calculated estimated power amount for each predetermined period. Storage area,
The data processing apparatus according to claim 9, wherein the storage area is accessible by the data processing control unit.
前記電力算出部は、前記実電力量と前記想定電力量のうち最も小さい電力量を選択し、選択した電力量と前記実電力量との差分を示す電力量を前記所定回数だけ累積加算して前記第1電力情報として前記記憶領域に格納するとともに、前記選択した電力量と前記想定電力量との差分を示す電力量を前記所定回数だけ累積加算して前記第2電力情報として前記記憶領域に格納する、請求項10記載のデータ処理装置。   The power calculation unit selects the smallest power amount from the actual power amount and the assumed power amount, and cumulatively adds a power amount indicating a difference between the selected power amount and the actual power amount for the predetermined number of times. The first power information is stored in the storage area, and the power amount indicating the difference between the selected power amount and the assumed power amount is cumulatively added the predetermined number of times, and the second power information is stored in the storage region. The data processing device according to claim 10, wherein the data processing device is stored. 前記電力算出部は、前記一定期間毎又は前記データ処理制御部の前記動作状態の変化毎に、前記実電力量と前記想定電力量のうち最も小さい電力量を選択し、選択した電力量と前記実電力量との差分を示す第1差分電力量を算出するとともに、前記選択した電力量と前記想定電力量との差分を示す第2差分電力量とを算出し、
前回算出した前記第1差分電力量と今回算出した前記第1差分電力量とを加算して、前記実電力量に係る累積差分電力量を算出するとともに、前回に算出した前記第2差分電力量と今回算出した第2差分電力量を加算して、前記想定電力量に係る累積差分電力量を算出し、
更に前記電力算出部は、前記実電力量に係る累積差分電力量と前記想定電力量に係る累積差分電力量のうち最も小さい電力量を選択し、当該選択した電力量と前記実電力量に係る累積差分電力量との差分を示す電力量を前記第1電力情報として前記記憶領域に格納し、当該選択した電力量と前記想定電力量に係る累積差分電力量との差分を示す電力量を前記第2電力情報として前記記憶領域に格納する、請求項10記載のデータ処理装置。
The power calculation unit selects the smallest power amount among the actual power amount and the assumed power amount for each predetermined period or for each change in the operation state of the data processing control unit, and the selected power amount and the Calculating a first difference power amount indicating a difference from the actual power amount, and calculating a second difference power amount indicating a difference between the selected power amount and the assumed power amount;
The first difference power amount calculated last time and the first difference power amount calculated this time are added to calculate a cumulative difference power amount related to the actual power amount, and the second difference power amount calculated last time And the second difference power amount calculated this time is added to calculate a cumulative difference power amount related to the assumed power amount,
Further, the power calculation unit selects the smallest power amount among the cumulative difference power amount related to the actual power amount and the cumulative difference power amount related to the assumed power amount, and relates to the selected power amount and the actual power amount. A power amount indicating a difference from the cumulative power difference amount is stored in the storage area as the first power information, and a power amount indicating a difference between the selected power amount and the cumulative power difference amount related to the assumed power amount is stored in the storage area. The data processing apparatus according to claim 10, wherein the data processing apparatus stores the second power information in the storage area.
前記電力算出部は、前記データ処理制御部の前記動作状態に応じた単位時間あたりの電力量が前記仮定することが可能な周波数毎に対応されて格納される第1テーブルと、
前記実電力量に係る周波数での前記データ処理制御部によるデータ処理能力と、前記仮定した周波数での前記データ処理制御部によるデータ処理能力との比を示す情報が前記仮定した周波数毎に格納される第2テーブルと、を更に有し、
前記電力算出部は、前記第1テーブルと前記第2テーブルの値に基づいて、前記実電力量と前記想定電力量の算出を行う、請求項9記載のデータ処理装置。
The power calculation unit stores a first table in which a power amount per unit time according to the operation state of the data processing control unit is stored corresponding to each frequency that can be assumed,
Information indicating a ratio between the data processing capability of the data processing control unit at the frequency related to the actual power amount and the data processing capability of the data processing control unit at the assumed frequency is stored for each assumed frequency. A second table,
The data processing apparatus according to claim 9, wherein the power calculation unit calculates the actual power amount and the assumed power amount based on values of the first table and the second table.
外部からの指示に応じて電源電圧を出力する第1半導体装置と、
前記第1半導体装置からの給電により動作する第2半導体装置と、を有するデータ処理システムであって、
前記第2半導体装置は、クロック信号に同期してデータ処理を実行するとともに前記データ処理に係る負荷の状態に基づいて前記クロック信号の周波数と電源電圧とを選択制御するデータ処理制御部と、
前記データ処理制御部による制御に基づいて前記クロック信号を生成して出力するクロック生成部と、
前記データ処理制御部の実動作時に前記データ処理制御部で消費される所定期間の実電力量を演算するとともに、仮定した周波数での前記データ処理制御部による動作を想定した想定動作時の前記所定期間における想定電力量を演算する電力算出部と、を有し、
前記データ処理制御部は、前記実電力量と前記想定電力量のうち低消費電力となる周波数を考慮して、前記負荷の状態に対応するクロック信号の周波数を選択制御するとともに、前記選択した周波数に応じた電源電圧の供給を前記第1半導体装置に対して指示する、データ処理システム。
A first semiconductor device that outputs a power supply voltage in response to an instruction from the outside;
A data processing system comprising: a second semiconductor device that operates by supplying power from the first semiconductor device;
The second semiconductor device performs data processing in synchronization with a clock signal and selects and controls a frequency and a power supply voltage of the clock signal based on a load state related to the data processing;
A clock generation unit that generates and outputs the clock signal based on control by the data processing control unit;
The actual power consumption for a predetermined period consumed by the data processing control unit during the actual operation of the data processing control unit is calculated, and the predetermined operation during the assumed operation assuming the operation by the data processing control unit at an assumed frequency. A power calculator that calculates an assumed amount of power in the period,
The data processing control unit selectively controls the frequency of the clock signal corresponding to the state of the load in consideration of the frequency with low power consumption among the actual power amount and the assumed power amount, and the selected frequency A data processing system for instructing the first semiconductor device to supply a power supply voltage according to the above.
JP2011143703A 2011-06-29 2011-06-29 Data processing device and data processing system Withdrawn JP2013012003A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011143703A JP2013012003A (en) 2011-06-29 2011-06-29 Data processing device and data processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011143703A JP2013012003A (en) 2011-06-29 2011-06-29 Data processing device and data processing system

Publications (1)

Publication Number Publication Date
JP2013012003A true JP2013012003A (en) 2013-01-17

Family

ID=47685846

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011143703A Withdrawn JP2013012003A (en) 2011-06-29 2011-06-29 Data processing device and data processing system

Country Status (1)

Country Link
JP (1) JP2013012003A (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140095428A (en) * 2013-01-24 2014-08-01 가부시키가이샤 한도오따이 에네루기 켄큐쇼 Semiconductor device
WO2014127674A1 (en) * 2013-02-25 2014-08-28 中兴通讯股份有限公司 Method and device for transmitting bus data signal, supporting dvfs
JP2015041330A (en) * 2013-08-23 2015-03-02 富士通株式会社 Control method and control program for cpu, and information processing apparatus
JP2015069521A (en) * 2013-09-30 2015-04-13 ルネサスエレクトロニクス株式会社 Data processing apparatus
JP2016527630A (en) * 2013-07-18 2016-09-08 クアルコム,インコーポレイテッド System and method for idle state optimization in a multiprocessor system on a chip
US9829952B2 (en) 2014-11-24 2017-11-28 Samsung Electronics Co., Ltd. Processor that has its operating frequency controlled in view of power consumption during operation and semiconductor device including the same

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140095428A (en) * 2013-01-24 2014-08-01 가부시키가이샤 한도오따이 에네루기 켄큐쇼 Semiconductor device
KR102209584B1 (en) 2013-01-24 2021-01-28 가부시키가이샤 한도오따이 에네루기 켄큐쇼 Semiconductor device
WO2014127674A1 (en) * 2013-02-25 2014-08-28 中兴通讯股份有限公司 Method and device for transmitting bus data signal, supporting dvfs
JP2016527630A (en) * 2013-07-18 2016-09-08 クアルコム,インコーポレイテッド System and method for idle state optimization in a multiprocessor system on a chip
JP2015041330A (en) * 2013-08-23 2015-03-02 富士通株式会社 Control method and control program for cpu, and information processing apparatus
US9915996B2 (en) 2013-08-23 2018-03-13 Fujitsu Limited Method of controlling processor, information processing apparatus, and non-transitory computer-readable storage medium
JP2015069521A (en) * 2013-09-30 2015-04-13 ルネサスエレクトロニクス株式会社 Data processing apparatus
CN104516780A (en) * 2013-09-30 2015-04-15 瑞萨电子株式会社 Data processing system
CN104516780B (en) * 2013-09-30 2019-03-08 瑞萨电子株式会社 Data processing equipment
US9829952B2 (en) 2014-11-24 2017-11-28 Samsung Electronics Co., Ltd. Processor that has its operating frequency controlled in view of power consumption during operation and semiconductor device including the same

Similar Documents

Publication Publication Date Title
JP2013012003A (en) Data processing device and data processing system
TWI528168B (en) Microprocessor, method of operating microprocessor and computer program product
US7463096B2 (en) Dynamic voltage and frequency management in integrated circuits
JP5024389B2 (en) Semiconductor integrated circuit
JP6169547B2 (en) Method and apparatus for managing global chip power of multi-core system on chip
US8707060B2 (en) Deterministic management of dynamic thermal response of processors
US9575542B2 (en) Computer power management
JP4808108B2 (en) Processor system
TWI441009B (en) Method for clock frequency admustment for a processing unit of a computer system and ralated device
JP6113538B2 (en) Control device, control method, program, and semiconductor device
US20160378168A1 (en) Dynamic power management optimization
US20130173946A1 (en) Controlling power consumption through multiple power limits over multiple time intervals
US20130086395A1 (en) Multi-Core Microprocessor Reliability Optimization
EP3274787B1 (en) Technologies for managing power of an embedded controller during a low-power state
TW201403299A (en) Central processor control method
US9995791B2 (en) Power consumption monitoring device for a power source
JP2015130035A (en) Semiconductor device and control method
JP2018005569A (en) Semiconductor device and control method of semiconductor device
JP5936415B2 (en) Semiconductor integrated circuit, information processing apparatus and control method
KR20150112660A (en) System on chip, method thereof, and device including the same
TW201333830A (en) Battery discharging method
JP2014052969A (en) Clock frequency controller and semiconductor device
US20100295582A1 (en) Clock circuit for digital circuit
US20100070793A1 (en) Clock supply device
TW201830406A (en) Semiconductor device

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20140902