JP3576928B2 - 動作率算出システム - Google Patents
動作率算出システム Download PDFInfo
- Publication number
- JP3576928B2 JP3576928B2 JP2000167995A JP2000167995A JP3576928B2 JP 3576928 B2 JP3576928 B2 JP 3576928B2 JP 2000167995 A JP2000167995 A JP 2000167995A JP 2000167995 A JP2000167995 A JP 2000167995A JP 3576928 B2 JP3576928 B2 JP 3576928B2
- Authority
- JP
- Japan
- Prior art keywords
- operation rate
- register
- netlist
- data
- simulation
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
- Tests Of Electronic Circuits (AREA)
Description
【発明の属する技術分野】
本発明は、CMOS−LSI等の論理回路における消費電力の算定を論理回路を構成する各レジスタとゲートの動作率から算定するに関し、特にネットリストを使用した場合の動作率の計算に多大な時間を要しているのを改善した動作率算出システムに関する。
【0002】
【従来の技術】
CMOS−LSI等の論理論理回路の消費電力を求めるためには、論理回路を構成するAND,OR,NOT等の各ゲートや各レジスタ毎の動作率(単位クロックあたりに0→1及び1→0に変化する率)を求める必要がある。これに関し、従来以下のような手法を用いていた。
(1)ネットリスト(論理論理回路をゲート間の接続情報で表現したモデル)に対し、所定周期で変化する外部入力信号の信号変化を示すパタンによって装置動作を想定したテストパタンを生成し、それを用いてシミュレーションを行い、各ゲートの動作率を算出する手法。
(2)シミュレーションにより求めるのでなく、過去の経験から妥当と思われる推測して動作率を割り振る手法。
【0003】
【発明が解決しようとする課題】
ところが、以上の手法についてそれぞれ以下のような問題があった。
(1)ネットリストを使用して動作率を算定する手法。
【0004】
この場合、正確な動作率が求められるが、装置動作を想定したテストパタンは、膨大なクロック数を要する。従って、ネットリストレベルでシミュレーションすると、膨大な時間がかかってしまう、という問題があった。
(2)過去の経験から動作率を割り振る手法。
【0005】
この場合、時間はかからないが、動作率の正確性に問題があった。
【0006】
本発明は、CMOS−LSI等の論理論理回路における消費電力を各ゲートの動作率から算定するにあたって、以上の問題点を解決する動作率算出システムである。
【0007】
【課題を解決するための手段】
本発明の第1の動作率算出システムは、論理回路の動作率の算出において、テストパタンと前記論理回路のRTLモデルとを入力し前記論理回路の有するレジスタについてレジスタ0確率データとレジスタ動作率データとの算出を行うレジスタデータ算出手段を含みRTLシミュレーションを行うRTLシミュレーション手段と、前記レジスタ0確率データと前記レジスタ動作率データとに準拠するテストパタン数列を生成するゲート動作率算出用パタン作成手段と、前記論理回路のネットリストからレジスタ部分を取り除いた編集済ネットリストを生成するネットリスト編集手段と、前記数列と前記編集済ネットリストを入力してゲート動作率データの算出を行うゲート動作率算出手段を含みネットリストシミュレーションを行うネットリストシミュレーション手段と、を備える。
【0008】
本発明の第2の動作率算出システムは、第1の発明において、前記レジスタデータ算出手段による前記レジスタ動作率データと、前記ゲート動作率算出手段によるゲート動作率データとを併合することにより前記論理回路の動作率とすることを備える。
【0009】
本発明の第3の動作率算出システムは、第1の発明において、前記RTLシミュレーション手段は、さらに、レジスタの0と1の組み合わせからなるテスト結果からテストパタン長に占める0の割合をレジスタ0確率データとして算出し、テスト結果の隣接する2つの数値において0から1へ遷移する数と1から0へ遷移する数とを合計しそれがテストパタン長に占める割合をレジスタ動作率データとして算出することを備える。
【0010】
本発明の第4の動作率算出システムは、第1の発明において、前記レジスタ0確率データと前記レジスタ動作率データとに準拠する0と1との乱数を発生させ0と1とより構成されるテストパタン数列を生成するゲート動作率算出用パタン作成手段を備える。
【0011】
本発明の第5の動作率算出システムは、第1の発明において、前記論理回路に対応するネットリストからレジスタに関する部分を取り除いた編集済ネットリストを生成するネットリスト編集手段を備える。
【0012】
本発明の第6の動作率算出システムは、第1の発明において、前記編集済ネットリストを入力しネットリストシミュレーションによってレジスタ以外のゲート動作率データを算出するネットリストシミュレーション手段を備える。
【0013】
【発明の実施の形態】
次に、本発明の第1の実施例について図面を参照して詳細に説明する。
【0014】
図1を参照すると、図1は、本発明の特徴となる手段であるRTL(Register Transfer Level)シミュレーション手段3と、論理回路からレジスタ部分を取り除いたゲートの動作率の算定を行う為のテストパタンを生成するゲート動作率算出用パタン作成手段7と、ネットリストからレジスタ部分を取り除いたネットリストを生成するネットリスト編集手段9と、ネットリストシミュレーション手段12と、を含む。
【0015】
RTLシミュレーション手段3は、通常のRTLシミュレーション機能の他に、テストデータとして投入するテストパタン1に従って生ずる各レジスタの0、1のビットの遷移状態を0確率データ、動作率データとして編集出力するレジスタデータ算出手段30を有する。
【0016】
RTLシミュレーション手段3は、動作率算出に用いるテストパタン1と動作率の算出対象の論理回路についてのRTLモデル2とを入力し、通常のシミュレーションを行う。その際、各レジスタ毎のビットの変化が判るので、レジスタデータ算出手段30を用い、論理回路中の全てのレジスタについて、レジスタ0確率データ5とレジスタ動作率データ6とを作成する。ここで、レジスタ0確率データ5とは、投入されたテストパタン1に従って0、1の値で遷移するレジスタのテスト結果において、0状態のビット数を投入されるテストパタン1のテストパタン長で割った値を0確率と称し、1状態の数をテストパタン長で割った値を1確率と称する。、2つを一緒にして0/1確率と称する。よって、0確率+1確率=1が成り立つ。
【0017】
又、レジスタ動作率データ6とは、投入されたテストパタン1に対し、レジスタにおける0→1へ遷移した数、1→0へ遷移した数を合計し、それをテストパタン長で割ったものである。
【0018】
動作率算出用パタン作成手段7は、RTLシミュレーション手段3によって作成された論理回路中のレジスタの0確率データ5とレジスタ動作率データ6とに準拠し、あるアルゴリズムに従って0又は1からなる乱数の数列を発生させる。ここで得た数列をゲート動作率算出用テストパタン10とする。そのため、ネットリスト8に基づいた動作率を算定するのに使用するテストパタン数に比べ、テストパタン数が小さいゲートの動作率算出用のテストパタンの作成ができる。経験則として概ね1000から10000パタン程度のテストパタンで良好なゲートの動作率を算定できることが判明している。
【0019】
ネットリスト編集手段9は、論理回路のネットリスト8を入力とし、論理回路中のレジスタ部分を取り除き、ゲートの動作率算出用に特化して編集した編集済ネットリスト11を作成する。
【0020】
ネットリストシミュレーション手段12は、通常のネットリストシミュレーションの他に、ゲート動作率算出手段120を有している。
【0021】
ネットリストシミュレーション手段12は、ゲート動作率算出用テストパタン10と編集済ネットリスト11を入力し通常のシミュレーションを行う。その際、各ゲート毎の変化が判るので、ゲート動作率算出手段120を用い、ゲート動作率データ14を作成する。
【0022】
RTLモデル2は、物理的なネットリスト8とは対応していない為、全てのゲートについてのゲート動作率データ14を算出する事はできない。しなしながら、レジスタについては、ネットリスト8と対応が取れている。従って、その高速性を活かし、レジスタの動作率と0確率(又は1確率)を、ネットリストシミュレーションに比べて非常に高速に算出する事が可能である。
【0023】
このようにして作成された、論理回路中の各レジスタについてのレジスタ0確率データ5とレジスタ動作率データ6とからゲート動作率算出用テストパタン生成手段7を用い、ゲート動作率算出用テストパタン10を作成する。このパタンのパタン数は、元のテストパタンのクロック数によらず、ある一定の大きさを確保すれば良い(例えば、1000テストパタン数とか10000テストパタン数とか)。
【0024】
そして、このゲート動作率算出用テストパタン10とゲートの動作率算出用にレジスタ部分を取り除いて編集されたネットリスト11を入力し、ゲート動作率算出手段120を有するネットリストシミュレーション手段12により、各ゲートのゲート動作率データ14を算出する。
【0025】
この時、従来のテストパタン数に比べて非常にパタン数が小さい為、ネットリストシミュレーションにかかる時間は非常に小さく抑えられる。又、シミュレーションによって求める為、動作率は正確である。このようにして論理回路を構成するレジスタ部分とレジスタを取り除いたゲート部分の動作率をそれぞれ求め、それを合計することで論理回路全体の動作率を求めて消費電力を算定することが可能となる。
【0026】
次に、本発明の実施例の動作について図1から図11の図面を参照して詳細に説明する。
【0027】
論理回路をRTL記述によってモデル化すると、例えば2ビットのアダー論理回路の場合、図2に示すような表現となる。この同じ内容をネットリストで表現した一例が、図3である。このように、RTL表現とネットリスト表現とを比べると、RTL表現の方が記述量が小さくて済むため、論理回路の動作のシミュレーションを行う場合、RTLシミュレーションの方がネットリストによるシミュレーションと比較すると非常に高速である。
【0028】
又、RTLモデル2では、論理回路を構成する全てのゲートの記述がなされている訳ではないが、レジスタについては、ネットリスト8の記述と1:1に対応する。そこで、RTLシミュレーション手段3を用いて、レジスタのシミュレーションによる結果のデータを算出する。レジスタ0確率(又は1確率)データ5とレジスタ動作率データ6を求めるため、テストパタン1と、RTLモデル2を入力しシミュレーションを行う。
【0029】
その結果、例えば図4のようにテストパタン番号に対して、レジスタ毎の値の情報が得られる。図4でC0,B0,C1,B1はそれぞれ1ビットからなるレジスタを意味している。この情報より、レジスタ算出手段30は、レジスタ0確率データ5とレジスタ動作率データ6をテストパタン長で割ることによって求める。ここで求めた結果を例えば、図5のように出力する(1確率は、「1マイナス0確率」によって求められる)。
【0030】
一方、図6の(a)に示すような手法でもって、与えられたレジスタの0確率と動作率を元にそれに準拠した0と1とからなる数列を作成する手法が存在する。
又、図6の(b)には、0確率(又は1確率)と動作率の取りうる値の範囲をグラフ上の斜線部分で表している。ゲート動作率算出用パタン作成手段7は、このアルゴリズム(手法)を有している。ゲート動作率算出用パタン作成手段7に対して、生成する数列の大きさを指定することができる。例えば1000個の数列とか10000個の数列とかを指定することができる。この値がネットリストシミュレーション手段12におけるテストパタン長となる。そこで、ゲートの動作率算出パタン生成手段7は、各レジスタに対し、図5に示すような0確率、動作率に準拠する数列を図7のように指定された長さ分作成する。この際、元のテストパタンのような膨大なパタン数は必要ではなく、元のパタン数によらず、ある程度のパタン数があれば良い事が知られている。このようにして、元のパタンに比べてパタン数の小さい、ゲート動作率算出用パタン10の作成ができる。
【0031】
次に、図3のネットリスト8からレジスタ部分を削除するネットリスト編集手段9によって、図8に1例として示すような編集済ネットリスト11を作成する。
【0032】
図8は、レジスタ部分を取り除いた論理回路の一部であるが、図においてC(0)、B(0)、C(1)、B(1)はそれぞれ入力ピンを表し、レジスタを取り除く前は、それぞれ図7のC0、BO、C1、B1のレジスタに相当する箇所であって、A(0)、A(1)は出力ピンである。図7のC0,B0.C1,B1の各レジスタについて生成された数列をC(0)、B(0)、C(1)、B(1)の各入力ピンから投入することになる。投入されたテストパタンに従い、各ゲート(図8でのEXOR、AND等)から出力されるシミュレーション結果を保存し、この内容を元に各ゲートの動作率の算定を実施する。
【0033】
尚、図8の回路で出力ピンにあたるA(0)、A(1)もレジスタに相当する箇所であったとすると、図示されてないA(0),A(1)の右側に存在するゲートの動作率の算定には、A(0),A(1)に対応するレジスタについての乱数列を投入することになる。
【0034】
このようにして論理回路全体についてシミュレーションを実行し、論理回路を構成する各部分回路の評価結果から論理回路全体の動作率を算出する為の情報を得ることができる。
【0035】
ゲートの動作率算出用テストパタン10と編集済ネットリスト11を用い、ネットリストシミュレーション手段12により以上のようにシミュレーションを行う。このとき、元のテストパタンに比べて非常にパタン数が小さい事、レジスタの演算をしなくて良い事により、このシミュレーション時間は、元のテストパタンを用いてネットリストシミュレーションを行う場合に比べて非常に小さな時間で行う事ができる。
【0036】
ネットリストシミュレーション手段12によってシミュレーションを行うと、図9に示すように各ゲート毎の値が観測できる。この情報より、各ゲートの動作率を容易に求める事が可能である。これをゲートの動作率算出手段120とし、求めたゲートの動作率データ14を、例えば図10のように保持する。
【0037】
最後に、図5に例示するようなレジスタについての動作率と図10に例示するようなレジスタ以外のゲートの動作率についての値を合計することで、図11のように、論理回路を構成する全素子の動作率情報を求めることができ、論理回路に必要な消費電力の算定が可能となる。
【0038】
【発明の効果】
第一の効果は、ネットリストシミュレーション時間を抑えられるので、非常に高速に動作率を求められる点である。
【0039】
第二の効果は、シミュレーションを行って求める為、正確な動作率が求められる点である。
【0040】
第三の効果は、以上からCMOS−LSI等の論理論理回路の電力消費量の高速且つ正確な算出が可能なことである。
【図面の簡単な説明】
【図1】本発明の第1の実施例の構成を示すブロック図である。
【図2】本発明の第1の実施例の詳細な構成を示すブロック図である。
【図3】本発明の第1の実施例の詳細な構成を示すブロック図である。
【図4】本発明の第1の実施例の詳細な構成を示すブロック図である。
【図5】本発明の第1の実施例の詳細な構成を示すブロック図である。
【図6】本発明の第1の実施例の詳細な構成を示すブロック図である。
【図7】本発明の第1の実施例の詳細な構成を示すブロック図である。
【図8】本発明の第1の実施例の詳細な構成を示すブロック図である。
【図9】本発明の第1の実施例の詳細な構成を示すブロック図である。
【図10】本発明の第1の実施例の詳細な構成を示すブロック図である。
【図11】本発明の第1の実施例の詳細な構成を示すブロック図である。
【符号の説明】
1 テストパタン
2 RTLモデル
3 RTLシミュレーション手段
30 レジスタデータ算出手段
5 レジスタ0確率データ
6 レジスタ動作率データ
7 ゲート動作率算出用パタン作成手段
8 ネットリスト
9 ネットリスト編集手段
10 ゲート動作率算出用テストパタン
11 編集済ネットリスト
12 ネットリストシミュレーション手段
120 ゲート動作率算出手段
14 ゲート動作率データ
Claims (6)
- 論理回路の動作率の算出において、テストパタンと前記論理回路のRTLモデルとを入力し前記論理回路の有するレジスタについてレジスタ0確率データとレジスタ動作率データとの算出を行うレジスタデータ算出手段を含みRTLシミュレーションを行うRTLシミュレーション手段と、前記レジスタ0確率データと前記レジスタ動作率データとに準拠するテストパタン数列を生成するゲート動作率算出用パタン作成手段と、前記論理回路のネットリストからレジスタ部分を取り除いた編集済ネットリストを生成するネットリスト編集手段と、前記数列と前記編集済ネットリストを入力してゲート動作率データの算出を行うゲート動作率算出手段を含みネットリストシミュレーションを行うネットリストシミュレーション手段と、を備えることを特徴とする動作率算出システム。
- 前記レジスタデータ算出手段による前記レジスタ動作率データと、前記ゲート動作率算出手段によるゲート動作率データとを併合することにより前記論理回路の動作率とすることを特徴とする請求項1記載の動作率算出システム。
- 前記RTLシミュレーション手段は、さらに、レジスタの0と1の組み合わせからなるテスト結果からテストパタン長に占める0の割合をレジスタ0確率データとして算出し、テスト結果の隣接する2つの数値において0から1へ遷移する数と1から0へ遷移する数とを合計しそれがテストパタン長に占める割合をレジスタ動作率データとして算出することを特徴とする請求項1記載の動作率算出システム。
- 前記レジスタ0確率データと前記レジスタ動作率データとに準拠する0と1との乱数を発生させ0と1とより構成されるテストパタン数列を生成するゲート動作率算出用パタン作成手段を備えることを特徴とする請求項1記載の動作率算出システム。
- 前記論理回路に対応するネットリストからレジスタに関する部分を取り除いた編集済ネットリストを生成するネットリスト編集手段を備えることを特徴とする請求項1記載の動作率算出システム。
- 前記編集済ネットリストを入力しネットリストシミュレーションによってレジスタ以外のゲート動作率データを算出するネットリストシミュレーション手段を備えることを特徴とする請求項1記載の動作率算出システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000167995A JP3576928B2 (ja) | 2000-06-05 | 2000-06-05 | 動作率算出システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000167995A JP3576928B2 (ja) | 2000-06-05 | 2000-06-05 | 動作率算出システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001350815A JP2001350815A (ja) | 2001-12-21 |
JP3576928B2 true JP3576928B2 (ja) | 2004-10-13 |
Family
ID=18671066
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000167995A Expired - Fee Related JP3576928B2 (ja) | 2000-06-05 | 2000-06-05 | 動作率算出システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3576928B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006190149A (ja) | 2005-01-07 | 2006-07-20 | Matsushita Electric Ind Co Ltd | 半導体集積回路の低消費電力設計方法 |
CN101669036B (zh) * | 2007-02-20 | 2013-05-22 | 富士通半导体股份有限公司 | Lsi试验装置、lsi试验方法 |
JP5146087B2 (ja) * | 2008-05-02 | 2013-02-20 | 富士通株式会社 | 消費電力見積方法、回路設計支援装置及びプログラム |
-
2000
- 2000-06-05 JP JP2000167995A patent/JP3576928B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2001350815A (ja) | 2001-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI484202B (zh) | 考量時間及空間相關性的統計形式活動分析 | |
US7464015B2 (en) | Method and apparatus for supporting verification, and computer product | |
US6247164B1 (en) | Configurable hardware system implementing Boolean Satisfiability and method thereof | |
CN105138769B (zh) | 一种用于可编程电路的时序模型生成方法及装置 | |
TWI307030B (en) | Automatic design apparatus, automatic design method, and automatic design program of digital circuit | |
US6442739B1 (en) | System and method for timing abstraction of digital logic circuits | |
US7818700B2 (en) | System and method for verification and generation of timing exceptions | |
JP4393450B2 (ja) | 論理回路モデル変換装置及び論理回路モデル変換プログラム | |
JP2004054756A (ja) | 消費電力見積り装置及び方法 | |
JP3576928B2 (ja) | 動作率算出システム | |
CN114186519A (zh) | 时序瓶颈探查方法、装置、终端设备及存储介质 | |
Barnett et al. | Non-clausal Redundancy Properties. | |
Erba et al. | Digital filter design through simulated evolution | |
Satyanarayana et al. | A theoretical approach to estimation of bounds on power consumption in digital multipliers | |
JP5146087B2 (ja) | 消費電力見積方法、回路設計支援装置及びプログラム | |
JP2004125891A (ja) | べき乗剰余演算器 | |
JPH11126218A (ja) | 論理シミュレーション装置 | |
JP2001209664A (ja) | 高位合成方法並びに高位合成方法の実施に使用される記録媒体 | |
Zyuban et al. | Application of STD to latch-power estimation | |
Jain et al. | RTL to GDSII Implementation of RADIX-4 Booth Multiplier using Opensource EDA tools | |
JP3037263B2 (ja) | ブールの充足可能性を実現する構成可能ハードウェアシステム及びそのための方法 | |
Lin et al. | A structure-oriented power modeling technique for macrocells | |
Mercer | Stochastic cycle period analysis in timed circuits | |
CN117540670A (zh) | 用于数字电路的全局真值表生成方法及装置 | |
JP2910661B2 (ja) | 回路分割評価方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040303 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040316 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040506 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040615 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040708 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313532 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |