(57)【要約】【課題】  隣接する回路素子の回路動作による影響を考慮した、解析時間が短く、且つ高精度のシミュレーション装置、シミュレーション方法を格納するコンピュータ記録媒体及びシミュレーションプログラムを提供する。【解決手段】  ＣＰＵ１０、プログラム記憶装置２０、データ記憶装置１００、入力装置５０、出力装置６０を備える。ＣＰＵ１０は、配置情報から半導体集積回路の回路素子の位置情報を抽出する配置情報処理部１１、接続情報をから回路素子の動作情報を解析する回路動作処理部１２、位置情報と動作情報から回路動作による回路素子間の影響を考慮して回路素子の素子モデルを選択するモデル選択部１３、素子モデルを用いて被解析回路を生成する回路作成部１４、被解析回路の解析を行う解析処理部１５を備える。データ記憶装置１００は、接続情報を格納する接続情報記憶領域１０２と回路素子の素子モデルを格納するライブラリ領域１１０を備える。【選択図】      図１
2005250874.tif 000002
【特許請求の範囲】
【請求項１】
複数の素子モデルを格納するライブラリ領域と半導体集積回路の接続情報を格納する接続情報記憶領域とを有するデータ記憶装置と、
前記接続情報を前記接続情報記憶領域から読み出し、前記半導体集積回路の回路素子の動作情報を解析する回路動作処理部と、
前記回路素子の位置情報と前記動作情報に基づいて、前記回路素子の該当する素子モデルを前記ライブラリ領域から選択するモデル選択部と、
選択された前記素子モデルを用いて被解析回路を生成する回路作成部と、
前記被解析回路の解析を行う解析処理部
とを備えることを特徴とする半導体集積回路の回路シミュレーション装置。
【請求項２】
１の回路素子に対して複数の素子モデルを作成し、該複数の素子モデルをライブラリ領域に格納するステップと、
回路動作処理部が接続情報記憶領域に格納された半導体集積回路の接続情報を読み出し、前記半導体集積回路の回路素子の動作情報を解析するステップと、
モデル選択部が前記回路素子の位置情報と前記動作情報に基づいて、前記回路素子の該当する素子モデルを前記ライブラリ領域から選択するステップと、
回路作成部が選択された前記素子モデルを用いて被解析回路を生成するステップと、
解析処理部が前記被解析回路の解析を行うステップ
とを含むことを特徴とする半導体集積回路の回路シミュレーション方法を格納するコンピュータ記録媒体。
【請求項３】
前記動作情報は回路素子の導通情報を含むことを特徴とする請求項２に記載の半導体集積回路の回路シミュレーション方法を格納するコンピュータ記録媒体。
【請求項４】
前記位置情報は電極領域を共有する回路素子の情報を含むことを特徴とする請求項２に記載の半導体集積回路の回路シミュレーション方法を格納するコンピュータ記録媒体。
【請求項５】
回路ブロック処理部が前記接続情報記憶領域に格納された前記半導体集積回路の接続情報を読み出し、回路ブロックの回路特性を計算するステップを更に含むことを特徴とする請求項２に記載の半導体集積回路の回路シミュレーション方法を格納するコンピュータ記録媒体。
【請求項６】
前記回路ブロックの回路特性は前記回路ブロックの発熱量の情報を含むことを特徴とする請求項５に記載の半導体集積回路の回路シミュレーション方法を格納するコンピュータ記録媒体。
【請求項７】
回路動作処理部に接続情報記憶領域に格納された半導体集積回路の接続情報を読み出させ、前記半導体集積回路の回路素子の動作情報を解析させる命令と、
モデル選択部に前記回路素子の位置情報と前記動作情報に基づいて、前記回路素子の該当する素子モデルをライブラリ領域から選択させる命令と、
回路作成部に選択された前記素子モデルを用いて被解析回路を生成させる命令と、
解析処理部に前記被解析回路の解析を行わせる命令
とを実行させるための半導体集積回路の回路シミュレーションプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路の設計方法に係り、特に半導体集積回路の回路シミュレーション装置、回路シミュレーション方法を格納するコンピュータ記録媒体及び回路シミュレーションプログラムに関する。
【背景技術】
【０００２】
半導体装置の回路設計に用いられる回路シミュレーションにおいて、トランジスタ等の回路素子は製造方法によって決定する活性領域の極性やしきい値電圧等の特徴により分類され、それぞれの分類に対して一意的に素子モデルが用意されている。しかし、半導体装置の微細化に伴い、隣接する回路素子の影響により、同一分類された回路素子間の特性に大きな差が生じるようになっている。
【０００３】
複数のトランジスタが同時に遮断状態から導通状態になることを「同時スイッチング」という。電極領域を共有するトランジスタが同時スイッチングした場合と、片方のトランジスタだけが導通状態になる場合とで、導通したトランジスタを流れる電流値に違いが生じることがある。ここで、「電極領域を共有する」とは、複数のトランジスタの電極が、絶縁膜等によって他の活性領域と電気的に分離された１つの活性領域に配置されていることをいう。
【０００４】
例えばＭＯＳトランジスタのソース領域上に形成されたシリサイドの界面抵抗は半導体装置の微細化にともなって増大し、そのためソース電極領域の寄生抵抗が大きくなる。したがって、ソース電極領域を共有する第１のＭＯＳトランジスタと第２のＭＯＳトランジスタにおいては、第１のＭＯＳトランジスタが導通状態に変化した場合のドレイン電流の大きさは、第２のＭＯＳトランジスタが同時に導通状態になるか、或いは第２のＭＯＳトランジスタが遮断状態であるかに依存する。
【０００５】
これは、２つのＭＯＳトランジスタに同時に電流が流れる場合には、共有されるソース電極領域の寄生抵抗に流れる電流が重複され、電圧降下量が異なるためである。即ち、第１のＭＯＳトランジスタと第２のＭＯＳトランジスタが同時スイッチングするかどうかで、導通した第１のＭＯＳトランジスタの特性が異なってみえる。
【０００６】
電極領域を共有する他のトランジスタの動作の影響によって、トランジスタの特性が変動することを考慮した回路シミュレーションを実行するために、以下のような方法がある。
【０００７】
（i）素子間の電気的な接続関係を記述した被解析回路に、寄生抵抗を部分回路として追加して回路シミュレーションを実行する方法。
【０００８】
（ii）寄生抵抗をパラメータとして含むトランジスタの素子モデルを用意し、電極領域を共有する他のトランジスタの動作による影響が最大になる場合及び最小になる場合の回路シミュレーションを実行する方法。この回路シミュレーションを実行するために、電極領域を共有する他のトランジスタの動作の影響によって寄生抵抗を流れる電流が最大になる場合及び最小になる場合に対応した寄生抵抗のパラメータを有するトランジスタの素子モデルをそれぞれ用意する。
【０００９】
一方、同時スイッチング以外にも、回路素子のレイアウト形状によってトランジスタの特性が影響を受ける場合があり、回路レイアウト形状を考慮した回路シミュレーションとしてビニング（Binning）法が用いられる（例えば非特許文献１参照。）。
【非特許文献１】ユーフア・チェン（Yuhua Cheng）、チェンミン・フー（Chenming Hu）著、「モスエフイーティ・モデリング・アンド・ビーシムスリー・ユーザーズ・ガイド(MOSFET MODELING & BSIM3 USER'S GUIDE)」、クラマー・アカデミック・パブリッシャー(Klumer Academic Publisher)、（米国）、１９９９年８月、ｐ．３６７
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、（i）の方法では、被解析回路の素子数が増加して解析時間が増大してしまう。
【００１１】
一方、（ii）の方法では、すべての回路状態を設定して回路シミュレーションを行うため、設計余裕を大きく持った回路設計となり、半導体装置の高性能化を阻害する原因となる。
【００１２】
又、隣接した回路ブロックの回路動作による発熱量が大きい場合と小さい場合では、回路素子の温度依存性によって回路素子の特性が異なる場合がある。更に、回路ブロックに発生するノイズの大きさによって、隣接した回路素子が影響を受けて特性が異なる場合がある。このような、隣接した回路ブロックの回路動作によって回路素子が受ける影響を考慮するには、回路配置の情報だけでなく回路動作の情報も必要になるため、非特許文献１に開示された方法では精度の高い回路シミュレーションを実行することができない。
【００１３】
上記問題点を鑑み、本発明は、隣接する回路素子の回路動作による影響を考慮した、解析時間が短く、且つ高精度の回路シミュレーション装置、回路シミュレーション方法を格納するコンピュータ記録媒体及び回路シミュレーションプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１４】
上記目的を達成するために、本発明の第１の特徴は、（イ）複数の素子モデルを格納するライブラリ領域と半導体集積回路の接続情報を格納する接続情報記憶領域とを有するデータ記憶装置、（ロ）接続情報を接続情報記憶領域から読み出し、半導体集積回路の回路素子の動作情報を解析する回路動作処理部と、（ハ）回路素子の位置情報と動作情報に基づいて、回路素子の該当する素子モデルをライブラリ領域から選択するモデル選択部と、（ニ）選択された素子モデルを用いて被解析回路を生成する回路作成部と、（ホ）被解析回路の解析を行う解析処理部とを備える半導体集積回路の回路シミュレーション装置であることを要旨とする。
【００１５】
本発明の第２の特徴は、（イ）１の回路素子に対して複数の素子モデルを作成し、その複数の素子モデルをライブラリ領域に格納するステップと、（ロ）回路動作処理部が接続情報記憶領域に格納された半導体集積回路の接続情報を読み出し、半導体集積回路の回路素子の動作情報を解析するステップと、（ハ）モデル選択部が回路素子の位置情報と動作情報に基づいて、回路素子の該当する素子モデルをライブラリ領域から選択するステップと、（ニ）回路作成部が選択された素子モデルを用いて被解析回路を生成するステップと、（ホ）解析処理部が被解析回路の解析を行うステップとを含む半導体集積回路の回路シミュレーション方法を格納するコンピュータ記録媒体であることを要旨とする。
【００１６】
本発明の第３の特徴は、回路シミュレーション装置において、（イ）回路動作処理部に接続情報記憶領域に格納された半導体集積回路の接続情報を読み出させ、半導体集積回路の回路素子の動作情報を解析させる命令と、（ロ）モデル選択部に回路素子の位置情報と動作情報に基づいて、回路素子の該当する素子モデルをライブラリ領域から選択させる命令と、（ハ）回路作成部に選択された素子モデルを用いて被解析回路を生成させる命令と、（ニ）解析処理部に被解析回路の解析を行わせる命令とを実行させるための半導体集積回路の回路シミュレーションプログラムであることを要旨とする。
【発明の効果】
【００１７】
本発明によれば、隣接する回路素子の動作による影響を考慮した、解析時間が短く、且つ高精度の回路シミュレーションを実行可能な回路シミュレーション装置、回路シミュレーション方法を格納するコンピュータ記録媒体及び回路シミュレーションプログラムを提供することができる。
【発明を実施するための最良の形態】
【００１８】
次に、図面を参照して、本発明の第１及び第２の実施の形態を説明する。以下の図面の記載において、同一又は類似の部分には同一又は類似の符号を付している。
【００１９】
また、以下に示す第１及び第２の実施の形態は、この発明の技術的思想を具体化するための装置や方法を例示するものであって、この発明の技術的思想は、構成部品の形状、構造、配置等を下記のものに特定するものでない。この発明の技術的思想は、特許請求の範囲において、種々の変更を加えることができる。
【００２０】
（第１の実施の形態）
本発明の第１の実施の形態に係る回路シミュレーション装置は、図１に示すように、ＣＰＵ１０、プログラム記憶装置２０、データ記憶装置１００、入力装置５０、出力装置６０を備える。
【００２１】
データ記憶装置１００は、配置情報記憶領域１０１、接続情報記憶領域１０２、解析条件記憶領域１０３、ライブラリ領域１１０、位置情報記憶領域１１１、動作情報記憶領域１１２、モデル記憶領域１１３、回路記憶領域１１４及び解析結果記憶領域１１５を備える。配置情報記憶領域１０１には、回路シミュレーションを行う半導体集積回路の回路素子の配置情報が格納される。配置情報には、それぞれの回路素子の配置座標や活性領域の座標等の情報が含まれる。接続情報記憶領域１０２には、回路シミュレーションを行う半導体集積回路の電気的な接続情報が格納される。解析条件記憶領域１０３には、回路シミュレーションを実行する場合の入力信号条件、温度、解析誤差等の解析条件や出力形態の指定等が格納される。ライブラリ領域１１０には、回路素子の複数の素子モデルが格納される。位置情報記憶領域１１１には半導体集積回路の回路素子の位置情報が格納される。動作情報記憶領域１１２には半導体集積回路の回路素子の動作情報が格納される。モデル記憶領域１１３には、半導体集積回路の回路素子に選択された素子モデルの情報が格納される。回路記憶領域１１４には、回路シミュレーションを行う半導体集積回路の被解析回路の情報を格納する。解析結果記憶領域１１５には、回路シミュレーションを実行した結果が格納される。
【００２２】
プログラム記憶装置２０は、回路シミュレーションプログラムが格納されるプログラム記憶部２１を備える。
【００２３】
ＣＰＵ１０は、配置情報処理部１１、回路動作処理部１２、モデル選択部１３、回路作成部１４及び解析処理部１５を備える。配置情報処理部１１は、配置情報記憶領域１０１に格納された回路素子の配置情報を読み出して解析を行い、回路素子の位置情報を抽出する。回路動作処理部１２は、接続情報記憶領域１０２に格納された回路の接続情報を読み出して回路動作の解析を行い、回路素子の導通状態等の情報を抽出する。モデル選択部１３は、位置情報記憶領域１１１に格納された回路素子の位置情報と動作情報記憶領域１１２に格納された回路素子の動作情報に基づいて、回路素子の該当する素子モデルをライブラリ領域１１０から選択する。「素子モデル」とは、半導体集積回路回路を構成する回路素子を、回路シミュレーション装置によって解析可能なように電気的特性によりモデル化したものである。回路作成部１４は、接続情報記憶領域１０２格納された接続情報を読み出し、モデル記憶領域１１３に格納されたそれぞれの回路素子に選択された素子モデルの情報を参照して、ライブラリ領域１１０に格納された素子モデルを用いて被解析回路を生成する。解析処理部１５は、回路記憶領域１１４に格納された被解析回路と解析条件記憶領域１０３に格納された解析条件及びプログラム記憶部２１に格納されたシミュレーションプログラムを読み出して、回路シミュレーションを実行する。
【００２４】
図１に示すシミュレーション装置では、入力装置５０から回路シミュレーションを行う半導体集積回路の配置情報や電気的な接続情報が読み込まれて、ＣＰＵ１０によって回路素子の素子モデルが選択される。更にＣＰＵ１０によって被解析回路が生成され、回路シミュレーションが実行される。回路シミュレーション結果は出力装置６０に出力される。
【００２５】
入力装置５０はキーボード、マウス、ライトペン又はフレキシブルディスク装置などで構成される。入力装置５０よりシミュレーション実行者は、入出力データを指定したり、温度、誤差等のシミュレーション条件を設定できる。更に、入力装置５０より出力データの形態等の解析パラメータを設定することも可能で、また、シミュレーションの実行や中止等の指示の入力も可能である。また出力装置６０としては、シミュレーション結果を表示するディスプレイやプリンタ、或いはコンピュータ読み取り可能な記録媒体に保存する記録装置等が使用可能である。ここで、「コンピュータ読み取り可能な記録媒体」とは、例えばコンピュータの外部メモリ装置、半導体メモリ、磁気ディスク、光ディスク、光磁気ディスク、磁気テープなどの電子データを記録することができるような媒体などを意味する。具体的には、フレキシブルディスク、ＣＤ−ＲＯＭ，ＭＯディスク、カセットテープ、オープンリールテープなどが「コンピュータ読み取り可能な記録媒体」に含まれる。
【００２６】
第１の実施の形態に係る回路シミュレーション装置を用いた回路シミュレーション方法を説明する前に、回路シミュレーションに使用される素子モデルについて以下に説明する。
【００２７】
同時スイッチングによって半導体集積回路が影響を受けるのは、第１主電極領域又は第２主電極領域を共通とする回路素子が同時に導通する場合である。ここで、「第１主電極領域」とは、回路素子がバイポーラトランジスタ（ＢＪＴ）や絶縁ゲート型バイポーラトランジスタ（ＩＧＢＴ）の場合においてエミッタ領域又はコレクタ領域のいずれか一方となる半導体領域を意味する。回路素子が電界効果トランジスタ（ＦＥＴ）や静電誘導トランジスタ（ＳＩＴ）の場合においてはソース領域又はドレイン領域のいずれか一方となる半導体領域を意味する。回路素子が静電誘導サイリスタ（ＳＩサイリスタ）やゲートターンオフサイリスタ（ＧＴＯサイリスタ）の場合では、アノード領域又はカソード領域のいずれか一方となる半導体領域を意味する。「第２主電極領域」とは、回路素子がＢＪＴ，ＩＧＢＴ等の場合においては上記第１主電極領域とはならないエミッタ領域又はコレクタ領域のいずれか一方となる半導体領域、回路素子がＦＥＴ，ＳＩＴの場合においては上記第１主電極領域とはならないソース領域又はドレイン領域のいずれか一方となる半導体領域を意味する。また、回路素子がＳＩサイリスタ、ＧＴＯサイリスタの場合では、「第２主電極領域」は、上記第１主電極領域とはならないアノード領域又はカソード領域のいずれか一方となる半導体領域を意味する。すなわち、第１主電極領域が、エミッタ領域であれば、第２主電極領域はコレクタ領域であり、第１主電極領域がソース領域であれば、第２主電極領域はドレイン領域であり、第１主電極領域がカソード領域であれば、第２主電極領域はアノード領域を意味する。
【００２８】
以下の説明においては、回路素子がＭＯＳトランジスタであるとし、このＭＯＳトランジスタが同時スイッチングする場合を例示的に説明する。即ち、ソース電極領域又はドレイン電極領域を共有するＭＯＳトランジスタの同時スイッチングを考慮した回路シミュレーションを実行する場合について説明する。又、ＭＯＳトランジスタのソース電極領域又はドレイン電極領域を共有することを「主電極領域を共有する」というが、他の回路素子についても同様である。
【００２９】
図２は半導体集積回路の部分的な回路図であり、ソース電極領域を共有する回路素子Ｑ１及び回路素子Ｑ２と、ソース電極領域の寄生抵抗Ｒｓを示す。寄生抵抗Ｒｓは、回路素子Ｑ１と回路素子Ｑ２に共有される寄生抵抗である。即ち、回路素子Ｑ１と回路素子Ｑ２が導通した場合に、共通して電流が流れるソース電極領域の寄生抵抗である。
【００３０】
回路素子Ｑ１のゲート電極Ｇ１は、図示を省略した他の回路素子の出力端子に接続し、ドレイン電極Ｄ１はドレイン電源配線Ｖｄに接続している。回路素子Ｑ１のソース電極Ｓ１は回路素子Ｑ２のソース電極Ｓ２及び寄生抵抗Ｒｓの一方の端子に接続している。寄生抵抗Ｒｓの他方の端子はソース電源配線Ｖｓに接続している。回路素子Ｑ２のドレイン電極Ｄ２はドレイン電源配線Ｖｄに接続している。ゲート電極Ｇ２は、図示を省略した他の回路素子の出力端子に接続している。図２では、回路素子Ｑ１のドレイン電極Ｄ１と回路素子Ｑ２のドレイン電極Ｄ２が共通のドレイン電源配線Ｖｄに接続している例を示しているが、回路素子Ｑ１のドレイン電極Ｄ１と回路素子Ｑ２のドレイン電極Ｄ２が互いに異なるドレイン電源配線に接続されてもよい。
【００３１】
以下に、図２に示した回路図の回路素子Ｑ１と回路素子Ｑ２の、寄生抵抗Ｒｓの影響を考慮した素子モデルについて説明する。
【００３２】
図３(ａ)〜図３（ｃ）に示すモデル１ａ〜１ｃは、同時スイッチングを考慮した回路シミュレーションを行うために、回路素子Ｑ１に用意される素子モデルの具体例を示す回路図である。ソース電極領域を共有する回路素子Ｑ２の動作によって、寄生抵抗Ｒｓによる回路素子Ｑ１の特性への影響が異なることを考慮して、モデル１ａ〜１ｃをモデル化している。モデル１ａは、寄生抵抗Rs1aを含む回路素子Ｑ１をモデル化している。モデル１ｂは、寄生抵抗Rs1bを含む回路素子Ｑ１をモデル化している。モデル１ｃは、寄生抵抗Rs1cを含む回路素子Ｑ１をモデル化している。回路素子の素子モデルのドレイン端子はＱｄ、ゲート端子はＱｇ、ソース端子はＱｓである。モデル１ａ〜１ｃは、それぞれ以下の場合に回路素子Ｑ１のシミュレーションモデルとして選択される。
【００３３】
モデル１ａ：回路素子Ｑ１が導通し、回路素子Ｑ２が同時スイッチングしない場合。
モデル１ｂ：回路素子Ｑ１が導通し、回路素子Ｑ２が同時スイッチングする場合。
モデル１ｃ：回路素子Ｑ１が導通しない場合。
【００３４】
同様に、回路素子Ｑ２の回路シミュレーション用に以下の素子モデルが用意される。図４(ａ)〜図４（ｃ）に示すモデル２ａ〜２ｃは、同時スイッチングを考慮した回路シミュレーションを行うために、回路素子Ｑ２に用意される素子モデルの具体例を示す回路図である。モデル２ａは、寄生抵抗Rs2aを含む回路素子Ｑ２をモデル化している。モデル２ｂは、寄生抵抗Rs2bを含む回路素子Ｑ２をモデル化している。モデル２ｃは、寄生抵抗Rs2cを含む回路素子Ｑ２をモデル化している。モデル２ａ〜２ｃは、それぞれ以下の場合に回路素子Ｑ２に適用される。
【００３５】
モデル２ａ：回路素子Ｑ２が導通し、回路素子Ｑ１が同時スイッチングしない場合。
モデル２ｂ：回路素子Ｑ２が導通し、回路素子Ｑ１が同時スイッチングする場合。
モデル２ｃ：回路素子Ｑ２が導通しない場合。
【００３６】
各モデルの前提条件から明らかなように、モデル１ａ〜１ｃとモデル２ａ〜２ｃは、独立して回路素子Ｑ１及び回路素子Ｑ２に対して選択されるのではなく、図５に示す組み合わせで選択される。例えば、回路素子Ｑ１の素子モデルがモデル１ｂの場合は、回路素子Ｑ２の素子モデルはモデル２ｂである。
【００３７】
各モデルに含まれる寄生抵抗Rs1a〜Rs1c及び寄生抵抗Rs2a〜Rs2cは、それぞれの回路動作において回路素子Ｑ１と回路素子Ｑ２から寄生抵抗Ｒｓに流れる電流値を勘案して設定される。例えば、回路素子Ｑ１が導通した場合に、回路素子Ｑ２が導通せず、寄生抵抗Ｒｓに回路素子Ｑ２から電流がまったく流れない場合は、Rs1a＝Ｒｓとなる。又、回路素子Ｑ１と回路素子Ｑ２が同時スイッチングし、更に回路素子Ｑ１と回路素子Ｑ２の寄生抵抗を流れる電流値が等しい時は、Rs2a＝Rs2b＝Ｒｓ×２と設定される。
【００３８】
以上の説明では、例えば回路素子Ｑ１の素子モデルとして寄生抵抗を含んだモデル１ａ〜１ｃについて説明した。素子モデルの他の形態としては、被解析回路に使用する回路素子の素子モデルは変えずに、モデルのパラメータ群を変更する方法がある。寄生抵抗の違いによって変更するパラメータは、例えば回路シミュレータで広く用いられているＭＯＳトランジスタの素子モデルであるＢＳＩＭ３モデルでは、単位幅当たりの寄生抵抗RDSW、移動度μ0、飽和速度VSAT、長チャネルしきい値電圧VTH0、チャネル幅オフセットのフィッティングパラメータWINT、チャネル長オフセットのフィッティングパラメータLINT等である。
【００３９】
その他の素子モデルの形態として、寄生抵抗から受ける影響を反映する部分を切り替え、寄生抵抗の影響を受けない部分は共通である素子モデルを用意する方法がある。図６(ａ)〜図６（ｃ）に、具体例を示す。図６(ａ)は回路素子Ｑ１の寄生抵抗の影響に依存しない共通部分のモデルＱと、回路素子Ｑ２が同時スイッチングしない場合に回路素子Ｑ１が寄生抵抗から受ける影響を反映する部分のモデルRsaを組み合わせたモデルである。図６(ｂ)はモデルＱと、回路素子Ｑ２が同時スイッチングする場合に回路素子Ｑ１が寄生抵抗から受ける影響を反映する部分のモデルRsbを組み合わせたモデルである。図６(ｃ)はモデルＱと、回路素子Ｑ１が導通しない場合に回路素子Ｑ１が寄生抵抗から受ける影響を反映する部分のモデルRscを組み合わせたモデルである。例えば、図２に示す回路図において回路素子Ｑ１が導通し、回路素子Ｑ２が同時スイッチングしない場合は、図６(ａ)のモデルが回路素子Ｑ１の素子モデルとなる。
【００４０】
又、寄生抵抗の部分と他の回路素子の部分を切り分け、それぞれに複数の素子モデルを用意し、組み合わせて回路素子の素子モデルとする方法も可能である。図７(ａ)〜図７（ｅ）に具体例を示す。図７(ａ)に示す回路素子の素子モデルＱａ又は図７(ｂ)に示す回路素子の素子モデルＱｂと、図７(ｃ)〜図７（ｅ）にそれぞれ示す寄生抵抗の素子モデルＲａ、Ｒｂ、Ｒｃを組み合わせて寄生抵抗を含む回路素子の素子モデルとする。図７(ｃ)〜図７（ｅ）では寄生抵抗の素子モデルの端子をＲ１及びＲ２としている。例えば図７(ａ)のモデルＱａのＱｓ端子と図７（ｃ）のモデルＲａのＲ１端子を接続して、回路素子Ｑ１の素子モデルとする。
【００４１】
以上に説明した同時スイッチングの影響を考慮した素子モデルは例であり、更に回路素子の電気的特性や寄生抵抗の大きさ等を考慮した他の素子モデルが作成され、ライブラリ領域１１０に格納される。
【００４２】
次に、図２に示す回路図を例にして、回路素子Ｑ１が導通する場合に回路素子Ｑ１と回路素子Ｑ２の素子モデルを選択する方法を説明する。以下では、図３に示したモデル１ａ〜１ｃ及び図４に示したモデル２ａ〜２ｃを素子モデルに選択する場合を説明する。同時スイッチングを考慮した回路シミュレーションに使用する素子モデルを選択するためには、ソース電極領域を共有する他の回路素子の動作を考慮する必要がある。但し、入力信号の組み合わせ等によって動作が確定する回路素子の場合、同時スイッチングするかどうか不明の場合がある。導通するかどうか不明の場合を以下において「不定」という。したがって、回路素子Ｑ１が導通した場合の回路素子Ｑ２の動作は、以下の３つの場合が考えられる。
【００４３】
ケース１：回路素子Ｑ２が導通しない場合。
ケース２：回路素子Ｑ２が導通する場合。
ケース３：回路素子Ｑ２が不定の場合。
【００４４】
図５に示したように、シミュレーション用回路に選択される素子モデルは、ケース１の場合は回路素子Ｑ１にモデル１ａ、回路素子Ｑ２にモデル２ｃである。ケース２の場合は回路素子Ｑ１にモデル１ｂ、回路素子Ｑ２にモデル２ｂが選択される。ケース３の場合は回路素子Ｑ２が不定であるため、回路素子Ｑ２が導通する場合としない場合の両方の回路シミュレーションを行う必要がある。即ち、ケース１の場合とケース２の場合の両方について回路シミュレーションを行う。したがって、ケース３では、ケース１やケース２に比べると設計余裕を大きくとった回路設計になる。ケース１の場合の図２に示す回路図の被解析回路を図８に示す。
【００４５】
一方、回路素子Ｑ１が導通しない場合は、回路素子Ｑ１にモデル１ｃが選択される。この時、回路素子Ｑ２が導通する場合は、回路素子Ｑ２にモデル２ａが選択される。回路素子Ｑ２が導通しない場合は、回路素子Ｑ２にモデル２ｃが選択される。又、回路素子Ｑ１と回路素子Ｑ２の両方が不定の場合は、同時スイッチングするケース、両方の回路素子が導通しないケース等、複数のケースについて回路シミュレーションを行う。
【００４６】
以上の説明では、回路素子Ｑ１にモデル１ａ〜１ｃ、回路素子Ｑ２にモデル２ａ〜２ｃのいずれかを選択する例を説明したが、例えば回路シミュレーションにおいて、回路素子Ｑ２に回路素子Ｑ１と同一の回路素子が用いられる場合は、回路素子Ｑ２にモデル１ａ〜１ｃのいずれかが選択される。
【００４７】
ソース電極領域を共有する回路素子が３つ以上の場合も、２つの回路素子がソース電極領域を共有する場合と同様に考えることができる。即ち、同時にいくつの回路素子が導通するかを考慮し、それぞれの回路素子から寄生抵抗に流れる電流値を勘案して設定した寄生抵抗のパラメータを含んだ素子モデルを作成しておく。不定である回路素子の数が多い場合には、不定の回路素子が導通する場合としない場合の両方の回路シミュレーションを実行する。そのため、不定の回路素子がある場合は設計余裕が大きい回路設計になるが、少しでも同時スイッチングする回路素子或いは同時スイッチングしない回路素子が確定していれば、より設計余裕の少ない回路設計を行うことができる。
【００４８】
又、上記の説明においては、ソース電極領域を共有するＭＯＳトランジスタの場合について例示的に説明したが、ドレイン電極領域を共有するＭＯＳトランジスタの場合も、ドレイン電極領域の寄生抵抗を考慮した素子モデルを作成して精度の高い回路シミュレーションを実行することができる。更に、ＭＯＳトランジスタ以外のトランジスタを使用した半導体装置においても、共有する主電極領域の寄生抵抗を考慮した素子モデルを作成することにより、同時スイッチングによる影響を考慮した回路シミュレーションを実行できる。
【００４９】
図１に示した回路シミュレーション装置による回路シミュレーション方法の例を、図９のフローチャートを用いて説明する。以下の説明では、主電極領域を共有するＭＯＳトランジスタが同時スイッチングする場合を例示的に説明する。
【００５０】
（イ）先ず、図９のステップＳ１０１において、図１に示した入力装置５０を介して回路シミュレーションを行う回路の回路素子の配置情報が配置情報記憶領域１０１に格納される。入力装置５０を介して回路シミュレーションを行う回路の電気的な接続情報が接続情報記憶領域１０２に格納される。又、回路シミュレーションを実行する場合の解析条件が入力装置５０を介して解析条件記憶領域１０３に格納される。
【００５１】
（ロ）次に、ステップＳ１０２において、配置情報記憶領域１０１に格納された回路素子の配置情報を読み出し、配置情報処理部１１によって回路素子の配置が解析される。主電極領域を共有するＭＯＳトランジスタの情報が抽出され、抽出された情報は位置情報記憶領域１１１に格納される。
【００５２】
（ハ）次に、ステップＳ１０３において、接続情報記憶領域１０２に格納された電気的な接続情報を読み出し、ＭＯＳトランジスタの動作が回路動作処理部１２によって解析される。それぞれのＭＯＳトランジスタについて、導通するかどうか、或いは不定であるという動作情報が付加されて動作情報記憶領域１１２に格納される。
【００５３】
（ニ）ステップＳ１０４において、モデル選択部１３によって素子モデルを選択するＭＯＳトランジスタが選ばれる。
【００５４】
（ホ）次に、ステップＳ１０５において、位置情報記憶領域１１１に格納された電極領域を共有するＭＯＳトランジスタの情報と、動作領域記憶領域に格納されたＭＯＳトランジスタの動作情報とを読み出して、ステップＳ１０４においてモデル選択部１３によって選択されたＭＯＳトランジスタと電極領域を共有する他のＭＯＳトランジスタが存在するか、及び電極領域を共有する他のＭＯＳトランジスタが同時スイッチングするかどうかが解析される。解析結果に基づき、前述した方法によってモデル選択部１３によりＭＯＳトランジスタの素子モデルが選択される。一般的には、電極領域を共有する複数のＭＯＳトランジスタの素子モデルを同時に選択することができる。選択された素子モデルは、それぞれのＭＯＳトランジスタの情報としてモデル記憶領域１１３に格納される。
【００５５】
（ヘ）次に、ステップＳ１０６において、すべてのＭＯＳトランジスタに素子モデルを選択したかどうか判断する。素子モデルが選択されていないＭＯＳトランジスタがある場合は、ステップＳ１０４に戻り、次のＭＯＳトランジスタの素子モデルの選択を行う。すべてのＭＯＳトランジスタの素子モデルの選択が終了していれば、ステップＳ１０７に進む。
【００５６】
（ト）ステップＳ１０７において、接続情報記憶領域１０２に格納された回路シミュレーションを行う回路の電気的な接続情報を読み出し、回路作成部１４によってモデル記憶領域１１３に格納されたそれぞれのＭＯＳトランジスタに選択された素子モデルの情報を参照しながら、ライブラリ領域１１０に格納された回路素子の素子モデルを用いて被解析回路が作成される。作成された被解析回路は、回路記憶領域１１４に格納される。
【００５７】
（チ）次に、ステップＳ１０８において、回路記憶領域１１４に格納された被解析回路と解析条件記憶領域１０３に格納された設定条件、及びプログラム記憶部２１に格納された解析プログラムを読み出して、解析処理部１５によって回路シミュレーションが実行される。回路シミュレーションの実行結果は、解析結果記憶領域１１５に格納される。
【００５８】
（リ）ステップＳ１０９において、解析結果記憶領域１１５からシミュレーション結果を読み出し、出力装置６０によって出力される。
【００５９】
以上の説明では、先ずステップＳ１０２において回路素子の配置が解析され、次にステップＳ１０３において回路素子の動作情報が解析される例を示したが、解析する順序を逆にしてもよい。又、例えばステップＳ１０２において電極領域を共有する回路素子をグループ化し、ステップＳ１０５においてそれぞれのグループ毎にグループ内のすべての回路素子の素子モデルの選択を行う方法も可能である。
【００６０】
本発明の第１の実施の形態に係るシミュレーション装置によれば、回路素子の配置情報と電気的な接続情報を解析することにより、同時スイッチングによる半導体装置への影響を考慮した精度の高い回路シミュレーションが実行可能である。
【００６１】
図９に示した一連のシミュレーション操作は、図９と等価なアルゴリズムのプログラムにより、図１に示したシミュレーション装置を制御して実行できる。このプログラムは、図１に示したシミュレーション装置を構成するプログラム記憶装置２０に記憶させればよい。また、このプログラムは、コンピュータ読み取り可能な記録媒体に保存し、この記録媒体を図１に示したプログラム記憶装置２０に読み込ませることにより、本発明の一連のシミュレーション操作を実行することができる。
【００６２】
（第２の実施の形態）
隣接する回路ブロック等の発熱の影響による温度変動によって、トランジスタ等の回路素子の特性が変化する場合がある。回路ブロックの発熱量は、回路ブロックの回路動作によって決まる。より具体的には、回路ブロックに含まれる回路素子が導通するかどうかで回路ブロックのそれぞれの回路素子に流れる電流値が決まり、その電流値に基づいて回路ブロックの発熱量を計算することができる。回路素子が導通するかどうかは、回路の接続情報から回路動作を解析して知ることができる。したがって、回路ブロックの電気的な接続情報から、回路ブロックの発熱量を見積もることが可能である。又、回路ブロックの発熱の影響による回路素子の温度変動量は、回路ブロックからの距離及び回路ブロックと回路素子を接続する配線の熱伝導率等に依存する。そのため、回路素子の配置情報及び回路の電気的な接続情報によって、隣接する回路の発熱によって回路素子が受ける影響を見積もることが可能であり、温度変動の影響による回路素子の特性の変化を考慮した素子モデルを使用することにより、精度の高い回路シミュレーションを行うことができる。温度変動の影響による特性の変化を考慮して素子モデルを選択する方法としては、例えば複数の温度での特性をそれぞれ示す回路素子の素子モデルを作成し、回路素子の温度変動量に基づいて素子モデルを選択する方法がある。それぞれの温度での素子モデルは、例えば回路素子の温度特性を測定することにより作成可能である。作成された回路素子の複数の素子モデルはライブラリ領域１１０に格納される。
【００６３】
又、隣接する回路ブロック等を流れる電流値に変動があった場合、電源電流配線や半導体基板でノイズが発生し、トランジスタ等の回路素子の特性に影響を及ぼす場合がある。ノイズの原因となる電流値の変動は、回路ブロックの動作によって決まる。より具体的には、回路ブロックに含まれる回路素子が同時スイッチングする場合の総電流値の時間変化率から発生するノイズ量を計算することができる。したがって、回路ブロックの電気的な接続情報から、回路ブロックに発生するノイズ量を見積もることが可能である。又、回路ブロック等に発生するノイズの影響による回路素子の特性変動量は、ノイズの発生場所からの距離に依存する。そのため、回路素子の配置情報及び回路の電気的な接続情報によって、隣接する回路に発生するノイズによって回路素子が受ける影響を見積もることが可能である。ノイズの影響による回路素子の特性の変化を考慮した複数の素子モデルを作成してライブラリ領域１１０に格納し、見積もられるノイズの影響による特性変化に基づいて素子モデルを選択することによって精度の高い回路シミュレーションを行うことができる。
【００６４】
温度変動やノイズの影響を考慮して回路素子の素子モデルを選択する方法は、素子モデルそのものを選択する方法以外に、例えば回路素子の素子モデルは変えずにモデルのパラメータ群を変更する方法がある。変更するモデルのパラメータとしては、例えばＢＳＩＭ３モデルでは、長チャネルしきい値電圧VTH0、移動度μ0、飽和速度VSAT等がある。
【００６５】
隣接する回路ブロックの発熱や発生するノイズの影響を考慮した回路シミュレーションを実行するために、本発明の第２の実施の形態に係る回路シミュレーション装置は、図１０に示すように、ＣＰＵ１０、プログラム記憶装置２０、データ記憶装置１００、入力装置５０、出力装置６０を備える。データ記憶装置１００は、配置情報記憶領域１０１、接続情報記憶領域１０２、解析条件記憶領域１０３、ライブラリ領域１１０、位置情報記憶領域１１１、動作情報記憶領域１１２、モデル記憶領域１１３、回路記憶領域１１４、解析結果記憶領域１１５、回路ブロック記憶領域１１６及び変動量記憶領域１１７を備える。
【００６６】
又、プログラム記憶装置２０はプログラム記憶部２１を備える。
【００６７】
更に、ＣＰＵ１０は、配置情報処理部１１、回路動作処理部１２、モデル選択部１３、回路作成部１４、解析処理部１５及び回路ブロック処理部１６を備える。
【００６８】
回路ブロック記憶領域１１６及び変動量記憶領域１１７と回路ブロック処理部１６を更に備えることが第１の実施の形態に係る回路シミュレーション装置と異なる点である。回路ブロック処理部１６によって回路ブロック等の発熱量やノイズ量が計算される。回路ブロック記憶領域１１６は、計算された回路ブロック等の発熱量やノイズ量が格納される。変動量記憶領域１１７は回路素子での温度変動量やノイズ量が格納される。
【００６９】
以下に、図１０に示した回路シミュレーション装置によって、回路ブロックの発熱量を計算する方法及び回路ブロックの発熱による回路素子の温度変動量を計算する方法の例を、図１１のフローチャートを用いて説明する。
【００７０】
（イ）先ず、図１１のステップＳ２０１において、図１０に示した配置情報処理部１１によって配置情報記憶領域１０１に格納された回路シミュレーションを行う回路素子の配置情報を読み出し、回路素子の配置が解析される。配置情報処理部１１によって素子モデルを選択する回路素子と発熱量を計算する回路ブロックの距離が計算される。計算された距離の情報は、位置情報記憶領域１１１に格納される。
【００７１】
（ロ）次に、ステップＳ２０２において、回路動作処理部１２によって接続情報記憶領域１０２に格納された回路シミュレーションを行う回路の電気的な接続情報を読み出し、回路動作が解析される。回路動作処理部１２によって発熱量を計算する回路ブロックに含まれる回路素子の動作が解析され、それぞれの回路素子について、導通するかどうかの動作情報が付加されて動作情報記憶領域１１２に格納される。
【００７２】
（ハ）ステップ２０３において、回路ブロック処理部１６によって接続情報記憶領域１０２に格納された回路の電気的な接続情報と動作情報記憶領域１１２に格納された回路ブロックの回路素子の動作情報を読み出して、回路ブロックの発熱量が計算される。計算された発熱量は回路ブロック記憶領域１１６に格納される。
【００７３】
（ニ）ステップ２０４において、回路ブロック処理部１６によって位置情報記憶領域１１１に格納された素子モデルを選択する回路素子と発熱量を計算した回路ブロックとの距離と電気的な接続情報、及び回路ブロック記憶領域１１６に格納された回路ブロックの発熱量を読み出し、半導体集積回路が配置される半導体基板の熱抵抗や素子モデルを選択する回路素子と発熱量を計算した回路ブロックを接続する配線の熱伝導率等を考慮して素子モデルを選択する回路素子の温度変動量が計算される。回路素子の温度変動量は変動量記憶領域１１７に格納される。
【００７４】
上記の説明では、素子モデルを選択する回路素子に影響を与える回路ブロックが１つの場合を説明した。回路素子が複数の回路ブロックの発熱量の影響を受ける場合は、一般には、それぞれの回路ブロックの発熱量の影響による温度変動の総和が回路素子の温度変動量となる。
【００７５】
次に、図１０に示した回路シミュレーション装置によって、回路ブロックの発熱の影響を考慮して回路素子の素子モデルを選択し、回路シミュレーションを行う方法の例を、図１２のフローチャートを用いて説明する。
【００７６】
（イ）図１２のステップＳ３０２において、図１０に示したモデル選択部１３によって素子モデルを選択する回路素子が選ばれる。
【００７７】
（ロ）ステップＳ３０３において、回路ブロック処理部１６によって発熱量を計算する回路ブロックが選択される。
【００７８】
（ハ）次に、ステップＳ３０４において、図１１において説明した方法によって、選択された回路ブロックの発熱の影響による回路素子の温度変動量が変動量記憶領域１１７に格納される。
【００７９】
（ニ）次に、ステップＳ３０５において、すべての回路ブロックの発熱の影響による回路素子の温度変動量が計算されたかどうか判断する。計算されていない回路ブロックがある場合は、ステップＳ３０３に戻り、次の回路ブロックが選択される。すべての回路ブロックの発熱の影響による回路素子の温度変動量の計算が終了していれば、ステップＳ３０６に進む。
【００８０】
（ホ）次に、ステップＳ３０６において、モデル選択部１３によって変動量記憶領域１１７に格納された温度変動量を読み出し、温度変動量に基づいて回路素子に素子モデルを選択する。選択された素子モデルは、それぞれの回路素子の情報としてモデル記憶領域１１３に格納される。
【００８１】
（ヘ）次に、ステップＳ３０７において、すべての回路素子に素子モデルが選択されたかどうか判断する。選択されていない回路素子がある場合は、ステップＳ３０２に戻り、次の回路素子の素子モデルの選択を行う。すべての回路素子の素子モデルの選択が終了していれば、ステップＳ３０８に進む。
【００８２】
本発明の第２の実施の形態に係るシミュレーション装置によれば、回路配置の情報と電気的な接続情報を解析することにより、回路ブロックの発熱の影響を考慮して回路素子の素子モデルを選択することができる。そのため、精度の高い回路シミュレーションを実行することができる。他は、第１の実施の形態に係る回路シミュレーション装置と基本的に同様であるので、重複した説明を省略する。
【００８３】
上記の説明では、回路ブロックの発熱の影響による回路素子の温度変動を考慮した回路シミュレーション方法について説明したが、例えばトランジスタや論理ゲート等の発熱の影響を考慮した回路シミュレーション方法を実行することも可能である。
【００８４】
図１２に示したフローチャートでは、先ずステップＳ３０２において素子モデルを選択する回路素子を選び、次にステップＳ３０４において回路ブロックの発熱量を計算して、回路素子の温度変動量を計算する例を示した。複数の回路ブロックがある場合には、先にすべての回路ブロックの発熱量を計算し、その後にそれぞれの回路素子の温度変動量を計算して素子モデルを選択することもできる。図１０に示した回路シミュレーション装置を用いた、回路ブロックの発熱の影響による回路素子の温度変動を考慮した他の回路シミュレーション方法を、図１０と図１３を用いて説明する。
【００８５】
（イ）ステップＳ４０２において、回路ブロック処理部１６によって発熱量を計算する回路ブロックが選択される。
【００８６】
（ロ）次に、ステップＳ４０３において、図１１において説明した方法により回路ブロックの発熱量が計算される。計算された発熱量は回路ブロック記憶領域１１６に格納される。
【００８７】
（ハ）次に、ステップＳ４０４において、すべての回路ブロックの発熱量が計算されたかどうか判断する。計算されていない回路ブロックがある場合は、ステップＳ４０２に戻り、次の回路ブロックが選択される。すべての回路ブロックの発熱量の計算が終了していれば、ステップＳ４０５に進む。
【００８８】
（ニ）ステップＳ４０５において、モデル選択部１３によって素子モデルを選択する回路素子が選ばれる。
【００８９】
（ホ）次に、ステップＳ４０６において、回路ブロック処理部１６によって回路素子への発熱の影響を計算する回路ブロックが選択される。
【００９０】
（ヘ）ステップＳ４０７において、図１１において説明した方法により、選択された回路ブロックと回路素子との距離が計算される。計算された距離は位置情報記憶領域１１１に格納される。
【００９１】
（ト）次にステップＳ４０８において、図１１において説明した方法により回路ブロックの発熱の影響による回路素子の温度変動量が計算される。計算された温度変動量は変動量記憶領域１１７に格納される。
【００９２】
（チ）次に、ステップＳ４０９において、すべての回路ブロックの発熱の影響による回路素子の温度変動量が計算されたかどうか判断する。計算されていない回路ブロックがある場合は、ステップＳ４０６に戻り、次の回路ブロックが選択される。すべての回路ブロックの発熱の影響による回路素子の温度変動の計算が終了していれば、ステップＳ４１０に進む。
【００９３】
（リ）ステップＳ４１０において、モデル選択部１３によって変動量記憶領域１１７に格納された温度変動量を読み出し、回路素子の素子モデルを選択する。選択された素子モデルは、それぞれの回路素子の情報としてモデル記憶領域１１３に格納される。
【００９４】
（ヌ）次に、ステップＳ４１１において、すべての回路素子に素子モデルが選択されたかどうか判断する。素子モデルが選択されていない回路素子がある場合は、ステップＳ４０５に戻り、次の回路素子の素子モデルの選択を行う。すべての回路素子の素子モデルの選択が終了していれば、ステップＳ４１２に進む。
【００９５】
図１３に示した方法によっても、回路ブロックの発熱の影響を考慮して回路素子の素子モデルを選択した回路シミュレーションを実行することができる。他は、図１２に示した回路シミュレーション方法と基本的に同様であるので、重複した説明を省略する。
【００９６】
次に、ノイズの影響による特性の変化を考慮して回路素子の素子モデルを選択する方法の例を、図１０と図１４のフローチャートを用いて説明する。
【００９７】
（イ）先ず、図１４のステップＳ５０１において、図１０に示した入力装置５０を介して配置情報記憶領域１０１に格納された回路シミュレーションを行う回路素子の配置情報を読み出し、配置情報処理部１１によって回路素子の配置が解析される。配置情報処理部１１によって素子モデルを選択する回路素子と発生するノイズ量を計算する回路ブロックの距離が計算される。計算された距離の情報は、位置情報記憶領域１１１に格納される。
【００９８】
（ロ）次に、ステップＳ５０２において、入力装置５０を介して接続情報記憶領域１０２に格納された回路シミュレーションを行う回路の電気的な接続情報を読み出し、回路動作処理部１２によって回路動作が解析される。回路動作処理部１２によって発生するノイズ量を計算する回路ブロックに含まれる回路素子の動作が解析され、それぞれの回路素子について、導通するかどうかの動作情報が付加されて動作情報記憶領域１１２に格納される。
【００９９】
（ハ）ステップ５０３において、回路ブロック処理部１６によって動作情報記憶領域１１２に格納された回路ブロックの回路素子の動作情報と接続情報記憶領域１０２に格納された回路の電気的な接続情報とを読み出し、回路ブロックの同時スイッチングによって変化する電流値の総和が計算され、発生するノイズ量が見積もられる。計算された回路ブロックに発生するノイズ量は回路ブロック記憶領域１１６に格納される。
【０１００】
（ニ）ステップ５０４において、回路ブロック処理部１６によって位置情報記憶領域１１１に格納された素子モデルを選択する回路素子とノイズ量を計算した回路ブロックとの距離、及び回路ブロック記憶領域１１６に格納された回路ブロックのノイズ量を読み出し、半導体集積回路が配置される半導体基板の誘電率等を考慮して、素子モデルを選択する回路素子に影響を及ぼすノイズ量が計算される。ノイズ量は変動量記憶領域１１７に格納される。
【０１０１】
上記の説明では、素子モデルを選択する回路素子に影響を与える回路ブロックが１つの場合を説明した。回路素子が複数の回路ブロックに発生するノイズの影響を受ける場合は、一般には、それぞれの回路ブロックに発生するノイズ量の総和が回路素子に影響を与えるノイズ量となる。
【０１０２】
次に、図１０に示した回路シミュレーション装置によって、ノイズの影響を考慮して回路素子の素子モデルを選択し、回路シミュレーションを行う方法の例を、図１５のフローチャートを用いて説明する。
【０１０３】
（イ）ステップＳ６０２において、回路ブロック処理部１６によってノイズ量を計算する回路ブロックが選択される。
【０１０４】
（ロ）次に、ステップＳ６０３において、図１４において説明した方法により回路ブロックに発生するノイズ量が回路ブロック記憶領域１１６に格納される。
【０１０５】
（ハ）次に、ステップＳ６０４において、すべての回路ブロックのノイズ量が計算されたかどうか判断する。計算されていない回路ブロックがある場合は、ステップＳ６０２に戻り、次の回路ブロックが選択される。すべての回路ブロックのノイズ量の計算が終了していれば、ステップＳ６０５に進む。
【０１０６】
（ニ）ステップＳ６０５において、モデル選択部１３によって素子モデルを選択する回路素子が選ばれる。
【０１０７】
（ホ）次に、ステップＳ６０６において、回路ブロック処理部１６によって回路素子へのノイズの影響を計算する回路ブロックが選択される。
【０１０８】
（ヘ）ステップＳ６０７において、図１４において説明した方法によりミュレーション・モデルを選択する回路素子と回路ブロックの距離が位置情報記憶領域１１１に格納される。
【０１０９】
（ト）次にステップＳ６０８において、図１４において説明した方法により、回路ブロック処理部１６によって回路ブロック記憶領域１１６に格納されたノイズ量と位置情報記憶領域１１１に格納された回路ブロックと回路素子との距離に基づいて計算された、ミュレーション・モデルを選択する回路素子に影響を及ぼすノイズ量が変動量記憶領域１１７に格納される。
【０１１０】
（チ）次に、ステップＳ６０９において、すべての回路ブロックに発生するノイズによる回路素子に影響を及ぼすノイズ量が計算されたかどうか判断する。計算されていない回路ブロックがある場合は、ステップＳ６０６に戻り、次の回路ブロックが選択される。すべての回路ブロックに発生するノイズによる回路素子に影響を及ぼすノイズ量の計算が終了していれば、ステップＳ６１０に進む。
【０１１１】
（リ）ステップＳ６１０において、モデル選択部１３によって変動量記憶領域１１７に格納されたノイズ量を読み出し、回路素子の素子モデルが選択される。選択された素子モデルは、それぞれの回路素子の情報としてモデル記憶領域１１３に格納される。
【０１１２】
（ル）次に、ステップＳ６１１において、すべての回路素子に素子モデルが選択されたかどうか判断する。素子モデルが選択されていない回路素子がある場合は、ステップＳ６０５に戻り、次の回路素子の素子モデルの選択を行う。すべての回路素子の素子モデルの選択が終了していれば、ステップＳ６１２に進む。
【０１１３】
図１５に示した方法によれば、回路配置の情報と電気的な接続情報を解析することにより、回路ブロックで発生するノイズの影響を考慮して回路素子の素子モデルを選択することができる。そのため、隣接する回路のノイズ量を考慮した精度の高い回路シミュレーションを実行することができる。他は、図１２に示した回路シミュレーション方法と基本的に同様であるので、重複した説明を省略する。
【０１１４】
一般的な半導体集積回路装置の回路設計においては、所望の回路特性を実現するための論理回路の設計が行われ、論理回路図に基づいてＣＡＤ装置等を用いて回路配置が行われる。本発明の第１及び第２の実施の形態に係る回路シミュレーション装置は、回路配置の情報に含まれる回路素子の配情報置と論理回路の情報に含まれる電気的な接続情報とを用いて、解析時間が短く、且つ高精度の回路シミュレーションを実行可能である。回路シミュレーションによる解析の結果、不具合が見つかれば半導体集積回路装置を製造する前に論理設計或いは回路配置の修正を行うことができる。修正後に半導体集積回路装置を製造することにより、所望の回路特性を得ることができる。回路シミュレーションの精度が不十分な場合には、製造された半導体集積回路装置は所望の回路特性を満足せず、半導体集積回路装置の製造後に論理設計或いは回路配置からやり直さなくてはならない。したがって、本発明の第１及び第２の実施の形態に係る回路シミュレーション装置によって高精度の回路シミュレーションを実行することにより、半導体集積回路装置の開発時間を短縮し、開発コストを下げることができる。
【０１１５】
（その他の実施の形態）
上記のように、本発明は第１及び第２の実施の形態によって記載したが、この開示の一部をなす論述及び図面はこの発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施の形態、実施例及び運用技術が明らかとなろう。
【０１１６】
既に述べた第１の実施の形態の説明においては、同時スイッチングでの寄生抵抗の影響を考慮した場合について説明したが、寄生インダクタンスや寄生容量を考慮した素子モデルを作成して精度の高い回路シミュレーション装置を実現することができる。
【０１１７】
このように、本発明はここでは記載していない様々な実施の形態等を含むことは勿論である。したがって、本発明の技術的範囲は上記の説明から妥当な特許請求の範囲に係る発明特定事項によってのみ定められるものである。
【図面の簡単な説明】
【０１１８】
【図１】本発明の第１の実施の形態に係る回路シミュレーション装置を示す模式的な構成図である。
【図２】本発明の第１の実施の形態に係る回路シミュレーション装置による回路シミュレーション方法を説明するための回路図である。
【図３】本発明の第１の実施の形態に係る回路シミュレーション装置に含まれる回路素子の素子モデルの具体例である。
【図４】本発明の第１の実施の形態に係る回路シミュレーション装置に含まれる他の回路素子の素子モデルの具体例である。
【図５】本発明の第１の実施の形態に係る回路シミュレーション装置に含まれる回路素子の素子モデルを選択する組み合わせを示す表である。
【図６】本発明の第１の実施の形態に係る回路シミュレーション装置に含まれる回路素子の素子モデルと寄生抵抗の素子モデルの具体例である。
【図７】本発明の第１の実施の形態に係る回路シミュレーション装置に含まれる他の回路素子の素子モデルと寄生抵抗の素子モデルの具体例である。
【図８】本発明の第１の実施の形態に係る回路シミュレーション装置に含まれる回路素子の素子モデルを用いた被解析回路の例である。
【図９】本発明の第１の実施の形態に係る回路シミュレーション装置による同時スイッチングを考慮した回路シミュレーション方法を説明するフローチャートである。
【図１０】本発明の第２の実施の形態に係る回路シミュレーション装置を示す模式的な構成図である。
【図１１】本発明の第２の実施の形態に係る回路シミュレーション装置による、回路ブロックの発熱による回路素子の温度変動量の計算方法を説明するためのフローチャートである。
【図１２】本発明の第２の実施の形態に係る回路シミュレーション装置による回路ブロックの発熱を考慮した回路シミュレーション方法を説明するフローチャートである。
【図１３】本発明の第２の実施の形態に係る回路シミュレーション装置による回路ブロックの発熱を考慮した他の回路シミュレーション方法を説明するフローチャートである。
【図１４】本発明の第２の実施の形態に係る回路シミュレーション装置による、回路ブロックのノイズの影響による回路素子の温度変動量の計算方法を説明するためのフローチャートである。
【図１５】本発明の第２の実施の形態に係る回路シミュレーション装置による回路ブロックに発生するノイズを考慮した回路シミュレーション方法を説明するフローチャートである。
【符号の説明】
【０１１９】
１０…ＣＰＵ
１１…配置情報処理部
１２…回路動作処理部
１３…モデル選択部
１４…回路作成部
１５…解析処理部
１６…回路ブロック処理部
２０…プログラム記憶装置
２１…プログラム記憶部
５０…入力装置
６０…出力装置
１００…データ記憶装置
１０１…配置情報記憶領域
１０２…接続情報記憶領域
１０３…解析条件記憶領域
１１０…ライブラリ領域
１１１…位置情報記憶領域
１１２…動作情報記憶領域
１１３…モデル記憶領域
１１４…回路記憶領域
１１５…解析結果記憶領域
１１６…回路ブロック記憶領域
１１７…変動量記憶領域
Ｑ１、Ｑ２…回路素子
Ｒｓ…寄生抵抗
Ｖｄ…ドレイン電源配線
Ｖｓ…ソース電源配線
１ａ〜１ｃ、２ａ〜２ｃ…回路素子の素子モデル
Ｑ、Ｑａ、Ｑｂ…回路素子の素子モデル
Rsa、Rsb、Rsc、Ｒａ…寄生抵抗の素子モデル
【図１】
2005250874.tif 000003
【図２】
2005250874.tif 000004
【図３】
2005250874.tif 000005
【図４】
2005250874.tif 000006
【図５】
2005250874.tif 000007
【図６】
2005250874.tif 000008
【図７】
2005250874.tif 000009
【図８】
2005250874.tif 000010
【図９】
2005250874.tif 000011
【図１０】
2005250874.tif 000012
【図１１】
2005250874.tif 000013
【図１２】
2005250874.tif 000014
【図１３】
2005250874.tif 000015
【図１４】
2005250874.tif 000016
【図１５】
2005250874.tif 000017