(57)【特許請求の範囲】
【請求項１】
コンピュータによる半導体集積回路のシミュレーション方法であって、
セルを含んで構成された回路のレイアウトデータに基づいてレイアウト解析を行い、該レイアウト解析により得られ、第１のレイアウトを表す第１のレイアウトパラメータをメモリ部に格納する第１の解析手順と、
遅延時間、ノイズ特性、洩れ電流及び消費電力のうち少なくとも１つを含む前記セルの基本セル特性をネットリストから抽出し、前記第１のレイアウトとは異なる第２のレイアウトを表す第２のレイアウトパラメータで表現して前記メモリ部に格納する抽出手順と、
前記第１のレイアウトパラメータを前記メモリ部から読み出して、前記第２のレイアウトパラメータで表現された前記基本セル特性に代入してセル特性を求めて前記メモリ部に格納する取得手順と、
求められた前記セル特性を用いて前記回路の動作解析をする第２の解析手順とを前記コンピュータに実行させ、
前記第２のレイアウトパラメータが表す、前記基本セル特性の抽出に使用する前記第２のレイアウトは、前記第１の解析手順が前記レイアウト解析を行い前記第１のレイアウトに対して許容し得る範囲で前記第２のレイアウトパラメータの値を振って、前記基本セル特性を関数化又はテーブル化するためのレイアウトである
ことを特徴とする、シミュレーション方法。
【請求項２】
コンピュータに半導体集積回路のシミュレーションを行わせるプログラムであって、
セルを含んで構成された回路のレイアウトデータに基づいてレイアウト解析を行い、該レイアウト解析により得られ、第１のレイアウトを表す第１のレイアウトパラメータをメモリ部に格納する第１の解析手順と、
遅延時間、ノイズ特性、洩れ電流及び消費電力のうち少なくとも１つを含む前記セルの基本セル特性をネットリストから抽出し、前記第１のレイアウトとは異なる第２のレイアウトを表す第２のレイアウトパラメータで表現して前記メモリ部に格納する抽出手順と、
前記第１のレイアウトパラメータを前記メモリ部から読み出して、前記第２のレイアウトパラメータで表現された前記基本セル特性に代入してセル特性を求めて前記メモリ部に格納する取得手順と、
求められた前記セル特性を用いて前記回路の動作解析をする第２の解析手順とを前記コンピュータに実行させ、
前記第２のレイアウトパラメータが表す、前記基本セル特性の抽出に使用する前記第２のレイアウトは、前記第１の解析手順が前記レイアウト解析を行い前記第１のレイアウトに対して許容し得る範囲で前記第２のレイアウトパラメータの値を振って、前記基本セル特性を関数化又はテーブル化するためのレイアウトである
ことを特徴とする、プログラム。
【請求項３】
前記第１の解析手順は、前記セルを含むセルリストから前記セルを抽出し、抽出した前記セルのセル位置情報及びセル周辺情報を取得することを特徴とする、請求項２記載のプログラム。
【請求項４】
前記抽出手順は、前記セルの前記セル特性を前記第２のレイアウトパラメータに従ったネットリストから抽出し、当該ネットリストを用いてシミュレーションを行って前記基本セル特性を該第２のレイアウトパラメータで関数化することを特徴とする、請求項３記載のプログラム。
【請求項５】
前記取得手順は、前記第１のレイアウトパラメータを前記関数化された基本セル特性に代入して前記セル特性を求めることを特徴とする、請求項４記載のプログラム。
【請求項６】
前記抽出手順は、前記セルの前記セル特性を前記第２のレイアウトパラメータに従ったネットリストから抽出し、当該ネットリストを用いてシミュレーションを行った結果を該第２のレイアウトパラメータで該セルについてテーブル化して特性のテーブルを作成することを特徴とする、請求項３記載のプログラム。
【請求項７】
前記取得手順は、前記テーブルの特性を参照し、前記第１のレイアウトパラメータを参照したテーブルの特性に代入して前記セル特性を求めることを特徴とする、請求項６記載のプログラム。
【請求項８】
前記第１の解析手順は、解析対象のレイアウトデータで使用されているセルをセルリストから抽出し、抽出した前記セルのセル位置情報及びセル周辺情報を取得することを特徴とする、請求項２記載のプログラム。
【請求項９】
前記抽出手順は、前記セルの前記セル特性を前記第２のレイアウトパラメータに従ったネットリストから抽出し、当該ネットリストを用いてシミュレーションを行った結果を該第２のレイアウトパラメータで該セルについてテーブル化して特性のテーブルを作成することを特徴とする、請求項８記載のプログラム。
【請求項１０】
前記取得手順は、前記テーブルを参照し、前記第１のレイアウトパラメータを参照したテーブルの特性に代入して前記セル特性を求めることを特徴とする、請求項９記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、シミュレーション方法及びプログラムに係り、特に半導体集積回路のレイアウト解析等を行うシミュレーション方法、及びそのようなシミュレーションの手順をコンピュータに実行させるプログラムに関する。
【背景技術】
【０００２】
近年、半導体集積回路（LSI）の微細化が進むにつれて、セルやセルで構成された回路のレイアウトパターンやレイアウト位置、製造ばらつきが回路の性能に大きく影響するようになってきている。これに加え、回路のシミュレーションにおいてセルの特性等の回路特性を十分に表現できなくなってきている。例えば、同一形状のセル又は回路であっても、レイアウト位置やレイアウト形状によって回路特性が異なることがある。レイアウトパターンやレイアウト位置によって回路特性が異なる主たる原因としては、トランジスタのポリシリコンゲートのピッチに依存した回路特性の変動やSTI（Shallow Trench Isolation）からの応力による回路特性の変動がある。このような回路特性の変動は、LSIの微細化により顕著になってきており、又、回路やセルのレイアウトパターンやレイアウト位置、製造ばらつきの回路特性への影響は複雑化してきている。
【０００３】
又、LSIのアッセンブリ前後では、回路やセルの位置によりパッケージ応力が異なるため、回路特性が同様に異なることが予想される。
【０００４】
更に、トランジスタ等の素子の特性のみではなく、素子と回路間を接続する配線の回路特性に与える影響も顕著になってきており、同一回路又は同一セルであっても、周囲の配線状況が異なれば回路特性が異なってくる。
【０００５】
上記の如き現象をシミュレーションに取り込んで、回路特性の予測精度を向上させることが望まれている。
【０００６】
特許文献１及び特許文献２では、着目している素子や回路の周囲状況を解析し、その結果をシミュレーション環境にフィードバックを行う手法が提案されている。
【０００７】
図１は、従来のシミュレーション方法の一例を説明するフローチャートであり、特許文献１及び特許文献２で用いられている如き手法を示す。図１において、ステップＳ１は、素子や回路のレイアウトパターンやレイアウト位置を示すレイアウトデータに基づいてレイアウト解析を行う。ステップＳ２は、回路を構成するセルの特性（セル特性）のネットリストを抽出する際のネットリスト、或いは、抽出しておいたネットリストに対して、レイアウト解析の結果に基づいて変更を行う。ステップＳ３は、変更されたネットリストからセル特性の再抽出を行う。ステップＳ４は、再抽出されたセル特性を解析する。ステップＳ１〜Ｓ３は、レイアウトに変更を加える度に繰り返される。
【０００８】
尚、通常、半導体チップレベルでのタイミング解析等の解析は、セル特性を用いて行われ、セル自体の特性のシミュレーションは行われない。
【特許文献１】特開平１１−２８４１７０号公報
【特許文献２】特開２００１−２６５８２６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
特許文献１及び特許文献２にて提案されている手法では、セル特性のネットリスト（回路情報）を抽出する際のネットリスト、或いは、抽出しておいたネットリストに対して、レイアウト解析の結果に基づいて変更を行うため、変更されたネットリストからセル特性の再抽出を行う必要がある。又、同一セルであっても、レイアウト状況毎にセル特性の抽出が必要となる。
【００１０】
このように、従来はレイアウトに変更を加える際にはネットリストに対して変更を加えるため、レイアウトに変更を加える度に、或いは、レイアウト毎に、セル特性をネットリストから抽出する必要があり、効率的にシミュレーションを行い、且つ、回路特性の予測精度を向上することは難しいという問題があった。
【００１１】
そこで、本発明は、効率的にシミュレーションを行い、且つ、回路特性の予測精度を向上可能なシミュレーション方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
上記の課題は、コンピュータによる半導体集積回路のシミュレーション方法であって、セルを含んで構成された回路のレイアウトデータに基づいてレイアウト解析を行い、該レイアウト解析により得られ、第１のレイアウトを表す第１のレイアウトパラメータをメモリ部に格納する第１の解析手順と、遅延時間、ノイズ特性、洩れ電流及び消費電力のうち少なくとも１つを含む前記セルの基本セル特性をネットリストから抽出し、前記第１のレイアウトとは異なる第２のレイアウトを表す第２のレイアウトパラメータで表現して前記メモリ部に格納する抽出手順と、前記第１のレイアウトパラメータを前記メモリ部から読み出して、前記第２のレイアウトパラメータで表現された前記基本セル特性に代入してセル特性を求めて前記メモリ部に格納する取得手順と、求められた前記セル特性を用いて前記回路の動作解析をする第２の解析手順とを前記コンピュータに実行させ、前記第２のレイアウトパラメータが表す、前記基本セル特性の抽出に使用する前記第２のレイアウトは、前記第１の解析手順が前記レイアウト解析を行い前記第１のレイアウトに対して許容し得る範囲で前記第２のレイアウトパラメータの値を振って、前記基本セル特性を関数化又はテーブル化するためのレイアウトであることを特徴とする、シミュレーション方法によって達成できる。
【００１３】
上記の課題は、コンピュータに半導体集積回路のシミュレーションを行わせるプログラムであって、セルを含んで構成された回路のレイアウトデータに基づいてレイアウト解析を行い、該レイアウト解析により得られ、第１のレイアウトを表す第１のレイアウトパラメータをメモリ部に格納する第１の解析手順と、遅延時間、ノイズ特性、洩れ電流及び消費電力のうち少なくとも１つを含む前記セルの基本セル特性をネットリストから抽出し、前記第１のレイアウトとは異なる第２のレイアウトを表す第２のレイアウトパラメータで表現して前記メモリ部に格納する抽出手順と、前記第１のレイアウトパラメータを前記メモリ部から読み出して、前記第２のレイアウトパラメータで表現された前記基本セル特性に代入してセル特性を求めて前記メモリ部に格納する取得手順と、求められた前記セル特性を用いて前記回路の動作解析をする第２の解析手順とを前記コンピュータに実行させ、前記第２のレイアウトパラメータが表す、前記基本セル特性の抽出に使用する前記第２のレイアウトは、前記第１の解析手順が前記レイアウト解析を行い前記第１のレイアウトに対して許容し得る範囲で前記第２のレイアウトパラメータの値を振って、前記基本セル特性を関数化又はテーブル化するためのレイアウトであることを特徴とするプログラムによって達成できる。
【発明の効果】
【００１４】
本発明によれば、効率的にシミュレーションを行い、且つ、回路特性の予測精度を向上可能なシミュレーション方法及びプログラムを実現することができる。
【発明を実施するための最良の形態】
【００１５】
本発明では、着目セルの周辺のセルや配線等の周囲環境（又は、状況）が着目セルに与える影響を各レイアウトについて考慮して解析を行うことで、レイアウトによる回路特性の変動をシミュレーションに取り込み、回路特性の予測精度を向上させる。ここで、セルとは、回路を構成する単位である。
【００１６】
具体的には、セルやセルで構成された回路のレイアウトパターン及びレイアウト位置を示すレイアウトデータに基づいてレイアウト解析を行い、第１のレイアウト情報（レイアウトパラメータ）を求める。又、遅延時間、ノイズ特性、洩れ電流、消費電力等のうち少なくとも１つを含む基本セル特性を第１のレイアウト情報とは異なる第２のレイアウト情報（レイアウトパラメータ）で表現しておき、レイアウト解析により取得した各第１のレイアウトパラメータを基本セル特性に代入することで、レイアウトに応じたセル特性を表現する。第２のレイアウト情報で表される、基本セル特性の抽出に使用するレイアウトは、実際にレイアウト解析を行うレイアウトではなく、予め実際のレイアウトで許容し得る範囲でパラメータの値を振って基本セル特性を関数化又はテーブル化するためのレイアウトである。
【００１７】
レイアウトに変更を加える際にネットリストに対して変更を加える必要がないため、レイアウトに変更を加える度に、或いは、レイアウト毎に、セル特性をネットリストから抽出する必要もない。これにより、レイアウトによる回路特性の変動をシミュレーションに取り込んで、回路特性の予測精度を向上するのと同時に、効率良くチップレベルでの解析を行うことが可能となる。
【００１８】
以下に、本発明のシミュレーション方法及びプログラムの各実施例を、図２以降と共に説明する。
【実施例】
【００１９】
図２は、本発明が適用されるコンピュータシステムの斜視図である。図２に示すコンピュータシステム１００は、CPUやディスクドライブ等を内蔵した本体部１０１、本体部１０１からの指示により表示画面１０２ａ上に消費電力解析結果等を表示するディスプレイ１０２、コンピュータシステム１００に種々の情報を入力するためのキーボード１０３、ディスプレイ１０２の表示画面１０２ａ上の任意の位置を指定するマウス１０４及び外部のデータベース等にアクセスして他のコンピュータシステムに記憶されているプログラム等をダウンロードするモデム１０５を有する。
【００２０】
ディスク１１０等の可搬型記録媒体に格納されるか、モデム１０５等の通信装置を使って他のコンピュータシステムの記録媒体１０６からダウンロードされる、コンピュータシステム１００に少なくともレイアウト解析及び回路特性（セル特性）の解析を含むシミュレーション機能を持たせるプログラム（シミュレーションソフトウェア又はツール）は、コンピュータシステム１００に入力されてコンパイルされる。プログラムは、コンピュータシステム１００（即ち、後述するCPU２０１）をシミュレーション機能を有する回路設計支援装置（又は、シミュレーションシステム）として動作させる。プログラムは、例えばディスク１１０等のコンピュータ読み取り可能な記録媒体に格納されていても良い。コンピュータ読み取り可能な記録媒体は、ディスク１１０、ＩＣカードメモリ、フロッピー（登録商標）ディスク等の磁気ディスク、光磁気ディスク、CD-ROM等の可搬型記録媒体に限定されるものではなく、モデム１０５やLAN等の通信装置や通信手段を介して接続されるコンピュータシステムでアクセス可能な各種記録媒体を含む。
【００２１】
図３は、コンピュータシステム１００の本体部１０１内の要部の構成を説明するブロック図である。図３中、本体部１０１は、バス２００により接続されたプロセッサ（CPU）２０１、RAMやROM等からなるメモリ部２０２、ディスク１１０用のディスクドライブ２０３及びハードディスクドライブ（HDD）２０４からなる。本実施例では、ディスプレイ１０２、キーボード１０３及びマウス１０４も、バス２００を介してCPU２０１に接続されているが、これらは直接CPU２０１に接続されていても良い。又、ディスプレイ１０２は、入出力画像データの処理を行う周知のグラフィックインタフェース（図示せず）を介してCPU２０１に接続されていても良い。
【００２２】
コンピュータシステム１００において、キーボード１０３やマウス１０４は回路設計支援装置の入力部（又は手段）を構成する。ディスプレイ１０２は、解析結果等のシミュレーション結果を画面１０２ａ上に表示する表示部（又は手段）を構成する。CPU２０１は、解析対象のレイアウトデータに基づいてレイアウト解析を行い第１のレイアウト情報（レイアウトパラメータ）を出力する第１の解析手順を実行する第１の解析部（又は手段）、第１のレイアウト情報とは異なる第２のレイアウト情報（レイアウトパラメータ）に基づいて基本セル特性を抽出する抽出手順を実行する抽出部（又は手段）、第１のレイアウト情報を基本セル特性に代入してレイアウト毎のセル特性を求める取得手順を実行する取得部（又は手段）及び求められたセル特性を解析する第２の解析手順を実行する第２の解析部（又は手段）として機能する。メモリ部２０２、ディスクドライブ１０２及びHDD２０４は、メモリ部（又は手段）を構成する。
【００２３】
尚、コンピュータシステム１００の構成は図２及び図３に示す構成に限定されるものではなく、代わりに各種周知の構成を使用しても良い。
【００２４】
図４は、本発明の一実施例の概略動作を説明するフローチャートである。図４に示す処理は、CPU２０１により実行される。図４において、ステップＳ１１は、メモリ部から読み出された、或いは、入力部から入力された、解析対象となる回路やセルのレイアウトパターン及びレイアウト位置を示すレイアウトデータに基づいてレイアウト解析を行い、ステップＳ１２は、レイアウト解析の結果得られる第１のレイアウト情報（レイアウトパラメータ）をメモリ部に格納する。後述するように、レイアウト解析は、着目セル内部までを解析対象として行うものであっても、着目セルを所謂ブラックボックスとみなして着目セル内部は解析対象外として行うものであっても良い。ステップＳ１３は、遅延時間、ノイズ特性、洩れ電流、消費電力等のうち少なくとも１つを含むセルの特性（セル特性）をネットリストから抽出（キャラクタライズ）し、第２のレイアウト情報（レイアウトパラメータ）で表現した基本セル特性をメモリ部に格納する。ネットリスト及び第２のレイアウト情報は、いずれもメモリ部から読み出されても、入力部から入力されても良い。第２のレイアウト情報が表す、基本セル特性の抽出に使用するレイアウトは、第１のレイアウト情報を求める際に実際にレイアウト解析を行うレイアウトではなく、予め実際にレイアウト解析を行うレイアウトに対して許容し得る範囲でパラメータの値を変化させ（即ち、解析に耐え得る範囲でパラメータの値を振って）、基本セル特性を関数化又はテーブル化するためのレイアウトである。基本セル特性の抽出に使用するレイアウトは、例えばTEG（Test Element Group）等の、特性値とシミュレーション値のキャリブレーションが取れているものであることが望ましい。ステップＳ１４は、ステップＳ１２で出力された第１のレイアウト情報をメモリ部から読み出し、メモリ部から読み出したステップＳ１３で抽出された基本セル特性に代入して、レイアウト毎のセル特性を求めてメモリ部に格納する。ステップＳ１５は、抽出されたセル特性をメモリ部から読み出して解析し、必要に応じてメモリ部に格納すると共に、表示部に表示する。
【００２５】
図５は、着目セル内部までを解析対象とするステップＳ１２のレイアウト解析をより詳細に説明するフローチャートである。図５において、ステップＳ２１は、解析対象のレイアウトデータで使用されているセルを予め準備されているセルリストから抽出する。ここでは、同じセルであってもレイアウトパターンやレイアウト位置が異なるので、個々のセルを別々に抽出する。レイアウトデータ及びセルリストは、いずれもメモリ部から読み出されても、或いは、入力部から入力されても良い。又、セルリストは、少なくとも後述する基本セル特性を求めるセルを含む。
【００２６】
ステップＳ２２は、ステップＳ２１で抽出した各セルのセル位置情報、即ち、図６に示す如きセル座標（ｘ，ｙ）を取得する。図６は、セル位置情報の取得を説明する図である。図６は、一例として３つのセルcell1_1, cell1_2, cell2_1のセル座標cell1_1(x11,y11), cell1_2(x12,y12), cell2_1(x21,y21)を示す。図６中、５１はチップの領域を示す。チップ５１上の同じセルであっても、セルの位置によってセル特性が異なる場合がある。これは、セルを構成する素子の一例であるトランジスタのポリシリコンゲートのピッチに依存したセル特性の変動やSTI（Shallow Trench Isolation）からの応力によるセル特性の変動等に起因するものである。同じセルのセル特性が異なる顕著な例としては、セルをパッケージ等に組み立てた場合であり、このような場合にはセルの位置によってパッケージからセルに加わる応力が異なるため、同じセルであってもセルの位置によってセル特性が異なる。
【００２７】
ステップＳ２３は、ステップＳ２１で抽出した各セルのバルクや配線等に関するセル周辺情報を取得する。図７は、セル周辺情報の取得を説明する図である。図７において、６１〜６３は抽出されたセルであり、説明の便宜上６２が着目セルであるものとする。又、６５は拡散領域、６６はセルを構成するトランジスタのポリシリコンゲートを示す。着目セル６２のバルクに関するセル周辺情報は、図７に示す着目セル６２との各周辺セル６１，６３の拡散領域６５の間隔Sf、着目セル６２との各周辺セル６１，６３のポリシリコンゲート６６の間隔Sp、着目セル６２と各周辺セル６１，６３のポリシリコンゲート６６の延在方向（即ち、向き）等を含む。図７では、着目セル６２の左右の周辺セル６１，６３のみが示されているが、着目セル６２の上下にも周辺セルが存在する場合には、着目セル６２のバルクに関するセル周辺情報は上下の周辺セルについて求めた拡散領域６５の間隔Sf、拡散領域６５の水平方向上の幅SW1、拡散領域６５の垂直方向上の長さSW2、ポリシリコンゲート６６の間隔Sp、ポリシリコンゲート６６の延在方向（即ち、向き）等を含む。尚、ポリシリコンゲート６６の向きは、図７に示す一方向に限定されるものではない。
【００２８】
尚、図７に示す着目セル６２はセルリストに準備されているものであるが、周辺セル６１，６３はセルリストに準備されていなくても良い。これは、着目セル内部までを解析対象として解析を行う場合、周辺セル６１，６３はセルリストに無くても、拡散領域６５やポリシリコンゲート６６等の情報が有れば、これらのセル周辺情報を取得して着目セル６２の特性にフィードバックをかけることが可能であるからである。
【００２９】
図８は、着目セル６２上を走る配線を説明する図である。図８は、着目セル６２上を走る配線６７、着目セル６２内を走る配線６８及び着目セル６２横（即ち、着目セル６２の近傍）を走る配線６９を示す。ここでは、配線６８，６９は同一配線層により形成されているものとする。着目セル６２の配線に関する情報は、着目セル６２上の配線６７と着目セル６２内の配線６８との交差面積Su、着目セル６２内の配線６８と平行して走る着目セル６２横の配線６９の間隔Sd、着目セル６２内の配線６８と平行して走る着目セル６２横の配線６９の対角距離Se等を含む。尚、図８では着目セル６２内の配線６８は１本であるが、着目セル６２内に複数の配線が存在する場合には、各配線に対して交差面積Su、間隔Sd、対角距離Se等を求める。
【００３０】
このようにして、レイアウト解析により、セルリストから抽出された解析対象のレイアウトデータで使用されている各セルについてのセル位置情報及びセル周辺情報を含む第１のレイアウト情報（レイアウトパラメータ）が得られる。第１のレイアウトパラメータは、例えばセル名cell1_1、セルの位置情報x1,y1、拡散領域の間隔Sf_1、ゲートの間隔Sf_1、配線の交差面積Su_1、平行配線の間隔Sd_1、平行配線の対角距離Se_1といったように、各セルと第１のレイアウトパラメータとの対応関係がわかりやすい形式で出力される。
【００３１】
図９は、図５のレイアウト解析を行う場合の数式を用いる基本セル特性の抽出をより詳細に説明するフローチャートである。図９において、ステップＳ１３は、遅延時間、ノイズ特性、洩れ電流、消費電力等のうち少なくとも１つを含む各セルC1,C2,...のセル特性を、第２のレイアウトパラメータに従ったネットリストNL1,NL2,...から抽出（キャラクタライズ）し、第２のレイアウトパラメータをセル特性に代入することで基本セル特性を求める。第２のレイアウトパラメータに従ったネットリストNL1,NL2,...は、第２のレイアウトパラメータ毎に抽出されたネットリストである。ネットリストは、メモリ部から読み出されても、或いは、入力部から入力されても良い。
【００３２】
つまり、ステップＳ１３は、抽出された各ネットリストNL1,NL2,...を用いてシミュレーションを行った結果を第２のレイアウトパラメータで関数化、即ち、数式化する。例えば、遅延時間及び消費電力については、数式化により次のようなセル特性f1,g2,f2,g2が得られる。ここで、para1,para2,...は、第２のレイアウトパラメータを示す。他のセル特性についても、同様に数式化を行えば良い。
遅延時間＝f1(para1, para2, ...)
遅延ばらつき＝g1(para1, para2, ...)
消費電力＝f2(para1, para2, ...)
消費電力ばらつき＝g2(para1, para2, ...)
この場合、図４に示すステップＳ１４は、ステップＳ１２で出力された第１のレイアウト情報をステップＳ１３で抽出された関数（数式）で表される基本セル特性に代入して、レイアウト毎のセル特性を求める。
【００３３】
図１０は、図５のレイアウト解析を行う場合のテーブルを用いる基本セル特性の抽出をより詳細に説明するフローチャートである。図１０において、ステップＳ１３は、遅延時間、ノイズ特性、洩れ電流、消費電力等のうち少なくとも１つを含む各セルC1,C2,...のセル特性を、第２のレイアウトパラメータに従ったネットリストNL1,NL2,...から抽出（キャラクタライズ）し、第２のレイアウトパラメータをセル特性に代入することで基本セル特性を求める。第２のレイアウトパラメータに従ったネットリストNL1,NL2,...は、第２のレイアウトパラメータ毎に抽出されたネットリストである。ネットリストは、メモリ部から読み出されても、或いは、入力部から入力されても良い。
【００３４】
つまり、ステップＳ１３は、抽出された各ネットリストNL1,NL2,...を用いてシミュレーションを行った結果を第２のレイアウトパラメータで各セルC1,C2,...についてテーブル化して、例えば図１１に示す如きセルC1,C2,...の特性テーブルTb1,Tb2,...が得られる。図１１は、セルの特性テーブルTb1,Tb2,...を説明する図である。ここで、para1,para2,...は、第２のレイアウトパラメータを示す。例えば、セルの特性テーブルTb1は、遅延時間＝xxx1、遅延時間ばらつき＝yyy1,...等のセルC1に関するセル特性を含み、セルの特性テーブルTb2は、遅延時間＝xxx2、遅延時間ばらつき＝yyy2,...等のセルC2に関するセル特性を含む。
【００３５】
この場合、図４に示すステップＳ１４は、ステップＳ１３で抽出された基本セル特性の対応する特性テーブルを参照し、ステップＳ１２で出力された第１のレイアウト情報をこの参照した特性テーブルのセル特性に代入して、レイアウト毎のセル特性を求める。
【００３６】
図１２は、着目セル内部を解析対象外とするレイアウト解析をより詳細に説明するフローチャートである。図１２において、ステップＳ３１は、解析対象のレイアウトデータで使用されているセルを予め準備されているセルリストから抽出する。ここでは、同じセルであってもレイアウトパターンやレイアウト位置が異なるので、個々のセルを別々に抽出する。レイアウトデータ及びセルリストは、いずれもメモリ部から読み出されても、或いは、入力部から入力されても良い。又、セルリストは、少なくとも後述する基本セル特性を求めるセルを含む。
【００３７】
ステップＳ３２は、ステップＳ３１で抽出した各セルのセル位置情報、即ち、図６に示す如きセル座標（ｘ，ｙ）を取得する。
【００３８】
ステップＳ３３は、ステップＳ３１で抽出した各セルのタイプや配線等に関するセル周辺情報を取得する。図１３は、セル周辺情報の取得を説明する図である。図１３において、７１〜７９は抽出されたセルであり、説明の便宜上７５が着目セルであるものとする。セル７１，７６はタイプはtype1であり、セル７２，７７，７８のタイプはtype2であり、セル７３，７４，７９のタイプはtype3である。着目セル７５のタイプに関するセル周辺情報は、セルのタイプtype1,type2,type3等を含む。言うまでもなく、セルのタイプは３種類に限定されるものではない。
【００３９】
図１４は、着目セル７５上層配線８１を説明する図である。図１４は、着目セル７５の上層配線８１を示す。ここでは、着目セル７５の領域Ａ，Ｃの上層には配線が設けられていないが、着目セル７５の領域Ｂの上層には上層配線８１が設けられている。着目セル７５の配線に関する情報は、上層配線８１の配線幅や延在方向等を、着目セル７５の各領域Ａ〜Ｃについて含む。
【００４０】
このようにして、レイアウト解析により、セルリストから抽出された解析対象のレイアウトデータで使用されている各セルについてのセル位置情報及びセル周辺情報を含む第１のレイアウト情報（レイアウトパラメータ）が得られる。第１のレイアウトパラメータは、例えばセル名、セルの位置情報、周辺セルのタイプ、セルの上層配線の情報といったように、各セルと第１のレイアウトパラメータとの対応関係がわかりやすい形式で出力される。
【００４１】
図１５は、図１２のレイアウト解析を行う場合の基本セル特性の抽出をより詳細に説明するフローチャートである。図１５は、テーブルを用いる基本セル特性の抽出を示す。図１５において、ステップＳ１３は、遅延時間、ノイズ特性、洩れ電流、消費電力等のうち少なくとも１つを含む各セルC1,C2,...のセル特性を、第２のレイアウトパラメータに従ったネットリストNL1,NL2,...から抽出（キャラクタライズ）し、第２のレイアウトパラメータをセル特性に代入することで基本セル特性を求める。第２のレイアウトパラメータに従ったネットリストNL1,NL2,...は、第２のレイアウトパラメータ毎に抽出されたネットリストである。ネットリストは、メモリ部から読み出されても、或いは、入力部から入力されても良い。
【００４２】
つまり、ステップＳ１３は、抽出された各ネットリストNL1,NL2,...を用いてシミュレーションを行った結果を第２のレイアウトパラメータで各セルC1,C2,...についてテーブル化して、例えば図１１に示す如きセルC1,C2,...の特性テーブルTb1,Tb2,...が得られる。
【００４３】
この場合、図４に示すステップＳ１４は、ステップＳ１３で抽出された基本セル特性の対応する特性テーブルを参照し、ステップＳ１２で出力された第１のレイアウト情報をこの参照した特性テーブルのセル特性に代入して、レイアウト毎のセル特性を求める。
【００４４】
従って、本実施例では、レイアウト解析により取得した第１のレイアウトパラメータを基本セル特性に代入することで、レイアウトに応じたセル特性を表現する。このため、レイアウトに変更を加える場合には、変更後のレイアウトのレイアウト解析により取得した第１のレイアウトパラメータを基本セル特性に代入することでセル特性を適切に変更することができ、ネットリストに対して変更を加える必要がないため、レイアウトに変更を加える度に、或いは、レイアウト毎に、セル特性をネットリストから抽出する必要もない。これにより、レイアウトによる回路特性の変動をシミュレーションに取り込んで、回路特性の予測精度を向上するのと同時に、効率良くチップレベルでの解析を行うことが可能となる。
【００４５】
尚、本発明は、以下に付記する発明をも包含するものである。
（付記１）
コンピュータによる半導体集積回路のシミュレーション方法であって、
セルを含んで構成された回路のレイアウトデータに基づいてレイアウト解析を行い、該レイアウト解析により得られたレイアウトパラメータの値をメモリ部に格納する第１の解析手順と、
遅延時間、ノイズ特性、洩れ電流及び消費電力のうち少なくとも１つを含む前記セルの基本セル特性をネットリストから抽出し、前記レイアウトパラメータで表現して該メモリ部に格納する抽出手順と、
該レイアウトパラメータの前記値を該メモリ部から読み出して、前記レイアウトパラメータで表現された該基本セル特性に代入してセル特性を求めて該メモリ部に格納する取得手順と、
求められた該セル特性を用いて前記回路の動作解析をする第２の解析手順とを該コンピュータに実行させる
ことを特徴とする、シミュレーション方法。
（付記２）
該第１の解析手順は、前記セルを含むセルリストから前記セルを抽出し、抽出した前記セルのセル位置情報及びセル周辺情報を取得することを特徴とする、付記１記載のシミュレーション方法。
（付記３）
該抽出手順は、前記セルの前記セル特性を前記レイアウトパラメータに従ったネットリストから抽出し、抽出された前記ネットリストを用いてシミュレーションを行って前記基本セル特性を前記レイアウトパラメータで関数化することを特徴とする、付記２記載のシミュレーション方法。
（付記４）
該取得手順は、前記値を、前記関数化された基本セル特性に代入して前記セル特性を求めることを特徴とする、付記３記載のシミュレーション方法。
（付記５）
該抽出手順は、前記セルの前記セル特性を前記レイアウトパラメータに従ったネットリストから抽出し、抽出された前記ネットリストを用いてシミュレーションを行って前記基本セル特性を前記レイアウトパラメータに対するテーブルを作成することを特徴とする、付記２記載のシミュレーション方法。
（付記６）
該取得手順は、前記テーブルを参照し、前記値に対応する前記セル特性を求めることを特徴とする、付記５記載のシミュレーション方法。
（付記７）
該第１の解析手順は、解析対象のレイアウトデータで使用されているセルをセルリストから抽出し、抽出した前記セルのセル位置情報及びセル周辺情報を取得することを特徴とする、付記１記載のシミュレーション方法。
（付記８）
該抽出手順は、前記セルの前記セル特性を前記レイアウトパラメータに従ったネットリストから抽出し、抽出された前記ネットリストを用いてシミュレーションを行って前記レイアウトパラメータに対するテーブルを作成することを特徴とする、付記７記載のシミュレーション方法。
（付記９）
該取得手順は、前記テーブルを参照し、前記値に対応する前記セル特性を求めることを特徴とする、付記８記載のシミュレーション方法。
（付記１０）
コンピュータに半導体集積回路のシミュレーションを行わせるプログラムであって、
セルを含んで構成された回路のレイアウトデータに基づいてレイアウト解析を行い、該レイアウト解析により得られたレイアウトパラメータの値をメモリ部に格納する第１の解析手順と、
遅延時間、ノイズ特性、洩れ電流及び消費電力のうち少なくとも１つを含む前記セルの基本セル特性をネットリストから抽出し、前記レイアウトパラメータで表現して該メモリ部に格納する抽出手順と、
該レイアウトパラメータの前記値を該メモリ部から読み出して、前記レイアウトパラメータで表現された該基本セル特性に代入してセル特性を求めて該メモリ部に格納する取得手順と、
求められた該セル特性を用いて前記回路の動作解析をする第２の解析手順とを該コンピュータに実行させる
ことを特徴とする、プログラム。
（付記１１）
該第１の解析手順は、前記セルを含むセルリストから前記セルを抽出し、抽出した前記セルのセル位置情報及びセル周辺情報を取得することを特徴とする、付記１０記載のプログラム。
（付記１２）
該抽出手順は、前記セルの前記セル特性を前記レイアウトパラメータに従ったネットリストから抽出し、抽出された前記ネットリストを用いてシミュレーションを行って前記基本セル特性を前記レイアウトパラメータで関数化することを特徴とする、付記１１記載のプログラム。
（付記１３）
該取得手順は、前記値を、前記関数化された基本セル特性に代入して前記セル特性を求めることを特徴とする、付記１２記載のプログラム。
（付記１４）
該抽出手順は、前記セルの前記セル特性を前記レイアウトパラメータに従ったネットリストから抽出し、抽出された前記ネットリストを用いてシミュレーションを行って前記基本セル特性を前記レイアウトパラメータに対するテーブルを作成することを特徴とする、付記１１記載のプログラム。
（付記１５）
該取得手順は、前記テーブルを参照し、前記値に対応する前記セル特性を求めることを特徴とする、付記１４記載のプログラム。
（付記１６）
該第１の解析手順は、解析対象のレイアウトデータで使用されているセルをセルリストから抽出し、抽出した前記セルのセル位置情報及びセル周辺情報を取得することを特徴とする、付記１０記載のプログラム。
（付記１７）
該抽出手順は、前記セルの前記セル特性を前記レイアウトパラメータに従ったネットリストから抽出し、抽出された前記ネットリストを用いてシミュレーションを行って前記レイアウトパラメータに対するテーブルを作成することを特徴とする、付記１６記載のプログラム。
（付記１８）
該取得手順は、前記テーブルを参照し、前記値に対応する前記セル特性を求めることを特徴とする、付記１７記載のプログラム。
【００４６】
以上、本発明を実施例により説明したが、本発明は上記実施例に限定されるものではなく、本発明の範囲内で種々の変形及び改良が可能であることは言うまでもない。
【図面の簡単な説明】
【００４７】
【図１】従来のシミュレーション方法の一例を説明するフローチャートである。
【図２】本発明が適用されるコンピュータシステムの斜視図である。
【図３】コンピュータシステムの本体部内の要部の構成を示すブロック図である。
【図４】本発明の一実施例の概略動作を説明するフローチャートである。
【図５】着目セル内部までを解析対象とするレイアウト解析をより詳細に説明するフローチャートである。
【図６】セル位置情報の取得を説明する図である。
【図７】セル周辺情報の取得を説明する図である。
【図８】セル上を走る配線を説明する図である。
【図９】図５のレイアウト解析を行う場合の数式を用いる基本セル特性の抽出をより詳細に説明するフローチャートである。
【図１０】図５のレイアウト解析を行う場合のテーブルを用いる基本セル特性の抽出をより詳細に説明するフローチャートである。
【図１１】セル特性テーブルを説明する図である。
【図１２】着目セル内部を解析対象外とするレイアウト解析をより詳細に説明するフローチャートである。
【図１３】セル周辺情報の取得を説明する図である。
【図１４】上層配線を説明する図である。
【図１５】図１２のレイアウト解析を行う場合の基本セル特性の抽出をより詳細に説明するフローチャートである。
【符号の説明】
【００４８】
１００      コンピュータシステム
１０１      本体部
１０２      ディスプレイ
１０３      キーボード
１１０      ディスク
２０１      ＣＰＵ
２０２      メモリ部
【図１】
0004946703.tif 000002
【図２】
0004946703.tif 000003
【図３】
0004946703.tif 000004
【図４】
0004946703.tif 000005
【図５】
0004946703.tif 000006
【図６】
0004946703.tif 000007
【図７】
0004946703.tif 000008
【図８】
0004946703.tif 000009
【図９】
0004946703.tif 000010
【図１０】
0004946703.tif 000011
【図１１】
0004946703.tif 000012
【図１２】
0004946703.tif 000013
【図１３】
0004946703.tif 000014
【図１４】
0004946703.tif 000015
【図１５】
0004946703.tif 000016