JP2007213274A - シミュレーション方法及びシミュレーションプログラム - Google Patents

シミュレーション方法及びシミュレーションプログラム Download PDF

Info

Publication number
JP2007213274A
JP2007213274A JP2006031868A JP2006031868A JP2007213274A JP 2007213274 A JP2007213274 A JP 2007213274A JP 2006031868 A JP2006031868 A JP 2006031868A JP 2006031868 A JP2006031868 A JP 2006031868A JP 2007213274 A JP2007213274 A JP 2007213274A
Authority
JP
Japan
Prior art keywords
circuit
simulation
node
hierarchy
voltage source
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
JP2006031868A
Other languages
English (en)
Other versions
JP5057421B2 (ja
Inventor
Lee Peter
ピーター・リー
Junji Sato
純二 佐藤
Koichi Yokomizo
剛一 横溝
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.)
Renesas Technology Corp
Original Assignee
Renesas Technology 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 Renesas Technology Corp filed Critical Renesas Technology Corp
Priority to JP2006031868A priority Critical patent/JP5057421B2/ja
Priority to US11/619,885 priority patent/US7721234B2/en
Publication of JP2007213274A publication Critical patent/JP2007213274A/ja
Priority to US12/753,832 priority patent/US20100199239A1/en
Application granted granted Critical
Publication of JP5057421B2 publication Critical patent/JP5057421B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/36Circuit design at the analogue level
    • G06F30/367Design 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)

Abstract

【課題】シミュレーション処理すべき階層化回路の階層の深さに拘わらず保存すべきデータ量とシミュレーション処理時間とをほぼ一定にする。
【解決手段】シミュレーション方法は、複数階層に階層化された階層化回路データを用いたシミュレーション結果に対し、上位側と下位側への階層間のインタフェースノードに関してシミュレーションによって得られた結果データを保存する第1処理と、第1処理にて保存された結果データを用いて、第1処理では保存されていない内部ノードのデータを再現する第2処理とを含む。階層間インタフェースノードの結果データが前記内部ノードの値を間接的に規定することになる。保存すべき結果データは階層間インタフェースノードに関するデータであり、保存データ量と第2処理に要する時間は階層の深さ若しくは上位階層であるか下位階層であるかによって影響されない。
【選択図】図1

Description

本発明は、回路シミュレーション方法に代表されるデータ処理方法、そしてシミュレーションプログラムに関し、例えば半導体集積回路の開発もしくは設計に用いるシミュレータに適用して有効な技術に関するものである。
回路シミュレーション技術は半導体集積回路の回路設計及びレイアウト設計などにおける回路検証技術として利用される。近年のデバイスの微細化に伴う回路の大規模化、高集積化により、回路シミュレーションの実行時間増大、シミュレーション結果のデータ量増大が顕在化されている。実際の回路シミュレーション処理では、設計者が確認したい情報を出力として選択的に指定してシミュレーション処理を行う。指定された情報だけが結果データとして保存される。従って、保存されていない結果データは結果表示できない。任意の結果表示を可能にするにはシミュレーション対象の全ての回路ノードを指定したシミュレーションを行って結果を保持しておかなければならない。大規模回路では全部の結果データを保存するにはデータ量が膨大になり、全てを保存するのは実質的に不可能である。また、結果表示の対象データ量が増大すると、結果データの検索時間が増し、表示速度が遅くなる。更に、大規模回路では、シミュレーション処理時間が増大するため、部分的な回路変更や素子パラメータの変更に対処するための再シミュレーション時間も増大する。
シミュレーション結果を保存する記憶領域の削減に関し、特許文献1にはシミュレーション結果を圧縮して保存する技術が記載され、特許文献2には信号経路の上流側から下流側に向かって回路を分割し、分割回路の出力の影響を考慮して部分毎にシミュレーションを進める技術が開示される。
しかしながら、特許文献1に記載の技術では、圧縮・伸張処理が新たに必要になるから、シミュレーションや結果表示に伴う計算機処理時間が更に増大してしまう。特許文献2に記載の技術では、計算機処理に用いるメモリ量は減ってもその結果を保持する補助記憶手段の記憶容量は依然として減らない。しかも、他のシミュレーション結果に依存しないように分割して回路を直列的にシミュレーション処理しなければならないから処理時間は増大する傾向にあると考えられる。
そこで本出願人は先に特許出願を行った(特許文献3)。先の出願に係るシミュレーション方法は、階層化回路データの上位側階層の回路ノードを結果出力ノードとするシミュレーションを行って結果を保存する第1処理と、それよりも下位側階層の回路ノードに対し、上記処理で保存されているシミュレーション結果を前記下位側階層の回路ノードを含む回路領域の入出力情報に用いて、所定の初期条件でシミュレーションを行う第2処理と、を含むものである。
特開平11−96207号公報 特開平9−259151号公報 国際公開第03/036523号パンフレット
本発明者は先の出願発明について更に検討した。第1は、保存すべきデータ量とシミュレーション速度とのトレードオフの点である。第2は、シミュレーションに際してボルテージソースループを生ずる場合に着目した。第1の観点によれば、シミュレーション結果を保存しない下位階層が深まるほど保存すべきデータ量は増えるが、下位階層に対するシミュレーション処理時間は短くなる。保存すべきデータ量を減らそうとすると逆に下位階層に対するシミュレーション処理時間が長くなってしまう。第2の点については、シミュレーションに際して電圧源とインダクタの少なくとも一方だけしか接続されていないパスがあると、そのパスの両端に電圧源またはグランドを接続してループを構成したときにそのパスに含まれるノードの電圧に矛盾を生じたり、電流値を取得することができないという不都合を生ずる虞がある。そのような電圧源とインダクタのみから構成されたループをボルテージソースループと言う。シミュレーション対象回路にボルテージソースループを生ずると、シミュレーション結果が得られない場合がある。
本発明の目的は、大規模なシミュレーション対象に対して全てのシミュレーション結果データを保存しなくても任意の結果出力点のデータを表示可能であって、シミュレーション処理すべき階層化回路の階層の深さに拘わらず保存すべきデータ量とシミュレーション処理時間とをほぼ一定にすることができるシミュレーション方法を提供することにある。
本発明の別の目的は、大規模なシミュレーション対象に対して全てのシミュレーション結果データを保存しなくても任意の結果出力点のデータを表示可能であって、ボルテージソースループによる不都合も生じ難いシミュレーション方法を提供することにある。
本発明の上記並びにその他の目的と新規な特徴は本明細書の以下の記述と添付図面から明らかにされるであろう。
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。
〔1〕<1−A>.本発明に係るシミュレーション方法は、複数階層に階層化された階層化回路データを用いたシミュレーション結果に対し、上位側と下位側への階層間のインタフェースノードに関してシミュレーションによって得られた結果データを保存する第1処理と、第1処理にて保存された結果データを用いて、第1処理では保存されていない内部ノードのデータを再現する第2処理とを含む。所定の初期条件は、望ましくは前記第1処理における前記シミュレーションと同等の初期条件であるとよい。前記初期条件は、例えば第1処理でシミュレーション結果と共に保存して、再利用可能にすればよい。これにより、シミュレーション結果が保存される結果データは階層間のインタフェースノードのデータに制限されるから、シミュレーションで保存すべき結果データ量を削減することができる。インタフェースノードではない内部ノードについてはシミュレーション結果が保存されていないが、第1処理のシミュレーション条件と同じ初期条件の元では、階層間インタフェースノードの結果データが前記内部ノードの値を間接的に規定することになる。これにより、第1処理で得られた結果データの表示だけでは足りない表示指令に対して、第2処理でシミュレーションを行った再現結果を表示すればよい。したがって、大規模集積回路のような大規模なシミュレーション対象に対して全てのシミュレーション結果データを保存するのと等価なデータ表示性能を少ない記憶容量(第1処理による結果データを保存可能な容量)で達成することができる。保存すべき結果データ量の削減により結果データの検索時間を短縮できる。また、第2処理によるシミュレーション時の対象回路規模を小さくできるから、大規模回路で部分的な回路変更や素子パラメータの変更時に再シミュレーション時間を短縮することが可能である。さらに、保存すべき結果データは階層間インタフェースノードに関するデータであり、階層の深さ若しくは上位階層であるか下位階層であるかによって影響されない。したがって、シミュレーション処理すべき階層化回路の階層の深さに拘わらず保存すべきデータ量とシミュレーション処理時間とをほぼ一定にすることができる。
前記第1処理において、上位側と下位側への階層間のインタフェースノードではない内部ノードのシミュレーション結果データが、別の階層の電圧源又は電流源の値を決定するときは、当該内部ノードのシミュレーション結果データも保存し、当該階層中の素子のシミュレーション結果データが、別の階層の電圧源又は電流源の値を決定するときは、当該素子のシミュレーション結果データも保存するのがよい(図24)。ある階層の内部ノードのシミュレーション結果が別の階層の電圧源又は電流源の値を決定するという依存関係を持っていても、シミュレーション時間を短縮可能とする上記方法による階層化シミュレーションを行うことができる。
<1−B>.このとき、前記第2処理の対象とされる内部ノードを有する階層化回路領域(3p)が、電圧源(Vs)とインダクタ(Lt)の何れか1個の素子又は電圧源とインダクタの少なくとも2個以上の連結された素子から構成された部分回路(VLC)と、前記部分回路を別の階層の階層化回路に接続する1個以上のインタフェースノードとしての特定ノード、例えば、上位階層の階層化回路に接続する1個以上のインタフェースノードとしての特定ノード(N1〜NN)、又は下位階層の階層化回路に接続する1個以上のインタフェースノードとしての特定ノード(M1〜MN)とを有し、前記部分回路がグランド電位(GND)に接続されているとき、前記第2処理において前記特定ノードに与える入出力情報を電流情報(IN1〜INN、IM1〜IMN、)とする(図31、図46)。電流情報は所要の電流源として与えられる。シミュレーションに際して回路素子として電圧源とインダクタの少なくとも一方の素子だけしか接続されていない部分回路があっても、当該部分回路の電位的基準をグランド電位によって規定し、且つ、当該部分回路の特定ノードに電流情報を与えることによって、前記特定ノードに電圧情報が与えられることによって生ずるボルテージソースループが形成される虞を排除して、必要なシミュレーション結果を得ることができる。電流情報を取得するには、第1の処理において、当該一方の特定ノードに電圧ゼロの電圧源を接続し、その素子に流れる電流を求め、これを保存して第2の処理で利用すればよい。
また、前記第2処理の対象とされる内部ノードを有する階層化回路領域が、1個の電圧源又は少なくとも2個以上の連結された電圧源から構成された部分回路(VLCv)と、前記部分回路を別の階層の階層化回路に接続する1個以上のインタフェースノードとしての特定ノード、例えば、上位階層の階層化回路に接続する1個以上のインタフェースノードとしての特定ノード(N1〜NN)、又は下位階層の階層化回路に接続する1個以上のインタフェースノードとしての特定ノード(M1〜MN)と、前記部分回路に接続する他の回路(CIR)とを有し、前記部分回路がグランド電位に接続されているとき、前記第2処理において部分回路(VLCv)の全ての特定ノードに与える入出力情報を電流情報とする(図35、図50)。前記部分回路に更に他の回路が接続される場合には当該他の回路の状態によって部分回路の前記特定ノードの電圧値が決まることになるので本来全ての特定ノードはフローティングにすればよい。如何なる場合にもボルテージソースループを生じないようにするためである。部分回路の電圧源に流れる電流をシミュレーションによって検証したい場合には、部分回路(VLCv)の全ての特定ノードに入出力情報として電流情報を与えればよい。電流情報は上記と同じように求めればよい。
また、前記第2処理の対象とされる内部ノードを有する階層化回路領域が、1個の電圧源又は2個以上の連結された電圧源から構成された部分回路と、前記部分回路を別の階層の階層化回路に接続する1個以上のインタフェースノードとしての特定ノード、例えば、上位階層の階層化回路に接続する1個以上のインタフェースノードとしての特定ノード(N1〜NN)、又は下位階層の階層化回路に接続する1個以上のインタフェースノードとしての特定ノード(M1〜MN)と、前記部分回路に接続する他の回路とを有し、前記部分回路がグランド電位に接続されているとき、前記第2処理において前記部分回路の電圧源に流れる電流を見ないとき全ての前記特定ノードをフローティングとする(図34、図49)。部分回路の電圧源に流れる電流をシミュレーションによって検証することを要しない場合には、他の回路に直結する特定ノード以外の上位インタフェースノードもフローティングであってよいということである。
また、前記第2処理の対象とされる内部ノードを有する階層化回路領域が、電圧源とインダクタの何れか1個の素子又は電圧源とインダクタの少なくとも2個以上の連結された素子から構成された部分回路と、前記部分回路を別の階層の階層化回路に接続する1個以上のインタフェースノードとしての特定ノード、例えば、上位階層の階層化回路に接続する1個以上のインタフェースノードとしての特定ノード(N1〜NN)、又は下位階層の階層化回路に接続する1個以上のインタフェースノードとしての特定ノード(M1〜MN)とを有し、前記部分回路がグランド電位に接続されているとき、前記第2処理において前記部分回路の全ての素子に流れる電流を見ないとき前記部分回路を削除する(図36、図51)。要するに、部分回路の全ての素子に流れる電流をシミュレーションによって検証することを要しない場合には、部分回路を削除してシミュレーションを行えばよいということであって、シミュレーションのための回路情報の削減、計算機処理時間の短縮に寄与する。
<1−C>.上記説明では部分回路はグランド電位に接続されているものとした。必ずしもそうであることを要しない。前記第2処理の対象とされる内部ノードを有する階層化回路領域が、電圧源とインダクタの何れか1個の素子又は電圧源とインダクタの少なくとも2個以上の連結された素子から構成された部分回路と、前記部分回路を別の階層の階層化回路に接続する2個以上のインタフェースノードとしての特定ノード、例えば、上位階層の階層化回路に接続する2個以上のインタフェースノードとしての特定ノード(N1〜NN)、又は下位階層の階層化回路に接続する2個以上のインタフェースノードとしての特定ノード(M1〜MN)とを有し、前記部分回路がグランド電位に非接続とされているとき、前記第2処理において前記2個以上の特定ノードの一つに与える入出力情報を電圧源情報とし、残りの特定ノードに与える入出力情報を電流源情報とする(図39、図54)。特定ノードの一つに与える入出力情報としての電圧源情報が例えば上記におけるグランド電位の相当する情報とされる。
同様に、前記第2処理の対象とされる内部ノードを有する階層化回路領域が、1個の電圧源又は少なくとも2個以上の連結された電圧源から構成された部分回路と、前記部分回路を別の階層の階層化回路に接続する2個以上のインタフェースノードとしての特定ノード、例えば、上位階層の階層化回路に接続する2個以上のインタフェースノードとしての特定ノード(N1〜NN)、又は下位階層の階層化回路に接続する2個以上のインタフェースノードとしての特定ノード(M1〜MN)と、前記部分回路に接続する他の回路とを含み、前記部分回路がグランド電位に非接続とされているとき、前記第2処理において一つの特定ノードに与える入出力情報を電圧源情報とし、残りの特定ノードに与える入出力情報を電流源情報とする(図42、図57)。
更に同じく、前記第2処理の対象とされる内部ノードを有する階層化回路領域が、1個の電圧源又は2個以上の連結された電圧源から構成された部分回路と、前記部分回路を別の階層の階層化回路に接続する2個以上のインタフェースノードとしての特定ノード、例えば、上位階層の階層化回路に接続する2個以上のインタフェースノードとしての特定ノード(N1〜NN)、又は下位階層の階層化回路に接続する2個以上のインタフェースノードとしての特定ノード(M1〜MN)と、前記部分回路に接続する他の回路とを含み、前記部分回路がグランド電位に非接続とされているとき、前記第2処理において前記部分回路の電圧源に流れる電流を見ないとき、一つの特定ノードに与える入出力情報を電圧源情報とし、残りの特定ノードをフローティングとする(図51、図56)。
同じく、前記第2処理の対象とされる内部ノードを有する階層化回路領域が、電圧源とインダクタの何れか1個の素子又は電圧源とインダクタの少なくとも2個以上の連結された素子から構成された部分回路と、前記部分回路を別の階層の階層化回路に接続する1個以上のインタフェースノードとしての特定ノード、例えば、上位階層の階層化回路に接続する1個以上のインタフェースノードとしての特定ノード(N1〜NN)、又は下位階層の階層化回路に接続する1個以上のインタフェースノードとしての特定ノード(M1〜MN)とを有し、前記部分回路がグランド電位に非接続されているとき、前記第2処理において前記部分回路の全ての素子に流れる電流を見ないとき前記部分回路を削除する。
〔2〕.本発明の別の観点によるシミュレーション方法は、指定された側階層の回路ノードを階層化回路データから抽出する抽出処理と、前記抽出処理で抽出された回路ノードを結果出力ノードとして回路シミュレーションを行うシミュレーション実行処理とを含む。そして、前記シミュレーション実行処理により結果出力ノードに得られた結果データのうち、上位側と下位側への階層間のインターフェースノードに関するものを保存する保存処理と、所要階層の一つ上位又は一つ下位の階層との間の前記保存されたインタフェースノードに関する結果データを用いて、当該所要階層の回路ノードについてシミュレーション結果データを得るシミュレーション再実行処理とを含む。
この場合にも、シミュレーション再実行処理において上記<1−A>と同様にシミュレーション処理すべき階層化回路の階層の深さに拘わらず保存すべきデータ量とシミュレーション処理時間とをほぼ一定にすることができ、シミュレーション時間を短縮可能とする上記方法による階層化シミュレーションを行うことができる。さらに、<1−B>、<1−C>で説明したと同じように、ボルテージソースループが発生する虞を解消するための部分回路に関する処理を含めてシミュレーション方法を実現することができる。
また、本発明の具体的な形態として、シミュレーション処理結果の表示指令に対し、前記保存処理で保存された結果データの表示又は前記シミュレーション再実行処理で得られたシミュレーション結果の表示を行う表示処理を更に含んでよい。
前記抽出処理は、例えば、階層化回路データにおける下位階層への参照系列を追いながら階層レベルを下位に設定変更する毎に、設定された階層レベルで把握可能な回路ノードを登録する処理を、シミュレーション対象における全ての参照系列に対して行う処理としてよい。シミュレーションの結果出力ノードを階層指定によって抽出することが可能になる。
〔3〕.シミュレーション結果の表示処理に着目した具体的な形態によるシミュレーション方法は、指定された階層の階層化回路データの回路ノードを結果出力ノードとして回路シミュレーションを行うシミュレーション実行処理と、前記シミュレーション実行処理により結果出力ノードに得られた結果データのうち、上位側と下位側への階層間のインターフェースノードに関するものを保存する保存処理と、前記保存処理で保存された結果データの中から検索された結果データを、前記シミュレーション実行処理結果として表示する第1表示処理とを含む。更に、所要階層の一つ上位又は一つ下位の階層との間の前記保存されたインタフェースノードに関する結果データを用いて、当該所要階層の回路ノードについてシミュレーション結果データを得るシミュレーション再実行処理と、前記シミュレーション再実行処理の結果データを表示する第2表示処理と、を含む。
この場合にも、シミュレーション再実行処理において上記<1−A>と同様にシミュレーション処理すべき階層化回路の階層の深さに拘わらず保存すべきデータ量とシミュレーション処理時間とをほぼ一定にすることができ、シミュレーション時間を短縮可能とする上記方法による階層化シミュレーションを行うことができる。さらに、<1−B>、<1−C>で説明したと同じように、ボルテージソースループが発生する虞を解消するための部分回路に関する処理を含めてシミュレーション方法を実現することができる。
〔4〕.本発明の更に別の観点によるシミュレーション方法は、指定された階層の階層化回路データを用いて回路シミュレーション処理を行うシミュレーション実行処理と、前記シミュレーション実行処理により結果出力ノードに得られた結果データのうち、上位側と下位側への階層間のインターフェースノードに関するものを保存する保存処理とを含む。そして、前記階層化回路データが修正されたとき、その修正が反映される回路ノードについて、その回路ノードにインタフェースされる一つ上位の階層又は一つ下位の階層との間の前記保存されたインタフェースノードに関する結果データを用いて回路シミュレーションを実行するシミュレーション再実行処理とを含む。これにより、全体的なシミュレーションをやり直さなくても済むから、シミュレーション時間の短縮に役立つ。上記<1−A>と同様のシミュレーション時間に短縮、<1−B>、<1−C>と同様のボルテージソースループの抑制を実現することができる。
〔5〕.回路シミュレーション以外のデバイスシミュレーション等にも着目した形態では、シミュレーション方法は、指定された上位側階層の結果出力点をシミュレーション対象から抽出する第1処理と、抽出された結果出力点に関するシミュレーションを行う第2処理と、前記シミュレーション実行処理により結果出力ノードに得られた結果データのうち、上位側と下位側への階層間のインターフェースノードに関するものを保存する第3処理とを含む。更に、所要階層の一つ上位又は一つ下位の階層との間の前記保存されたインタフェースノードに関する結果データを用いて、前記第2処理のシミュレーションと同等の初期条件で、当該所要階層の回路ノードについてシミュレーション結果データを得るためのシミュレーションを行う第4処理と、を含む。
〔6〕.本発明に係るシミュレーションプログラムは、回路シミュレーションを支援するデータ処理を行なうためにコンピュータが実行するプログラムである。前記データ処理は、複数階層に階層化された階層化回路データを用いたシミュレーション結果に対し、上位側と下位側への階層間のインタフェースノードに関してシミュレーションによって得られた結果データを保存する第1処理と、第1処理にて保存された結果データを用いて、第1処理では保存されていない内部ノードのデータを再現する第2処理と、を含む。このシミュレーションプログラムにより、上記シミュレーション方法を容易に実現することができる。
更に別の態様に係るシミュレーションプログラムは、コンピュータによるデータ処理として、指定された階層の回路ノードを階層化回路データから抽出する抽出処理と、前記抽出処理で抽出された回路ノードを結果出力ノードとして回路シミュレーションを行うシミュレーション実行処理と、上位側と下位側への階層間のインタフェースノードに関して前記シミュレーション実行処理により結果出力ノードに得られた結果データを保存する保存処理と、所要階層の一つ上位又は一つ下位の階層との間の前記保存されたインタフェースノードに関する結果データを用いて、当該所要階層の回路ノードについてシミュレーション結果データを得るシミュレーション再実行処理と、を規定する。
更に別の態様に係るシミュレーションプログラムは、コンピュータによるデータ処理として、指定された階層の階層化回路データの回路ノードを結果出力ノードとして回路シミュレーションを行うシミュレーション実行処理と、上位側と下位側への階層間のインタフェースノードに関して前記シミュレーション実行処理により結果出力ノードに得られた結果データを保存する保存処理と、前記保存処理で保存された結果データの中から検索された結果データを、前記シミュレーション実行処理結果として表示する第1表示処理と、所要階層の一つ上位又は一つ下位の階層との間の前記保存されたインタフェースノードに関する結果データを用いて、当該所要階層の回路ノードについてシミュレーション結果データを得るシミュレーション再実行処理と、前記シミュレーション再実行処理の結果データを表示する第2表示処理と、を規定する。
更に別の態様に係るシミュレーションプログラムは、コンピュータによるデータ処理として、指定された上位側階層の結果出力点をシミュレーション対象から抽出する第1処理と、抽出された結果出力点に関するシミュレーションを行う第2処理と、上位側と下位側への階層間のインタフェースノードに関して前記シミュレーション実行処理により結果出力ノードに得られた結果データを保存する第3処理と、所要階層の一つ上位又は一つ下位の階層との間の前記保存されたインタフェースノードに関する結果データを用いて、前記第2処理のシミュレーションと同等の初期条件で、当該所要階層の回路ノードについてシミュレーション結果データを得るためのシミュレーションを行う第4処理と、を規定する。
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記の通りである。
すなわち、大規模なシミュレーション対象に対して全てのシミュレーション結果データを保存しなくても任意の結果出力点のデータを表示可能であって、シミュレーション処理すべき階層化回路の階層の深さに拘わらず保存すべきデータ量とシミュレーション処理時間とをほぼ一定にすることができる。
《オンザフライシミュレーション》
図1には本発明に係るシミュレーション方法の前提となる概念を結果出力区分の一例と共に示す。
同図において1は、設計データで特定されるシミュレーション対象回路である。回路シミュレーションを行なうとき、特定される信号端子もしくは回路ノードに入力波形情報が与えられ、この初期情報を基に非線形方程式及び回路行列を解くことで初期の回路状態を決定する。この時、全ての回路ノードの初期値が決定する。初期の回路状態を基に入力波形情報を遷移して非線形方程式及び回路行列を解くことでその回路状態を決定しながら、回路ノードの遷移データを求めていく。この内、結果出力ノードとして指定された回路ノードの結果データが保存される。結果データを保存する回路ノードは、階層化された回路データ(階層化回路データ)において、上位側階層と下位側階層への階層間のインタフェースノードに限定される。図1において回路領域1内の各種矩形領域3a〜3h、3aa〜3aeは夫々階層化回路データの領域である。ここでは階層レベルについて詳細な区別はされていないが、ハッチングが付された回路領域(Individual Device)3aa〜3ae、3b、3g、3hは単位素子若しくは単位デバイスの回路領域であり、階層化された最小単位の領域とされる。3a、3cに代表される白抜き矩形の回路領域は更に下位側に階層を有する回路領域(Subcircuit)とされる。回路領域3dには最小単位の単位素子として抵抗素子3da,3dbを直列した回路を例示している。図1において階層間のインタフェースノードは、N1〜N10、N12〜N14とされる。図1において結果データが保存されない内部ノードは、N11、N15〜N18とされる。インタフェースノードの結果データを保存するときには、シミュレーション対象回路1の全ての回路ノードの初期値も併せて保存する。例えば、回路領域3aの回路ノードN15〜N17に関するシミュレーション結果が欲しい場合には、回路領域3aの内部の回路ノードN15〜N17に対する初期状態を、前記保存されている初期値によって決定し、回路領域3aにインタフェースされるインタフェースノードN5〜N8の状態は、前記保存された結果データから決める。これにより、部分的な回路領域3aのシミュレーションを、対象回路1の全体に対して行ったシミュレーションと同等の初期条件で実行でき、それによって当該領域3a内の回路ノードN15〜N17に得られた結果データを表示すればよい。その他の回路領域3c〜3fの内部回路ノードに対しても必要に応じて部分的なシミュレーションを再実行して、その結果を表示すればよい。そのようなデータ非保存の内部ノードに関するシミュレーションは、「結果を表示したいときその場ですぐに表示すべき情報を復元するためのシミュレーション」という意味で、オンザフライシミュレーション(on-the-fly simulation)とも称することにする。
図2には本発明に係るシミュレーション方法の概念を更に原理的に示してある。シミュレーション対象回路1に含まれる階層化回路データの領域3に対し、上位階層へのインタフェースノードNuiのシミュレーション結果データ、下位階層へのインタフェースノードNdiのシミュレーション結果データが保存され、領域3の内部ノードNisのシミュレーション結果データは原則として保存対象とはされない。階層化回路データの領域3aに着目すると、上位階層へのインタフェースノードNdiのシミュレーション結果データが保存され、領域3aの内部ノードNaisのシミュレーション結果データは原則として保存対象とはされない。インタフェースノードの保存されるシミュレーション結果データを保存結果データ、内部ノードの保存されないシミュレーション結果データを非保存結果データとも称する。
図3には本発明に係るシミュレーション方法の原理が階層化回路データの階層構造に着目して示される。シミュレーション対象回路1は階層化された回路ブロックにより定義される。最上位ブロックから最下層の回路ブロックまで階層化されている。最上位ブロックから最下層の回路ブロック毎に、保存結果データ4と非保存結果データ9が存在している。各ブロックにおいて、ハッチングした部分が保存結果データに応ずるインタフェースノードを意味し、その他の部分が内部ノードを意味する。シミュレーションで保存されなかった非保存結果データに対応する内部ノードに関する表示要求に対しては前記オンザフライシミュレーション10によって得られた結果データ5を表示部11に表示すればよい。
図3より明らかなように、保存すべきシミュレーション結果データは少なくなる。結果データが保存されて入いないノードに対しては、必要に応じて、その都度、前記オンザフライシミュレーション10で取得した結果データ5を表示するシミュレーション方法を採用することにより、大規模集積回路のような大規模なシミュレーション対象に対して全てのシミュレーション結果データを保存するのと等価なデータ表示性能を少ない記憶容量で達成することができる。保存すべき結果データ量の削減により結果データの検索時間を短縮できる。
次に、保存結果データ4を取得した後、シミュレーション対象回路1における部分的な回路変更や素子パラメータの変更があったとき、その変更を反映したシミュレーション結果を得る方法について説明する。
図4にはシミュレーション対象回路における部分的な回路変更や素子パラメータの変更があったときの状態が例示される。図4では例えば前記回路領域3aが変更されている。この変更前に、シミュレーション対象回路のシミュレーションによりインタフェースノードN1〜N10、N12〜N14の結果データは既に保存されているものとする。回路領域3aの変更は、当該回路領域3aの出力を信号伝播の上流側から受ける回路ノードN7,N8、N12,N13及び回路領域3d,3e内部の回路ノードに影響を与える。
図5には部分的な回路変更や素子パラメータの変更があったとき、その変更を反映したシミュレーション結果を得る方法が例示される。前記保存結果データ4を取得したときの回路領域3aに対する変更は、当該回路領域3aの出力を信号伝播の上流側から受ける回路ノードN7,N8、N12,N13及び回路領域3d,3e内部の回路ノードに影響を与える。ここでは、そのような変更によって影響を受ける領域として、6で示されるように、変更される回路領域のインタフェースノードと其れによって影響を受ける別の回路領域のインタフェースノードとを包含する領域に着目する。そのような回路領域6に対して、前記オンザフライシミュレーションに類似の手法でシミュレーションを行う。変更された回路領域3aと外部で接続する回路ノードN5,N6,N9の状態は前記保存された結果データから決定される。それに基づいて、変更された回路領域3aの内部ノードの初期値も決定される。また、回路領域3aの出力を信号伝播の上流側から受ける回路ノードN7,N8、N12,N13及び回路領域3d,3e内部の回路ノードも回路領域3aの変更に応じてその初期値が決定される。回路領域3eに関してはノードN9の結果保存データも利用する。これにより、部分的な回路領域6のシミュレーションを、部分的に変更された対象回路1の全体に対して行ったシミュレーションと同等の初期条件で実行でき、それによって当該領域6の回路ノードN7、N8,N12,N13に得られた結果データを、変更前の回路ノードの結果データと置き換えればよい。
図6には図5の部分的な変更に対処するシミュレーション方法の原理が階層化回路データの階層構造に着目して示される。図6のBLKiの内部は回路領域6において前記部分的な回路変更や素子パラメータの変更があった回路部分を総称する。領域6のネットリスト7と前記保存結果データ4の一部を用いて回路シミュレーションを行うことにより、回路領域6に関する新規の保存結果データ8が生成される。
上記より、部分的な回路変更等の影響を受ける回路領域6に対して、前記オンザフライシミュレーションに類似の手法でシミュレーションを行うことができるから、シミュレーション時の対象回路規模を小さくでき、大規模回路で部分的な回路変更や素子パラメータの変更時に再シミュレーション時間を短縮することが可能になる。
図7には前記オンザフライシミュレーションの並列処理が例示される。図1で説明したオンザフライシミュレーションを複数の回路領域で行うとき、回路領域3a,3c,3e,3fに対するシミュレーションをシミュレータによる並列演算処理PRC1〜PRC4により並列処理してよい。これにより、複数の回路領域に対する表示指令に応答する演算処理及び表示動作の高速化を実現することができる。
図8には回路変更等に起因する部分領域に対するオンザフライシミュレーション類似のシミュレーションを並列処理する例が示される。部分的な回路変更によって影響される部分領域として、図示の6A,6Bの複数個所が存在する場合に、それら部分領域6A,6Bに対し、シミュレータによる並列演算処理PRC1〜PRC2を用いて並列処理してよい。これにより、複数の回路変更個所が信号経路を共有しない複数の部分領域6A,6Bに及ぶ場合にもそれらに対する再シミュレーション処理を高速化することができる。
ここで、内部ノードや素子のデータも結果保存データとする場合について説明する。例えば図24の例では、電流源3iの電流値Idepは、内部ノードNS3の電圧VNS3と、電圧源VS4に流れる電流値IVS4とに依存する。電圧源3gの電圧Vdepは、ノードN11とノードN10の差電圧とされ、これは内部ノードNS1の電圧VNS1と電圧源VS2に流れる電流INS2とに依存する。このように、回路領域3aにおいて上位側と下位側への階層間のインタフェースノードではない内部ノードNS1とNS3、素子としての電圧源VS2とVS4のシミュレーション結果データが、別の階層の電圧源3i、電流源3gの値を決定するときは、当該内部ノードNS1とNS3、および当該電圧源VS2とVS4のシミュレーション結果データも保存する。ある階層の内部ノードや電圧源のような素子のシミュレーション結果が別の階層の電圧源又は電流源の値を決定するという依存関係を持っていても、上記による階層化シミュレーションを行うことができる。
次に図1で説明したしシミュレーション方法を更に具体的に説明する。
図9には本発明に係るシミュレーション方法を実現する為のデータ処理システムが例示される。ネットリスト13はシミュレーション対象回路を特定する階層化回路データである。データ保存領域情報11は階層化回路データにおいて結果出力ノードとして抽出すべき回路ノードを決める為の情報、例えばインタフェースノードと内部ノードを区別するための情報である。入力波形情報12は階層化回路データで特定される信号端子もしくは回路ノードに与えられる信号波形を規定する情報であり、シミュレーション対象回路の回路ノードの初期値は前記入力波形情報12等で決まる。デバイス特性情報15は階層化回路データで特定される回路素子の回路特性を規定する為のデバイスモデルパラメータなどを意味する。制御情報14はシミュレーションを行う回路シミュレータ10の動作を制御するその他の制御情報を意味する。回路シミュレータ10は、データ保存領域情報11、入力波形情報12、ネットリスト13、制御情報14、及びデバイス特性情報15を入力し、図1で説明したように、階層化回路データの指定された上位側階層の回路ノードを結果出力ノードとする回路シミュレーションを行い、その結果を保存結果データ4として保存する。
シミュレーション結果の表示制御手段17は、表示ノードの指定情報16が入力されると、その情報で指定された回路ノードが保存結果データ4に含まれているかを検索する。含まれていれば、検索した回路ノードのデータを結果波形情報18としてディスプレイ19に表示制御する。
表示ノードの指定情報16で指定された回路ノードのデータが保存結果データ4に含まれていない場合、オンザフライシミュレーションを経て必要な回路ノードの波形情報をディスプレイ19に表示する。この処理はオンザフライシミュレーション制御等を行う部分回路シミュレーション制御手段20で制御する。すなわち、再実行制御部24は、所要の回路ノードのデータが保存結果データ4に含まれていないとき、その回路ノードを結果出力ノードとする回路シミュレーションに必要な情報を、前記ネットリスト13、制御情報14、デバイス特性情報15及び保存結果データ4を参照して、部分再実行用データ生成手段21で生成する。生成された部分再実行用データ22は、例えば図1の回路領域3aを部分シミュレーションする為のノードN5〜N8の保存情報、領域3a内部の回路ノードN15〜N17の初期値情報、論理構成情報、論理を構成するデバイスの特性情報等が、シミュレータで処理可能なフォーマットに変換されたデータとされる。回路シミュレータ23はその部分再実行用データ22を用いてシミュレーションを実行し、所要の結果出力ノードの波形データを生成する。生成された波形データは結果表示制御手段17を介してディスプレイ19に表示される。特に図示はしないが、従来のシミュレーション処理システムでは対象回路全体の回路ノードを結果出力ノードとしてシミュレーションを行い、図9の保存結果データ4と非保存結果データを区別なく合わせた量のデータが取得される。従来のシミュレーション処理システムでは図9のようなオンザフライシミュレーション制御による部分回路シミュレーション制御を行う手段は存在しない。表示指令で指定された回路ノードの波形情報がなければその指令に対してエラー応答を返すだけである。
図10には図9の回路シミュレータ10による回路シミュレーション処理フローが例示される。前記ネットリスト13などの必要な情報を入力する(S1)。それら入力情報に基づいて、シミュレーション対象の回路ノードから指定階層の回路ノードを抽出し、結果出力ノードとして設定する(S2)。ここでは、結果出力ノードとして抽出する対象はインタフェースノードだけでなく、他の回路領域と直接依存関係のある内部ノードも抽出する。前記入力情報に基づいてシミュレーションの為の行列式が生成され(S3)、デバイスのモデル計算(S4)、行列計算(S5)を経て、ニュートンラプソン法による解の収束が得られたかを判定し(S6)、所定の誤差範囲内で収束が得られるまで上記処理を繰返す。それによる収束値は、その時の結果出力ノードにおける遷移状態の一つの値とされ、全ての結果出力ノードに対する解析が終了するまで、前記モデル計算、行列計算、収束判定を繰り返す(S7,S8)。それら処理で各結果出力ノードに得られた結果データが出力されて(S9)、保存される。
図11には図9の結果表示制御手段17及び部分回路シミュレーション制御手段20によるシミュレーション結果の表示制御フローが例示される。表示ノード情報16で指定された回路ノードを示す表示変数が与えられると(S11)、その表示変数データを検索し(S12)、対応する結果データの有無が判定される(S13)。対応する結果データがある場合にはデータ表示を行う(S14)。対応する結果データがない場合には、部分回路シミュレーション制御手段20による部分回路シミュレーション処理が行われ(S15)、それによって得られた結果データが表示される(S14)。結果表示の終了が指示されるまで、上記処理ステップを繰返して、結果表示の制御が行われる(S16)。
図12には図9の部分回路シミュレーション制御手段20と結果表示制御手段17によって構成されるオンザフライシミュレーション機能付きの結果表示制御手段26の詳細な一例が示される。部分再実行用データ生成手段21で生成される部分再実行用データ22は、部分再実行用入力波形情報22A、部分再実行用ネットリスト22B、部分再実行用初期値情報22Cを含む。オンザフライシミュレーションによるシミュレーションの再実行対象を図1の回路領域3aとすると、部分再実行用入力波形情報22Aは例えば保存結果データに含まれる図1の回路ノードN5〜N8の情報とされる。部分実行用ネットリスト22Bは例えば図1の回路領域3aの回路構成を規定するネットリストとされる。前記部分再実行用初期値情報22Cは、例えば保存結果データ4と共に保存された回路領域3a内部の回路ノードN15〜N17の初期値情報とされる。前記部分再実行用データを用いた回路シミュレーションにより、非保存結果データとされた回路ノードの内の所要の回路ノードの情報が結果データ23Aとして得られる。
次に、データを保存すべき結果出力ノードを抽出する処理について説明する。この処理は図10のステップS2における結果出力ノード抽出処理に対応される。
図13には階層構造を持った回路データ(階層化回路データ)による階層構造が例示される。●は回路ブロック(以下単にブロックとも記す)が有する回路ノードの内の内部ノードを意味し、◆はブロックが有する回路ノードの内、上位側又は下位側にインタフェースされるインタフェースノードを意味する。特にここでは、前記内部ノードの結果データが他の回路領域に対して直接依存性がある場合も例示される。例えば、最上位ブロックの電圧源3jが下位階層のブロックX1の中にあるX2の内部ノードや回路素子の状態に依存する場合が示されている。電圧源3jの電圧Vdepは、ブロックX1の中にあるX2の素子M1に流れるドレーン電流Idrain(X1.X2.M1)と、ブロックX1の中にあるX2のノードN1の電圧V(X1.X2.N1)とに依存する。即ち、前記電流Idrain(X1.X2.M1)はブロックX1の中にあるブロックX2の素子M1を通して流れるドレーン電流の意味とする。前記電圧V(X1.X2.N1)はブロックX1の中にあるブロックX2のノードのN1の電圧の意味とする。
図14には図13の回路ブロックの階層構造と階層レベルとの関係が概略的に示される。図13及び図14より、最上位ブロックは下位のブロックS1,S2を参照し、階層レベル2のブロックS1はブロックS2を参照する。回路レベル3のブロックS2は下位のブロック参照を有していない。
図15には図3などで説明した階層化回路データにおける各階層の回路ブロックが保有する情報を例示する。回路ブロックは、ブロック名、下位ブロックの階層間対応情報、素子情報、インタフェースノード情報、及び内部ノード情報を有する。下位ブロックの階層間対応情報及び素子情報については不要な場合もある。前記下位ブロックの階層間対応情報は、下位ブロック参照名、接続ノード情報、インタフェースノード情報、及び下位ブロック名を有する。図13の最上位ブロックを一例とすれば、下位ブロック参照名は参照を定義する定義側のX1,X2であり、下位ブロック名はX1に対応して参照される側のS1であり、X2に対応して参照される側のS2である。
前記回路ブロックの態様を説明する。回路ブロックの態様は図16に例示されるところの下位ブロックのみで構成される態様、図17に例示されるところの下位ブロックと素子で構成される態様、図18に例示されるところの素子のみで構成される態様に大別される。素子とは、最下位概念の回路要素を意味し、トランジスタ、抵抗、容量、伝達関数などで表現される数学的要素を意味する。ブロックとは複数の回路素子の集合として位置付けられる。図16の回路ブロックの回路情報は素子情報を持たない。図18の回路ブロックは下位ブロックの階層間対応情報を持たない。素子とは、図1等で説明した単位素子若しくは単位デバイス(Individual Device)である。
シミュレーション対象回路全体の階層化された回路ブロック情報と階層レベルの一般的なデータ形態は図19に例示される。階層レベル間における回路ブロック情報のリンクは前記下位ブロックの階層間対応情報で行われる。図19に例示されるデータ形態の回路ブロック情報からインタフェースノードや内部ノードのノード情報を抽出したときの情報フォーマットは、特に制限されないが、図20に例示されるように、階層レベル毎に最上位側より下位ブロック参照名が区切り文字で区切られて付加され、最後にインタフェースノード名又は内部ノード名を有する、階層情報付きノード名としての情報フォーマットを有する。
図21には図13に例示された階層構造を持つシミュレーション対象回路全体の階層化された回路ブロック情報と階層レベルの具体例が示される。図22には図21の回路ブロック情報から抽出されたインタフェースノード及び内部ノードの全てのノード情報が階層情報付きノード名として与えられている。
図23には前記結果出力ノード抽出処理の制御フローチャートが例示される。先ず、最上位ブロックを選択し階層レベルを1に設定する(S20)。当該階層レベルにおいて、インタフェースノードのような保存すべき結果出力ノードがあるかを判定する(S21)。保存すべきものがあれば、設定された階層レベルの階層情報と内部ノードを階層情報付きノード名として結果出力ノードに登録する(S22)。ステップS22の後、又はステップS21において保存すべき結果出力ノードがないと判定されたとき、回路ブック情報から下位ブロック参照情報を検索し(S23)、下位ブロック参照の有無を判別する(S24)。下位ブロック参照があるときは、当該参照に係る下位ブロックへ移動し、設定階層レベルを1上げる(S25)。移動した下位ブロックにおいて前記ステップS21〜S24の処理を行う。上記処理は、設定階層レベルが指定階層レベルに到達するまで、或は下位ブロックの参照がなくなるまで繰返される。
下位ブロックの参照がなくなったとき、設定階層レベルが“1”であるかを判別し(S26)、そうでなければ、設定階層レベルから一つ上位のブロックに戻り、設定階層レベルを1下げる(S27)。この設定階層レベルのブロックにおいて全ての下位ブロック参照が終了したかを判定する(S28)。即ち、そこから下位にリンクする更に別の下位ブロック参照があるか否かを判別する。判別の結果、更に別の下位ブロック参照がある場合には、次の下位ブロック参照に対応する下位ブロックへ移動し、設定階層レベルを1上げて(S29)ステップS21に戻り、上記同様の処理を繰返す。前記ステップS28の判別により、その設定階層レベルから下位にリンクする更に別の下位ブロック参照がないと判断されたときは、設定階層レベルが“1”であるかが判別され(S30)、そうでなければステップS27に戻り、前記ステップS26又はS30において設定階層レベルが“1”である、と判別されるまで上記処理を繰返す。最後に、全ての階層レベルにおいて依存性のある電圧源又は電流源によって参照される下位階層の内部ノード及び素子の状態を検索し、検索されたノードを結果出力ノードに追加し、検索された素子の状態を素子情報として登録する(S31)。
図25には、オンザフライシミュレーションで図13の回路における階層情報付きノードX1.X1.N1についてシミュレーション結果を生成するときの概念図が例示される。tmr1、tmr2、tmr3、tmr4は図13の対応ノードを意味する。既存波形とは既に保存されているインタフェースノードの結果保存データによって特定される波形である。
図26及び図27には、オンザフライシミュレーションで別の回路における内部ノードN1,N4についてシミュレーション結果を生成するときの概念図が例示される。図26におけるノードN2,N3は、図27に例示されるように下位ブロックS3へのインタフェースノードの保存結果データによって特定される。既存波形は既に保存されているインタフェースノードの結果保存データによって特定される。
上記説明では、結果出力ノードの抽出処理機能は図9の回路シミュレータ10がその機能の一部として有するものとしたが、図28に例示されるように結果出力ノード抽出処理手段10Aを回路シミュレータ10から分離させてもよい。要するに、回路シミュレータとは別に提供される結果出力ノード抽出プログラムを利用してよい。図28にはオンザフライシミュレーションのための手段は図示を省略してある。
《ボルテージソースループの抑制》
前記オンザフライシミュレーションにおいてボルテージソースループの発生を予め抑制するための方法について説明する。先ず図29乃至図42を参照しながら上位階層にインタフェースする上位インタフェースノードN1〜NNに関するボルテージソースループの抑制について説明する。
図29にはボルテージソースループを発生される虞のある態様として着目する第1の例が示される。シミュレーション対象回路1に対して3p、3qは代表的に示された階層化回路データの領域(単に回路領域とも記す)である。回路領域3pは、電圧源とインダクタの何れか1個の素子又は電圧源とインダクタの少なくとも2個以上の連結された素子から構成された部分回路VLCと、前記部分回路VLCをその上位階層にインタフェースする1個以上の特定ノードとしての上位インタフェースノードN1〜NNとを有する。前記部分回路VLCがグランド電位GNDに接続されている。回路領域3pがそのような素子やノードを有していることは図15乃至図18で説明した素子情報、外部接続ノード(インタフェースノード)情報及び内部接続ノード(内部ノード)情報から分かる。RGは抵抗回路、VIN1、VSRCは外部電源である。SRCは外部電源VSRCが供給される電源端子である。
図30には図29の回路領域3pにおいて部分回路VLCがボルテージソースループを形成する場合の例が示される。部分回路VLCは電圧源VsとインダクタLtを備える。オンザフライシミュレーションにおいて上位インタフェースノードN1〜NNには所要のタイムスロットにおける対応する保存結果データが与えられる。与えられる保存結果データが等価的に電圧源VN1〜VNNとされるデータであるとすると、電圧源VN1〜VNNが接続するグランド電位GNDと部分回路VLCが接続するグランド電位GNDとの間には電圧源又はインダクタのみから構成される閉回路、即ちボルテージソースループVLPが形成される。シミュレーションにおいてボルテージソースループがあると、そのパスに含まれるノードの電圧に矛盾を生じたり、電流値を取得することができないという不都合を生ずる虞があり、シミュレーション結果を得られない場合がある。
図31には図29の回路領域3pに対するオンザフライシミュレーションにおいてボルテージソースループの発生を抑制する回路状態が例示される。図29の状態が検出されたとき、オンザフライシミュレーションにおいて前記上位インタフェースノードN1〜NNに与える入出力情報を電流情報とする。すなわち、当該上位インタフェースノードN1〜NNに電流源IN1〜INNを接続する。これにより、シミュレーションに際して回路素子として電圧源とインダクタの少なくとも一方の素子だけしか接続されていない部分回路VLCがあっても、当該部分回路VLCの電位的基準をグランド電位GNDによって規定し、且つ、当該部分回路VLCの上位インタフェースノードN1〜NNに電流源IN1〜INNを接続することによって、前記上位インタフェースノードN1〜NNに電圧情報が与えられることによって生ずるボルテージソースループが形成される虞を排除して、部分回路VLCを含む回路3pに対して目的とするオンザフライシミュレーションを行うことができる。
図32には前記ノードN1〜NNの電流情報を求める方法が示される。即ち、シミュレーション対象回路1に対するシミュレーションにおいて、ノードN1〜NNに電圧0の電圧源V(IN1)〜V(INN)を素子として追加し、当該素子に流れる電流の値も一つの結果データ4として保存する。図31のオンザフライシミュレーションではその電流値の電流源IN1〜INNをノードN1〜NNに与えてやればよい。図32の例を拡張的に適用する場合を考えると、図32の場合に限らず、データ保存領域2における所要の複数の回路ノードに対するシミュレーション結果データを電圧値と電流値で保存しても良い。更に拡張すれば、データ非保存領域3においてデータ保存領域の回路ノードとインタフェースされていない電圧源と電流源の値も、データ保存領域に対する回路シミュレーション結果のデータ保存と共に初期条件として保存しておくのが便利である。この場合には電圧源の電流値、電流源の電圧値も保存すれば尚良い。
次に第2の例を説明する。図33のように回路領域3p内の部分回路VLCが上位インタフェースノードN1の他に別の内部回路CIRに接続されている場合を考える。部分回路VLCvは1個の電圧源Vs又は少なくとも2個以上の連結された電圧源Vsから構成されるものとする。前記部分回路VCLvは上記同様にグランド電位に接続されている。前記部分回路VLCvに更に他の回路CIRが接続される場合には当該他の回路CIRの状態によって部分回路VLCvの前記上位インタフェースノードN1〜NNの値が決まることになるので、回路領域3pのオンザフライシミュレーションでは図34のように本来全ての上位インタフェースノードN1〜NNをフローティングにすればよい。如何なる場合にもボルテージソースループを生じないようにするためである。回路領域3pのオンザフライシミュレーションにおいて部分回路VLCvの電圧源に流れる電流をシミュレーションによって検証したい場合には、図35に例示されるように、全ての上位インタフェースノードN1〜NNに入出力情報として電流情報を与えればよい。電流情報は上記と同じように求めればよい。見方を変えれば、図34の方法は、部分回路VLCvの電圧源に流れる電流をシミュレーションによって検証することを要しない場合には、全ての上位インタフェースノードはフローティングであってよいということになる。
次に第3の例を説明する。前記部分回路VLCが電圧源VsとインダクタLtの何れか1個の素子又は電圧源VsとインダクタLtの少なくとも2個以上の連結された素子から構成され、前記部分回路VLCをその外部に接続する1個以上の上位インタフェースノードN1〜NNが配置され、前記部分回路VLCがグランド電位GNDに接続されているとき、回路領域3pに対するオンザフライシミュレーションにおいて前記部分回路VLCの全ての素子に流れる電流を見ないとき、図36に示されるように、前記部分回路VLCを削除してオンザフライシミュレーションを行えばよい。要するに、部分回路VLCの全ての素子に流れる電流をシミュレーションによって検証することを要しない場合には、部分回路を削除してシミュレーションを行えばよいということであって、シミュレーションのための回路情報の削減、計算機処理時間の短縮に寄与する。
次に第4の例を説明する。上記説明では部分回路VLCはグランド電位GNDに接続されているものとした。必ずしもそうであることを要しない。図29に対して図37のような回路を想定する。図29との相違点は部分回路VLCがグランド電位に接続されていないことである。このとき、回路領域3pに対するオンザフライシミュレーションにおいて、図38のように前記上位インタフェースノードN1〜NNの全てに電圧源情報VN1〜VNNを与えると図30で説明したのと同様にボルテージソースループVLPが形成される。ボルテージソースループの発生を抑制するには、図39のように、回路領域3pに対するオンザフライシミュレーションでは、前記上位インタフェースノードN1〜NNの一つの上位インタフェースノードNNに与える入出力情報を電圧源情報VNNとし、残りの上位インタフェースノードN1〜NN−1に与える入出力情報を電流源情報IN1〜INN−1とする。上位インタフェースノードNNに与える入出力情報としての電圧源情報VNNが例えば図31におけるグランド電位GNDに相当する情報とされる。これにより、回路領域3p内でグランド電位GNDに接続されていない部分回路VLCに対して、電位的基準を電圧源情報VNNによって規定し、且つ、当該部分回路VLCの上位インタフェースノードN1〜NN−1に電流源IN1〜INN−1を接続することによって、前記上位インタフェースノードN1〜NN−1に電圧情報が与えられることによって生ずるボルテージソースループが形成される虞を排除して、部分回路VLCを含む回路領域3pに対して目的とするオンザフライシミュレーションを行うことができる。上位インタフェースノードN1〜NN−1の電流源IN1〜INN−1を得るには図32で説明したのと同じ方法を用いれば良い。
次に第5の例を説明する。上記部分回路VLCvについてもグランド電位GNDに接続されている場合を説明したが、必ずしもそうであることを要しない。図33に対して図40のような回路を想定する。図33との相違点は部分回路VLCvがグランド電位GNDに接続されていないことである。前述のように部分回路VLCvは1個の電圧源Vs又は少なくとも2個以上の連結された電圧源Vsから構成されるものとする。図41に例示されるように、回路領域3pに対するオンザフライシミュレーションにおいて、前記上位インタフェースノードN1〜NNの一つの上位インタフェースノードNNに与える入出力情報を電圧源情報VNNとし、この電圧源情報VNNがグランド電位GNDの代わりに部分回路VLCvに対する一方の電位的基準を与える。前記部分回路VLCvに他の回路CIRが接続される場合には当該他の回路CIRの状態によって部分回路VLCvの前記上位インタフェースノードN1〜NN−1の値が決まることになる。したがって、回路領域3pのオンザフライシミュレーションでは図41のように上位インタフェースノードNNを除くその他の上位インタフェースノードN1〜NN−1をフローティングにすればよい。如何なる場合にもボルテージソースループを生じないようにするためである。回路領域3pのオンザフライシミュレーションにおいて部分回路VLCvの電圧源Vsに流れる電流をシミュレーションによって検証したい場合には、図42に例示されるように、電圧情報VNNの入力用上位インタフェースノードNNを除くその他の上位インタフェースノードN1〜NN−1に入出力情報として電流情報を与えればよい。電流情報は上記と同じように求めればよい。見方を変えれば、図42の方法は、部分回路VLCvの電圧源に流れる電流をシミュレーションによって検証することを要しない場合には、電圧情報VNNの入力用上位インタフェースノードNN以外の上位インタフェースノードはフローティングであってよいということになる。
また、図33及び図41において部分回路VLCvがインダクタを含む場合も、図35及び図42は有効である。インダクタを含む場合は電流を正しく再現する必要があるので、図41のように上位インタフェースノードをフローティングにすることはできない。
次に第6の例を説明する。図37のように部分回路VCLがグランド電位に接続されていない場合にも、前記第3の例と同じように、回路領域3pに対するオンザフライシミュレーションにおいて前記部分回路VLCの全ての素子に流れる電流を見ないときは、図36に示されるように、前記部分回路VLCを削除してオンザフライシミュレーションを行えばよい。要するに、部分回路VLCの全ての素子に流れる電流をシミュレーションによって検証することを要しない場合には、部分回路を削除してシミュレーションを行えばよいということであって、シミュレーションのための回路情報の削減、計算機処理時間の短縮に寄与する。
次に図43乃至図58を参照しながら下位階層にインタフェースする下位インタフェースノードM1〜MNに関するボルテージソースループの抑制について説明する。
図43には前記部分回路VLCをその下位階層にインタフェースする1個以上の特定ノードとしての下位インタフェースノードN1〜NNの保存データを用いて部分回路VLCに対するオンザフライシミュレーションを行う場合の態様が例示される。シミュレーション対象回路1に対して3p、3q、3rは代表的に示された階層化回路データの領域(単に回路領域とも記す)である。図44のように部分回路VLCが電圧源とインダクタ以外の素子、例えば抵抗素子で構成されている場合には、下位インタフェースノードM1〜MNには、予め保存されているシミュレーション結果データに基づいて例えば電圧源VM1〜VMNのデータが与えられればよい。この場合にはボルテージソースループは形成されず、正確なシミュレーション結果を得ることができる。一方、部分回路VLCが電圧源とインダクタの何れか1個の素子又は電圧源とインダクタの少なくとも2個以上の連結された素子から構成されている場合、例えば、図45のように、部分回路VLCが電圧源VsとインダクタLtの直列回路を備えるときはボルテージソースループが形成される。下位インタフェースノードM1〜MNに与えられる保存結果データが等価的に電圧源VM1〜VMNとされるデータであるとすると、電圧源VM1〜VMNが接続するグランド電位GNDと部分回路VLCが接続するグランド電位GNDとの間には電圧源又はインダクタのみから構成される閉回路、即ちボルテージソースループVLPが形成される。以下、下位インタフェースノードM1〜MNに関してそのようなボルテージループの生成を抑制する態様を説明する。
図46には図43の回路領域3pに対するオンザフライシミュレーションにおいてボルテージソースループの発生を抑制する回路状態が例示される。図46の状態が検出されたとき、オンザフライシミュレーションにおいて前記下位インタフェースノードM1〜MNに与える入出力情報を電流情報とする。すなわち、当該下位インタフェースノードM1〜MNに電流源IM1〜IMNを接続する。これにより、シミュレーションに際して回路素子として電圧源とインダクタの少なくとも一方の素子だけしか接続されていない部分回路VLCがあっても、当該部分回路VLCの電位的基準をグランド電位GNDによって規定し、且つ、当該部分回路VLCの下位インタフェースノードM1〜MNに電流源IM1〜IMNを接続することによって、前記下位インタフェースノードM1〜MNに電圧情報が与えられることによって生ずるボルテージソースループが形成される虞を排除して、部分回路VLCを含む回路3pに対して目的とするオンザフライシミュレーションを行うことができる。
図47には前記ノードM1〜MNの電流情報を求める方法が示される。即ち、シミュレーション対象回路1に対するシミュレーションにおいて、ノードM1〜MNに電圧0の電圧源V(IM1)〜V(IMN)を素子として追加し、当該素子に流れる電流の値を一つの結果データ4として保存する。図46のオンザフライシミュレーションではその電流値の電流源IM1〜IMNをノードM1〜MNに与えてやればよい。図32の例を拡張的に適用する場合を考えると、図47の場合に限らず、シミュレーション対象領域における所要の複数の回路ノードに対するシミュレーション結果データを電圧値と電流値で保存しても良い。
次に第2の例を説明する。図48のように回路領域3r内の部分回路が下位インタフェースノードの他に別の内部回路CIRに接続されている場合を考える。部分回路VLCvは1個の電圧源Vs又は少なくとも2個以上の連結された電圧源Vsから構成されるものとする。前記部分回路VCLvは上記同様にグランド電位に接続されている。前記部分回路VLCvに更に他の回路CIRが接続される場合には当該他の回路CIRの状態によって部分回路VLCvの前記下位インタフェースノードM1〜MNの値が決まることになるので、回路領域3pのオンザフライシミュレーションでは図49のように本来全ての下位インタフェースノードM1〜MNをフローティングにすればよい。如何なる場合にもボルテージソースループを生じないようにするためである。回路領域3pのオンザフライシミュレーションにおいて部分回路VLCvの電圧源に流れる電流をシミュレーションによって検証したい場合には、図50に例示されるように、全ての下位インタフェースノードM1〜MNに入出力情報として電流情報IM2〜IMNを与えればよい。電流情報IM2〜IMNは上記と同じように求めればよい。見方を変えれば、図49の方法は、部分回路VLCvの電圧源に流れる電流をシミュレーションによって検証することを要しない場合には、全ての下位インタフェースノードM1〜MNはフローティングであってよいということになる。
次に第3の例を説明する。図50のように、前記部分回路VLCが電圧源VsとインダクタLtの何れか1個の素子又は電圧源VsとインダクタLtの少なくとも2個以上の連結された素子から構成され、前記部分回路VLCをその下位階層に接続する1個以上の下位インタフェースノードM1〜MNが配置され、前記部分回路VLCがグランド電位GNDに接続されているとき、回路領域3pに対するオンザフライシミュレーションにおいて前記部分回路VLCの全ての素子に流れる電流を見ないとき、図51に示されるように、前記部分回路VLCを削除してオンザフライシミュレーションを行えばよい。要するに、部分回路VLCの全ての素子に流れる電流をシミュレーションによって検証することを要しない場合には、部分回路を削除してシミュレーションを行えばよいということであって、シミュレーションのための回路情報の削減、計算機処理時間の短縮に寄与する。
次に第4の例を説明する。上記説明では部分回路VLCはグランド電位GNDに接続されているものとした。必ずしもそうであることを要しない。図43に対して図52のような回路を想定する。図43との相違点は部分回路VLCがグランド電位に接続されていないことである。このとき、回路領域3pに対するオンザフライシミュレーションにおいて、図53のように前記下位インタフェースノードM1〜MNの全てに電圧源情報VM1〜VMNを与えると図45で説明したのと同様にボルテージソースループVLPが形成される。ボルテージソースループの発生を抑制するには、図54のように、回路領域3pに対するオンザフライシミュレーションでは、前記下位インタフェースノードM1〜MNの一つの下位インタフェースノードMNに与える入出力情報を電圧源情報VMNとし、残りの下位インタフェースノードM1〜MN−1に与える入出力情報を電流源情報IM1〜IMN−1とする。下位インタフェースノードMNに与える入出力情報としての電圧源情報VMNが例えば図46におけるグランド電位GNDに相当する情報とされる。これにより、回路領域3p内でグランド電位GNDに接続されていない部分回路VLCに対して、電位的基準を電圧源情報VMNによって規定し、且つ、当該部分回路VLCの下位インタフェースノードM1〜MN−1に電流源IM1〜IMN−1を接続することによって、前記下位インタフェースノードM1〜MN−1に電圧情報が与えられることによって生ずるボルテージソースループが形成される虞を排除して、部分回路VLCを含む回路領域3pに対して目的とするオンザフライシミュレーションを行うことができる。下位インタフェースノードM1〜MN−1の電流源IM1〜IMN−1を得るには図47で説明したのと同じ方法を用いれば良い。
次に第5の例を説明する。上記部分回路VLCvについてもグランド電位GNDに接続されている場合を説明したが、必ずしもそうであることを要しない。図48に対して図55のような回路を想定する。図48との相違点は部分回路VLCvがグランド電位GNDに接続されていないことである。前述のように部分回路VLCvは1個の電圧源Vs又は少なくとも2個以上の連結された電圧源Vsから構成されるものとする。図56に例示されるように、回路領域3pに対するオンザフライシミュレーションにおいて、前記下位インタフェースノードM1〜MNの一つの下位インタフェースノードMNに与える入出力情報を電圧源情報VMNとし、この電圧源情報VMNがグランド電位GNDの代わりに部分回路VLCvに対する一方の電位的基準を与える。前記部分回路VLCvに他の回路CIRが接続される場合には当該他の回路CIRの状態によって部分回路VLCvの前記下位インタフェースノードM1〜MN−1の値が決まることになる。したがって、回路領域3pのオンザフライシミュレーションでは図56のように下位インタフェースノードMNを除くその他の下位インタフェースノードM1〜MN−1をフローティングにすればよい。如何なる場合にもボルテージソースループを生じないようにするためである。回路領域3pのオンザフライシミュレーションにおいて部分回路VLCvの電圧源Vsに流れる電流をシミュレーションによって検証したい場合には、図57に例示されるように、電圧情報VMNの入力用下位インタフェースノードMNを除くその他の下位インタフェースノードM1〜MN−1に入出力情報として電流情報IM1〜IMN−1を与えればよい。電流情報は上記と同じように求めればよい。見方を変えれば、図57の方法は、部分回路VLCvの電圧源に流れる電流をシミュレーションによって検証することを要しない場合には、電圧情報VMNの入力用下位インタフェースノードMN以外の下位インタフェースノードはフローティングであってよいということになる。
また、図48及び図56において部分回路VLCvがインダクタを含む場合も、図50及び図57は有効である。インダクタを含む場合は電流を正しく再現する必要があるので、図56のように下位インタフェースノードをフローティングにすることはできない。
次に第6の例を説明する。図52のように部分回路VCLがグランド電位に接続されていない場合にも、前記第3の例と同じように、回路領域3pに対するオンザフライシミュレーションにおいて前記部分回路VLCの全ての素子に流れる電流を見ないときは、図51に示されるように、前記部分回路VLCを削除してオンザフライシミュレーションを行えばよい。要するに、部分回路VLCの全ての素子に流れる電流をシミュレーションによって検証することを要しない場合には、部分回路を削除してシミュレーションを行えばよいということであって、シミュレーションのための回路情報の削減、計算機処理時間の短縮に寄与する。
以上説明したシミュレーション方法によれば、大規模なシミュレーション対象に対して全てのシミュレーション結果データを保存しなくても任意の結果出力点のデータを表示可能であって、ボルテージソースループによる不都合も生じ難い。特に、下位側と上位側への階層間のインタフェースノードに関する結果データを保存するから、所定の階層レベルよりも低い下位階層の全ての結果データを捨てる場合に比べて、シミュレーション処理すべき階層化回路の階層の深さに拘わらず保存すべきデータ量とシミュレーション処理時間とをほぼ一定にすることができる。
また、大規模なシミュレーション対象に対して全てのシミュレーション結果データを保存しなくても任意の結果出力点のデータを表示可能であって、ボルテージソースループによる不都合も生じ難い。
大規模集積回路のような大規模なシミュレーション対象に対して全てのシミュレーション結果データを保存するのと等価なデータ表示性能を少ない記憶容量で達成可能であって、ボルテージソースループによる不都合も生じ難い。
大規模集積回路のような大規模なシミュレーション対象に対しシミュレーション結果データの表示速度を高速化することが容易であって、ボルテージソースループによる不都合も生じ難い。
以上本発明者によってなされた発明を実施例に基づいて具体的に説明したが本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能である。
例えば、シミュレーション対象回路の規模は、数十万乃至数百万ゲートの規模であってよい。上述に基づく説明ではシミュレーション結果の表示機能の拡張としてオンザフライシミュレーションを位置付けているが、表示とは切り離して、部分シミュレーションとして発明を把握することは当然可能である。更に表示機能拡張の場合にも、シミュレーション結果の表示に限定されず、階層情報に対するデータ処理結果の表示という観点で発明を把握することも可能である。
更に、上記シミュレーション方法は前述のフローチャートで示した機能若しくは処理手順をコンピュータを用いて実現する為のシミュレーションプログラムとして把握可能であることは言うまでも無い。そのようなシミュレーションプログラムが提供されることにより、前記シミュレーション方法を容易に実施に移すことが可能になる。
また、本発明のシミュレーション方法は回路シミュレーションに限定されず、デバイスシミュレーションにも適用可能である。例えば、MOSトランジスタなどのデバイス断面領域をメッシュ状のブロックに分けて階層的に把握しながらシミュレーションを行うデバイスシミュレーションの場合、前記結果出力点は、例えばデバイス断面上の電流又は電圧着目点になる。前記上位側階層のシミュレーションでは結果出力点は前記メッシュ境界部分に存在され、下位側階層のシミュレーションでは結果出力点は前記メッシュ内に存在されることになる。メッシュ内の結果出力点をシミュレーション結果として得る場合には、メッシュ境界部分の既存結果出力点の既存シミュレーション結果と、その既存結果を得る時と同じシミュレーション初期条件とを用いて部分的なデバイスシミュレーションを行えばよい。
本発明は、半導体集積回路の回路シミュレーション、半導体デバイスのデバイスシミュレーション等に広く適用することができる。
本発明に係るシミュレーション方法の前提となる概念を結果出力区分の一例と共に示す概念図である。 本発明に係るシミュレーション方法の概念を更に示した原理図である。 本発明に係るシミュレーション方法の原理を階層化回路データの階層構造に着目して示す原理図である。 シミュレーション対象回路における部分的な回路変更や素子パラメータの変更があったときの状態を例示する説明図である。 部分的な回路変更や素子パラメータの変更があったとき、その変更を反映したシミュレーション結果を得る方法を例示する説明図である。 図5の部分的な変更に対処するシミュレーション方法の原理を階層化回路データの階層構造に着目して示した原理図である。 オンザフライシミュレーションの並列処理の概念を示す概念図である。 回路変更等に起因する部分領域のオンザフライシミュレーション類似のシミュレーションに対する並列処理の原理図である。 本発明に係るシミュレーション方法を実現する為のデータ処理システムを例示するシステム図である。 図9の回路シミュレータによる回路シミュレーション処理のフローチャートである。 図9の結果表示制御手段及び部分回路シミュレーション制御手段によるシミュレーション結果の表示制御フローである。 図9の部分回路シミュレーション制御手段と結果表示制御手段によって構成されるオンザフライシミュレーション機能付きの結果表示制御手段の詳細を例示するシステム図である。 階層構造を持った回路データ(階層化回路データ)の階層構造を例示する説明図である。 図13の回路ブロックの階層構造と階層レベルとの関係の概略説明図である。 階層化回路データにおける各階層の回路ブロックが保有する情報を例示する説明図である。 下位ブロックのみで構成される回路ブロックのデータ態様の説明図である。 下位ブロックと素子で構成される回路ブロックのデータ態様の説明図である。 素子のみで構成される回路ブロックのデータ態様の説明図である。 シミュレーション対象回路全体の階層化された回路ブロック情報と階層レベルの一般的なデータ形態を例示する説明図である。 図19に例示されるデータ形態の回路ブロック情報からノード情報を抽出したときの情報フォーマット図である。 図13に例示された階層構造を持つシミュレーション対象回路全体の階層化された回路ブロック情報と階層レベルの具体例を示すデータ構造説明図である。 図21の回路ブロック情報から抽出された外部接続ノード及び内部接続ノードの全てのノード情報が階層情報付きノード名として与えられている状態を示す説明図である。 結果出力ノード抽出処理の制御フローチャートである。 内部ノードの結果データが電流源及び電圧源の値に直接影響する依存関係を例示する説明図である。 オンザフライシミュレーションで図13の回路における階層情報付きノードについてシミュレーション結果を生成するときの概念図である。 オンザフライシミュレーションにおいて内部ノードについてシミュレーション結果を生成するときの概念図である。 オンザフライシミュレーションにおいて内部ノードについてシミュレーション結果を生成するときの概念図である。 結果出力ノード抽出処理手段を回路シミュレータから分離させ例を示す概略システム図である。 上位側のインタフェースノードに関してボルテージソースループを発生される虞のある態様を例示する説明図である。 図29の回路領域において部分回路がボルテージソースループを形成する場合を例示する回路図である。 図29の回路領域に対するオンザフライシミュレーションにおいてボルテージソースループの発生を抑制する回路状態を例示する回路図である。 ボルテージソースループ抑制対象とする上位側インタフェースノードノードの電流情報を求める方法を例示する回路図である。 部分回路が上位インタフェースノードの他に別の内部回路に接続されている場合を考慮してオンザフライシミュレーションにおけるボルテージソースループの発生を抑制する回路状態を例示する回路図である。 図34の場合の対策として全ての上位インタフェースノードをフローティングにすればよい場合を示す回路図である。 図34の場合にオンザフライシミュレーションで部分回路の電圧源に流れる電流をシミュレーションによって検証したい場合に全ての上位インタフェースノードに入出力情報として電流情報を与えればよい場合を示す回路図である。 オンザフライシミュレーションにおいて部分回路の全ての素子に流れる電流を見ないとき部分回路VLCを削除してオンザフライシミュレーションを行えばよい場合を示す回路図である。 部分回路がグランド電位に接続されていない場合を考慮してオンザフライシミュレーションにおけるボルテージソースループの発生を抑制する回路状態を例示する回路図である。 図37において上位インタフェースノードの全てに電圧源情報を与えるとボルテージソースループが形成される状態を示す回路図である。 図38のボルテージソースループの発生を抑制するための対策を示す回路図である。 部分回路にグランド電位が接続されていない場合を考慮してオンザフライシミュレーションにおけるボルテージソースループの発生を抑制する回路状態を例示する回路図である。 図40における具体的な対策として一つの上位インタフェースノードに電圧源情報を与えてグランド電位の代わりに部分回路に対する一方の電位的基準を与えるようにした状態を示す回路図である。 図41において部分回路の電圧源に流れる電流をシミュレーションによって検証したい場合の対策を示す回路図である。 下位階層にインタフェースする下位インタフェースノードの保存データを用いて部分回路VLCに対するオンザフライシミュレーションを行う場合の態様を示す回路図である。 図43において下位インタフェースノードに予め保存されているシミュレーション結果データである電圧源のデータが与えられた状態を示す回路図である。 部分回路が電圧源とインダクタの何れか1個の素子又は電圧源とインダクタの少なくとも2個以上の連結された素子から構成されている場合に部分回路が電圧源とインダクタの直列回路を備えるときボルテージソースループが形成される状態を示す回路図である。 図45においてオンザフライシミュレーションにおいてボルテージソースループの発生を抑制する回路状態を例示する回路図である。 下位インタフェースノードの電流情報を求める方法を示す回路図である。 部分回路が下位インタフェースノードの他に別の内部回路に接続されている場合を考慮してオンザフライシミュレーションにおけるボルテージソースループの発生を抑制する回路状態を例示する回路図である。 図48の場合の対策として全ての上位インタフェースノードをフローティングにすればよい場合を示す回路図である。 図49の場合にオンザフライシミュレーションで部分回路の電圧源に流れる電流をシミュレーションによって検証したい場合に全ての下位インタフェースノードに入出力情報として電流情報を与えればよい場合を示す回路図である。 オンザフライシミュレーションにおいて部分回路の全ての素子に流れる電流を見ないとき部分回路を削除してオンザフライシミュレーションを行えばよい場合を示す回路図である。 部分回路がグランド電位に接続されていない場合を考慮してオンザフライシミュレーションにおけるボルテージソースループの発生を抑制する回路状態を例示する回路図である。 図52において上位インタフェースノードの全てに電圧源情報を与えるとボルテージソースループが形成される状態を示す回路図である。 図53のボルテージソースループの発生を抑制するための対策を示す回路図である。 部分回路にグランド電位が接続されていない場合を考慮してオンザフライシミュレーションにおけるボルテージソースループの発生を抑制する回路状態を例示する回路図である。 図55における具体的な対策として一つの下位インタフェースノードに電圧源情報を与えてグランド電位の代わりに部分回路に対する一方の電位的基準を与えるようにした状態を示す回路図である。 図56において部分回路の電圧源に流れる電流をシミュレーションによって検証したい場合の対策を示す回路図である。
符号の説明
1 シミュレーション対象回路
2 データ保存領域としての回路領域
3 データ非保存領域としての回路領域
4 データ保存領域2の保存結果データ
5 オンザフライシミュレーションによる結果データ
Nui 上位階層へのインタフェースノード
Ndi 下位階層へのインタフェースノード
Nis 内部ノード
VLC 電圧源とインダクタから成る部分回路
VLCv 電圧源から成る部分回路
Vs 部分回路に含まれる電圧源
Lt 部分回路に含まれるインダクタ
N1〜NN 上位インタフェースノード
M1〜MN 下位インタフェースノード
GND グランド電位
VLP ボルテージソースループ
IN1〜INN 電流源
IM1〜IMN 電流源
VN1〜VNN 電圧源
VM1〜VMN 電圧源
CIR 部分回路に結合するその他の回路
V(IN1)〜V(INN) 電圧0の電圧源
V(IM1)〜V(IMN) 電圧0の電圧源
3i 下位階層の状態に依存する上位階層の電流源
3g 下位階層の状態に依存する上位階層の電圧源

Claims (35)

  1. 複数階層に階層化された階層化回路データを用いたシミュレーション結果に対し、上位側と下位側への階層間のインタフェースノードに関してシミュレーションによって得られた結果データを保存する第1処理と、
    第1処理にて保存された結果データを用いて、第1処理では保存されていない内部ノードのデータを再現する第2処理と、を含むことを特徴とするシミュレーション方法。
  2. 前記第2処理におけるシミュレーションを、前記第1処理におけるシミュレーションと同じ初期条件で行なう請求項1記載のシミュレーション方法。
  3. 前記第1処理において、上位側と下位側への階層間のインタフェースノードではない内部ノードのシミュレーション結果データが、別の階層の電圧源又は電流源の値を決定するときは、当該内部ノードのシミュレーション結果データも保存する請求項2記載のシミュレーション方法。
  4. 前記第2処理の対象とされる内部ノードを有する階層化回路が、電圧源とインダクタの何れか1個の素子又は電圧源とインダクタの少なくとも2個以上の連結された素子から構成された部分回路と、前記部分回路を別の階層の階層化回路に接続する1個以上の特定ノードとを有し、前記部分回路がグランド電位に接続されているとき、前記第2処理において前記特定ノードに与える入出力情報を電流情報とする請求項1記載のシミュレーション方法。
  5. 前記第2処理の対象とされる内部ノードを有する階層化回路が、1個の電圧源又は少なくとも2個以上の連結された電圧源から構成された部分回路と、前記部分回路を別の階層の階層化回路に接続する1個以上の特定ノードと、前記部分回路に接続する他の回路とを有し、前記部分回路がグランド電位に接続されているとき、前記第2処理において前記特定ノードに与える入出力情報を電流情報とする請求項1記載のシミュレーション方法。
  6. 前記第2処理の対象とされる内部ノードを有する階層化回路が、1個の電圧源又は2個以上の連結された電圧源から構成された部分回路と、前記部分回路を別の階層の階層化回路に接続する1個以上の特定ノードと、前記部分回路に接続する他の回路とを有し、前記部分回路がグランド電位に接続されているとき、前記第2処理において前記部分回路の電圧源に流れる電流を見ないとき全ての前記特定ノードをフローティングとする請求項1記載のシミュレーション方法。
  7. 前記第2処理の対象とされる内部ノードを有する階層化回路が、電圧源とインダクタの何れか1個の素子又は電圧源とインダクタの少なくとも2個以上の連結された素子から構成された部分回路と、前記部分回路を別の階層の階層化回路に接続する1個以上の特定ノードとを有し、前記部分回路がグランド電位に接続されているとき、前記第2処理において前記部分回路の全ての素子に流れる電流を見ないとき前記部分回路を削除する請求項1記載のシミュレーション方法。
  8. 前記第2処理の対象とされる内部ノードを有する階層化回路が、電圧源とインダクタの何れか1個の素子又は電圧源とインダクタの少なくとも2個以上の連結された素子から構成された部分回路と、前記部分回路を別の階層の階層化回路に接続する2個以上の特定ノードとを含み、前記部分回路がグランド電位に非接続とされているとき、前記第2処理において前記2個以上の特定ノードの一つに与える入出力情報を電圧源情報とし、残りの特定ノードに与える入出力情報を電流源情報とする請求項1記載のシミュレーション方法。
  9. 前記第2処理の対象とされる内部ノードを有する階層化回路が、1個の電圧源又は少なくとも2個以上の連結された電圧源から構成された部分回路と、前記部分回路を別の階層の階層化回路に接続する2個以上の特定ノードと、前記部分回路に接続する他の回路とを含み、前記部分回路がグランド電位に非接続とされているとき、前記第2処理において前記2個以上の特定ノードの一つに与える入出力情報を電圧源情報とし、残りの特定ノードに与える入出力情報を電流源情報とする請求項1記載のシミュレーション方法。
  10. 前記第2処理の対象とされる内部ノードを有する階層化回路が、1個の電圧源又は2個以上の連結された電圧源から構成された部分回路と、前記部分回路を別の階層の階層化回路に接続する2個以上の特定ノードと、前記部分回路に接続する他の回路とを含み、前記部分回路がグランド電位に非接続とされているとき、前記第2処理において前記部分回路の電圧源に流れる電流を見ないとき、一つの特定ノードに与える入出力情報を電圧源情報とし、残りの特定ノードをフローティングとする請求項1記載のシミュレーション方法。
  11. 前記第2処理の対象とされる内部ノードを有する階層化回路が、電圧源とインダクタの何れか1個の素子又は電圧源とインダクタの少なくとも2個以上の連結された素子から構成された部分回路と、前記部分回路を別の階層の階層化回路に接続する1個以上の特定ノードとを有し、前記部分回路がグランド電位に非接続されているとき、前記第2処理において前記部分回路の全ての素子に流れる電流を見ないとき前記部分回路を削除する請求項1記載のシミュレーション方法。
  12. 指定された階層の回路ノードを階層化回路データから抽出する抽出処理と、
    前記抽出処理で抽出された回路ノードを結果出力ノードとして回路シミュレーションを行うシミュレーション実行処理と、
    前記シミュレーション実行処理により結果出力ノードに得られた結果データのうち、上位側と下位側への階層間のインターフェースノードに関するものを保存する保存処理と、
    所要階層の一つ上位又は一つ下位の階層との間の前記保存されたインタフェースノードに関する結果データを用いて、当該所要階層の回路ノードについてシミュレーション結果データを得るシミュレーション再実行処理と、を含むことを特徴とするシミュレーション方法。
  13. 前記保存処理において、上位側と下位側への階層間のインタフェースノードではない内部ノードのシミュレーション結果データが、別の階層の電圧源又は電流源の値を決定するときは、当該内部ノードのシミュレーション結果データも保存し、当該階層中の素子のシミュレーション結果データが、別の階層の電圧源又は電流源の値を決定するときは、当該素子のシミュレーション結果データも保存する請求項12記載のシミュレーション方法。
  14. 前記シミュレーション再実行処理におけるシミュレーションを、前記シミュレーション実行処理におけるシミュレーションと同じ初期条件で行なう請求項13記載のシミュレーション方法。
  15. シミュレーション処理結果の表示指令に対し、前記保存処理で保存された結果データの表示又は前記シミュレーション再実行処理で得られたシミュレーション結果の表示を行う表示処理を更に含む請求項14記載のシミュレーション方法。
  16. 前記抽出処理は、階層化回路データにおける下位階層への参照系列を追いながら階層レベルを下位に設定変更する毎に、設定された階層レベルで把握可能な回路ノードを登録する処理を、シミュレーション対象における全ての参照系列に対して行う処理であることを特徴とする請求項15記載のシミュレーション方法。
  17. 指定された階層の階層化回路データの回路ノードを結果出力ノードとして回路シミュレーションを行うシミュレーション実行処理と、
    前記シミュレーション実行処理により結果出力ノードに得られた結果データのうち、上位側と下位側への階層間のインターフェースノードに関するものを保存する保存処理と、
    前記保存処理で保存された結果データの中から検索された結果データを、前記シミュレーション実行処理結果として表示する第1表示処理と、
    所要階層の一つ上位又は一つ下位の階層との間の前記保存されたインタフェースノードに関する結果データを用いて、当該所要階層の回路ノードについてシミュレーション結果データを得るシミュレーション再実行処理と、
    前記シミュレーション再実行処理の結果データを表示する第2表示処理と、を含むことを特徴とするシミュレーション方法。
  18. 前記保存処理において、上位側と下位側への階層間のインタフェースノードではない内部ノードのシミュレーション結果データが、別の階層の電圧源又は電流源の値を決定するときは、当該内部ノードのシミュレーション結果データも保存し、当該階層中の素子のシミュレーション結果データが、別の階層の電圧源又は電流源の値を決定するときは、当該素子のシミュレーション結果データも保存する請求項17記載のシミュレーション方法。
  19. 前記シミュレーション再実行処理におけるシミュレーションは、前記シミュレーション実行処理におけるシミュレーションと同等の初期条件で行われることを特徴とする請求項18記載のシミュレーション方法。
  20. 指定された階層の階層化回路データの回路ノードを結果出力ノードとして回路シミュレーションを行うシミュレーション実行処理と、
    前記シミュレーション実行処理により結果出力ノードに得られた結果データのうち、上位側と下位側への階層間のインターフェースノードに関するものを保存する保存処理と、
    前記階層化回路データが修正されたとき、その修正が反映される回路ノードについて、その回路ノードにインタフェースされる一つ上位の階層又は一つ下位の階層との間の前記保存されたインタフェースノードに関する結果データを用いて回路シミュレーションを実行するシミュレーション再実行処理と、を含むシミュレーション方法。
  21. 前記シミュレーション再実行処理において、前記修正が反映される回路ノードに対し、信号経路が相互に独立する回路ノード相互間については並列に回路シミュレーションを実行する請求項20記載のシミュレーション方法。
  22. 指定された上位側階層の結果出力点をシミュレーション対象から抽出する第1処理と、
    抽出された結果出力点に関するシミュレーションを行う第2処理と、
    前記シミュレーション実行処理により結果出力ノードに得られた結果データのうち、上位側と下位側への階層間のインターフェースノードに関するものを保存する第3処理と、
    所要階層の一つ上位又は一つ下位の階層との間の前記保存されたインタフェースノードに関する結果データを用いて、前記第2処理のシミュレーションと同等の初期条件で、当該所要階層の回路ノードについてシミュレーション結果データを得るためのシミュレーションを行う第4処理と、を含むシミュレーション方法。
  23. 前記保存処理において、上位側と下位側への階層間のインタフェースノードではない内部ノードのシミュレーション結果データが、別の階層の電圧源又は電流源の値を決定するときは、当該内部ノードのシミュレーション結果データも保存し、当該階層中の素子のシミュレーション結果データが、別の階層の電圧源又は電流源の値を決定するときは、当該素子のシミュレーション結果データも保存する請求項22記載のシミュレーション方法。
  24. 前記第2処理の対象とされる内部ノードを有する階層化回路が、電圧源とインダクタの何れか1個の素子又は電圧源とインダクタの少なくとも2個以上の連結された素子から構成された部分回路と、前記部分回路を別の階層の階層化回路に接続する1個以上の特定ノードとを有し、前記部分回路がグランド電位に接続されているとき、前記第2処理において前記特定ノードに与える入出力情報を電流情報とする請求項12、17、又は20記載のシミュレーション方法。
  25. 前記第2処理の対象とされる内部ノードを有する階層化回路が、1個の電圧源又は少なくとも2個以上の連結された電圧源から構成された部分回路と、前記部分回路を別の階層の階層化回路に接続する1個以上の特定ノードと、前記部分回路に接続する他の回路とを有し、前記部分回路がグランド電位に接続されているとき、前記第2処理において前記特定ノードに与える入出力情報を電流情報とする請求項12、17、又は20記載のシミュレーション方法。
  26. 前記第2処理の対象とされる内部ノードを有する階層化回路が、1個の電圧源又は2個以上の連結された電圧源から構成された部分回路と、前記部分回路を別の階層の階層化回路に接続する1個以上の特定ノードと、前記部分回路に接続する他の回路とを有し、前記部分回路がグランド電位に接続されているとき、前記第2処理において前記部分回路の電圧源に流れる電流を見ないとき全ての前記特定ノードをフローティングとする請求項12、17、又は20記載のシミュレーション方法。
  27. 前記第2処理の対象とされる内部ノードを有する階層化回路が、電圧源とインダクタの何れか1個の素子又は電圧源とインダクタの少なくとも2個以上の連結された素子から構成された部分回路と、前記部分回路を別の階層の階層化回路に接続する1個以上の特定ノードとを有し、前記部分回路がグランド電位に接続されているとき、前記第2処理において前記部分回路の全ての素子に流れる電流を見ないとき前記部分回路を削除する請求項12、17、又は20記載のシミュレーション方法。
  28. 前記第2処理の対象とされる内部ノードを有する階層化回路が、電圧源とインダクタの何れか1個の素子又は電圧源とインダクタの少なくとも2個以上の連結された素子から構成された部分回路と、前記部分回路を別の階層の階層化回路に接続する2個以上の特定ノードとを含み、前記部分回路がグランド電位に非接続とされているとき、前記第2処理において前記2個以上の特定ノードの一つに与える入出力情報を電圧源情報とし、残りの特定ノードに与える入出力情報を電流源情報とする請求項12、17、又は20記載のシミュレーション方法。
  29. 前記第2処理の対象とされる内部ノードを有する階層化回路が、1個の電圧源又は少なくとも2個以上の連結された電圧源から構成された部分回路と、前記部分回路を別の階層の階層化回路に接続する2個以上の特定ノードと、前記部分回路に接続する他の回路とを含み、前記部分回路がグランド電位に非接続とされているとき、前記第2処理において前記2個以上の特定ノードの一つに与える入出力情報を電圧源情報とし、残りの特定ノードに与える入出力情報を電流源情報とする請求項12、17、又は20記載のシミュレーション方法。
  30. 前記第2処理の対象とされる内部ノードを有する階層化回路が、1個の電圧源又は2個以上の連結された電圧源から構成された部分回路と、前記部分回路を別の階層の階層化回路に接続する2個以上の特定ノードと、前記部分回路に接続する他の回路とを含み、前記部分回路がグランド電位に非接続とされているとき、前記第2処理において前記部分回路の電圧源に流れる電流を見ないとき、一つの特定ノードに与える入出力情報を電圧源情報とし、残りの特定ノードをフローティングとする請求項12、17、又は20記載のシミュレーション方法。
  31. 前記第2処理の対象とされる内部ノードを有する階層化回路が、電圧源とインダクタの何れか1個の素子又は電圧源とインダクタの少なくとも2個以上の連結された素子から構成された部分回路と、前記部分回路を別の階層の階層化回路に接続する1個以上の特定ノードとを有し、前記部分回路がグランド電位に非接続されているとき、前記第2処理において前記部分回路の全ての素子に流れる電流を見ないとき前記部分回路を削除する請求項12、17、又は20記載のシミュレーション方法。
  32. 回路シミュレーションを支援するデータ処理を行なうためにコンピュータが実行するシミュレーションプログラムであって、前記データ処理は、
    複数階層に階層化された階層化回路データを用いたシミュレーション結果のうち、上位側と下位側への階層間のインタフェースノードに関するシミュレーション結果データを保存する第1処理と、
    第1処理にて保存された結果データを用いて、第1処理では保存されていない内部ノードのデータを再現する第2処理と、を含むことを特徴とするシミュレーションプログラム。
  33. 回路シミュレーションを支援するデータ処理を行なうためにコンピュータが実行するシミュレーションプログラムであって、前記データ処理は、
    指定された階層の回路ノードを階層化回路データから抽出する抽出処理と、
    前記抽出処理で抽出された回路ノードを結果出力ノードとして回路シミュレーションを行うシミュレーション実行処理と、
    上位側と下位側への階層間のインタフェースノードに関するものであり前記シミュレーション実行処理により結果出力ノードに得られたものである結果データを保存する保存処理と、
    所要階層の一つ上位又は一つ下位の階層との間の前記保存されたインタフェースノードに関する結果データを用いて、当該所要階層の回路ノードについてシミュレーション結果データを得るシミュレーション再実行処理と、を含むことを特徴とするシミュレーションプログラム。
  34. 回路シミュレーションを支援するデータ処理を行なうためにコンピュータが実行するシミュレーションプログラムであって、前記データ処理は、
    指定された階層の階層化回路データの回路ノードを結果出力ノードとして回路シミュレーションを行うシミュレーション実行処理と、
    上位側と下位側への階層間のインタフェースノードに関するものであり前記シミュレーション実行処理により結果出力ノードに得られたものである結果データを保存する保存処理と、
    前記保存処理で保存された結果データの中から検索された結果データを、前記シミュレーション実行処理結果として表示する第1表示処理と、
    所要階層の一つ上位又は一つ下位の階層との間の前記保存されたインタフェースノードに関する結果データを用いて、当該所要階層の回路ノードについてシミュレーション結果データを得るシミュレーション再実行処理と、
    前記シミュレーション再実行処理の結果データを表示する第2表示処理と、を含むことを特徴とするシミュレーションプログラム。
  35. 回路シミュレーションを支援するデータ処理を行なうためにコンピュータが実行するシミュレーションプログラムであって、前記データ処理は、
    指定された上位側階層の結果出力点をシミュレーション対象から抽出する第1処理と、
    抽出された結果出力点に関するシミュレーションを行う第2処理と、
    上位側と下位側への階層間のインタフェースノードに関するものであり前記シミュレーション実行処理により結果出力ノードに得られたものである結果データを保存する第3処理と、
    所要階層の一つ上位又は一つ下位の階層との間の前記保存されたインタフェースノードに関する結果データを用いて、前記第2処理のシミュレーションと同等の初期条件で、当該所要階層の回路ノードについてシミュレーション結果データを得るためのシミュレーションを行う第4処理と、を含むシミュレーションプログラム。
JP2006031868A 2006-02-09 2006-02-09 シミュレーション方法 Expired - Fee Related JP5057421B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2006031868A JP5057421B2 (ja) 2006-02-09 2006-02-09 シミュレーション方法
US11/619,885 US7721234B2 (en) 2006-02-09 2007-01-04 Simulation method and simulation program
US12/753,832 US20100199239A1 (en) 2006-02-09 2010-04-02 Simulation method and simulation program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006031868A JP5057421B2 (ja) 2006-02-09 2006-02-09 シミュレーション方法

Publications (2)

Publication Number Publication Date
JP2007213274A true JP2007213274A (ja) 2007-08-23
JP5057421B2 JP5057421B2 (ja) 2012-10-24

Family

ID=38335431

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006031868A Expired - Fee Related JP5057421B2 (ja) 2006-02-09 2006-02-09 シミュレーション方法

Country Status (2)

Country Link
US (2) US7721234B2 (ja)
JP (1) JP5057421B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8370786B1 (en) * 2010-05-28 2013-02-05 Golden Gate Technology, Inc. Methods and software for placement improvement based on global routing
CN103745062B (zh) * 2014-01-16 2017-07-14 广东电网公司电力科学研究院 一种发电机氢气冷却系统的检修方法及系统
CN104462666B (zh) * 2014-11-20 2017-12-19 神华集团有限责任公司 煤直接液化模拟方法及装置
US10346573B1 (en) * 2015-09-30 2019-07-09 Cadence Design Systems, Inc. Method and system for performing incremental post layout simulation with layout edits
US10395000B1 (en) * 2015-12-17 2019-08-27 Cadence Design Systems, Inc. Methods, systems, and computer program products for implementing an electronic design using voltage-based electrical analyses and simulations with corrections

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5247468A (en) * 1988-09-27 1993-09-21 Tektronix, Inc. System for calculating and displaying user-defined output parameters describing behavior of subcircuits of a simulated circuit
JPH06124317A (ja) * 1992-10-14 1994-05-06 Nec Corp 回路分割形シミュレーションの行列定式化方式
WO2003036523A1 (fr) * 2001-10-24 2003-05-01 Renesas Technology Corp. Procede et programme de simulation et procede d'affichage
JP2007041839A (ja) * 2005-08-03 2007-02-15 Renesas Technology Corp シミュレーション方法

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5416717A (en) * 1989-09-06 1995-05-16 Hitachi, Ltd. Circuit simulation method for a circuit realized by an LSI layout pattern based upon a circuit of a logic gate level realized by the layout pattern
US5544067A (en) * 1990-04-06 1996-08-06 Lsi Logic Corporation Method and system for creating, deriving and validating structural description of electronic system from higher level, behavior-oriented description, including interactive schematic design and simulation
US5555201A (en) * 1990-04-06 1996-09-10 Lsi Logic Corporation Method and system for creating and validating low level description of electronic design from higher level, behavior-oriented description, including interactive system for hierarchical display of control and dataflow information
US5980096A (en) * 1995-01-17 1999-11-09 Intertech Ventures, Ltd. Computer-based system, methods and graphical interface for information storage, modeling and stimulation of complex systems
US6983227B1 (en) * 1995-01-17 2006-01-03 Intertech Ventures, Ltd. Virtual models of complex systems
JPH09259151A (ja) 1996-03-19 1997-10-03 Fujitsu Ltd 回路シミュレーション方法
JP3604539B2 (ja) 1997-09-24 2004-12-22 株式会社東芝 データ圧縮・復元方法、データ管理方法、データ転送方法、シミュレーション方法、データ圧縮・復元システム、及びデータ圧縮・復元プログラムを格納したコンピュータ読み取り可能な記録媒体
US7480606B2 (en) * 1998-08-31 2009-01-20 Versity Design, Inc. VCD-on-demand system and method
US20060117274A1 (en) * 1998-08-31 2006-06-01 Tseng Ping-Sheng Behavior processor system and method
JP2000315222A (ja) * 1999-04-30 2000-11-14 Matsushita Electric Ind Co Ltd 集積回路装置の設計用データベース及び集積回路装置の設計方法
US6539522B1 (en) * 2000-01-31 2003-03-25 International Business Machines Corporation Method of developing re-usable software for efficient verification of system-on-chip integrated circuit designs
EP1168117A1 (de) * 2000-06-21 2002-01-02 ALSTOM Power N.V. Verfahren zur Darstellung und Verarbeitung von Prozessabläufen und Computerprogramm zur Simulation derselben
JP4743944B2 (ja) * 2000-08-25 2011-08-10 鎮男 角田 シミュレーションモデル作成方法及びそのシステムと記憶媒体
US20020069039A1 (en) * 2000-12-01 2002-06-06 Ricks Kenneth G. System and method for creating architectural descriptions of real-time simulations
US7092864B2 (en) * 2000-12-29 2006-08-15 International Business Machines Corporation Signal override for simulation models
US7080365B2 (en) * 2001-08-17 2006-07-18 Sun Microsystems, Inc. Method and apparatus for simulation system compiler
US7206732B2 (en) * 2002-04-04 2007-04-17 International Business Machines Corporation C-API instrumentation for HDL models
US20030195736A1 (en) * 2002-04-11 2003-10-16 Sun Microsystems, Inc. Method of storing cross-hierarchy coupling data in a hierarchical circuit model
US7181383B1 (en) * 2003-11-26 2007-02-20 Cadence Design Systems, Inc. System and method for simulating a circuit having hierarchical structure
US7392169B2 (en) * 2004-10-21 2008-06-24 International Business Machines Corporation Method, system and program product for defining and recording minimum and maximum event counts of a simulation utilizing a high level language
US7343572B1 (en) * 2005-03-31 2008-03-11 Xilinx, Inc. Vector interface to shared memory in simulating a circuit design
US20070043547A1 (en) * 2005-08-19 2007-02-22 Jerome Plun Integrated debugging environment for a network simulation
US7483825B2 (en) * 2005-09-12 2009-01-27 International Business Machines Corporation Method for the creation of a hybrid cycle simulation model
US7596769B2 (en) * 2006-04-14 2009-09-29 Cadence Design Systems, Inc. Simulation of power domain isolation
US7707533B2 (en) * 2006-07-21 2010-04-27 Solido Design Automation Inc. Data-mining-based knowledge extraction and visualization of analog/mixed-signal/custom digital circuit design flow

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5247468A (en) * 1988-09-27 1993-09-21 Tektronix, Inc. System for calculating and displaying user-defined output parameters describing behavior of subcircuits of a simulated circuit
JPH06124317A (ja) * 1992-10-14 1994-05-06 Nec Corp 回路分割形シミュレーションの行列定式化方式
WO2003036523A1 (fr) * 2001-10-24 2003-05-01 Renesas Technology Corp. Procede et programme de simulation et procede d'affichage
JP2007041839A (ja) * 2005-08-03 2007-02-15 Renesas Technology Corp シミュレーション方法

Also Published As

Publication number Publication date
JP5057421B2 (ja) 2012-10-24
US20100199239A1 (en) 2010-08-05
US20070186194A1 (en) 2007-08-09
US7721234B2 (en) 2010-05-18

Similar Documents

Publication Publication Date Title
CN103164585B (zh) 缓冲器的插入方法及装置
JP2010020372A (ja) 遅延ライブラリ、遅延ライブラリの作成方法、および遅延計算方法
JP5935544B2 (ja) 論理セルのアナログモデルを生成する方法、製品及びコンピュータシステム
KR101127515B1 (ko) 집적회로 설계시스템, 집적회로 설계프로그램 및 집적회로 설계방법
JP5057421B2 (ja) シミュレーション方法
JP4964685B2 (ja) 半導体集積回路の電源変動検証装置及び方法並びにそのプログラム
US10275553B2 (en) Custom circuit power analysis
US20170011138A1 (en) System and method for hierarchical power verification
US8281269B2 (en) Method of semiconductor integrated circuit device and program
US8069024B1 (en) Replicant simulation
TW201738789A (zh) 電腦可讀存儲介質及積體電路的電壓降和電遷移的分析方法
US7149674B1 (en) Methods for analyzing integrated circuits and apparatus therefor
US20120215516A1 (en) IR Drop Analysis in Integrated Circuit Timing
JP2008041097A (ja) ゲートレベルでの動的シミュレーション方法及び装置
KR101821281B1 (ko) 회로 시뮬레이션 방법
JP4554464B2 (ja) シミュレーション装置
US8818784B1 (en) Hardware description language (HDL) incorporating statistically derived data and related methods
JP2006323873A (ja) シミュレーション方法
US7107198B2 (en) Automatic generation of reduced-size circuit models including inductive interaction
JP5262435B2 (ja) 回路設計装置及び回路設計方法
JP3862882B2 (ja) 回路データ縮約方法及び回路シミュレーション方法
JP3905885B2 (ja) シミュレーション方法、シミュレーションプログラム及び表示処理方法
US10796051B1 (en) Adaptive model interface for a plurality of EDA programs
US8745558B1 (en) Deployment of transmission gate logic cells in application specific integrated circuits
JP4855283B2 (ja) 半導体集積回路の設計装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090202

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20100507

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110721

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110915

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120412

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120611

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120726

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120726

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

Free format text: PAYMENT UNTIL: 20150810

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees