(57)【要約】処理時間の長大化、必要な記憶容量の増大化を防ぎつつ、より動作率の高いテストパタンを生成し、より大きなピーク消費電力を導出することのできる回路動作解析方法を提供する。  本発明の回路動作解析方法は、解析対象である回路配線情報と前記回路配線情報に印加する回路テストパタンとが入力され、前記回路テストパタンに於ける計測区間を変化させ前記回路配線情報に含まれるフリップフロップの動作回数が最大となる区間を前記回路テストパタンから抽出する最大変化抽出処理と、前記区間に含まれるパタンを基に第２の回路テストパタンを生成するパタン生成処理と、前記第２の回路テストパタンを印加した際の前記回路配線情報の消費電力を解析する消費電力解析処理と、を有する。
2013027738.tif 000002
【特許請求の範囲】
【請求項１】
解析対象である回路配線情報と前記回路配線情報に印加する回路テストパタンとが入力され、前記回路テストパタンに於ける計測区間を変化させ前記回路配線情報に含まれるフリップフロップの動作回数が最大となる区間を前記回路テストパタンから抽出する最大変化抽出処理と、
前記区間に含まれるパタンを基に第２の回路テストパタンを生成するパタン生成処理と、
前記第２の回路テストパタンを印加した際の前記回路配線情報の消費電力を解析する消費電力解析処理と
を有することを特徴する、回路動作解析方法。
【請求項２】
前記値変化観測処理は更に前記フリップフロップが駆動する組合せ回路に関する情報を付加するフリップフロップ重み付けを有する
ことを特徴とする請求項１に記載の回路動作解析方法。
【請求項３】
前記フリップフロップ重み付けは、前記回路配線情報中より前記組合せ回路を切り出し、切り出した前記組合せ回路の情報を、前記組合せ回路の接続された前記フリップフロップに対して付与し、フリップフロップ重み計算により各前記フリップフロップに重みを付与する、
ことを特徴とする請求項１または請求項２に記載の回路動作解析方法。
【請求項４】
更に、前記第２の回路テストパタンを加工し、前記フリップフロップの動作回数のより大きなパタンを得るようパタン変動処理を行う、
ことを特徴とする、請求項１乃至３の何れかに記載の回路動作解析方法。
【請求項５】
更に、前記第２の回路テストパタンの評価のために消費電力解析を利用する、
ことを特徴とする請求項１乃至４の何れかに記載の回路動作解析方法。
【請求項６】
基本クロック数を入力し、前記基本クロック数で前記回路テストパタンを分割し、前記分割されたパタンのうち回路の動作率が最大のものを選出した後に、パタンが所要のサイズ以上となる様に前記選出されたパタンの前後のパタンのマージを行なうことにより単位時間を決定する
ことを特徴とする請求項１乃至５の何れかに記載の回路動作解析方法。
【請求項７】
解析対象である回路配線情報と前記回路配線情報に印加する回路テストパタンとが入力され、前記回路テストパタンに於ける計測区間を変化させ前記回路配線情報に含まれるフリップフロップの動作回数が最大となる区間を前記回路テストパタンから抽出する最大変化抽出手段と、
前記区間に含まれるパタンを基に第２の回路テストパタンを生成するパタン生成手段と、
前記第２の回路テストパタンを印加した際の前記回路配線情報の消費電力解析手段と
を有することを特徴とする回路動作解析装置。
【請求項８】
解析対象である回路配線情報と前記回路配線情報に印加する回路テストパタンとが入力され、前記回路テストパタンに於ける計測区間を変化させ前記回路配線情報に含まれるフリップフロップの動作回数が最大となる区間を前記回路テストパタンから抽出する最大変化抽出ステップと、
前記区間に含まれるパタンを基に第２の回路テストパタンを生成するパタン生成ステップと、
前記第２の回路テストパタンを印加した際の前記回路配線情報の消費電力解析ステップと
をコンピュータに実行させる回路動作解析プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積装置の動的消費電力の解析に関し、特に、必要な回路動作率を用いた動的消費電力の解析手法に関する。
【背景技術】
【０００２】
ＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ）装置の消費電力には、回路のリーク電流等に基づく静的消費電力と、回路の動作に由来する消費電力である動的消費電力とがある。
回路の動作に由来する消費電力である動的消費電力の一般的な求め方は、例えば非特許文献１に記載されている。すなわち、動的消費電力は、回路動作時に回路素子の状態が０から１へ、又は１から０へ変化することによって回路中の容量（キャパシタ）が充放電されることにより発生する。
このほかにも、回路のノイズやグリッジといった回路動作でも消費電力が発生するが、これは解析が困難であり、また消費電力としても少量なので無視することが多い。
従って、回路の動作消費電力は、以下の式（１）で表現できる。
動的消費電力＝動作周波数×各回路の負荷容量の総量×電源電圧の２乗
・・・式（１）
しかし、回路の動作周波数をそのまま乗じることは過大であり、実際はクロックやデータの値の変化分、特にフリップフロップ（以下ＦＦ：Ｆｌｉｐ  Ｆｌｏｐ）に於ける変化分に着目することが望ましい。従って以下の式（２）によって求められるといえる。
動的消費電力＝
Σ（各ＦＦのクロックによる消費電力）×（各ＦＦのクロック入力数）
＋Σ（各ＦＦと各組合せ回路素子の０から１への遷移消費電力）×（０から１への遷移数）
＋Σ（各ＦＦと各組合せ回路素子の１から０への遷移消費電力）×（１から０への遷移数）
・・・式（２）
ＦＦのクロック入力数は動作周波数とクロックの動作時間との積として求めることが可能である。また、各素子の遷移消費電力はライブラリより与えられる。従って、各素子に対して０から１への遷移数と、１から０への遷移数を数えると、その数えている間の動的消費電力を計算することが可能となる。式（２）から分かるように、ＦＦに於ける遷移数が増加すると動的消費電力が増加するので、ＬＳＩ全体のＦＦのうち遷移（動作）しているＦＦの率、即ち遷移率（動作率）が高くなると動的消費電力が高くなるといえる。
動的消費電力は、主に、平均消費電力とピーク消費電力に分けられる。
ＬＳＩの設計時には、実機、あるいは、回路のシミュレーションモデルを定義し、それに実際に利用するパタンを印加し、回路のシミュレーションモデルに含まれる消費電力データと計算式を用いて消費電力の計算を行う。
いくつかのテスト用のパタンを回路のシミュレーションモデルに印加し、そのパタンにおける消費電力の総和を時間で割ったものが平均消費電力であり、消費電力削減の場合の指標となる。
その一方、ある単位時間に於ける消費電力のうち最も大きい消費電力がピーク消費電力である。半導体集積装置やその半導体集積装置を実装した装置の冷却や放熱、電源設計を行うためにはそのＬＳＩの動作状態に於ける最大のピーク消費電力を求めることが重要不可欠である。
ピーク消費電力の算定には、前述の平均消費電力を求める場合の凡そ１０倍以上の長時間の詳細な消費電力計算を実行し、単位時間毎の消費電力を求める。この様にして計算して求めた単位時間当たりの消費電力の内、もっとも大きいものがピーク消費電力ということになる。しかし、その様な、ピーク消費電力を与えるパタンの選定は容易ではない。また、ピーク消費電力を算定するのに必要な、ピーク電力を与える単位時間の定め方も難しい。
ピーク消費電力を算定するために、ＬＳＩ内の全ての組合せ素子に対して、０から１への信号遷移数を求める為に、テスト用のパタンを入力するシミュレーションを行う必要がある。更にテスト用のパタンに於けるすべての組み合わせ素子の動作回数を記憶する必要がある。
従って、ピーク消費電力の算定には、様々なパタンのシミュレーションを行って、様々な単位時間当たりのピーク消費電力を算出し、その中で最大のものを求める必要があり、多大な時間と工数を要する。その様な計算機実行時間の長大化と記憶容量の増大化を嫌い、現実には短時間のシミュレーションをベースに消費電力を求めてしまうことも多い。
ピーク消費電力の算定方法については、下記の文献が挙げられる。
特許文献１では、ピーク消費電力を求める為に次の方法を行っている。即ち、長時間のシミュレーションを行って、ＦＦ等の論理回路へのクロックへの供給が最大の部位の付近に最大消費電力を発生する可能性があるとして、その近傍に対して何度もシミュレーションを行ってピーク消費電力を求めている。
特許文献２では、あるパタンの平均消費電力を求めておき、そのパタンの動作率を使って最大電力を推定している。
特許文献３では、回路を分割し、その分割回路の最大電力から、全体が最大電力消費となるであるパタンを推測して最大電力を推定している。
特許文献４では、信号の依存関係からピーク消費電力を出力する回路部分のみを解析する。あり得ないパタンの排除と回路の絞込みにより、最大の消費電力を発生すると考えられるパタンを推定している。
【先行技術文献】
【特許文献】
【０００３】
［特許文献］【０００４】
【特許文献１】特開２００８−０６５４９６号公報
【特許文献２】特開２００３−２５６４９５号公報
【特許文献３】特開２００８−２３４２４０号公報
【特許文献４】特開２００８−１９７８８３号公報
【非特許文献】
【０００５】
【非特許文献１】組込みプロセッサ技術  ＣＱ出版社  ＩＳＢＮ９７８−４−７８９８−４５４９−６  ８４ページ
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ピーク消費電力の算定には、一般的に次のような問題点がある。
第一の問題点は、最大の動的消費電力を解析する際に、長時間のシミュレーションが不可欠であるということである。その理由は、ピークを導出するパタンがそのパタンに含まれているかどうか不明なため、異なるパタンを使って何度もシミュレーションを行う必要があるからである。
第二の問題点は、最大の動的消費電力を発生させるパタンを発生させることが難しいという問題があることである。その理由は、どの入力パタンを選べば遷移率が高くなるか予想が困難であるからである。
これに対し、上述の特許文献１の技術はＦＦ等の論理回路へのクロックの供給に着目するものである。そのクロックの供給先の状態は特許文献１の図７に示すようにＦＦや組み合わせ回路等を区別しておらず、全ての回路を考慮しようとすると膨大なデータになる恐れがあり処理時間の長大化を招く恐れがある。
また、特許文献２の技術においては、ピーク消費電力を推定するパタンを求める必要があるが、精度の高い結果が得られるパタンを発見する為にはやはり長時間のシミュレーションを行う必要がある。
また、特許文献３の技術においては、分割回路の最大消費電力となるパタンと全体が最大消費電力となるパタンが同じにならない場合があり、その場合に誤った結果が出てしまうとう問題がある。
また、特許文献４の技術においては、あり得ないパタンや回路を排除したとしても、最大の動的消費電力を発生させるパタンを発生させる為には、やはり十分な時間をかけて、さまざまなパタンを使って何度もシミュレーションを行う必要がある。
（発明の目的）
本発明の目的は、処理時間の長大化、必要な記憶容量の増大化を防ぎつつ、より動作率の高いテストパタンを生成し、より大きなピーク消費電力を導出することのできる回路動作解析方法、回路動作解析装置及び回路動作解析プログラムを提供することにある。
【課題を解決するための手段】
【０００７】
本発明の回路動作解析方法は、解析対象である回路配線情報と前記回路配線情報に印加する回路テストパタンとが入力され、前記回路テストパタンに於ける計測区間を変化させ前記回路配線情報に含まれるフリップフロップの動作回数が最大となる区間を前記回路テストパタンから抽出する最大変化抽出処理と、前記区間に含まれるパタンを基に第２の回路テストパタンを生成するパタン生成処理と、前記第２の回路テストパタンを印加した際の前記回路配線情報の消費電力を解析する消費電力解析処理と、を有する。
また本発明の回路動作解析装置は、解析対象である回路配線情報と前記回路配線情報に印加する回路テストパタンとが入力され、前記回路テストパタンに於ける計測区間を変化させ前記回路配線情報に含まれるフリップフロップの動作回数が最大となる区間を前記回路テストパタンから抽出する最大変化抽出手段と、前記区間に含まれるパタンを基に第２の回路テストパタンを生成するパタン生成手段と、前記第２の回路テストパタンを印加した際の前記回路配線情報の消費電力解析手段と、を有する。
また本発明の回路動作解析プログラムは、解析対象である回路配線情報と前記回路配線情報に印加する回路テストパタンとが入力され、前記回路テストパタンに於ける計測区間を変化させ前記回路配線情報に含まれるフリップフロップの動作回数が最大となる区間を前記回路テストパタンから抽出する最大変化抽出ステップと、前記区間に含まれるパタンを基に第２の回路テストパタンを生成するパタン生成ステップと、前記第２の回路テストパタンを印加した際の前記回路配線情報の消費電力解析ステップと、をコンピュータに実行させる。
【発明の効果】
【０００８】
本発明では、処理時間の長大化、必要な記憶容量の増大化を防ぎつつ、より動作率の高いテストパタンを生成し、より大きなピーク消費電力を導出することのできる回路動作解析方法、回路動作解析装置及び回路動作解析プログラムを提供することができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の第１の実施形態の処理のフローを示す図である。
【図２】本発明の第１の実施形態のＦＦ重み付け１１０の動作のフローを示す図である。
【図３】本発明の第１の実施形態の動作のフローを示す図である。
【図４】本発明の第２の実施形態の処理のフローを示す図である。
【図５】本発明の第２の実施形態の動作のフローを示す図である。
【図６】本発明の第３の実施形態の概念を示すフリップフロップの動作を示す図である。
【図７】本発明の第３の実施形態の最大変化抽出１０３の概念を示す図である。
【図８】本発明の第３の実施形態の最大変化抽出１０３の処理のフローチャートである。
【図９】本発明の第３の実施形態のパタン変動１０６の概念を示す図である。
【図１０】本発明の第３の実施形態のパタン変動１０６の概念を示す図である。
【図１１】本発明の第４の実施形態の回路動作解析装置の構成図である。
【発明を実施するための形態】
【００１０】
本発明は下記各実施形態に限定されるものではなく、本発明の主旨を逸脱しない範囲で種々の変更を施すことが可能である。
（第１の実施形態）
第１の実施形態の回路動作解析方法について説明する。
まず第１の実施形態の概略の説明を行う。
図１は第１の実施形態の回路動作解析方法の処理のフローを示す図である。
第１の実施形態の回路動作解析方法は値変化観測処理１０１、値変化総和処理１０２、最大変化抽出１０３、パタン生成１０４、組合せ回路遷移解析１０５、パタン変動１０６、消費電力解析１０７、ＦＦ重みづけ１１０、を含む。
回路動作解析処理に入力された回路配線情報３０１と回路テストパタン３０２に対して、値変化観測処理１０１においては、パタンシミュレーションが行われる。ここで入力される回路テストパタン３０２としては、回路配線情報３０１に表されたＬＳＩ内部のＦＦの動作率が出来るだけ高くなるようなパタンを初期的に作成しておくものとする。
パタンシミュレーションでは各ＦＦの動作回数を数える。このとき、ＦＦの０から１、１から０といった動作回数に対して、ＦＦ重みづけ１１０により、各ＦＦに重みが与えられている場合は、その動作回数に対して重みを乗じたものをＦＦの重み付き動作数とする。「重み」とは、そのＦＦが動作する際に消費電力に影響を与える要素を数値化したものである。例えばあるＦＦが駆動している組合せ回路の数が多ければ消費電力が増加するので、その分そのＦＦに付加される重みの値も大きくなる。ＦＦ重み付け１１０の動作のフローを示す図を図２に示す。
組合せ回路切り出し２０１によって、ある組合せ回路素子に対して、どのＦＦがその入出力となっているかを特定する。関連ＦＦ値付与２０２によって、その組合せ回路の素子の面積やキャパシタンスなどの電力計算に必要な情報が、関連するＦＦ毎の重み付けの基となる情報として付与される。
更にＦＦ重み計算２０３で、それらをすべての組合せ回路素子に対して実行して加算付与した上で、すべてのＦＦに対してすべての組合せ素子の情報を重み付け情報として付与することにより、各ＦＦのＦＦ重みリスト３０５を得る。
次に値変化総和処理１０２にて、値変化観測処理１０１で計算した各ＦＦの重み付き動作数の総和を計算する。
そして、その総和が単位時間あたり最大となる時間区間を最大変化抽出１０３で選択する。パタン生成１０４は選択された時間区間のパタンを生成する。そのパタンを計測パタン３０３とする。
組合せ回路遷移解析１０５によって、その計測パタン３０３を使ったシミュレーションを行なう。組合せ回路遷移解析１０５は消費電力解析が可能となる最大電力導出予測パタン３０４を生成する。さらに、パタン変動３０６によって、計測パタン３０３、あるいは、最大電力導出予測パタン３０４の入力を変化させることによって、さらなる重み付き動作数の高いパタンを得る。
その後、このパタンを使って消費電力見積もり４０７を適用し、あるいは消費電力解析結果３０９を求めることができる。
以上が、第１の実施形態の概略の説明である。
次に、図１、図２、図３を参照して本実施形態の全体の動作について更に説明する。
図２は、図１のＦＦ重みづけ１１０の動作のフローを示す図である。図２は組合せ回路切り出し２０１、関連ＦＦ値付与２０２、ＦＦ重み計算２０３からなる。組合せ回路切り出し２０１は、あるＦＦが駆動する組合せ回路を回路配線情報３０１から切り出す。関連ＦＦ値付与２０２はその組合せ回路が接続されたＦＦに組合せ回路の消費電力を決定する情報を付与する。ＦＦ重み計算２０３は、付与された情報と回路配線情報３０１とから各ＦＦの重みを算出しＦＦ重みリスト３０５を作成する。
図３は第１の実施形態の動作を図１のフローを示す図の一部をさらに詳細に示した図である。図１の値変化観測処理１０１、値変化総和処理１０２及びＦＦ重み付け１１０は図３の論理シミュレーション（ステップ４０１）及びＦＦ重み分配（ステップ４０２）に相当する。また図１の最大変化抽出１０３、パタン生成１０４、組合せ回路遷移解析１０５は図３の最大電力予測（ステップ４０３）及び最大電力予測パタン決定（ステップ４０４）に相当する。更に図１のパタン変動１０６は図３のパタン変化（ステップ４０５）に相当する。更に図１の消費電力解析１０７は図３の消費電力見積もり（ステップ４０７）に相当する。
図３に於いて、回路配線情報３０１、回路テストパタン３０２、ライブラリ３０８を使ってステップ４０１の論理シミュレーションを行う。
その結果、すべてのＦＦの動作パタンである、ＦＦパタン３０６が得られる。
このＦＦパタン３０６に対して、ＦＦ重み付け１１０を行うために、ステップ４０２のＦＦ重み分配を行う。
ＦＦに重みがつけられたところで、最大電力予測（ステップ４０３）を実行する。これは論理シミュレーション（ステップ４０１）の結果であるＦＦパタン３０６と、ＦＦ重みリスト３０５を使って、各ＦＦの重み付き動作数を与えるものである。
最大電力予測パタン決定（ステップ４０４）は下記の様に動作する。即ち最大電力予測パタン決定（ステップ４０４）はいくつかのパタンを試して、或いはあるパタンの、いくつかのシミュレーションの中でのシミュレーションパタンの区切り方によって、単位時間あたりの重み付き動作数が最大となるパタンを決定する。これによって、最大電力予測パタン決定（ステップ４０４）は最大電力導出予測パタン３０４を得る。
この最大電力導出予測パタン３０４に対して、さらなる大きな電力を得るパタンを探索するために、パタン変化（ステップ４０５）では、パタン変動１０６を適用して、最大電力導出予測パタン３０４の一部を変化させて、さらなる動作の頻繁なパタンの生成を行う。一部を変化させる方法については後述する。このパタン変化観測（ステップ４０５）は、より大きな消費電力が導出されるパタンが生成される限り繰り返し行うほか、あらかじめ与えられた回数制限で行うなどの手法によって、何度も繰り返し実行される。
その結果、より大きな消費電力の導出が予想される更新最大電力導出パタン３０７を得る。
得られたパタンは、消費電力解析１０７、消費電力見積もり（ステップ４０７）によって、実際に消費電力を見積もられる。
（効果の説明）
本実施形態においては、以下に記載するような効果を奏する。
第１の効果は、組合せ回路の動作率解析に必要な長いシミュレーション時間や、シミュレーション結果の保持を不要にすることである。
その理由は、フリップフロップの動作回数のみを利用して、組合せ回路部の動作率を推定するため、着目点がフリップフロップのみとなり、全素子を着目する必要がないからである。
第２の効果は、より高い動作率の可能性のある入力パタンを生成し、パタンで得られる最大に近い消費電力の導出、解析が容易になることである。
その理由は、既に得られた組合せ回路の高い動作率を発生させるパタンの一部を変化させた、より高い動作率をもつ入力パタンを生成しているからである。それによりさらに大きい消費電力を導出するパタンを生成することが可能となる。
（第２の実施形態）
次に、本発明を実施するための第２の実施形態について説明する。上述した第１の実施形態と比較し、特に消費電力の見積もりについてさらに工夫している。その動作のフローを示す図を図４及び図５に示す。
前述した図１〜図３に示される第１の実施形態では、最大電力導出予測パタン３０４、あるいは、更新最大電力導出パタン３０７を得て完了している。そして実際の消費電力解析は、図３にて消費電力見積もり（ステップ４０７）を最終的に行うのみである。
それに対し、第２の実施形態では図４、図５から分かる通り、図４のパタン変動１０６や、図５のパタン変化観測（ステップ４０５）を行った後、それぞれ消費電力解析１０７（図４）や、消費電力見積もりパタン選択（図５のステップ４０８）を適用している。パタンを変化させた後にそのパタンによる実際の消費電力解析を行っているので、実際に消費電力が大きくなるパタンを選択するように動作することになる。
（効果の説明）
以上説明したように、本実施形態においては、以下に記載するような効果を奏する。
即ち本実施形態では、第１の実施形態の場合より実際に消費電力が大きくなるパタンを選択するように動作させている。従って重み付け動作数が最大の場合と実際の消費電力が最大なタイミングが異なっていても、処理時間の長大化、必要な記憶容量の増大化を防ぎつつ、より正確に消費電力を導出するパタンを生成することのできる回路動作解析方法を提供できる。
（第３の実施形態）
本発明を実施するための第３の実施形態について説明する。
第３の実施形態の基本的構成は第１の実施形態の構成と比較し、特にＦＦの重み付き動作数の総和が最大となるパタンを選び、その近傍を発生させ、より大きな消費電力を発生するパタンを生成している点に特徴がある。
本実施形態の回路動作解析方法では、半導体集積回路を表現する回路配線情報３０１と、回路テストパタン３０２、および、回路素子の各論理や、各面積、容量などの消費電力情報を持ったライブラリ３０８が処理に対して入力される。その結果として、より大きな消費電力を与えると予測される最大電力導出予測パタン３０４、及び、それをさらに更新した更新最大電力導出パタン３０７、あるいは消費電力解析結果３０９を出力として得る。
その際に、図６に示すように、実際の消費電力が最大となるパタンが各ＦＦの重み付き動作数の総和が最大となるパタンの場合と同じとならずに時間的にずれたパタンの時に生じる場合があることを利用する。すなわち、ＦＦの重み付き動作数の総和が最大となるパタンを選び、時間的に前後のパタンを発生させ、より大きな消費電力を発生するパタンを生成するものである。
このために、図１、図３に示すように回路配線情報３０１と、回路テストパタン３０２、およびライブラリ３０８を利用して、論理シミュレーション（ステップ４０１）によって実現される値変化観測処理１０１により各ＦＦの動作回数を計算する。
各ＦＦが駆動する組合せ回路の素子数が異なるため、たとえば、１個の組合せ回路のみを駆動するＦＦの動作率が高い場合よりも、動作率は低くとも駆動する組合せ回路が多いＦＦのほうが大きな電力を消費する。
図２に示すように、あるＦＦが駆動する組合せ回路を組合せ回路切り出し２０１で切り出し、その組合せ回路に関連するＦＦに組合せ回路の消費電力に関連する情報を関連ＦＦ値付与２０２にて対して付与する。その後、付与された情報等を基に各ＦＦの重みをＦＦ重み計算２０３にて算出して付与している。これらの手順はＦＦ重みつけ１１０、あるいは、ステップ４０２のＦＦ重み分配などで実行される。
次に、値変化総和処理１０２で、あるパタンに対するＦＦの変化率の総和を求める。
最大変化抽出１０３や、最大電力予測（ステップ４０３）などで総和を求めるが、図７のようにパタンの単位時間の扱い方によって、単位時間のパタンの動作の総和が最大になる点が異なる。ここで単位時間とは、回路の動作率や消費電力を算出する最小の時間区間をいう。
そこで、次に述べる手順で単位時間を決定する。図８はその手順を説明する図であり、図１の最大変化抽出１０３、パタン生成１０４の詳細を説明している。すなわち、あらかじめ分割するクロック数を基本クロック数入力（ステップ５０１）で入力し、基本クロック分割（ステップ５０２）で与えられたパタンをその基本クロック数で分割する。基本クロック数とはＬＳＩを動作させる為の基準となるクロックである。その後、最大動作点検出（ステップ５０３）にてその分割されたパタンの中で重み付き動作数が最大のものを求め、周辺マージ（ステップ５０４）でその周辺、即ち前後のパタンをマージしていく。ＬＳＩが初期状態から正確な消費電力を見積もることのできる状態（通常状態）になるまで回路規模やＦＦの段数などに依存するある一定以上のパタン数が必要であるためである。電力を見積もることのできるパタン数となるまで規定サイズ検査（ステップ５０５）で検査し、満たさないうちは、周辺マージ（ステップ５０４）を繰り返す。
そして規定サイズと等しくなった、あるいは超えた場合は、パタン出力（ステップ５０６）でそのパタンを出力する。このパタン生成がパタン生成１０４であり、計測パタン３０３が生成され、組合せ回路遷移解析１０５を経て最大電力導出予測パタン３０４となる。
これにより、ＦＦの動作率が高い部分に着目した、最大消費電力を導出するパタンの生成が可能となる。
なお、ここまでの処理は、すべてＦＦの動作のみを観測するため、そのパタン生成が非常に容易である。しかし、図８の処理を組合せ回路素子を含む動作回数測定に対して実行しても良い。
最大電力導出予測パタン３０４はそれ自体、大きい動的消費電力を導出するパタンである。しかし、それをベースにさらなる大きな消費電力が予測されるパタンを生成するのが、図１に於けるパタン変動１０６、図３に於けるパタン変化（ステップ４０５）である。
図９はこのパタン変動１０６、パタン変化（ステップ４０５）を説明する図である。図９は本実施形態が想定しているＬＳＩの回路（回路配線情報）についての概念図を示している。図９で雲の形をしたものはＬＳＩの回路を、「ＩＮ」と描かれたものは前記回路に対する６本の入力を、「ＯＵＴ」と描かれたものは前記回路からの６本の出力を表している。図９の例では回路を構成する入力（図９のＩＮ）のうち、任意の部分入力（図では上から２番目及び下から２番目のＩＮ）に対して０を１に、１を０に変化させている。実際にはどの入力を変化させるかは、乱数の利用や、回路の特性に応じた方法などにより決定される。
図１０では、別の例として、ある時間単位のパタンにおいて時間的に任意の位置のビットパタンを反転させる例を示す。図１０は本実施形態に於いて想定している回路テストパタンの一部分の例を示している。図１０の上の数列“０００１０１１０１０１１１”はＬＳＩの特定の入力に入力されるビット列を表している。図１０の下の数列“１００１０１１０１０１０１”はパタンを変化させた後のビット列を表している。図１０において四角で囲まれているビットは反転させたビットであることを示している。図１０では“０００１０１１０１０１１１”という入力に対し、時間的に最初の入力と最後から２番目の入力を反転させ“１００１０１１０１０１０１”とした例を示した。何個反転させるかの設定は、外部から入力するとしても良いし、全体の１０％と定めるとしても良い。
これにより最大電力を発生させる最大電力導出予測パタン３０４をベースに、少し変化させたパタンである更新最大電力導出パタン３０７を得ることができる。
変化させた更新最大電力導出パタン３０７が最大電力導出予測パタン３０４より、より大きな電力を発生させることができるかどうかを継続判断（ステップ４０６）で判断を行う。たとえば大きな電力を発生させることのできるパタンの場合は、パタン変化（ステップ４０５）を継続して行う。なお継続の条件としては、大きな電力が発生できなくてもある一定回数までは継続するとしてもよいし、最大電力導出予測パタン３０４からの消費電力の減少がある一定以下ならば継続させるとしてもよい。
この継続条件は継続判断（ステップ４０６）が参照するフラグで決定される。フラグの条件はあらかじめ入力されている。これにより大きな消費電力が予測される更新最大電力導出パタン３０７を求めることができ、これを消費電力見積もり（ステップ４０７）に回路配線情報３０１、ライブラリ３０８とともに入力すれば、消費電力見積もりを行うことができる。図４の場合は、図１の場合と異なり、消費電力見積もり１０７をパタン変動１０６後に行って最大消費電力を探索する際の選択の評価に利用するとしている。従って図４の構成では、処理時間は長くなるが、より正確にパタンを得ることができる。
（効果の説明）
本実施形態においては、以下に記載するような効果を奏する。
即ち本実施形態では、第１の実施形態の場合よりも、処理時間の長大化、必要な記憶容量の増大化を防ぎつつ、より正確に、より大きな消費電力を導出するパタンを生成することのできる回路動作解析方法を提供できる。
（第４の実施形態）
次に、本発明を実施するための第４の実施形態について説明する。
図１１に第４の実施形態の回路動作解析装置の構成を示す。
第４の実施形態の回路動作解析装置１１００は、回路テストパタンに於ける計測区間を変化させ回路配線情報に含まれるフリップフロップの動作回数が最大となる区間を回路テストパタンから抽出する最大変化抽出手段１１０１を有する。最大変化抽出手段１１０１には解析対象である回路配線情報と回路配線情報に印加する回路テストパタンとが入力される。
更に回路動作解析装置１１００は、前記区間に含まれるパタンを基に第２の回路テストパタンを生成するパタン生成処理１１０２と、第２の回路テストパタンを印加した際の前記回路配線情報の消費電力を解析する消費電力解析処理１１０３と、を有する。
（効果の説明）
本実施形態においては、以下に記載するような効果を奏する。
即ち本実施形態では、処理時間の長大化、必要な記憶容量の増大化を防ぎつつ、より動作率の高いテストパタンを生成し、より大きなピーク消費電力を導出することのできる回路動作解析方法を提供することができる。
なお、ここまで説明した各実施形態では、次のようなものでもよい。即ち例えば各種データ処理を行うパーソナルコンピュータ装置に、本例に相当する処理を行うボードやカードなどを装着し、各処理を、コンピュータ装置側で実行させる。このようにして、その処理を実行するソフトウェアをパーソナルコンピュータ装置に実装させて実行する構成としても良い。
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
この出願は、２０１１年８月２５日に出願された日本出願特願２０１１−１８３７９３を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【産業上の利用可能性】
【００１１】
本発明は、半導体集積装置の動的消費電力の解析に関し、特に、必要な回路動作率の解析手法に関するものであり、産業上の利用可能性を有する。
【符号の説明】
【００１２】
１０１  値変化観測処理
１０２  値変化総和処理
１０３  最大変化抽出
１０４  パタン生成
１０５  組合せ回路遷移解析
１０６  パタン変動
１０７  消費電力解析
１１０  ＦＦ重みづけ
２０１  組合せ回路切り出し
２０２  関連ＦＦ値付与
２０３  ＦＦ重み計算
３０１  回路配線情報
３０２  回路テストパタン
３０３  計測パタン
３０４  最大電力導出予測パタン
３０５  ＦＦ重みリスト
３０６  ＦＦパタン
３０７  更新最大電力導出パタン
３０８  ライブラリ
３０９  消費電力解析結果
【図１】
2013027738.tif 000003
【図２】
2013027738.tif 000004
【図３】
2013027738.tif 000005
【図４】
2013027738.tif 000006
【図５】
2013027738.tif 000007
【図６】
2013027738.tif 000008
【図７】
2013027738.tif 000009
【図８】
2013027738.tif 000010
【図９】
2013027738.tif 000011
【図１０】
2013027738.tif 000012
【図１１】
2013027738.tif 000013
【国際調査報告】
2013027738.tif 000014
2013027738.tif 000015