JP2004341952A - 消費電力計算装置 - Google Patents
消費電力計算装置 Download PDFInfo
- Publication number
- JP2004341952A JP2004341952A JP2003139402A JP2003139402A JP2004341952A JP 2004341952 A JP2004341952 A JP 2004341952A JP 2003139402 A JP2003139402 A JP 2003139402A JP 2003139402 A JP2003139402 A JP 2003139402A JP 2004341952 A JP2004341952 A JP 2004341952A
- Authority
- JP
- Japan
- Prior art keywords
- signal change
- change probability
- power consumption
- extraction target
- information
- 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.)
- Pending
Links
Images
Abstract
【課題】論理シミュレーション機能を持つ消費電力計算装置において、良好な消費電力見積り精度を有し、且つ論理シミュレーション時における処理時間および処理装置の負荷が軽減された消費電力計算装置を得ること。
【解決手段】論理シミュレーションによる信号変化確率情報の抽出対象となる抽出対象情報を生成する手段と、抽出対象情報に基づいて論理シミュレーションを実行して抽出対象の信号変化確率情報を抽出する手段と、抽出対象以外の端子およびネットの信号変化確率情報を計算する手段と、半導体集積回路内の端子およびネットの信号変化に対応した消費電力情報を保持する手段と、信号変化確率情報および消費電力情報とに基づいて論理ゲート毎の消費電力を計算して半導体集積回路の消費電力を計算する手段とを備える。
【選択図】 図1
【解決手段】論理シミュレーションによる信号変化確率情報の抽出対象となる抽出対象情報を生成する手段と、抽出対象情報に基づいて論理シミュレーションを実行して抽出対象の信号変化確率情報を抽出する手段と、抽出対象以外の端子およびネットの信号変化確率情報を計算する手段と、半導体集積回路内の端子およびネットの信号変化に対応した消費電力情報を保持する手段と、信号変化確率情報および消費電力情報とに基づいて論理ゲート毎の消費電力を計算して半導体集積回路の消費電力を計算する手段とを備える。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は、半導体集積回路の消費電力計算装置に関し、特に半導体集積回路に対する論理シミュレーション結果から得られる各論理ゲートの信号変化確率情報を用いて消費電力を計算する消費電力計算装置に関するものである。
【0002】
【従来の技術】
半導体集積回路においては、半導体集積回路の動作時に発生する熱により、所定の動作条件を超えてしまうことになれば、信号の正常な動作を保証することは難しい。一方、電源線から十分な量の電流が供給されなければ、信号の正常な動作を保証することは難しい。
【0003】
そこで、半導体集積回路の設計において、半導体集積回路の発熱量や同回路の電源線の電流量を考慮することが従来から提案されており、半導体集積回路の消費電力計算の高精度化が研究されている。
【0004】
半導体集積回路の消費電力を求める装置としては、例えば以下のような装置がある。例えば論理ゲート毎に当該ゲートの端子が1回変化する際に消費される電力値を把握し、また、論理シミュレーションで計算した当該端子の変化回数から当該端子の信号変化確率を求めて、両者から当該論理ゲートの消費電力を算出する。そして、これを半導体集積回路全体に対して実施することで半導体集積回路の消費電力を求める消費電力計算装置が一般的に用いられている。
【0005】
一方、論理シミュレーションを実行することなく、半導体集積回路の消費電力を求める方法がある。これは、論理ゲート毎に入力端子の信号値から出力端子の信号値を算出するための式を定義し、同式を用いて入力端子の信号変化確率から出力端子の信号変化確率を計算することで半導体集積回路の外部入力端子から外部出力端子に向けて順に論理ゲートの出力端子の確率を計算する方法である。そして、同方法を用いて半導体集積回路の消費電力を求める消費電力計算装置も存在する。
【0006】
また、論理シミュレーションを利用するものとしては、組み合わせ回路についてセル単位の消費電力ライブラリから複数のセル群をブロックとしたブロック単位の消費電力ライブラリを作成して消費電力を求めるものもある(例えば特許文献1参照)。
【0007】
【特許文献1】
特開2002−15022号公報(第5頁〜第6頁)
【0008】
【発明が解決しようとする課題】
以上のような従来の半導体集積回路に対する消費電力計算装置は、電力値を精度良く算出するために、論理シミュレーションで抽出した信号変化の確率に関する情報ないしはイベント結果ファイルから生成した信号変化確率情報を用いて消費電力値を計算している。
【0009】
しかしながら、論理シミュレーションにより当該情報を抽出する場合、論理シミュレーション時における、処理時間の増加、コンピュータのメモリ使用量の増加、信号変化確率情報を記述したファイルのサイズが膨大になるなどの問題がある。
【0010】
また、従来、半導体集積回路に対する消費電力計算装置では、外部入力ポートないしは任意のネットに信号変化確率情報を与えることで、信号変化確率情報を与えていないネットの信号変化確率情報を自動計算する機能を有しているものもあり、論理シミュレーションで信号変化確率情報の抽出を行うことなく消費電力値を算出する機能を有しているものもある。
【0011】
しかし、当該機能では、回路構成に依存して、抽出した信号変化確率情報の誤差が大きくなることがあるため、十分な精度で消費電力が得られないという問題がある。
【0012】
この発明は上記に鑑みてなされたもので、論理シミュレーション機能を持つ消費電力計算装置において、良好な消費電力見積り精度を有し、且つ論理シミュレーション時における処理時間および処理装置の負荷が軽減された消費電力計算装置を得ることを目的としている。
【0013】
【課題を解決するための手段】
上記目的を達成するためこの発明にかかる消費電力計算装置は、複数の論理ゲートから構成される半導体集積回路の設計時に、該半導体集積回路内の端子およびネットの信号変化の確率に関する信号変化確率情報と、端子およびネットの信号変化に対応した消費電力情報とから論理ゲート毎の消費電力を計算して半導体集積回路の消費電力を計算する消費電力計算装置であって、半導体集積回路内の端子およびネットのうち論理シミュレーションによる信号変化確率情報の抽出対象となる抽出対象情報を生成する抽出対象生成手段と、抽出対象情報に基づいて論理シミュレーションを実行して抽出対象の信号変化確率情報を抽出する信号変化確率情報抽出手段と、信号変化確率情報抽出手段において抽出された信号変化確率情報に基づいて半導体集積回路内の端子およびネットのうち抽出対象以外の端子および前記ネットの信号変化確率情報を計算する信号変化確率計算手段と、半導体集積回路内の端子およびネットの信号変化に対応した消費電力情報を保持する消費電力情報保持手段と、論理シミュレーション手段において抽出した信号変化確率情報、信号変化確率計算手段で計算した信号変化確率情報および消費電力情報とに基づいて論理ゲート毎の消費電力を計算して半導体集積回路の消費電力を計算する消費電力計算手段とを備えることを特徴とする。
【0014】
この発明によれば、信号変化確率を信号変化確率計算機能と論理シミュレーション機能とに基づいて分割して求める。すなわち、この発明においては、信号変化確率計算機能では充分な精度が得られない個所に対してのみ、論理シミュレーションによる信号変化確率情報の抽出を行なう。これにより、半導体集積回路の全ての箇所において良好な精度で信号変化確率情報を得ることが可能である。そして、これに基づいて消費電力を計算するため、高精度の消費電力計算を行うことが可能である。また、信号変化確率情報を信号変化確率計算機能と論理シミュレーション機能とに基づいて分割して求めるため、半導体集積回路の全ての箇所について論理シミュレーションを実行する必要が無く、論理シミュレーション時における処理時間および処理装置の負荷を軽減することが可能である。
【0015】
したがって、この発明によれば、論理シミュレーションによる信号変化確率情報計算機能を有する消費電力計算装置において、高い消費電力見積り精度と、論理シミュレーション時における処理時間および処理装置の負荷の軽減とが両立された消費電力計算装置を実現できる。
【0016】
【発明の実施の形態】
以下に添付図面を参照して、この発明に係る消費電力計算装置の好適な実施の形態を詳細に説明する。なお、本発明は、下記の記述に限定されるものではなく、本発明の要旨を逸脱しない範囲において適宜変更可能である。
【0017】
実施の形態1.
図1は、本実施の形態に係る消費電力計算装置を説明するブロック図である。当該図は、消費電力計算装置の構成、処理の手順、および各処理における入出力データを示している。また、本明細書においては、「セル」と「論理ゲート」とは同義である。
【0018】
当該消費電力計算装置は、計算対象となる回路のセル間の接続情報が記述されたネットリスト1、セルの名前やファンクション(動作定義)が記述されたセルライブラリ2、ネットリスト1とセルライブラリ2とを入力して消費電力計算対象となる回路の入出力端子に接続するネットを抽出する入出力端子抽出部3、電圧値が固定されたネットを抽出する固定電圧箇所抽出部4、1入力1出力セルが1セル以上直列接続する部分回路の初段にあるセルの入力側のネットを抽出する直列セル初段ネット抽出部5、順序回路セルの出力端子を抽出する順序回路セル出力端子抽出部8、組合せ回路セルのみで構成されるループ回路を認識して当該ループ回路内の任意の1ネットを抽出するループ回路ネット抽出部7、順序回路セルのクロック端子に接続するネットを入力側に向かってネット及びセルを検索しながら遡り、消費電力計算対象回路の入力端子までの全ネット及び全端子を抽出するクロックネット抽出部8、入出力端子抽出部3と固定電圧箇所抽出部4と直列セル初段ネット抽出部5と順序回路セル出力端子抽出部6とループ回路ネット抽出部7とクロックネット抽出部8で抽出された情報を蓄えておく抽出対象候補リスト9、論理シミュレーションによって信号変化確率情報を抽出する対象・非対象および優先度が記述された抽出対象リスト10、抽出対象侯補リスト9から最終的に論理シミュレーションによる信号変化確率情報の抽出対象となる箇所を決めて、抽出対象リスト10を出力する抽出対象リスト生成部11、論理シミュレーションを実行するために入力端子に印加するパターンを記述した入力パターン12、ネットリスト1とセルライブラリ2と抽出対象リスト10と入力パターン12を用いて当該回路の論理シミュレーションを行なう論理シミュレーション部13、抽出対象リスト10中の抽出対象毎の信号変化確率が記述された信号変化確率情報14、論理シミュレーション中に信号変化確率情報14を出力する信号変化確率情報出力部15、消費電力計算対象となる回路の全ネットおよび全端子の信号変化確率が記述された信号変化確率情報16、抽出対象リスト10と信号変化確率情報14とネットリスト1とセルライブラリ2を用いて抽出対象リスト10に無い対象の信号変化確率を計算して信号変化確率情報16を生成する信号変化確率計算部17、セル毎に当該セルの各端子が信号変化に応じた消費電力情報が記述された消費電力ライブラリ18、消費電力計算対象となる回路の消費電力が記述された消費電力情報19、信号変化確率情報16と消費電力ライブラリ8とネットリスト1を用いて消費電力を計算し、消費電力情報19を出力する消費電力計算部20とを備えるものである。
【0019】
ここで、信号変化確率情報とは、半導体集積回路内の端子およびネットの信号変化の確率に関する情報である。
【0020】
次に、この消費電力計算装置の動作を図面を参照しながら具体的に説明する。まず、入出力端子抽出部3にネットリスト1とセルライブラリ2とを入力すると、該入出力端子抽出部3では消費電力計算対象となる回路の入力端子および出力端子を認識して当該端子名を抽出対象として抽出対象候補リスト9に蓄える。これにより、漏れのない高精度の抽出対象のリストアップができる。
【0021】
次に、固定電圧箇所抽出部4にネットリスト1とセルライブラリ2とを入力すると、該固定電圧箇所抽出部4では電源電圧源あるいはグランドに接続されたネットあるいは端子を認識する。そして、当該ネット名および当該端子名を非抽出対象として認識し、当該ネット名および当該端子名に非抽出対象マークを付けて抽出対象候補リスト9に蓄える。また、その際に信号が全く変化しないことを示すフラグを付ける。なお、当該非抽出対象は、信号変化確率を信号変化確率計算機能で計算させた場合においても信号変化確率の計算の精度が低下する可能性はないため、当該非抽出対象を優先度の高い非抽出対象として認識し、優先度の高い非抽出対象のマークを付ける。このように、抽出対象と非抽出対象とを選択的に認識して抽出対象候補リスト9に蓄えることにより、後述する論理シミュレーションの実行対象を削減し、論理シミュレーション時の負荷を軽減することができる。
【0022】
次に、直列セル初段ネット抽出部5にネットリスト1とセルライブラリ2を入力すると、該直列セル初段ネット抽出部5では1入力1出力セルを検索して当該セルが1段以上直列接続している部分回路の初段の入力端子に接続するネットを認識する。そして、当該ネット名を抽出対象として認識して抽出対象マークを付けて抽出対象候補リスト9に蓄える。また、当該部分回路内の抽出対象以外の全てを非抽出対象として認識して非抽出対象マークを付けて抽出対象候補リスト9に蓄える。このように、抽出対象と非抽出対象とを選択的に認識して抽出対象候補リスト9に蓄えることにより、後述する論理シミュレーションの実行対象を削減し、論理シミュレーション時の負荷を軽減することができる。
【0023】
図2を用いて直列セル初段ネット抽出部5における具体的な抽出例を説明する。図2に示す回路を消費電力計算の対象となる回路とした場合、まず、当該回路中の1入力1出力セルが1段以上直列接続している部分回路を対象回路の入力端子から探索する。最初に、セルA16が見付かるため、ネットA3とネットA4とセルA16とを部分回路とし、セルA16から、その出力側に接続しているセルA17とセルA20、および当該セルの出力側に接続しているネットA5とネットA10とを当該部分回路に含め、さらに、セルA18とセルA21、およびネットA6とネットA11とを部分回路に含める。そして、当該セルの出力に1入力1出力セルが存在しないことにより、セルA16、セルA17、セルA18、セルA20、セルA21、ネットA3、ネットA4、ネットA5、ネットA6、ネットA10、ネットA11で構成される回路A0が部分回路として抽出される。
【0024】
その後、当該部分回路の初段セルであるセルA16の入力端子に接続するネットA3を抽出対象として認識して、抽出対象マークを付けて図3に示す抽出対象候補リスト9に蓄える。また、当該部分回路内における該ネットA3以外のネット、セルの入力端子および出力端子を全て非抽出対象として認識して、図3に示す非抽出対象マークを付けて抽出対象候補リスト9に蓄える。
【0025】
この時、当該部分回路に含まれない回路部分については何もマークを付けない。また、当該非抽出対象は、信号変化確率を信号変化確率計算機能で計算させた場合においても信号変化確率の計算の精度が低下する可能性はないため、優先度の高い非抽出対象として認識し、優先度の高い非抽出対象のマークを付ける。
【0026】
なお、図3において、「A」は入力端子、「Y」は出力端子を示し、「○」は抽出対象を意味する抽出対象マークであり、「×」は非抽出対象を意味する非抽出対象マークであり、「+」は優先度の高い非抽出対象を意味するマークである。
【0027】
次に、順序回路セル出力端子抽出部6にネットリスト1とセルライブラリ2とを入力すると、該順序回路セル出力端子抽出部6では順序回路セルの出力端子を認識して当該端子名を抽出対象として抽出対象侯補リスト9に蓄える。このように、抽出対象を選択的に認識して抽出対象候補リスト9に蓄えることにより、後述する論理シミュレーションの実行対象を削減し、論理シミュレーション時の負荷を軽減することができる。
【0028】
次に、ループ回路ネット抽出部7にネットリスト1とセルライブラリ2とを入力すると、組合せ回路のみでループになっている部分回路を認識する。そして、当該部分回路内のループ上にある任意のネット名を抽出対象として認識して、抽出対象マークを付けて抽出対象候補リスト9に蓄える。また、当該部分回路内における抽出対象以外の全てを非抽出対象として認識して、非抽出対象マークを付けて抽出対象候補リスト9に蓄える。このように、抽出対象と非抽出対象とを選択的に認識して抽出対象候補リスト9に蓄えることにより、後述する論理シミュレーションの実行対象を削減し、論理シミュレーション時の負荷を軽減することができる。
【0029】
図4を用いてループ回路ネット抽出部7の具体的な抽出例を説明する。図4の回路を消費電力計算の対象となる回路とした場合、まず、当該回路中の組合せ回路のみでループになっている部分回路を対象回路の入力端子から検索する。例えばネットB2から探索するとセルB12、ネットB6、セルB13、ネットB7、セルB14、ネットB8、セルB15、ネットB5、セルB16、ネットB4、セルB13の順に探索すると、組合せ回路のみでループになっている部分回路B0が抽出される。部分回路B0には、ネットB4、ネットB5、ネットB7、ネットB8と、これらのネットが接続しているセルB13、セルB14、セルB15、セル16の入力端子および出力端子が含まれる。
【0030】
その後、当該部分回路B0の任意の1ネットとして、例えば、当該部分回路内の最後に見付かったネットであるネットB4を抽出対象とした場合、抽出対象マークを付けて図5に示す抽出対象候補リスト9に蓄える。また、当該部分回路内におけるネットB4以外の全てのネットおよびビンを非抽出対象として認識して、非抽出対象マークを付けて図5に示す抽出対象候補リスト9に蓄える。
【0031】
この時、当該部分回路に含まない回路部分については何もマークを付けない。また、当該非抽出対象は、信号変化確率を信号変化確率計算機能で計算させた場合には信号変化確率の計算の精度が低下する可能性があるため、当該非抽出対象は優先度の低い非抽出対象として認識し、優先度の高い非抽出対象のマークを付ける。
【0032】
なお、図5において、「A」は入力端子、「Y」は出力端子を示し、「○」は抽出対象を意味する抽出対象マークであり、「×」は非抽出対象を意味する非抽出対象マークであり、「−」は優先度の低い非抽出対象を意味するマークである。
【0033】
次に、クロックネット抽出部8にネットリスト1とセルライブラリ2を入力すると、該クロックネット抽出部8では、全順序回路のクロック端子を起点として消費電力計算対象となる回路の入力端子に向かってネットおよびセルを探索しながら探索経路上の全てのネットおよび全ての端子を認識して当該ネット名および当該端子名を抽出対象候補リスト9に蓄える。これにより、漏れのない高精度の抽出対象のリストアップができる。
【0034】
次に、抽出対象リスト生成部11に信号変化確率情報の抽出対象の候補、および非抽出対象の候補となるネット名および端子名が全て蓄えられた抽出対象候補リスト9を入力する。該抽出対象リスト生成部11では、非抽出対象マークのみが付いている対象と、非抽出対象マークおよび優先度の高い非抽出対象マークの両方が付いている対象のみを後述する論理シミュレーションの対象でない非抽出対象として認識する。また、抽出対象となるネットと抽出対象となる端子とが近接接続している場合で、且つ、当該ネットあるいは当該端子のいずれかの信号変化確率情報が決まれば他方の信号変化確率情報が決まる場合に、必要な対象のみ、すなわち抽出対象となるネットと抽出対象となる端子とのいずれかを抽出対象として認識し、他方を非抽出対象として認識する。さらに上記の非抽出対象以外を後述する論理シミュレーションの対象である抽出対象として認識する。そして、以上により最終的に決まる全ての抽出対象を抽出対象リスト10に出力する。
【0035】
すなわち、抽出対象リスト生成部11では、信号変化確率計算機能では充分な精度が得られない個所に対してのみ、論理シミュレーションによる信号変化確率情報の対象として抽出を行なう。また、信号変化確率計算部17において信号変化確率を計算した場合においても信号変化確率の計算の精度が低下しない箇所、すなわち信号変化確率計算機能で充分な精度が得られる個所を非抽出対象とし、抽出対象を抽出対象リスト10には含めない。なお、ここで非抽出対象とされてものについては、信号変化確率計算部17において信号変化確率を計算するため、論理シミュレーション部13において論理シミュレーションが実行されない。
【0036】
次に、論理シミュレーション部13に、ネットリスト1とセルライブラリ2と抽出対象リスト10と入力パターン12とを入力する。該論理シミュレーション部13では、論理シミュレーションを実行し、抽出対象リスト10にある抽出対象で発生するシミュレーション時間に沿って信号変化回数および各信号値の取り得る期間をそれぞれ加算していく。
【0037】
また、信号変化確率情報抽出部15では、論理シミュレーション部13において加算された当該回数および当該期間から抽出対象の信号変化確率を計算して信号変化確率情報14として出力する。これにより、抽出対象に関しては、論理シミュレーションを実行することにより良好な精度で信号変化確率情報を得ることができる。
【0038】
そして、抽出対象リスト生成部11において非抽出対象とされているものについては、論理シミュレーション部13においては、論理シミュレーションが実行されないため、信号変化確率情報抽出部15において信号変化確率情報は計算されない。これらの非抽出対象とされたものについては、信号変化確率計算部17において信号変化確率を計算する。これにより、論理シミュレーション部13における論理シミュレーションの実行対象を軽減することができる。その結果、論理シミュレーション時における処理時間の削減、コンピュータのメモリ使用量の削減、信号変化確率情報を記述したファイルのサイズの縮小化が可能となる。
【0039】
次に、信号変化確率計算部17に、ネットリスト1とセルライブラリ2と信号変化確率情報14とを入力する。該信号変化確率計算部17では、抽出対象リスト10に含まれていない対象の信号変化確率を計算して信号変化確率情報16を生成する。該信号変化確率計算部17では、信号変化確率情報14に記述された信号変化確率からセル毎に当該セルの入力端子の信号変化確率を検索し、またセルライブラリ2に記述されたファンクション情報を用いて当該確率から当該セルの出力端子の信号変化確率を計算する。また、信号変化確率情報14に記述された信号変化確率から該信号変化確率情報14に記述されていない箇所のネットの信号変化確率を計算する。すなわち、信号変化確率計算部17では、信号変化確率情報14に基づいて、該信号変化確率情報14に記述されていない全ての箇所の信号変化確率情報を計算する。ここで、信号変化確率計算部17において信号変化確率情報が計算される箇所は、上述した該抽出対象リスト生成部11において非抽出対象として認識された箇所であり、信号変化確率計算部17において信号変化確率を計算した場合においても信号変化確率の計算の精度が低下しない箇所、すなわち信号変化確率計算機能で充分な精度が得られる個所である。これにより、信号変化確率計算部17では、良好な計算精度で信号変化確率情報が得られる。
【0040】
但し、当該計算を開始する前に、抽出対象リスト10に信号が全く変化しないことを示すフラグが付いた対象については、信号が全く変化しない時の信号変化確率に設定しておく。
【0041】
そして、信号変化確率情報抽出部15と信号変化確率計算部17とにおける信号変化確率の計算により消費電力計算対象となる回路の全ネットおよび全端子の信号変化確率の抽出が終了した時点で、当該回路の全ネットおよび全端子の信号変化確率を信号変化確率情報16として出力する。以上により半導体集積回路内の全ての箇所について論理シミュレーションを実行すること無く、全ての箇所について良好な精度で信号変化確率情報を得ることができる。
【0042】
最後に、消費電力計算部19にネットリスト1と信号変化確率情報16と消費電力ライブラリ18とを入力する。該消費電力計算部19では、各端子の信号変化確率情報と各セルの消費電力とを計算し、消費電力情報20を出力する。ここで、消費電力ライブラリ18には、セル毎に当該セルの各端子の信号変化に応じた消費電力情報が記述されており、該消費電力計算部19では信号変化確率情報16に記述された当該セルの各端子の信号変化確率情報と当該消費電力情報から消費電力計算対象となる回路の消費電力情報値を抽出し、消費電力情報20に出力する。
【0043】
以上のように、この消費電力計算装置では、信号変化確率の計算を論理シミュレーション部13および信号変化確率情報抽出部15と、信号変化確率計算部17とに分割して行う。すなわち、信号変化確率計算部17で充分な計算精度が得られる個所に対しては信号変化確率計算部17で信号変化確率情報を計算し、信号変化確率計算部17では充分な計算精度が得られない個所に対してのみ、論理シミュレーションによる信号変化確率情報の抽出を行なう。
【0044】
したがって、この消費電力計算装置では、半導体集積回路の全ての箇所において良好な精度で信号変化確率情報を得ることができ、これに基づいて消費電力を計算するため、高精度の消費電力計算が可能である。
【0045】
また、信号変化確率計算部17では充分な計算精度が得られない個所に対してのみ、論理シミュレーションを使用した信号変化確率情報の抽出を行なうため、論理シミュレーションの実行対象を大幅に削減することが可能であり、論理シミュレーション時における処理時間の削減、コンピュータのメモリ使用量の削減、信号変化確率情報を記述したファイルのサイズの縮小化が可能となる。
【0046】
したがって、この消費電力計算装置では、論理シミュレーションによる信号変化確率計算機能を持つ消費電力計算装置において、高い消費電力見積り精度を有するとともに論理シミュレーション時における処理時間および処理装置の負荷を軽減することができるという効果を有する。
【0047】
なお、この消費電力計算装置は、該装置に固有のライブラリ情報を必要とせずに従来と同様のライブラリをそのまま使用するだけで実現が可能である。
【0048】
実施の形態2.
つぎに、この発明の実施の形態2について説明する。
【0049】
図6は、本実施の形態に係る消費電力計算装置を説明するブロック図である。当該図は、消費電力計算装置の構成、処理の手順、および各処理における入出力データを示している。
【0050】
当該消費電力計算装置は、計算対象となる回路のセル間の接続情報が記述されたネットリスト21、セルの名前やファンクション(動作定義)が記述されたセルライブラリ22、ネットリスト21とセルライブラリ22とを入力して消費電力計算対象となる回路の入出力端子に接続するネットを抽出する入出力端子抽出部23、電圧値が固定されたネットを抽出する固定電圧箇所抽出部24、1入力1出力セルが1セル以上直列接続する部分回路の初段にあるセルの入力側のネットを抽出する直列セル初段ネット抽出部25、組合せ回路セルのみで構成されるループ回路を認識して当該ループ回路内の任意の1ネットを抽出するループ回路ネット抽出部26、順序回路セルのクロック端子に接続するネットを入力側に向かってネット及びセルを検索しながら遡り、消費電力計算対象回路の入力端子までの全ネット及び全端子を抽出するクロックネット抽出部27、入出力端子抽出部23と固定電圧箇所抽出部24と直列セル初段ネット抽出部25とループ回路ネット抽出部26とクロックネット抽出部27とで抽出された信号変化確率情報を蓄えておく抽出対象侯補リスト28、論理シミュレーションによって信号変化確率情報を抽出する対象と抽出する優先度が記述された抽出対象リスト29、抽出対象侯補リスト28を入力して抽出対象リスト29を生成する抽出対象生成部30、セル毎に当該セルの各端子の信号変化に応じた消費電力情報および本発明固有の情報である各端子の抽出対象フラグおよび出力端子に対する信号変化確率の算出式が記述された消費電力ライブラリ31、抽出対象リスト29に消費電力ライブラリ31で抽出対象に指定されている端子を付加した抽出対象リスト32、ネットリスト21とセルライブラリ22と消費電力ライブラリ31と抽出対象リスト29を入力して抽出対象リスト32を生成する抽出対象付加部33、論理シミュレーションを実行するために入力端子に印加するパターンを記述した入力パターン34、ネットリスト21とセルライブラリ22と入力パターン34を用いて当該回路の論理シミュレーションを行なう論理シミュレーション部35、抽出対象リスト32中の抽出対象毎の信号変化確率が記述された信号変化確率情報38、論理シミュレーション中に信号変化確率情報38を出力する信号変化確率情報出力部37、抽出対象リスト32と信号変化確率情報36とネットリスト21とセルライブラリ22と消費電力ライブラリ31を用いて抽出対象リスト32に無い対象の信号変化確率を計算して信号変化確率情報38を生成する信号変化確率計算部39、消費電力計算対象となる回路の消費電力が記述された消費電力情報40、信号変化確率情報19と消費電力ライブラリ31とネットリスト21を用いて消費電力を計算し、消費電力情報40を出力する消費電力計算部41とを備えるものである。
【0051】
次に、この費電力計算装置の動作を図面を参照しながら具体的に説明する。まず、入出力端子抽出部23にネットリスト21とセルライブラリ22とを入力すると、該入出力端子抽出部23では消費電力計算対象となる回路の入力端子および出力端子を認識して当該端子名を抽出対象として抽出対象候補リスト28に蓄える。これにより、漏れのない高精度の抽出対象のリストアップができる。
【0052】
次に、固定電圧箇所抽出部24にネットリスト21とセルライブラリ22とを入力すると、該固定電圧箇所抽出部24では電源電圧源あるいはグランドに接続されたネットあるいは端子を認識する。そして、当該ネット名および当該端子名を非抽出対象として認識し、当該ネット名および当該端子名に非抽出対象マークを付けて抽出対象候補リスト28に蓄える。また、その際に信号が全く変化しないことを示すフラグを付ける。なお、当該非抽出対象は、信号変化確率を信号変化確率計算機能で計算させた場合においても信号変化確率の計算の精度が低下する可能性はないため、当該非抽出対象を優先度の高い非抽出対象とし認識し、優先度の高い非抽出対象のマークを付ける。このように、抽出対象と非抽出対象とを選択的に認識して抽出対象候補リスト28に蓄えることにより、後述する論理シミュレーションの実行対象を削減し、論理シミュレーション時の負荷を軽減することができる。
【0053】
次に、直列セル初段ネット抽出部25にネットリスト21とセルライブラリ22を入力すると、該直列セル初段ネット抽出部25では1入力1出力セルを検索して当該セルが1段以上直列接続している部分回路の初段の入力端子に接続するネットを認識する。そして、当該ネット名を抽出対象として認識して抽出対象マークを付けて抽出対象候補リスト28に蓄える。また、当該部分回路内の抽出対象以外の全てを非抽出対象として認識して非抽出対象マークを付けて抽出対象候補リスト28に蓄える。このように、抽出対象を選択的に認識して抽出対象候補リスト28に蓄えることにより、後述する論理シミュレーションの実行対象を削減し、論理シミュレーション時の負荷を軽減することができる。
【0054】
なお、直列セル初段ネット抽出部25の動作は、上述した実施例1の直列セル初段ネット抽出部5の動作と同じであり、具体的な抽出例は実施例1の直列セル初段ネット抽出部5の説明と同じであるため、上記の説明を参照することとし、詳細な説明は省略する。
【0055】
また、直列セル初段ネット抽出部25において認識する非抽出対象は、信号変化確率を信号変化確率計算機能で計算させた場合においても信号変化確率の計算の精度が低下する可能性はないため、優先度の高い非抽出対象として認識し、優先度の高い非抽出対象のマークを付ける。
【0056】
次に、ループ回路ネット抽出部26にネットリスト21とセルライブラリ22とを入力すると、組合せ回路のみでループになっている部分回路を認識する。そして、当該部分回路内のループ上にある任意のネット名を抽出対象として認識して、抽出対象マークを付けて抽出対象候補リスト28に蓄える。また、当該部分回路内における抽出対象以外の全てを非抽出対象として認識して、非抽出対象マークを付けて抽出対象候補リスト28に蓄える。このように、抽出対象と非抽出対象とを選択的に認識して抽出対象候補リスト28に蓄えることにより、後述する論理シミュレーションの実行対象を削減し、論理シミュレーション時の負荷を軽減することができる。
【0057】
なお、ループ回路ネット抽出部26の動作は、上述した実施例1のループ回路ネット抽出部7と同じであり、具体的な抽出例は実施例1のループ回路ネット抽出部7の説明と同じであるため、上記の説明を参照することとし、詳細な説明は省略する。
【0058】
また、ループ回路ネット抽出部26で認識する非抽出対象は、信号変化確率を信号変化確率計算機能で計算させた場合には信号変化確率の計算の精度が低下する可能性があるため、当該非抽出対象は優先度の低い非抽出対象として認識し、優先度の高い非抽出対象のマークを付ける。
【0059】
次に、クロックネット抽出部27にネットリスト21とセルライブラリ22を入力すると、該クロックネット抽出部27では、全順序回路のクロック端子を起点として消費電力計算対象となる回路の入力端子に向かってネットおよびセルを探索しながら探索経路上の全てのネットおよび全ての端子を認識して当該ネット名および当該端子名を抽出対象候補リスト28に蓄える。これにより、漏れのない高精度の抽出対象のリストアップができる。
【0060】
次に、抽出対象リスト生成部30に信号変化確率情報の抽出対象の候補、および非抽出対象の候補となるネット名および端子名が全て蓄えられた抽出対象候補リスト28を入力する。該抽出対象リスト生成部30では、抽出対象および非抽出対象の両方の対象として蓄えられている対象のみを後述する論理シミュレーションの対象ではない非抽出対象として認識する。
【0061】
また、抽出対象となるネットと抽出対象となる端子とが近接接続している場合で、且つ、当該ネットあるいは当該端子のいずれかの信号変化確率情報が決まれば他方の信号変化確率情報が決まる場合に、必要な対象のみ、すなわち抽出対象となるネットと抽出対象となる端子とのいずれかを抽出対象として認識し、他方を非抽出対象として認識する。さらに上記の非抽出対象以外を後述する論理シミュレーションの対象である抽出対象として認識する。そして、以上により最終的に決まる全ての抽出対象を抽出対象リスト29に出力する。
【0062】
すなわち、抽出対象リスト生成部30では、信号変化確率計算機能では充分な精度が得られない個所に対してのみ、論理シミュレーションによる信号変化確率情報の対象として抽出を行なう。また、信号変化確率計算部38において信号変化確率を計算した場合においても信号変化確率の計算の精度が低下しない箇所、すなわち信号変化確率計算機能で充分な精度が得られる個所を非抽出対象とし、抽出対象を抽出対象リスト29には含めない。なお、ここで非抽出対象とされてものについては、信号変化確率計算部38において信号変化確率を計算するため、論理シミュレーション部35において論理シミュレーションが実行されない。
【0063】
次に、抽出対象付加部33に、ネットリスト21とセルライブラリ22と抽出対象リスト29と消費電力ライブラリ31とを入力する。該抽出対象付加部33では、消費電力ライブラリ31においてセル毎に抽出対象として指定されている全端子の端子名を抽出対象リスト29に付加し、抽出対象リスト32として出力する。ここで、消費電力ライブラリ31には、セル毎に信号変化確率情報の抽出が必要な端子に対して抽出対象である旨の情報が記述されている。
【0064】
例えば、図7のように消費電力ライブラリ31に当該情報が記述されている場合、セル名が「ADDER」であるセルについては、端子Aと端子Bと端子Cとは抽出対象では無いが、端子S及び端子C1は抽出対象である。そして、ネットリスト21内でセル「ADDER」の端子S及び端子C1に対応する端子名が抽出対象リスト32として出力される。
【0065】
このように、セル毎に信号変化確率情報の抽出が必要な端子として消費電力ライブラリ31において記述された情報を抽出対象リスト29に対して付加することにより、本実施の形態に係る消費電力計算装置に固有のライブラリ情報である抽出対象リスト32を作成することができ、抽出対象リスト32を用いることにより、抽出漏れのない精度の高い信号変化確率情報を得ることができる。
【0066】
次に、論理シミュレーション部35に、ネットリスト21とセルライブラリ22と抽出対象リスト32と入力パターン34とを入力する。該論理シミュレーション部35では、論理シミュレーションを実行し、抽出対象リスト32にある抽出対象で発生するシミュレーション時間に沿って信号変化回数および各信号値の取り得る期間をそれぞれ加算していく。
【0067】
そして、信号変化確率情報抽出部37では、論理シミュレーション部35において加算された当該回数および当該期間から抽出対象の信号変化確率を計算して信号変化確率情報36として出力する。これにより、抽出対象に関しては、論理シミュレーションを実行することにより良好な精度で信号変化確率情報を得ることができる。
【0068】
そして、抽出対象リスト生成部30において非抽出対象とされてものについては、論理シミュレーション部35においては論理シミュレーションが実行されないため、信号変化確率情報抽出部37において信号変化確率情報は計算されない。これらの非抽出対象とされたものについては、信号変化確率計算部39において信号変化確率を計算する。これにより、論理シミュレーション部35における論理シミュレーションの実行対象を軽減することができる。その結果、論理シミュレーション時における処理時間の削減、コンピュータのメモリ使用量の削減、信号変化確率情報を記述したファイルのサイズの縮小化が可能となる。
【0069】
次に、信号変化確率計算部39に、ネットリスト21とセルライブラリ22と消費電力ライブラリ31と抽出対象リスト32信号変化確率情報36とを入力する。該信号変化確率計算部39では、抽出対象リスト32に含まれていない対象の信号変化確率を計算して信号変化確率情報38を生成する。該信号変化確率計算部39では、まず、消費電力ライブラリ31においてセル毎に記述されている出力端子間の信号変化確率の関係式を用いて、信号変化確率情報36に含まれていない出力端子の信号変化確率から当該端子を持つセルの当該端子以外の出力端子の信号変化確率を算出する。
【0070】
ここで、消費電力ライブラリ31には、セル内の所定の出力端子の信号変化確率から他の出力端子の信号変化確率が算出できる場合は、該他の出力端子は信号変化確率情報の抽出対象では無いが、該所定の出力端子の信号変化確率情報と該他の出力端子の信号変化確率情報との相関式、すなわち該所定の出力端子からの該他の出力端子の信号変化確率の算出式がセル毎に記述されている。例えば、図8のように消費電力ライブラリ31に当該式が記述されている場合、セル「FlipFlop」については、端子QCは端子Qの反転信号と同じ信号変化情報として信号変化確率情報38に出力される。
【0071】
次に、消費電力計算対象となる回路の入力端子から出力端子に向かってセル毎に接続を辿り、当該信号変化確率と信号変化確率情報36に記述された信号変化確率とから当該セルの入力端子の信号変化確率を検索し、セルライブラリ22に記述されたファンクション情報を用いて当該確率から当該セルの出力端子の信号変化確率を計算する。
【0072】
但し、当該計算を開始する前に、抽出対象リスト32に信号が全く変化しないことを示すフラグが付いた対象については、信号が全く変化しない時の信号変化確率に設定しておく。
【0073】
そして、当該計算を消費電力計算対象となる回路の出力端子に至るまで繰り返し、当該回路の全出力端子に対して同計算が終了し、信号変化確率情報抽出部37と信号変化確率計算部39とにおける信号変化確率の計算により消費電力計算対象となる回路の全ネットおよび全端子の信号変化確率の抽出が終了した時点で、当該回路の全ネットおよび全端子の信号変化確率を信号変化確率情報38として出力する。
【0074】
上記のように、信号変化確率計算部39では、信号変化確率情報14に基づいて、該信号変化確率情報36に記述されていない全ての箇所の信号変化確率情報を計算する。ここで、信号変化確率計算部39において信号変化確率情報が計算される箇所は、上述した該抽出対象リスト生成部32において非抽出対象として認識された箇所であり、信号変化確率計算部39において信号変化確率を計算した場合においても信号変化確率の計算の精度が低下しない箇所、すなわち信号変化確率計算機能で充分な精度が得られる個所である。これにより、信号変化確率計算部39では、良好な計算精度で信号変化確率情報が得られる。
【0075】
以上により半導体集積回路内の全ての箇所について論理シミュレーションを実行すること無く、全ての箇所について良好な精度で信号変化確率情報を得ることができる。
【0076】
最後に、消費電力計算部41にネットリスト21と消費電力ライブラリ31と信号変化確率情報38とを入力する。該消費電力計算部41では、各端子の信号変化確率情報と各セルの消費電力とを計算し、消費電力情報40を出力する。
【0077】
以上のように、この消費電力計算装置では、信号変化確率の計算を論理シミュレーション部35および信号変化確率情報抽出部37と、信号変化確率計算部39とに分割して行う。すなわち、信号変化確率計算部39で充分な計算精度が得られる個所に対しては信号変化確率計算部39で信号変化確率情報を計算し、信号変化確率計算部39では充分な計算精度が得られない個所に対してのみ、論理シミュレーションによる信号変化確率情報の抽出を行なう。
【0078】
したがって、この消費電力計算装置では、半導体集積回路の全ての箇所において良好な精度で信号変化確率情報を得ることができ、これに基づいて消費電力を計算するため、高精度の消費電力計算が可能である。
【0079】
また、信号変化確率計算部39では充分な計算精度が得られない個所に対してのみ、論理シミュレーションを使用した信号変化確率情報の抽出を行なうため、論理シミュレーションの実行対象を大幅に削減することが可能であり、論理シミュレーション時における処理時間の削減、コンピュータのメモリ使用量の削減、信号変化確率情報を記述したファイルのサイズの縮小化が可能となる。
【0080】
したがって、この消費電力計算装置では、論理シミュレーションによる信号変化確率計算機能を持つ消費電力計算装置において、高い消費電力値の見積り精度を有するとともに論理シミュレーション時における処理時間および処理装置の負荷を軽減することができるという効果を有する。
【0081】
さらに、この消費電力計算装置では、セル毎に信号変化確率情報の抽出が必要な端子として消費電力ライブラリ31において記述された情報を抽出対象リスト29に対して付加することにより、本実施の形態に係る消費電力計算装置に固有のライブラリである抽出対象リスト32を作成する。そして、この抽出対象リスト32を用いることにより、抽出漏れのない精度の高い信号変化確率情報を得ることができ、上述した実施の形態1に係る消費電力計算装置に比べて本発明の効果が大幅に大きいものとされている。
【0082】
【発明の効果】
以上説明したように、この発明によれば、信号変化確率を信号変化確率計算機能と論理シミュレーション機能とに基づいて分割して求め、信号変化確率計算機能では充分な精度が得られない個所に対してのみ、論理シミュレーションによる信号変化確率情報の抽出を行なう。これにより、半導体集積回路の全ての箇所において良好な精度で信号変化確率情報を得ることができ、さらにこれに基づいて消費電力を計算するため、高精度の消費電力計算を行うことが可能である。したがって、この発明によれば、論理シミュレーションによる信号変化確率情報計算機能を有する消費電力計算装置において、高い消費電力見積り精度を有するとともに論理シミュレーション時における処理時間および処理装置の負荷が軽減された消費電力計算装置を実現できるという効果を有する。
【図面の簡単な説明】
【図1】この発明の消費電力計算装置の構成及び処理フローの一例を示す図である。
【図2】消費電力計算の対象となる回路の一例を示す回路図である。
【図3】抽出対象候補リストの一例を示す図である。
【図4】消費電力計算の対象となる回路の一例を示す回路図である。
【図5】抽出対象候補リストの一例を示す図である。
【図6】この発明の消費電力計算装置の構成及び処理フローの一例を示す図である。
【図7】消費電力ライブラリに、信号変化確率情報の抽出が必要な端子に対して抽出対象である旨の情報が記述された状態を示す図である。
【図8】消費電力ライブラリ31に、所定の出力端子からの他の出力端子の信号変化確率の算出式がセル毎に記述された状態を示す図である。
【符号の説明】
1 ネットリスト、2 セルライブラリ、3 入出力端子抽出部、4 固定電圧箇所抽出部、5 直列セル初段ネット抽出部、6 順序回路セル出力端子抽出部、7 ループ回路ネット抽出部、8 クロックネット抽出部、9 抽出対象候補リスト、10 抽出対象リスト、11 抽出対象リスト生成部、12 入力パターン、13 論理シミュレーション部、14 信号変化確率情報、15 信号変化確率情報抽出部、16 信号変化確率情報、17信号変化確率計算部、18消費電力ライブラリ、19 消費電力情報、20 消費電力計算部、 21 ネットリスト、22 セルライブラリ、23 入出力端子抽出部、24 固定電圧箇所抽出部、25 直列セル初段ネット抽出部、26 ループ回路ネット抽出部、27 クロックネット抽出部、28 抽出対象候補リスト、29 抽出対象リスト、30 抽出対象リスト生成部、31 消費電力ライブラリ、32 抽出対象リスト、33 抽出対象付加部、34 入力パターン、35 論理シミュレーション部、36 信号変化確率情報、37 信号変化確率情報抽出部、38 信号変化確率情報、39信号変化確率計算部、40 消費電力情報、41 消費電力計算部。
【発明の属する技術分野】
本発明は、半導体集積回路の消費電力計算装置に関し、特に半導体集積回路に対する論理シミュレーション結果から得られる各論理ゲートの信号変化確率情報を用いて消費電力を計算する消費電力計算装置に関するものである。
【0002】
【従来の技術】
半導体集積回路においては、半導体集積回路の動作時に発生する熱により、所定の動作条件を超えてしまうことになれば、信号の正常な動作を保証することは難しい。一方、電源線から十分な量の電流が供給されなければ、信号の正常な動作を保証することは難しい。
【0003】
そこで、半導体集積回路の設計において、半導体集積回路の発熱量や同回路の電源線の電流量を考慮することが従来から提案されており、半導体集積回路の消費電力計算の高精度化が研究されている。
【0004】
半導体集積回路の消費電力を求める装置としては、例えば以下のような装置がある。例えば論理ゲート毎に当該ゲートの端子が1回変化する際に消費される電力値を把握し、また、論理シミュレーションで計算した当該端子の変化回数から当該端子の信号変化確率を求めて、両者から当該論理ゲートの消費電力を算出する。そして、これを半導体集積回路全体に対して実施することで半導体集積回路の消費電力を求める消費電力計算装置が一般的に用いられている。
【0005】
一方、論理シミュレーションを実行することなく、半導体集積回路の消費電力を求める方法がある。これは、論理ゲート毎に入力端子の信号値から出力端子の信号値を算出するための式を定義し、同式を用いて入力端子の信号変化確率から出力端子の信号変化確率を計算することで半導体集積回路の外部入力端子から外部出力端子に向けて順に論理ゲートの出力端子の確率を計算する方法である。そして、同方法を用いて半導体集積回路の消費電力を求める消費電力計算装置も存在する。
【0006】
また、論理シミュレーションを利用するものとしては、組み合わせ回路についてセル単位の消費電力ライブラリから複数のセル群をブロックとしたブロック単位の消費電力ライブラリを作成して消費電力を求めるものもある(例えば特許文献1参照)。
【0007】
【特許文献1】
特開2002−15022号公報(第5頁〜第6頁)
【0008】
【発明が解決しようとする課題】
以上のような従来の半導体集積回路に対する消費電力計算装置は、電力値を精度良く算出するために、論理シミュレーションで抽出した信号変化の確率に関する情報ないしはイベント結果ファイルから生成した信号変化確率情報を用いて消費電力値を計算している。
【0009】
しかしながら、論理シミュレーションにより当該情報を抽出する場合、論理シミュレーション時における、処理時間の増加、コンピュータのメモリ使用量の増加、信号変化確率情報を記述したファイルのサイズが膨大になるなどの問題がある。
【0010】
また、従来、半導体集積回路に対する消費電力計算装置では、外部入力ポートないしは任意のネットに信号変化確率情報を与えることで、信号変化確率情報を与えていないネットの信号変化確率情報を自動計算する機能を有しているものもあり、論理シミュレーションで信号変化確率情報の抽出を行うことなく消費電力値を算出する機能を有しているものもある。
【0011】
しかし、当該機能では、回路構成に依存して、抽出した信号変化確率情報の誤差が大きくなることがあるため、十分な精度で消費電力が得られないという問題がある。
【0012】
この発明は上記に鑑みてなされたもので、論理シミュレーション機能を持つ消費電力計算装置において、良好な消費電力見積り精度を有し、且つ論理シミュレーション時における処理時間および処理装置の負荷が軽減された消費電力計算装置を得ることを目的としている。
【0013】
【課題を解決するための手段】
上記目的を達成するためこの発明にかかる消費電力計算装置は、複数の論理ゲートから構成される半導体集積回路の設計時に、該半導体集積回路内の端子およびネットの信号変化の確率に関する信号変化確率情報と、端子およびネットの信号変化に対応した消費電力情報とから論理ゲート毎の消費電力を計算して半導体集積回路の消費電力を計算する消費電力計算装置であって、半導体集積回路内の端子およびネットのうち論理シミュレーションによる信号変化確率情報の抽出対象となる抽出対象情報を生成する抽出対象生成手段と、抽出対象情報に基づいて論理シミュレーションを実行して抽出対象の信号変化確率情報を抽出する信号変化確率情報抽出手段と、信号変化確率情報抽出手段において抽出された信号変化確率情報に基づいて半導体集積回路内の端子およびネットのうち抽出対象以外の端子および前記ネットの信号変化確率情報を計算する信号変化確率計算手段と、半導体集積回路内の端子およびネットの信号変化に対応した消費電力情報を保持する消費電力情報保持手段と、論理シミュレーション手段において抽出した信号変化確率情報、信号変化確率計算手段で計算した信号変化確率情報および消費電力情報とに基づいて論理ゲート毎の消費電力を計算して半導体集積回路の消費電力を計算する消費電力計算手段とを備えることを特徴とする。
【0014】
この発明によれば、信号変化確率を信号変化確率計算機能と論理シミュレーション機能とに基づいて分割して求める。すなわち、この発明においては、信号変化確率計算機能では充分な精度が得られない個所に対してのみ、論理シミュレーションによる信号変化確率情報の抽出を行なう。これにより、半導体集積回路の全ての箇所において良好な精度で信号変化確率情報を得ることが可能である。そして、これに基づいて消費電力を計算するため、高精度の消費電力計算を行うことが可能である。また、信号変化確率情報を信号変化確率計算機能と論理シミュレーション機能とに基づいて分割して求めるため、半導体集積回路の全ての箇所について論理シミュレーションを実行する必要が無く、論理シミュレーション時における処理時間および処理装置の負荷を軽減することが可能である。
【0015】
したがって、この発明によれば、論理シミュレーションによる信号変化確率情報計算機能を有する消費電力計算装置において、高い消費電力見積り精度と、論理シミュレーション時における処理時間および処理装置の負荷の軽減とが両立された消費電力計算装置を実現できる。
【0016】
【発明の実施の形態】
以下に添付図面を参照して、この発明に係る消費電力計算装置の好適な実施の形態を詳細に説明する。なお、本発明は、下記の記述に限定されるものではなく、本発明の要旨を逸脱しない範囲において適宜変更可能である。
【0017】
実施の形態1.
図1は、本実施の形態に係る消費電力計算装置を説明するブロック図である。当該図は、消費電力計算装置の構成、処理の手順、および各処理における入出力データを示している。また、本明細書においては、「セル」と「論理ゲート」とは同義である。
【0018】
当該消費電力計算装置は、計算対象となる回路のセル間の接続情報が記述されたネットリスト1、セルの名前やファンクション(動作定義)が記述されたセルライブラリ2、ネットリスト1とセルライブラリ2とを入力して消費電力計算対象となる回路の入出力端子に接続するネットを抽出する入出力端子抽出部3、電圧値が固定されたネットを抽出する固定電圧箇所抽出部4、1入力1出力セルが1セル以上直列接続する部分回路の初段にあるセルの入力側のネットを抽出する直列セル初段ネット抽出部5、順序回路セルの出力端子を抽出する順序回路セル出力端子抽出部8、組合せ回路セルのみで構成されるループ回路を認識して当該ループ回路内の任意の1ネットを抽出するループ回路ネット抽出部7、順序回路セルのクロック端子に接続するネットを入力側に向かってネット及びセルを検索しながら遡り、消費電力計算対象回路の入力端子までの全ネット及び全端子を抽出するクロックネット抽出部8、入出力端子抽出部3と固定電圧箇所抽出部4と直列セル初段ネット抽出部5と順序回路セル出力端子抽出部6とループ回路ネット抽出部7とクロックネット抽出部8で抽出された情報を蓄えておく抽出対象候補リスト9、論理シミュレーションによって信号変化確率情報を抽出する対象・非対象および優先度が記述された抽出対象リスト10、抽出対象侯補リスト9から最終的に論理シミュレーションによる信号変化確率情報の抽出対象となる箇所を決めて、抽出対象リスト10を出力する抽出対象リスト生成部11、論理シミュレーションを実行するために入力端子に印加するパターンを記述した入力パターン12、ネットリスト1とセルライブラリ2と抽出対象リスト10と入力パターン12を用いて当該回路の論理シミュレーションを行なう論理シミュレーション部13、抽出対象リスト10中の抽出対象毎の信号変化確率が記述された信号変化確率情報14、論理シミュレーション中に信号変化確率情報14を出力する信号変化確率情報出力部15、消費電力計算対象となる回路の全ネットおよび全端子の信号変化確率が記述された信号変化確率情報16、抽出対象リスト10と信号変化確率情報14とネットリスト1とセルライブラリ2を用いて抽出対象リスト10に無い対象の信号変化確率を計算して信号変化確率情報16を生成する信号変化確率計算部17、セル毎に当該セルの各端子が信号変化に応じた消費電力情報が記述された消費電力ライブラリ18、消費電力計算対象となる回路の消費電力が記述された消費電力情報19、信号変化確率情報16と消費電力ライブラリ8とネットリスト1を用いて消費電力を計算し、消費電力情報19を出力する消費電力計算部20とを備えるものである。
【0019】
ここで、信号変化確率情報とは、半導体集積回路内の端子およびネットの信号変化の確率に関する情報である。
【0020】
次に、この消費電力計算装置の動作を図面を参照しながら具体的に説明する。まず、入出力端子抽出部3にネットリスト1とセルライブラリ2とを入力すると、該入出力端子抽出部3では消費電力計算対象となる回路の入力端子および出力端子を認識して当該端子名を抽出対象として抽出対象候補リスト9に蓄える。これにより、漏れのない高精度の抽出対象のリストアップができる。
【0021】
次に、固定電圧箇所抽出部4にネットリスト1とセルライブラリ2とを入力すると、該固定電圧箇所抽出部4では電源電圧源あるいはグランドに接続されたネットあるいは端子を認識する。そして、当該ネット名および当該端子名を非抽出対象として認識し、当該ネット名および当該端子名に非抽出対象マークを付けて抽出対象候補リスト9に蓄える。また、その際に信号が全く変化しないことを示すフラグを付ける。なお、当該非抽出対象は、信号変化確率を信号変化確率計算機能で計算させた場合においても信号変化確率の計算の精度が低下する可能性はないため、当該非抽出対象を優先度の高い非抽出対象として認識し、優先度の高い非抽出対象のマークを付ける。このように、抽出対象と非抽出対象とを選択的に認識して抽出対象候補リスト9に蓄えることにより、後述する論理シミュレーションの実行対象を削減し、論理シミュレーション時の負荷を軽減することができる。
【0022】
次に、直列セル初段ネット抽出部5にネットリスト1とセルライブラリ2を入力すると、該直列セル初段ネット抽出部5では1入力1出力セルを検索して当該セルが1段以上直列接続している部分回路の初段の入力端子に接続するネットを認識する。そして、当該ネット名を抽出対象として認識して抽出対象マークを付けて抽出対象候補リスト9に蓄える。また、当該部分回路内の抽出対象以外の全てを非抽出対象として認識して非抽出対象マークを付けて抽出対象候補リスト9に蓄える。このように、抽出対象と非抽出対象とを選択的に認識して抽出対象候補リスト9に蓄えることにより、後述する論理シミュレーションの実行対象を削減し、論理シミュレーション時の負荷を軽減することができる。
【0023】
図2を用いて直列セル初段ネット抽出部5における具体的な抽出例を説明する。図2に示す回路を消費電力計算の対象となる回路とした場合、まず、当該回路中の1入力1出力セルが1段以上直列接続している部分回路を対象回路の入力端子から探索する。最初に、セルA16が見付かるため、ネットA3とネットA4とセルA16とを部分回路とし、セルA16から、その出力側に接続しているセルA17とセルA20、および当該セルの出力側に接続しているネットA5とネットA10とを当該部分回路に含め、さらに、セルA18とセルA21、およびネットA6とネットA11とを部分回路に含める。そして、当該セルの出力に1入力1出力セルが存在しないことにより、セルA16、セルA17、セルA18、セルA20、セルA21、ネットA3、ネットA4、ネットA5、ネットA6、ネットA10、ネットA11で構成される回路A0が部分回路として抽出される。
【0024】
その後、当該部分回路の初段セルであるセルA16の入力端子に接続するネットA3を抽出対象として認識して、抽出対象マークを付けて図3に示す抽出対象候補リスト9に蓄える。また、当該部分回路内における該ネットA3以外のネット、セルの入力端子および出力端子を全て非抽出対象として認識して、図3に示す非抽出対象マークを付けて抽出対象候補リスト9に蓄える。
【0025】
この時、当該部分回路に含まれない回路部分については何もマークを付けない。また、当該非抽出対象は、信号変化確率を信号変化確率計算機能で計算させた場合においても信号変化確率の計算の精度が低下する可能性はないため、優先度の高い非抽出対象として認識し、優先度の高い非抽出対象のマークを付ける。
【0026】
なお、図3において、「A」は入力端子、「Y」は出力端子を示し、「○」は抽出対象を意味する抽出対象マークであり、「×」は非抽出対象を意味する非抽出対象マークであり、「+」は優先度の高い非抽出対象を意味するマークである。
【0027】
次に、順序回路セル出力端子抽出部6にネットリスト1とセルライブラリ2とを入力すると、該順序回路セル出力端子抽出部6では順序回路セルの出力端子を認識して当該端子名を抽出対象として抽出対象侯補リスト9に蓄える。このように、抽出対象を選択的に認識して抽出対象候補リスト9に蓄えることにより、後述する論理シミュレーションの実行対象を削減し、論理シミュレーション時の負荷を軽減することができる。
【0028】
次に、ループ回路ネット抽出部7にネットリスト1とセルライブラリ2とを入力すると、組合せ回路のみでループになっている部分回路を認識する。そして、当該部分回路内のループ上にある任意のネット名を抽出対象として認識して、抽出対象マークを付けて抽出対象候補リスト9に蓄える。また、当該部分回路内における抽出対象以外の全てを非抽出対象として認識して、非抽出対象マークを付けて抽出対象候補リスト9に蓄える。このように、抽出対象と非抽出対象とを選択的に認識して抽出対象候補リスト9に蓄えることにより、後述する論理シミュレーションの実行対象を削減し、論理シミュレーション時の負荷を軽減することができる。
【0029】
図4を用いてループ回路ネット抽出部7の具体的な抽出例を説明する。図4の回路を消費電力計算の対象となる回路とした場合、まず、当該回路中の組合せ回路のみでループになっている部分回路を対象回路の入力端子から検索する。例えばネットB2から探索するとセルB12、ネットB6、セルB13、ネットB7、セルB14、ネットB8、セルB15、ネットB5、セルB16、ネットB4、セルB13の順に探索すると、組合せ回路のみでループになっている部分回路B0が抽出される。部分回路B0には、ネットB4、ネットB5、ネットB7、ネットB8と、これらのネットが接続しているセルB13、セルB14、セルB15、セル16の入力端子および出力端子が含まれる。
【0030】
その後、当該部分回路B0の任意の1ネットとして、例えば、当該部分回路内の最後に見付かったネットであるネットB4を抽出対象とした場合、抽出対象マークを付けて図5に示す抽出対象候補リスト9に蓄える。また、当該部分回路内におけるネットB4以外の全てのネットおよびビンを非抽出対象として認識して、非抽出対象マークを付けて図5に示す抽出対象候補リスト9に蓄える。
【0031】
この時、当該部分回路に含まない回路部分については何もマークを付けない。また、当該非抽出対象は、信号変化確率を信号変化確率計算機能で計算させた場合には信号変化確率の計算の精度が低下する可能性があるため、当該非抽出対象は優先度の低い非抽出対象として認識し、優先度の高い非抽出対象のマークを付ける。
【0032】
なお、図5において、「A」は入力端子、「Y」は出力端子を示し、「○」は抽出対象を意味する抽出対象マークであり、「×」は非抽出対象を意味する非抽出対象マークであり、「−」は優先度の低い非抽出対象を意味するマークである。
【0033】
次に、クロックネット抽出部8にネットリスト1とセルライブラリ2を入力すると、該クロックネット抽出部8では、全順序回路のクロック端子を起点として消費電力計算対象となる回路の入力端子に向かってネットおよびセルを探索しながら探索経路上の全てのネットおよび全ての端子を認識して当該ネット名および当該端子名を抽出対象候補リスト9に蓄える。これにより、漏れのない高精度の抽出対象のリストアップができる。
【0034】
次に、抽出対象リスト生成部11に信号変化確率情報の抽出対象の候補、および非抽出対象の候補となるネット名および端子名が全て蓄えられた抽出対象候補リスト9を入力する。該抽出対象リスト生成部11では、非抽出対象マークのみが付いている対象と、非抽出対象マークおよび優先度の高い非抽出対象マークの両方が付いている対象のみを後述する論理シミュレーションの対象でない非抽出対象として認識する。また、抽出対象となるネットと抽出対象となる端子とが近接接続している場合で、且つ、当該ネットあるいは当該端子のいずれかの信号変化確率情報が決まれば他方の信号変化確率情報が決まる場合に、必要な対象のみ、すなわち抽出対象となるネットと抽出対象となる端子とのいずれかを抽出対象として認識し、他方を非抽出対象として認識する。さらに上記の非抽出対象以外を後述する論理シミュレーションの対象である抽出対象として認識する。そして、以上により最終的に決まる全ての抽出対象を抽出対象リスト10に出力する。
【0035】
すなわち、抽出対象リスト生成部11では、信号変化確率計算機能では充分な精度が得られない個所に対してのみ、論理シミュレーションによる信号変化確率情報の対象として抽出を行なう。また、信号変化確率計算部17において信号変化確率を計算した場合においても信号変化確率の計算の精度が低下しない箇所、すなわち信号変化確率計算機能で充分な精度が得られる個所を非抽出対象とし、抽出対象を抽出対象リスト10には含めない。なお、ここで非抽出対象とされてものについては、信号変化確率計算部17において信号変化確率を計算するため、論理シミュレーション部13において論理シミュレーションが実行されない。
【0036】
次に、論理シミュレーション部13に、ネットリスト1とセルライブラリ2と抽出対象リスト10と入力パターン12とを入力する。該論理シミュレーション部13では、論理シミュレーションを実行し、抽出対象リスト10にある抽出対象で発生するシミュレーション時間に沿って信号変化回数および各信号値の取り得る期間をそれぞれ加算していく。
【0037】
また、信号変化確率情報抽出部15では、論理シミュレーション部13において加算された当該回数および当該期間から抽出対象の信号変化確率を計算して信号変化確率情報14として出力する。これにより、抽出対象に関しては、論理シミュレーションを実行することにより良好な精度で信号変化確率情報を得ることができる。
【0038】
そして、抽出対象リスト生成部11において非抽出対象とされているものについては、論理シミュレーション部13においては、論理シミュレーションが実行されないため、信号変化確率情報抽出部15において信号変化確率情報は計算されない。これらの非抽出対象とされたものについては、信号変化確率計算部17において信号変化確率を計算する。これにより、論理シミュレーション部13における論理シミュレーションの実行対象を軽減することができる。その結果、論理シミュレーション時における処理時間の削減、コンピュータのメモリ使用量の削減、信号変化確率情報を記述したファイルのサイズの縮小化が可能となる。
【0039】
次に、信号変化確率計算部17に、ネットリスト1とセルライブラリ2と信号変化確率情報14とを入力する。該信号変化確率計算部17では、抽出対象リスト10に含まれていない対象の信号変化確率を計算して信号変化確率情報16を生成する。該信号変化確率計算部17では、信号変化確率情報14に記述された信号変化確率からセル毎に当該セルの入力端子の信号変化確率を検索し、またセルライブラリ2に記述されたファンクション情報を用いて当該確率から当該セルの出力端子の信号変化確率を計算する。また、信号変化確率情報14に記述された信号変化確率から該信号変化確率情報14に記述されていない箇所のネットの信号変化確率を計算する。すなわち、信号変化確率計算部17では、信号変化確率情報14に基づいて、該信号変化確率情報14に記述されていない全ての箇所の信号変化確率情報を計算する。ここで、信号変化確率計算部17において信号変化確率情報が計算される箇所は、上述した該抽出対象リスト生成部11において非抽出対象として認識された箇所であり、信号変化確率計算部17において信号変化確率を計算した場合においても信号変化確率の計算の精度が低下しない箇所、すなわち信号変化確率計算機能で充分な精度が得られる個所である。これにより、信号変化確率計算部17では、良好な計算精度で信号変化確率情報が得られる。
【0040】
但し、当該計算を開始する前に、抽出対象リスト10に信号が全く変化しないことを示すフラグが付いた対象については、信号が全く変化しない時の信号変化確率に設定しておく。
【0041】
そして、信号変化確率情報抽出部15と信号変化確率計算部17とにおける信号変化確率の計算により消費電力計算対象となる回路の全ネットおよび全端子の信号変化確率の抽出が終了した時点で、当該回路の全ネットおよび全端子の信号変化確率を信号変化確率情報16として出力する。以上により半導体集積回路内の全ての箇所について論理シミュレーションを実行すること無く、全ての箇所について良好な精度で信号変化確率情報を得ることができる。
【0042】
最後に、消費電力計算部19にネットリスト1と信号変化確率情報16と消費電力ライブラリ18とを入力する。該消費電力計算部19では、各端子の信号変化確率情報と各セルの消費電力とを計算し、消費電力情報20を出力する。ここで、消費電力ライブラリ18には、セル毎に当該セルの各端子の信号変化に応じた消費電力情報が記述されており、該消費電力計算部19では信号変化確率情報16に記述された当該セルの各端子の信号変化確率情報と当該消費電力情報から消費電力計算対象となる回路の消費電力情報値を抽出し、消費電力情報20に出力する。
【0043】
以上のように、この消費電力計算装置では、信号変化確率の計算を論理シミュレーション部13および信号変化確率情報抽出部15と、信号変化確率計算部17とに分割して行う。すなわち、信号変化確率計算部17で充分な計算精度が得られる個所に対しては信号変化確率計算部17で信号変化確率情報を計算し、信号変化確率計算部17では充分な計算精度が得られない個所に対してのみ、論理シミュレーションによる信号変化確率情報の抽出を行なう。
【0044】
したがって、この消費電力計算装置では、半導体集積回路の全ての箇所において良好な精度で信号変化確率情報を得ることができ、これに基づいて消費電力を計算するため、高精度の消費電力計算が可能である。
【0045】
また、信号変化確率計算部17では充分な計算精度が得られない個所に対してのみ、論理シミュレーションを使用した信号変化確率情報の抽出を行なうため、論理シミュレーションの実行対象を大幅に削減することが可能であり、論理シミュレーション時における処理時間の削減、コンピュータのメモリ使用量の削減、信号変化確率情報を記述したファイルのサイズの縮小化が可能となる。
【0046】
したがって、この消費電力計算装置では、論理シミュレーションによる信号変化確率計算機能を持つ消費電力計算装置において、高い消費電力見積り精度を有するとともに論理シミュレーション時における処理時間および処理装置の負荷を軽減することができるという効果を有する。
【0047】
なお、この消費電力計算装置は、該装置に固有のライブラリ情報を必要とせずに従来と同様のライブラリをそのまま使用するだけで実現が可能である。
【0048】
実施の形態2.
つぎに、この発明の実施の形態2について説明する。
【0049】
図6は、本実施の形態に係る消費電力計算装置を説明するブロック図である。当該図は、消費電力計算装置の構成、処理の手順、および各処理における入出力データを示している。
【0050】
当該消費電力計算装置は、計算対象となる回路のセル間の接続情報が記述されたネットリスト21、セルの名前やファンクション(動作定義)が記述されたセルライブラリ22、ネットリスト21とセルライブラリ22とを入力して消費電力計算対象となる回路の入出力端子に接続するネットを抽出する入出力端子抽出部23、電圧値が固定されたネットを抽出する固定電圧箇所抽出部24、1入力1出力セルが1セル以上直列接続する部分回路の初段にあるセルの入力側のネットを抽出する直列セル初段ネット抽出部25、組合せ回路セルのみで構成されるループ回路を認識して当該ループ回路内の任意の1ネットを抽出するループ回路ネット抽出部26、順序回路セルのクロック端子に接続するネットを入力側に向かってネット及びセルを検索しながら遡り、消費電力計算対象回路の入力端子までの全ネット及び全端子を抽出するクロックネット抽出部27、入出力端子抽出部23と固定電圧箇所抽出部24と直列セル初段ネット抽出部25とループ回路ネット抽出部26とクロックネット抽出部27とで抽出された信号変化確率情報を蓄えておく抽出対象侯補リスト28、論理シミュレーションによって信号変化確率情報を抽出する対象と抽出する優先度が記述された抽出対象リスト29、抽出対象侯補リスト28を入力して抽出対象リスト29を生成する抽出対象生成部30、セル毎に当該セルの各端子の信号変化に応じた消費電力情報および本発明固有の情報である各端子の抽出対象フラグおよび出力端子に対する信号変化確率の算出式が記述された消費電力ライブラリ31、抽出対象リスト29に消費電力ライブラリ31で抽出対象に指定されている端子を付加した抽出対象リスト32、ネットリスト21とセルライブラリ22と消費電力ライブラリ31と抽出対象リスト29を入力して抽出対象リスト32を生成する抽出対象付加部33、論理シミュレーションを実行するために入力端子に印加するパターンを記述した入力パターン34、ネットリスト21とセルライブラリ22と入力パターン34を用いて当該回路の論理シミュレーションを行なう論理シミュレーション部35、抽出対象リスト32中の抽出対象毎の信号変化確率が記述された信号変化確率情報38、論理シミュレーション中に信号変化確率情報38を出力する信号変化確率情報出力部37、抽出対象リスト32と信号変化確率情報36とネットリスト21とセルライブラリ22と消費電力ライブラリ31を用いて抽出対象リスト32に無い対象の信号変化確率を計算して信号変化確率情報38を生成する信号変化確率計算部39、消費電力計算対象となる回路の消費電力が記述された消費電力情報40、信号変化確率情報19と消費電力ライブラリ31とネットリスト21を用いて消費電力を計算し、消費電力情報40を出力する消費電力計算部41とを備えるものである。
【0051】
次に、この費電力計算装置の動作を図面を参照しながら具体的に説明する。まず、入出力端子抽出部23にネットリスト21とセルライブラリ22とを入力すると、該入出力端子抽出部23では消費電力計算対象となる回路の入力端子および出力端子を認識して当該端子名を抽出対象として抽出対象候補リスト28に蓄える。これにより、漏れのない高精度の抽出対象のリストアップができる。
【0052】
次に、固定電圧箇所抽出部24にネットリスト21とセルライブラリ22とを入力すると、該固定電圧箇所抽出部24では電源電圧源あるいはグランドに接続されたネットあるいは端子を認識する。そして、当該ネット名および当該端子名を非抽出対象として認識し、当該ネット名および当該端子名に非抽出対象マークを付けて抽出対象候補リスト28に蓄える。また、その際に信号が全く変化しないことを示すフラグを付ける。なお、当該非抽出対象は、信号変化確率を信号変化確率計算機能で計算させた場合においても信号変化確率の計算の精度が低下する可能性はないため、当該非抽出対象を優先度の高い非抽出対象とし認識し、優先度の高い非抽出対象のマークを付ける。このように、抽出対象と非抽出対象とを選択的に認識して抽出対象候補リスト28に蓄えることにより、後述する論理シミュレーションの実行対象を削減し、論理シミュレーション時の負荷を軽減することができる。
【0053】
次に、直列セル初段ネット抽出部25にネットリスト21とセルライブラリ22を入力すると、該直列セル初段ネット抽出部25では1入力1出力セルを検索して当該セルが1段以上直列接続している部分回路の初段の入力端子に接続するネットを認識する。そして、当該ネット名を抽出対象として認識して抽出対象マークを付けて抽出対象候補リスト28に蓄える。また、当該部分回路内の抽出対象以外の全てを非抽出対象として認識して非抽出対象マークを付けて抽出対象候補リスト28に蓄える。このように、抽出対象を選択的に認識して抽出対象候補リスト28に蓄えることにより、後述する論理シミュレーションの実行対象を削減し、論理シミュレーション時の負荷を軽減することができる。
【0054】
なお、直列セル初段ネット抽出部25の動作は、上述した実施例1の直列セル初段ネット抽出部5の動作と同じであり、具体的な抽出例は実施例1の直列セル初段ネット抽出部5の説明と同じであるため、上記の説明を参照することとし、詳細な説明は省略する。
【0055】
また、直列セル初段ネット抽出部25において認識する非抽出対象は、信号変化確率を信号変化確率計算機能で計算させた場合においても信号変化確率の計算の精度が低下する可能性はないため、優先度の高い非抽出対象として認識し、優先度の高い非抽出対象のマークを付ける。
【0056】
次に、ループ回路ネット抽出部26にネットリスト21とセルライブラリ22とを入力すると、組合せ回路のみでループになっている部分回路を認識する。そして、当該部分回路内のループ上にある任意のネット名を抽出対象として認識して、抽出対象マークを付けて抽出対象候補リスト28に蓄える。また、当該部分回路内における抽出対象以外の全てを非抽出対象として認識して、非抽出対象マークを付けて抽出対象候補リスト28に蓄える。このように、抽出対象と非抽出対象とを選択的に認識して抽出対象候補リスト28に蓄えることにより、後述する論理シミュレーションの実行対象を削減し、論理シミュレーション時の負荷を軽減することができる。
【0057】
なお、ループ回路ネット抽出部26の動作は、上述した実施例1のループ回路ネット抽出部7と同じであり、具体的な抽出例は実施例1のループ回路ネット抽出部7の説明と同じであるため、上記の説明を参照することとし、詳細な説明は省略する。
【0058】
また、ループ回路ネット抽出部26で認識する非抽出対象は、信号変化確率を信号変化確率計算機能で計算させた場合には信号変化確率の計算の精度が低下する可能性があるため、当該非抽出対象は優先度の低い非抽出対象として認識し、優先度の高い非抽出対象のマークを付ける。
【0059】
次に、クロックネット抽出部27にネットリスト21とセルライブラリ22を入力すると、該クロックネット抽出部27では、全順序回路のクロック端子を起点として消費電力計算対象となる回路の入力端子に向かってネットおよびセルを探索しながら探索経路上の全てのネットおよび全ての端子を認識して当該ネット名および当該端子名を抽出対象候補リスト28に蓄える。これにより、漏れのない高精度の抽出対象のリストアップができる。
【0060】
次に、抽出対象リスト生成部30に信号変化確率情報の抽出対象の候補、および非抽出対象の候補となるネット名および端子名が全て蓄えられた抽出対象候補リスト28を入力する。該抽出対象リスト生成部30では、抽出対象および非抽出対象の両方の対象として蓄えられている対象のみを後述する論理シミュレーションの対象ではない非抽出対象として認識する。
【0061】
また、抽出対象となるネットと抽出対象となる端子とが近接接続している場合で、且つ、当該ネットあるいは当該端子のいずれかの信号変化確率情報が決まれば他方の信号変化確率情報が決まる場合に、必要な対象のみ、すなわち抽出対象となるネットと抽出対象となる端子とのいずれかを抽出対象として認識し、他方を非抽出対象として認識する。さらに上記の非抽出対象以外を後述する論理シミュレーションの対象である抽出対象として認識する。そして、以上により最終的に決まる全ての抽出対象を抽出対象リスト29に出力する。
【0062】
すなわち、抽出対象リスト生成部30では、信号変化確率計算機能では充分な精度が得られない個所に対してのみ、論理シミュレーションによる信号変化確率情報の対象として抽出を行なう。また、信号変化確率計算部38において信号変化確率を計算した場合においても信号変化確率の計算の精度が低下しない箇所、すなわち信号変化確率計算機能で充分な精度が得られる個所を非抽出対象とし、抽出対象を抽出対象リスト29には含めない。なお、ここで非抽出対象とされてものについては、信号変化確率計算部38において信号変化確率を計算するため、論理シミュレーション部35において論理シミュレーションが実行されない。
【0063】
次に、抽出対象付加部33に、ネットリスト21とセルライブラリ22と抽出対象リスト29と消費電力ライブラリ31とを入力する。該抽出対象付加部33では、消費電力ライブラリ31においてセル毎に抽出対象として指定されている全端子の端子名を抽出対象リスト29に付加し、抽出対象リスト32として出力する。ここで、消費電力ライブラリ31には、セル毎に信号変化確率情報の抽出が必要な端子に対して抽出対象である旨の情報が記述されている。
【0064】
例えば、図7のように消費電力ライブラリ31に当該情報が記述されている場合、セル名が「ADDER」であるセルについては、端子Aと端子Bと端子Cとは抽出対象では無いが、端子S及び端子C1は抽出対象である。そして、ネットリスト21内でセル「ADDER」の端子S及び端子C1に対応する端子名が抽出対象リスト32として出力される。
【0065】
このように、セル毎に信号変化確率情報の抽出が必要な端子として消費電力ライブラリ31において記述された情報を抽出対象リスト29に対して付加することにより、本実施の形態に係る消費電力計算装置に固有のライブラリ情報である抽出対象リスト32を作成することができ、抽出対象リスト32を用いることにより、抽出漏れのない精度の高い信号変化確率情報を得ることができる。
【0066】
次に、論理シミュレーション部35に、ネットリスト21とセルライブラリ22と抽出対象リスト32と入力パターン34とを入力する。該論理シミュレーション部35では、論理シミュレーションを実行し、抽出対象リスト32にある抽出対象で発生するシミュレーション時間に沿って信号変化回数および各信号値の取り得る期間をそれぞれ加算していく。
【0067】
そして、信号変化確率情報抽出部37では、論理シミュレーション部35において加算された当該回数および当該期間から抽出対象の信号変化確率を計算して信号変化確率情報36として出力する。これにより、抽出対象に関しては、論理シミュレーションを実行することにより良好な精度で信号変化確率情報を得ることができる。
【0068】
そして、抽出対象リスト生成部30において非抽出対象とされてものについては、論理シミュレーション部35においては論理シミュレーションが実行されないため、信号変化確率情報抽出部37において信号変化確率情報は計算されない。これらの非抽出対象とされたものについては、信号変化確率計算部39において信号変化確率を計算する。これにより、論理シミュレーション部35における論理シミュレーションの実行対象を軽減することができる。その結果、論理シミュレーション時における処理時間の削減、コンピュータのメモリ使用量の削減、信号変化確率情報を記述したファイルのサイズの縮小化が可能となる。
【0069】
次に、信号変化確率計算部39に、ネットリスト21とセルライブラリ22と消費電力ライブラリ31と抽出対象リスト32信号変化確率情報36とを入力する。該信号変化確率計算部39では、抽出対象リスト32に含まれていない対象の信号変化確率を計算して信号変化確率情報38を生成する。該信号変化確率計算部39では、まず、消費電力ライブラリ31においてセル毎に記述されている出力端子間の信号変化確率の関係式を用いて、信号変化確率情報36に含まれていない出力端子の信号変化確率から当該端子を持つセルの当該端子以外の出力端子の信号変化確率を算出する。
【0070】
ここで、消費電力ライブラリ31には、セル内の所定の出力端子の信号変化確率から他の出力端子の信号変化確率が算出できる場合は、該他の出力端子は信号変化確率情報の抽出対象では無いが、該所定の出力端子の信号変化確率情報と該他の出力端子の信号変化確率情報との相関式、すなわち該所定の出力端子からの該他の出力端子の信号変化確率の算出式がセル毎に記述されている。例えば、図8のように消費電力ライブラリ31に当該式が記述されている場合、セル「FlipFlop」については、端子QCは端子Qの反転信号と同じ信号変化情報として信号変化確率情報38に出力される。
【0071】
次に、消費電力計算対象となる回路の入力端子から出力端子に向かってセル毎に接続を辿り、当該信号変化確率と信号変化確率情報36に記述された信号変化確率とから当該セルの入力端子の信号変化確率を検索し、セルライブラリ22に記述されたファンクション情報を用いて当該確率から当該セルの出力端子の信号変化確率を計算する。
【0072】
但し、当該計算を開始する前に、抽出対象リスト32に信号が全く変化しないことを示すフラグが付いた対象については、信号が全く変化しない時の信号変化確率に設定しておく。
【0073】
そして、当該計算を消費電力計算対象となる回路の出力端子に至るまで繰り返し、当該回路の全出力端子に対して同計算が終了し、信号変化確率情報抽出部37と信号変化確率計算部39とにおける信号変化確率の計算により消費電力計算対象となる回路の全ネットおよび全端子の信号変化確率の抽出が終了した時点で、当該回路の全ネットおよび全端子の信号変化確率を信号変化確率情報38として出力する。
【0074】
上記のように、信号変化確率計算部39では、信号変化確率情報14に基づいて、該信号変化確率情報36に記述されていない全ての箇所の信号変化確率情報を計算する。ここで、信号変化確率計算部39において信号変化確率情報が計算される箇所は、上述した該抽出対象リスト生成部32において非抽出対象として認識された箇所であり、信号変化確率計算部39において信号変化確率を計算した場合においても信号変化確率の計算の精度が低下しない箇所、すなわち信号変化確率計算機能で充分な精度が得られる個所である。これにより、信号変化確率計算部39では、良好な計算精度で信号変化確率情報が得られる。
【0075】
以上により半導体集積回路内の全ての箇所について論理シミュレーションを実行すること無く、全ての箇所について良好な精度で信号変化確率情報を得ることができる。
【0076】
最後に、消費電力計算部41にネットリスト21と消費電力ライブラリ31と信号変化確率情報38とを入力する。該消費電力計算部41では、各端子の信号変化確率情報と各セルの消費電力とを計算し、消費電力情報40を出力する。
【0077】
以上のように、この消費電力計算装置では、信号変化確率の計算を論理シミュレーション部35および信号変化確率情報抽出部37と、信号変化確率計算部39とに分割して行う。すなわち、信号変化確率計算部39で充分な計算精度が得られる個所に対しては信号変化確率計算部39で信号変化確率情報を計算し、信号変化確率計算部39では充分な計算精度が得られない個所に対してのみ、論理シミュレーションによる信号変化確率情報の抽出を行なう。
【0078】
したがって、この消費電力計算装置では、半導体集積回路の全ての箇所において良好な精度で信号変化確率情報を得ることができ、これに基づいて消費電力を計算するため、高精度の消費電力計算が可能である。
【0079】
また、信号変化確率計算部39では充分な計算精度が得られない個所に対してのみ、論理シミュレーションを使用した信号変化確率情報の抽出を行なうため、論理シミュレーションの実行対象を大幅に削減することが可能であり、論理シミュレーション時における処理時間の削減、コンピュータのメモリ使用量の削減、信号変化確率情報を記述したファイルのサイズの縮小化が可能となる。
【0080】
したがって、この消費電力計算装置では、論理シミュレーションによる信号変化確率計算機能を持つ消費電力計算装置において、高い消費電力値の見積り精度を有するとともに論理シミュレーション時における処理時間および処理装置の負荷を軽減することができるという効果を有する。
【0081】
さらに、この消費電力計算装置では、セル毎に信号変化確率情報の抽出が必要な端子として消費電力ライブラリ31において記述された情報を抽出対象リスト29に対して付加することにより、本実施の形態に係る消費電力計算装置に固有のライブラリである抽出対象リスト32を作成する。そして、この抽出対象リスト32を用いることにより、抽出漏れのない精度の高い信号変化確率情報を得ることができ、上述した実施の形態1に係る消費電力計算装置に比べて本発明の効果が大幅に大きいものとされている。
【0082】
【発明の効果】
以上説明したように、この発明によれば、信号変化確率を信号変化確率計算機能と論理シミュレーション機能とに基づいて分割して求め、信号変化確率計算機能では充分な精度が得られない個所に対してのみ、論理シミュレーションによる信号変化確率情報の抽出を行なう。これにより、半導体集積回路の全ての箇所において良好な精度で信号変化確率情報を得ることができ、さらにこれに基づいて消費電力を計算するため、高精度の消費電力計算を行うことが可能である。したがって、この発明によれば、論理シミュレーションによる信号変化確率情報計算機能を有する消費電力計算装置において、高い消費電力見積り精度を有するとともに論理シミュレーション時における処理時間および処理装置の負荷が軽減された消費電力計算装置を実現できるという効果を有する。
【図面の簡単な説明】
【図1】この発明の消費電力計算装置の構成及び処理フローの一例を示す図である。
【図2】消費電力計算の対象となる回路の一例を示す回路図である。
【図3】抽出対象候補リストの一例を示す図である。
【図4】消費電力計算の対象となる回路の一例を示す回路図である。
【図5】抽出対象候補リストの一例を示す図である。
【図6】この発明の消費電力計算装置の構成及び処理フローの一例を示す図である。
【図7】消費電力ライブラリに、信号変化確率情報の抽出が必要な端子に対して抽出対象である旨の情報が記述された状態を示す図である。
【図8】消費電力ライブラリ31に、所定の出力端子からの他の出力端子の信号変化確率の算出式がセル毎に記述された状態を示す図である。
【符号の説明】
1 ネットリスト、2 セルライブラリ、3 入出力端子抽出部、4 固定電圧箇所抽出部、5 直列セル初段ネット抽出部、6 順序回路セル出力端子抽出部、7 ループ回路ネット抽出部、8 クロックネット抽出部、9 抽出対象候補リスト、10 抽出対象リスト、11 抽出対象リスト生成部、12 入力パターン、13 論理シミュレーション部、14 信号変化確率情報、15 信号変化確率情報抽出部、16 信号変化確率情報、17信号変化確率計算部、18消費電力ライブラリ、19 消費電力情報、20 消費電力計算部、 21 ネットリスト、22 セルライブラリ、23 入出力端子抽出部、24 固定電圧箇所抽出部、25 直列セル初段ネット抽出部、26 ループ回路ネット抽出部、27 クロックネット抽出部、28 抽出対象候補リスト、29 抽出対象リスト、30 抽出対象リスト生成部、31 消費電力ライブラリ、32 抽出対象リスト、33 抽出対象付加部、34 入力パターン、35 論理シミュレーション部、36 信号変化確率情報、37 信号変化確率情報抽出部、38 信号変化確率情報、39信号変化確率計算部、40 消費電力情報、41 消費電力計算部。
Claims (9)
- 複数の論理ゲートから構成される半導体集積回路の設計時に、該半導体集積回路内の端子およびネットの信号変化の確率に関する信号変化確率情報と、前記端子およびネットの信号変化に対応した消費電力情報とから前記論理ゲート毎の消費電力を計算して前記半導体集積回路の消費電力を計算する消費電力計算装置であって、
前記半導体集積回路内の端子およびネットのうち論理シミュレーションによる前記信号変化確率情報の抽出対象となる抽出対象情報を生成する抽出対象生成手段と、
前記抽出対象情報に基づいて論理シミュレーションを実行して前記抽出対象の信号変化確率情報を抽出する信号変化確率情報抽出手段と、
前記信号変化確率情報抽出手段において抽出された信号変化確率情報に基づいて前記半導体集積回路内の端子およびネットのうち前記抽出対象以外の端子およびネットの信号変化確率情報を計算する信号変化確率計算手段と、
前記半導体集積回路内の端子およびネットの信号変化に対応した消費電力情報を保持する消費電力情報保持手段と、
前記論理シミュレーション手段において抽出した信号変化確率情報、前記信号変化確率計算手段で計算した信号変化確率情報および前記消費電力情報とに基づいて前記論理ゲート毎の消費電力を計算して前記半導体集積回路の消費電力を計算する消費電力計算手段と
を備えることを特徴とする消費電力計算装置。 - 前記信号変化確率情報の抽出対象として前記半導体集積回路の入出力端子に接続するネットを抽出する手段を備えること
を特徴とする請求項1に記載の消費電力計算装置。 - 前記半導体集積回路内において電圧値が固定されたネットおよび論理ゲートの入力端子を認識し、該ネットおよび論理ゲートの入力端子を信号変化確率情報の抽出対象外である非抽出対象として抽出し、該入力端子においては信号変化が生じない旨の情報を生成する手段を備えること
を特徴とする請求項1に記載の消費電力計算装置。 - 前記半導体集積回路内における1入力1出力論理ゲートが1ゲート以上直列接続する部分回路を認識し、該部分回路においては前記信号変化確率情報の抽出対象として該部分回路の初段にある論理ゲートの入力側のネットのみを抽出する手段を備えること
を特徴とする請求項1に記載の消費電力計算装置。 - 前記半導体集積回路における順序回路論理ゲートを認識し、該順序回路論理ゲートについては前記信号変化確率情報の抽出対象として当該順序回路論理ゲートの出力端子のみを抽出する手段を備えること
を特徴とする請求項1に記載の消費電力計算装置。 - 前記半導体集積回路内における組み合わせ回路のみで構成されるループ回路を認識し、該ループ回路については前記信号変化確率情報の抽出対象として該ループ回路内の任意の1ネットを抽出する手段を備えること
を特徴とする請求項1に記載の消費電力計算装置。 - 前記抽出対象情報に前記信号変化確率情報計算手段における信号変化確率情報の計算において該信号変化確率情報の計算精度低下の原因となる論理ゲートの出力端子を前記論理シミュレーションによる信号変化確率情報の抽出対象として前記抽出対象情報に付加する手段を備えること
を特徴とする請求項1に記載の消費電力計算装置。 - 前記信号変化確率情報の抽出対象外である出力端子の信号変化確率情報が前記抽出対象である出力端子の信号変化確率情報から一意に定まる場合に、前記抽出対象外である出力端子の信号変化確率情報と前記抽出対象である出力端子の信号変化確率情報との相関式を用いて前記抽出対象外である出力端子の信号変化確率情報を計算する手段を備えること
を特徴とする請求項1に記載の消費電力計算装置。 - 前記信号変化確率情報を抽出する対象として、順序回路論理ゲートのクロック端子に接続するネットを前記半導体集積回路の入力端子まで入力側に遡る経路上の全ネット及び全端子を抽出する手段を備えること
を特徴とする請求項1に記載の消費電力計算装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003139402A JP2004341952A (ja) | 2003-05-16 | 2003-05-16 | 消費電力計算装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003139402A JP2004341952A (ja) | 2003-05-16 | 2003-05-16 | 消費電力計算装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004341952A true JP2004341952A (ja) | 2004-12-02 |
Family
ID=33528500
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003139402A Pending JP2004341952A (ja) | 2003-05-16 | 2003-05-16 | 消費電力計算装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004341952A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008234224A (ja) * | 2007-03-19 | 2008-10-02 | Fujitsu Ltd | 消費電力見積方法及びプログラム |
-
2003
- 2003-05-16 JP JP2003139402A patent/JP2004341952A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008234224A (ja) * | 2007-03-19 | 2008-10-02 | Fujitsu Ltd | 消費電力見積方法及びプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Kong | A novel net weighting algorithm for timing-driven placement | |
JP4988758B2 (ja) | マルチサイクル・クロック・ゲーティングのための方法および装置 | |
US8510694B2 (en) | Transaction level system power estimation method and system | |
Kim et al. | Pulser gating: A clock gating of pulsed-latch circuits | |
Benini et al. | Symbolic synthesis of clock-gating logic for power optimization of control-oriented synchronous networks | |
JP3182036B2 (ja) | 論理合成方法及び論理合成装置 | |
JPWO2010092825A1 (ja) | 回路解析方法 | |
US6834379B2 (en) | Timing path detailer | |
Jovanovic et al. | Binary division power models for high-level power estimation of FPGA-based DSP circuits | |
Chen et al. | Reliability-aware operation chaining in high level synthesis | |
US8756544B2 (en) | Method for inserting characteristic extractor | |
US8739094B2 (en) | Power estimation using activity information | |
JP2008299464A (ja) | 消費電力計算方法、消費電力計算プログラムおよび消費電力計算装置 | |
JP2004341952A (ja) | 消費電力計算装置 | |
JP2011242825A (ja) | 消費電力情報算出プログラム、消費電力情報算出方法、及び消費電力情報算出装置 | |
US9355207B2 (en) | Performing static timing analysis in the presence of instance-based systematic variations | |
US8176451B2 (en) | Behavioral synthesis apparatus, behavioral synthesis method, and computer readable recording medium | |
Hasan et al. | Automated formal synthesis of Wallace tree multipliers | |
JP2009271653A (ja) | 消費電力見積方法、回路設計支援装置及びプログラム | |
Reddy et al. | A novel and unified digital ic design and automation methodology with reduced NRE cost and time-to-market | |
JP2004185503A (ja) | 論理回路設計方法、論理回路設計プログラムおよび論理回路設計装置 | |
Freuer et al. | On the verification of high-order constraint compliance in IC design | |
US9348958B2 (en) | Method and apparatus for calculating yield | |
US8484008B2 (en) | Methods and systems for performing timing sign-off of an integrated circuit design | |
JP4219706B2 (ja) | システムlsi設計支援装置及び設計支援方法 |