(57)【要約】【課題】被検査機器上でのプログラムの動作とその消費電力量との因果関係を解析するための消費電力解析用データを作成するトレースデータ処理装置を提供する。【解決手段】トレーサ１０４が取得したトレースデータ２２と電力計測器１０５が取得した電力計測データ２３とが入力されると、同期マーカ付加部１１１は、いわゆるタイムスタンプである同期マーカをその双方に付加する。同期マーカ対応付け部１１２は、時間的にほぼ一致する位置に付加されたトレースデータ２２および電力計測データ２３の同期マーカ同士を対応付け、時間相関的推論部１１３は、データ上の時刻を一致させるための調整を実行する。この調整の終了後、マッチング部１１からは、トレースデータ２２および電力計測データ２３をマッチングしたトレースマッチングデータ２４が出力される。【選択図】    図１
2005062106.tif 000002
【特許請求の範囲】
【請求項１】
被検査機器上でのプログラムの実行過程を記録したトレースデータを入力するトレースデータ入力手段と、
前記被検査機器の消費電力量を時系列的に記録した電力計測データを入力する電力計測データ入力手段と、
データ上の時刻が一致するように調整を行いながら前記トレースデータと前記電力計測データとをマッチングし、そのマッチング結果を消費電力解析用データとして出力するマッチング手段と
を具備することを特徴とするトレースデータ処理装置。
【請求項２】
前記マッチング手段は、
同期を取得するためのマーカを前記トレースデータおよび前記電力計測データにそれぞれ付加する同期マーカ付加手段と、
時間的にほぼ一致する位置に付加された前記トレースデータおよび前記電力計測データのマーカ同士を対応付ける同期マーカ対応付け手段と、
前記対応付けがなされた少なくとも２組のマーカの付加位置に基づき、前記トレースデータおよび前記電力計測データ間における経時幅調整のための時間相関的推論を実行する時間相関的推論手段と
を有することを特徴とする請求項１記載のトレースデータ処理装置。
【請求項３】
前記マッチング手段は、前記プログラムのメモリマップを参照し、その実行過程を機能的なまとまりをもった単位で識別するための情報を前記消費電力解析用データに付加することを特徴とする請求項１記載のトレースデータ処理装置。
【請求項４】
前記消費電力解析用データを表示する表示手段をさらに具備することを特徴とする請求項１記載のトレースデータ処理装置。
【請求項５】
被検査機器上でのプログラムの実行過程を記録したトレースデータを入力するステップと、
前記被検査機器の消費電力量を時系列的に記録した電力計測データを入力するステップと、
データ上の時刻が一致するように調整を行いながら前記トレースデータと前記電力計測データとをマッチングし、そのマッチング結果を消費電力解析用データとして出力するステップと
を具備することを特徴とするトレースデータ処理方法。
【請求項６】
前記マッチングを行うステップは、
同期を取得するためのマーカを前記トレースデータおよび前記電力計測データにそれぞれ付加するステップと、
時間的にほぼ一致する位置に付加された前記トレースデータおよび前記電力計測データのマーカ同士を対応付けるステップと、
前記対応付けがなされた少なくとも２組のマーカの付加位置に基づき、前記トレースデータおよび前記電力計測データ間における経時幅調整のための時間相関的推論を実行するステップと
を有することを特徴とする請求項５記載のトレースデータ処理方法。
【請求項７】
前記マッチングを行うステップは、前記各種プログラムのメモリマップを参照し、その実行過程を機能的なまとまりをもった単位で識別するための情報を前記消費電力解析用データに付加することを特徴とする請求項５記載のトレースデータ処理方法。
【請求項８】
前記消費電力解析用データを表示するステップをさらに具備することを特徴とする請求項５記載のトレースデータ処理方法。
【請求項９】
コンピュータを、
被検査機器上でのプログラムの実行過程を記録したトレースデータを入力するトレースデータ入力手段、
前記被検査機器の消費電力量を時系列的に記録した電力計測データを入力する電力計測データ入力手段、
データ上の時刻が一致するように調整を行いながら前記トレースデータと前記電力計測データとをマッチングし、そのマッチング結果を消費電力解析用データとして出力するマッチング手段
として機能させるためのトレースデータ処理プログラム。
【請求項１０】
前記マッチング手段を、
同期を取得するためのマーカを前記トレースデータおよび前記電力計測データにそれぞれ付加する同期マーカ付加手段、
時間的にほぼ一致する位置に付加された前記トレースデータおよび前記電力計測データのマーカ同士を対応付ける同期マーカ対応付け手段、
前記対応付けがなされた少なくとも２組のマーカの付加位置に基づき、前記トレースデータおよび前記電力計測データ間における経時幅調整のための時間相関的推論を実行する時間相関的推論手段
として機能させるための請求項９記載のトレースデータ処理プログラム。
【請求項１１】
前記マッチング手段に、前記プログラムのメモリマップを参照し、その実行過程を機能的なまとまりをもった単位で識別するための情報を前記消費電力解析用データに付加させることを特徴とする請求項９記載のトレースデータ処理プログラム。
【請求項１２】
コンピュータを、
前記消費電力解析用データを表示する表示手段としてさらに機能させるための請求項９記載のトレースデータ処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、例えば携帯電話機やＰＤＡ（Personal Digital Assistants）端末等の電子機器の消費電力解析に適用して好適なトレースデータ処理装置、トレースデータ処理方法およびトレースデータ処理プログラムに関する。
【背景技術】
【０００２】
近年、例えば携帯電話機やＰＤＡ端末など、バッテリ駆動可能な携帯型の電子機器が広く普及している。この種の電子機器では、バッテリの長寿命化を図るために、様々な省電力機構を備えている。また、無駄な電力消費を少しでも削減するために、消費電力に関する解析手法も種々開発されている（例えば特許文献１）。
【０００３】
この特許文献１に記載された消費電力解析装置は、被検査対象であるコンピュータが各種部品に対して発行した消費電力に関連する制御命令を表す電力制御信号を検出するとともに、所定の部品の消費電力に関する信号およびコンピュータ全体の消費電力に関する信号を測定することにより、そのコンピュータにおける電力制御信号と消費電力との関係を明らかにしようというものである。
【０００４】
この消費電力解析装置による消費電力解析を実施すれば、省電力効果を最大限に発揮させるための電力制御信号の発行制御手順等を模索する手掛かりを得ることができ、バッテリの長寿命化を図るための作業を効率化することが実現される。
【特許文献１】特開平１１−２０２９８４号公報。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、最近では、半導体製造技術の向上が目覚ましく、携帯電話機やＰＤＡ端末などの電子機器においては、プロセッサを含む部品のワンチップ化が進んでいる。したがって、各部品に対する電力制御信号の検出や各部品ごとの消費電力の測定は、この種の電子機器においては、あまり意味のない事になってしまっている。また、そもそも、電力制御信号や消費電力に関する信号を外部出力するための信号線等が、この種の電子機器において敷設されることはない。
【０００６】
さらに、この種の電子機器に対する高機能化の要求も強まる一方であり、搭載するソフトウェアが増加・複雑化している傾向にある。また、このような状況においては、ソフトウェアも階層化するため、電力制御信号は間接的に駆動されることになる。つまり、たとえ電力制御信号の検出が行えた場合であっても、その電力制御信号とソフトウエアの機能との因果関係が不明確になりがちである。
【０００７】
以上より、前述の特許文献１に記載された消費電力解析装置では、携帯電話機やＰＤＡ端末などの電子機器におけるソフトウェアの動作とその消費電力量との因果関係を解析するのは困難であると言わざるを得ない。
【０００８】
この発明はこのような事情を考慮してなされたものであり、被検査機器上におけるプログラムの動作とその消費電力量との因果関係を解析するための消費電力解析用データを作成するトレースデータ処理装置、トレースデータ処理方法およびトレースデータ処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
前述した目的を達成するために、この発明のトレースデータ処理装置は、被検査機器上でのプログラムの実行過程を記録したトレースデータを入力するトレースデータ入力手段と、前記被検査機器の消費電力量を時系列的に記録した電力計測データを入力する電力計測データ入力手段と、データ上の時刻が一致するように調整を行いながら前記トレースデータと前記電力計測データとをマッチングし、そのマッチング結果を消費電力解析用データとして出力するマッチング手段とを具備することを特徴とする。
【００１０】
この発明のトレースデータ処理装置においては、例えば個別に採取されるトレースデータと電力計測データとを経時的な調整を施しながらマッチングし、そのマッチング結果を消費電力解析用データとして出力する。つまり、携帯電話機やＰＤＡ端末などの電子機器におけるソフトウェアの動作とその消費電力量との因果関係を解析するのに適した情報を提供することができる。
【発明の効果】
【００１１】
以上のように、この発明によれば、被検査機器上におけるプログラムの動作とその消費電力量との因果関係を解析するための消費電力解析用データを作成するトレースデータ処理装置、トレースデータ処理方法およびトレースデータ処理プログラムを提供することができる。
【発明を実施するための最良の形態】
【００１２】
以下、図面を参照しながら、この発明の実施形態を説明する。  
図１は、この発明の実施形態に係るトレースデータ処理装置の動作環境および機能ブロックを示す図である。
【００１３】
この実施形態のトレースデータ処理装置１は、例えば携帯電話機やＰＤＡ端末などの被検査機器２の消費電力解析を支援するツールであり、この被検査機器２におけるソフトウェアの動作とその消費電力量との因果関係を解析するためのデータを作成する。
【００１４】
被検査機器２に搭載されるソフトウェアのソースコードＡは、コンパイラ１０１によりコンパイルされてオブジェクトモジュールが生成され、このオブジェクトモジュールがリンカ１０２によりリンクされてロードモジュールが生成される。そして、このリンカ１０２により生成されたロードモジュールがソフトウェアオブジェクトコードＢとして被検査機器２に組み込まれる。また、このリンカ１０２によるリンク時には、ソフトウェアオブジェクトコードＢの各コードがアドレス空間上のどこに配置されるのかを示すメモリマップ２１が生成される。
【００１５】
また、この被検査機器２には、ソフトウェアオブジェクトコードＢのほか、被検査機器２に対する何らかの操作があたかも行われたようにソフトウェアオブジェクコードＢに認識させるためのシミュレータ１０３が検査用に暫定的に組み込まれる。そして、被検査機器２の検査においては、このシミュレータ１０３によってソフトウェアオブジェクトコードＢに種々の動作を行わせながら、トレーサ１０４にトレースデータ２２を取得させ、電力計測器１０５に電力計測データを取得させる。なお、被検査機器２に対する実際の操作によってソフトウェアオブジェクトコードＢに所望の動作を行わせることができる状況にある場合には、このシミュレータ１０３を用いる必要はなく、そちらの方が効率的であるならば、その実際の操作を被検査機器２の検査として行えばよい。
【００１６】
トレーサ１０４は、被検査機器２がソフトウェアの命令を実行するごとにその情報をトレースデータ２２として出力するものであり、その結果、被検査機器２におけるソフトウェアオブジェクトコードＢの実行過程がトレースデータ２２に記録されることになる。一方、電力計測器１０５は、被検査機器２の消費電力量を所定の周期で計測して電力計測データ２３として出力するものであり、その結果、電力計測データ２３には、被検査機器２の消費電力量が時系列的に記録されることになる。
【００１７】
そして、トレースデータ処理装置１は、このトレーサ１０４によって取得されたトレースデータ２２と電力計測器１０５によって取得された電力計測データ２３とを入力し、これらを経時的な調整を施しながらマッチングした消費電力解析用データ（トレースマッチングデータ２４）を作成するとともに、このトレースマッチングデータ２４を表示装置１０６に表示する。そのために、トレースデータ処理装置１は、マッチング部１１と表示部１２とを有し、また、マッチング部１１は、同期マーカ付加部１１１、同期マーカ対応付け部１１２および時間相関的推論部１１３とを備えている。
【００１８】
図２には、トレーサ１０４が取得したトレースデータ２２の一例、図３には、電力計測器１０５が取得した電力計測データ２３の一例がそれぞれ示されている。この図２および図３に示されるトレースデータ２２と電力計測データ２３とは、同一の被検査機器２に対する同一の検査実施時に取得されたものである。図２に示すように、トレースデータ２２には、各命令コードのアドレスが実行された順に記録されている。一方、電力計測データ２３には、周期的に測定された消費電力量が時系列に記録されている。
【００１９】
トレースデータ処理装置１のマッチング部１１は、このトレースデータ２２と電力計測データ２３とを入力し、まず、同期マーカ付加部１１１によって、いわゆるタイムスタンプである同期マーカをその入力したトレースデータ２２および電力計測データ２３の双方に付加する。このタイムスタンプの値は、各データが取得された時刻である絶対時刻であっても、ある基準時からの経過時間である相対時刻であってもよい。また、図２に示したトレースデータ２２のように、一定の周期的または随時に時刻情報が埋め込まれている場合には、同期マーカ付加部１１１は、その埋め込まれた時刻情報の箇所に同期マーカを付加していく。一方、図３に示した電力計測データ２３のように、各出力値に時刻情報が付されている場合には、同期マーカ付加部１１１は、所定の時間間隔で同期マーカを付加していく。
【００２０】
図４および図５には、この図２および図３に示すトレースデータ２２および電力計測データ２３に対して同期マーカ付加部１１１が同期マーカを付加した結果がそれぞれ示されている。図４に示すように、一定の周期的または随時に時刻情報が埋め込まれているトレースデータ２２には、その埋め込まれた時刻情報の箇所に同期マーカ（Ｍ１）が付加されており、一方、各出力値に時刻情報が付されている電力計測データ２３には、所定の時間間隔で同期マーカ（Ｍ２）が付加されている。
【００２１】
なお、時刻情報がまったく存在しないデータの場合であっても、少なくともデータの取得開始時および取得終了時の２箇所のタイミングは得られるので、同期マーカ付加部１１１は、この２箇所から推測して当該データに対する同期マーカの付加を行う。その他、この同期マーカの付加については、特に、いずれかの方法に限定されるものではなく、種々の方法が適用可能である。
【００２２】
この同期マーカ付加部１１１によりトレースデータ２２および電力計測データ２３に同期マーカが付加されると、今度は、同期マーカ対応付け部１１２が、時間的にほぼ一致する位置に付加されたトレースデータ２２および電力計測データ２３の同期マーカ同士の対応付けを実行する。この同期マーカ対応付け部１１２が存在することにより、同期マーカ付加部１１１は、トレースデータ２２に対する同期マーカの付加と電力計測データ２３に対する同期マーカの付加とをそれぞれ独立に実施することが可能となるわけである。
【００２３】
また、この同期マーカ対応付け部１１２によりトレースデータ２２および電力計測データ２３の同期マーカ同士が対応付けられると、時間相関的推論部１１３が、データ上の時刻を一致させるための調整を実行する。この調整は、もっとも典型的な例としては、対応付けがなされた同期マーカの組を少なくとも２つ以上抽出し、時間的に連続する２組の同期マーカ間の一方のデータ量がＭ、他方のデータ量がＮであった場合、一方のデータ量がＮ倍になるように、また、他方のデータ量がＭ倍になるように、２つのデータ量の比率に応じた処理を実施すればよい。例えば電力計測データ２３のデータ量を３倍にする場合には、各データの消費電力量を１／３にして、その１／３にした各データを３つずつ並べていくのが最も簡単な方法である。その他、トレースデータ２２および電力計測データ２３間における経時幅が調整できれば、いずれの方法であっても適用可能である。
【００２４】
そして、この時間相関的推論部１１３による調整が終了すると、このマッチング部１１からは、トレースデータ２２および電力計測データ２３をマッチングしたトレースマッチングデータ２４が出力される。図６には、マッチング部１１から出力される、図２に示したトレースデータ２２および図３に示した電力計測データ２３から作成されたトレースマッチングデータ２４の一例が示されている。
【００２５】
この図６に示すトレースマッチングデータ２４では、被検査機器２上でのソフトウェアオブジェクトコードＢの実行過程と対応させて、当該被検査機器２全体の消費電力量が表されるので、トレースデータ処理装置１は、その因果関係を解析するための非常に有用な消費電力解析用データを提供することになる。
【００２６】
なお、図６に示すトレースマッチングデータ２４の右端のフィールドには、各コードがどのプログラム内のコードなのかが表されているが（INIT-P，PGM-A等）、これは、マッチング部１１が備える１オプション機能であり、リンカ１０２が作成したメモリマップ２１を参照して、トレースデータ２２に記録された各コードのアドレスから該当のプログラムを取得して記録する。この機能は、あくまでオプション機能であり、このトレースデータ処理装置１の主機能は、前述したトレースデータ２２と電力計測データ２３とのマッチングである。
【００２７】
また、図６中、トレースデータ２２に付加された同期マーカ（TS-0012）と電力計測データ２３に付加された同期マーカ（TP-0012）との位置が一致していないが、この同期マーカはあくまでマッチングのための目安であって、時間相関的推論部１１３による調整時においては、同期マーカ対応付け部１１２による同期マーカの対応付けの結果よりも実データから推論される結果を優先する。図６に示される同期マーカ（TS-0012，TP-0012）のずれは、実データからの推論結果を優先したために発生したものである。
【００２８】
そして、トレースデータ処理装置１の表示部１２は、以上のように作成したトレースマッチングデータ２４を表示装置１０６に表示する。すなわち、この表示装置１０６に表示されるトレースマッチングデータ２４を見ることにより、被検査機器２上でのソフトウェアオブジェクトコードＢの動作とその消費電力量との因果関係を視覚的に認識することが可能となる。
【００２９】
図７は、このトレースデータ処理装置１により処理されるデータの変遷を示す図、図８は、このトレースデータ処理装置１の処理の流れを示すフローチャートである。
【００３０】
まず、トレーサ１０４によって取得されたトレースデータ２２と電力計測器１０５によって取得された電力計測データ２３とが、入力データとしてトレースデータ処理装置１に入力される（図７の（Ａ），図８のステップＳ１〜Ｓ２）。すると、このトレースデータ処理装置１に入力されたトレースデータ２２および電力計測データ２３に対して、それぞれ同期マーカが付加される（図７の（Ｂ），図８のステップＳ３）。
【００３１】
次に、その付加された同期マーカの対応付けがトレースデータ２２および電力計測データ２３間で行われ（図７の（Ｃ）,図８のステップＳ４）、その同期マーカの対応付けの結果に基づき、トレースデータ２２および電力計測データ２３間における経時幅が調整されながらマッチングされて、トレースマッチングデータ２４として出力・表示される（図７の（Ｄ），図８のステップＳ５〜Ｓ６）。
【００３２】
このように、このトレースデータ処理装置によれば、被検査機器２上でのソフトウェアオブジェクトコードＢの動作とその消費電力量との因果関係を解析するための消費電力解析用データとして有用なトレースマッチングデータ２４を提供できる。
【００３３】
なお、前述の実施形態では、同期マーカ付加部１１１が、同期マーカ対応付け部１１２の存在を前提に、トレースデータ２２および電力計測データ２３に対してそれぞれ独立に同期マーカを付加する例を説明したが、その同期マーカの付加時に、トレースデータ２２および電力計測データ２３間の対応を考慮するようにしてもよい。
【００３４】
例えば図２および図３に示すトレースデータ２２および電力計測データ２３の場合のように、一方には周期的または随時に時刻情報が埋め込まれており、他方には全データに時刻情報が含まれているような場合には、まず、周期的または随時に時刻情報が埋め込まれた一方のデータに対する同期マーカの付加（その埋め込まれた時刻情報の箇所に同期マーカを付加）を行い、その付加した同期マーカとほぼ対応する箇所を検索しながら、他方のデータに対する同期マーカの付加を行えばよい。また、時刻情報がまったく存在しないデータの場合も、前述したように、少なくともデータの取得開始時および取得終了時の２箇所のタイミングは得られるので、まず、この２箇所から推測して当該データに対する同期マーカの付加を行い、その後、他方のデータに対する同期マーカの付加を行えばよい。この時、他方のデータも時刻情報がまったく存在しない場合には、やはりデータの取得開始時および取得終了時の２箇所のタイミングからほぼ対応する箇所を検索しながら、その同期マーカの付加を行えばよい。さらに、もし、双方ともに、全データに時刻情報が含まれている場合には、所定の時間間隔でそれぞれに同期マーカを付加していけばよい。同期マーカ付加部１１１がこのような考慮を行う場合には、同期マーカ対応付け部１１２は不要となる。
【００３５】
つまり、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【００３６】
【図１】この発明の実施形態に係るトレースデータ処理装置の動作環境および機能ブロックを示す図
【図２】同実施形態のトレースデータ処理装置が入力する、トレーサが取得したトレースデータの一例を示す図
【図３】同実施形態のトレースデータ処理装置が入力する、電力計測器が取得した電力計測データの一例を示す図
【図４】図２に示すトレースデータに対して同期マーカ付加部が同期マーカを付加した結果が示された図
【図５】図３に示す電力計測データに対して同期マーカ付加部が同期マーカを付加した結果が示された図
【図６】図２に示すトレースデータおよび図３に示す電力計測データから作成されるトレースマッチングデータの一例が示された図
【図７】同実施形態のトレースデータ処理装置により処理されるデータの変遷を示す図
【図８】同実施形態のトレースデータ処理装置の処理の流れを示すフローチャート
【符号の説明】
【００３７】
１…トレースデータ処理装置、２…被検査機器、１１…マッチング部、１２…表示部、２１…メモリマップ、２２…トレースデータ、２３…電力計測データ、２４…トレースマッチングデータ、１０１…コンパイラ、１０２…リンカ、１０３…シミュレータ、１０４…トレーサ、１０５…電力計測器、１０６…表示装置、１１１…同期マーカ付加部、１１２…同期マーカ対応付け部、１１３…時間相関的推論部、Ａ…ソフトウェアソースコード、Ｂ…ソフトウェアオブジェクトコード。
【図１】
2005062106.tif 000003
【図２】
2005062106.tif 000004
【図３】
2005062106.tif 000005
【図４】
2005062106.tif 000006
【図５】
2005062106.tif 000007
【図６】
2005062106.tif 000008
【図７】
2005062106.tif 000009
【図８】
2005062106.tif 000010