(57)【要約】【課題】電子機器においてタスクの実行に関連して変化する消費電流をより効率的に且つ精度よく測定する技術を提供すること。【解決手段】電子機器１において測定の対象となる部品への給電回路に設けられた電流センサ１１を制御する電流センサ制御部１２１と、測定のタイミングの制御に関する制御情報を取得する制御情報取得部１２２と、電子機器１において測定の対象となるタスクが開始したことを表す開始信号を受信すると、制御情報に基づくタイミングで電流センサ制御部１２１を制御して電流を測定する測定制御部１２３とを備える。【選択図】      図１
2018060382.tif 000002
【特許請求の範囲】
【請求項１】
電子機器において測定の対象となる部品への給電回路に設けられた電流センサを制御する電流センサ制御部と、
測定のタイミングの制御に関する制御情報を取得する制御情報取得部と、
前記電子機器において測定の対象となるタスクが開始したことを表す開始信号を受信すると、前記制御情報に基づくタイミングで前記電流センサ制御部を制御して電流を測定する測定制御部と、
を備えた測定制御装置。
【請求項２】
前記制御情報取得部は、自装置のモードを設定するモード設定情報をさらに取得し、
前記測定制御部は、前記モード設定情報が測定モードを表す場合に、前記開始信号の受信に応じて機能することを特徴とする請求項１に記載の測定制御装置。
【請求項３】
請求項１または請求項２に記載の測定制御装置と、
前記電流センサと、
前記タスクの開始を検出して前記開始信号を前記測定制御装置に対して発行する開始信号発行部と、
を備えた電子機器。
【請求項４】
前記開始信号発行部は、前記タスクの開始を通知する通知信号をホスト装置から受信すると、前記開始信号を前記測定制御装置に対して発行することを特徴とする請求項３に記載の電子機器。
【請求項５】
前記タスクの開始を検出すると、請求項４に記載の電子機器に対して前記通知信号を送信する通知信号送信部を備えたホスト装置。
【請求項６】
請求項４に記載の電子機器と、
請求項５に記載のホスト装置と、
を備えた情報処理システム。
【請求項７】
測定制御装置が、
電子機器において測定の対象となる部品へ供給される電流を測定するタイミングに関する制御情報を取得し、
前記電子機器において測定の対象となるタスクが開始したことを表す開始信号を受信すると、前記制御情報に基づくタイミングで、前記部品への給電回路に設けられた電流センサを制御して電流を測定する方法。
【請求項８】
請求項７に記載の方法を実行する測定制御装置が設けられた前記電子機器が、測定の対象となるタスクが開始したことを検出して前記開始信号を前記測定制御装置に対して発行する方法。
【請求項９】
電子機器において測定の対象となる部品へ供給される電流を測定するタイミングに関する制御情報を取得する取得ステップと、
前記電子機器において測定の対象となるタスクが開始したことを表す開始信号を受信すると、前記制御情報に基づくタイミングで、前記部品への給電回路に設けられた電流センサを制御して電流を測定する測定ステップと、
を測定制御装置に実行させるプログラム。
【請求項１０】
請求項９に記載のプログラムを実行する測定制御装置が設けられた前記電子機器において測定の対象となるタスクが開始したことを検出して前記開始信号を前記測定制御装置に対して発行する発行ステップを前記電子機器に実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子機器の消費電力を測定する技術に関する。
【背景技術】
【０００２】
近年、電子機器を低電力化する需要が高まっている。しかしながら、性能要求と低電力化要求との両立は、半導体プロセスの微細化だけでは難しい。このため、電力制御により非稼働のデバイスの電力を極力削減する技術が望まれる。電力制御を細やかにする程に、電力削減効果が高くなると言える。ここで、細やかな電力制御を行うためには、電子機器の消費電力をより正確に測定する必要がある。
【０００３】
電子機器の電力測定の一つの方法として、電子機器の外部に設置された測定器を用いる方法がある。しかしながら、この方法は、測定器の設置や操作の手間が必要になるという問題がある。また、この方法は、測定のタイミングが人の操作により決定されるため、試行回数に限界がある。そのため、この方法は、代表的なタスク実行時における電力の測定に留まりがちであり、偏った測定データになりやすいという問題がある。
【０００４】
そこで、電子機器の電力測定の他の方法として、ＰＣＢ（Printed Circuit Board）上に実装された電流センサを用いる方法が考えられる。この方法は、任意の給電経路での測定を可能とし、かつ、デバッグ操作により手軽に値を採取可能な事から、比較的利便性が高い。
【０００５】
また、電子機器の電力測定に関連する技術の一例が、特許文献１に記載されている。この関連技術は、電子機器上でのプログラム実行の開始および終了を検出し、開始から終了までの間、クロック毎または命令毎に測定した電流を積算する。そして、この関連技術は、もっとも電流を消費するプログラムを特定する。
【０００６】
また、電子機器の電力測定に関連する他の技術の一例が、特許文献２に記載されている。この関連技術は、被検査機器上でのプログラムの実行過程を記録したトレースデータと、被検査機器の消費電力を時系列的に記録した電力計測データとを取得する。そして、この関連技術は、トレースデータと電力計測データとを、時刻を一致させるようにマッチングする。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００１−３４４９９号公報
【特許文献２】特開２００５−６２１０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、これらの関連技術には、以下の課題がある。
【０００９】
ＰＣＢ上に実装された電流センサは、一部がアナログ回路により構成されるため、測定結果が得られるまでの応答時間が長い。このため、このような電流センサを用いてデバッグ操作により電力を測定する方法は、ＬＳＩ（Large Scale Integration）のように高周波数で動作する電子機器に対して、電流の急峻な変化速度に対して測定周期を長く設定せざるを得ない。そのため、この方法は、タスクの実行期間中のどのタイミングで測定を行ったかにより、結果が大きく異なるという問題がある。
【００１０】
図１０は、この問題を模式的に示す図である。図１０の電流波形は、電子機器の消費電流の変化を模式的に示したものである。また、測定箇所に示された縦棒の太線は、そのタイミングで電流センサのリードを行って得られる測定値を示している。この図からわかるように、各測定箇所において、その前後で電流が大きく変化しているにも関わらず、そのタイミングにおける測定値のみが得られている。このため、この方法では、測定データの精度が低くなる。
【００１１】
例えば、電子機器において実行されるタスクの１つが数値計算であったとする。この場合、タスクには、命令のフェッチやデータのリード等が含まれるため、演算処理自体が恒常的に行われている訳ではない。したがって、電流波形は高周波数で変化することになる。また、デバッグ操作による測定の開始タイミングは、タスクの開始タイミングに基づくことが難しい。したがって、この方法は、多くの試行を重ねても測定精度の保証が出来ないという問題があった。
【００１２】
また、特許文献１に記載された関連技術は、プログラムの実行期間中の消費電流の積算値を求めるが、実行期間中に変化する消費電流を測定する用途には向いていない。
【００１３】
また、特許文献２に記載された関連技術は、任意のタイミング毎に測定された消費電力を、プログラムのトレースデータと関連付ける。しかしながら、測定タイミング自体は、プログラムの開始タイミングとは因果関係がない。そのため、この関連技術は、プログラム実行中のどのタイミングで測定が行われたかによって、異なる結果を出力する。そのため、タスクの実行に関連して消費電流が変化する電子機器の電力測定には向いていない。
【００１４】
本発明は、上述の課題を解決するためになされたものである。すなわち、本発明は、電子機器においてタスクの実行に関連して変化する消費電流をより効率的に且つ精度よく測定する技術を提供することを目的とする。
【課題を解決するための手段】
【００１５】
本発明の測定制御装置は、電子機器において測定の対象となる部品への給電回路に設けられた電流センサを制御する電流センサ制御部と、測定のタイミングの制御に関する制御情報を取得する制御情報取得部と、前記電子機器において測定の対象となるタスクが開始したことを表す開始信号を受信すると、前記制御情報に基づくタイミングで前記電流センサ制御部を制御して電流を測定する測定制御部と、を備える。
【００１６】
また、本発明の電子機器は、上述の測定制御装置と、前記電流センサと、前記タスクの開始を検出して前記開始信号を前記測定制御装置に対して発行する開始信号発行部と、を備える。
【００１７】
また、本発明のホスト装置は、前記タスクの開始を検出すると、上述の電子機器に対して通知信号を送信する通知信号送信部を備える。
【００１８】
また、本発明の情報処理システムは、上述の電子機器と、上述のホスト装置とを備える。
【００１９】
また、本発明の方法は、測定制御装置が、電子機器において測定の対象となる部品へ供給される電流を測定するタイミングに関する制御情報を取得し、前記電子機器において測定の対象となるタスクが開始したことを表す開始信号を受信すると、前記制御情報に基づくタイミングで、前記部品への給電回路に設けられた電流センサを制御して電流を測定する。
【００２０】
また、本発明の他の方法は、上述の方法を実行する測定制御装置が設けられた前記電子機器が、測定の対象となるタスクが開始したことを検出して前記開始信号を前記測定制御装置に対して発行する。
【００２１】
また、本発明のプログラムは、電子機器において測定の対象となる部品へ供給される電流を測定するタイミングに関する制御情報を取得する取得ステップと、前記電子機器において測定の対象となるタスクが開始したことを表す開始信号を受信すると、前記制御情報に基づくタイミングで、前記部品への給電回路に設けられた電流センサを制御して電流を測定する測定ステップと、を測定制御装置に実行させる。
【００２２】
また、本発明の他のプログラムは、上述のプログラムを実行する測定制御装置が設けられた前記電子機器において測定の対象となるタスクが開始したことを検出して前記開始信号を前記測定制御装置に対して発行する発行ステップを前記電子機器に実行させる。
【発明の効果】
【００２３】
本発明は、電子機器においてタスクの実行に関連して変化する消費電流をより効率的に且つ精度よく測定する技術を提供することができる。
【図面の簡単な説明】
【００２４】
【図１】本発明の第１の実施の形態としての電子機器の構成を示すブロック図である。
【図２】本発明の第１の実施の形態における測定制御装置が制御情報を取得する動作を説明するフローチャートである。
【図３】本発明の第１の実施の形態としての電子機器が消費電流を測定する動作を説明するフローチャートである。
【図４】本発明の第１の実施の形態としての電子機器のハードウェア構成の具体例を示す図である。
【図５】本発明の第１の実施の形態の具体例の電子機器によって測定される消費電流を模式的に説明する図である。
【図６】本発明の第２の実施の形態としての情報処理システムの構成を示すブロック図である。
【図７】本発明の第２の実施の形態としての情報処理システムが消費電流を測定する動作を説明するフローチャートである。
【図８】本発明の第２の実施の形態としての情報処理システムのハードウェア構成の具体例を示す図である。
【図９】本発明の第２の実施の形態としての情報処理システムのハードウェア構成の他の具体例を示す図である。
【図１０】一般的な手法により測定される消費電流を模式的に説明する図である。
【発明を実施するための形態】
【００２５】
以下、本発明の実施の形態について、図面を参照して詳細に説明する。
【００２６】
（第１の実施の形態）
本発明の第１の実施の形態としての電子機器１を図１に示す。図１において、電子機器１は、電流センサ１１と、測定制御装置１２と、開始信号発行部１３とを含む。また、測定制御装置１２は、電流センサ制御部１２１と、制御情報取得部１２２と、測定制御部１２３とを有する。
【００２７】
ここで、電子機器１は、消費電流を測定する対象となる部品を有する機器である。以降、測定の対象となる部品を、測定対象部品とも記載する。測定対象部品には、電源回路から給電回路を介して電源が供給される。
【００２８】
電流センサ１１は、測定対象部品への給電回路に設けられ、給電回路を流れる電流を測定する。電流センサ１１は、外部から制御可能である。電流センサ１１は、外部からの制御に基づいて、給電回路を流れる電流を表す値を取得して電流センサ１１内の記憶領域に格納する。
【００２９】
測定制御装置１２は、電流センサ１１による電流の測定を制御する装置である。
【００３０】
開始信号発行部１３は、電子機器１において測定の対象となるタスクの開始を検出すると、測定制御装置１２に対して開始信号を発行する。開始信号は、該当するタスクが開始したことを表す信号である。
【００３１】
測定制御装置１２の各機能ブロックについて説明する。
【００３２】
電流センサ制御部１２１は、任意のタイミングで電流センサ１１を制御して電流を測定させ、そのタイミングにおける電流を表す値を取得する。
【００３３】
制御情報取得部１２２は、測定のタイミングの制御に関する制御情報を取得する。例えば、制御情報は、測定の間隔を表すオフセット値と、測定回数とを含んでいてもよい。制御情報取得部１２２は、制御情報をあらかじめ取得して記憶しておく。
【００３４】
さらに、制御情報取得部１２２は、モード設定情報を取得してもよい。モード設定情報とは、測定制御装置１２のモードを表す情報である。この場合、モードとしては、少なくとも、測定対象部品の消費電流を測定する測定モードがあるものとする。
【００３５】
測定制御部１２３は、開始信号を受信すると、制御情報に基づくタイミングで電流センサ制御部１２１を制御して電流を測定する。例えば、制御情報が、オフセット値と測定回数とを含んでいるとする。この場合、測定制御部１２３は、開始信号を受信後、オフセット値の間隔毎のタイミングで測定回数まで電流を測定するよう、電流センサ制御部１２１を制御してもよい。
【００３６】
また、測定制御部１２３は、制御情報取得部１２２によってモード設定情報が取得されている場合、モード設定情報が測定モードを表す場合に、開始信号の受信に応じて機能するようにしてもよい。この場合、換言すると、測定制御部１２３は、モード設定情報が測定モードを表さない場合、開始信号を受信しても機能しないよう構成される。
【００３７】
以上のように構成された電子機器１の動作について、図面を参照して説明する。
【００３８】
図２は、測定制御装置１２が、制御情報を取得する動作を示すフローチャートである。
【００３９】
まず、制御情報取得部１２２は、測定のタイミングの制御に関する制御情報を取得する（ステップＳ１１）。このとき、前述のように、制御情報取得部１２２は、さらに、モード設定情報を取得してもよい。
【００４０】
次に、制御情報取得部１２２は、ステップＳ１１で取得した情報を記憶する（ステップＳ１２）。
【００４１】
以上で、測定制御装置１２は、制御情報を取得する動作を終了する。
【００４２】
図３は、電子機器１が、測定対象部品の消費電流を測定する動作を示すフローチャートである。図３において、左図は、開始信号発行部１３の動作を示し、右図は、測定制御装置１２の動作を示す。
【００４３】
まず、開始信号発行部１３は、電子機器１において測定の対象となるタスクの開始を検出する（ステップＳ２１）。
【００４４】
次に、開始信号発行部１３は、測定制御装置１２に対して開始信号を発行する（ステップＳ２２）
次に、測定制御装置１２の測定制御部１２３は、開始信号が受信されたか否かを判断する（ステップＳ３１）。
【００４５】
なお、図２の動作で測定モードを表さないモード設定情報が取得されている場合には、ステップＳ３１で、開始信号の受信に関わらずＮｏと判定されるものとする。
【００４６】
ここで、開始信号が受信されていないと判断した場合（ステップＳ３１でＮｏ）、測定制御部１２３は、ステップＳ３１の動作を繰り返す。
【００４７】
一方、開始信号が受信されたと判断した場合（ステップＳ３１でＹｅｓ）、測定制御部１２３は、記憶されている制御情報が示すタイミングで、電流センサ制御部１２１を制御して電流を測定する（ステップＳ３２）。
【００４８】
次に、測定制御部１２３は、制御情報が示す次のタイミングがあるか否かを判断する（ステップＳ３３）。
【００４９】
ここで、次のタイミングがあれば（ステップＳ３３でＹｅｓ）、測定制御部１２３は、そのタイミングまで待機後（ステップＳ３４）、ステップＳ３２からの動作を繰り返す。
【００５０】
次のタイミングがなければ（ステップＳ３３でＮｏ）、測定制御部１２３は、各タイミングで測定した測定値を出力する（ステップＳ３５）。
【００５１】
以上で電子機器１は、動作を終了する。
【００５２】
次に、電子機器１の構成および動作の具体例を示す。ここでは、電子機器１は、情報処理装置であり、測定の対象となる測定対象部品としてＣＰＵ（Central Processing Unit）が適用される例について説明する。また、測定の対象となるタスクとしては、情報処理装置に実行させるプログラムにおける任意のタスクが想定されるものとする。
【００５３】
まず、具体例としての電子機器１のハードウェア構成を図４に示す。
【００５４】
図４において、電子機器１は、コンピュータ装置１００と、電流センサ１１と、監視プロセッサ２００とによって構成される。電流センサ１１と、監視プロセッサ２００とは、コンピュータ装置１００の内部に実装されている。
【００５５】
コンピュータ装置１００は、ＣＰＵ１００１と、メモリ１００２と、電源回路１００３とを含む。
【００５６】
ＣＰＵ１００１は、補助記憶装置（図示せず）からメモリ１００２にコンピュータ・プログラムを読み込んで実行し、自装置の各部を制御する。
【００５７】
メモリ１００２は、ＲＡＭ（Random Access Memory）やＲＯＭ（Read Only Memory）等によって構成される。
【００５８】
電源回路１００３は、ＣＰＵ１００１を含む自装置の各部に電力を供給する。電源回路１００３は、例えば、ＶＲＭ（Voltage Regulator Module）やＤＣ（Direct Current）−ＤＣコンバータ等によって構成され、安定した電圧を供給する。
【００５９】
電流センサ１１は、電源回路１００３からＣＰＵ１００１への給電回路に設けられている。ここでは、電流センサ１１は、Ｉ２Ｃ（Inter-Integrated Circuit）等の汎用インターフェースによりアクセスが可能なセンサであるものとする。また、電流センサ１１は、電流を測定し、測定値に対してアナログ−ディジタル変換処理を行う。そして、電流センサ１１は、ディジタル変換した測定値を、内部の所定の記憶領域に格納する。測定から格納までの内部処理は、ある程度の時間（例えば、数十〜百ミリ秒）を要する。
【００６０】
監視プロセッサ２００は、プロセッサ２００１と、メモリ２００２とを有する。例えば、監視プロセッサ２００は、ＢＭＣ（Base Management Control）プロセッサ、初期化や監視に特化したマイクロコンピュータ、または、ＣＰＬＤ（Complex Programmable Logic）等によって構成されていてもよい。
【００６１】
プロセッサ２００１は、メモリ２００２に記憶されたコンピュータ・プログラムを読み込んで実行し、自装置の各部を制御する。
【００６２】
プロセッサ２００１は、ＣＰＵ１００１と通信可能に接続される。ここでは、ＧＰＩＯ（General Purpose IO）インタフェースを介して接続されるものとする。
【００６３】
また、プロセッサ２００１は、電流センサ１１と通信可能に接続される。ここでは、Ｉ２Ｃモジュールを介して接続されるものとする。
【００６４】
また、プロセッサ２００１は、外部の装置と情報を入出力可能に接続される。例えば、プロセッサ２００１は、ネットワークインタフェース（図示せず）を介して外部の装置と通信可能に接続されてもよい。また、プロセッサ２００１は、ＵＡＲＴ（Universal Asynchronous Receiver Transmitter）やＪＴＡＧ（Joint Test Action Group）インタフェースにより入出力装置に接続されてもよい。
【００６５】
この具体例では、測定制御装置１２は、監視プロセッサ２００によって構成される。また、測定制御装置１２の各機能ブロックは、監視プロセッサ２００においてメモリ２００２に記憶されたコンピュータ・プログラムを読み込んで実行するプロセッサ２００１によって構成される。
【００６６】
また、開始信号発行部１３は、コンピュータ装置１００においてコンピュータ・プログラムをメモリ１００２に読み込んで実行するＣＰＵ１００１によって構成される。
【００６７】
また、この具体例では、測定の対象となるタスクを呼び出すシェルが用意されているものとする。このシェルは、該当するタスクの実行形式のバイナリを呼び出すコマンドと、その直前に開始信号を発行するコマンドとを含む。また、このシェルは、該当するタスクの実行形式バイナリと同名であることが望ましい。同名であることにより、該当するタスクの呼び出し元のプログラムには変更の必要がない。
【００６８】
また、この具体例では、測定情報としては、オフセット値および測定回数を含む情報が取得されるものとする。
【００６９】
以上のように構成された電子機器１の具体例の動作について説明する。
【００７０】
まず、制御情報取得部１２２は、測定のタイミングの制御に関する制御情報として、オフセット値および測定回数を表す情報を取得し、メモリ２００２に記憶する（ステップＳ１１、Ｓ１２）。
【００７１】
なお、オフセット値としては、電流センサ１１の内部処理時間に基づく最小リード可能周期と、電流の変化速度に対して十分なサンプリング周期との双方を考慮した値が取得されることが望ましい。
【００７２】
また、制御情報取得部１２２は、測定モードを表すモード設定情報を取得し、メモリ２００２に記憶する（ステップＳ１１、Ｓ１２）。
【００７３】
次に、電子機器１において、ＣＰＵ１００１は、測定の対象となるタスクの呼び出しを含むコンピュータ・プログラムをメモリ１００２に読み込んで実行する。
【００７４】
そして、ＣＰＵ１００１は、測定の対象となるタスクを呼び出すタイミングで、上述のシェルを実行することになる。そこで、開始信号発行部１３は、測定制御装置１２に対して、開始信号を発行する（ステップＳ２１、Ｓ２２）。
【００７５】
なお、開始信号の発行は、ＧＰＩＯインタフェースを介して行われる。あるいは、開始信号の発行は、割り込み要求として実現されてもよい。
【００７６】
その後、ＣＰＵ１００１は、測定の対象となるタスクの実行形式のバイナリを呼び出して実行を開始する。
【００７７】
次に、測定制御装置１２の測定制御部１２３は、測定モード中に開始信号を受信したので（ステップＳ３１でＹｅｓ）、まず、受信直後のタイミングで、電流センサ制御部１２１を制御して電流を測定する（ステップＳ３２）。
【００７８】
具体的には、測定制御部１２３は、電流センサ制御部１２１から電流センサ１１に対して、Ｉ２Ｃライトを発行させることにより、測定値を得る。そして、測定制御部１２３は、得た測定値を、メモリ１００２に記憶する。
【００７９】
なお、電流センサ１１では、センサ内部の処理が数十〜百ミリ秒掛かるため、電流センサ制御部１２１は、Ｉ２Ｃライトの発行後、電流センサ１１の内部での処理完了を待って測定値を読み出す。具体的には、電流センサ制御部１２１は、電流センサ１１において測定値が格納される記憶領域に対してポーリングすることにより、処理の完了を検知して測定値を読み出せばよい。
【００８０】
次に、測定制御部１２３は、制御情報にオフセット値が含まれており、かつ、測定回数に達していないので、次のタイミングがあると判断し（ステップＳ３３でＹｅｓ）、オフセット値の示す期間待機する（ステップＳ３４）。
【００８１】
そして、測定制御部１２３は、ステップＳ３２からの動作を繰り返す。
【００８２】
ステップＳ３２での測定の回数が、測定回数に達すると（ステップＳ３３でＮｏ）、測定制御装置１２は、各タイミングで測定した測定値を、コンソール等に出力する（ステップＳ３５）。
【００８３】
以上で電子機器１は、具体例の動作を終了する。
【００８４】
例えば、制御情報として、オフセット値Ｔ（Ｔは正の実数）および測定回数４が取得されているとすると、取得される測定値を模式的に図５に示す。図５は、背景技術の問題点を説明した図１０と同様の電流波形に対して、本実施の形態の具体例を適用した場合に取得可能な測定値を表している。この例では、測定の対象となるタスクが合計で５回呼び出され、各呼出箇所において、オフセット値Ｔの間隔で４回ずつ測定値が取得されている。
【００８５】
次に、本発明の第１の実施の形態の効果について述べる。
【００８６】
本発明の第１の実施の形態としての電子機器は、電子機器においてタスクの実行に関連して変化する消費電流をより効率的に且つ精度よく測定することができる。
【００８７】
その理由について説明する。本実施の形態では、電流センサが、電子機器において測定の対象となる部品への給電回路に設けられている。そして、測定制御装置の制御情報取得部が、測定のタイミングの制御に関する制御情報を取得しておく。そして、開始信号発行部が、電子機器において測定の対象となるタスクの開始を検出すると、測定制御装置に対して開始信号を発行する。そして、測定制御装置の測定制御部が、開始信号を受信すると、制御情報に基づくタイミングで、電流センサを制御する電流センサ制御部を制御して電流を測定するからである。
【００８８】
このように構成されることにより、本実施の形態は、タスクの実行開始と電流の測定開始とを関連付けることができる。その結果、本実施の形態は、プログラムの実行期間中に定常的に所定のタイミング毎に電流を測定する場合と比べて、効率的に測定値をサンプリングすることができる。さらに、本実施の形態は、制御情報に基づき測定回数や間隔を調整することができ、精度よく測定値のサンプリングを行うことができる。
【００８９】
なお、本実施の形態において、電子機器および測定制御装置のハードウェア構成の一例を図４を参照して説明した。ただし、これらのハードウェア構成は、図４に示した構成に限定されない。
【００９０】
また、本実施の形態において、電子機器において測定の対象となる部品に、ＣＰＵを適用する例について説明した。ただし、測定の対象となる部品は、電子機器において給電される他の部品であってもよい。
【００９１】
また、本実施の形態において、制御情報に、オフセット値および測定回数が含まれる例について説明した。これに限らず、制御情報は、測定のタイミングを制御する情報であれば、その他の情報を含むものであってもよい。
【００９２】
また、本実施の形態において、測定制御部は、開始信号を受信後、オフセット値の間隔で測定回数まで測定を行う例について説明した。これに限らず、測定制御部は、オフセット値の間隔で指定された測定期間が経過するまで、測定を行ってもよい。この場合、制御情報は、測定回数の代わりに測定期間を含む。また、測定制御部は、終了信号を受信すると、測定を終了するように構成されてもよい。この場合、開始信号発行部が、タスクの終了を検出したタイミングで測定制御装置に対して終了信号を発行すればよい。例えば、測定の対象となるタスクを呼び出すシェルにおいて、タスクの呼び出しの直前に開始信号を発行するコマンドが記載されることに加えて、タスクの実行完了の直後に終了信号を発行するコマンドが記載されていてもよい。
【００９３】
（第２の実施の形態）
次に、本発明の第２の実施の形態について図面を参照して詳細に説明する。なお、本実施の形態の説明において参照する各図面において、本発明の第１の実施の形態と同一の構成および同様に動作するステップには同一の符号を付して本実施の形態における詳細な説明を省略する。
【００９４】
まず、本発明の第２の実施の形態としての情報処理システム２０の機能ブロック構成を図６に示す。図６において、情報処理システム２０は、電子機器２と、ホスト装置３とを含む。
【００９５】
ホスト装置３は、電子機器２と通信可能に接続される。ホスト装置３は、電子機器２に実行させるタスクを含むプログラムを実行する装置である。ホスト装置３は、通知信号送信部３１を備える。
【００９６】
通知信号送信部３１は、ホスト装置３におけるプログラムの実行中に、電子機器２に実行させる、測定の対象となるタスクの開始を検出すると、電子機器２に対して通知信号を送信する。通知信号とは、タスクの開始を通知する信号である。
【００９７】
電子機器２は、本発明の第１の実施の形態としての電子機器１に対して、開始信号発行部１３に替えて開始信号発行部２３を備える点が異なる。
【００９８】
開始信号発行部２３は、ホスト装置３から通知信号を受信すると、開始信号を測定制御装置１２に対して発行する。
【００９９】
以上のように構成された情報処理システム２０の動作について、図７を参照して説明する。なお、測定制御装置１２は、本発明の第１の実施の形態において図２を参照して説明した動作により、既に制御情報を取得しているものとする。
【０１００】
図７において、左図は、ホスト装置３の動作を示し、中央の図は、開始信号発行部２３の動作を示し、右図は、測定制御装置１２の動作を示す。
【０１０１】
まず、ホスト装置３において、通知信号送信部３１は、電子機器２に実行させる、測定の対象となるタスクの開始を検出する（ステップＳ４１）。
【０１０２】
次に、通知信号送信部３１は、電子機器２に対して、通知信号を送信する（ステップＳ４２）。
【０１０３】
次に、電子機器２の開始信号発行部２３は、通知信号が受信されたか否かを判断する（ステップＳ５１）。
【０１０４】
ここで、通知信号が受信されていないと判断した場合、開始信号発行部２３は、ステップＳ５１の動作を繰り返す。
【０１０５】
一方、通知信号が受信されたと判断した場合、開始信号発行部２３は、本発明の第２の実施の形態と同様にステップＳ２２を実行し、測定制御装置１２に対して開始信号を発行する。
【０１０６】
以降、測定制御装置１２の動作は、図３を参照して説明した本発明の第１の実施の形態における測定制御装置１２の動作と同様である。
【０１０７】
以上で、情報処理システム２０の動作の説明を終了する。
【０１０８】
次に、情報処理システム２０の構成および動作の具体例を２つ示す。
【０１０９】
＜具体例１＞
ここでは、ホスト装置３として、情報処理装置が適用される。また、電子機器２として、ＨＢＡ（Host Bus Adapter）が適用される。以降、この具体例において、電子機器２を、ＨＢＡ２とも記載する。また、測定の対象となる測定対象部品として、ＨＢＡ２の演算器４００１が適用される例について説明する。また、測定の対象となるタスクとしては、情報処理装置が実行するプログラムにおいてＨＢＡ２に実行させる任意のタスクが想定されるものとする。
【０１１０】
まず、この具体例における情報処理システム２０のハードウェア構成を図８に示す。
【０１１１】
図８において、ホスト装置３は、ＣＰＵ３００１と、メモリ３００２と、電源回路３００３と、接続インタフェース３００４とを有する。
【０１１２】
ＣＰＵ３００１は、補助記憶装置（図示せず）からメモリ３００２にコンピュータ・プログラムを読み込んで実行し、自装置の各部を制御する。
【０１１３】
メモリ３００２は、ＲＡＭやＲＯＭ等によって構成される。
【０１１４】
電源回路３００３は、ＣＰＵ３００１を含む自装置の各部と、ＨＢＡ２の二次給電回路４００３に電力を供給する。
【０１１５】
接続インタフェース３００４は、ＨＢＡ２に接続するインタフェースである。例えば、接続インタフェース３００４としては、ＰＣＩｅ（PCI Express）インタフェースであってもよい。
【０１１６】
ＨＢＡ２は、コンピュータ装置４００と、電流センサ１１と、監視プロセッサ２００とによって構成される。
【０１１７】
コンピュータ装置４００は、演算器４００１と、メモリ４００２と、二次給電回路４００３と、接続インタフェース４００４とを含む。
【０１１８】
演算器４００１は、ホスト装置３からの制御の基に、メモリ４００２に記憶されたコンピュータ・プログラムを実行し、自装置の各部を制御する。
【０１１９】
メモリ４００２は、ＲＡＭやＲＯＭ等によって構成される。
【０１２０】
二次給電回路４００３は、ホスト装置３の電源回路３００３から供給される電力を必要な電圧値に変換した上で、演算器４００１を含む自装置の各部に供給する。
【０１２１】
接続インタフェース４００４は、ホスト装置３に接続するインタフェースである。ホスト装置３の接続インタフェース３００４がＰＣＩｅインタフェースである場合、接続インタフェース４００４は、ＰＣＩｅインタフェースによって構成される。
【０１２２】
電流センサ１１は、本発明の第１の実施の形態の具体例における電流センサ１１と同様に構成されるが、設置される箇所が異なる。電流センサ１１は、二次給電回路４００３から演算器４００１への給電回路に設けられている。
【０１２３】
監視プロセッサ２００のハードウェア構成は、本発明の第１の実施の形態の具体例における構成と同様である。
【０１２４】
また、この具体例では、本発明の第１の実施の形態における具体例と同様に、測定の対象となるタスクを呼び出すシェルが用意されているものとする。ただし、測定の対象となるタスクは、ＨＢＡ２の演算器４００１に実行させるタスクである。また、このシェルは、該当するタスクを表す実行形式のバイナリを呼び出すコマンドと、その直前に、開始信号を発行するコマンドの代わりに通知信号を送信するコマンドとを含む。なお、本発明の第１の実施の形態における具体例と同様に、このシェルは、該当するタスクの実行形式のバイナリと同名であることが望ましい。
【０１２５】
また、この具体例では、測定情報としては、オフセット値および測定回数を含む情報が、測定制御装置１２により既に取得済みであるものとする。
【０１２６】
以上のように構成された具体例の動作について説明する。
【０１２７】
まず、ホスト装置３において、ＣＰＵ３００１は、測定の対象となるタスクの呼び出しを含むコンピュータ・プログラムをメモリ３００２に読み込んで実行する。
【０１２８】
そして、ＣＰＵ３００１は、ＨＢＡ２に実行させる、測定の対象となるタスクを呼び出すタイミングで、上述のシェルを実行することになる。そこで、通知信号送信部３１は、ＨＢＡ２に対して、通知信号を送信する（ステップＳ４１、Ｓ４２）。
【０１２９】
通知信号の送信は、ＰＣＩｅインタフェースを介して行われる。例えば、ＨＢＡ２において、メモリ４００２における所定のアドレスに対するライトを、通知信号と認識するように定められていてもよい。あるいは、ＨＢＡ２において、ホスト装置３からの所定内容のメッセージの受信を、通知信号と認識するように定められていてもよい。
【０１３０】
次に、ＨＢＡ２の開始信号発行部２３は、通知信号が受信されたので（ステップＳ５１でＹｅｓ）、測定制御装置１２に対して開始信号を発行する（ステップＳ２２）。
【０１３１】
以降、測定制御装置１２は、本発明の第１の実施の形態における具体例と同様に動作する。
【０１３２】
＜具体例２＞
ここでは、ホスト装置３として、情報処理装置が適用される。また、電子機器２として、外部記憶装置であるストレージが適用される。ストレージは、ライトやリードを繰り返している場合には、消費電力がほぼ一定と考えられる。一方、ランダムアクセスが繰り返される場合や、ＲＡＩＤ（Redundant Arrays of Independent Disks）を組んだ場合には、消費電力が変化する可能性が高い。以降、この具体例において、電子機器２を、ストレージ２とも記載する。また、測定の対象となる部品として、ストレージ２の記憶装置５００５が適用される例について説明する。
【０１３３】
まず、この具体例としての情報処理システム２０のハードウェア構成を図９に示す。
【０１３４】
図９において、ホスト装置３は、具体例１と同様に、ＣＰＵ３００１と、メモリ３００２と、電源回路３００３と、接続インタフェース３００４とを有する。ただし、接続インタフェース３００４は、外部記憶装置に接続するインタフェースである点が異なる。例えば、接続インタフェース３００４は、ＳＡＳ（Serial Attached SCSI）インターフェースであってもよい。
【０１３５】
ストレージ２は、コンピュータ装置５００と、電流センサ１１と、監視プロセッサ２００とによって構成される。
【０１３６】
コンピュータ装置５００は、コントローラ５００１と、メモリ５００２と、電源回路５００３と、接続インタフェース５００４と、記憶装置５００５とを含む。
【０１３７】
コントローラ５００１は、ホスト装置３からの制御の基に、メモリ５００２に記憶されたコンピュータ・プログラムを実行し、自装置の各部を制御する。
【０１３８】
メモリ５００２は、ＲＡＭやＲＯＭ等によって構成される。
【０１３９】
電源回路５００３は、自装置の各部に電力を供給する。
【０１４０】
接続インタフェース５００４は、ホスト装置３に接続するインタフェースである。ホスト装置３の接続インタフェース３００４がＳＡＳインタフェースである場合、接続インタフェース５００４は、ＳＡＳインタフェースによって構成される。
【０１４１】
記憶装置５００５は、データを記憶する装置である。例えば、記憶装置５００５は、ハードディスクドライブ等の大容量記憶装置によって構成される。
【０１４２】
電流センサ１１は、本発明の第１の実施の形態の具体例における電流センサ１１と同様に構成されるが、設置される箇所が異なる。電流センサ１１は、電源回路５００３から記憶装置５００５への給電回路に設けられている。
【０１４３】
監視プロセッサ２００のハードウェア構成は、本発明の第１の実施の形態の具体例における構成と同様である。
【０１４４】
また、この具体例では、上述の具体例１と同様に、測定の対象となるタスクを呼び出すシェルが用意されているものとする。測定の対象となるタスクは、ストレージ２のコントローラ５００１に実行させるタスクである。また、このシェルは、具体例１と同様に、該当するタスクを表す実行形式のバイナリを呼び出すコマンドと、その直前に通知信号を送信するコマンドとを含む。また、このシェルは、具体例１と同様に、該当するタスクの実行形式バイナリと同名であることが望ましい。
【０１４５】
また、この具体例では、測定情報としては、オフセット値および測定回数を含む情報が、測定制御装置１２により既に取得済みであるものとする。
【０１４６】
以上のように構成された具体例の動作について説明する。
【０１４７】
まず、ホスト装置３において、ＣＰＵ３００１は、測定の対象となるタスクの呼び出しを含むコンピュータ・プログラムをメモリ３００２に読み込んで実行する。
【０１４８】
そして、ＣＰＵ３００１は、ストレージ２に実行させる、測定の対象となるタスクを呼び出すタイミングで、上述のシェルを実行することになる。そこで、通知信号送信部３１は、ストレージ２に対して、通知信号を送信する（ステップＳ４１、Ｓ４２）。
【０１４９】
通知信号の送信は、ＳＡＳインタフェースを介して行われる。例えば、ストレージ２において、メモリ５００２における所定のアドレスに対するライトを、通知信号と認識するように定められていてもよい。
【０１５０】
次に、ストレージ２の開始信号発行部２３は、通知信号が受信されたので（ステップＳ５１でＹｅｓ）、測定制御装置１２に対して開始信号を発行する（ステップＳ２２）。
【０１５１】
以降、測定制御装置１２は、本発明の第１の実施の形態における具体例と同様に動作する。
【０１５２】
なお、本実施の形態では、具体例１および具体例２からわかるように、タスクの開始が検出されてから初回の測定の実行までのレイテンシが、本発明の第１の実施の形態に比べて長くなる。しかしながら、これは、例えば、次の手法により解決される。ホスト装置３の通知信号送信部３１は、通知信号を送信してから、上述のレイテンシに基づく期間だけ待機してから、タスクの呼び出しを行えばよい。これは、例えば、そのように記述されたシェルを用いることで実現される。これにより、タスクの開始と、初回の測定のタイミングとをより精度よく連動させることができる。
【０１５３】
次に、本発明の第２の実施の形態の効果について述べる。
【０１５４】
本発明の第２の実施の形態としての電子機器は、ホスト装置に接続された電子機器においてタスクの実行に関連して変化する消費電流を、より効率的に且つ精度よく測定することができる。
【０１５５】
その理由について説明する。本実施の形態は、ホスト装置と、電子機器とを備える。ホスト装置では、通知信号送信部が、測定の対象となるタスクの開始を検出すると、電子機器に対して通知信号を送信する。また、電子機器は、本発明の第１の実施の形態としての電子機器と略同様に構成されるが、次の点が異なる。すなわち、開始信号発行部が、通知信号をホスト装置から受信すると、開始信号を測定制御装置に対して発行するからである。
【０１５６】
これにより、本実施の形態は、タスクの実行に関連して変化する消費電流の効率的かつ高精度な測定を、ホスト装置に接続される様々な周辺機器に対しても実行可能となる。
【０１５７】
なお、上述した本発明の各実施の形態において、電子機器の開始信号発行部またはホスト装置の通知信号送信部は、測定の対象となるタスクを呼び出すシェルを用いて、タスクの開始を検出する例について説明した。これに限らず、電子機器の開始信号発行部は、測定の対象となるタスクのプログラムの開始アドレスをあらかじめ記憶しておき、現在の実行アドレスと、記憶しておいた開始アドレスとの一致により、タスクの開始を検出してもよい。この場合、本発明の第２の実施の形態のように、電子機器がホスト装置に接続される周辺機器として構成される場合であっても、電子機器は、ホスト装置からの通知信号によらずに開始信号を発行できる。その結果、本実施の形態は、測定の対象となるタスクの開始と初回の測定のタイミングとを、より精度よく連動させることができる。
【０１５８】
また、上述した本発明の各実施の形態において、電子機器として、情報処理装置、ＨＢＡまたはストレージを適用する例について説明したが、各実施の形態の電子機器は、これらに限定されない。
【０１５９】
また、上述した本発明の各実施の形態において、各機能ブロックが、メモリに記憶されたコンピュータ・プログラムを実行するＣＰＵまたはプロセッサによって実現される例を中心に説明した。これに限らず、各機能ブロックの一部、全部、または、それらの組み合わせが、専用のハードウェアにより実現されていてもよい。
【０１６０】
また、上述した本発明の各実施の形態において、各フローチャートを参照して説明した各装置の動作を、本発明のコンピュータ・プログラムとしてコンピュータ装置の記憶装置（記憶媒体）に格納しておく。そして、係るコンピュータ・プログラムを当該ＣＰＵが読み出して実行するようにしてもよい。そして、このような場合において、本発明は、係るコンピュータ・プログラムのコードあるいは記憶媒体によって構成される。
【０１６１】
また、上述した各実施の形態は、適宜組み合わせて実施されることが可能である。
【０１６２】
また、本発明は、上述した各実施の形態に限定されず、様々な態様で実施されることが可能である。
【符号の説明】
【０１６３】
１、２    電子機器
２０    情報処理システム
３    ホスト装置
１１    電流センサ
１２    測定制御装置
１３、２３    開始信号発行部
３１    通知信号送信部
１２１  電流センサ制御部
１２２  制御情報取得部
１２３  測定制御部
１００、４００、５００    コンピュータ装置
２００    監視プロセッサ
１００１、３００１    ＣＰＵ
２００１    プロセッサ
４００１    演算器
５００１    コントローラ
１００２、２００２、３００２、４００２、５００２    メモリ
１００３、３００３、５００３    電源回路
４００３    二次給電回路
３００４、４００４、５００４    接続インタフェース
５００５  記憶装置
【図１】
2018060382.tif 000003
【図２】
2018060382.tif 000004
【図３】
2018060382.tif 000005
【図４】
2018060382.tif 000006
【図５】
2018060382.tif 000007
【図６】
2018060382.tif 000008
【図７】
2018060382.tif 000009
【図８】
2018060382.tif 000010
【図９】
2018060382.tif 000011
【図１０】
2018060382.tif 000012