(57)【要約】【課題】様々な要因により発生するばらつき特性を、より高い自由度で反映させることができる集積回路の回路動作シミュレーション方法を提供する。【解決手段】集積回路を構成する回路素子のシンボル又はネットリストの少なくとも一方に、シミュレーションを行う際に考慮する、回路動作に影響を与えるモデルパラメータを複数の種類から選択するための識別子VariatioTypを付与する。複数の種類のモデルパラメータには、レイアウトに依存して回路動作に影響を与える「大域ばらつき」,「レイアウト依存ばらつき」や、レイアウトに依存せず回路動作に影響を与える「局所ばらつき」を含む。そして、識別子VariatioTypに応じて決定されるモデルパラメータを採用してシミュレーションを行う（Ｓ１６〜Ｓ２５）。【選択図】図１
2015049723.tif 000002
【特許請求の範囲】
【請求項１】
集積回路について回路動作のシミュレーションを行う方法であって、
前記集積回路を構成する回路素子のシンボル又はネットリストの少なくとも一方に、前記シミュレーションを行う際に考慮するモデルパラメータを複数の種類から選択するための識別子を付与し、
前記複数種類のモデルパラメータには、少なくともレイアウトに依存して回路動作に影響を与えるものと、レイアウトに依存せず回路動作に影響を与えるものとが含まれており、
前記識別子に応じて決定されるモデルパラメータを採用して前記シミュレーションを行うことを特徴とする集積回路の回路動作シミュレーション方法。
【請求項２】
前記モデルパラメータの１つは、前記回路素子が位置するレイアウト上の絶対座標値に依存して変化する特性を反映させるものであり、
前記モデルパラメータの他の１つは、複数の回路素子が位置しているレイアウト上の相対座標値に依存して変化する特性を反映させるものであることを特徴とする請求項１記載の集積回路の回路動作シミュレーション方法。
【請求項３】
前記モデルパラメータの１つは、各回路素子を形成する際に、半導体を構成する不純物濃度のバラツキに応じてランダムに変化する特性を反映させるものであることを特徴とする請求項２記載の集積回路の回路動作シミュレーション方法。
【請求項４】
前記識別子は、前記絶対座標値に依存して変化する特性と、前記相対座標値に依存して変化する特性と、前記ランダムに変化する特性とについて、何れか２つ以上の組み合わせを選択可能に設定されていることを特徴とする請求項３記載の集積回路の回路動作シミュレーション方法。
【請求項５】
１種類の回路素子が２並列以上接続される構成について、前記回路素子のシンボルに、並列接続の形態に応じた複数の回路素子の配置パターンを指定するためのパターン指定子を設定し、
前記パターン指定子に応じて決定されるモデルパラメータを採用して前記シミュレーションを行うことを特徴とする請求項１から４の何れか一項に記載の集積回路の回路動作シミュレーション方法。
【請求項６】
前記集積回路の一部をなし、１つ以上の回路素子を含む回路ブロックについて、前記回路ブロックのサイズを指定するサイズ指定子を付与し、
前記回路動作のシミュレーションを行う前に、前記回路ブロックのサイズと、前記回路ブロックに含まれている回路素子の配置とに基づいて、設計ルールに違反がないかをチェックすることを特徴とする請求項１から５の何れか一項に記載の集積回路の回路動作シミュレーション方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、集積回路について回路動作のシミュレーションを行う方法に関する。
【背景技術】
【０００２】
レイアウト設計が完了した集積回路の回路動作をシミュレーションするシミュレータについては、従来様々なものが提示されている。例えば特許文献１には、各回路素子のシンボルにレイアウト上の座標である位置情報を設定し、ＳＰＩＣＥモデルのパラメータに、前記位置情報に対応する変数を設定する。そして、前記位置情報と前記モデルパラメータとを用いて集積回路の回路動作をシミュレーションする。これにより、素子の配置位置に応じた素子特性のバラツキを、シミュレーションに反映させている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−１３４７７５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、集積回路を構成する各素子の特性は、特許文献１のようにレイアウト上の位置に依存するものと、レイアウトに依存しないランダムなものとがあり、特許文献１では後者の特性については考慮されていない。
本発明は上記事情に鑑みてなされたものであり、その目的は、様々な要因により発生するばらつき特性を、より高い自由度で反映させることができる集積回路の回路動作シミュレーション方法を提供することにある。
【課題を解決するための手段】
【０００５】
請求項１記載の集積回路の回路動作シミュレーション方法によれば、集積回路を構成する回路素子のシンボル又はネットリストの少なくとも一方に、シミュレーションを行う際に考慮するモデルパラメータを、複数の種類から選択するための識別子を付与する。この場合、複数種類のモデルパラメータには、少なくともレイアウトに依存して回路動作に影響を与えるものと、レイアウトに依存せず回路動作に影響を与えるものとが含まれている。そして、前記識別子に応じて決定されるモデルパラメータを採用してシミュレーションを行う。
【０００６】
すなわち、複数種類のモデルパラメータを選択するための識別子を、回路素子のシンボル又はネットリストの少なくとも一方に付与しておけば、レイアウトに依然せず、例えば一定の比率でランダムに発生するような特性についても個別に反映させることが可能になる。したがって、従来よりも柔軟に様々な特性を反映させて、シミュレーションの精度を向上させることができる。
【０００７】
請求項２記載の集積回路の回路動作シミュレーション方法によれば、モデルパラメータの１つを、回路素子が位置するレイアウト上の絶対座標値に依存して変化する特性を反映させるものとし、他の１つは、複数の回路素子が位置しているレイアウト上の相対座標値に依存して変化する特性を反映させるものとする。したがって、絶対座標値，相対座標値のそれぞれに依存する特性を個別に反映させることができる。
【０００８】
請求項３記載の集積回路の回路動作シミュレーション方法によれば、モデルパラメータの１つを、各回路素子を形成する際に、半導体を構成する不純物濃度のバラツキに応じてランダムに変化する特性を反映させるものとする。すなわち、不純物濃度につき想定されるバラツキの割合に基づいて、各回路素子やネットリストの各所に適宜分散設定することで、特性を妥当に反映させることができる。
【図面の簡単な説明】
【０００９】
【図１】一実施形態であり、回路シミュレーションの実行手順を示すフローチャート
【図２】簡易ＤＲＣの実行手順を示すフローチャート
【図３】回路シミュレーション装置の構成を示す機能ブロック図
【図４】回路素子のシンボルに、サイズ指定子，パターン指定子，識別子を用いて指定を行った状態を示す図
【図５】パターン指定子により指定される回路素子の配置バリエーションを示す図
【図６】特性ばらつきの種類を示す図
【図７】大域ばらつきと局所ばらつきとを説明する図
【図８】レイアウト依存ばらつきを説明する図
【図９】ＳＰＩＣＥモデルの一例を示す図
【図１０】レイアウトに依存して、ＭＯＳＦＥＴの酸化膜厚がばらつく状態を説明する図
【発明を実施するための形態】
【００１０】
以下、一実施形態について図面を参照して説明する。図３に示すように、回路シミュレーション装置１は、回路情報部２，レイアウトデータ３，ＳＰＩＣＥ（Simulation Program with Integrated Circuit Emphasis）モデル４，シンボルライブラリ５，解析条件設定部６，制御部７及び結果出力部８などを有している。この回路シミュレーション装置１は、例えば集積回路の設計を行うＣＡＤ（Computer Aided Design）装置などに組み込まれているものである。
【００１１】
回路情報部２は、ユーザにより所定の指示情報が入力されると、その指示情報に基づきシンボルライブラリ５に記憶されているシンボルを用いてスケマティックデータを生成する。例えば素子を指定する指示情報が入力されると、指定された素子のシンボルをシンボルライブラリ５から抽出する。また、素子の座標値を指定する指示情報が入力されると、指定された座標値（位置情報）を素子のシンボルに対応付けることで、シンボルのプロパティに素子が配置される位置の情報（座標）を対応付ける。この処理については、特許文献１と同様である。スケマティックデータ生成部１２は、生成したスケマティックデータや、プロパティとして素子の座標値を登録したシンボルを、ネットリスト作成部１８に入力する。
【００１２】
ＳＰＩＣＥモデル４は、メモリに記憶され、ＳＰＩＣＥシミュレーションプログラムで用いられるモデルであり、ＳＰＩＣＥパラメータ（モデルパラメータ）などを含んでいる。本実施形態のモデルパラメータは、座標値を変数としたパラメータ（位置情報に対応する変数）を含んで構成されており、回路シミュレーション装置１は、この座標値を変数としたパラメータと座標値とを用いて集積回路の回路シミュレーションを行う。
【００１３】
シンボルライブラリ５は、解析対象となる素子のシンボルがメモリに記憶されたものである。前記シンボルは、集積回路の回路設計時に用いられる情報であり、回路図上に配置される記号や素子に関する種々の情報（プロパティ（属性）、モデル名、サイズ、プロセス情報など）を含んでいる。解析条件設定部６は、入力された指示情報に基づいて、素子の座標値を用いた回路シミュレーション条件を設定する。
【００１４】
制御部７は、回路シミュレーション装置１の全体を統括的に制御するもので、マイクロコンピュータなどで構成され、回路動作のシミュレーションを実行する。結果出力部８は、上記シミュレーション結果を表示または外部出力する。尚、回路シミュレーションプログラムは、例えば図示しないハードディスク等の記憶装置に記憶されており、そこから制御部７内部のメモリにロードされて実行される。
【００１５】
次に、本実施形態の作用について図４から図１０を参照して説明する。先ず、レイアウト設計された集積回路において、回路動作に影響を及ぼす各種のバラツキについて説明する。図６に示すように、大分類として「システマティックばらつき」と「ランダムばらつき」とがある。「システマティックばらつき」には、小分類として「大域ばらつき」と「レイアウト依存ばらつき」とがある。また、「ランダムばらつき」には、小分類（具体的名称）として「局所ばらつき」がある。
【００１６】
図７（ａ）に示すように、例えば２つの素子（例えばＭＯＳＦＥＴ）Ａ，Ｂがｘ方向に並んで配置されているとする。このとき、各素子のゲート閾値電圧Ｖthの特性は、例えば図７（ｂ）に示すように、各素子が形成されているｘ軸方向の位置に応じてばらつきを示す。このバラツキは、図７（ｃ）に示す局所ばらつきと、図７（ｄ）に示す大域ばらつきとが合成されたものとなっている。
【００１７】
一方、局所ばらつきとは、集積回路を形成するために拡散させる不純物の濃度がランダムにばらつくことに起因するもので、例えばモンテカルロ解析などにより反映させることができる。また、大域ばらつきはベースとなるウエハ（半導体チップ）の製造工程により、一定の傾きが付与されるようなばらつきである。したがって、大域ばらつきも「レイアウトに依存して回路動作に影響を与える」モデルパラメータの一種である。
また、レイアウト依存ばらつきは、図８に示すように、ＭＯＳＦＥＴのドレイン，ソース領域を形成するために行う不純物のインプランテーションの方向が斜めに傾いたりすることで、拡散の非対称性が発生し、隣り合う素子間で特性に差が出るものである。
【００１８】
本実施形態では、例えば図４に示すように、各回路素子のシンボルにパターン指定子LayoutVarと、識別子VariatioTypを用いた指定を可能とする。これらにより、それぞれ以下の事項を指定する。
LayoutVar：素子のレイアウトパターンを指定
VariatioTyp：特性ばらつきの要因を指定
図４では、２つのＭＯＳＦＥＴ，ＭＯＳ＿Ａ，ＭＯＳ＿Ｂが配置されているが、素子の並列数を示すパラメータＭがそれぞれ「２」に設定されている。この場合、ＭＯＳ＿Ａ，ＭＯＳ＿Ｂそれぞれ２つの素子のレイアウトパターンとしては、図５（ａ）〜（ｃ）に示す３つのバリエーションがあり、これらをそれぞれパターン指定子LayoutVar＝１〜３で指定する。
【００１９】
また、識別子VariatioTypとしては、例えば以下のように要因を指定する。
VariatioTyp：
１：大域ばらつき
２：レイアウト依存ばらつき
３：局所ばらつき
４：大域＋レイアウト依存（１＋２）
５：大域＋局所（１＋３）
６：レイアウト依存＋局所（２＋３）
７：大域＋レイアウト依存＋局所（１＋２＋３）
また、図４では、２つのＭＯＳ＿Ａ，ＭＯＳ＿Ｂが配置されている回路ブロックについて、そのサイズをsize＝１ｍｍ２として設定している。sizeはサイズ指定子である。
【００２０】
図９に示すように、本実施形態のＳＰＩＣＥモデルには、例えば、素子の酸化膜厚＋ｔｏｘの計算に、大域ばらつき，局所ばらつき，レイアウト依存ばらつきを反映させるモデルパラメータが存在する。
＋ｄ＿ｔｏｘ＿ｘｙ：大域ばらつき
＋ｄ＿ｔｏｘ＿ｒａｎｄ：局所ばらつき
＋ｄ＿ｔｏｘ＿ｌａｙｏｕｔ：レイアウト依存ばらつき
そして、これら３つのモデルパラメータには、最後にそれぞれ＊Ａ，＊Ｂ，＊Ｃの項があるが、これらは、識別子VariatioTypの設定に応じて各モデルパラメータを有効／無効にするかを設定する係数である。すなわち、以下のようにＡ，Ｂ，Ｃの値が設定される。
VariatioTyp：
１：大域ばらつき（Ａ＝１，Ｂ＝０，Ｃ＝０）
２：レイアウト依存ばらつき（Ａ＝０，Ｂ＝１，Ｃ＝０）
３：局所ばらつき（Ａ＝０，Ｂ＝０，Ｃ＝１）
４：大域＋レイアウト依存（Ａ＝１，Ｂ＝１，Ｃ＝０）
５：大域＋局所（Ａ＝１，Ｂ＝０，Ｃ＝１）
６：レイアウト依存＋局所（Ａ＝０，Ｂ＝１，Ｃ＝１）
７：大域＋レイアウト依存＋局所（Ａ＝１，Ｂ＝１，Ｃ＝１）
例えば図１０に示すように、４個のＭＯＳＦＥＴが図中のｘ方向に並ぶようにして形成されると、中央部の酸化膜は比較的狙い通りの厚さになるが、両端側の酸化膜は削れて少し薄くなる傾向を示す。このようなレイアウト依存ばらつきが、酸化膜の形成に影響を及ぼすことになる。
【００２１】
次に、本実施形態の作用について説明する。先ず、図２に従って簡易ＤＲＣ（Design Rule Check）を行う。予め、シンボルライブラリ５に素子のシンボルを登録し、レイアウトデータ３，ＳＰＩＣＥモデル４を登録しておく（Ｓ１）。次に、シンボルライブラリ５内のシンボルを参照してスケマティックデータを生成する（Ｓ２）。このとき、素子を指定する指示情報が入力されると、指定された素子のシンボルをシンボルライブラリ５から抽出する。
【００２２】
次に、回路ブロックのサイズが指定されているかを判断し（Ｓ３）、指定されていれば（ＹＥＳ）、回路図中の素子サイズの合計が、指定された回路ブロックのサイズ内に収まっているか否かを判断する（Ｓ４）。指定されたサイズ内に収まっていれば（ＹＥＳ）、ルールチェックをパスしたことを示すＰａｓｓメッセージを出力し（Ｓ５）、前記サイズ内に収まっていなければ（ＮＯ）警告メッセージを出力する（Ｓ６）。これらのメッセージは、例えばディスプレイに文字として出力する。
【００２３】
次に、回路図中の素子が使用するレイヤーが、密度制限以内か否かを判断する（Ｓ７）。密度制限を満たしていれば（ＹＥＳ）Ｐａｓｓメッセージを出力し（Ｓ８）、密度制限を満たしていなければ（ＮＯ）警告メッセージを出力する（Ｓ９）。例えば、ポリシリコンゲートの被覆率（カバレッジ）が回路ブロックサイズの５％〜９０％であればＯＫであり、それ以外はＮＧと判断する。ポリシリコンゲートの面積は、図４に示すパラメータＬ，Ｗから決まる。図４に示すように回路ブロック内に４つの素子がある場合は、各素子の面積の総和となる。
【００２４】
ステップＳ８で出力するＰａｓｓメッセージとしては、例えば「ポリのカバレッジは２０％です。カバレッジの基準（５％〜９０％）を満たしています」などを出力する。また、ステップＳ９で出力する警告メッセージとしては、例えば「ポリのカバレッジは３％です。カバレッジの基準（５％〜９０％）の範囲外です」などを出力する。
【００２５】
図２に示す簡易ＤＲＣを終了すると、次に図１に示す回路シミュレーションを実行する。ステップＳ１１，Ｓ１２は、図２に示すステップＳ１，Ｓ２と同様である。そして前述したように、素子の座標値を指定する指示情報が入力されると（Ｓ１３：ＹＥＳ）、指定された座標値を素子のシンボルに対応付ける（ステップＳ１４）。一方、素子を指定する指示情報や、素子の座標値を指定する指示情報が入力されない場合（Ｓ１３：ＮＯ）、レイアウトデータ３を用いて素子認識を行う。具体的には、レイアウトデータから素子や配線に関する情報（回路素子や寄生素子）を抽出して素子抽出図面を生成し、素子抽出図面に各素子の座標値を対応付ける（Ｓ１５）。
【００２６】
次に、素子レイアウト制約を指定する情報，すなわちパターン指定子LayoutVarが入力されたか否かを判断し（Ｓ１６）、入力されていれば（ＹＥＳ）指定されたレイアウト制約を対応する素子のシンボルに対応付ける（Ｓ１７）。パターン指定子LayoutVarが入力されていなければ（Ｓ１６：ＮＯ）、回路シミュレーション装置１のＧＵＩ（Graphic User Interface）によりその時点でレイアウト制約を生成する（Ｓ１８）。ステップＳ１７，Ｓ１８を実行すると、レイアウト制約ごとにシンボルをグループ化する（Ｓ１９）。
【００２７】
次に、特性ばらつきを指定する指定情報，すなわちパターン指定子VariatioTypが入力されたか否かを判断し（Ｓ２０）、入力されていれば（ＹＥＳ）、ステップＳ１９でグループ化されたレイアウト制約グループごとに、指定されたばらつき情報をシンボルに対応付ける（Ｓ２１）。一方、ばらつきの指定情報が入力されていなければ（ＮＯ）、予め設定されているデフォルト値をばらつき情報としてシンボルに対応付ける（Ｓ２２）。
【００２８】
ステップＳ２１，Ｓ２２を実行した後、全ての素子についてステップＳ１３〜Ｓ２２の処理を完了すると（Ｓ２３）、スケマティックデータとＳＰＩＣＥモデル４とを参照し、座標値／レイアウト制約グループ／特性ばらつき情報が対応付けられたシンボル，又は素子抽出画面を用いてネットリストを作成する。（Ｓ２４）。それから、作成したネットリストを用いて集積回路の回路シミュレーションを行う（Ｓ２５）。結果出力部８は、制御部７による回路シミュレーション結果などを表示する。また、ステップＳ２３において「ＮＯ」と判断した場合は、エラー出力を行い（Ｓ２６）処理を終了する。
【００２９】
以上のように本実施形態によれば、集積回路を構成する回路素子のシンボルに、回路動作のシミュレーションを行う際に考慮するモデルパラメータを複数の種類から選択するための識別子VariatioTypを付与する。この場合、複数の種類のモデルパラメータには、レイアウトに依存して回路動作に影響を与える「大域ばらつき」,「レイアウト依存ばらつき」や、レイアウトに依存せず回路動作に影響を与える「局所ばらつき」を含む。そして、識別子VariatioTypに応じて決定されるモデルパラメータを採用してシミュレーションを行う。したがって、レイアウトに依存せず、例えば一定の比率でランダムに発生するような特性についても個別に反映させることが可能になり、従来よりも柔軟に様々な特性を反映させて、シミュレーションの精度を向上させることができる。
【００３０】
そして、モデルパラメータの１つを、回路素子が位置するレイアウト上の絶対座標値に依存して変化する特性を反映させるもの（大域ばらつき）とし、他の１つは、複数の回路素子が位置しているレイアウト上の相対座標値に依存して、変化する特性を反映させるもの（レイアウト依存ばらつき）とした。したがって、絶対座標値，相対座標値のそれぞれに依存する特性を、回路シミュレーションに個別に反映させることができる。
【００３１】
また、モデルパラメータの他の１つを、各回路素子を形成する際に、半導体を構成する不純物濃度のバラツキに応じてランダムに変化する特性（局所ばらつき）を反映させるものとした。これにより、不純物濃度につき想定されるばらつきの割合に基づいて、各回路素子やネットリストの各所に適宜分散設定することで、ランダムなばらつき特性を妥当に反映させることができる。
【００３２】
そして、識別子VariatioTypを、絶対座標値に依存して変化する特性と、相対座標値に依存して変化する特性と、ランダムに変化する特性とについて、何れか２つ以上の組み合わせを選択可能に設定した。したがって、各シンボルやネットリストの各部において、複数の特性が存在し得る場合に、それらを重畳的に指定して回路シミュレーションに反映させることができる。
【００３３】
また、１種類の回路素子が２並列以上接続される構成について、その回路素子のシンボルに、並列接続の形態に応じた複数の回路素子の配置パターンを指定するためのパターン指定子LayoutVarを設定し、パターン指定子LayoutVarに応じて決定されるモデルパラメータを採用して回路シミュレーションを行うようにした。したがって、回路素子の並列配置状態に応じて変化するバラツキ特性もシミュレーションに反映させることができる。
【００３４】
加えて、集積回路の一部をなし、１つ以上の回路素子を含む回路ブロックについて、回路ブロックのサイズを指定するサイズ指定子sizeを付与し、回路動作のシミュレーションを行う前に、回路ブロックのサイズと、その回路ブロックに含まれている回路素子の配置とに基づいて、設計ルールに違反がないかをチェックする簡易ＤＲＣを実行する。したがって、例えば、指定した回路ブロックのサイズを超えるような素子の配置があるか否かを、シミュレーションを実行する前にチェックすることができる。
【００３５】
そして、本実施形態によれば、識別子VariatioTyp，パターン指定子LayoutVar，サイズ指定子sizeによる指定を行えば、集積回路のレイアウト設計を行う前の段階でも簡易ＤＲＣや回路シミュレーションを実行することができる。したがって、レイアウト設計を開始する前にであっても様々な検証を行うことができる。
【００３６】
本発明は上記した、又は図面に記載した実施形態にのみ限定されるものではなく、以下のような変形又は拡張が可能である。
識別子をネットリストに付与しても良く、また、回路素子のシンボルとネットリストとの双方に付与しても良い。
素子の並列数（Ｍ）は、「３」以上であっても良く、その並列数に応じてパターン指定子LayoutVarにより指定するレイアウトパターンを増やせば良い。
素子はＭＯＳＦＥＴに限ることなく、バイポーラトランジスタ，抵抗やコンデンサ等でも良い。
簡易ＤＲＣは、必要に応じて実行すれば良い。
【符号の説明】
【００３７】
図面中、１は回路シミュレーション装置、２は回路情報部、３はレイアウトデータ、４はＳＰＩＣＥモデル、５はシンボルライブラリ、６は解析条件設定部、７は制御部、８は結果出力部を示す。
【図１】
2015049723.tif 000003
【図２】
2015049723.tif 000004
【図３】
2015049723.tif 000005
【図４】
2015049723.tif 000006
【図５】
2015049723.tif 000007
【図６】
2015049723.tif 000008
【図７】
2015049723.tif 000009
【図８】
2015049723.tif 000010
【図９】
2015049723.tif 000011
【図１０】
2015049723.tif 000012