JP2009543240A - デジタル回路のスイッチング活動状態をモデル化する方法 - Google Patents
デジタル回路のスイッチング活動状態をモデル化する方法 Download PDFInfo
- Publication number
- JP2009543240A JP2009543240A JP2009518937A JP2009518937A JP2009543240A JP 2009543240 A JP2009543240 A JP 2009543240A JP 2009518937 A JP2009518937 A JP 2009518937A JP 2009518937 A JP2009518937 A JP 2009518937A JP 2009543240 A JP2009543240 A JP 2009543240A
- Authority
- JP
- Japan
- Prior art keywords
- cells
- circuit
- time
- switching
- cell
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/36—Circuit design at the analogue level
- G06F30/367—Design verification, e.g. using simulation, simulation program with integrated circuit emphasis [SPICE], direct methods or relaxation methods
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本発明は、デジタル回路(3.3)のスイッチング活動状態をモデル化する方法に関する。このデジタル回路(3.3)は、相互接続部(6)によって互いに連結され入力端の少なくとも1つが状態を変化させた時点で切り換わるセル(4.1〜4.L)を含む。回路(3.3)のセルの後続のスイッチングは、この回路のクロック周期(Tclk)中に起こる。本発明によれば、スイッチング活動状態モデルが計算され、それによって、ポアソン統計分布モデルに基づき、クロック周期中に含まれる各サブ時間間隔[tk;tk+1]にわたって切り換わるであろうセルの数が得られ、スイッチングモデルが生成するスイッチング時点が回路のセルに割り当てられる。
【選択図】図1
【選択図】図1
Description
本発明は、デジタル回路のスイッチング活動状態をモデル化する方法に関する。本発明はシミュレーション方法ではないので、本発明は、回路のスイッチング活動状態を決定するための網羅的または疑似網羅的なシミュレーションの代替方法である。本発明により、回路のスイッチング活動状態モデルを、この回路の正確な構成を知る必要なく高速で計算することが可能になる。
本発明には、アナログ回路およびデジタル回路を含む混合信号電子システムの信号完全性ソフトウェアの分野において特に有利な用途がある。非限定的な一例として、電子システムは、単一シリコンブロック上、または同じパッケージ内のいくつかのシリコン基板上に集積回路を包含するとともに、プリント回路上の(集積化された、または集積化されていない)構成要素からなるアセンブリを包含する。
これらの電子システムを製造することは、特にそのシステムが1つまたは複数のシリコン集積構成要素を含む場合、非常に費用のかかる作業である。したがって、大規模な製造を開始する前にすべての製造パラメータを調べ、これらのパラメータのいくつかに、製造される回路が適正に動作する確率を最大にできる値を与えることが不可欠である。
この目的のために、「電子設計自動化ツール」と呼ばれる一連のソフトウェア製品があり、これは電子システム設計を、製造すべきシステムの仕様書の記述から、システムを製造するときに使用されるフォトマスクの製造まで支援する。
電子システムを設計する際の重要な要素の1つは、特に混合信号システムにおいては、回路で生成されるノイズを定量化することである。実際には、製造の前に、ノイズの影響を受けやすい特定の回路が機能するかどうかを判断するために、1つのステップが、システム内の信号の完全性を検証すること、すなわち、システム内部で観測することができるノイズを正確にマッピングすることにある。
この目的のために、ノイズ発生器回路(侵害側)およびノイズの影響を受けやすい回路(被害側)が特定される。より厳密には、システムのすべての回路をノイズ発生器(侵害側)と考えることができる。しかし、デジタル回路、メモリセル、VCO(電圧制御発振器)などのアナログと高周波(RF)の回路、電力増幅器、および入出力回路を含む群からノイズ発生器回路を選択することが好ましい。特にデジタル回路は、その入力信号が切り換わるときにノイズを発生する傾向がある。もちろん、少なくとも1つのノイズ発生器回路を備える回路は、それ自体ノイズ発生器回路と考えられる。
ノイズの影響を受けやすい回路(被害側)は、増幅器、フィルタ、発振器、ミキサ、サンプラーブロッカー、デジタルメモリ回路、位相ループ、入力/出力回路、および電圧基準回路などのアナログ回路およびRF回路を含む群から選択される。もちろん、ノイズの影響を受けやすい回路を少なくとも1つ含む回路は、それ自体ノイズの影響を受けやすいと考えられる。
侵害側で発生したノイズは、内部に回路が集積されている基板、金属製相互接続部およびパッケージを通って被害側に向かって広がる。このノイズは、被害側の性能を劣化させる傾向がある。したがって、ノイズとは、侵害側ブロックで発生し、被害側に望ましくない影響を及ぼすあらゆる信号を意味する。
より具体的には、これらのシステム内で識別可能なノイズは、システムのデジタル回路を構成するデジタルセルのスイッチング活動状態と関連する。したがって、設計支援ソフトウェアでは、どの時点でセルがノイズを電子システム内部に注入するかを決定するために、集積回路のデジタル部のスイッチング活動状態を知ること、すなわち各セルが切り換わる時点を知ることが必要になりうる。
切り換わるセルは、その入力が論理状態を変化させるセルであり、論理状態(0または1)はある電圧の範囲に対応する。論理状態0は、例えばセルの電源電圧の0〜5%の間の電圧に対応することがあり、論理状態1は、例えばセルの電源電圧の95〜100%の間の電圧に対応することがある。セルは、その入力の1つが状態を変化させるとすぐに内部活動状態を示す。
集積化システム用の信号完全性ソフトウェアの特定の問題に関して製造前に、この回路内で支配的なスイッチング活動状態の範囲を決定することが有用なことがある。すなわち、回路の最大数のセルが切り換わる最大活動状態、最小数のセルが切り換わる最小活動状態、あるいは回路が動作しているときに最も多く識別可能な活動状態である平均活動状態を決定することが有用なことがある。この回路で発生する最大、最小および平均ノイズを再現するために、これらの最大、最小および平均の活動状態レベルから、回路および/または素子で消費される最大電力など、電源を特定の大きさにするデータを導き出すことが可能である。
デジタル回路のスイッチング活動状態を決定するのに既知の方法を用いる場合は、その回路の挙動を網羅的または疑似網羅的にシミュレートする。網羅的シミュレーションでは、可能なすべての入力信号の組合せ(すなわちテストパターン)を回路の一次入力端、すなわち外部から制御可能な入力端に加える。次に、どの時点で各セルがそれぞれの入力信号に基づいて切り換わるかを観測する。
疑似網羅的なシミュレーションでは、可能なすべての組合せから無作為に選択できる特定の信号の組合せを回路の入力端に加える。次に、可能なすべてのテストパターンと比較したケース抽出からスイッチング活動状態推定量を構築する。
スイッチング活動状態は、平均であろうと限度であろうと、回路のSPICEトランジスタレベルモデルを使用して決定することができる。このモデル化は、所与の入力信号に対するスイッチング活動状態を非常に正確にシミュレートすることを可能にするが、多くの資源を必要とし、小規模の回路についてのみ適用可能である。
非常に多数の論理ゲート、すなわち一例では数百万の論理ゲートを含みうるVLSI(超大規模集積)回路のシミュレーションに使用される挙動モデル(VHDL、VERILOG)を用いて、スイッチング活動状態をシミュレートすることも可能である。
挙動シミュレーション法は、それぞれ異なるシミュレーションレベルを提供する。第1のレベルは、情報伝搬時間が考慮されない、セルの厳密な意味における機能シミュレーションである。第2のシミュレーションレベルでは、セルの内部スイッチング時間(1つの論理状態から別の論理状態に切り換わるための時間)を考慮に入れる。第3のシミュレーションレベルでは、内部スイッチング時間だけでなく、セル間の線路上での情報伝達時間(線遅延)も考慮に入れる。
しかし、挙動シミュレーション技法、またはSPICEモデル化などの詳細シミュレーション技法は、平均および/または限度の活動状態を計算するための多数のテストパターンを使用する必要がある。2つの論理状態を取ることができるN個の入力端では、網羅的処理のために2N×2N−1個のテストパターンを回路の一次入力端に加える必要があり、これは非常に長い処理時間になる。
グラフ分析シミュレーション、ペトリネットワーク、マルコフ連鎖に基づく方法、または確率マトリクスなどの他の方法もまた、セルのスイッチング活動状態の決定を可能にする。これらの非シミュレーション技法は、各セルの確率的挙動に基づくものであり、デジタル回路の挙動データを生成する。これらの技法では、デジタル回路は、限定されたテストパターンに特に対応するのではなく、セルの平均挙動に対応する。しかし、これらのグラフ分析技法は、回路の平均活動状態を明らかにするだけである。
さらに、シミュレーション技法でもグラフ分析に基づく技法でも、回路の全体構成についての知識が必要である。したがって、基礎設計中またはRTLシミュレーション状態中でのスイッチング活動状態の推定、すなわち論理システム設計前のスイッチング活動状態の推定は、回路ゲート数しか分かっていない場合では、既知の方法を用いると不可能である。
本発明は、既存の技法の複雑な実施から生じる問題の解決策を提供し、回路の全体構成が分かっていない場合により広い応用分野を提供する。
本発明は、デジタル回路内を信号がどのように伝達されるかに関する簡単な発見に由来する。デジタル回路がクロック信号によって励起されるとき、かつ/またはこの回路の入力端に励起信号が印加されることによって励起されるとき、この回路の入力端に接続されたセルが切り換わり、それに接続された後続のセルに信号を伝達し、このようにして信号が回路内で段階的に伝達される。したがって、スイッチング活動状態は、それが活動状態ピークに達するまで高まる。次いで活動状態は、別のセルがこのクロック信号、またはこの励起信号に対して切り換わるまで低下する。
したがって、経験に基づいて、スイッチング活動状態の変化に関するこの発見に概ね一致するスイッチング活動状態プロファイルモデルを適用することができる。これらの活動状態プロファイルは、正規分布モデルまたはポアソン分布モデルなどの周知の統計的分布モデルにより得ることができる。
なされた発見に最も関係のある統計的分布はポアソン分布であり、これは、デジタルセルの「サービス」、または「待ち行列」の概念を導入する。したがって、このサービスの概念と、特定の励起信号に対して切り換わるであろうセルの数との間に対応関係を確立する。すなわち、ポアソン分布モデルは、経時的に切り換わるセルの数(分布面積)を示して、最終的に、所与のクロックエッジまたは励起信号に対して切り換わるセルの数を表す総面積を与える。
この目的のために、ポアソン数学モデルが、セルの実際のスイッチング活動状態を明らかにする物理的基準に実験的に応用される。言い換えると、このモデルは、スイッチング時点の分布がそれに応じて時間の関数として変化すると思われる物理的パラメータに応用される。
したがって、応用されるポアソン分布は、切り換わるであろうセルの数(推定または確定)と、各セルに対して発生する平均ファンアウト値と、1つのセルから別のセルまで情報を伝送するための最小時間とによってパラメータ化が可能である。
各セルのファンアウトは、考察する各セルの出力端に接続されたセルの数を示す。一方、最小伝送時間は、ゲート遅延と線遅延の合計の最小値である。
このポアソン分布には、デジタル回路内部のスイッチング活動状態を、この回路のセルおよびそれらの間の接続部についての完全な記述を正確に知らないでモデル化することが可能になるという利点がある。セル母集団に関する簡単な1片の情報(セルの数、平均ファンアウトなど)があれば、設計の流れの初期、例えばデジタル回路の論理システム設計の前に、回路のスイッチング活動状態をモデル化することが可能である。
より詳細には、このスイッチング活動状態の分析に基づいて、電源を特定の大きさにすることが可能であり、また、混合信号システム内のノイズのマップを創り出すために、ノイズ注入をモデル化するセルのマクロモデルとスイッチング時点を関連付けることが可能である。
したがって本発明は、デジタル回路のスイッチング活動状態をモデル化する方法に関し、このデジタル回路は、相互接続部によって互いに連結されたセルを含み、これらのセルは、その入力端の少なくとも1つが状態を変化させた時点で切り換わる。この回路のセルの後続のスイッチングがクロック周期Tclk中に起こり、このクロック周期Tclkは、回路内に入力される信号がこのデジタル回路のセルによって処理される時間であり、
クロック周期が時間間隔に分割されるので、それが、
応用統計モデルに基づいて、クロック周期の各時間間隔にわたって切り換わるであろうセルの数を計算するステップと、
その時間間隔にわたって切り換わるであろうセルの数についての知識に基づいて、デジタル回路の別々のセルにスイッチング時点を割り当てるステップとを含むことを特徴とする。
クロック周期が時間間隔に分割されるので、それが、
応用統計モデルに基づいて、クロック周期の各時間間隔にわたって切り換わるであろうセルの数を計算するステップと、
その時間間隔にわたって切り換わるであろうセルの数についての知識に基づいて、デジタル回路の別々のセルにスイッチング時点を割り当てるステップとを含むことを特徴とする。
本発明は、以下の説明を読み、添付の図を検討すればよりよく理解されるであろう。これらの図は、説明のみを目的として示したものであり、本発明を何ら限定するものではない。これらの図は以下を示す。
同じ要素には、1つの図から別の図まで同じ参照符号が保持される。
図1は、アナログブロック2.1〜2.Q、およびデジタルブロック3.1〜3.Kを含む混合信号電子システム1の概略図である。デジタルブロック3.3は、デジタルセル4.1〜4.Lを含む。各セル4.1〜4.Lは、1つまたは複数の論理ゲートを含み、特定の機能を実行する。これらのセル4.1〜4.Lは、相互接続部6によって互いに連結されている。これらのセル4.1〜4.Lの状態変化は、ブロック3.3のクロック入力端に加えられるクロック信号CLKによって同期される。
このクロック信号CLKは周期Tclkを有し、この周期にわたって、ブロックの一次入力端E1〜ENに加えられた信号がブロック3.3のセル4.1〜4.Lで処理される。
例えば、デジタルブロック3.3のスイッチング活動状態モデルを決定するには、次式による適合離散ポアソン分布を用いる。
ここで、
すなわちポアソン分布は、セルの平均ファンアウト
および切り換わるであろうセルの数Naに適合されている。ここでkは正の整数である。
より詳細には、Naは、クロック周期Tclkにわたって呼び出されるであろう回路のセル、すなわちその入力端で変化を受け取るであろうセルの数である。Naは、ポアソン分布の単位面積(=1)をセルの数Naに対応させるために用いられる。
Naは、それがブロック3.3のセルの数Lと等しくなるように選択することができる。しかし一般には、入力が状態を変化させるセルが、状態を変化させない出力を有することがあるので、切り換わるであろうセルの数を回路のセルの総数よりも少なく選択する。ここで、そのようなセルの後に接続された後続のセルは、その入力のどんな修正も受け入れない。したがって、回路に関する技術情報がほとんど入手できない場合は、デジタルブロックの平均スイッチング活動状態を表すNa=L/2を選択する。
変形形態として、Naを決定するのに、セルの呼出確率、およびセル間の別々のノードの状態変化の確率を用いてグラフを分析することができる。ノードは、いくつかのセルの間の相互接続部に相当する。
は、回路のセルのうち切り換わるセルの平均ファンアウト、すなわち、その回路の各セルの出力端に接続されたセルの平均数である。例えば、1つの出力端が他の2つのセルの各入力端に接続された第1のセルと、1つの出力端が別の1つのセルの入力端に接続された第2のセルとを有する回路では、そのファンアウトは(2+1)/2=1.5になる。
実際には、ネットリストと呼ばれるブロック3.3についての情報リストから平均ファンアウトを求めることが可能である。このネットリストは、セル4.1〜4.L、およびこれらのセルの間の相互接続部についての情報を含む。この情報が入手できない場合は、電子回路の平均ファンアウトを初期仮定として2、3または4に等しいとしてよいことが経験から分かっている。
また、時間kの離散単位を時点tk−k×tmに一致させることによって、離散分布を応用する。kは[0;int(Tclk/tm)]に属する整数であり、int(Tclk/tm)はTclk/tmの全体部分を表す。tmは、デジタルブロック3.3内で1つのセルから別のセルまで情報を伝送するための最小時間である。
期間tmは、一方が他方の入力端に接続されそれを制御する、2つの連続したセルの2つのスイッチングを分離する最小時間によって定義される。期間tmは2つの時間の組合せからなる。その第1はセルのスイッチング時間であり、セルの入力端の1つが立上がりエッジまたは立下がりエッジを受け取ったときに、セルが状態を変化させるための時間である。第2はセル間の信号伝送時間であり、具体的にはRCラインネットワーク、およびセル4.1〜4.Lの入力静電容量に結合したセル間相互接続部上での信号伝搬時間に相当する。Tclkよりも短い期間tmはまた、連続した2つのセルの2つのスイッチング間の最小時間以外の定数とすることもできる。
一実施では、[0...int(Tclk/tm)]に属する整数kに対するD[k]の各値を計算し、これらの値を離散時点tk=k.tmと関連付ける。こうして、図1に表された点を得る。この図の離散分布D[K]は、ブロック3.3についてNa=50、
tm=1ms、およびTclk=17msの場合に得られたことに注意されたい。
次に、時間間隔[tk;tk+1]について分散値を計算する。これを行うために、次式を用いてD[k]とD[k+1]の間で直線補間を実行する。
S[i]=(D[k+1]+D[k])/2
ここで、間隔iは[0;int(Tclk/tm)−1]に属する整数であり、int(Tclk/tm)はTclk/tmの整数部を表す。
ここで、間隔iは[0;int(Tclk/tm)−1]に属する整数であり、int(Tclk/tm)はTclk/tmの整数部を表す。
したがって、例えばD[0]=1およびD[1]=3.3の場合、[t0;t1]での直線補間はS[i]=2.15になる。
S[i]の整数部に時間間隔tmを乗算することによって、各時間間隔にわたってポアソン分布面積の近似値を得る。言い換えると、この時間間隔中に切り換わるであろうセルの近似数を得る。こうして得られた値は実効値である。
計算されたこれらの実効値を、所与の時間間隔にわたってセルの全数が呼び出される実際の状況に適合させるために、S[i]・tmの実効値を整数として再配分する。
この目的のために、S[i]・tmを最も近い整数に丸め、この丸めた整数を対応する間隔に関連付ける。したがって、時間間隔[t0;t1]にわたって切り換わるであろうセルの数は、(2.15・tm)の整数部と等しくなる。
こうして棒グラフ12が得られ、それぞれの棒13の面積が、各時間間隔[tk;tk+1]で切り換わるであろうセルの自然数を与える。棒13すべての面積は、クロック周期Tclkの間に呼び出されるであろう(言い換えると、切り換わるであろう)セルの総数と等しい。
図2のアルゴリズムのうち、各間隔[tk;tk+1]に対して用いられるループ内に含まれた部分Aの命令は、1つの間隔にわたって切り換わるセルの自然数を計算することを可能にする。この目的のために、S[i]にtmを乗算したものに等しい「サブ面積」変数を定義する。また、ROUND関数を用いて、この変数を最も近い整数に丸め、それを「Cells_called_in_delay」変数に格納する。この変数は、1つの間隔中に呼び出されるセルの物理(自然)数に対応しうる棒13の面積に等しい。
さらに、面積の実効値と、最も近い整数に丸めたこの面積との差14がメモリ内に記憶され、他の各間隔[tk;tk+1]にわたって存在する他のそれぞれの差と合計される。この差の整数部がゼロに等しくない場合には、この整数部(正または負)を、後続の間隔にわたって切り換わるであろうセルの数に加算する。こうして、各棒13の総面積が確実にNaに等しくなるようにする。言い換えると、棒の面積と、最も近い整数に丸めたこの面積との間に存在しうる差をグラフ全体にわたって再配分する。
図2のアルゴリズムの部分Bは、計算された差14を再配分することを可能にする命令を含む。この目的のために、「difference」変数は、実際のセルの値と、最も近い整数に丸めたこれらの値との差の合計に対応する。「difference」変数の整数部(INT)は、この整数部が0と異なる場合、時間間隔にわたって切り換わるであろうセルの数に加算される。しかし、一般には、最も近い整数に丸められた値と、端数を切り捨てた値との差は、自然に互いに相殺することがあり、その場合には、本発明による方法を用いるのにこの相殺計算を実行する必要がない。
さらに、本発明による方法では、第1の時間間隔[t0;t1]にわたって少なくとも1つのセルが、この第1の時間間隔中に切り換わるセルの数を最も近い整数に丸めたものがたとえ0であっても、切り換わるものと想定する。この選択は、ブロック3.3のスイッチング活動状態の開始時に少なくとも1つのセルが切り換わることが明らかであるので、スイッチングセルの挙動を最善に近似することを可能にする。しかし、本発明による方法を用いるのに、第1の時間間隔[t0;t1]にわたって少なくとも1つのセルが切り換わるものと想定する必要はない。
したがって、図2のアルゴリズムの部分Cは、第1の時間間隔中に少なくとも1つのセルが確実に切り換わるようにすることを可能にする命令を含む。この目的のために、第1の間隔(k=1)が関係する場合で、かつこの間隔にわたって切り換わるであろうセルの数が0に等しい場合(Cells_called_in_delay=0)、この第1の間隔中にわたって切り換わるであろうセルの数に値1を割り当てる。こうして「difference」変数を1だけ減分する。
また、回路の動作中に観測できるセルのスイッチングの連続性も維持する。実際には、切り換わるセルがそれ以上ない場合は、これは、切り換わるであろうすべてのセルが切り換わったことを意味する。したがって、回路の切り換わるであろうすべてのセルがまだ呼び出されていない場合は、間隔[tk;tk+1]にゼロのセルの値を割り当てないようにする。言い換えると、セルを切り換えることなく間隔を空けて後で切換えを再開しないようにする。というのは、切換えをしないこれらの間隔は、回路の情報処理の連続性の点で矛盾するからである。
したがって、図2のアルゴリズムの部分Dは、非ゼロの値を「Cells_called_in_delay」変数に割り当てることを可能にし、この変数は、前述のように、1つの間隔中に呼び出されるであろうセルの数を、この間隔中のセルの数がアルゴリズムによりゼロに等しいはずであるが、ポアソン曲線の面積がブロック3.3内で切り換わるであろうセルの数(Na)に等しくない場合に、表す。その間隔に割り当てられたこのセルを後続の間隔にわたって相殺するために、ここで再び「difference」変数が1だけ減分される。
棒グラフ12を得た後で、各時間間隔[tk;tk+1]にわたって各セルにランダム時間を割り当てる。この時間は、時間間隔[tk;tk+1]、およびこの時間間隔にわたって切り換わるであろうセルでは、k・tm+rand()・tmに等しい。ここでrand()は、0と1の間のランダム値を与える関数である。この選択は、呼出しがある間隔にわたって、kを整数とする厳密ではない時点k・tmで行われる(これもまた可能性がありうる)時間間隔[tk;tk+1]内で、現在の呼出しを容易にすることを可能にする。
ここで例えば、2つのセルを無作為に選択し、それにそれぞれ、クロック周期の開始と比べて例えばtm+0.1tmおよびtm+0.3tmに等しいスイッチング時点を割り当てる。次に、[t1;t2]にわたって、クロック周期の開始と比べて時点2tm+rand()・tmなどで呼び出される別の5つのセルを無作為に選択する。セルは置換えなしで選択される。すなわち、あるセルがひとたび無作為に選択されれば、それが無作為に選択される可能性はもはやない。
実際には、ポアソンモデルによりスイッチング活動状態をモデル化する場合、グリッチ、すなわち1つのセルの、回路の情報処理に有用ではない連続呼出しは無視する。次に、各間隔の間に呼び出されたセルの数の変化を得る。
ブロック3.3のセル4.1〜4.Lに対するスイッチング時点の分布は、クロック信号CLKすなわち基準信号の立上がりエッジ17または立下がりエッジ18が識別可能であるごとに生じる。単一の基準信号が、電子システムのすべてのデジタルブロックに対して規定される。
しかし、図3に示すように、デジタルブロック3.1〜3.Kは、クロック周期Tclkにわたっていくつかのスイッチング活動状態プロファイル12を有することがあり、同一の活動状態プロファイルがそのクロック周期内で繰り返される。2つの連続プロファイル12は、非ゼロ時間によって互いに分離することができる。
このスイッチングプロファイルの増加は、デジタルブロック3.1〜3.Kがクロック信号CLKの周波数の多重周波数fmult=1/Tmultで動作する場合に観測することができる。この場合、スイッチングプロファイルは、Tclock/Tmult回繰り返される。
プロファイルの増加はまた、異なるエッジについても、例えば立上がりクロックエッジおよび立下がりクロックエッジについても観測することができる。この場合には、同一のポアソンモデルが両方のエッジについて繰り返される。
示した例では、デジタルブロック3は、クロック信号CLKの周波数よりも4倍高い周波数で動作する。
システムの基準周期Tclkの開始と、デジタルブロック3.1〜3.Kのスイッチング活動状態の開始との間に時間遅れTdがありうる。この時間遅れTdは、例えば、デジタルブロックに加えられる前に他の回路またはクロックツリーを通るクロック信号に関連したデジタルブロック3.1〜3.Kの応答時間に起因することがある。
さらに、いくつかのデジタル回路3.1〜3.Kを含む混合信号システム1では、回路ごとにスイッチング時点の分布を有することができ、各回路3.1〜3.Kの活動状態をモデル化することができる。その場合、各デジタル回路3.1〜3.Kに特定的な適合ポアソン分布のパラメータ組を使用する。
特定の一応用例では、デジタルブロック3.3内の識別可能なノイズを計算するために、ノイズ注入スペクトルをセル4.1〜4.Lと関連付けるとともに、注入ノイズ波形の実効呼出し時間を得るためにクロックエッジと比べた時間とも関連付ける。この時間は、ポアソンモデリング12を用いて計算される。こうして、周波数遅延演算子を乗算したスペクトルである、結果として生じたスペクトルを各セルについて得る。次いで、これら結果として生じたスペクトルを組み合わせて、ブロックの総合ノイズを計算することが可能である。次にまた、これらのブロックノイズを組み合わせて、所与のスイッチング活動状態モデルに対してシステム1内に注入される総合ノイズを計算することが可能である。
変形形態として、図4に示すように、同じ数のセルが切り換わった別々の時間間隔[tq;tq+1]をサーチする。
この目的のために、連続関数P(t)によって、例えば、最小自乗近似法を用いて得られた式P(t)=a0+a1・t+a2・t2+...+ar・trを用いた多項式関数によって時点tkと関連する離散ポアソン分布D[k]を近似する。次に、ポアソン分布を連続的に表したものを得るが、離散値D[k]と比べて誤差がごくわずかである。
曲線P(t)の下の面積は、この面積と関連する時間間隔で切り換わるであろうセルの数を示す。したがって、曲線P(t)の下の総面積31は、デジタル回路の切り換わるであろうセルの総数Naと等しい。切り換わるであろうとみなされるNa個のセルは、前記の方法で無作為に選択される。
時間の関数として切り換わった総セルの変化を得るために、関数P(t)を[0,Tclk]において積分して(32)、グラフが示されている関数F(t)を得る。この積分は、関数P(t)が多項式であるので、計算するのが容易である。曲線F(t)は、クロック周期Tclkの開始時には回路のどのセルもまだ切り換わっておらず、クロック周期Tclkの終わりにはすべての切り換わるであろうセルNaが切り換わっているように増加する。
次に、同じ数Na/n個のセルがそれぞれの間隔で切り換わるであろうn個の時間間隔[tq;tq+1]を探して選ぶ。nは、Na/nがセルの自然数になるように選択される。図4に示した例では、n=6で、Naは6の倍数である。
この目的のために、呼び出されるセルの数のそれぞれ異なる値について関数F(t)を解くが、これらの値は呼出しの数Na/nの倍数である。したがって、F(tq)=q×Na/nでqの整数が1からnまでの範囲について、すなわちF(t1)=Na/n、F(t2)=2Na/n、F(t3)=Na/n、...、F(tn)=Naまでについて、tqを探して選ぶ。
ここから一連の間隔[tq;tq+1]を導き出して、表に格納される領域A1〜Anの境界を定める。次に、関数時間軸P(t)を区切る。次に、曲線P(t)の領域A1〜Anの各下位区分に対し同じ数の呼出しセルを含む別々の呼出し間隔[tq;tq+1]を得る。したがって、次式を得る。
(tq+2−tq+1)≠(tq+1−tq)
また、
また、
ここで、A1=A2=A3...=Anである。
時間間隔[tq;tq+1]には、経時的に減少し、次いで再び増加する期間があることに注目する。クロック周期Tclk中では、スイッチング活動状態が、活動状態の最大値まで増大し、次いで低下する傾向がある。
次に、切り換わるであろうNa個のセルにスイッチング時間を割り当てる。この目的のために、まずスイッチング間隔[tq;tq+1]を無作為に選択する。
次に、選択した間隔内で呼出し時間を規定する。この呼出し時間はtq+rand()×(tq+1−tq)に等しい。rand()は、0と1の間の値を与える確率関数であると分かっている。
また、呼出し時間をセルに割り当てる。所与の間隔[tq;tq+1]について、セルへのランダム呼出し時間の割当てはNa/n回繰り返される。
呼出し時間がすでに割り当てられたセルに呼出し時間を割り当てることは不可能であると想定する。統計的な見地から、こうしてセルが置き換えなしに選択される。
前述のように、スイッチングプロファイルは、1つのクロック周期Tclk内で数回繰り返されることがある。
もちろん、本発明による方法の異なるステップを電子回路によって、またはコンピュータで実行されるソフトウェアを用いて実施することができる。このソフトウェアは、ディスケット、CD、DVD、USBメモリ、または他の任意の等価な媒体に記憶される。本発明は、本発明による予備スイッチング活動状態モデル化ステップを含む回路製作方法、ならびに本発明を実施することを可能にするソフトウェアに及ぶ。
Claims (17)
- デジタル回路(3.3)のスイッチング活動状態をモデル化するための方法を用いるソフトウェアまたは電子回路であって、このデジタル回路(3.3)が、相互接続部(6)によって互いに連結されたセル(4.1〜4.L)を含み、これらのセル(4.1〜4.L)が、その入力端の少なくとも1つが状態を変化させた時点で切り換わり、前記回路(3.3)のセルの後続のスイッチングが、この回路のクロック周期Tclk中に起こり、このクロック周期Tclkが、前記回路入力端に加えられた信号がこのデジタル回路(3.3)のセルによって処理される時間であり、
前記クロック周期が時間間隔[tk;tk+1]に分割されるときに、それが、
応用統計モデルに基づいて、前記クロック周期の各時間間隔[tk;tk+1]にわたって切り換わるであろうセルの数を計算するステップと、
前記時間間隔[tk;tk+1]にわたって切り換わるであろうセルの数についての知識に基づいて、前記デジタル回路(3.3)の別々のセル(4.1〜4.L)にスイッチング時点を割り当てるステップとを含むことを特徴とする、ソフトウェアまたは電子回路。 - 請求項1に記載のソフトウェアを使用するコンピュータ。
- 前記統計モデルがポアソン統計分布モデルであることを特徴とする、請求項1または2に記載のソフトウェア、電子回路、またはコンピュータ。
- 前記ポアソンモデルが次式を用いた応用モデルであり、
ここで
であり、
tkがtk=k・tmに等しく、kが、[0;int(Tclk/tm)]に属する整数であり、tmが、前記クロック周期Tclkよりも短い一定期間であり、
Naが、前記回路の、クロック周期Tclkにわたって呼び出されるであろうセルの数であり、
が、各セルの出力端に接続されたセルの平均数であることを特徴とする、請求項3に記載のソフトウェア、電子回路、またはコンピュータ。 - 前記回路の切り換わるであろうセルの数(Na)が、前記回路のセルの数(L)に等しいこと、あるいは前記回路のセルのこの数の半分に、この回路の平均スイッチング活動状態で等しいことを特徴とする、請求項4に記載のソフトウェア、電子回路、またはコンピュータ。
- セルの数(Na)が、前記セルに対する呼出し確率と、セル間の別々のノードの状態変化の確率とに関するグラフの分析によって決定されることを特徴とし、ノードがいくつかのセル間の相互接続部に相当する、請求項4に記載のソフトウェア、電子回路、またはコンピュータ。
- tmが、前記デジタル回路内で1つのセルから別のセルまで情報を伝送するための最小期間であることを特徴とし、この伝送期間がセルの最小スイッチング時間と、相互接続部を介する信号の最小伝送時間とを含む、請求項4から6の一項に記載のソフトウェア、電子回路、またはコンピュータ。
- ある時間間隔にわたって切り換わるであろうセルの数を計算するために、
前記時間間隔でのD[k]とD[k+1]の間の直線補間を計算するステップであって、ここでS[i]=(D[k+1]+D[k])/2であり、iが[0;int(Tclk/tm)−1]に属し、int(Tclk/tm)がTclk/tmの整数部を表すステップと、
各時間間隔[tk;tk+1]にわたって前記応用ポアソン分布の面積の近似値を得るために、S[i]に前記時間間隔tmを乗算するステップと、
各時間間隔[tk;tk+1]で切り換わるであろうセルの自然数を得るために、S[i]・tmの値を最も近い整数に丸めるステップとが実行されることを特徴とする、請求項4から7の一項に記載のソフトウェア、電子回路、またはコンピュータ。 - すべての時間間隔にわたってS[i]・tmの実際値とS[i]・tmの整数値との差を相殺するステップを含むことを特徴とする、請求項8に記載のソフトウェア、電子回路、またはコンピュータ。
- 前記スイッチング活動状態の開始時に、すなわち第1の時間間隔[t0;t1]にわたって、切り換わるセルの数をそれが少なくとも1に等しくなるように適合させるステップを含むことを特徴とする、請求項8または9に記載のソフトウェア、電子回路、またはコンピュータ。
- 前記セル(4.1〜4.L)のスイッチング活動状態において連鎖を維持するステップであって、間隔[tk;tk+1]にわたって切り換わるであろうセルの数がゼロになる場合は、前記回路の切り換わるであろうすべてのセルが切り換わっていなければならないステップを含むことを特徴とする、請求項8から10の一項に記載のソフトウェア、電子回路、またはコンピュータ。
- 別々のセルにスイッチング時点を割り当てるために、各時間間隔[tk;tk+1]ごとに、
この時間間隔にわたって切り換わるであろうセルの数に等しい数のセルを前記回路内で無作為に選択するステップと、
これら無作為に選択したセルに、前記時間間隔[tk;tk+1]にわたってそれ自体が無作為に選択されたスイッチング時点を割り当てるステップとを含み、
このスイッチング時点がk・tm+rand()・tmに等しく、tmが時間間隔[tk;tk+1]の期間に等しく、かつrand()が0と1の間のランダム値であることを特徴とする、請求項8から11の一項に記載のソフトウェア、電子回路、またはコンピュータ。 - スイッチング時点を割り当てられたセルが無作為に選択される可能性はもはやないことを特徴とする請求項12に記載のソフトウェア、電子回路、またはコンピュータ。
- 時点tkと関連する離散分布D[k]を最小自乗法により近似して連続多項式関数P(t)を計算するステップと、
期間[0;Tclk]について連続関数P(t)を積分し、関数F(t)を得るステップと、
[0〜n]からのqの整数について、Na/nが自然数になるようにnが選択されたF(tq)=q×Na/nを解くことによってtqを見出すステップと、
同じ数Na/n個のセルがそれぞれの間隔で切り換わるであろう連続するn個の時間間隔[tq;tq+1]を導き出すステップと
これらの間隔に基づいてスイッチング時間を、切り換わるであろうと無作為に選択されたNa個のセルに割り当てるステップとを含むことを特徴とする、請求項3から7の一項に記載のソフトウェア、電子回路、またはコンピュータ。 - 前記セルのそれぞれにスイッチング時間を割り当てるために、
時間間隔[tq;tq+1]を無作為に選択するステップと、
前記選択した間隔内で呼出し時間を計算するステップであって、この呼出し時間がtq+rand()×(tq+1−tq)に等しく、rand()が、0と1の間の値を与える確率関数であるステップと、
前記呼出し時間をセルに割り当てるステップであって、セルへの呼出し時間の割当てが所与の各間隔[tq;tq+1]に対してNa/n回繰り返されるステップとを含むことを特徴とする、請求項14に記載のソフトウェア、電子回路、またはコンピュータ。 - 前記デジタル回路(3.3)が前記クロック信号(CLK)の多重周波数(fmult)で動作する、あるいは前記クロック信号の立上がりエッジまたは立下がりエッジで動作する場合、いくつかのポアソンモデルが前記クロック周期Tclk内で用いられて、前記回路のスイッチング活動状態が決定されることを特徴とする、請求項1から15の一項に記載のソフトウェア、電子回路、またはコンピュータ。
- 請求項1から16のいずれかに記載の決定予備スイッチング活動状態モデル化ステップを含む製造方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0652987A FR2903794B1 (fr) | 2006-07-13 | 2006-07-13 | Procede de modelisation de l'activite de commutation d'un circuit numerique |
PCT/FR2007/051646 WO2008007026A2 (fr) | 2006-07-13 | 2007-07-12 | Procédé de modélisation de l'activité de commutation d'un circuit numérique |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009543240A true JP2009543240A (ja) | 2009-12-03 |
Family
ID=37451179
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009518937A Pending JP2009543240A (ja) | 2006-07-13 | 2007-07-12 | デジタル回路のスイッチング活動状態をモデル化する方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20100017173A1 (ja) |
JP (1) | JP2009543240A (ja) |
FR (1) | FR2903794B1 (ja) |
WO (1) | WO2008007026A2 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8191022B2 (en) * | 2008-07-15 | 2012-05-29 | Rambus Inc. | Stochastic steady state circuit analyses |
EP2564303A4 (en) | 2010-04-26 | 2015-01-07 | Blackberry Ltd | PORTABLE ELECTRONIC DEVICE AND CONTROL METHOD THEREFOR |
US9710590B2 (en) * | 2014-12-31 | 2017-07-18 | Arteris, Inc. | Estimation of chip floorplan activity distribution |
KR20160123452A (ko) * | 2015-04-15 | 2016-10-26 | 삼성디스플레이 주식회사 | 유기 발광 표시 장치 및 그의 구동 방법 |
WO2017012075A1 (zh) * | 2015-07-21 | 2017-01-26 | 深圳市柔宇科技有限公司 | 像素电路及其驱动方法、显示面板 |
US11093675B1 (en) * | 2020-03-18 | 2021-08-17 | International Business Machines Corporation | Statistical timing analysis considering multiple-input switching |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002231813A (ja) * | 2001-02-02 | 2002-08-16 | Handotai Rikougaku Kenkyu Center:Kk | 半導体集積回路における電源電流波形の解析方法及び解析装置 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2316572B (en) * | 1996-08-14 | 2000-12-20 | Fujitsu Ltd | Multicasting in switching apparatus |
CA2617235A1 (en) * | 2004-08-06 | 2006-02-16 | Entaire Global Intellectual Property, Inc. | Computer system for actively monitoring and enhancing the collateral security for a portfolio of loans to facilitate financing and securitization |
US7821996B2 (en) * | 2005-10-27 | 2010-10-26 | Motorola Mobility, Inc. | Mobility enhancement for real time service over high speed downlink packet access (HSDPA) |
FR2897178B1 (fr) * | 2006-02-07 | 2008-09-05 | Coupling Wave Solutions Cws Sa | Procede d'estimation d'un bruit genere dans un systeme electronique et procede de test d'immunite au bruit associe |
US7797217B2 (en) * | 2006-03-15 | 2010-09-14 | Entaire Global Intellectual Property, Inc. | System for managing the total risk exposure for a portfolio of loans |
US8112340B2 (en) * | 2006-05-12 | 2012-02-07 | Standard & Poor's Financial Services Llc | Collateralized debt obligation evaluation system and method |
FR2902910B1 (fr) * | 2006-06-26 | 2008-10-10 | Coupling Wave Solutions Cws Sa | Procede de modelisation du bruit injecte dans un systeme electronique |
-
2006
- 2006-07-13 FR FR0652987A patent/FR2903794B1/fr not_active Expired - Fee Related
-
2007
- 2007-07-12 JP JP2009518937A patent/JP2009543240A/ja active Pending
- 2007-07-12 US US12/373,483 patent/US20100017173A1/en not_active Abandoned
- 2007-07-12 WO PCT/FR2007/051646 patent/WO2008007026A2/fr active Application Filing
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002231813A (ja) * | 2001-02-02 | 2002-08-16 | Handotai Rikougaku Kenkyu Center:Kk | 半導体集積回路における電源電流波形の解析方法及び解析装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2008007026A3 (fr) | 2008-03-06 |
FR2903794B1 (fr) | 2008-09-05 |
WO2008007026A2 (fr) | 2008-01-17 |
FR2903794A1 (fr) | 2008-01-18 |
US20100017173A1 (en) | 2010-01-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4719265B2 (ja) | 確率的相互接続構造設計のためのシステムおよび方法 | |
US7117466B2 (en) | System and method for correlated process pessimism removal for static timing analysis | |
Hauck et al. | An evaluation of bipartitioning techniques | |
JP5104940B2 (ja) | 回路のジッタを計算する方法、論理装置及びシステム並びに回路のクロックツリーを合成する方法、論理装置及びシステム | |
US8726211B2 (en) | Generating an equivalent waveform model in static timing analysis | |
JP2009543240A (ja) | デジタル回路のスイッチング活動状態をモデル化する方法 | |
JP2009526285A (ja) | 電子システム内で発生するノイズを推定する方法、およびノイズ耐性を試験する関連方法 | |
US7240304B2 (en) | Method for voltage drop analysis in integreted circuits | |
JP5165564B2 (ja) | 集積回路設計を支援する方法および装置 | |
US7313510B2 (en) | Methods for estimating power requirements of circuit designs | |
JP2003076740A (ja) | 集積回路チップにおける電力分配を分析する方法とシステム | |
US8069024B1 (en) | Replicant simulation | |
US20030212538A1 (en) | Method for full-chip vectorless dynamic IR and timing impact analysis in IC designs | |
Singh et al. | Congestion-aware topology optimization of structured power/ground networks | |
US20040236560A1 (en) | Power estimation using functional verification | |
CN104036090A (zh) | 电路优化方法及装置 | |
Abdelli et al. | High-level power estimation of fpga | |
US7007256B2 (en) | Method and apparatus for power consumption analysis in global nets | |
US6959250B1 (en) | Method of analyzing electromagnetic interference | |
JP2009541891A (ja) | 電子システムに注入されるノイズをモデル化する方法 | |
US20040236559A1 (en) | Statistical approach for power estimation | |
Gupta et al. | A high-level interconnect power model for design space exploration | |
Lim et al. | A statistical approach to the estimation of delay-dependent switching activities in CMOS combinational circuits | |
Alexander et al. | Algorithms for estimating number of glitches and dynamic power in CMOS circuits with delay variations | |
CN109388839A (zh) | 时钟系统性能分析方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100705 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120110 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120731 |