JP2004013595A - シミュレーション結果検証方法およびシミュレーション結果検証装置 - Google Patents
シミュレーション結果検証方法およびシミュレーション結果検証装置 Download PDFInfo
- Publication number
- JP2004013595A JP2004013595A JP2002167264A JP2002167264A JP2004013595A JP 2004013595 A JP2004013595 A JP 2004013595A JP 2002167264 A JP2002167264 A JP 2002167264A JP 2002167264 A JP2002167264 A JP 2002167264A JP 2004013595 A JP2004013595 A JP 2004013595A
- Authority
- JP
- Japan
- Prior art keywords
- simulation result
- time
- voltage
- verification
- 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
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
Abstract
【解決手段】本発明に係るシミュレーション結果検証方法は、シミュレーション結果と条件情報とが一致するか判定することが可能になり、シミュレーション結果と閾値との関係を目視して検証する必要がなくなるために、検証時間の軽減化を図ることができ、目視による検証ミスを低く押さえることができる。
【選択図】 図5
Description
【発明の属する技術分野】
本発明は、半導体集積回路をシミュレーションし、得られたシミュレーション結果から半導体集積回路を検証するシミュレーション結果検証装置に関する。
【0002】
【従来の技術】
近年、高性能、高集積LSIを実現するためには精度の高い回路設計を行うことが求められており、高精度な回路設計において回路シミュレーターが重要な役割を担っている。回路シミュレーターとは回路情報を示すネットリストを基にして、実際に製造されるLSIを想定したシミュレーションを行うものである。
【0003】
従来のLSIのシミュレーションを図1に示す。回路シミュレーター110にネットリスト106、入力ベクタファイル107、閾値設定ファイル108、プロセスパラメーターライブラリ109の各々の情報を入力する。ネットリスト106はネットリスト出力ツール103を介して、回路構成に必要な素子を含んでいるトランジスタモデルライブラリ101の情報を有している。トランジスタモデルライブラリ101を図2(a)に示すが、トランジスタやインバーターなどが相当する。入力ベクタファイル107は図2(b)に示すように回路の入力ノードに入力する電圧値を時間ごとに記述したものである。閾値設定ファイル108は図2(c)に示すように検証対象のノードに対して閾値を設けることで視覚的に理解しやすい理論値に変換するものである。プロセスパラメーターライブラリ109はトランジスタ等の素子のプロセスばらつきを考慮したファイルを含んでいる。
【0004】
回路シミュレーター110はシミュレーション結果を出力する。波形ビューワ112はシミュレーション結果を読みこんで表示する。図3に波形ビューワ112の画面を示す。I/O[0]とI/O[1]で表されているのが回路の入力ノードの波形であり、WL[0]とSL[0]で表されているのが中間ノードの波形である。図3の波形ビューワは、301で表されるシミュレーション結果や、シミュレーション結果を閾値変換してやることにより得られた論理値302を表示する。図1において、113、114、115は波形ビューワ112の表示内容について目視で回路を検証する工程であり、116は目視での回路の検証が終了したことを示している。117は閾値設定ファイル108の閾値設定がNGだった場合や中間ノードに対して新たに閾値を設定する場合のやり直しを表している。
【0005】
【発明が解決しようとする課題】
しかしながら、従来には以下のような問題があった。
【0006】
図3の波形ビューワにおいて、設定された閾値はシミュレーション結果301を論理値302に変換するものにすぎず、あるノードにおける時間t1〜t2のシミュレーション結果301が所望するものになっているかを確かめることは目視にて確認するしかなかった。
【0007】
本発明の目的は、上記のように、あるノードにおける時間と出力状態との関係を示すシミュレーション結果と、あるノードの時間における出力状態の条件を指定する条件情報とを比較し判定することを目的とする。
【0008】
【課題を解決するための手段】
上記課題を解決する本発明に係るシミュレーション結果検証方法は、シミュレーション結果と条件情報とが一致するか判定することが可能になり、シミュレーション結果と閾値との関係を目視して検証する必要がなくなるために、検証時間の軽減化を図ることができ、目視による検証ミスを低く押さえることができる。
【0009】
上記課題を解決する本発明に係る他のシミュレーション結果検証方法は、シミュレーション結果において実在する時間であって、時間tに前後し、かつ最も近接する時間taからtbへの変化から予測することにより、シミュレーション結果における任意の時間tの電圧を求めることにより、実際に時間tが存在していなくても、時間t1と時間t2での電圧Vを求めることが出来る。
【0010】
上記課題を解決する本発明に係る他のシミュレーション結果検証方法は、次々にシミュレーション結果の時間Tを検索していき、Tが時間tより大きくないときは時間tを時間情報taと時間tにおける電圧を電圧情報Vaとを記憶し、Tが前記tより大きいときは時間tを時間情報tbと時間tにおける電圧を電圧情報Vbとを記憶する。実際にコンピューターを利用することにより、taとtbとVaとVbとを得ることができ、任意の時間tの電圧Vを求めることができる。
【0011】
上記課題を解決する本発明に係る他のシミュレーション結果検証方法は、任意の時間tの電圧を
V=(Vb― Va/tb―ta)×t+Va―(Vb― Va/tb―ta)×ta
という近似式を用いることにより、近似値を求めることができる。
【0012】
シミュレーション結果における任意の時間tが存在しないときに使用することによって、任意の時間tと時間Tが同じときは、近似値を求める必要がないので、早く結果を得ることができる。
【0013】
【発明の実施の形態】
以下、本発明の実施の形態を図面と共に説明する。なお、本実施の形態において説明される構成要件のうち、従来の技術において説明した構成要件と同じ構成要件には同一の参照符号を付し、説明を省略している。
【0014】
(実施の形態1)
本発明の実施の形態1に係る半導体集積回路をシミュレーションすることにより得られるシミュレーション結果を検証するためのシミュレーション結果検証方法について、図面を参照しながら説明する。図4に示すように101はTr.モデルライブラリ、102は回路図入力エディタ、103はネットリスト出力ツール、104は入力ベクタファイル編集エディタ、106はネットリスト、107は入力ベクタファイル、109はプロセスパラメータライブラリ、110は回路シミュレーター、111はシミュレーション結果ファイル、116は目視での回路の検証が終了したことを示しており、これらは従来例の構成と同じである。
【0015】
501はシミュレーション結果検証装置であり、その構成を図5に示す。シミュレーション結果検証装置501はシミュレーション結果ファイル111と、条件情報502とを有しており、シミュレーション結果ファイル111と条件情報502とを比較し、一致しているか表示を行う。結果ファイル111は、回路シミュレータ110でシミュレーションされたことにより得られた結果であり、出力情報として時間情報、電圧情報、電流情報およびノード名を有している。図6にシミュレーション結果ファイル111の中身を示す。図に示されるように、シミュレーション結果ファイルは、ノードにおける時間情報と電圧情報を一つづつ有している。
【0016】
シミュレーション結果ファイル111と条件情報502との具体的な比較図を図7に示す。横軸に時間を、縦軸に電圧をとり、シミュレーション結果ファイル111は1111と表示される。ここで、条件情報502の時間を時間t1〜時間t2と設定し、条件情報502の電圧を電圧V1から電圧V2と設定すると、5021のように四角の図形で示される。上記の条件を入力した結果、四角の図形で表示されている条件情報502の範囲の中に、時間t1〜時間t2においてシミュレーション結果ファイル111の電圧Vがすべて含まれていれば、シミュレーション結果ファイル111と条件情報502とが条件を満たすと判定される。つまり、V1≦V≦V2という関係式が時間t1〜時間t2間で成立するならば、シミュレーション結果ファイル111と条件情報502とが条件を満たすと判定される。
【0017】
逆に、四角の図形で表示されている条件情報502の範囲の中に時間t1〜t2において、シミュレーション結果ファイル111の電圧Vが一点でも含まれないのであれば、シミュレーション結果ファイル111と条件情報502とが条件を満たさないと判定される。つまり、シミュレーション結果ファイルの一点でも、V1≦V≦V2という関係式が時間t1〜時間t2間で成立しないのならば、シミュレーション結果ファイル111と条件情報502とが条件を満たさないと判定される。
【0018】
条件情報502の時間を、時間t1〜時間t2で設定したが、それに対応するシミュレーション結果が存在しない可能性がある。つまり、t1またはt2におけるシミュレーション結果が存在しない場合がある。そのときはシミュレーション結果111のt1またはt2の値が存在しないので、シミュレーション結果111と条件情報502とを一致するか判定することができなくなる。従って、このときは近似式を用いて、時間t1およびt2における電圧Vの近似値を求める。以下、これを説明する。
【0019】
図7の一部拡大図を図8に示す。このフローチャートを時間t1について適応する。シミュレーション結果ファイル111において、時間t1が存在しないときはシミュレーション結果において実在する時間であって、時間tに前後し、かつ最も近接する時間taからtbへの変化から予測することにより、シミュレーション結果における任意の時間tの電圧を求める。
【0020】
ここで、ta、tb、Va、Vbの認定の仕方をフローチャート図9を用いて説明する。シミュレーション結果の時間Tを次から次へと検索していき(S910)、時間Tが時間t1より大きくないときは(S911)、時間Tにおける時間を時間taと、時間taにおける電圧をVaとする(S912)。そして、時間taより大きい次の時間Tを検索する(S910)。次の時間Tが検索されたら、その次の時間Tをtaとし、taにおける電圧をVaとしなおす(S912)。そして、またさらに大きい時間Tを検索する(S910)。このように、次から次へと時間Tを検索していき(S910)、その時間Tをtaと、taにおける電圧をVaとする(S912)。
【0021】
そして、次の時間Tを検索していき(S910)、時間Tがt1より大きいときは(S911)、その時間Tをtbとし、tbにおける電圧をVbとする(S913)。このように、 ta、tb、Va、Vbと決定してやり、下記の式
V=(Vb― Va/tb―ta)×T+Va―(Vb― Va/tb―ta)×ta
を用いて(S914)、任意の時間tにおける電圧Vの近似値を求める。ここで、コンピューターを使用してta、tbの値をとることで、時間t1が存在しないときでも、t1より小さいながらもt1に一番近い値taと、t1より大きいながらもt1に一番近い値tbと、taにおける電圧Vaと、tbにおける電圧Vbとから時間t1における電圧Vの近似値を求めることができる。具体的には、taと、tbとの2点の一次直線として近似して、近似値を求めている。
【0022】
そして、図9に示されるように、求められたVが予め設定された条件情報のV1より大きいか、つまりV1≦Vを満たすかどうか判定される(S915)。ここで、V1≦Vを満足しないと判定されたときは、条件を満たさないので、シミュレーション結果ファイル111と条件情報502とが条件を満たさないと判定される(S918)。V≦V1を満たすときは(S915)、Vはさらに条件情報で認定されたV2と比較され(S916)、V2≦Vを満足しないと判定されたときは、条件を満たさないので、シミュレーション結果ファイル111と条件情報502とが条件を満たさないと判定される(S918)。また、V2≧Vを満たすと判定されたら(S916)、シミュレーション結果ファイル111と条件情報502とが条件を満たすと判定される(S917)。
【0023】
ここで、条件情報で設定されている時間t2におけるta、tb、Va、Vbの認定の仕方をフローチャート図10を用いて説明する。基本的にはt1の時と判定の仕方と同じである。シミュレーション結果の時間Tを次から次へと検索していき(S910)、Tにおける時間をtaと、時間taにおける電圧をVaとする(S912)。そして、taより大きい次の時間Tを検索する(S910)。次の時間Tが検索されたら、その次の時間Tをtaとし、taにおける電圧をVaとしなおす(S912)。そして、またさらに大きい時間Tを検索する(S910)。このように、次から次へと時間Tを検索していき、その時間Tをtaと、taにおける電圧をVaとする(S912)。
【0024】
そして、次の時間Tを検索していき(S910)、時間Tがt2よりおおきくなったときは(S919)、その時間Tをtbとし、tbにおける電圧をVbとする(S913)。このように、 ta、tb、Va、Vbと決定してやり、下記の式
V=(Vb― Va/tb―ta)×T+Va―(Vb― Va/tb―ta)×ta
を用いて(S914)、任意の時間tにおける電圧Vの近似値を求める。そして、図9に示されるように、求められたVが予め設定された条件情報の値のV1より大きいか、判定される(S915)。ここで、V1≦Vを満たさないときは、条件を満たさないので、シミュレーション結果ファイル111と条件情報502とが条件を満たさないと判定される(S918)。V≦V1を満たすときは、Vはさらに条件情報で認定されたV2と比較され(S916)、V2≦Vを満たさないときは、条件を満たさないので、シミュレーション結果ファイル111と条件情報502とが条件を満たさないと判定される(S918)。また、V≦V2と認定されたら(S916)、シミュレーション結果ファイル111と条件情報502とが条件を満たすと判定される(S917)。
【0025】
次に、時間t1から時間t2の間に存在するシミュレーション結果が、条件情報で設定された電圧についてV1≦V≦V2を満たすかどうか考察する。それを図11に示す。時間Tを検索していき(S910)、t1<Tを満たさないときは(S911)、また次のTを検索する(S910)。なぜならば、求めたい条件に入っていないからである。時間Tがt1<Tを満たしたときには(S911)、時間Tが時間t2に対して、t2>Tを満たすかどうか判定する(S920)。S911のステップで示される条件を満たしているからである。ここで、時間tがt2>Tと判定されたときは(S920)、電圧VがV1≦Vを満たすかどうか判定する(S915)。電圧VがV1≦Vを満たしていなければ、シミュレーション結果ファイル111と条件情報502とが条件を満たさないと判定される(S918)。V1≦Vを満たしていると判定されたときは(S915)、VはV2と比較される(S916)。V2≧Vを満たしていないときはシミュレーション結果ファイル111と条件情報502とが条件を満たさないと判定される(S918)。V2≧Vを満たしているときは次のTを検索する(S910)。このようにして、時間t1〜t2に存在する全ての点について調べ、全ての点がこれらの条件を満たせば、シミュレーション結果ファイル111と条件情報502とが一致していることになる。
【0026】
t2>Tを満たさないと判定されたときは(S920)、シミュレーション結果ファイル111と条件情報502とが条件を満たすと判定される(S917)。なぜならば、シミュレーション結果ファイル111と条件情報502とが条件を満たさないと判定されるものであるならば、先程の2工程にて、もうすでに条件を満たさないと判定されている。従って、t2>Tを満たさないときは(S920)、シミュレーション結果ファイル111と条件情報502とが条件を満たすと判定される。
【0027】
今回はまず、t1時の検索をし、次にt2時の検索をし、最後にt1〜t2における点の検索をしたが、t1時の検索、t2時の検索、t1<t<t2を満足するtの検索をどの順番で検索しても構わない。ただ、t1時の検索をし、次にt1<t<t2を満足するtの検索をし、最後にt2時の検索をすれば効率がよい。なぜならば、たとえば、図7において、左側から検索していけば、効率よく検索できるからである。
【0028】
また、図12に示すように、本装置はシミュレーション結果読みこみ手段を有していても構わない。シミュレーション結果111を読みこむ手段である。
【0029】
図13に示すように、条件情報502は検証条件入力手段によって、決定される。図に示すようにディスプレイ上に検証条件を入力する画面を起動する。ノード名、時間t1、時間t2、電圧V1、電圧V2などを入力する。このとき、電流の値をいれても構わない。ここで入力された値に基づいて、図7において、四角が決定される。なお、ノード名はWL[※]のようにワイルドカード指定が可能である。
【0030】
図14に検証結果フォーマット指定手段を示す。図のように、ディスプレイ上にフォーマット指定画面を起動する。フォーマットとしてPASS/FAIL、FAILノード名、およびFAILノード波形の選択が可能である。
【0031】
図15に検証結果出力先指定手段について示す。図に示すように、ディスプレイ上に出力先を指定する画面を起動する。ディスプレイ、ファイル、いずれの選択も可能である。
【0032】
図16に検証結果出力手段を示す。検証結果出力指定手段でディスプレイを選択した場合、図に示すように検証結果フォーマット指定手段で選択したPASS/FAIL、FAILノード名、およびFAILノード波形に対応する検証結果出力画面をそれぞれにディスプレイに表示する。ここで、FAILノード波形のエラー箇所を太字でハイライト表示する場合を考える。この場合、条件情報の時間がt0〜t2であるとする。図7に示すように、FAILノード波形のエラー箇所を太字でハイライト表示することにより、エラー箇所が視覚的に理解しやすいという利点を持つ。
【0033】
本実施の形態1においては、次々にシミュレーション結果の時間Tを検索していき、Tが時間tより大きくないときは時間tを時間情報taと時間tにおける電圧を電圧情報Vaとを記憶し、Tが前記tより大きいときは時間tを時間情報tbと時間tにおける電圧を電圧情報Vbとを記憶する。従って、taとtbとVaとVbとから、実際にコンピューターを利用して、任意の時間tの電圧を求めることができる。従って、あるノードにおける時間と出力状態との関係を示すシミュレーション結果と、あるノードの時間における出力状態の条件を指定する条件情報とを比較し判定することが可能となり、その結果、検証時間を軽減し、目視での検証ミスを防止することができる。
【0034】
次に実際の値を代入して具体的に考えてみる。まず、条件情報を入力する検証入力手段について考察する。図17にそれを示す。ノード名をWL[Z]と、時間t1を15μsと、時間t2を40μsと、電圧V1を2.0と、電圧V2を7.0と入力する。図18においてさらに詳しく説明する。先程入力した時間と電圧情報は5021と示される。図6に示される結果ファイル111のノードをZと指定する。ここで、図6において、Z以外のノードについて、図6では省略する。様々なノードごとに時間と電圧などの出力情報を有しているが、省略する。ノードZにおける結果ファイル111を図18に示すと1111のようになる。
【0035】
ここで、図9および図18を基にして考える。Tを次々と検索していく(S910)。Tが5のときは、15<5となり、t1<5を満たさないので、ta=5とし、図6からVa=1.7とする(S912)。また次のTを検索する(S910)。そして、次のTは10であった。Tが10であるときは、15<10となり、t1<10を満たさないので、ta=10とし、図6からVa=2.2とする(S912)。そして、次のTを検索する(S910)。次のTが20である。Tが20であるので、15<20となり、t1<20の式を満たすので、tb=20、Vb=3.7とする(S914)。
【0036】
上記で求められた、ta=10、Va=2.2、tb=20、Vb=3.7とV=(Vb― Va/tb―ta)×T+Va―(Vb― Va/tb―ta)×ta
とから、Vを求める。つまり、t1=15という点を基点として、ta=10およびtb=20という前後の2点から近似値を求める。このように、シミュレーション結果において実在する点で、かつt1=15という点に最も近接する時間ta=10からtb=20に含まれるような、前記時間から求めることができる。そして、上記の式を計算すると、V=2.95となる。
【0037】
上記により求められたV=2.95が、電圧V1=2.0に対して、V1≦Vの関係を満たすか判定する(S915)。2.95は2.0より大きいので、V1≦Vの関係を満たす。従って、次にVはV2との関係、V2≧Vの関係を満たすか判定する(S916)。電圧V2=7.0であるから、V2≧Vの関係を満たす。よって、シミュレーション結果ファイル111と条件情報502とが条件を満たすと判定される(S917)。
【0038】
次に、t2においても同様のことをする。図10を基に考える。Tを次々と検索していく(S910)。Tが30のときは、40<30となり、t2<30を満たさないので、ta=30とし、図6からVa=4.4とする(S912)。また次のTを検索する(S910)。そして、次のTは40であった。Tが40であるときは、40<40となり、t1<Tというを満たさないので、ta=40とし、図6からVa=4.8とする(S912)。そして、次のTを検索する(S910)。次のTが50である。Tが50であるので、40<50となり、t1<50の式を満たすので、tb=50、Vb=5.0とする(S913)。
【0039】
上記で求められた、ta=40、Va=4.8、tb=50、Vb=5.0とV=(Vb― Va/tb―ta)×T+Va―(Vb― Va/tb―ta)×ta
とから、Vを求める(S914)。計算すると、V=4.8となる。上記により求められたV=4.8が、電圧V1=2.0に対して、V1≦Vの関係を満たすか判定する(S915)。4.8は2.0より大きいので、V1≦Vの関係を満たす(S915)。従って、V2との比較になる。つまりV2≧Vを判定する(S916)。7.0≧4.8となり、条件を満たすので、シミュレーション結果ファイル111と条件情報502とが条件を満たすと判定される(S917)。また、t1からt2の間に存在するT=20とT=30がV1≦V≦V2を満たすかどうか考察する。T=20ときV=3.7であるので、2.0≦3.7≦7.0を満たす。T=30のときV=4.4であるので、2.0≦4.4≦7.0を満たす。このようにt1からt2に存在する全ての点において調べ、シミュレーション結果ファイル111と条件情報502とが条件を満たすと判定されたので、検証結果出力手段にPASSと表示される(S917)。
【0040】
(実施の形態2)
次に本発明における他の実施の形態2を説明する。本実施の形態2と上述した実施の形態1との間で異なる点は、本実施の形態2においては、図19に示されるS921において、t1とTとの関係を「≦」としたことである。t1=Tを満たすときは、S921からS913へ移る。すなわち、t1=Tを満たすときであっても、ta、tb、Va、Vbおよび近似式からVを求め、V1≦V≦V2の判定を行い結果を表示する。つまり、t1=Tを満たすときであっても、近似値を求めずにV1≦V≦V2の判定をするパスを有していない。これ以外については、特に説明しない限りは基本的には実施の形態1と同様である。
【0041】
実際の値を代入して具体的に考えてみる。t1については、実施の形態のときと同じであるので、t2のときだけ考える。図18および図19を基に考える。Tを次々と検索していく。Tが30のときは、40≦30となり、t2≦30を満たさないので、ta=30とし、図6からVa=4.4とする。また次のTを検索する。そして、次のTは40であった。Tが40であるときは、40≦40となり、t2≦Tというを満たすので、tb=40とし、図6からVa=4.8とする。
【0042】
上記で求められた、ta=30、Va=4.4、tb=40、Vb=4.8とV=(Vb― Va/tb―ta)×T+Va―(Vb― Va/tb―ta)×ta
とから、Vを求める。計算すると、V=4.8となる。次に、V1≦Vという条件を満たすか判断されるので、具体的な数値を入れると、2.0≦4.8となり、条件を満たす。従って、V2との比較になる。つまりV2≧Vを判定する。7.0≧4.8となり、条件を満たすので、シミュレーション結果ファイル111と条件情報502とが条件を満たすと判定される。従って、シミュレーション結果ファイル111と条件情報502とが条件を満たすと判定されたので、検証結果出力手段にPASSと表示される。
【0043】
以上のことより、実施の形態1で説明した結果と同じになった。つまり、図9のフローチャートを使用しようと、図19のフローチャートを使用しようと同じ結果となる。
【0044】
(実施の形態3)
次に本発明における他の実施の形態3を説明する。本実施の形態3と上述した実施の形態1との間で異なる点は、本実施の形態3においては、図21に示されるように、任意の時間tとシミュレーション結果の時間Tが同じ時間であるときである。すなわち、t=Tを満たす場合である。
【0045】
任意の時間tがt1のときを考える。時間Tがt1と同じとき、つまりT=t1というときについてを図21に示す。T=t1のときは、t1<Tという条件は満たさない。従って、T=t1のときは、それ以上tの検索を行わずに、Tを決定する。Tが決定されれば、Vも決定されるので、そのVがV1、V2との比較に入る。電圧VがV1≦Vを満たすかどうか判定する。電圧VがV1≦Vを満たしていなければ、シミュレーション結果ファイル111と条件情報502とが条件を満たさないと判定される。V1≦Vを満たしていると判定されたときは、VはV2と比較される。V2≧Vを満たしていないときはシミュレーション結果ファイル111と条件情報502とが条件を満たさないと判定される。V2≧Vを満たしているときはシミュレーション結果ファイル111と条件情報502とが条件を満たすと判定される。これ以外については、特に説明しない限りは基本的には実施の形態1と同様である。
【0046】
ここで、実際の値を代入して考えてみる。図21を参照する。t1のときは実施の形態1と同じであるから、t2のときを考える。Tを次々と検索していく。Tが30のときは、40<30となり、t2<30を満たさないし、t2=tも満たさないので、ta=30とし、図6からVa=4.4とする。また次のTを検索する。そして、次のTは40であった。Tが40であるときは、40<40となり、t1<Tというを満たさない。そして、t2=Tを満たすので、Tが40のときは図6よりVが4.8となる。V1≦Vという条件を満たすか判断されるので、具体的な数値を入れると、2.0≦4.8となり、条件を満たす。従って、V2との比較になる。つまりV2≧Vを判定する。7.0≧4.8となり、条件を満たすので、シミュレーション結果ファイル111と条件情報502とが条件を満たすと判定される。シミュレーション結果ファイル111と条件情報502とが条件を満たすと判定されたと判定されたときは、検証結果出力手段にPASSと表示される。
【0047】
つまり、時間Tがt1と同じとき、つまりT=t1というときは、ta、tb,Va,Vbと、
V=(Vb― Va/tb―ta)×T+Va―(Vb― Va/tb―ta)×ta
とから、近似値を求めずに、Tと時間Tに対するVを用いる。つまり、実在点が存在するときは実在点を用いる。このような方法をとってやると、近似値を求めなくていいので、早く結果を得ることができる。ただし、得られる結果は実施の形態1と同じである。
【0048】
(実施の形態4)
次に本発明における他の実施の形態4を説明する。本実施の形態4と上述した実施の形態1との間で異なる点は、本実施の形態4においては、図22に示されるように、任意の時間tとシミュレーション結果の時間Tが同じ時間であるときである。すなわち、t=Tを満たす場合である。
【0049】
先程とは違ったパターンではあるが、時間Tがt1と同じとき、つまりT=t1というときについてを図22に示す。Tを検索していき、t1≦Tを満たさないときは、Tをtaと、VをVaとし、次のTを検索する。t1≦Tを満たすときは、Tがt1と等しいか判断される。t1=Tが満たされるときは、Tはt1と決定される。Tが決定されれば、Tに対するVが決定される。先程と同じように、電圧VがV1≦Vを満たしていなければ、シミュレーション結果ファイル111と条件情報502とが条件を満たさないと判定される。V1≦Vを満たしていると判定されたときは、VはV2と比較される。V2≧Vを満たしていないときはシミュレーション結果ファイル111と条件情報502とが条件を満たさないと判定される。V2≧Vを満たしているときはシミュレーション結果ファイル111と条件情報502とが条件を満たすと判定される。
【0050】
一方、t1=Tが満たされないときは、Tはtbと認定され、VはVbと認定される。先程、認定されたtaとVaと下記の式
V=(Vb― Va/tb―ta)×T+Va―(Vb― Va/tb―ta)×ta
とを用いて、任意の時間tにおける電圧Vの近似値を求める。そして、図21に示されるように、求められたVが条件情報のV1より大きいか、判定される。ここで、V1≦Vを満たさないときは、条件を満たさないので、シミュレーション結果ファイル111と条件情報502とが条件を満たさないと判定される。V≦V1を満たすときは、Vはさらに条件情報で認定されたV2と比較され、V2≧Vを満たさないときは、条件を満たさないので、シミュレーション結果ファイル111と条件情報502とが条件を満たさないと判定される。また、V2≧V認定されたら、シミュレーション結果ファイル111と条件情報502とが条件を満たすと判定される。これ以外については、特に説明しない限りは基本的には実施の形態1と同様である。
【0051】
ここで、実際の値を代入して考えてみる。図22を参照する。t1のときは実施の形態1と同じであるから、t2のときを考える。Tを次々と検索していく。Tが30のときは、40≦30となり、t2≦30を満たさないので、ta=30とし、図6からVa=4.4とする。また次のTを検索する。そして、次のTは40であった。Tが40であるときは、40≦40となり、t1≦Tという条件を満たす。そして、t2=Tを満たすので、Tが40のときは図6よりVが4.8となる。次に、V1≦Vという条件を満たすか判断されるので、具体的な数値を入れると、2.0≦4.8となり、条件を満たす。従って、V2との比較になる。つまりV2≧Vを判定する。7.0≧4.8となり、条件を満たすので、シミュレーション結果ファイル111と条件情報502とが条件を満たすと判定される。シミュレーション結果ファイル111と条件情報502とが条件を満たすと判定されたときは、検証結果出力手段にて、PASSと表示される。
【0052】
つまり、時間Tがt1と同じとき、つまりT=t1というときは、ta、tb,Va,Vbと、
V=(Vb― Va/tb―ta)×T+Va―(Vb― Va/tb―ta)×ta
とから、近似値を求めずに、Tと時間Tに対するVを用いる。つまり、実在点が存在するときは実在点を用いる。また、この方法により、近似値を求めなくていいことから、結果を早く得ることが可能となる。ただし、得られる結果は実施の形態1と同じである。
【0053】
(実施の形態5)
次に本発明における他の実施の形態5を説明する。本実施の形態5と上述した実施の形態1との間で異なる点は、本実施の形態5においては、図23のS923に示されるように、「T=t1」のチェックを最初にすることである。これ以外については、特に説明しない限りは基本的には実施の形態1と同様である。
【0054】
実際の値を代入して考えてみる。図23を参照する。t1のときは実施の形態1と同じであるから、t2のときを考える。Tを次々と検索していく。Tが30のときは、t2=Tを満たさないので、t2<Tを考える。40<30となり、t2<30を満たさないので、ta=30とし、図6からVa=4.4とする。また次のTを検索する。そして、次のTは40であった。Tが40であるときは、t2=Tとなる。つまり、40=40となり、t2=Tという条件を満たす。Tが40のときは図6よりVが4.8となる。従って、V1≦Vという条件を満たすか判断されるので、具体的な数値を入れると、2.0≦4.8となり、条件を満たす。従って、V2との比較になる。つまりV2≧Vを判定する。7.0≧4.8となり、条件を満たすので、シミュレーション結果ファイル111と条件情報502とが条件を満たすと判定される。シミュレーション結果ファイル111と条件情報502とが条件を満たすと判定されたときは検証結果出力手段にて、PASSと表示される。
【0055】
つまり、時間Tがt1と同じとき、つまりT=t1というときは、ta、tb,Va,Vbと、
V=(Vb― Va/tb―ta)×T+Va―(Vb― Va/tb―ta)×ta
とから、近似値を求めずに、Tと時間Tに対するVを用いる。つまり、実在点が存在するときは実在点を用いる。この方法を用いることによって、近似値を求めなくていいので、結果を早く得ることが可能となる。ただし得られる結果は実施の形態1と同じである。
【0056】
【発明の効果】
本発明により、あるノードにおける時間と出力状態との関係を示すシミュレーション結果と、あるノードの時間における出力状態の条件を指定する条件情報とを比較し判定することができるようになった。
【図面の簡単な説明】
【図1】従来のシミュレーション結果検証装置の構成を示すブロック図
【図2】(a)Tr.モデルライブラリの内容を示す図
(b)入力ベクタファイルの内容を示す図
(c)閾値設定ファイルの内容を示す図
【図3】波形ビューワ画面の内容を示す図
【図4】本発明のシミュレーション結果検証装置の構成を示すブロック図
【図5】本発明のシミュレーション結果検証装置を示す図
【図6】本発明の結果ファイルを示す図
【図7】シミュレーション結果と条件情報との比較を表す図
【図8】図7の拡大図
【図9】本発明の実施の形態1を示すフローチャート
【図10】本発明の実施の形態1を示すフローチャート
【図11】本発明の実施の形態1を示すフローチャート
【図12】シミュレーション結果入力画面の内容を示す図
【図13】検証条件入力画面の内容を示す図
【図14】フォーマット指定画面の内容を示す図
【図15】出力先指定画面の内容を示す図
【図16】検証結果出力画面の内容を示す図
【図17】検証条件入力画面の内容を示す図
【図18】シミュレーション結果と条件情報との比較を表す図
【図19】本発明の実施の形態2を示すフローチャート
【図20】本発明の実施の形態2を示すフローチャート
【図21】本発明の実施の形態3を示すフローチャート
【図22】本発明の実施の形態4を示すフローチャート
【図23】本発明の実施の形態5を示すフローチャート
【図24】シミュレーション結果と条件情報との比較を表す図
【符号の説明】
101:Tr.モデルライブラリ
102:回路図入力エディタ
103:ネットリスト出力ツール
104:入力ベクタファイル編集エディタ
105:閾値設定ファイル編集エディタ
106:ネットリスト
107:入力ベクタファイル
108:閾値設定ファイル
109:プロセスパラメータライブラリ
110:回路シミュレータ
111:シミュレーション結果ファイル
112:波形ビューワ
113:入力ベクタ
114:閾値設定
115:検証結果
116:検証終了
301:シミュレーション結果
302:論理値
501:シミュレーション結果検証装置
502:条件情報
5021:条件情報
1111:シミュレーション結果
601:シミュレーション結果読込手段
602:検証条件入力手段
603:検証結果フォーマット指定手段
604:検証結果出力先指定手段
606:検証結果出力手段
t:任意の時間
t1:あるノードの時間
t2:あるノードの時間
ta:時間
tb:時間
T:時間
Va:電圧
Vb:電圧
Claims (20)
- 半導体集積回路をシミュレーションすることにより得られた各ノードにおける時間と出力状態との関係を示すシミュレーション結果と、
あるノードの時間t1〜t2間における出力状態の条件を指定する条件情報とに基いて、
前記シミュレーション結果のうち前記あるノードの時間t1〜t2間における出力状態と前記条件情報の出力状態とが一致するか判定する、シミュレーション結果検証方法。 - 前記出力状態は電圧であり、
前記シミュレーション結果における任意の時間tの前記電圧を
前記シミュレーション結果において実在する時間であって、前記時間tに前後し、かつ最も近接する時間ta,tbから求める、請求項1に記載のシミュレーション結果検証方法。 - 前記出力状態は電圧であり、
前記シミュレーション結果における任意の時間tの前記電圧を、
次々にシミュレーション結果の時間Tを検索していき、
前記Tが時間tより大きくないときは前記時間tを時間情報taと前記時間tにおける電圧を電圧情報Vaとを記憶し、
前記Tが前記tより大きいときは前記時間tを時間情報tbと前記時間tにおける電圧を電圧情報Vbとを記憶し、
前記taとtbとVaとVbとから求める、請求項1また請求項2に記載のシミュレーション結果検証方法。 - 前記出力状態は電圧であり、
前記シミュレーション結果における任意の時間tの前記電圧を、
次々にシミュレーション結果の時間Tを検索していき、
前記Tが時間t以上でないときは前記時間tを時間情報taと前記時間tにおける電圧を電圧情報Vaとを記憶し、
前記Tが前記t以上のときは時間情報tbと電圧情報Vbとを記憶し、
前記taとtbとVaとVbとから求める、請求項1また請求項3に記載のシミュレーション結果検証方法。 - 前記シミュレーション結果における任意の時間tは、
前記シミュレーション結果の前記時間t1〜t2間に存在する全ての時間である、請求項1〜請求項4のいずれかに記載のシミュレーション結果検証方法。 - 前記任意の時間tの電圧は
V=(Vb― Va/tb―ta)×t+Va―(Vb― Va/tb―ta)×ta
により求める、請求項1〜請求項5のいずれかに記載のシミュレーション結果検証方法。 - 前記シミュレーション結果における任意の時間tが存在しないときに使用する、請求項1〜請求項6のいずれかに記載のシミュレーション結果検証方法。
- 検証対象の回路のノードに対して、検証条件を入力する検証条件入力手段を有する、請求項1〜請求項7のいずれかに記載のシミュレーション結果検証方法。
- 前記検証条件入力手段において、前記ノードはワイルドカードの指定ができる、請求項1〜請求項8のいずれかに記載のシミュレーション結果検証方法。
- 検証結果のフォーマットを指定する検証結果フォーマット指定手段を有する、請求項1〜請求項9のいずれかに記載のシミュレーション結果検証方法。
- 前記検証結果フォーマット指定手段において、前記フォーマットはPASS/FAILの指定ができる、請求項1〜請求項10のいずれかに記載のシミュレーション結果検証方法。
- 前記検証結果フォーマット指定手段において、前記フォーマットはFAILノード名の指定ができる、請求項1〜請求項11のいずれかに記載のシミュレーション結果検証方法。
- 検証結果の出力先を指定する検証結果出力先指定手段を有する、請求項1〜請求項12のいずれかに記載のシミュレーション結果検証方法。
- 前記検証結果出力先指定手段において、FAILノードの波形のエラー箇所をハイライト表示できる、請求項1〜請求項13のいずれかに記載のシミュレーション結果検証方法。
- 半導体集積回路をシミュレーションすることにより得られた各ノードにおける時間と出力状態との関係を示すシミュレーション結果と、
あるノードの時間t1〜t2間における出力状態の条件を指定する条件情報と、
前記シミュレーション結果のうち前記あるノードの時間t1〜t2間における出力状態と前記条件情報の出力状態とが一致するか判定する、シミュレーション結果検証装置。 - 前記出力状態は電圧であり、
前記シミュレーション結果における任意の時間tの前記電圧を
前記時間tが前記シミュレーション結果において実在し、かつ最も近接する時間taからtbに含まれるような、前記時間ta,tbから求める、請求項15に記載のシミュレーション結果検証装置。 - 前記出力状態は電圧であり、
前記シミュレーション結果における任意の時間tの前記電圧を、
次々にシミュレーション結果の時間Tを検索していき、
前記Tが時間tより大きくないときは前記時間tを時間情報taと前記時間tにおける電圧を電圧情報Vaとを記憶し、
前記Tが前記tより大きいときは時間情報tbと電圧情報Vbとを記憶し、
前記taとtbとVaとVbとから求める、請求項15また請求項16に記載のシミュレーション結果検証装置。 - 前記出力状態は電圧であり、
前記シミュレーション結果における任意の時間tの前記電圧を、
次々にシミュレーション結果の時間Tを検索していき、
前記Tが時間t以上でないときは前記時間tを時間情報taと前記時間tにおける電圧を電圧情報Vaとを記憶し、
前記Tが前記t以上のときは時間情報tbと電圧情報Vbとを記憶し、
前記taとtbとVaとVbとから求める、請求項15また請求項16に記載のシミュレーション結果検証装置。 - 前記任意の時間tの電圧は
V=(Vb― Va/tb―ta)×t+Va―(Vb― Va/tb―ta)×ta
により求める、請求項15〜請求項18のいずれかに記載のシミュレーション結果検証装置。 - 前記シミュレーション結果における任意の時間tが存在しないときに使用する、請求項15〜請求項19のいずれかに記載のシミュレーション結果検証装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002167264A JP2004013595A (ja) | 2002-06-07 | 2002-06-07 | シミュレーション結果検証方法およびシミュレーション結果検証装置 |
US10/455,308 US7043707B2 (en) | 2002-06-07 | 2003-06-06 | Simulation result verification method and simulation result verification device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002167264A JP2004013595A (ja) | 2002-06-07 | 2002-06-07 | シミュレーション結果検証方法およびシミュレーション結果検証装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004013595A true JP2004013595A (ja) | 2004-01-15 |
Family
ID=29706754
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002167264A Pending JP2004013595A (ja) | 2002-06-07 | 2002-06-07 | シミュレーション結果検証方法およびシミュレーション結果検証装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7043707B2 (ja) |
JP (1) | JP2004013595A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014120013A (ja) * | 2012-12-18 | 2014-06-30 | Jedat Inc | 回路検証方法、装置、プログラム及び記録媒体 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5990409B2 (ja) * | 2012-06-08 | 2016-09-14 | ルネサスエレクトロニクス株式会社 | 半導体装置のシミュレータ、シミュレーション方法及びシミュレーションプログラム |
US10599881B1 (en) * | 2014-03-25 | 2020-03-24 | Mentor Graphics Corporation | Circuit simulation waveform generation and display |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6694495B1 (en) * | 2000-09-28 | 2004-02-17 | Lsi Logic Corporation | Method of analyzing static current test vectors for semiconductor integrated circuits |
US6473881B1 (en) * | 2000-10-31 | 2002-10-29 | International Business Machines Corporation | Pattern-matching for transistor level netlists |
JP2002269169A (ja) | 2001-03-14 | 2002-09-20 | Mitsubishi Electric Corp | 回路自動検証装置 |
US7089135B2 (en) * | 2002-05-20 | 2006-08-08 | Advantest Corp. | Event based IC test system |
US6976234B2 (en) * | 2003-01-13 | 2005-12-13 | Credence Systems Corporation | Apparatus and method for measuring characteristics of dynamic electrical signals in integrated circuits |
US6964027B2 (en) * | 2003-04-16 | 2005-11-08 | Synopsys, Inc. | System and method for optimizing exceptions |
-
2002
- 2002-06-07 JP JP2002167264A patent/JP2004013595A/ja active Pending
-
2003
- 2003-06-06 US US10/455,308 patent/US7043707B2/en not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014120013A (ja) * | 2012-12-18 | 2014-06-30 | Jedat Inc | 回路検証方法、装置、プログラム及び記録媒体 |
Also Published As
Publication number | Publication date |
---|---|
US7043707B2 (en) | 2006-05-09 |
US20030229872A1 (en) | 2003-12-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8417504B2 (en) | Conversion of circuit description to a transaction model | |
TWI423057B (zh) | 佈局對原理圖錯誤系統及方法 | |
US9773089B2 (en) | Integrated circuit design method and system with color-coded components | |
US6564365B1 (en) | Method of simultaneously displaying schematic and timing data | |
JP2005284751A (ja) | 論理検証装置、論理検証方法および論理検証プログラム | |
CN113392608B (zh) | 电路生成方法、装置、电子设备及存储介质 | |
JP2007122589A (ja) | ミックスドシグナル回路シミュレータ | |
JP2022166620A (ja) | テストケース検証装置及びテストケース検証方法 | |
CN108829903B (zh) | 判定fpga冗余设计的代码与综合后电路一致性的方法和系统 | |
US20050114805A1 (en) | Device, system and method for VLSI design analysis | |
JP2004013595A (ja) | シミュレーション結果検証方法およびシミュレーション結果検証装置 | |
US8904328B2 (en) | Support apparatus and design support method | |
KR20170133788A (ko) | 디지털 회로 오류 검증 방법 | |
JP2009252169A (ja) | 検証支援プログラム、検証支援装置、および検証支援方法 | |
US20060015311A1 (en) | Circuit design support method and system | |
JP4080464B2 (ja) | 検証ベクタ生成方法およびこれを用いた電子回路の検証方法 | |
JP2003233636A (ja) | 回路検証装置 | |
JPH0756976A (ja) | 論理回路のシミュレーション装置 | |
JP4648865B2 (ja) | プリント基板パターン設計装置およびプログラム | |
JP2006171818A (ja) | クロストーク検証装置およびクロストーク検証方法 | |
JP5104267B2 (ja) | 電圧分布検出装置及び電圧分布検出方法 | |
JP2000067095A (ja) | 半導体集積回路の論理シミュレーション方法および論理シミュレータ | |
JP2003296392A (ja) | 階層レイアウト時の早期遅延解析方式及び遅延解析プログラム | |
JPH0778195A (ja) | 回路設計cadにおけるデータ更新方式 | |
JPH11175580A (ja) | 集積回路設計装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050516 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20050614 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080219 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080226 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080701 |