(57)【特許請求の範囲】
【請求項１】
コンピュータが、パラメータを有する回路素子からなる回路について、該パラメータの変更により影響を受ける部分回路の回路シミュレーションを行う回路シミュレーション方法であって、
パラメータを変更された素子のリストを保持するパラメータ変更素子リスト保持部から、１のパラメータ変更素子を読み出し、
前記回路のネットリストを保持するネットリスト保持部を参照して、前記パラメータ変更素子から任意の回路素子に至るまでのパス上における、ファンアウト素子からファンイン素子への素子間の接続をするパスを通過する回数を、影響の受け難さを表す数値として前記任意の回路素子ごとに調べ、前記数値が予め設定した所定の値以下の回路素子を抽出し、
前記抽出した回路素子により構成される回路を部分回路として部分回路保持部に記憶させ、
前記部分回路について回路シュミレーションを行うことを特徴とする回路シュミレーション方法。
【請求項２】
パラメータを有する回路素子からなる回路について、該パラメータの変更により影響を受ける部分回路の回路シミュレーションを行う回路シミュレーション装置であって、
パラメータを変更された素子のリストを保持するパラメータ変更素子リスト保持部と、 前記回路のネットリストを保持するネットリスト保持部と、
前記パラメータ変更素子リスト保持部から、１のパラメータ変更素子を読み出し、前記ネットリスト保持部が保持する前記回路のネットリストを参照し、前記パラメータ変更素子から任意の回路素子に至るまでのパス上における、ファンアウト素子からファンイン素子への素子間の接続をするパスを通過する回数を、影響の受け難さを表す数値として前記任意の回路素子ごとに調べ、前記数値が予め設定した所定の値以下の回路素子を抽出し、該抽出した回路素子により構成される回路を部分回路として抽出し、該部分回路を部分回路保持部に記憶させる部分回路抽出部と、
前記部分回路について回路シミュレーションを行うシミュレーション実行部と
を備えることを特徴とする回路シミュレーション装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、コンピュータを利用して回路シミュレーションを行い、最適回路設計をする回路シミュレーション方法及びその装置に関するものである。
【０００２】
回路設計を行う時，最適回路を得るために回路素子のパラメータを様々に変更しながら回路シミュレーションを行いその影響を解析する。あるいは回路素子の特性ライブラリを作成するために様々な負荷を作成した時の特性を解析する場合などに回路シミュレーションを行っている。
【０００３】
【従来の技術】
従来の回路シミュレーション装置は，回路パラメータを様々に変更して回路シミュレーションを行うような場合，回路パラメータを変更する毎に回路全体について回路シミュレーションを行っていた。
【０００４】
【発明が解決しようとする課題】
そのため，従来の回路シミュレーション装置は，一部の回路素子のパラメータの変更であっても，その変更毎に回路全体について回路シミュレーションを行わなければならなかったので回路シミュレーションに時間がかかり能率の悪いものであった。
【０００５】
【課題を解決するための手段】
本発明は、コンピュータが、パラメータを有する回路素子からなる回路について、該パラメータの変更により影響を受ける部分回路の回路シミュレーションを行う回路シミュレーション方法であって、パラメータを変更された素子のリストを保持するパラメータ変更素子リスト保持部から、１のパラメータ変更素子を読み出し、前記回路のネットリストを保持するネットリスト保持部を参照して、前記パラメータ変更素子から任意の回路素子に至るまでのパス上における、ファンアウト素子からファンイン素子への素子間の接続をするパスを通過する回数を、影響の受け難さを表す数値として前記任意の回路素子ごとに調べ、前記数値が予め設定した所定の値以下の回路素子を抽出し、前記抽出した回路素子により構成される回路を部分回路として部分回路保持部に記憶させ、前記部分回路について回路シュミレーションを行う構成をもつ。
また、本発明は、パラメータを有する回路素子からなる回路について、該パラメータの変更により影響を受ける部分回路の回路シミュレーションを行う回路シミュレーション装置であって、パラメータを変更された素子のリストを保持するパラメータ変更素子リスト保持部と、前記回路のネットリストを保持するネットリスト保持部と、前記パラメータ変更素子リスト保持部から、１のパラメータ変更素子を読み出し、前記ネットリスト保持部が保持する前記回路のネットリストを参照し、前記パラメータ変更素子から任意の回路素子に至るまでのパス上における、ファンアウト素子からファンイン素子への素子間の接続をするパスを通過する回数を、影響の受け難さを表す数値として前記任意の回路素子ごとに調べ、前記数値が予め設定した所定の値以下の回路素子を抽出し、該抽出した回路素子により構成される回路を部分回路として抽出し、該部分回路を部分回路保持部に記憶させる部分回路抽出部と、前記部分回路について回路シミュレーションを行うシミュレーション実行部とを備える構成をもつ。
【０００６】
図１は本発明の基本構成である。
図１において，
１は回路シミュレーション装置である。
【０００７】
２は回路情報入力部であって，ネットリスト，素子情報等の回路情報を入力するものである。
３はデータ保持部である。
【０００８】
４は回路情報保持部であって，回路を保持するものである。
５はシミュレーション結果保持部であって，シミュレーション結果を保持するものである。
【０００９】
６は部分回路抽出部であって，回路パラメータに変更があった時に，その変更が回路動作に影響する回路ブロックを抽出するものである。
８はシミュレーション実行部であって，回路シミュレーションを実行するものである。
【００１０】
９はシミュレーション結果出力部である。
図１の本発明の基本構成の動作を説明する。
回路情報入力部２により外部装置からネットリスト，回路素子情報等の回路情報が入力され，回路情報保持部４に保持される。シミュレーション実行部８は回路全体についての回路シミュレーションを行う。シミュレーション結果はシミュレーション結果保持部５に保持し，シミュレーション結果出力部９より外部装置に出力する。
【００１１】
回路パラメータを変更する場合には回路情報入力部２より変更する回路パラメータおよび回路パラメータの変更により影響する回路を抽出するための抽出条件（回路を抽出する判断の基準とする深度（後述）等）を入力する。
【００１２】
部分回路抽出部６は，回路パラメータの変更により影響する回路ブロックを抽出条件に従って回路全体から抽出する。シミュレーション実行部８は抽出された回路のみについて回路シミュレーションを行う。その際，全体回路のシミュレーションにおいて，抽出されなかった回路部分から抽出回路部分に入力される信号は抽出回路のシミュレーションにおいて抽出回路の外部から入力される信号として扱うものとする。
【００１３】
シミュレーション結果はシミュレーション結果保持部５に保持し，シミュレーション結果出力部９はシミュレーション結果を外部装置に出力する。
図２を参照して，図１の本発明の基本構成の回路の抽出方法について説明する。
【００１４】
図２ (a)は全体回路であり，Ａ，Ｂ，Ｃ，Ｄは回路ブロックである。ｎ１，ｎ２，ｎ３，ｎ４，ｎ５，ｎ６，ｎ７はそれぞれネットである。
図２ (b)は回路ブロックＡの回路素子のパラータが変更になったとき，動作が影響する回路ブロックを抽出したものである。
【００１５】
回路ブロックＡのファンアウト側の回路ブロックＢと回路ブロックＤが影響を受けるので  回路ブロックＡ，回路ブロックＢ，回路ブロックＤを抽出する。そして，抽出された回路の入力端子はネットｎ１，ｎ５とする。抽出回路の入力端子ネットｎ５の入力信号は図２ (a)の全体回路のシミュレーションにおいて得られた信号を使用する。
【００１６】
本発明によれば，回路パラメータが変更された場合に，変更された回路に影響する範囲を抽出して，回路シミュレーションを行うのでシミュレーションを高速に行うことができる。
【００１７】
【発明の実施の形態】
図３は本発明の回路シミュレーション装置のシステム構成の実施例を示す。
図３において，
１０は回路シミュレーション装置である。
【００１８】
１１はＣＰＵである。
１２は記憶部であって，メモリである。
１３はシミュレーション実行部である。
【００１９】
１３’はシミュレーション制御部であって、シミュレーション実行部１３、部分回路抽出部１４等の間の実行制御を行うものである。
１４は部分回路抽出部である。
【００２０】
１５は回路情報保持部である。
１６は抽出回路保持部である。
１７はシミュレーション結果保持部である。
【００２１】
１８は入出力制御部であって，入出力装置の入出力制御を行うものである。
３１は入出力装置とのインタフェースである。
３２は磁気ディスク装置であって，回路情報およびシミュレーション結果を保持するものである。
【００２２】
３３はディスプレイである。
３４はプリンタである。
３５はキーボードである。
【００２３】
３６はマウスである。
図３のシステム構成の動作は後述する。
図４は本発明の部分回路抽出処理の機能ブロック図である。
【００２４】
図４において，
１４は部分回路抽出部である。
４１データ保持部であって，回路情報等のデータを保持するものである。
【００２５】
４２はパラメータ変更素子リスト保持部であって，パラメータを変更された素子のリストを保持するものである。
４３はネットリスト保持部であって，回路素子もしくは回路ブロック間の接続ネットのリストを保持するものである。
【００２６】
４４はスタックであって，パス検索の結果として求められた回路ブロックを保持するものである。
４５は基準深さ保持部であって，回路ブロックを抽出する判断の基準とする深さを保持するものである（深さについては後述する）。
【００２７】
４６は抽出回路ブロックリスト保持部であって，抽出された回路ブロックのリストを保持するものである。
５１はパス検索部であって，隣接回路ブロック等求めるために回路ネットを検索するものである。
【００２８】
５２は深さ判定部であって，基準の回路ブロックからのネット数により基準の回路ブロックからの深さを判定するものである。
５３は回路ブロック抽出部であって，予め定めた深さより小さい回路ブロックを求める処理である。
【００２９】
５４は抽出回路ブロック出力部であって，抽出された回路ブロックをシミュレーション実行部に出力する処理である。
５５は回路情報入力部であって，シミュレーション対象ノード，ネットワーク，指定深度等を入力するものである。
【００３０】
図５は回路接続の例である。
図５ (a)は全体回路を回路ブロックで表したものである。
図５ (a)において，
Ａ，Ｂ，Ｃ，Ｄ，Ｅ，Ｆ，Ｇ，Ｈ，Ｉ，Ｊ，Ｋは回路ブロックである。
【００３１】
各回路ブロックはネットにより接続される。
図５ (b)は図５ (a)の一部の接続関係が異なるものである。回路ブロックＡ，Ｂ，Ｃ，Ｄ，Ｅ，Ｆのみを示す。回路ブロックＡと回路ブロックＥが接続されている点で図５ (a)と異なる。
【００３２】
図４の構成の動作を説明する。図４の説明で図５ (a)，図５ (b)を参照する。
図５ (a)で回路ブロックＣの回路素子のパラメータが変更されたものとして回路ブロックＣを基準回路ブロックとし，回路パラメータの変更が影響する回路ブロックの深度の基準値を１とするものとして説明する。
【００３３】
本発明の回路抽出は，回路パラメータを変更する素子を含む回路ブロック（基準回路ブロック）から各回路ブロックに達するパスを抽出し，そのパスがファンアウトブロックからファンインブロック方向への回路ブロック間接続パスを通過する回数について調べ，その回数を基準回路ブロックからの各回路ブロックのパスの深さとする。もし，ある回路ブロックへのパスが複数存在する場合には，もっとも小さいものを選択する。次に深さの基準値と各回路ブロックのパスの深さを比較し，基準値以下の深さの回路ブロックを選択する。
【００３４】
図４において，回路情報入力部５５は外部装置からパラメータの変更情報、ノードリスト，ネットリスト，回路ブロック抽出の判定の深さの基準値を入力する。そして，パラメータ変更素子リストはパラメータ変更素子リスト保持部４２，ネットリストはネットリスト保持部４３，回路ブロック抽出を判断するための深さの基準値は基準深さ保持部４５，選択された回路ブロックのリストは抽出回路ブロックリスト保持部４６に保持される。
【００３５】
パス検索部５１はパラメータ変更素子リスト保持部４２からパラメータを変更する素子の情報を受け取り，ネットリストに基づいてその素子を含む回路ブロックに接続している隣接回路ブロックをリストアップし，そのうちの一つを選択して深さ判定部５２に渡す。残りはスタック４４に保持する。例えば，図５において，回路ブロックＣの回路パラメータが変更されたとして，回路ブロックＣを基準ブロックとする。そして，その隣接回路ブロックとして，回路ブロックＢ，回路ブロックＥを選択する。回路ブロックＢを選択した時は，回路ブロックＥをスタック４４に保持する。深さ判定部５２は受け取った回路ブロック（回路ブロックＢ）の深さの判定を行う。深さの判断は回路ブロック（回路ブロックＢ）の選択の元となった親回路ブロック（回路ブロックＣ）に対して回路ブロックＢがファンアウトブロックであれば親回路ブロックの深さ（今の場合，回路ブロックＣは基準回路ブロックであるので深さは０）と同じ深さであるとする。また，回路ブロックＢがファンインブロックであれば１を足した値を深さとする。そして，深さが基準値以下であればその回路ブロックを抽出する。今の場合，基準値は１であり回路ブロックＢの深さは１であるので回路ブロックＢを抽出する。
【００３６】
次に，パス検索部５１は，同様にして今処理をした回路ブロック（回路ブロックＢ）の隣接回路ブロック（回路ブロックＡ）を求める。隣接回路ブロックが複数ある場合にはその一つを選択し，残りはスタック４４に保持する。今の場合，隣接回路ブロックは回路ブロックＡのみであるので，回路ブロックＡを選択する（回路ブロックＣは処理済みである今の場合隣接回路ブロックとして抽出しない）。スタック４４に渡す回路ブロックは無い。そして，選択した回路ブロック（回路ブロックＡ）を深さ判定部５２に渡す。深さ判定部５２は，隣接回路ブロックを判断する元となった回路ブロック（今の場合，回路ブロックＢ）を親として渡された回路ブロック（回路ブロックＡ）の深さを判定する。今の場合，回路ブロックＢの深さが１であり，回路ブロックＡは回路ブロックＢのファンインブロックの深さを２とする。そして，回路ブロックＡの深さは基準値を越えているので回路ブロックＡを抽出しない。もし，選択した回路ブロックの深さが基準値以下であれば，その回路ブロックを抽出する。
【００３７】
ブロックＡは抽出されなかったため、ブロックＡに対するパス検索以後の処理は行わない。そこで，パス検索部５１はスタック４４に保持されている回路ブロック（回路ブロックＥ）を取り出し，深さ判定部５２に渡す。今の場合，取り出された回路ブロックは回路ブロックＥであるので，深さ判定部５２は回路ブロックＥの深さを判定する。回路ブロックＥは深さ判定が未処理であるので，深さ判定部５２は，回路ブロックＣを親回路ブロックとして回路ブロックＥの深さを判定する（回路ブロックＥを含むパスが複数ある場合には（図５ (b)参照），回路ブロックＥが複数回選択されることがある）。親回路ブロックＣの深さが０で，回路ブロックＥは回路ブロックＣのファンインブロックであるので深さを１とする。深さ判定部５２は回路ブロックＥの深さを判定し，回路ブロックＥへのパスは始めて検索されたものであり，深さも基準値以下であるので抽出回路ブロックとして抽出する。もし，回路ブロックの深さが以前に一度求められている場合には，古い深さと新しく求められた深さを判定し，新しい深さの方が小さい場合にはその深さを回路ブロックの深さとし深さを基準値と比較する。古い深さの方が小さい場合には古い深さを回路ブロックの深さとする，
以上のようにして，回路全体に回路ブロックの抽出処理を行い，パラメータの変更にともない，動作が影響する回路ブロックを抽出する。
【００３８】
なお，図５ (a)の回路では，パスが重複して検索されることはないが，図５ (b)のように回路ブロックＡ−回路ブロックＢ−回路ブロックＣのパスと回路ブロックＡ−回路ブロックＥ−回路ブロックＣのパスがある場合には，回路ブロックＥが２度選択されることになる。このような場合には，回路ブロックＥが２回選択されることがある。そのような場合には，それぞれのパスにおける深さを比較し，最小の深さを選択する。
【００３９】
図６は本発明の回路ブロック抽出部のアルゴリズムである。
図５ (a)の回路ブロックＣに回路パラメータの変更があり，深さ判断の基準値を１として，図６のステップ番号に従って，アルゴリズムを説明する（図４，図５を参照する）。
【００４０】
Ｓ１  パラメータ変更素子を含む回路ブロックを検出する（今の場合，回路ブロックＣ）。
Ｓ２，Ｓ３  隣接回路ブロックを検索する（回路ブロックＣを親として回路ブロックＢと回路ブロックＥが求められる）。回路ブロックがあればＳ４に進み，なければＳ１２に進む。
【００４１】
Ｓ４  回路ブロックがあった場合には，回路ブロックの一つを選択し，残りはスタック４４に保持する。今の場合，回路ブロックＢを選択し，回路ブロックＥをスタック４４に保持するとする。
【００４２】
Ｓ５  回路ブロックの深さを求める（回路ブロックＢの深さを計算し，深さを１とする）。
Ｓ６  深さは基準深度（基準値）以内か判定する。基準深度を満たしていればＳ７に進み，満たしていなければＳ１２に移行し，スタック４４から抽出する。今の場合，回路ブロックＢの基準深度は１であり，回路ブロックＢは基準深度を満たしているのでＳ７に進む。
【００４３】
Ｓ７，Ｓ８  過去にパス検索を実行したか判定する。過去に実行したパスでなければＳ９に進み，過去に実行していればＳ１０に進む。今の場合，ブロックＢは始めてのパス上の回路ブロックであるのでＳ９に進み，抽出処理をする。
【００４４】
Ｓ９，Ｓ８で過去に実行したことのないパスであることが判明したので当回路ブロックをパラメータの変更が影響する回路ブロックとして抽出し，Ｓ２に戻って，Ｓ２以降の処理を繰り返す。今の場合，回路ブロックＢを抽出し，Ｓ２に戻る。
【００４５】
Ｓ２，Ｓ３，Ｓ９で抽出した回路ブロック（回路ブロックＢ）の隣接回路ブロックを検索する。いまの場合，回路ブロックＢの隣接回路ブロックは回路ブロックＡであるのでそれを選択する。そして，回路ブロックＡが見つかり，他に隣接回路ブロック（Ｃは処理済みであるので選択しない）はないので，回路ブロックＡについてＳ５で回路ブロックの深さを求める。回路ブロックＡは回路ブロックＢのファンインブロックであり，親回路ブロックＢの深さは１であるので回路ブロックＡの深さを２とする。そしてＳ６で基準の深度との比較をする。いま，深さの基準深度は１であるので選択しない。そこで，Ｓ１２に進む。
【００４６】
Ｓ１２，Ｓ１３  スタック４４から回路ブロックを抽出する。スタック４４に回路ブロックがあればＳ５に進み，なければ処理を終了する。いま，スタック４４には回路ブロックＥが保存されているので，回路ブロックＥを抽出する。そしてＳ５で回路ブロックＥの深さを判定する。回路ブロックＥは親が回路ブロックＣ（深さ０）であり，そのファンインブロックであるので深さを１とする。そして，Ｓ６で深さを判定し，基準深度以内の深さであるのでＳ８で過去において実行（検索）したパスであるか判定し，過去に検索したパスでないので，Ｓ９で回路ブロックＥを抽出する。
【００４７】
Ｓ２に戻り，今処理をした回路ブロックＥの隣接回路ブロックを検索する。
回路ブロックＥの隣接回路ブロックは回路ブロックＤと回路ブロックＦであるので，そのうちの一つ，例えば回路ブロックＦを選択し，回路ブロックＤをスタック４４に保存する。その後，図５以降の処理を繰り返する。その処理の過程において，回路ブロックＦは親回路ブロックＥのファンアウントであるので，その深さは回路ブロックＥと同じ深さ１とする。そこでＳ６の検索でＳ７に進み，回路ブロックＦは過去に検索されたパスはないので，Ｓ８の判定でＳ９に進み選択される。Ｓ２に戻り，回路ブロックＦの隣接回路ブロックＨについて同様の処理をくりかえす。
【００４８】
図５ (a)ではＳ７，Ｓ８の過去に検索を実行したかの判定の処理で，実行したとして，Ｓ１０，Ｓ１１に進む処理を受ける回路ブロックはないが，図５ (b)のような場合には，基準深さが２の場合回路ブロックＥが２度検索されるので，そのような場合にはＳ１０，Ｓ１１で，新旧の深度を判定する。旧の方が小さい場合には，新の深さを採用しないでＳ１２以降の処理を繰り返し，新の方が小さい場合にはＳ９でその回路ブロックを抽出する。
【００４９】
Ｓ１３でスタックが空になったら回路ブロックの抽出処理を終了する。
図７は本発明の回路シミュレーション装置のシステム構成の実施例の動作説明図である。
【００５０】
図７において，
１２’は回路データ保持部である。
１３はシミュレーション実行部である。
【００５１】
１３’はシミュレーション制御部である。
１４は部分回路抽出部である。
１５は回路情報保持部である。
【００５２】
１６は抽出回路保持部である。
１７はシミュレーション結果出力部である。
１８は入出力制御部である。
【００５３】
３１は入出力装置とのインタフェースであって，キーボード，マウス，磁気ディスク装置等の外部装置との情報の受け渡しを行うものである。
３１は抽出回路である。
【００５４】
８２は入力信号であって，外部端子から入力される信号である。
抽出回路保持部１６において，
７１は抽出ブロックである。
【００５５】
回路情報保持部１５において，
７２は素子情報である。
７３はネットリストを表す。
【００５６】
７４はパラメータである。
７５はシミュレーション結果である。
図７の構成の動作を説明する。
【００５７】
外部装置より入力データ（ネットリスト，素子情報等）を入力する。同じ回路素子について複数の回路パラメータでシミュレーションを実行するような場合には，最初に，一つのパラメータに対して回路全体にシミュレーションを実行する。そしてそのシミュレーション結果は回路情報保持部１５に保持する。
【００５８】
次に，別の回路パラメータ（変更パラメータ）についてシミュレーションを行う時，部分回路抽出部１４は，回路パラメータの変更された回路ブロックを求め，その回路ブロックのパラメータの変更が影響を及ぼす回路ブロックを抽出する。そして，抽出した部分回路の入力端子となる抽出部分回路と残りの回路との境界となるネットを求める。そして，抽出した部分回路に対してはそのネットを外部入力端子として扱い，初期シミュレーションにおいてそのネットに出力された信号を抽出された部分回路の入力信号とする。同様に，パラメータの値を変更する度にその変更の影響する部分回路を抽出し，抽出された部分回路に対してのみシミュレーションを実行する。
【００５９】
図８は図７の構成の回路シミュレーション実行のアルゴリズムである（図８の説明において図７を参照する）。
Ｓ１  外部入力装置より入力データを読み込む。
【００６０】
Ｓ２  初期シミュレーションを実行し，シミュレーション結果を回路情報保持部１５に保持する。また，シミュレーション結果は外部装置（ディスプレイ，プリンタ，磁気ディスク装置等）に出力する。
【００６１】
Ｓ３  部分回路抽出部１４はパラメータの変更された回路素子を含む回路ブロックを判定し，その回路ブロックのパラメータ変更素子の影響が及ぶ範囲を抽出する。
【００６２】
Ｓ４  シミュレーション実行部は抽出回路と残りの回路との接続ネットを抽出された回路の外部入力端子として取り扱う。
Ｓ５  素子パラメータを変更する。
【００６３】
Ｓ６  シミュレーション実行部１３は抽出回路に対して回路シミュレーションを実行する。抽出された部分回路と残りの回路との接続ネットを外部入力端子とした端子には，初期シミュレーションにおいてそのネットに現れた信号をその端子の入力信号とする。
【００６４】
Ｓ７  シミュレーション結果を回路情報保持部１５に保持し，シミュレーション結果出力部１７より外部装置に出力する。
図９は本発明の回路シミュレーションを実行する回路の例である。
【００６５】
図９において，
実線は回路ブロックＡ，Ｃ，Ｄ，Ｆ，Ｇ，Ｉ，Ｊを示す。
点線は回路ブロックＢを示す。
【００６６】
粗い点線は回路ブロックＥ，Ｋを示す。
細かい点線は回路ブロックＨを示す。
ｎ１は回路ブロックＡの入力端子である。
【００６７】
ｎ２は回路ブロックＤの入力端子である。
ｎ３は回路ブロックＨの出力ネットであって，回路ブロックＦの入力信号を与えるネットである。
【００６８】
ＶＣＣは電源端子，ＶＳＳは接地端子である。
Ｃ１の容量を０．１，０．２，１．０の３つに変化させる場合についてシミュレーション解析するものとする。
【００６９】
先ず回路をブロックに分割する。ここでは，ブロックをトランジスタのチャネルおよび容量で結合された素子およびノードに分割する。但し，定電圧源ＶＣＣおよび接地端子ＶＳＳに対しては接続を全て切断し，どのブロックにも属さないものする。以上のような回路分割により回路ブロックＡ〜Ｋまでの１１ブロックに分割される。ブロック間のみの接続で表すと図５ (a)（前述）のようになる。
【００７０】
まず，Ｃ１の容量値を０．１として全回路についてシミュレーションを行う。そして，このシミュレーション結果を保持しておく。次に素子Ｃ１の影響を及ぼす回路ブロックとして，前述の回路ブロックの抽出方法に従って，回路ブロックを抽出する。ブロックＣを基準にして，回路ブロックＣの深さを０とすると，ブロックＢ，Ｅ，Ｆは１，ブロックＡ，Ｄ，Ｈ，Ｉは２，Ｇ，Ｋは３，Ｊは４とでるので，深さの基準値を１にすると回路ブロックＢ，Ｃ，Ｅ，Ｆの４つのブロックが選択される。これら４つのブロックからなる回路に対して，入力端子としてｎ１，ｎ２，ｎ３，ＶＣＣ，ＶＳＳの５つがある。そのうち，本来の外部端子ｎ１，ｎ２，ｎ３を新たな外部端子として信号を入力する。このとき，ｎ３の入力信号は，前回のシミュレーションの結果においてシミュレーション結果として得られた信号を使用する。
【００７１】
例えば，全体の回路シミュレーションにおいて，図１０に示すような信号変化がｎ３に現れたとすると，抽出回路ブロック（Ｂ，Ｃ，Ｅ，Ｆ）の入力端子ｎ３に図１０の信号が入力されるものとしてシミュレーションを行う。
【００７２】
【発明の効果】
本発明によれば，回路素子のパラメータを複数の値に変化させるような場合に，高速な回路シミュレーションを行うことができるようになる。そのため，回路シミュレーションの能率を大幅に向上させることができる。
【図面の簡単な説明】
【図１】本発明の基本構成を示す図である。
【図２】本発明の基本構成における部分回路抽出部の動作説明図である。
【図３】本発明の回路シミュレーション装置のシステム構成の実施例を示す図である。
【図４】本発明の部分回路抽出処理の機能ブロック図である。
【図５】回路接続の例を示す図である。
【図６】本発明の回路ブロック抽出部のアルゴリズムを示す図である。
【図７】本発明の回路シミュレーション装置のシステム構成の実施例の動作説明図である。
【図８】本発明の回路シミュレーション実行のアルゴリズムを示す図である。
【図９】本発明の回路シミュレーションを実行する回路の例を示す図である。
【図１０】回路シミュレーションにより得られた信号の例を示す図である。
【符号の説明】
１：回路シミュレーション装置
２：回路情報入力部
３：データ保持部
４：回路情報保存部
５：シミュレーション結果保持部
６：部分回路抽出部
８：シミュレーション実行部
９：シミュレーション結果出力部
【図１】
0003766119.tif 000002
【図２】
0003766119.tif 000003
【図３】
0003766119.tif 000004
【図４】
0003766119.tif 000005
【図５】
0003766119.tif 000006
【図６】
0003766119.tif 000007
【図７】
0003766119.tif 000008
【図８】
0003766119.tif 000009
【図９】
0003766119.tif 000010
【図１０】
0003766119.tif 000011