(57)【特許請求の範囲】
【請求項１】
対象機能ブロックの活性化要因毎の動作率と、該対象機能ブロックの消費電力とに基づいて、該対象機能ブロックの消費電力を見積もる第一近似式を生成し、該第一近似式の誤差を評価することによって、該対象機能ブロックに無駄な電力があることを検出する無駄電力検出手段と、
機能ブロックの選択ルールに従って選択した前記対象機能ブロックの動作に係る他機能ブロックの活性化要因毎の動作率を加えて、該対象機能ブロックの消費電力を見積もる第二近似式を生成し、該第二近似式に該他機能ブロックの活性化要因の項が含まれている場合、該他機能ブロックの活性化要因を該対象機能ブロックを無駄に動作させる要因であると特定する無駄電力要因特定手段とを有することを特徴とする集積回路の消費電力解析装置。
【請求項２】
前記選択ルールに従って前記他機能ブロックを選択し、選択した該機能ブロックの活性化要因から前記対象機能ブロックの活性化要因を除外した無駄動作候補リストを出力する無駄動作候補生成手段を有し、
前記無駄電力要因特定手段は、前記無駄動作候補リストから前記対象機能ブロックの動作に係る他機能ブロックの活性化要因を取得することを特徴とする請求項１記載の集積回路の消費電力解析装置。
【請求項３】
前記選択ルールは、前記対象機能ブロックと同じ上位ブロックに含まれる他機能ブロックを選択すること、又は、該対象機能ブロックと接続を持つ他機能ブロックを選択することを示すことを特徴とする請求項１又は２記載の集積回路の消費電力解析装置。
【請求項４】
前記第二近似式の誤差を評価することによって、前記対象機能ブロックを無駄に動作させる未特定な要因があると判断した場合、前記選択ルールの組合せによって対象範囲を拡大して前記他機能ブロックを選択し、選択した該機能ブロックの活性化要因から前記対象機能ブロックの活性化要因を除外した無駄動作候補リストを出力し、前記無駄電力要因特定手段に該対象機能ブロックを無駄に動作させる要因を特定させる拡大候補生成手段を有することを特徴とする請求項３記載の集積回路の消費電力解析装置。
【請求項５】
コンピュータが集積回路の消費電力を解析する消費電力解析方法であって、該コンピュータが、
対象機能ブロックの活性化要因毎の動作率と、該対象機能ブロックの消費電力とに基づいて、該対象機能ブロックの消費電力を見積もる第一近似式を生成し、該第一近似式の誤差を評価することによって、該対象機能ブロックに無駄な電力があることを検出する無駄電力検出手順と、
機能ブロックの選択ルールに従って選択した前記対象機能ブロックの動作に係る他機能ブロックの活性化要因毎の動作率を加えて、該対象機能ブロックの消費電力を見積もる第二近似式を生成し、該第二近似式に該他機能ブロックの活性化要因の項が含まれている場合、該他機能ブロックの活性化要因を該対象機能ブロックを無駄に動作させる要因であると特定する無駄電力要因特定手順とを実行することを特徴とする消費電力解析方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、集積回路設計において電力を無駄に消費している要因を解析することに関する。
【背景技術】
【０００２】
近年、ＬＳＩシステムの高集積化に伴う電力密度低減の要求、アメリカ環境保護局（ＥＰＡ）が推進する電気機器の省電力化プログラム（Energy Star）、省エネ法といった電気機器の消費電力規制の制定などによりＬＳＩの低消費電力化への要求がますます厳しくなり、ＬＳＩ設計における低消費電力化技術の重要性が増している。
【０００３】
低電力設計技術として、論理回路をシミュレーション（以下、単に論理シミュレーションと言う）することによって取得したＬＳＩ内部の動作情報などから無駄に動作している（動作結果が下流で使用されない）回路要素を特定し、無駄な動作をなくすように自動又は手作業で論理修正を施すということが行われている。
【０００４】
回路要素の特定は、セルベースで行われ、例えば、
（１）ラッチ・レジスタ等の順序セルで、データ入力信号が動作していないのにクロック信号が動作しているもの
（２）クロック入力が非動作もしくはイネーブル信号が非活性なのにデータ入力が動作しているもの
（３）クロックが動作しているレジスタで、入力側から辿れる上流の全レジスタでクロック又はイネーブル信号の停止により非活性となっているもの
（４）データが動作しているレジスタで、出力側から辿れる下流の全レジスタでクロック又はイネーブル信号の停止により非活性となっているもの
のようにセルベースで検出が行なわれる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−２３４１８７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上述した従来技術では、機能ブロック、演算パイプライン等の比較的大きな規模で無駄な動作がある場合には、調査対象セルの動作やその前後の限られた範囲を検証する方法では、例えば、機能ブロック毎に無駄な動作があるか否かを判定できないと言った問題がある。
【０００７】
また、上述した（３）、（４）のように回路を辿ってレジスタの無駄な電力を判定する手法では、複雑な回路トポロジを探索する場合、その探索範囲が広くなりすぎて有効な結果が得られないと言う問題がある。
【課題を解決するための手段】
【０００８】
開示の技術は、対象機能ブロックの活性化要因毎の動作率と、該対象機能ブロックの消費電力とに基づいて、該対象機能ブロックの消費電力を見積もる第一近似式を生成し、該第一近似式の誤差を評価することによって、該対象機能ブロックに無駄な電力があることを検出する無駄電力検出手段と、機能ブロックの選択ルールに従って選択した前記対象機能ブロックの動作に係る他機能ブロックの活性化要因毎の動作率を加えて、該対象機能ブロックの消費電力を見積もる第二近似式を生成し、該第二近似式に該他機能ブロックの活性化要因の項が含まれている場合、該他機能ブロックの活性化要因を該対象機能ブロックを無駄に動作させる要因であると特定する無駄電力要因特定手段とを有する集積回路の消費電力解析装置のように構成される。
【０００９】
また、上記課題を解決するための手段として、コンピュータに上記消費電力解析装置として機能させるためのプログラム、そのプログラムを記録した記録媒体、及び消費電力解析方法とすることもできる。
【発明の効果】
【００１０】
開示の技術では、機能ブロックベースで電力を無駄に消費している要因を解析することができる。
【図面の簡単な説明】
【００１１】
【図１】消費電力解析装置のハードウェア構成を示すブロック図である。
【図２】本実施例における解析対象の集積回路の機能ブロック構成例を示す図である。
【図３】消費電力解析装置の機能構成を示す図である。
【図４】電力解析部による処理について説明するための図（その１）である。
【図５】電力解析部による処理について説明するための図（その２）である。
【図６】無駄電力検出部の処理を説明するための図である。
【図７】近似式生成部での処理を説明するための図である。
【図８】無駄動作候補生成部による処理を説明するための図である。
【図９】無駄電力要因特定部の処理を説明するための図である。
【図１０】拡大候補生成部での処理を説明するための図である。
【図１１】消費電力解析装置によって解析される演算ブロック例を示す図である。
【図１２】図１１の演算ブロックの無駄な電力を解析するためのリスト例を示す図である。
【図１３】電力解析部による処理の結果例を示す図である。
【図１４】無駄電力検出部で生成された近似式の例および近似値と実際の電力解析値のずれを示す図である。
【図１５】無駄動作候補生成部よって抽出された無駄動作候補リストの例を示す図である。
【図１６】無駄電力要因特定部による処理結果の例を示す図である。
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態を図面に基づいて説明する。解析対象の集積回路全体は論理的なまとまりである複数の機能ブロックから構成されている。本実施例では、集積回路に関してセルレベルの無駄な動作を含まない抽象度の高い内部動作の動作に係る情報と、セルレベルの無駄な動作を含んでいる設計データを用いた回路動作の電力に係る情報とを用いることによって、機能ブロック（又は演算パイプライン）単位で無駄な電力消費の要因を特定することを可能とする。
【００１３】
本実施例に係る消費電力解析装置は、コンピュータ装置であり、図１に示すようなハードウェア構成を有する。図１は、消費電力解析装置のハードウェア構成を示すブロック図である。
【００１４】
図１において、消費電力解析装置１００は、コンピュータによって制御される端末であって、ＣＰＵ（Central Processing Unit）１１と、メモリユニット１２と、表示ユニット１３と、出力ユニット１４と、入力ユニット１５と、通信ユニット１６と、
記憶装置１７と、ドライバ１８とを有し 、システムバスＢに接続される。
【００１５】
ＣＰＵ１１は、メモリユニット１２に格納されたプログラムに従って消費電力解析装置１００を制御する。メモリユニット１２には、ＲＡＭ（Random Access Memory）及びＲＯＭ（Read-Only Memory）等が用いられ、ＣＰＵ１１にて実行されるプログラム、ＣＰＵ１１での処理に必要なデータ、ＣＰＵ１１での処理にて得られたデータ等を格納する。また、メモリユニット１２の一部の領域が、ＣＰＵ１１での処理に利用されるワークエリアとして割り付けられている。
【００１６】
表示ユニット１３は、ＣＰＵ１１の制御のもとに必要な各種情報を表示する。出力ユニット１４は、プリンタ等を有し、利用者からの指示に応じて各種情報を出力するために用いられる。入力ユニット１５は、マウス、キーボード等を有し、設計者であるユーザが消費電力解析装置１００が処理を行なうための必要な各種情報を入力するために用いられる。通信ユニット１６は、例えばインターネット、ＬＡＮ（Local Area Network）等に接続し、外部装置との間の通信制御をするための装置である。記憶装置１７には、例えば、ハードディスクユニットが用いられ、各種処理を実行するプログラム等のデータを格納する。
【００１７】
消費電力解析装置１００によって行われる処理を実現するプログラムは、例えば、ＣＤ−ＲＯＭ（Compact Disc Read-Only Memory）等の記憶媒体１９によって消費電力解析装置１００に提供される。即ち、プログラムが保存された記憶媒体１９がドライバ１８にセットされると、ドライバ１８が記憶媒体１９からプログラムを読み出し、その読み出されたプログラムがシステムバスＢを介して記憶装置１７にインストールされる。そして、プログラムが起動されると、記憶装置１７にインストールされたプログラムに従ってＣＰＵ１１がその処理を開始する。尚、プログラムを格納する媒体としてＣＤ−ＲＯＭに限定するものではなく、コンピュータが読み取り可能な媒体であればよい。コンピュータ読取可能な記憶媒体として、ＣＤ−ＲＯＭの他に、ＤＶＤディスク、ＵＳＢメモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリであっても良い。
【００１８】
また、消費電力解析装置１００によって行われる処理を実現するプログラムが、通信ユニット１６を介して外部装置から提供されてもよい。或いは、外部装置へ該プログラムを提供し、後述される各処理は外部装置で実現されるように構成してもよい。通信ユニット１６による通信は無線又は有線に限定されるものではない。
【００１９】
図２は、本実施例における解析対象の集積回路の機能ブロック構成例を示す図である。図２において、設計データ２２によって定義される、機能ブロックとして上位ブロックＸと上位ブロックＹとを含む集積回路が例示されている。更に、上位ブロックＸは機能ブロックＣと機能ブロックＤとを含み、上位ブロックＹは機能ブロックＡと機能ブロックＢとを含んでいる。
【００２０】
機能ブロック間の接続関係がデータの流れる方向を示す矢印で示されている。機能ブロックＡと機能ブロックＣ間では互いにデータの入出力が行われ、機能ブロックＡと機能ブロックＢ間では機能ブロックＡから機能ブロックＢへのデータの入力が行われ、機能ブロックＢと機能ブロックＤ間では互いにデータの入出力が行われる。
【００２１】
本実施例に係る消費電力解析処理は、設計者によって指定された機能ブロック（例えば、機能ブロックＡ）を、無駄に電力を消費している要因を検出するための対象ブロックに設定する。
【００２２】
論理仕様に基づく設計データ２２によって、機能ブロックＡを活性化する活性化要因は要因１及び要因３であり、機能ブロックＢを活性化する活性化要因は要因４及び要因６であり、機能ブロックＣを活性化する活性化要因は要因１、要因２、及び要因３であり、機能ブロックＤを活性化する活性化要因は要因１、要因４、及び要因５であることが例示されている。
【００２３】
このような論理仕様に基づいて、設計者により活性化要因リスト２１が予め作成され、メモリユニット１２又は記憶装置１７（以下、単に、記憶領域と言う）に格納される。活性化要因リスト２１では、機能ブロック毎に１以上の活性化要因が対応付けられている。
【００２４】
集積回路１に関して、活性化要因リスト２１は、機能ブロックＡに要因１及び要因３を対応付け、機能ブロックＢに要因４及び要因６を対応付け、機能ブロックＣに要因１、要因２、及び要因３を対応付け、機能ブロックＤに要因１、要因４、及び要因５を対応付けている。
【００２５】
図３は、消費電力解析装置の機能構成を示す図である。図３において、消費電力解析装置１００は、電力解析部４１と、無駄電力検出部４２と、無駄動作候補生成部４３と、無駄電力要因特定部４４とを有する。ＣＰＵ１１は、対応するプログラムを実行することによって、電力解析部４１と、無駄電力検出部４２と、無駄動作候補生成部４３と、無駄電力要因特定部４４として機能する。また、消費電力解析装置１００は、活性化要因リスト２１と、設計データ２２と、性能評価用論理モデル２３と、動作率データ２４と、電力値データ２５と、無駄動作候補リスト２６と、無駄電力要因リスト２７と、電力評価用プログラム１〜Ｎとを記憶領域に格納する。
【００２６】
電力解析部４１は、性能評価シミュレータ４１ａと、消費電力解析部４１ｂとを有する。電力解析部４１は、性能評価シミュレータ４１ａによって、電力評価用プログラム１〜Ｎを用いて、性能評価用論理モデル２３を評価して得られる活性化要因毎の動作率を含む動作率データ２４を出力して記憶領域に格納する。また、電力解析部４１は、消費電力解析部４１ｂによって、電力評価用プログラム１〜Ｎを用いて、設計データ２２を評価して得られるブロック毎の消費電力を含む電力値データ２５を出力して記憶領域に格納する。
【００２７】
無駄電力検出部４２は、対象機能ブロックの活性化要因に関し、活性化要因リスト２１を参照し、対象機能ブロックの活性化要因の動作率を説明変数、対象機能ブロックの電力値を目的変数とし、説明変数の組合せ毎に動作率データ２４と電力値データ２５とから得られる値を用いて重回帰分析による近似式を生成し、組合せ毎に誤差評価を行うことにより、無駄な電力が消費されているか否かを検出する処理部である。
【００２８】
無駄動作候補生成部４３は、機能ブロック間の接続関係、機能ブロック間の構成に基づく階層関係等による所定ルールに従って他機能ブロックまで対象範囲を広げ、対象機能ブロック以外の他機能ブロックの活性化要因を無駄動作候補リストとして出力し記憶領域に格納する。無駄動作候補生成部４３での処理によって、対象機能ブロックと関係の深い機能ブロックの活性化要因が、無駄動作候補として抽出される。
【００２９】
無駄電力要因特定部４４は、他機能ブロックまで広げた対象範囲にて、活性化要因リスト２１を参照し、広げた範囲における活性化要因の動作率を説明変数,対象機能ブロックの電力値を目的変数とし、説明変数の組合せ毎に動作率データ２４と電力値データ２５とから得られる値を用いて重回帰分析による近似式を生成し、組合せ毎に誤差評価を行うことにより、無駄な電力消費の要因を特定する処理部である。無駄電力要因特定部４４は、検出した要因を無駄電力要因リスト２７として出力し記憶領域に格納する。
【００３０】
活性化要因リスト２１は、論理仕様を元に設計者によって予め作成される、機能ブロック毎の活性化要因である。活性化要因は、例えば、プロセッサならば、「命令フェッチアクセス」、「浮動小数点レジスタ読み出し」、「演算器Ａ使用」、「Ｌｏａｄ命令実行」、「一次キャッシュミス」のような抽象度の高い内部動作を表し、各機能ブロックに対してこの内部動作のうち対象機能ブロックを活性化すると考えられる動作要因である。活性化要因リスト２１では、単に、複数の要因を要因１、要因２、...、要因６で簡潔に示す。
【００３１】
設計データ２２は、ハードウェア記述言語で記述され、機能ブロック間の構成に基づく階層構造の情報や機能ブロック間の入出力に係る接続情報を有する設計データである。
【００３２】
性能評価用論理モデル２３は、セルレベルの無駄な動作を含まない、機能ブロック単位の動作を表した抽象度の高い論理モデルである。電力評価用プログラム１〜Ｎを性能評価用論理モデル２３に用いることにより、機能ブロック毎の評価を行うことができる。
【００３３】
動作率データ２４は、電力評価用プログラム１〜Ｎを性能評価用論理モデル２３に用いて性能評価を行うことにより得られる活性化要因毎の動作率を含むデータである。
【００３４】
電力値データ２５は、電力評価用プログラム１〜Ｎを設計データ２２に用いて消費電力解析を行うことにより得られるブロック毎の消費電力値を含むデータである。
【００３５】
無駄動作候補リスト２６は、他機能ブロックの活性化要因から対象機能ブロックの活性化要因を除いた残りの活性化要因（以下、無駄動作要因と言う）のリストである。
【００３６】
無駄電力要因リスト２７は、対象機能ブロックに関して電力を無駄に消費している活性化要因のリストである。
【００３７】
電力評価用プログラム１〜Ｎは、設計データ２２をシミュレーションで動作させるためのテストベクターとして使用される複数の電力評価用プログラムである。
【００３８】
電力解析部４１による処理について、図４及び図５で説明する。図４は、電力解析部による処理について説明するための図（その１）である。先ず、図４では、一の電力評価用プログラムＫを用いた処理について説明する。図４（Ａ）に示すように、電力解析部４１の性能評価シミュレータ４１ａは、電力評価用プログラムＫを用いて、性能評価用論理モデル２３を評価し、プログラム結果２４−Ｋを出力する。
【００３９】
プログラム結果２４−Ｋは、活性化要因リスト２１から得られる活性化要因毎に性能評価シミュレータ４１ａによって評価された動作率を対応させたテーブルである。例えば、動作種類「要因１」は動作率「１００％」、動作種類「要因２」は動作率「７３％」、...、動作種類「要因６」は動作率「０％」の評価結果を示す。
【００４０】
また、図４（Ｂ）に示すように、電力解析部４１の消費電力解析部４１ｂは、電力評価用プログラムＫを用いて、設計データ２２に基づく集積回路の消費電力を解析し、プログラム結果２５−Ｋを出力する。
【００４１】
プログラム結果２５−Ｋは、機能ブロック毎に消費電力解析部４１ｂによって解析された消費電力値を対応させたテーブルである。例えば、機能ブロック名「Ａ」は消費電力「１３３．４ｍＷ」、機能ブロック名「Ｂ」は消費電力「２２０．５ｍＷ」、...、機能ブロック名「Ｄ」は消費電力「３５０．０ｍＷ」の解析結果を示す。
【００４２】
図４（Ａ）において、所定条件の下に、性能評価用論理モデルを用いた性能評価シミュレーションを設計データ２２を用いた論理シミュレーションによる性能評価で代用してもよい。設計データ２２を用いて性能評価シミュレータ４１ａを動作させた場合、設計データ２２の実動作が反映されるため機能的に無駄な動作を含んだ動作率となってしまう。しかし、下記の条件を満たす場合、性能評価シミュレータ４１ａによって取得した動作率データ２４であれば、無駄な電力を近似誤差として検出することができる。
【００４３】
条件（１）：
対象回路の特徴として回路が有効な動作として動作する場合と、無駄に動作する場合で消費電力の傾向が異なるような場合
条件（２）：
電力評価用プログラム１〜Ｎ間でデータの反転率などを揃えておき、無駄な動作ではデータ反転率が有効な動作と異なり消費電力の傾向も変わるといったように、電力評価用プログラム１〜Ｎ上の工夫として有効な動作と無駄な動作での電力の傾向を変えられる場合
この様な条件の元では、有効な動作と無駄な動作で消費電力の傾向に差が出るため、本発明によりその無駄電力を検出することが可能である。
【００４４】
図５は、電力解析部による処理について説明するための図（その２）である。図５では、図４で説明した処理を電力評価用プログラム１、２、３、...、Ｎの各々について実行する。
【００４５】
性能評価シミュレータ４１ａは、各電力評価用プログラム１〜Ｎに対応するプログラム結果２４−１〜２４−Ｎを出力する。従って、プログラム結果２４−１〜２４−Ｎを含む動作率データ２４が記憶領域に格納される。
【００４６】
また、消費電力解析部４１ｂは、各電力評価用プログラム１〜Ｎに対応するプログラム結果２５−１〜２５−Ｎを出力する。従って、プログラム結果２５−１〜２５−Ｎを含む電力値データ２５が記憶領域に格納される。
【００４７】
電力解析部４１で取得する動作率データ２４は、設計データ２２を用いるのではなく、集積回路のより抽象度の高い動作モデルである性能評価用論理モデル２３を用いた性能評価シミュレーションにより取得されるデータである。
【００４８】
このような処理によって、電力解析部４１で、後の処理で生成する重回帰分析による近似式の説明変数および目的変数として使用するためのデータが準備される。
【００４９】
次に、無駄電力検出部４２での処理について説明する。図６は、無駄電力検出部の処理を説明するための図である。図６において、無駄電力検出部４２は、近似式生成部４２ａを有する。図６では、対象機能ブロックが機能ブロックＡである場合を例として説明する。
【００５０】
無駄電力検出部４２は、電力解析部４１によって出力された動作率データ２４のうち対象機能ブロックの活性化要因の動作率と、電力値データ２５のうち対象機能ブロックの消費電力値とを用いて、近似式生成部４２ａによって、消費電力の近似式を生成し、生成された近似式の近似誤差に基づいて無駄な動作の有無を判断する。
【００５１】
図６において、例えば対象機能ブロックが機能ブロックＡである場合、無駄電力検出部４２は、活性化要因リスト２１から機能ブロックＡの要因１及び要因３を取得する（ステップＳ２１）。
【００５２】
そして、無駄電力検出部４２は、動作率データ２４から各プログラム結果２４−１〜２４−Ｎの要因１の動作率と、要因３の動作率とを抽出する（ステップＳ２２）。プログラム結果２４−１からは、要因１の動作率「１００％」と、要因３の動作率「０％」とが取得される。
【００５３】
また、無駄電力検出部４２は、電力値データ２５から各プログラム結果２５−１〜２５−Ｎの機能ブロックＡの消費電力を抽出する（ステップＳ２３）。プログラム結果２５−１からは、機能ブロックＡの消費電力「１３３．４ｍＷ」が取得される。
【００５４】
次に、無駄電力検出部４２は、電力評価用プログラム１〜Ｎに対応させて活性化要因毎の動作率と消費電力とを近似式生成部４２ａに与えて、近似式生成部４２ａに回帰式による近似式を生成させ、誤差評価関数による計算結果を示す例えば自由度修正済決定係数Ｒ２'を取得する（ステップＳ２４）。
【００５５】
近似式生成部４２ａによる処理に従って選択された、回帰式と自由度修正済決定係数Ｒ２'とが出力される。回帰式の誤差評価関数として一般に知られているものとしては自由度修正済み決定係数Ｒ２'や赤星の情報量基準(AIC)などがあり、本実施例では自由度修正済決定係数Ｒ２'を用いて説明する。Ｒ２'は値が大きいほど近似式のあてはまりが良い(1が最も良い)。
【００５６】
機能ブロックＡを例とした場合、消費電力を目的変数とし、動作率を説明変数とする回帰式が出力される。
【００５７】
［消費電力］＝C0＋C1×［要因１の動作率］＋C2×［要因３の動作率］
ここで、Ｃ０は定数、また、Ｃ１、及びＣ２は回帰係数である。
【００５８】
そして、無駄電力検出部４２は、近似式生成部４２ａによって得た係数Ｒ２'が所定値Ｋより小さいか否かを判断する（ステップＳ２５）。係数Ｒ２'が所定値Ｋ以上である場合、無駄電力検出部４２は、無駄な電力の消費が無いと判断し、「無駄電力無し」を示す解析結果２８を出力し、この処理を終了する。消費電力解析装置１００は、表示ユニット１３に解析結果２８を表示する。
【００５９】
一方、係数Ｒ２'が所定値Ｋより小さい場合、無駄電力検出部４２によって、無駄な電力の消費があると判断され、無駄動作候補生成部４３による処理が開始される。
【００６０】
対象機能ブロックを機能ブロックＡとした場合で、近似式生成部４２ａによる処理を説明する。図７は、近似式生成部での処理を説明するための図である。図７では、対象機能ブロックが機能ブロックＡである場合で説明する。図６のステップＳ２２にて、無駄電力検出部４２によって動作率データ２４から抽出された機能ブロックＡの活性化要因毎の動作率を動作率データ２４'で示す。また、図６のステップＳ２３にて、無駄電力検出部４２によって電力値データ２５から抽出された機能ブロックＡの消費電力を電力値データ２５'で示す。
【００６１】
動作率データ２４'が説明変数として与えられ、また、電力値データ２５'が目的変数として与えられると、近似式生成部４２ａは、説明変数間の相関関係を求め、相関が高い変数をマージ（変数整理）する（ステップＳ３１）。
【００６２】
そして、近似式生成部４２ａは、説明変数の組合せの総当たりで重回帰分析を行い、得られた式から、
（１）負の回帰係数
（２）有意性が低い回帰係数
を含む式を削除する（ステップＳ３２）。
【００６３】
次に、近似式生成部４２ａは、ステップＳ３２にて残った回帰式のうち係数Ｒ２'が一番大きい回帰式を選択して、選択された回帰式と係数Ｒ２'とを近似式生成結果４２ｒとして記憶領域に出力する（ステップＳ３３）。
【００６４】
係数Ｒ２'が所定値Ｋより小さいく無駄な電力の消費があると判断された場合、図８に示すような無駄動作候補生成部４３による処理が行われる。図８は、無駄動作候補生成部による処理を説明するための図である。図８中、対象機能ブロックが機能ブロックＡである場合を例として各種データを示している。
【００６５】
図８において、無駄動作候補生成部４３は、設計データ２２を入力し、機能ブロックの選択ルール３０に従って、対象機能ブロックに関係の深い他機能ブロックを選択する（ステップＳ５１）。選択ルール３０は、以下のようなルールを示す。
【００６６】
ルール１）対象機能ブロックと同じ親ブロックに含まれる機能ブロック（階層ベースの機能ブロック列挙）
又は、
ルール２）対象機能ブロックと接続を持つ機能ブロック（接続ベースの機能ブロック列挙）
選択ルール３０は、上記ルール１）又はルール２）を予め指定する構成であっても、設計者によっていずれかが選択される構成であってもよい。
【００６７】
次に、無駄動作候補生成部４３は、選択した機能ブロックの活性化要因を収集し、収集した活性化要因から対象機能ブロックの活性化要因を除外して、残った活性化要因を無駄動作候補としてリストした無駄動作候補リスト２６を記憶領域に出力する（ステップＳ５２）。
【００６８】
選択ルール３０がルール１）である場合、設計データ２２を参照することにより、対象機能ブロックＡの親ブロックは上位ブロックＹとなり、上位ブロックＹに含まれる機能ブロックＢが特定される。機能ブロックＢの活性化要因は、活性化要因リスト２１を参照することにより要因４及び要因６となる。そして、対象機能ブロックＡの活性化要因と重複する要因を除外して、無駄動作候補リスト２６が記憶領域に出力される。この場合、対象機能ブロックＡの活性化要因は要因１及び要因３であり、重複する要因がないため、無駄動作候補リスト２６には要因４及び要因６がリストされる。
【００６９】
一方、選択ルール３０がルール２）である場合、設計データ２２を参照することにより、対象機能ブロックＡに接続される機能ブロックは、機能ブロックＢと機能ブロックＣとが特定される。活性化要因リスト２１を参照することにより、機能ブロックＢの活性化要因である要因４と要因６とに加えて、機能ブロックＣの活性化要因である要因１、要因２、及び要因３と抽出される。そして、対象機能ブロックＡの活性化要因と重複する要因１及び要因３を除外した要因２、要因４、及び要因６がリストされた無駄動作候補リスト２６が記憶領域に出力される。
【００７０】
無駄動作候補リスト２６が出力されると、無駄電力要因特定部４４による処理が行われる。図９は、無駄電力要因特定部の処理を説明するための図である。図９において、無駄電力要因特定部４４は、近似式生成部４４ａを有する。図９中、対象機能ブロックが機能ブロックＡである場合を例として各種データを示している。また、図６のステップＳ２３にて、無駄電力検出部４２によって電力値データ２５から抽出された機能ブロックＡの消費電力を電力値データ２５'で示している。
【００７１】
図９において、無駄電力要因特定部４４は、活性化要因リスト２１を参照して対象機能ブロックの活性化要因を取得し、また、無駄動作候補リスト２６を参照して他機能ブロックの活性化要因を取得する（ステップＳ６１）。
【００７２】
更に、無駄電力要因特定部４４は、動作率データ２４から各プログラム結果２４−１〜２４−ＮのステップＳ６１で取得した各活性化要因の動作率を抽出して、動作率データ２４''として記憶領域に格納する（ステップＳ６２）。
【００７３】
次に、無駄電力要因特定部４４は、動作率データ２４''と電力値データ２５'とから、電力評価用プログラム１〜Ｎに対応した活性化要因毎の動作率と消費電力とを近似式生成部４４ａに与えて、近似式生成部４４ａに回帰式による近似式を生成させ、誤差評価関数による計算結果を示す例えば自由度修正済決定係数Ｒ２'を取得する（ステップＳ６３）。
【００７４】
近似式生成部４４ａは、無駄電力要因特定部４４の近似式生成部４４ａでの処理と同様に近似式を生成する。近似式生成部４４ａによって、回帰式と自由度修正済決定係数Ｒ２'とを示す近似式生成結果４４ｒを出力する。近似式生成結果４４ｒにより、例えば、回帰式は以下のように示される。
【００７５】
［消費電力］＝C0'＋C1'×［要因１の動作率］＋C2'×［要因３の動作率］
＋C3'×［要因４の動作率］
ここで、Ｃ０'は定数、また、Ｃ１'、Ｃ２'、及びＣ３'は回帰係数である。
【００７６】
そして、無駄電力要因特定部４４は、近似式生成部４４ａによって得た回帰式に含まれる回帰変数のうち無駄動作候補リスト２６に含まれる要因のリストを作成する（ステップＳ６４）。無駄動作候補リスト２６に含まれる要因のうち回帰式に現われている要因が無駄電力要因リスト２７に含まれ、記憶領域に出力される。
【００７７】
図９に示す例では、上記の近似式生成結果４４ｒの回帰式に含まれる無駄動作候補リスト２６の無駄動作要因は、要因４のみであるので、対象機能ブロックＡに無駄な電力を消費させる要因４が無駄電力要因リスト２７によって出力される。
【００７８】
無駄電力要因リスト２７に含まれる無駄電力要因は、表示ユニット１３に表示され、設計者に、設計者が選択した機能ブロックが無駄に電力を消費する要因を通知する。設計者は、表示ユニット１３に表示され無駄電力要因に基づいて設計データ２２を見直す等により、集積回路の設計に必要な修正を行う。
【００７９】
しかしながら、上述した処理を実行したにも関わらず無駄電力要因を全て特定できない場合がある。無駄電力要因特定部４４によって無駄電力要因が特定されなかった場合、つまり、出力された無駄電力要因リスト２７が空の場合、又は、無駄電力要因リスト２７によって対象機能ブロックに無駄な電力を消費させる要因が示されたものの未特定の無駄電力要因が存在する場合がある。
【００８０】
未特定の無駄電力要因の有無を判断するために、対象範囲を拡大して無駄動作候補を増やして解析する、以下に説明する処理を更に行うように構成してもよい。図１０は、拡大候補生成部での処理を説明するための図である。図１０において、拡大候補生成部４５は、上述した各処理部と同様に、ＣＰＵ１１が対応するプログラムを実行することによって実現される機能である。
【００８１】
拡大候補生成部４５は、無駄電力特定部４４の近似式生成部４４ａによって生成され近似式生成結果４４ｒで示される回帰式の誤差を、近似式生成結果４４ｒで示される係数Ｒ２'を用いて評価する（ステップＳ６１）。
【００８２】
拡大候補生成部４５は、係数Ｒ２'が所定値Ｋより小さいか否かを判断する（ステップＳ６２）。係数Ｒ２'が所定値Ｋ以上である場合、拡大候補生成部４５は、未特定な無駄な電力を消費する要因が無いと判断し、「未特定な無駄電力要因無し」を示す解析結果２８−２を出力し、この処理を終了する。消費電力解析装置１００は、表示ユニット１３に、無駄電力要因特定部４４によって記憶領域に出力された無駄電力要因リスト２７に加えて、解析結果２８を表示する。
【００８３】
一方、係数Ｒ２'が所定値Ｋより小さい場合、拡大候補生成部４５によって、未特定な無駄な電力を消費する要因が在ると判断し、拡大選択ルール３２に従って、機能ブロックの選択範囲を拡大して無駄動作候補リストを再生成する（ステップＳ６３）。再生成された無駄動作候補リストは、無駄動作候補リスト２６−２として記憶領域に出力され格納される。拡大選択ルール３２は、以下のような拡大ルール１）から３）のいずれか一つを示す。
【００８４】
拡大ルール１）無駄動作候補生成部４３のルール２）の接続ベースの機能ブロック列挙において得られた接続先機能ブロックから、更に接続先を辿って得られる機能ブロック
拡大ルール２）無駄動作候補生成部４３のルール１）の階層ベースの機能ブロック列挙において、更に上位の階層のブロックに含まれる機能ブロック
拡大ルール３）無駄動作候補生成部４３のルール２）に従って得られる機能ブロックと、ルール１）に従って得られる機能ブロックとを含める
拡大選択ルール３２は、上記拡大ルール１）から３）のいずれか一つを予め指定する構成であっても、設計者によっていずれかが選択される構成であってもよい。
【００８５】
次に、拡大候補生成部４５は、再生成した無駄動作候補リスト２６−２を使って無駄電力要因特定部４４による処理を実行し、得られた無駄電力要因リスト２７−２を記憶領域に出力し格納する（ステップＳ６４）。拡大候補生成部４５は、この処理を終了する。拡大候補生成部４５によって出力された無駄電力要因リスト２７−２は表示ユニット１３に表示され、設計者は、表示ユニット１３に表示され無駄電力要因に基づいて設計データ２２を見直す等により、集積回路の設計に必要な修正を行う。
【００８６】
次に、消費電力解析装置１００によって解析される実施例について以下に説明する。図１１は、消費電力解析装置によって解析される演算ブロック例を示す図である。図１１において、演算ブロック７は、ＡＬＵ７ａと、シフト演算器７ｂと、乗算器７ｃと、レジスタファイル７ｄの機能ブロックを有し、各回路の接続情報等が設計データ２２によって記述された集積回路例である。上位ブロック７１及び７２は、論理階層を示している。ＡＬＵ７ａと、シフト演算器７ｂと、乗算器７ｃとは、上位ブロック７１に含まれ、レジスタファイル７ｄは、上位ブロック７２に含まれる。
【００８７】
ここで、設計データ２２によって記述された演算ブロック７には、「ＡＬＵ７ａの入力データ用レジスタのクロック制御が不十分でシフト命令実行時にＡＬＵ７ａの内部に入力データの変化が伝搬して内部回路が一部動作してしまう」という無駄な電力が存在すると仮定する。また、設計者が対象機能ブロックとしてＡＬＵ７ａを選択したとする。
【００８８】
図１１に示す演算ブロック７の実施例では、回帰式の精度（係数Ｒ２'）について以下を参考とし、無駄な電力在りと判断するための閾値「０．８」を適用する。
【００８９】
係数Ｒ２'が０．５未満：回帰式の精度がよくない
係数Ｒ２'が０．５以上：回帰式の精度がややよい
係数Ｒ２'が０．８以上：回帰式の精度が非常に良い
また、機能ブロックの選択ルール３０では、ルール１）対象機能ブロックと同じ親ブロックに含まれる機能ブロック（階層ベースの機能ブロック列挙）を適用する。
【００９０】
図１２は、図１１の演算ブロックの無駄な電力を解析するためのリスト例を示す図である。図１２に例示される演算ブロック７に係る活性化要因リスト２１では、機能ブロック「レジスタファイル」の活性化要因は、「Ｒｅａｄアクセス率」、「Ｗｒｉｔｅアクセス率」の２つであることを示している。また、機能ブロック「ＡＬＵ演算器」の活性化要因は、「ＡＬＵ使用率」である。機能ブロック「シフト演算器」の活性化要因は、「シフト演算器使用率」である。機能ブロック「乗算器」の活性化要因は、「乗算器使用率」である。
【００９１】
電力評価用プログラムリスト７３では、右シフト命令、左シフト命令、加算命令、ａｎｄ命令、乗算命令の各々に対し、命令実行率２５％、５０％、及び１００％とした計１５のテスト項目が例示されている。１５の電力評価用プログラムが使用されることを示している。
【００９２】
図１２に示す活性化要因２１と、電力評価用プログラムリスト７３で一覧される１５の電力評価用プログラムを用いて、設計データ２２で記述される図１１に示される演算ブロック７と、演算ブロック７に存在するセルレベルの無駄な動作を含まない抽象度の高い性能評価用論理モデル２３とに対して、電力解析部４１による処理を行う。
【００９３】
図１３は、電力解析部による処理の結果例を示す図である。図１３において、動作率データ２４は、動作評価プログラム毎の演算ブロック７における各活性化要因の動作率を示し、電力値データ２５は、動作評価プログラム毎の各機能ブロックの消費電力（ｍＷ）を示している。
【００９４】
図１３に例示される電力解析部４１での処理で得られた動作率データ２４と電力値データ２５とを用いて、無駄電力検出部４２による処理を行った結果として、例えば図１４に示されるような回帰分析による近似式が得られる。
【００９５】
図１４は、無駄電力検出部で生成された近似式の例および近似値と実際の電力解析値のずれを示す図である。図１４では、ＡＬＵ７ａに対する、無駄電力検出部４２によって得られた近似式１４ｆが例示される。図１４のグラフは、縦軸に電力解析部４１で得られたＡＬＵ７ａの消費電力（ｍＷ）を示す電力解析値、横軸に回帰式による計算値を示し、電力評価用プログラム７３の各プログラムでの<近似式計算値,電力解析値>をプロットしたものである。グラフ中の直線は"計算値=解析値"を表す線であり、この直線から離れた点は計算値と解析値の差が大きい、つまり、近似誤差が大きいことを意味する。
【００９６】
無駄電力検出部４２によって得られた近似式１４ｆは、
［ＡＬＵ消費電力］＝7.6＋20.9×［ＡＬＵ使用率］
で表され、自由度修正済決定係数Ｒ２'＝０．６７である。係数Ｒ２'が閾値「０．８」より小さいため、無駄電力検出部４２は無駄電力ありと判断する。図１４に示すように、近似式１４ｆでは誤差の大きい点が残っている。以下の処理によって、シフト命令でＡＬＵが無駄に動作していることによる誤差であることが判る。
【００９７】
無駄動作候補生成部４３による、ＡＬＵ７ａの関係の深い他機能ブロックまで範囲を拡大し、他機能ブロックから無駄動作候補となる活性化要因を抽出する処理が行われる。
【００９８】
図１５は、無駄動作候補生成部よって抽出された無駄動作候補リストの例を示す図である。図１５において、機能ブロックの選択ルール３０で指定されるルール１）階層ベースの機能ブロック列挙により、ＡＬＵ７ａの上位ブロック７１に含まれるシフト演算器７ｂと乗算器７ｃとが特定される。そして、無駄動作候補生成部４３は、活性化要因リスト２１を参照することにより、シフト演算器７ｂの活性化要因「シフト演算器使用率」と、乗算器７ｃの活性化要因「乗算器使用率」とを抽出して、無駄動作候補リスト２６を記憶領域に出力する。
【００９９】
ＡＬＵ７ａの活性化要因と、無駄動作候補リスト２６に含まれる無駄動作候補となる他機能ブロックの活性化要因とを用いて、無駄電力要因特定部４４によって重回帰分析が行われる。
【０１００】
図１６は、無駄電力要因特定部による処理結果の例を示す図である。図１６において、説明変数１６ａは、ＡＬＵ７ａの活性化要因「ＡＬＵ使用率」を説明変数１とする。また、無駄動作候補リスト２６に含まれる無駄動作候補となるシフト演算器７ｂの活性化要因「シフト演算器使用率」と、乗算器７ｃの活性化要因「乗算器使用率」とを夫々、説明変数２と、説明変数３とする。
【０１０１】
無駄電力要因特定部４４は、説明変数の組合わせによる重回帰分析を行って処理結果１６ｂを得る。処理結果１６ｂは、説明変数の組合わせＮｏ．、定数項、説明変数１の回帰係数、説明変数２の回帰係数、説明変数３の回帰係数、自由度修正済決定係数Ｒ２'を示す。
【０１０２】
無駄電力要因特定部４４は、処理結果１６ｂから、負の回帰係数を含む式、及び有意性が低い回帰係数を含む式を削除する。これにより、処理結果１６ｂからは、説明変数の組合わせＮｏ．３、１３、２３、１２３による回帰式が削除される。つまり、乗算器７ｃの動作率はＡＬＵ７ａの電力への寄与が小さく回帰係数の有意性が低くなるため、近似式から除外される。
【０１０３】
削除後、係数Ｒ２'が最大値となる式を選択する。これにより、説明変数の組合わせＮｏ．１２が選択され、回帰分析による近似式１６ｆを取得する。近似式１６ｆは、
［ＡＬＵ消費電力］＝2.1151＋28.2187×［ＡＬＵ使用率］
＋16.2088×［シフト演算器使用率］
と表される。活性化要因「シフト演算器使用率」が説明変数として追加して回帰分析を行うと、誤差の小さい（あてはまりのよい）近似式１６ｆが得られる。
【０１０４】
無駄電力要因特定部４４によって、近似式１６ｆに含まれる無駄動作候補「シフト演算器使用率」を示す無駄動作要因リスト２７が記憶領域に出力され、また、表示ユニット１３に無駄動作要因リスト２７の内容が表示される。設計者は、「シフト演算器使用率」であることを確認すると、対象機能ブロックのＡＬＵ７ａが無駄に動作している要因が、他機能ブロックの「シフト演算器使用率」を活性化要因として持つシフト演算器７ｂであることを確認できる。
【０１０５】
上述したように、消費電力解析装置１００は、集積回路の設計において、セルレベルの電力解析では検出範囲が局所的なためできなかった、機能ブロックレベルの回路の無駄な動作を検出することができ、より低消費電力な回路を設計するための支援を行うことができる。
【０１０６】
本発明は、具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【０１０７】
以上の実施例を含む実施形態に関し、更に以下の付記を開示する。
（付記１）
対象機能ブロックの活性化要因毎の動作率と、該対象機能ブロックの消費電力とに基づいて、該対象機能ブロックの消費電力を見積もる第一近似式を生成し、該第一近似式の誤差を評価することによって、該対象機能ブロックに無駄な電力があることを検出する無駄電力検出手段と、
機能ブロックの選択ルールに従って選択した前記対象機能ブロックの動作に係る他機能ブロックの活性化要因毎の動作率を加えて、該対象機能ブロックの消費電力を見積もる第二近似式を生成し、該第二近似式に該他機能ブロックの活性化要因の項が含まれている場合、該他機能ブロックの活性化要因を該対象機能ブロックを無駄に動作させる要因であると特定する無駄電力要因特定手段とを有することを特徴とする集積回路の消費電力解析装置。
（付記２）
前記選択ルールに従って前記他機能ブロックを選択し、選択した該機能ブロックの活性化要因から前記対象機能ブロックの活性化要因を除外した無駄動作候補リストを出力する無駄動作候補生成手段を有し、
前記無駄電力要因特定手段は、前記無駄動作候補リストから前記対象機能ブロックの動作に係る他機能ブロックの活性化要因を取得することを特徴とする付記１記載の集積回路の消費電力解析装置。
（付記３）
前記選択ルールは、前記対象機能ブロックと同じ上位ブロックに含まれる他機能ブロックを選択すること、又は、該対象機能ブロックと接続を持つ他機能ブロックを選択することを示すことを特徴とする付記１又は２記載の集積回路の消費電力解析装置。
（付記４）
前記第二近似式の誤差を評価することによって、前記対象機能ブロックを無駄に動作させる未特定な要因があると判断した場合、前記選択ルールの組合せによって対象範囲を拡大して前記他機能ブロックを選択し、選択した該機能ブロックの活性化要因から前記対象機能ブロックの活性化要因を除外した無駄動作候補リストを出力し、前記無駄電力要因特定手段に該対象機能ブロックを無駄に動作させる要因を特定させる拡大候補生成手段を有することを特徴とする付記３記載の集積回路の消費電力解析装置。
（付記５）
前記拡大候補生成手段は、前記第二近似式の誤差を評価することによって、前記対象機能ブロックを無駄に動作させる未特定な要因がないと判断した場合、前記特定された対象機能ブロックを無駄に動作させる要因に加えて、未特定な要因がないことを示す情報を出力することを特徴とする付記４記載の集積回路の消費電力解析装置。
（付記６）
機能ブロック単位の動作を表した抽象度の高い論理モデルと電力評価用プログラムとを用いて性能評価を行うことにより前記集積回路の複数の機能ブロックに係る活性化要因毎の動作率を取得し、該機能ブロックに含まれるセルの動作を記述した設計データと該電力評価用プログラムとを用いて消費電力解析を行うことにより該機能ブロック毎の消費電力とを取得する電力解析手段を有することを特徴とする付記１乃至５のいずれか一項記載の集積回路の消費電力解析装置。
（付記７）
前記第一近似式及び前記第二近似式の少なくとも一式の誤差の評価は、自由度修正済決定係数が所定値未満である場合に前記対象機能ブロックを無駄に動作させる要因があると判断することを特徴とする付記４乃至６のいずれか一項記載の集積回路の消費電力解析装置。
（付記８）
コンピュータが集積回路の消費電力を解析する消費電力解析方法であって、該コンピュータが、
対象機能ブロックの活性化要因毎の動作率と、該対象機能ブロックの消費電力とに基づいて、該対象機能ブロックの消費電力を見積もる第一近似式を生成し、該第一近似式の誤差を評価することによって、該対象機能ブロックに無駄な電力があることを検出する無駄電力検出手順と、
機能ブロックの選択ルールに従って選択した前記対象機能ブロックの動作に係る他機能ブロックの活性化要因毎の動作率を加えて、該対象機能ブロックの消費電力を見積もる第二近似式を生成し、該第二近似式に該他機能ブロックの活性化要因の項が含まれている場合、該他機能ブロックの活性化要因を該対象機能ブロックを無駄に動作させる要因であると特定する無駄電力要因特定手順とを実行することを特徴とする消費電力解析方法。
（付記９）
集積回路の消費電力解析装置としてコンンピュータを機能させるためのコンピュータ実行可能なプログラムであって、該コンピュータに、
対象機能ブロックの活性化要因毎の動作率と、該対象機能ブロックの消費電力とに基づいて、該対象機能ブロックの消費電力を見積もる第一近似式を生成し、該第一近似式の誤差を評価することによって、該対象機能ブロックに無駄な電力があることを検出する無駄電力検出手順と、
機能ブロックの選択ルールに従って選択した前記対象機能ブロックの動作に係る他機能ブロックの活性化要因毎の動作率を加えて、該対象機能ブロックの消費電力を見積もる第二近似式を生成し、該第二近似式に該他機能ブロックの活性化要因の項が含まれている場合、該他機能ブロックの活性化要因を該対象機能ブロックを無駄に動作させる要因であると特定する無駄電力要因特定手順とを実行させるためのコンピュータ実行可能なプログラム。
（付記１０）
集積回路の消費電力解析装置としてコンンピュータを機能させるためのプログラムを格納した記憶媒体であって、該コンピュータに、
対象機能ブロックの活性化要因毎の動作率と、該対象機能ブロックの消費電力とに基づいて、該対象機能ブロックの消費電力を見積もる第一近似式を生成し、該第一近似式の誤差を評価することによって、該対象機能ブロックに無駄な電力があることを検出する無駄電力検出手順と、
機能ブロックの選択ルールに従って選択した前記対象機能ブロックの動作に係る他機能ブロックの活性化要因毎の動作率を加えて、該対象機能ブロックの消費電力を見積もる第二近似式を生成し、該第二近似式に該他機能ブロックの活性化要因の項が含まれている場合、該他機能ブロックの活性化要因を該対象機能ブロックを無駄に動作させる要因であると特定する無駄電力要因特定手順とを実行させるためのプログラムを格納したコンピュータ読取可能な記憶媒体。
【符号の説明】
【０１０８】
７            演算ブロック
７ａ          ＡＬＵ
７ｂ          シフト演算器
７ｃ          乗算器
１１          ＣＰＵ
１２          メモリユニット
１３          表示ユニット
１４          出力ユニット
１４ｆ        近似式
１５          入力ユニット
１６          通信ユニット
１６ｆ        近似式
１７          記憶装置
１８          ドライバ
１９          記憶媒体
２１          活性化要因リスト
２２          設計データ
２３          性能評価用論理モデル
２４、２４'、２４''  動作率データ
２５、２５'          電力値データ
２６          無駄動作候補リスト
２７、２７−２        無駄電力要因リスト
２８、２８−２        解析結果
３０          選択ルール
４１          電力解析部
４１ａ        性能評価シミュレータ
４１ｂ        消費電力解析部
４２          無駄電力検出部
４２ａ        近似式生成部
４２ｒ        近似式生成結果
４３          無駄動作候補生成部
４３ａ        近似式生成部
４３ｒ        近似式生成結果
４４          無駄電力要因特定部
４５          拡大候補生成部
７１          上位ブロック
７２          上位ブロック
７３          電力評価用プログラムリスト
【図１】
0005510274.tif 000002
【図２】
0005510274.tif 000003
【図３】
0005510274.tif 000004
【図４】
0005510274.tif 000005
【図５】
0005510274.tif 000006
【図６】
0005510274.tif 000007
【図７】
0005510274.tif 000008
【図８】
0005510274.tif 000009
【図９】
0005510274.tif 000010
【図１０】
0005510274.tif 000011
【図１１】
0005510274.tif 000012
【図１２】
0005510274.tif 000013
【図１３】
0005510274.tif 000014
【図１４】
0005510274.tif 000015
【図１５】
0005510274.tif 000016
【図１６】
0005510274.tif 000017