JPH08249372A - 集積回路の電力評価方法 - Google Patents

集積回路の電力評価方法

Info

Publication number
JPH08249372A
JPH08249372A JP5586795A JP5586795A JPH08249372A JP H08249372 A JPH08249372 A JP H08249372A JP 5586795 A JP5586795 A JP 5586795A JP 5586795 A JP5586795 A JP 5586795A JP H08249372 A JPH08249372 A JP H08249372A
Authority
JP
Japan
Prior art keywords
probability
integrated circuit
logic
circuit
power
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.)
Granted
Application number
JP5586795A
Other languages
English (en)
Other versions
JP3213198B2 (ja
Inventor
Migaku Uchino
琢 内野
Takashi Mihashi
隆 三橋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP5586795A priority Critical patent/JP3213198B2/ja
Priority to US08/616,994 priority patent/US5847966A/en
Publication of JPH08249372A publication Critical patent/JPH08249372A/ja
Application granted granted Critical
Publication of JP3213198B2 publication Critical patent/JP3213198B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/08Probabilistic or stochastic CAD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/06Power analysis or power optimisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

(57)【要約】 【目的】 信号間相関を考慮した、高精度かつ高速な確
率計算に基づく集積回路の電力評価方法を提供すること
を目的とする。 【構成】 各論理ゲートの出力ノードの論理値が1にな
る確率(以下、信号確率と記す)、及び、各論理ゲート
の出力ノードの論理値が変化する確率(以下、スウィッ
チング確率と記す)に代表される出力ノードに付随する
確率量に対して、その確率量の厳密な値Pe と、論理ゲ
ートの入力を全て独立として計算した値Pa との差Pe
−Pa を、回路全体の入力信号に対応する当該確率量に
関して級数展開し、そのうちの有限個の項を補正項とし
て求め、前記Pa の値にその補正項を加えたものを上記
確率量の近似値として集積回路の電力評価を行う。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は集積回路の電力の評価方
法に関し、特に、集積回路内の論理回路の信号確率やス
ウィッチング確率等を用いて集積回路の電力の評価を行
う方法に関する。
【0002】
【従来の技術】集積回路、特に、CMOS集積回路内の
消費電力の原因は大別して、リーク電流による消費電
力、貫通電流による消費電力、充放電による消費電力が
挙げられる。
【0003】これらのうち、リーク電流による消費電
力、貫通電流による消費電力の2つの原因による消費電
力は充放電による消費電力に比べて無視できるほど小さ
い。従って、消費電力を見積もるときには、第一に充放
電による効果を調べることが効果的である。ここで、充
放電による消費電力とは、回路内のひと続きの配線(以
下、ネットまたはノードと呼ぶ)の電位の変化(以下、
スウィッチングと呼ぶ)により、そのノードの駆動する
容量に対して充放電が起こったときに流れる電流によっ
て消費される電力のことである。ノードZにおける充放
電による平均の消費電力Pow(Z)はおおよそ次の式
で見積もることが出来る。
【0004】
【数1】 ここでVDDは電源電圧、CZ はノードZの駆動する容
量、D(Z)はノードZにおける単位時間あたりのスウ
ィッチングの回数の平均値(以下、遷移密度と呼ぶ)で
ある。
【0005】特に、回路がクロックに同期して動作して
いる場合には式(1) は、
【数2】 と書ける。ここでfはクロック周波数、N(Z)はノー
ドZにおける1クロックあたりの平均充放電回数であ
る。式(1) により、VDD,CZ が知られている場合には
D(Z)を求めることにより、消費電力を見積もること
が出来る。従って遷移密度D(Z)を見積もることが消
費電力予測の中心課題となる。この遷移密度を見積もる
方法は、第1の方法としてシミュレーションに基づく方
法と、第2の方法として確率計算に基づく方法とがあ
る。
【0006】第1の方法では、論理回路の入力端子(以
下、プライマリー・インプットと呼ぶ)へ入力パターン
データ(以下、テストベクトルと呼ぶ)を入力し、回路
内の各ノードにおけるスウィッチングの回数を計測する
ことによって遷移密度を見積もる。この方法では流すテ
ストベクトルの長さが長いほど精度が上がるがそのため
に費やす時間はそれだけ大きくなる。
【0007】第2の方法では、実際にテストベクトルを
流さずに、各プライマリー・インプットの遷移密度に関
する情報のみを与え、確率計算により遷移密度の内部ノ
ードへの伝播を見積もる。即ち、回路全体の入力(以後
これをプライマリー・インプットと呼ぶ)に関する確率
量、例えば信号の論理値が1になる信号確率や信号の論
理値が変化する確率であるスウィッチング確率を入力と
してその内部ノードへの伝播を調べ、各ノードでのスウ
ィッチング確率Pswを計算し、 Pow=PSWPow(/switch) (3) という式に従って消費電力Powerを求める方法であ
る。ただし、PSWは信号の論理値が変化する確率(スウ
ィッチング確率、または動作確率ともいう)であり、P
ow(/switch)は1回の信号の変化に伴う消費電力であ
る。この方法は原理的にはテストベクトルを必要とせ
ず、実行時間は比較的短いが、信号の再収斂、順序回
路、及び内部浮遊ノードを取り扱うのに問題がある。
【0008】信号の再収斂とは、あるノードがいくつか
の論理ゲートの入力ノードとなっており、それらの論理
ゲートの出力を次々に辿っていくとある同一の論理ゲー
トの入力となっていることをいう。このときにはその論
理ゲートの入力のうち相異なる二つの入力ノードで同一
のプライマリー・インプットに依存するものが存在する
ことになる。一般に、相異なる二つのノードA,Bの依
存するプライマリー・インプットの集合が空でない共通
部分をもつならば、A,B間には信号間相関がある、或
いは簡単に、A,B間には相関がある、という。従っ
て、ある論理ゲートの入力ノードの中に信号間相関のあ
る二つのノードが存在するならば、信号の再収斂が起き
ていることになる。このようなことが起きている場合に
あるゲートの出力ノードの厳密な遷移密度を計算するた
めには、同一のノードから発した信号が異なる2つ以上
の経路を通ってそのゲートにたどり着いたかどうかを調
べなくてはならず、もしそうなっている場合には計算複
雑度が指数関数的に増大するために現実的な時間内で計
算を実行することは一般に不可能となる。
【0009】順序回路では、あるゲートの出力がめぐり
めぐって同じゲートに入る場合が起こり、そのようなル
ープ上のノードにおける遷移密度は自分自身に依存する
ことになり、入力から出力への遷移密度の伝播という概
念ではとらえきれなくなり、遷移密度計算が困難にな
る。
【0010】内部浮遊ノードはハイ・インピーダンス状
態などの不確定論理値をもたらし、やはり遷移密度計算
を困難にする。
【0011】このうち原理的に最も重要であるのが信号
の再収斂の問題である。これを厳密に解こうとすると指
数関数的な計算時間を必要とすることが知られており、
現実には実行不可能である。そのために近似的な方法に
頼るしかないが、そのような方法として現在までに次の
ようなアルゴリズムが提案されている。
【0012】(i)COP (ii)DWAA(Dynamic Weighted Averaging Algorit
hm) (iii)CCM(Correlation Coefficient Method) 第1の方法であるCOPとは各ゲートの入力を全て独立
とみなす方法である。従って信号間相関は全く無視して
しまうことになり、上記の方法中、精度的には最悪であ
るが実行時間は最も小さい。
【0013】第2の方法であるDWAAとは信号間相関
を起こしている各ノードの論理値を0,1に固定してC
OPを適用する方法であり、信号間相関の第一次の効果
を考慮に入れている。この方法はS.Ercolani, M.Favall
i, M.Damiani, P.Olivo, B.Ricco,“Estimate of Sign
al Probability in Combinational Logic Networks”,
European Test Conf.,pp.132-138,1989.(以下、この論
文をEFDORと呼んで参照する)で紹介され、COP
よりも精度がよい。
【0014】第3の方法であるCCMはDWAAと同じ
論文EFDORで初めて紹介され、R.Marculescu, D.Ma
rculescu, M.Pedram,“Switching Activity Analysis
Considering Spatiotemporal Correlations ”Internat
ional Conference on CAD-94,pp.294-299,1994.(以
下、この論文をMMPと呼んで参照する)で確立された
方法であり、上に述べた方法の中で最も精度が高い。こ
の方法は、ノード間の信号間相関の度合いを相関係数と
いう量で表し、3つ以上のノード間の相関係数を2つの
ノード間の相関係数の積で近似することにより、計算を
行っている。CCMはCOPやDWAAよりも精度が良
いが多少時間がかかるのが難点である。しかし精度が良
いといってもまだ不十分であり、論文MMPでは回路分
割をしてCCMとBDDを組み合わせることにより精度
を向上させることを提案している。しかし、そのときの
計算複雑度はかなり大きなものになり、シミュレーショ
ンを実行した方が効率が良い場合があることが予想され
る。これでは確率計算に基づく方法の長所が全く失われ
てしまう恐れがある。
【0015】また、確率に基づく方法は精度の入力デー
タ依存性が強く、遅延時間についても考慮されていな
い。しかし時間的に離れた信号は独立とみなせる(F.N.
Najm,“Improved Estimation of the Switching Activ
ity for Reliability Prediction in VLSI Circuits
”,Custom Integrated Circuits Conf., pp.429-432,
1994.) ので遅延時間差が大きい信号間の相関を無視で
きる場合がある。しかしこの論文には信号間相関を無視
できるような時間的距離が提示されていない。
【0016】ところで、実際のLSIの動作を解析する
には平均電力だけでなく瞬時電力も知る必要がある。た
とえば電源電圧変動に起因するノイズの問題を解析する
には瞬時電力または瞬時電流が必要となる。しかし、時
間のかかるシミュレーションを用いた手法はあるもの
の、シミュレーションを用いない瞬時電力の計算法はま
だ具体的に開発されていない。Najm等による“Probabil
istic simulation for reliability analysis of CMOS
VLSI circuits.”IEEE Trans.CAD 9(4),pp.439-450,Ap
ril,1990、やR.Burch による“Pattern-Independent Cu
rrent Estimationfor Reliability Analysis of CMOS C
ircuits”,pp.294-299,25th DA Conf.,1988.などがあ
るが、確率波形という概念を用いて計算している。しか
し実際のLSIの設計においては、CPUならばプログ
ラム、信号処理用のLSIならば入力データと言うよう
に具体的な入力パターンによる電流や瞬時電力の変化を
知る必要がある。特に、電源系のノイズなどを考える場
合は電源系の短時間の振る舞いが分からなければならな
い。従来提案されている手法はこれらの目的には不十分
なものであった。
【0017】
【発明が解決しようとする課題】以上のように、シミュ
レーションに基づく方法は、テストベクトルを多く入力
すれば精度は向上するが大量の時間を要する。その一
方、確率計算に基づく方法は比較的短時間で実行可能で
あるが、精度的に問題があり、この精度の入力データに
依存するため、誤差を規定することが難しいという問題
点があった。
【0018】本発明は、上記問題点を解決するためにな
されたものであり、その目的とするところは、高精度か
つ短時間で効率よく実行できる集積回路の電力評価方法
を提供する事にある。
【0019】
【課題を解決するための手段】上記目的を達成するた
め、第1の発明の第1の構成は、複数の論理ゲートを接
続して構成される論理回路を備える集積回路の電力の評
価を行う方法において、各論理ゲートの出力ノードの論
理値が1になる確率(以下、信号確率と記す)、及び、
各論理ゲートの出力ノードの論理値が変化する確率(以
下、スウィッチング確率と記す)に代表される出力ノー
ドに付随する確率量に対して、その確率量の厳密な値P
e と、論理ゲートの入力を全て独立として計算した値P
a との差Pe −Pa を、回路全体の入力信号に対応する
当該確率量に関して級数展開し、そのうちの有限個の項
を補正項として求め、前記Pa の値にその補正項を加え
たものを上記確率量の近似値として集積回路の電力評価
を行うことを特徴とする。
【0020】また、第1の発明の第2の構成は、複数の
論理ゲートを接続して構成される論理回路を備える集積
回路の電力の評価を行う方法において、前記論理回路を
複数の論理ゲートから構成される論理モジュールの集合
に分割し、前記各論理モジュールに属する各ノードの論
理値をその論理モジュールの入力信号の論理関数として
表し、信号確率やスウィッチング確率に代表されるその
ノードに付随する確率量に対して、その確率量の厳密な
値Pe と、論理モジュールの入力を全て独立として計算
した値Pa との差Pe −Pa を、回路全体の入力信号に
対応する当該確率量に関して級数展開し、そのうちの有
限個の項を補正項として求め、前記Paの値にその補正
項を加えたものを上記確率量の近似値として集積回路の
電力評価を行うことを特徴とする。
【0021】ここで、前記論理回路の任意のノードのス
ウィッチング確率に、そのノードの駆動容量と電源電圧
の2乗とクロック周波数を乗じた値を、そのノードの充
放電による消費電力として集積回路の電力評価を行うこ
とが好ましい。
【0022】また、前記論理回路の任意のゲートの任意
の入力遷移パターンの起こる確率に、その入力遷移パタ
ーンが起こった場合の1遷移あたりの消費電力を乗じた
値を、そのゲートにおける当該入力遷移による平均消費
電力として集積回路の電力評価を行うことが好ましい。
【0023】また、第2の発明の第1の構成は、集積回
路の動作確率を計算することにより、前記集積回路の電
力を評価する方法において、前記集積回路内のゲートの
入力となっている複数の信号間の最小遅延時間差を決定
し、この決定された最小遅延時間差によりゲート入力を
グループ分けし、このグループ分けされた各々のグルー
プに対する相関を考慮した確率計算を行い、この確率計
算されたゲート入力に関する確率を用いて、そのゲート
の出力に関する確率を計算することを特徴とする。
【0024】また、第2の発明の第2の構成は、集積回
路の動作確率を計算することにより、前記集積回路の電
力を評価する方法において、2つ以上のノードが同一の
信号に依存している場合に、この信号の確率に関するMa
rkov性を仮定して、前記信号からそれらのノードに到達
するまでの最小遅延時間差が十分に大きい場合に、規定
された最大許容誤差内でそれらのノード間の前記信号に
関する相関を無視することを特徴とする。
【0025】また、第2の発明の第3の構成は、集積回
路の動作確率を計算することにより、前記集積回路の電
力を評価する方法において、2つ以上のノードが同一の
信号Xに依存している場合に、信号Xの論理値に関する
確率が、規定された最大許容誤差をError、
【外2】 の条件を満たす場合に、規定された最大許容誤差内でそ
れらのノード間の信号Xに関する相関を無視することを
特徴とする。
【0026】また、第3の発明の第1の構成は、集積回
路の消費電力を予測してその評価を行う方法において、
一次入力端子に時系列的に与えられる入力パターンの集
合を時間的区間で分割するステップと、各時間区間ごと
の一次入力端子に与えられるパターンの統計・確率的特
性を計算するステップと、各時間区間の消費電力を当該
統計・確率特性より算出するステップと、各時間区間の
算出された消費電力を時系列的に配列するステップと、
を行うことを特徴とする。
【0027】また、第3の発明の第2の構成は、論理回
路の入力端子に統計・確率量を与え、当該確率量の伝搬
を評価することにより集積回路の電力を評価する方法に
おいて、対象回路の入力端子に与えられる入力信号また
は入力信号特性を用いて電力評価を行う前に、当該集積
回路の回路構造または回路動作の記述を入力し、電力予
測に必要とする評価式またはデータ構造に変換して記憶
装置に格納し、該評価式またはデータ構造を電力予測に
複数回利用する事を特徴とする。
【0028】また、第3の発明の第3の構成は、集積回
路の電力評価方法において、評価の単位となる集積回路
の部分回路を着目した回路系統ごとに分類し、所望の部
分回路の集合に対して消費電力および電源電流を出力で
きる事を特徴とする。
【0029】
【作用】第1の発明の構成によれば、各ゲートの入力を
独立とみなして計算された確率量を補正することによ
り、高精度、かつ高速に、組み合わせ論理回路の各ノー
ドに対する信号確率、スウィッチング確率の計算が実行
できる。さらに回路分割を行い、BDDを使用すること
により、精度を高めることも可能である。
【0030】第2の発明の構成によれば、遅延時間差お
よび入力の確率値を考慮して規定された最大許容誤差内
で信号間相関を無視することにより論理回路の動作確率
の計算を軽減できる。
【0031】更に、第3の発明の構成によれば、回路シ
ミュレータや論理シミュレータを用い長時間の計算をす
る事なく論理回路内部での時々刻々変化する電力を知る
事ができる。さらに第3の発明により電力計算に必要な
時間がシミュレータ方式と比較して大きく節約可能とな
る。また時間区間の精細度を調整する事によって所望の
精度で電力の変化を調べる事ができる。また、各時間区
間ごとに繰り返し計算するべき処理を一度にまとめて処
理できるため計算効率向上が図れる。更に、設計者は任
意の部分回路の消費電力を評価・比較する事が可能とな
る。
【0032】
【実施例】以下に本発明に係る集積回路の電力評価方法
の実施例を図面を参照しながら説明する。
【0033】第1実施例 以下、第1の発明に関する実施例について説明する。こ
こでは、まず本発明を理解するために必要な諸定義につ
いて述べてから実施例について述べることにする。第1
実施例では本発明を信号確率に適用した場合について述
べ、第2実施例では本発明をスウィッチング確率に適用
した場合について述べる。また、第3実施例では第1実
施例,第2実施例の方法によるノード、およびゲートの
消費電力見積方法を示し、第4実施例では第3実施例の
見積方法を利用した論理回路最適化の例を示す。
【0034】以下でいう論理回路とは、順序回路を含ま
ない組み合わせ論理回路のことをいう。この論理回路の
プライマリー・インプットの個数をnとし、それらをx
1 ,…,xn と記述する。プライマリー・インプットx
i (i=1,…,n)の時刻tにおける論理値をx
i (t)と書く。時刻に対する依存性を無視してxi
書くこともある。従ってxi という記号はプライマリー
・インプットの名前とその論理値の両方に用いられる
が、その区別は重要ではない場合が多いので混乱はな
い。一般に論理回路の任意のノードはプライマリー・イ
ンプットx1 ,…,xnの論理関数となるがそれらにつ
いても同様である。すなわち、ノードZに対してZとい
う記号はそのノードの名前と時刻を無視した論理値の双
方の意味を持つ。以下では断り無しに論理関数といえば
プライマリー・インプットx1 ,…,xnの論理関数の
ことをいう。
【0035】論理回路とプライマリー・インプットに対
して次の3つの事柄を仮定する。
【0036】(1)確率の時間並進不変性 (2)プライマリー・インプットの相互独立性 (3)遅延時間0
【0037】仮定(1)は、
【数3】 が任意の時刻t、tij(j=1,…,ni ;i=1,
…,n)、およびαij=0,1(j=1,…,ni ;i
=1,…,n)に対して成り立つことを意味する。
【外3】 の論理関数Xに対してXが論理値1を持つ確率をP
(X)と記述し、これを論理関数Xに対する確率と呼ぶ
ことにする。この仮定により特に一つの時刻にのみ依存
する任意の論理関数X(t)に対してP(X(t))は時
刻tに依存しないことがいえる。よってP(X(t))を
P(X)と書くことにする。また、二つ以上の時刻に依
存する論理関数に対する確率は時刻の差のみに依存する
ことがいえる。
【0038】仮定(2)は、
【数4】 が任意の時刻tij(j=1,…,ni ;i=1,…,
n)、およびαij=0,1(j=1,…,ni ;i=
1,…,n)に対して成り立つことを意味する。ただ
し、同一のプライマリー・インプットの時間に関する独
立性は仮定されていないので、例えば時刻t1 ,t2
対してP(x1 (t1 )x1 (t2 ))とは一般に異な
る。
【0039】仮定(3)は、論理回路の内部ノードのあ
る時刻での論理値は、同じ時刻でのプライマリー・イン
プットの論理値によって定まることを意味する。すなわ
ち、回路中の任意のノードZの時刻tでの論理値はただ
一つの時間にのみ依存し、Z(t)と書くことができ
る。従って任意のノードZに対する時刻tでの確率はP
(Z)と書ける。これをノードZの信号確率と呼ぶ。
【0040】回路中のノードのようにただ一つの時刻の
み依存する任意の論理関数X(t)を積和形式で表すと
【数5】
【外4】 理値をとる。式(39)と次に述べる定理は以下の文章でた
びたび参照されることになる。
【0041】定理0.1 X(t),Y(t)をただ1つの時刻のみに依存するプ
ライマリー・インプットの任意の論理関数とすると任意
のt1 ,t2 に対して
【数6】 P(X(t1 )Y(t2 ))=P(X(t2 )Y(t1 )) (7) が成り立つ。
【0042】(証明)X,Yを積和形式に展開して式(3
9)の形で表すと、この定理は任意のi(i=1,…,
n)に対して
【数7】 が成り立ち、P(xi (t))が時刻tに依存しないこと
を用いると、
【数8】 が成り立つ。
(証明終) xi を任意のプライマリー・インプット、Xを任意の論
理関数とすると
【数9】 式(46)をプライマリー・インプットxi に関するXのSh
annon 展開という。また
【外5】 ぶ。ここで、Xに対する上付きの添え字0,1は論理的
な否定や肯定を意味するものではないことに注意された
い。例えばプライマリー・インプットxi に対し
【外6】 うに同じ記号を使うのはまぎらわしいが、今の場合Xi
という量が定義されていないので間違いを犯すことは少
ない。以下の文においてもこの記号の意味の判断に迷う
ことは希であろう。
【0043】次にスウィッチング確率の定義とその遷移
密度との関係について述べる。
【0044】τをその時間内で高々一回しかスウィッチ
ングの起こらないような時間間隔と
【外7】 チング確率PSW(Z;τ)を時間が間に論理値の変化す
る確率として定義する。従って
【数10】 と書くことが出来る。
【0045】スウィッチング確率は時間τの間に起こる
スウィッチングの回数の平均値であり遷移密度と次のよ
うな関係にある。
【0046】
【数11】 なお、以上の記述では論理回路として暗にCMOS論理
回路を想定しているため、スウィッチング確率に注目し
ているが、ダイナミック回路やレシオ型の回路において
は信号確率によって消費電力を見積もることができる。
【0047】次に、本発明(以下、BAMと呼ぶ)によ
る信号確率の計算方法を示す。
【0048】(1)まず最初にZが2入力ANDゲート
の出力ノードである場合について説明する。このゲート
の入力ノードをA,Bとすると、明らかに Z=AB (19) の関係がある。式(6) をA,Bに対して適用すると
【数12】 となる。式(20)は2入力ANDゲートの出力の信号確率
を表す厳密な式であるが、それを直接計算することは既
に述べたようにNP困難である。従って厳密に計算する
ことはあきらめて、何らかの近似をする必要がある。最
も簡単な近似法は論理ゲートの入力を全て独立とみなし
てしまうCOPであるが、実験してみるとわかるように
COPによる近似はあまり精度が良くない。従って、も
う一段高い精度を得ることのできる近似方法が必要にな
る。そのために厳密な信号確率P(AB)とそのCOP
による近似P(A)P(B)との違いを調べる。A,B
を式(6) のように積和形式で表し、P(A),P(B)
を計算して積をとると
【数13】 と定めると
【数14】 P(AB)=F(χ),P(A)P(B)=F(η) (24) となる。従ってP(AB)とP(A)P(B)の差は
【数15】 P(AB)−P(A)P(B)=F(χ)−F(η) (25) と表すことができる。この式をTaylor展開し、その第一
次までの項をとると、
【数16】 となる。この式の右辺をもっと簡単な式で表すために、
F(η)=P(A)P(B)の右辺のA,Bをxi に関
してShannon 展開すると
【数17】 となる。この式によればP(Z)の近似値を計算するた
めにはゲート入力A,B
【外8】
【数18】 となり、P(Z)を計算したのと同様にTaylor展開する
ことで計算できる。しか
【外9】 0次の項までとることになり、
【数19】 式(31),(35)が2入力ANDゲートに対するBAMの基
本式である。
【0049】以下では式(31)および、式(35)の右辺をそ
れぞれP(A)*P(B),P(A
【外10】
【数20】 このように各ノードに対して、そのノードの信号確率
(P(A))と、そのノードの各プライマリー・インプッ
トに関するShannon 展開の係数(cofactor)に対す
【外11】 してゆくのがBAMの特徴である。
【0050】(2)BAMとCOPの異なる点は式(35)
の計算を行わなければならないことと、式(31)の右辺第
2項が存在することである。式(31)の右辺第1項は注目
する論理ゲートにCOPを適用して計算されたものに他
ならないので、式(31)の右辺第2項はそれに対する補正
項とみなされる。ここではこの補正項の意味について述
べる。この補正項の意味を一言で述べるとブール代数と
実数体の演算規則の違いに対する補正であるといえる。
それを説明するために簡単な例を挙げて説明する。
【0051】図2のような論理回路では A=x1 2 ,B=x2 3 (38) となっているのでZの厳密な信号確率Pext (Z)は
【数21】 Pext (Z)=P(AB) =P((x1 2 )(x2 3 )) =P(x1 )P(x2 )P(x3 ) (39) である。一方、COPによる近似値Pcop (Z)は
【数22】 Pcop (Z)=P(A)P(B) =(P(x1 )P(x2 ))(P(x2 )P(x3 )) =P(x1 )P(x2 2 P(x3 ) (40) となっている。Pext (Z)とPcop (Z)の違いは式
(72)と式(73)の3行目から4行目へ移行するときのブー
ル代数で成り立つ関係 x2 2 =x2 (41) と実数体で成り立つ関係 P(x2 )P(x2 )=P(x2 2 (42)
【外12】 (x1 )P(x3 )であるから、BAMによるZの信号
確率の近似値Pbam (Z)は
【数23】 となり、厳密な値Pext (Z)に一致する。この補正項
を書き直せば
【数24】 であり、先に述べたx2 に関するブール代数の演算と実
数の演算との差が現れる。つまり、この補正項はPcop
(Z)の中に現れるP(x2 2 をPext (Z)の中の
P(x2 )に引き戻す役割を演じているのである。
【0052】ここに挙げた論理回路ではBAMによる補
正が厳密な値を与えたが、一般の論理回路では必ずしも
そうなってはいない。たとえばP(x1 2 P(x2
2 という項がCOPで計算された信号確率の中に現れた
場合、COPを補正して厳密な信号確率を得るためには
P(x1 2 とP(x2 2 とを同時にそれぞれP(x
1 ),P(x2 )に引き戻さねばならないが、BAMで
は各プライマリー・インプットに対して一度ずつしかこ
の引き戻しを実行しない。つまり、この場合のBAMに
よる補正項は
【数25】 となり、これは一般には
【数26】 P(x1 )P(x2 )−P(x1 2 P(x2 2 (46) とは異なる。もし、この引き戻しも行いたいと思うなら
ば式(26)でTaylor展開のより高次の項を考慮しなければ
ならない。しかし、容易に分かるようにk次までのテー
ラー展開をとった場合には信号確率の計算にnk G(G
はゲート数)のオーダーの計算時間を要することにな
り、プライマリー・インプットの数nが大きくなるにつ
れ、これはたとえばk=2の場合ですら加速度的に増大
する。従って現実的な計算時間としては上に述べたk=
1の場合が適当なのである。
【0053】(3)次にZがインバーターの出力ノード
である場合について説明する。インバーターの入力ノー
ドをAとすると
【数27】 となる。
【0054】全ての論理回路は2入力ANDゲートとイ
ンバーターで展開できるので式(31),(35),(48),(51)
により、BAMによる計算を任意の論理回路に適用する
ことができる。
【0055】(4)ここでBAMによる誤差を評価す
る。
【0056】
【外13】 べたように
【数28】 となる。ただし、等号はP(xi )=0.5のときに成
り立つ。従って、式(31)の誤差は0.252 =0.06
25程度である。同様に、式(35)の誤差は0.25程度
である。しかし、これは入力A,Bの信号確率P
(A),P(B)および
【外14】 が厳密な値をもつ場合である。一般にはA,Bは他の論
理ゲートの出力ノードとなっているのでそれらの信号確
率、cofactorに対する確率は誤差をもつ。ここで任意の
ノードにおける誤差が信号確率に対して0.0625、
cofactorに対して0.25の程度であることを証明す
る。
【0057】それを証明するには任意の論理ゲートの入
力ノードがそのような誤差をもつと仮定してその出力ノ
ードが同様の誤差をもつことを証明すればよい(帰納
法)。注目する論理ゲートがインバーターである場合に
は、入力と出力の誤差の大きさが同じであることは明か
であるから、2入力ANDゲートの場合を証明すればよ
い。式(31)の右辺第1項の誤差は仮定により0.062
5の程度である。右辺第
【外15】 もつA,Bのcofactorに対する確率に掛けられているの
で右辺第2項全体としては0.25×0.25=0.0
625の程度の誤差をもつ。従ってP(Z)は0.06
25の程度の誤差をもつ。一方、式(35)が0.25の程
度の誤差をもつことは明かである。以上から2入力AN
Dゲートの出力ノードZの信号確率は0.0625の程
度の誤差をもち、cofactorに対する確率は0.25の程
度の誤差をもつことがいえた。従って帰納法により、す
べてのノードの信号確率は0.0625の程度の誤差を
もち、cofactorに対する確率は0.25の程度の誤差を
もつことが証明された。
【0058】この証明は誤差の程度に関する評価であ
り、実際には誤差の蓄積が起こり、論理回路によっては
上で予測された誤差を大きく上回る場合があることに注
意しなければならない。
【0059】(5)以上ではZが2入力ANDゲートか
インバーターの場合について述べたが、ここでは一般の
論理ゲートに対するBAMの適用法を説明する。
【0060】Zが2入力ANDゲートやインバーターと
は限らない一般の論理ゲートの出力ノードであるとし、
そのゲートの入力をA1 ,…,Am とする。このときZ
はA1 ,…,Am の論理関数であると同時にAa (a=
1,…,m)を通じてプライマリー・インプットの論理
関数でもある。関数記号で書くとこのことは
【数29】 Z=Z(A1 ,…,Am ) =Z(A1 (x1 ,…,xn ),…,Am (x1 ,…,xn )) (54) を意味する。Zをゲート入力に関する積和形式で表すと
【数30】 が成り立つ。A1 ,…,Am の間に信号間相関がある場
合があるので一般には
【数31】 を得る。演算‘*’は結合律を満たさないので、この式
はAa (a=1,…,m)の番号付けに依存することに
なるが、このことについては後に述べることにして、と
りあえずこの番号付けによる違いは無視することにす
る。以上の計算を実際に行うには次のようにShannon 展
開を用いればよい。Zの依存するゲート入力の一つをA
a とすると、
【数32】
【外16】 annon 展開の係数(cofactor)である。これをZのプラ
イマリー・インプットに関するShannon 展開の係数と混
同しないようにしなければならない。そのような混乱を
避けるため、ゲート入力に関するShannon 展開の係数に
関しては上付きの添え字としてμ,υ,…を用い、下付
きの添え字としてa,b,…を用いることにする。それ
に対してプライマリー・インプットに関するShannon 展
開の係数に関してはこれまで通り、上付きの添え字とし
てα,β,…を用い、下付きの添え字としてi,j,…
を用いることにする。さて、式(60)によると
【数33】
【外17】 ・インプットに対して定義されていた記号を流用してい
るので混同しないように注意しなければならない。さ
て、式(61)の右辺をBAMによって近似すると
【数34】 となる。この式をより詳しく書くと次の補題の式(63)で
X=Zとしたものになる。
【0061】補題0.1 Xが論理関数A1 ,…,Am の論理関数であるとき、任
意のa=1,…,mに対するBAMによる近似式は
【数35】
【外18】 non 展開の係数(cofactor)であるとする。
【0062】(証明)式(63)に関しては既に述べたので
式(30)を証明する。
【0063】
【数36】 により定義されているが、この式を、XをAa について
Shannon 展開したのちに
【数37】 というBAMによる近似をすればよい。
【0064】この補題を再帰的に使用することによりノ
ードZの信号確率P(Z)、cofact
【外19】 補題0.2
【数38】
【外20】 2番目の等式を証明するには
【数39】 が成り立つことを用いればよい。
【0065】この補題により、式(63)は
【数40】 と書くことが出来る。
【0066】(6)ここでは‘*’演算の結合律の破れ
を評価する。そのためにはP(A)*(P(B)*P)
C))−(P(A)*P(B))*P(C)を調べればよ
い。
【0067】
【数41】 という結果を得る。ただし、δi (A),δi (C)は
それぞれA,Cに対するShannon 展開の誤差であり、例
えばAに関しては
【数42】 と定義されている。Cについても同様である。よってδ
i (A),δi (C)が小さければ結合律が近似的に成
り立つことになる。
【0068】(7)以上述べた方法(BAM)によって
回路内の任意のノードの信号確率を計算するアルゴリズ
ムBAM SIGNAL()を示す。
【0069】まず最初に、論理回路中の全ての論理ゲー
トをスタックSTACK Gに積んでおく。このとき任
意の論理ゲートGに対し、その入力ノードを出力とする
ような論理ゲートはSTACK Gの中で必ずGよりも
上に積まれているものとする。
【0070】 procedure BAM SIGNAL(): begin while STACK Gが空でない do Gの出力をZとし、それをGの入力の論理関数として表す; サイズ2n+1の配列Pを用意する; BAMs (Z,P);
【外21】 する; end ここでBAMs ()というアルゴリズムは次のように与
えられている。
【0071】 procedure BAMs (X,P): begin if Xが恒偽関数 then Pの全ての要素の値に0を代入; return; if Xが恒真関数 then Pの全ての要素の値に1を代入; return; Xの依存するゲート入力の一つをAa とする;
【外22】 0,1)の値をPに代入する; comment このときBAMs ()を再帰的に呼び出す; return; end 上のアルゴリズムによると論理ゲートの出力と入力の間
の論理関係が与えられていれば計算を実行できることが
分かる。従っていくつかの論理ゲートの集合(以下、こ
れを論理モジュール)を考え、回路を論理モジュールに
分割すれば計算精度が上がることが期待される。なぜな
ら論理モジュールの出力と入力の間の論理関係を与える
ことにより、論理モジュール内の信号間相関は既に考慮
されていることになるからである。このように論理回路
を仮想的な論理モジュールに分割して計算する場合、上
記アルゴリズムを次のように変更すればよい。
【0072】BAM SIGNAL()の3行目を“G
の出力をZとし、ZをGの属する論理モジュールの入力
の論理関数として表す;”に変更し、BAMs ()の5
行目を“Xの依存する論理モジュールの入力の一つをA
a とする;”に変更する。
【0073】図1はBAMs (X,P)を表すフローの
図である。
【0074】(8)ここでは例として図2の回路にCO
P,CCM,BAMを適用した場合について述べる。
【0075】図2の回路のプライマリー・インプットx
1 ,x2 ,x3 にそれぞれ0.1,0.3,0.9とい
う信号確率の値が与えられているものとする。このと
き、厳密な計算によると出力ノードZの信号確率P
(Z)は0.027になる。これをCOPで計算すると
P(Z)=0.0081となり、厳密な値との誤差は大
きい。一方、CCMとBAMによる計算は厳密な値を与
える。
【0076】第2実施例 第2実施例では第1の発明を用いてスウィッチング確率
の計算方法を述べる。 (1)まず最初にZが2入力ANDゲートの出力ノード
である場合について述
【外23】 よいが、P(Z)が計算されていれば
【数43】 であるのでP(Z(τ)Z(0))を計算すればよいこと
になる。このゲートの入力ノードをA,Bとすると、 Z=AB (80) の関係があるので計算すべき量P(Z(τ)Z(0))は
【数44】 P(Z(τ)Z(0))=P(A(τ)A(0)B(τ)B(0)) (81) と表すことができる。式(6) を用いれば、
【数45】 となる。信号確率の場合と同様に式(82)とCOPによる
計算値
【数46】 の差を調べてBAMによる補正項を計算する。そのため
【数47】 と定めると
【数48】 P(A(τ)A(0)B(τ)B(0))=F(χ), P(A(τ)A(0))P(B(τ)B(0))=F(η) (86) となる。従ってP(A(τ)A(0)B(τ)B(0))
とP(A(τ)A(0))P(B(τ)B(0))との差は
【数49】 P(A(τ)A(0)B(τ)B(0)) −P(A(τ)A(0))P(B(τ)B(0))=F(χ)−F(η) (87) と表すことができる。この式をTaylor展開し、その第一
次までの項をとると、
【数50】 を得る。定理0.1を考慮にいれて、さらに変形すると
【数51】 を得る。Zも他のゲートの入力になっている可能性があ
るため、上で計算したP(Z(τ)Z(0))の他にShan
non 展開の係数(cofactor)に関するP((Z(τ
【外24】 様の考察により
【数52】 を近似する。
【0077】式(95),(96)がスウィッチング確率に対す
るBAMの基本式である。
【0078】信号確率の場合と同様、式(95)および、式
(96)の右辺を記号‘*’を用いてそ
【外25】 (2)次にZがインバーターの出力ノードである場合を
考察する。その入力ノードをAとすると、
【数53】 であることもわかる。
【0079】(3)以上ではZが2入力ANDゲートか
インバーターの場合について述べたが、ここでは一般の
論理ゲートの場合を考察する。
【0080】Zが2入力ANDゲートやインバーターと
は限らない一般の論理ゲートの出力ノードであるとし、
そのゲートの入力をA1 ,…,Am とする。このときZ
はA1 ,…,Am の論理関数であると同時にAa (a=
1,…,m)を通じてプライマリー・インプットの論理
関数でもある。関数記号で書くとこのことは
【数54】 Z=Z(A1 ,…,Am ) =Z(A1 (x1 ,…,xn ),…,Am (x1 ,…,xn )) (100) を意味する。Zをゲート入力に関する積和形式で表すと
【数55】 の再帰的な計算方法を示す。そのためには次の補題を利
用する。
【0081】補題0.3 X,YがA1 ,…,Am の論理関数であるとき、任意の
a=1,…,mに対してBAMによる近似式は
【数56】 と定義する。
【0082】(証明)補題0.1と同様なので省略す
る。 (証明終) 信号確率の場合と同様、この補題を再帰的に利用するこ
とによりP(Z(τ)
【外26】 補題0.4
【数57】 (証明)第1行目の第1式の証明は容易。第1行目の第
2式の証明は第2行目の式と補題0.2の帰結である。
第2行目の式は補題0.2の第2式の証明と同様にでき
る。第3行目の式は定理0.1から明かである。
(証明終) (4)ここでBAMによるスウィッチング確率の計算ア
ルゴリズムを示す。ノ
【外27】 ことによって与えられる。
【0083】 procedure BAMt (X,Y,P): begin if XまたはYが恒偽関数 then Pの全ての要素の値に0を加入; return; if Xが恒真関数 then BAMs (Y,P); return; if Yが恒真関数 then BAMs (X,P); return; Xの依存する論理モジュールの入力の一つをAa とする; 式(70),(71)で計算した値をPに代入する; comment このときBAMt ()を再帰的に呼び出す; return; end ここでPは計算した値を格納する配列である。また、こ
のアルゴリズムの中の論理モジュールとしては、論理ゲ
ート自体のことを指す場合もあるし、実施例1に述べた
ような仮想的論理モジュールのことを指す場合もある。
【0084】(5)以上のアルゴリズムを用いて実験を
行った。
【0085】回路としてはISCAS85のベンチマー
クデータを採用し、ランダム・シミュレーション(SI
M)からのスウィッチング確率の絶対誤差の2乗平均の
平方根(表の中のエラーの項目)とCPUタイム(表の
中のCPUタイムの項目)を測定した。実験の結果は次
の通りである。
【0086】
【表1】 この実験においてランダム・シミュレーションで流した
テスト・ベクトルの数は100000であり、全てのプ
ライマリー・インプットの信号確率とスウィッチング確
率を0.5とした。ただし、C17の回路に対してはC
OPとBAMの誤差は厳密な計算値からのものである。
この実験では、比較のためにSIM,COP,CCMに
ついても記載されているが、SIMとCOPについては
独自にプログラムを作成して実験し、CCMについての
結果はMMPから引用した。ただし、CPUタイムはマ
シンの性能差を考慮した換算値を用いた。この表から次
のように結論される。
【0087】まず、誤差に関していえば、BAMはCO
Pよりも一般に精度が良く、信頼性が高い。一方、CC
Mは必ずしもそうではなく、回路によっては非常に精度
の良い場合もあるが精度の悪くなる場合もあり、一定し
ていない。つまり、信頼性が低い。CPUタイムについ
ては、COPとBAMはCCMよりも圧倒的に優れてい
る。従って、総合的にみるとBAMの方がCOPやCC
Mよりも勝っていると結論できる。
【0088】次に回路全体の消費電力の見積誤差に関し
て述べる。
【0089】配線容量を無視し、ゲート入力容量が一定
であるとすると、回路全体の消費電力は、各ノードのフ
ァンアウト数(そのノードが入力するゲート数)にその
ノードのスウィッチング確率を乗じてノードについての
和をとったものにほぼ比例する。これをnormalized pow
er dissipation measure(NPDM)と呼ぶ。NPDM
に関するCOPとBAMのランダム・シミュレーション
からの誤差は次の表のようになる。
【0090】
【表2】 この表から、BAMによる回路全体の消費電力の見積誤
差は数%以内であると結論できる。
【0091】第3実施例 次に、第1実施例,第2実施例の方法により、スウィッ
チング確率を求めることが出来るので式(1) ,(8) によ
り、各ノードにおける充放電による消費電力を求めるこ
とが出来る。しかし、回路全体はノードとゲートで構成
され、ゲート内部でもゲート入力が遷移する事で電力が
消費されるので、それによる消費電力も考慮にいれなけ
ればならない。
【0092】注目するゲートをGとし、その入力ノード
をA1 ,…,Am とする。このときGによって消費され
る平均消費電力Pow(G)は次のように表すことが出
来る。
【0093】
【数58】
【外28】 知の場合には、第2実施例の方法によりPow(G)を
計算することが出来る。
【0094】第4実施例 次に、第4実施例では第3実施例によって見積もった消
費電力の見積値を利用した回路最適化方法を示す。
【0095】論理回路図上の図3のような3入力AND
ゲートをレイアウトの段階で図1のように2つの2入力
ANDゲートに展開する必要が生じたと仮定する。図3
の各ノードA,B,Cを図4のノードa,b,cに割り
当てるのであるが、A,B,Cのどのノードを図4のノ
ードcに割り当てるかにより、3通りの方法が存在する
(a,bのノードは同等であると仮定している)。この
とき、消費電力が最小となるような割当を行うことが要
求されていると仮定する。
【0096】手順としては、全ての割当方法を試して最
も消費電力の小さくなるものを採用することにする。
【0097】図4の各ノードの駆動容量が全て等しいと
すると、ノード全体により消費される電力は
【数59】 PSW(a;τ)+PSW(b;τ)+PSW(c;τ)+PSW(N;τ) (111) に比例する。この式の3項の和は割当に依存しないので
最後の項に注目する。a,bに割り当てられるノードが
独立であると仮定すると
【数60】 という関係がある。図3におけるノードA,B,Cに対
して、 PSW=(A;τ)=0.5, PSW=(B;τ)=0.3, PSW=(C;τ)=0.2, (113) P(A)=P(B)=P(C)=0.5 (114) であり、A,B,Cが独立であると仮定すると、cにA
を割り当てたとき、 PSW(N;τ)=0.22, (115) cにBを割り当てたとき、 PSW(N;τ)=0.3, (116) cにCを割り当てたとき、 PSW(N;τ)=0.325, (117) となり、cにAを割り当てたときの消費電力が最も小さ
いことがわかる。A,B,Cが独立でないときには、B
AMによる、より精密な値を用いる必要がある。
【0098】このようにして消費電力が最小となるよう
な論理合成に本発明を適用できる。通常は最適化するも
のは消費電力だけではなく、例えばタイミングなどの制
約を受ける場合がある。このようなときには消費電力を
最小にするよりもタイミング制約条件を満たすことが優
先する。そのような場合には、タイミング制約条件を満
たすような論理合成が行われた後に、消費電力の最適化
を行う。
【0099】第5実施例 第2の発明に関する第1の実施例について説明する。簡
単のため、順序回路が含まれないような回路(組み合わ
せ回路)における信号確率の計算について考える。
【0100】図6のような回路において独立なプライマ
リー・インプットXi の信号確率P(Xi =1)(i=
1,2,3)が与えられたとき出力Zでの信号確率を計
算する。ただし、P(A)は条件Aが成り立つ確率であ
ると定義する。遅延時間を無視すると明らかに
【数61】 P(Z=1)=P(X1 =1)P(X2 =1)P(X3 =1) (118) となる。しかし、各ゲートが大きさ1の遅延時間を持つ
とすればZが時刻t=0で信号値1を持つ確率は
【数62】 P(Z=1,t=0) =P(X1 =1,t=−2) ×P(X2 =1,t=−2;X2 =1,t=−4) ×P(X3 =1,t=−4) (119) となる。ここでP(A1 ;A2 ;…;An )は条件
1 ,A2 ,….An が共に成り立つ確率であると定義
する。また、全ての時間は最小時間単位τの整数倍であ
るとして時間を整数値で表す。従って時間iとは真の時
間i×τのことをいう。もしも信号X2 の時間的相関が
非常に小さく時刻t=−2とt=−4における信号が独
立とみなせるならば
【数63】 P(X2 =1,t=−2;X2 =1,t=−4) 〜P(X2 =1,t=−2)P(X2 =1,t=−4) (120) が成り立つ。さらにプライマリー・インプットの信号確
率が時刻に依存しないと仮定すれば結局、
【数64】 P(Z=1)=P(X1 =1)P(X2 =1)2 P(X3 =1) (121) となり、図2においてY1 ,Y2 を独立とみなして
【数65】 P(Z=1)=P(Y1 =1)P(Y2 =1) =(P(X1 =1)P(X2 =1)) ×(P(X2 =1)P(X3 =1)) (122) と計算した場合と同様になる。このようにディレイを考
慮すると回路図においては相関のある信号も実際には相
関がないものとして計算できる場合がある。このことは
信号間相関のある回路において計算の手間を著しく減少
させる。
【0101】上述の例ではZに対するX2 の遅延時間差
が2のときに相関を無視したが、実際にどの程度の遅延
時間差があればこの様な無視が可能なのかを調べる。
【0102】そのために以下の事柄を仮定する。 (1)全てのプライマリー・インプットは互いに独立で
ある。 (2)信号確率は時刻に依存しない。 (3)任意のプライマリー・インプットのある時刻にお
ける信号確率は直前の時刻の信号値にのみ依存し、それ
以前の信号値に依存しない。 (4)スウィッチング確率は時刻に依存しない。
【0103】3番目の仮定はMarkov性の仮定と呼ばれ、
式で表すと次のようになる。
【0104】
【数66】 P(X=xn ,t=n|X=xn-1 ,t=n−1;…;X=x0 ,t=0) =P(X=xn ,t=n|X=xn-1 ,t=n−1) (123) ただし、Xは任意のプライマリー・インプットとする。
ここでP(A|B)は条件Bのもとで条件Aが起こる条
件付き確率である。条件付き確率は P(A|B)P(B)=P(A;B) (124) という式を満たす。信号に対する条件付き確率P(X=
x,t−1|X=y,t=0)を遷移X=y→X=xに
対する遷移確率という。4番目の仮定は任意の時刻iに
対して
【数67】 P(X=x,t=i+1;X=y,t=i) =P(X=x,t=1;X=y,t=0) (125) であることを示す。以下ではこれらの仮定を原則として
断り無しに用いる。
【0105】さて、一般にゲートの出力の確率をその出
力からプライマリー・インプットに至る全ての経路を考
慮することによりプライマリー・インプットに関する確
率で表した場合に各プライマリー・インプットXから
【数68】 P(X=x1 ,t=i1 ;X=x2 ,t=i2 ;…;X=xn ,t=in ) (126) という形の寄与がある。これを信号Xのn点の自己相関
関数と呼ぶ。ここでx1,…,xn は0または1の論理
値を示し、i1 ≧…≧in はある最小時間単位τの整数
倍で表した時刻を示す。Markov性の仮定によりこれを厳
密に計算することが可能である。
【0106】例えばP(X=xn ,t=n;X=x0
t=0)の計算方法は以下のようになる。
【0107】明らかに
【数69】 と書ける。これを簡単に記述するために2×2行列Qを
【数70】 Qij=P(X=i,t=1|X=j,t=0)(i,j=0,1) (129) によって定める。すると式(14)は P(X=xn ,t=n;X=x0 ,t=0) =[Qn xn,x0 P(X=x0 ) (130) となる。ここで[Qn xn,x0 は行列Qn の第(xn
0 )成分を示す。Qは遷移行列と呼ばれている。Qn
が計算できれば信号Xの自己相関関数が計算できるがQ
【数71】 ただし
【数72】 α0 =P(X=1,t=1|X=0,t=0), α1 =P(X=0,t=1|X=1,t=0) (132) と書けるので
【数73】 という関係を用いた。従って、
【数74】 |P(X=xn ,t=n;X=x0 ,t=0) −P(X=xn )P(X=x0 )| =P(X=0)P(X=1)|1−α0 −α1 n (135) となる。式(135) の右辺が0であるときt=nでのXと
t=0でのXが独立となるので、式(135) の右辺はそう
みなしたときの誤差と考えることができる。例えば10
%の要求誤差の場合には
【数75】 を満たすような遅延時間差があればt=nでのXとt=
0でのXとを独立とみなしてもよいことになる。特に|
1−α0 −α1 |=0の場合には式(134) から任意の正
のnに対してt=nでのXとt=0でのXとは厳密な意
味で独立となる。また、|1−α0 −α1 |=1の場合
には式(135) からP(X=0)P(X=1)が要求され
る誤差より小さい場合のみt=nでのXとt=0でのX
とを独立と見なせることが分かる。逆に、P(X=0)
P(X=1)が要求される誤差errorより小さい場
合には|1−α0 −α1 |≦1なのですべてのnに対し
てt=nでのXとt=0でのXとを独立と見なせること
ができる。特にn=0の場合にも独立と見なせるが、こ
のことはXに与えた信号確率がP(X=0)P(X=
1)≦errorを満たす場合には遅延時間差を考慮し
なくても信号Xに関してはもともと相関がないものとし
て計算してもよいということになる。例えば、図7のよ
うにX1 ,…,Xn というプライマリー・インプットを
もつ回路においてXi はY1 ,Y2 を通じて出力Zを持
つゲートにおいて相関を引き起こしているがP(Xi
0)P(Xi =1)≦errorが満たされている場合
には
【数76】 P(Z=1)=P(Y1 =1)P(Y2 =1) (137) として計算しても誤差はerror以内である。この理
由をもっと詳しく述べる。
【0108】図7においてY1 ,Y2 をプライマリー・
インプットの論理関数として表し、Xi についてShanno
n 展開すると
【数77】 となる。一方Y1 ,Y2 を独立とみなしたときのZでの
信号確率は
【数78】 P(Z=1) =P(Y1 =1)P(Y2 =1) =P(Xi =1)P(Xi =1)P(F1 =1)P(G1 =1) +P(Xi =1)P(Xi =0)P(F1 =1)P(G0 =1) +P(Xi =0)P(Xi =1)P(F0 =1)P(G1 =1) +P(Xi =0)P(Xi =0)P(F0 =1)P(G0 =1) (140) となり一般には厳密な値
【数79】 P(Z=1) =P(Xi =1)P(F1 =1)P(G1 =1) +P(Xi =0)P(F0 =1)P(G0 =1) (141) とは一致しない。これは式(139) の2行目から3行目で
i に対してはXi i
【外29】 率P(Xi =x)に対してはそのような関係式が一般に
は成り立たないことにある。ところが条件P(Xi
0)P(Xi =1)≦errorはこれらのブール代数
の関係が許容誤差(error)内で確率に対しても成
り立つことを保証するのである。
【0109】相関を引き起こしている信号がただ一つの
場合には上述の誤差errorはゲートの出力の誤差と
一致する。しかし、ゲートの上流で複数の相関が起こっ
ている場合には、ゲートGの出力に関して規定された最
大許容誤差をEG とすると、EG があまり大きくないと
きは C1 1 +C2 2 +…+Cn n ≦EG (142) を満たすように各プライマリー・インプットXi に関す
る最大許容誤差Ei (i=1,…,n)を規定してやる
とよい。ここでCi は論理回路を基本的なゲート(例え
ばANDとインバーター)で展開したときにGの上流で
プライマリー・インプットXi (i=1,…,n)が引
き起こしている相関の個数である。この関係式は、相関
が1つある度にBoole 代数の関係を用いなければならな
いということからの大ざっぱな見積である。
【0110】以上のことから入力の確率のP(X=0)
P(X=1)が小さいときに出力の確率の誤差が小さい
ことが予想されるが、このことを1ビットの加算器に対
して遅延がない場合に確かめてみた。その結果を下の表
にまとめてある。
【0111】
【表3】 ここで出力の確率Aとは全てのゲートの入力を独立とみ
なし、信号間相関を無視して計算したサム(SUM)お
よびキャリー(CARRY)という名前の出力ノードで
の確率であり、出力の確率Bはそれらの厳密な確率の値
である。この表によれば入力A,B,Cの確率に対して
P(X=0)P(X=1)(X=A,B,C)が小さい
場合の方が大きい場合よりも出力の確率の誤差が確かに
小さくなっている。
【0112】以上の議論は2点の自己相関関数をもとに
した議論であった。一般のn点の自己相関関数に対して
【数80】 が成り立ち、2点の自己相関関数の場合と同様の議論が
適用できる。
【0113】以上の結果に基づいて信号間相関および遅
延時間差を考慮に入れて確率伝播を計算するアルゴリズ
ムを作成すると次のようになる。 1°ゲート全体をプライマリー・アウトプットからの深
さ優先探索順に並べる。この順序に従って各ゲートGに
対し、以下の操作を行う。 2°ゲートGに定められた最大許容誤差に対して各プラ
イマリー・インプットに要求される最大許容誤差を設定
し、相関を無視できる最小遅延時間差を計算する。 3°Gの入力を論理回路図上で相関のあるものどうしグ
ループ分けする。 4°同じグループに属する各ノードYi (i=1,…,
k)に対し、各プライマリー・インプットX1 ,X2
…,Xn からYi へ到達するまでの時間を遅延時間を考
慮して経路毎に求める。
【0114】例えばグループ{Y1 ,Y2 ,Y3 }に対
して次のようになったとする。
【0115】
【表4】 ただし、この表の項目の数字は各経路に対するそれぞれ
のプライマリー・インプットからの遅延時間である。
【0116】5°全てのプライマリー・インプットに対
し、それがYi ,Yj に達するまでの遅延時間の差が2
°で計算された最小遅延時間差以上であればYi ,Yj
の相関を無視することにし、3°で定められた入力のグ
ループ分けに対し、互いの相関の無視できないものを同
じグループとする、より細いグループ分けをする。例え
ば上の表において、相関を無視できるような最小の遅延
時間差がプライマリー・インプットX1 ,X2 ,X3
4 に対してそれぞれ3,2,4,2であったとすると
細分されたグループ分けは{Y1 ,Y2 },{Y3 }と
なる。
【0117】6°細分された各グループ毎に相関を考慮
した計算を行い、グループ間は独立であるとみなしてG
の出力に対する確率計算を行う。
【0118】このようにグループをできるだけ細分する
ことには、以前に計算した結果を用いて計算の手間を軽
減できるという効果がある。例えば図3のような回路に
おいてXi に関する相関を無視しても良い場合には既に
計算された値P(Y1 =1),P(Y2 =1)を用いて
【数81】 P(Z=1)=P(Y1 =1)P(Y2 =1) (145) と計算できるが、相関を無視できない場合にはもっと複
雑な方法で計算しなければならない。
【0119】図5は上記のアルゴリズムをまとめたもの
である。このアルゴリズムの計算時間は回路および各ゲ
ートに対する遅延時間、そして要求される最大許容誤差
に依存し、最悪の場合Ο(|G|×X)であり、最良の
場合はΟ(|G|)である。ただし、|G|は回路全体
に含まれるゲートの数を表し、Xは6°の手続きに要す
る最悪の場合の時間である。
【0120】第6実施例 第5実施例では信号確率について述べたが本実施例では
遷移確率について述べる。再び、簡単のため、順序回路
が含まれないような回路(組み合わせ回路)を考える。
図6のような回路において独立なプライマリー・インプ
ットXi の遷移確率P(Xi =x|Xi =y)(i=
1,2,3;x,y=0,1)が与えられたとき出力Z
での遷移確率を計算する。ただし、
【数82】 P(X=x|X=y)=P(X=x,t=1|X=y,t=0) (140) と定義する。遅延時間を無視すると明らかに
【数83】 P(Z=1|Z=1)=P(X1 =1|X1 =1) ×P(X2 =1|X2 =1)P(X3 =1|X3 =1) (147) となる。しかし、各ゲートが大きさ2の遅延時間を持つ
とすればZが時刻t=0で信号値1を持ち、時刻t=1
で信号値1を持つ確率は
【数84】 P(Z=1,t=1;Z=1,t=0) =P(X1 =1,t=−3;X1 =1,t=−4) ×P(X2 −1,t=−3;X2 =1,t=−4; X2 =1,t=−7;X2 =1,t=−8) ×P(X3 =1,t=−7,X3 =1,t=−8) (148) となる。もしも信号X2 の時間的自己相関が非常に小さ
く、3以上の時間だけ離れた信号が独立とみなせるなら
【数85】 P(X2 =1,t=−3;X2 =1,t=−4; X2 =1,t=−7;X2 =1,t=−8) 〜P(X2 =1,t=−3;X2 =1,t=−4) ×P(X2 =1,t=−7;X2 =1,t=−8) =P(X2 =1|X2 =1)2 P(X2 =1)2 (149) となり、図6においてY1 ,Y2 を独立とみなして
【数86】 P(Z=1|Z=1) =P(Y1 =1|Y1 =1)P(Y2 =1|Y2 =1) =(P(X1 =1|X1 =1)P(X2 =1|X2 =1)) ×(P(X2 =1|X2 =1)P(X3 =1|X3 =1)) (150) と計算した場合と同様になる。このように遷移確率の場
合も信号確率の場合と同様、自己相関関数を計算するこ
とにより相関の有無を判定でき、第5実施例と同様のア
ルゴリズムを適用することができる。
【0121】以上、第2の発明の実施例について説明し
たが、もしも最小時間単位τをクロック・サイクルにと
ると遅延時間差が1以上の組み合わせ回路は一般的な観
点からいってうまく動作していない回路である。しかし
相関の手前でフリップ・フロップなどの記憶素子が入る
と遅延時間差が1以上の場合も正常な場合になる。この
ように順序回路を合わせて考えると第2の発明の適用範
囲が広がる。
【0122】第7実施例 第3の発明による消費電力評価法の一実施例を図8のフ
ローチャートを参照して説明する。論理回路の入力端子
に与えられる入力信号は、各入力信号端子ごとに時系列
的に記述され、まとめて記憶装置801に格納されてい
る。処理ステップS802は入力パターンを各端子ごと
に時間区間に分割し、各時間区間の入力信号系列を確率
量に変換する処理を行う。評価対象の量によって、求め
る確率量は異なるが、信号が論理的な“1”になる確率
を表す信号確率、または信号が変化可能な場合の数に対
して変化する確率を示すスウィッチング確率(遷移確
率)などが対象となる。各端子ごと、各時間区間ごとに
計算された確率量は記憶装置803に格納される。処理
ステップS804は各時間区間ごとの入力端子に対して
与えられた確率量から当該時間区間の電力を計算する。
その結果は記憶装置806に時間区間と、本発明に従っ
て部分回路の分類に従って格納される。電力計算のステ
ップS804は、指定された全時間区間の電力計算が終
了したかを、判定ステップS805によって判断し、終
了すればすべての処理を完了する。808は時系列的に
表現した出力グラフの例である。
【0123】本発明による消費電力評価の実施例の一つ
を、図9の2つのANDゲートAND1,AND2とオ
アゲートOR1から構成される論理回路を例に取って説
明する。図10は図8のステップS802の入力パター
ンの区間への分割と、入力端子に対する区間の信号確率
計算などの確率量を計算する方法を具体的な回路と入力
パターンを用いて例示している。図10の1001は入
力パターンとスウィッチング事象を示しており。A2の
カラムは記憶装置801に記憶される入力パターンであ
り、A1のカラムは時刻を示している。A3のカラムは
図9の回路において各ゲートの出力でどの様にスウィッ
チングが起こるかを参考のために記したものである。A
2のカラムの入力パターンは、1004のB1のカラム
に示された時間区間に対して、1002の入力の信号確
率計算手順に従ってカラムB2に示されたように各入力
端子の信号確率に変換される。一方1003の入力のス
ウィッチング確率計算手段によってC2のカラムに示さ
れたように各入力端子のスウィッチング確率に変換され
る。この1002,1003の手順は図8の実施例にお
けるステップS802の処理に対応している。100
2,1003の手順によって得られた確率量すなわち1
004のB2および1005のC2は図8の実施例の記
憶装置803に格納されている。図11(a)のスウィ
ッチング確率は図8の実施例においてステップS804
を用いて区間瞬時電力を計算した結果であり、その結果
は記憶装置806に格納される。図11(a)の例では
各ゲートの出力ノードのスウィッチング確率とそれらの
総和が計算されている。図11(b)は時間区画の刻み
をより細かくして計算した例であり、瞬時電力を知る上
で分解能が上がる。この回路と入力パターンに対して本
発明の一実施例である電力評価法を適用した結果をグラ
フとして示したものが図12である。ここで図12の
(a)は時間区画の刻みを1とした場合であり、(b)
は刻みを4、(c)は刻みを2とした場合である。この
表示は図8の実施例における表示808に対応してい
る。この実施例の図12,図13の電力計算例では各ゲ
ートの出力ノードの静電容量を簡単のためすべて1と
し、論理振幅も0ボルトから1ボルトの間と仮定して計
算がされている。これはただ理解を容易にするためだけ
であって、実際の電力評価には別途準備した各ノードの
静電容量と論理振幅を用いなければならない。
【0124】図8は通常の計算機を用いて実現する実施
例のフローチャートであるが、第3の発明をハードウェ
アまたは2個以上の処理装置を用いて実現する実施例に
おいては図8のステップS802、ステップS804、
ステップS807をパイプラインに構成し、各々の記憶
装置、つまり記憶装置801、記憶装置803、記憶装
置806をファーストイン・ファーストアウトのバッフ
ァとして構成する事ができる。
【0125】本実施例においては時間区間は必ずしも均
一である必要はなく、その要求精度に従って詳細を知り
たい部分に対しては細かい時間区画を設定する事ができ
る。
【0126】第8実施例 第3の発明に関する第2の実施例を図14のシステム構
成図を用いる事によって説明する。本システム構成図に
おいて、1405は回路の構造または動作の記述を格納
する記憶装置であり、論理回路の入力端子に確率量を与
えて電力計算をする処理手順を実現したステップS14
04に適した表現形式に当該回路の構造および/または
動作記述を変換する処理手順を実現したステップS14
06の入力となるデータを格納する。ステップS140
6は確率計算による電力計算が行い易いように動作記述
をもとに論理式の生成・変形や、回路の分割、BDDに
よる論理式の表現の生成、具体的な電力計算のための各
論理ゲートの出力ノードの静電容量の計算および計算手
順との結合などを行う。これらの情報は記憶装置140
7に格納され、瞬時電力計算手順を実現するステップS
1404で利用する。この瞬時電力計算手順を実現した
モジュールにおいては同一の回路に対する電力計算をす
べての時間区間に対して行わねばならず計算時間を要す
る。そこで本実施例ではあらかじめ最適な計算が可能な
ようにステップS1406で準備する事によって全体の
処理時間を短くする事ができる。1401,S140
2,1403,1408,S1409,1410は図8
の801,S802,806,S807,808にそれ
ぞれ対応する。
【0127】第9実施例 次に、第3の発明の一実施例を図11と図13を用いて
説明する。瞬時電力計算のステップS804によって計
算した結果は記憶装置806に格納されるが、この格納
時のデータの構成を図11に示したように各部分回路ご
とのスウィッチング確率として格納する。このようなデ
ータの構成として格納する事によって図13に示したよ
うに各部分ごとの電力の時間的な推移を表示できるよう
になる。
【0128】回路を部分回路に分割する基準としては設
計者が用いた設計階層が最も良く用いられる例である
が、数種類のクロック系を持つ回路においてはクロック
系ごとに回路を分類するなどの方法も実現する事ができ
る。本発明を実現するのには回路の各ノードを設計階層
や、電源系、クロック系などの回路に従って検索・分類
できるデータ構造を選択する事によって効率よく実現す
る事ができる。
【0129】上記実施例においては、図8のステップS
804に対応する部分は論理回路の入力端子に確率量を
与え、その確率量が各ゲートの出力にどの様に伝搬して
行くかを調べるアルゴリズムを利用しているが、この部
分のアルゴリズムは必ずしもこの方式に限定されるもの
ではない。これ以外のアルゴリズムを用いても本発明の
優位性を損なわれるものではない。別のアルゴリズムの
例としては入力信号の各時間区間ごとの入力の統計・確
率的性質を満足する短いランダムな入力パターンを発生
して回路をシミュレーションする方法もある。この方法
によれば短い入力パターンで入力信号の統計・確率的性
格を十分に表現できれば精度良くかつ効率も良い電力評
価が可能となる。
【0130】本発明では、CMOS以外の回路方式の集
積回路にも適用できるのは明かである。たとえばE/D
MOSに対しては論理ゲートの入力端子に論理ゲート
の出力を“0”とする論理値が与えられている間は電流
が流れている。このような回路固有の特性のために電力
予測においてスウィッチング確率だけでなく信号確率も
考慮する必要がでてくる。さらにダイナミック論理を用
いた回路においてはプリチャージの効果を十分に考えた
評価方式を導入する事によってこれらの発明を適用でき
る。
【0131】
【発明の効果】第1の発明によれば、代表的な従来手法
CCMと同程度の精度、および数十分の1以下の計算時
間で論理回路のノードのスウィッチング確率を計算する
ことができる。
【0132】ノードの駆動する容量が与えられている場
合、そのノードのスウィッチング確率が分かれば、その
ノードでの平均消費電力が計算でき、また、セルの入力
遷移パターンに対するそのセルの消費電力が与えられて
いる場合、本発明を使用して、各入力遷移パターンの起
こる確率を計算することが可能であり、各セルの平均消
費電力を見積もることが出来る。
【0133】さらに論理合成ツールと組み合わせること
により、RTLレベルなどのより設計の初期段階での見
積も可能である。
【0134】また、本発明を使用して見積もった消費電
力の大きなノードの付近の論理回路を変更することによ
り、消費電力を低減するなどの回路最適化に役に立つ。
【0135】本発明は論理回路レベルの消費電力見積で
あるため、設計の変更や選ぶべきパッケージの種類を設
計の比較的初期の段階で決定することができる。
【0136】第2の発明によれば、遅延時間差および入
力の確率値を考慮して規定された最大許容誤差内で信号
間相関を無視することにより論理回路の動作確率の計算
を軽減できる。
【0137】第3の発明により、瞬時電力の時間的な推
移を短い計算時間で求める事ができる。また、容易に時
間区間を設定でき必要な時間精度で電力の変化を知る事
ができる。
【0138】また、各時間区間に対して多数回必要とな
る計算のうち共通の部分を取り出し最適化する事によっ
て電力評価に必要な計算時間を大幅に短縮でき、効率向
上が図れる。
【0139】更に、集積回路の各部分の消費電力を個別
に知ることが容易にできるようになる。これにより集積
回路設計者は容易に回路を最適化することができる。
【図面の簡単な説明】
【図1】第1の発明の実施例を表すフローを示す図であ
る。
【図2】信号間相関のある簡単な論理回路の例である。
【図3】3入力ANDゲートの論理回路図である。
【図4】図6の論理ゲートを2入力ANDゲートで分解
した論理回路図である。
【図5】第2の発明の実施例を表すフローを示す図であ
る。
【図6】信号間相関のある簡単な回路の例である。
【図7】信号間相関のある回路の例である。
【図8】第3の発明による実施例の処理手順を示すフロ
ーチャートである。
【図9】第3の発明の実施例の処理内容を説明するため
の論理回路の例である。
【図10】第3の発明の実施例の図8におけるステップ
S802の処理内容を示した図である。
【図11】各ゲート出力のスウィッチング確率を示した
図表であり、(a)は時間区間が4の場合であり、
(b)は時間区間が2の場合である。
【図12】第3の発明による電力評価の結果の例を、3
種類の時間区間に対して示す図表である。
【図13】第3の発明により部分回路の電力を表現した
図表である。
【図14】第3の発明に関する実施例のシステム構成を
示すシステム構成図である。
【符号の説明】
1001 入力信号の例を示すテーブル 1004 入力信号確率の計算結果を示すテーブル 1005 入力スウィッチング確率計算結果を示すテー
ブル X 論理式 P 実数の配列 Z 論理回路の出力 A,B,C ノード a,b,c ノード N ノード xi (i=1,…,3) 論理回路のプライマリー・イ
ンプット Y1 ,Y2 ノード G1 ,G2 論理回路

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 複数の論理ゲートを接続して構成される
    論理回路を備える集積回路の電力の評価を行う方法にお
    いて、 各論理ゲートの出力ノードの論理値が1になる確率(以
    下、信号確率と記す)、及び、各論理ゲートの出力ノー
    ドの論理値が変化する確率(以下、スウィッチング確率
    と記す)に代表される出力ノードに付随する確率量に対
    して、その確率量の厳密な値Pe と、論理ゲートの入力
    を全て独立として計算した値Pa との差Pe −Pa を、
    回路全体の入力信号に対応する当該確率量に関して級数
    展開し、 そのうちの有限個の項を補正項として求め、前記Pa
    値にその補正項を加えたものを上記確率量の近似値とし
    て集積回路の電力評価を行うことを特徴とする集積回路
    の電力評価方法。
  2. 【請求項2】 複数の論理ゲートを接続して構成される
    論理回路を備える集積回路の電力の評価を行う方法にお
    いて、 前記論理回路を複数の論理ゲートから構成される論理モ
    ジュールの集合に分割し、 前記各論理モジュールに属する各ノードの論理値をその
    論理モジュールの入力信号の論理関数として表し、信号
    確率やスウィッチング確率に代表されるそのノードに付
    随する確率量に対して、その確率量の厳密な値Pe と、
    論理モジュールの入力を全て独立として計算した値Pa
    との差Pe −Pa を、回路全体の入力信号に対応する当
    該確率量に関して級数展開し、 そのうちの有限個の項を補正項として求め、前記Pa
    値にその補正項を加えたものを上記確率量の近似値とし
    て集積回路の電力評価を行うことを特徴とする集積回路
    の電力評価方法。
  3. 【請求項3】 前記論理回路の任意のノードのスウィッ
    チング確率に、そのノードの駆動容量と電源電圧の2乗
    とクロック周波数を乗じた値を、そのノードの充放電に
    よる消費電力として集積回路の電力評価を行うことを特
    徴とする請求項1又は請求項2記載の集積回路の電力評
    価方法。
  4. 【請求項4】 前記論理回路の任意のゲートの任意の入
    力遷移パターンの起こる確率に、その入力遷移パターン
    が起こった場合の1遷移あたりの消費電力を乗じた値
    を、そのゲートにおける当該入力遷移による平均消費電
    力として集積回路の電力評価を行うことを特徴とする請
    求項1又は請求項2記載の集積回路の電力評価方法。
  5. 【請求項5】 集積回路の動作確率を計算することによ
    り、前記集積回路の電力を評価する方法において、 前記集積回路内のゲートの入力となっている複数の信号
    間の最小遅延時間差を決定し、 この決定された最小遅延時間差によりゲート入力をグル
    ープ分けし、 このグループ分けされた各々のグループに対する相関を
    考慮した確率計算を行い、 この確率計算されたゲート
    入力に関する確率を用いて、そのゲートの出力に関する
    確率を計算することを特徴とする集積回路の電力評価方
    法。
  6. 【請求項6】 集積回路の動作確率を計算することによ
    り、前記集積回路の電力を評価する方法において、2つ
    以上のノードが同一の信号に依存している場合に、この
    信号の確率に関するMarkov性を仮定して、前記信号から
    それらのノードに到達するまでの最小遅延時間差が十分
    に大きい場合に、規定された最大許容誤差内でそれらの
    ノード間の前記信号に関する相関を無視することを特徴
    とする集積回路の電力評価方法。
  7. 【請求項7】 集積回路の動作確率を計算することによ
    り、前記集積回路の電力を評価する方法において、 2つ以上のノードが同一の信号Xに依存している場合
    に、信号Xの論理値に関する確率が、 規定された最大許容誤差をError、 【外1】 の条件を満たす場合に、規定された最大許容誤差内でそ
    れらのノード間の信号Xに関する相関を無視することを
    特徴とする集積回路の電力評価方法。
  8. 【請求項8】 集積回路の消費電力を予測してその評価
    を行う方法において、 一次入力端子に時系列的に与えられる入力パターンの集
    合を時間的区間で分割するステップと、 各時間区間ごとの一次入力端子に与えられるパターンの
    統計・確率的特性を計算するステップと、 各時間区間の消費電力を当該統計・確率特性より算出す
    るステップと、 各時間区間の算出された消費電力を時系列的に配列する
    ステップと、 を行うことを特徴とする集積回路の電力評価方法。
  9. 【請求項9】 論理回路の入力端子に統計・確率量を与
    え、当該確率量の伝搬を評価することにより集積回路の
    電力を評価する方法において、 対象回路の入力端子に与えられる入力信号または入力信
    号特性を用いて電力評価を行う前に、当該集積回路の回
    路構造または回路動作の記述を入力し、電力予測に必要
    とする評価式またはデータ構造に変換して記憶装置に格
    納し、該評価式またはデータ構造を電力予測に複数回利
    用する事を特徴とする集積回路の電力評価方法。
  10. 【請求項10】 集積回路の電力評価方法において、 評価の単位となる集積回路の部分回路を着目した回路系
    統ごとに分類し、所望の部分回路の集合に対して消費電
    力および電源電流を出力できる事を特徴とする集積回路
    の電力評価方法。
JP5586795A 1995-03-15 1995-03-15 集積回路の電力評価方法 Expired - Fee Related JP3213198B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP5586795A JP3213198B2 (ja) 1995-03-15 1995-03-15 集積回路の電力評価方法
US08/616,994 US5847966A (en) 1995-03-15 1996-03-14 Power estimation method for an integrated circuit using probability calculations

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5586795A JP3213198B2 (ja) 1995-03-15 1995-03-15 集積回路の電力評価方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2001068869A Division JP3699901B2 (ja) 2001-03-12 2001-03-12 集積回路の電力評価方法

Publications (2)

Publication Number Publication Date
JPH08249372A true JPH08249372A (ja) 1996-09-27
JP3213198B2 JP3213198B2 (ja) 2001-10-02

Family

ID=13011037

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5586795A Expired - Fee Related JP3213198B2 (ja) 1995-03-15 1995-03-15 集積回路の電力評価方法

Country Status (2)

Country Link
US (1) US5847966A (ja)
JP (1) JP3213198B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008041280A1 (fr) * 2006-09-29 2008-04-10 Fujitsu Limited Procédé pour calculer la consommation de puissance d'un circuit intégré semi-conducteur et appareil pour concevoir un circuit intégré semi-conducteur
US9021289B2 (en) 2010-10-15 2015-04-28 Fujitsu Limited Method and system for power estimation based on a number of signal changes

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5983007A (en) * 1996-11-25 1999-11-09 Lucent Technologies Inc. Low power circuits through hazard pulse suppression
JP4077899B2 (ja) * 1997-03-13 2008-04-23 株式会社日立製作所 論理回路の論理動作制御方法と半導体論理回路の消費電力制御方法及び算出方法及び半導体論理回路
US6134513A (en) * 1997-10-23 2000-10-17 Intel Corporation Method and apparatus for simulating large, hierarchical microelectronic resistor circuits
US6363515B1 (en) * 1997-12-30 2002-03-26 Intel Corporation Early power estimation tool for high performance electronic system design
JP4108805B2 (ja) * 1998-01-21 2008-06-25 松下電器産業株式会社 消費電力特性計算手段及びその方法
CN1075390C (zh) * 1998-09-29 2001-11-28 孙哲 强效床单位消毒器及其消毒处理方法
US6556962B1 (en) * 1999-07-02 2003-04-29 Intel Corporation Method for reducing network costs and its application to domino circuits
JP4028140B2 (ja) * 1999-07-14 2007-12-26 松下電器産業株式会社 不要輻射解析方法
JP3836276B2 (ja) * 1999-09-17 2006-10-25 株式会社東芝 集積回路のノイズ及び電力の評価方法
US6492837B1 (en) 2000-03-17 2002-12-10 Intel Corporation Domino logic with output predischarge
JP2001290855A (ja) * 2000-04-10 2001-10-19 Nec Corp 階層化設計の遅延計算方法
US6611945B1 (en) * 2000-10-25 2003-08-26 International Business Machines Corporation Method for propagating switching activity information in digital combinatorial networks
US6684375B2 (en) * 2000-11-22 2004-01-27 Matsushita Electric Industrial Co., Ltd. Delay distribution calculation method, circuit evaluation method and false path extraction method
JP2002215705A (ja) * 2001-01-23 2002-08-02 Toshiba Corp 回路自動生成装置、回路自動生成方法及び回路自動生成プログラムを記録した記録媒体
US6990647B2 (en) * 2002-02-19 2006-01-24 Cadence Design Systems, Inc. Variable stage ratio buffer insertion for noise optimization in a logic network
US20030212973A1 (en) * 2002-05-13 2003-11-13 Shen Lin Methods for full-chip vectorless dynamic IR analysis in IC designs
US20040236559A1 (en) * 2003-05-23 2004-11-25 Chen Thomas W. Statistical approach for power estimation
US20040236560A1 (en) * 2003-05-23 2004-11-25 Chen Thomas W. Power estimation using functional verification
US7313510B2 (en) * 2003-06-02 2007-12-25 V-Cube Technology Corp. Methods for estimating power requirements of circuit designs
US7506216B2 (en) * 2004-04-21 2009-03-17 International Business Machines Corporation System and method of workload-dependent reliability projection and monitoring for microprocessor chips and systems
US7454316B2 (en) 2004-10-08 2008-11-18 International Business Machines Corporation Method and apparatus for monitoring and enhancing on-chip microprocessor reliability
US7350171B2 (en) * 2005-11-17 2008-03-25 Lizheng Zhang Efficient statistical timing analysis of circuits
US7681153B2 (en) * 2007-01-23 2010-03-16 International Business Machines Corporation Estimating static power consumption of integrated circuits using logic gate templates
WO2008096006A1 (de) * 2007-02-08 2008-08-14 Siemens Aktiengesellschaft Verfahren und system zur ermittlung von zuverlässigkeitsparametern einer technischen anlage
US8201121B1 (en) * 2008-05-28 2012-06-12 Cadence Design Systems, Inc. Early estimation of power consumption for electronic circuit designs
US8825464B2 (en) * 2008-09-02 2014-09-02 Oracle America, Inc. Method and apparatus for parallelization of sequential power simulation
US8627263B2 (en) 2011-02-23 2014-01-07 International Business Machines Corporation Gate configuration determination and selection from standard cell library
US8612911B2 (en) * 2011-02-23 2013-12-17 International Business Machines Corporation Estimating power consumption of an electronic circuit
US9268898B1 (en) * 2013-03-12 2016-02-23 Xilinx, Inc. Estimating power consumption of a circuit design
CN112733475A (zh) * 2020-12-31 2021-04-30 武汉第二船舶设计研究所(中国船舶重工集团公司第七一九研究所) 一种控制系统信号概率的组合电路可靠性评估方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5557531A (en) * 1990-04-06 1996-09-17 Lsi Logic Corporation Method and system for creating and validating low level structural description of electronic design from higher level, behavior-oriented description, including estimating power dissipation of physical implementation

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008041280A1 (fr) * 2006-09-29 2008-04-10 Fujitsu Limited Procédé pour calculer la consommation de puissance d'un circuit intégré semi-conducteur et appareil pour concevoir un circuit intégré semi-conducteur
US9021289B2 (en) 2010-10-15 2015-04-28 Fujitsu Limited Method and system for power estimation based on a number of signal changes

Also Published As

Publication number Publication date
US5847966A (en) 1998-12-08
JP3213198B2 (ja) 2001-10-02

Similar Documents

Publication Publication Date Title
JP3213198B2 (ja) 集積回路の電力評価方法
Lamoureux et al. Activity estimation for field-programmable gate arrays
Ding et al. Gate-level power estimation using tagged probabilistic simulation
US8359173B2 (en) System and methods for dynamic power estimation for a digital circuit
US7168014B2 (en) Propagating an error through a network
JP3836276B2 (ja) 集積回路のノイズ及び電力の評価方法
Reinsalu et al. Fast RTL fault simulation using decision diagrams and bitwise set operations
JP3699901B2 (ja) 集積回路の電力評価方法
Gaur et al. Design for Stuck-at Fault Testability in Multiple Controlled Toffoli-based Reversible Circuits.
US8452581B2 (en) Technique using power macromodeling for register transfer level power estimation
CN108073989B (zh) 一种基于贝叶斯概率模型的组合逻辑电路选择性加固方法
US6611945B1 (en) Method for propagating switching activity information in digital combinatorial networks
Rakesh et al. GRILAPE: Graph Representation Inductive Learning-based Average Power Estimation for Frontend ASIC RTL Designs
Chen et al. An efficient probability framework for error propagation and correlation estimation
Tsai et al. Sensitization criterion for threshold logic circuits and its application
Hu et al. Enhanced dual-transition probabilistic power estimation with selective supergate analysis
US20160217239A1 (en) Method and system for selecting stimulation signals for power estimation
JP2000148833A (ja) 消費電力見積方法
US10289786B1 (en) Circuit design transformation for automatic latency reduction
Rakesh et al. Glaape: Graph learning assisted average power estimation for gate-level combinational designs
Kazma et al. Analysis of SEU propagation in sequential circuits at RTL using satisfiability modulo theories
JP2013061811A (ja) 消費電力解析方法および消費電力解析装置
JP4771076B2 (ja) 回路解析装置、回路解析方法、およびプログラム
Theoharis et al. Accurate and fast power estimation of large combinational circuits
Chaudhuri et al. Timing speculation in FPGAs: Probabilistic inference of data dependent failure rates

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080719

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090719

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090719

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100719

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110719

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees