(57)【要約】【課題】ポストレイアウトシミュレーションに要する時間を短縮するとともに、シミュレーションの精度の悪化を抑制する。【解決手段】本発明によるシミュレーション装置は、回路データから第１のネットリストを生成するネットリスト生成部と、レイアウトデータおよび回路データから実負荷情報を生成する実負荷情報生成部と、第１のネットリストに実負荷情報が示す寄生成分が追加された第２のネットリストを生成するバックアノテーション処理部と、第１のネットリストにおいて非活性回路部分を特定し、第２のネットリストから前記非活性回路部分を削除し、削除された非活性回路部分との接続箇所について、その種類に応じた回路変更を行い、その接続関係を示す第３のネットリストを生成する回路変更処理部と、第３のネットリストを用いてシミュレーションを実行するシミュレーション実行部と、を有する。【選択図】図３
2014149700.tif 000002
【特許請求の範囲】
【請求項１】
回路の設計情報を示す回路データが入力されると、該回路データから、前記回路を構成する素子の接続関係を示す第１のネットリストを生成するネットリスト生成部と、
前記回路を構成する素子間の配線パターンを示すレイアウトデータが入力されると、前記レイアウトデータおよび前記回路データから、前記配線部分の寄生成分を示す実負荷情報を生成する実負荷情報生成部と、
前記第１のネットリストに前記実負荷情報が示す寄生成分を追加した第２のネットリストを生成するバックアノテーション処理部と、
前記第１のネットリストにおいてシミュレーション実行時に削除可能な非活性回路部分を特定し、前記第２のネットリストから前記非活性回路部分を削除し、該削除された非活性回路部分との接続箇所について、その種類に応じた回路変更を行い、その接続関係を示す第３のネットリストを生成する回路変更処理部と、
前記第３のネットリストを用いて前記回路のシミュレーションを実行するシミュレーション実行部と、を有する回路のシミュレーション装置。
【請求項２】
請求項１に記載のシミュレーション装置において、
前記実負荷情報生成部は、前記非活性回路部分については、前記実負荷情報を生成しないことを特徴とするシミュレーション装置。
【請求項３】
請求項１または２に記載のシミュレーション装置において、
前記回路変更処理部は、ユーザの指定した回路部分を前記非活性回路部分として特定することを特徴とするシミュレーション装置。
【請求項４】
請求項１または２に記載のシミュレーション装置において、
前記回路変更処理部は、前記第１のネットリストに基づく回路の過渡解析を実行することにより、前記非活性回路部分を特定することを特徴とするシミュレーション装置。
【請求項５】
請求項４に記載のシミュレーション装置において、
前記回路変更処理部は、前記第１のネットリストにおいて、前記素子間の接続点であるノードの電位変動に応じて、前記非活性回路部分を特定することを特徴とするシミュレーション装置。
【請求項６】
請求項４または５に記載のシミュレーション装置において、
前記回路変更処理部は、前記第１のネットリストにおいて、複数の素子によって構成される回路ブロックへの入出力に応じて、前記非活性回路部分を特定することを特徴とするシミュレーション装置。
【請求項７】
請求項１から６のいずれか１項に記載のシミュレーション装置において、
前記回路変更処理部は、カップリング容量を介して接続される２つの回路部分のうち１つが非活性回路部分である場合、前記カップリング容量を、前記非活性回路部分の削除前の前記カップリング容量に相当する対接地容量に置換することを特徴とするシミュレーション装置。
【請求項８】
請求項１から６のいずれか１項に記載のシミュレーション装置において、
前記回路変更処理部は、前記非活性回路部分からの出力が複数の素子によって構成される回路ブロックの入出力端子に入力される場合、前記入出力端子に、前記非活性回路部分と同等の出力電位を有する単一または複数の素子から構成される回路部を付加することを特徴とするシミュレーション装置。
【請求項９】
請求項１から６のいずれか１項に記載のシミュレーション装置において、
前記回路変更処理部は、複数の素子によって構成される回路ブロックからの出力が前記非活性回路部分に入力される場合、前記入出力端子に、前記非活性回路部分の回路負荷に相当する単一または複数の素子から構成される回路部を付加することを特徴とするシミュレーション装置。
【請求項１０】
回路の設計情報を示す回路データが入力されると、該回路データから、前記回路を構成する素子の接続関係を示す第１のネットリストを生成するネットリスト生成ステップと、
前記回路を構成する素子間の配線パターンを示すレイアウトデータが入力されると、前記レイアウトデータおよび前記回路データから、前記配線部分の寄生成分を示す実負荷情報を生成する実負荷情報生成ステップと、
前記第１のネットリストに前記実負荷情報が示す寄生成分を追加した第２のネットリストを生成するバックアノテーション処理ステップと、
前記第１のネットリストにおいてシミュレーション実行時に削除可能な非活性回路部分を特定し、前記第２のネットリストから前記非活性回路部分を削除し、該削除された非活性回路部分との接続箇所について、その種類に応じた回路変更を行い、その接続関係を示す第３のネットリストを生成する回路変更処理ステップと、
前記第３のネットリストを用いて前記回路のシミュレーションを実行するシミュレーション実行ステップと、を有する回路のシミュレーション方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はシミュレーション装置およびシミュレーション方法に関する。
【背景技術】
【０００２】
半導体チップの設計においては通常、半導体チップを構成する回路の動作検証のためのシミュレーションが行われる。近年の製造プロセスの微細化や回路動作の高速化に伴って、このようなシミュレーションにおいて、配線部分の寄生成分（寄生抵抗や寄生容量）を考慮することが重要になってきている。
【０００３】
上述したようなシミュレーションにおいては、まず、回路の設計情報を示す回路データから回路を構成する抵抗や容量等の素子間の接続関係を示すネットリスト（プレレイアウトネットリスト）が生成される。
【０００４】
また、回路データ、および、回路を構成する素子間の配線パターンを示すレイアウトデータから、配線部分の寄生成分を示す実負荷情報がｄｓｐｆ（Ｄｅｔａｉｌｅｄ  Ｓｔａｎｄａｒｄ  Ｐａｒａｓｉｔｉｃ  Ｆｏｒｍａｔ）等の形式で求められる。
【０００５】
そして、プレレイアウトネットリストに実負荷情報に示される寄生成分が追加され、ポストレイアウトネットリストが生成される。
【０００６】
上記のような、ネットリストに実負荷情報の示す寄生成分を追加する処理は、バックアノテーションと称される（例えば、特許文献１（特開２００３−０８５２３１号公報）参照）。ポストレイアウトネットリストに基づいてシミュレーション（ポストレイアウトシミュレーション）を行うことにより、配線部分の寄生成分を考慮した、精度の高いシミュレーションが可能となる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００３−０８５２３１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
回路の高集積化に伴って、ネットリストや実負荷情報が膨大となり、ポストレイアウトシミュレーションに要する時間が増大する。
【０００９】
そこで、プレレイアウトネットリストにおいてポストレイアウトシミュレーションへの影響が小さい回路部分を特定し、その回路部分をプレレイアウトネットリストから削除した後に、バックアノテーションを行ってポストレイアウトネットリストを生成し、そのポストレイアウトネットリストを用いてポストレイアウトシミュレーションを行うという方法がある。
【００１０】
上記の方法によれば、シミュレーションに要する時間を短縮することができる。しかしながら、この方法では、ネットリストの一部が削除されているため、バックアノテーションを行う際にプレレイアウトネットリストと実負荷情報との間で不整合が発生し、一部の実負荷情報がポストレイアウトネットリストに反映されず、シミュレーションの精度が悪化するという問題がある。
【課題を解決するための手段】
【００１１】
本発明によるシミュレーション装置は、
回路の設計情報を示す回路データが入力されると、該回路データから、前記回路を構成する素子の接続関係を示す第１のネットリストを生成するネットリスト生成部と、
前記回路を構成する素子間の配線パターンを示すレイアウトデータが入力されると、前記レイアウトデータおよび前記回路データから、前記配線部分の寄生成分を示す実負荷情報を生成する実負荷情報生成部と、
前記第１のネットリストに前記実負荷情報が示す寄生成分を追加した第２のネットリストを生成するバックアノテーション処理部と、
前記第１のネットリストにおいてシミュレーション実行時に削除可能な非活性回路部分を特定し、前記第２のネットリストから前記非活性回路部分を削除し、該削除された非活性回路部分との接続箇所について、その種類に応じた回路変更を行い、その接続関係を示す第３のネットリストを生成する回路変更処理部と、
前記第３のネットリストを用いて前記回路のシミュレーションを実行するシミュレーション実行部と、を有する。
【発明の効果】
【００１２】
本発明によれば、ポストレイアウトシミュレーションに要する時間を短縮するとともに、シミュレーションの精度の悪化を抑制することができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の第１の実施形態のシミュレーション装置の構成を示すブロック図である。
【図２】一般的な回路の構成を示す概念図である。
【図３】図１に示すシミュレーション装置の動作を示すフローチャートである。
【図４】図１に示す回路変更処理部による断面処理を説明するための図である。
【図５】図１に示す回路変更処理部による断面処理を説明するための図である。
【図６】図１に示す回路変更処理部による断面処理を説明するための図である。
【図７】本発明の第２の実施形態のシミュレーション装置の動作を示すフローチャートである。
【発明を実施するための形態】
【００１４】
（第１の実施形態）
図１は、本発明の第１の実施形態のシミュレーション装置の構成を示すブロックである。
【００１５】
シミュレーション装置１０１は、プレレイアウトネットリスト生成部１０２、実負荷情報生成部１０３、バックアノテーション処理部１０４、回路変更処理部１０５、および、シミュレーション実行部１０６を有する。
【００１６】
シミュレーション装置１０１には、回路の設計情報を示す回路データ、および、回路を構成する素子間の配線パターンを示すレイアウトデータが入力される。
【００１７】
プレレイアウトネットリスト生成部１０２は、入力された回路データから、設計対象の回路を構成する素子間の接続関係を示すプレレイアウトネットリストを生成する。
【００１８】
実負荷情報生成部１０３は、入力された回路データおよびレイアウトデータから、設計対象の回路を構成する素子間の配線部分の寄生成分を示す実負荷情報を生成する。
【００１９】
バックアノテーション処理部１０４は、実負荷情報生成部１０３により生成された実負荷情報が示す配線部分の寄生成分を、プレレイアウトネットリスト生成部１０２により生成されたプレレイアウトネットリストに追加するバックアノテーションを行い、ポストレイアウトネットリストを生成する。
【００２０】
回路変更処理部１０５は、プレレイアウトネットリスト生成部１０２により生成されたプレレイアウトネットリストにおいて、シミュレーションへの影響が小さく、シミュレーションを行う際に省略することができる回路部分である非活性回路部分を特定する。
【００２１】
図２は、半導体装置における一般的な回路２０１の構成を示す概念図である。
【００２２】
図２に示すように、回路２０１は、多数のトランジスタや抵抗等の素子によって構成されている。ここで、回路２０１は、複数の素子によって構成される回路ブロック２０２を機能的な単位として分割することができる。なお、以下では、素子同士の接続点をノード２０３と称する。
【００２３】
回路変更処理部１０５は、例えば、回路２０１において、一部の回路ブロック２０２および一部のノード２０３を非活性回路部分として特定する。
【００２４】
再び、図１を参照すると、回路変更処理部１０５は、ポストレイアウトネットリストから非活性回路部分を削除し、削除された非活性回路部分との接続箇所について、その種類に応じた回路変更を行い、シミュレーション用ポストレイアウトネットリストを生成する。
【００２５】
シミュレーション実行部１０６は、回路変更処理部１０５により生成されたシミュレーション用ポストレイアウトネットリストを用いて回路シミュレーションを実行し、シミュレーション結果を生成する。
【００２６】
次に、本実施形態のシミュレーション装置１０１の動作について説明する。
【００２７】
図３は、本実施形態のシミュレーション装置１０１の動作を示すフローチャートである。
【００２８】
シミュレーション装置１０１には、回路データおよびレイアウトデータが入力される。なお、ここで入力される回路データとレイアウトデータとは通常、整合性の検証（ＬｖＳ（Ｌａｙｏｕｔ  Ｖｅｒｓｕｓ  Ｓｃｈｅｍａｔｉｃ）検証）済みのものである。
【００２９】
まず、プレレイアウトネットリスト生成部１０２は、入力された回路の回路データに基づいて、その回路を構成する素子間の接続関係を示す第１のネットリストとしてのプレレイアウトネットリストを生成する（ステップＳ３１１）。
【００３０】
また、実負荷情報生成部１０３は、入力された回路の回路データおよびレイアウト情報から、その回路を構成する素子間の配線部分の寄生成分を抽出し、抽出した寄生成分を示す実負荷情報を生成する（ステップＳ３１２）。
【００３１】
次に、バックアノテーション処理部１０４は、実負荷情報が示す配線部分の寄生成分をプレレイアウトネットリストに追加するバックアノテーション処理を行い、第２のネットリストとしてのポストレイアウトネットリストを生成する（ステップＳ３１３）。上述したように、回路データとレイアウトデータとはＬｖＳ検証済みであるため、これらのデータに基づいて生成されたプレレイアウトネットリストと実負荷情報についても整合性は保たれる。そのため、バックアノテーション処理によって全ての実負荷情報が追加されたポストレイアウトネットリストが生成される。
【００３２】
ポストレイアウトネットリストには、実負荷情報が示す配線部分の寄生成分が追加されているため、ポストレイアウトネットリストを用いてシミュレーションを行うことで、配線部分の寄生成分を考慮した精度の高いシミュレーション結果を得ることができる。しかし、ポストレイアウトネットリストを用いてシミュレーションを行うと、回路規模によっては、シミュレーションに要する時間が増大してしまう。
【００３３】
回路変更処理部１０５は、プレレイアウトネットリストにおいて非活性回路部分を特定する非活性回路部分特定処理を行う（ステップＳ３１４）。
【００３４】
なお、非活性回路部分を特定する方法としては、例えば、回路変更処理部１０５が、プレレイアウトネットリストに基づく回路について過渡解析を実行し、その結果から、非活性回路部分を特定する方法がある。この方法では、具体的には、回路変更処理部１０５は、回路ブロックへの入出力に応じて、非活性回路部分として特定する。すなわち、回路ブロックへ流出入する電流が所定の閾値未満の回路ブロック、および、入出力電位の変動が所定の閾値未満の回路ブロックが、非活性回路部分として特定される。また、回路変更処理部１０５は、電位の変動が所定の閾値未満のノードに対応する寄生成分を、非活性回路部分として特定する。さらに、別の方法として、ユーザにより指定された回路部分を非活性回路部分として特定する方法もある。
【００３５】
回路変更処理部１０５は、非活性回路部分を示す非活性回路部分情報を生成する。また、非活性回路部分からの出力が非活性回路部分に該当しない回路部分に入力される場合、回路変更処理部１０５は、その非活性回路部分に該当しない回路部分の入力端子およびその入力端子における電位を示す端子情報を生成する。
【００３６】
回路変更処理部１０５は、ポストレイアウトネットリストから非活性回路部分情報に示される非活性回路部分を削除する非活性回路部分削除処理を行う（ステップＳ３１５）。
【００３７】
非活性回路部分が削除されたポストレイアウトネットリストを用いたシミュレーションは、回路の一部が削減されているためシミュレーションに要する時間が短縮される。しかしながら、非活性回路部分と接続していたノードが開放されるため、そのノードと接続する回路ブロックのシミュレーションにおける動作が実際の回路ブロックの動作と異なり、シミュレーションの精度が悪くなる。そのため、回路変更処理部１０５は、削除された非活性回路部分との接続箇所について、その種類に応じた回路変更を行い、第３のネットリストとしてのシミュレーション用ポストレイアウトネットリストを生成する（ステップＳ３１６）。
【００３８】
回路変更処理部１０５による断面処理について、図４から図６を参照して説明する。
【００３９】
図４は、回路変更処理部１０５による断面処理の対象となる回路構成の一例を示す図である。図４（ａ）においては、回路ブロック４０１と回路ブロック４０２とが、カップリング容量４０３を介して接続されている。回路ブロック４０１が非活性回路部分であるとすると、非活性回路部分削除処理によって、回路ブロック４０１が削除される。回路変更処理部１０５は、図４（ｂ）に示すように、端子の一端が開放状態にあるカップリング容量４０３を同値の対接地容量４０４に置換する。
【００４０】
図５は、回路変更処理部１０５による断面処理の対象となる回路構成の他の一例を示す図である。図５（ａ）においては、回路ブロック５０１は、回路ブロック５０２の入出力端子５０３に接続されている。ここで、回路ブロック５０１が非活性回路部分であるとすると、非活性回路部分削除処理によって回路ブロック５０１は削除される。
【００４１】
回路変更処理部１０５は、回路データを用いて、入出力端子５０３の入出力状態を判定する。さらに、入出力端子５０３が入力端子である場合、回路変更処理部１０５は、図５（ｂ）に示すように、非活性回路部分特定処理において生成された端子情報を用いて、回路ブロック５０１が削除される前の入出力端子５０３と同等の電位を有する単一または複数の素子から構成される回路部として、電源５０４を入出力端子５０３に付加する。
【００４２】
図６は、回路変更処理部１０５による断面処理の対象となる回路構成のさらに他の一例を示す図である。図６（ａ）においては、回路ブロック６０１は、回路ブロック６０２の入出力端子６０３に接続されている。ここで、回路ブロック６０１が非活性回路部分であるとすると、非活性回路部分削除処理によって回路ブロック６０１は削除される。
【００４３】
回路変更処理部１０５は、回路データを用いて、入出力端子６０３の入出力状態を判定する。さらに、入出力端子６０３が出力端子である場合、回路変更処理部１０５は、図６（ｂ）に示すように、削除された回路ブロック６０１の回路負荷に相当する単一または複数の素子から構成される回路部として、対接地容量６０４を入出力端子６０３に付加する。
【００４４】
回路変更処理部１０５は、非活性回路部分を削除したポストレイアウトネットリストに対して上述した断面処理を行うことにより、シミュレーション用ポストレイアウトネットリストを生成する。
【００４５】
なお、図４から図６において、回路ブロック４０１、５０１および６０１を非活性回路部分として説明したが、非活性回路部分は、複数の素子によって構成される回路ブロックに限られず、単一の素子でもかなわない。
【００４６】
再び、図３を参照すると、シミュレーション実行部１０６は、シミュレーション用ポストレイアウトネットリストを用いてシミュレーションを行い、シミュレーション結果を生成する（ステップＳ３１７）。シミュレーション結果において、非活性回路部分削除処理に起因する精度の悪化が、断面処理を行うことにより抑制される。
【００４７】
また、バックアノテーション処理前に非活性回路部分削除処理を行う場合、バックアノテーション処理時に、レイアウトデータとプレレイアウトネットリストとの間で不整合が生じ、一部の実負荷情報がポストレイアウトネットリストに反映されない。しかしながら、本実施形態におけるシミュレーション装置１０１は、バックアノテーション処理後に非活性回路部分削除処理を行うため、バックアノテーション処理時に、レイアウトデータとプレレイアウトネットリストとの間で不整合が生じず、全ての実負荷情報がポストレイアウトネットリストに反映される。
【００４８】
このように、本実施形態によれば、シミュレーション装置１０１は、バックアノテーション処理後に、非活性回路部分削除処理および断面処理を行い、シミュレーション用ポストレイアウトネットリストを生成する。
【００４９】
そのため、ポストレイアウトシミュレーションに要する時間を短縮するとともに、シミュレーションの精度の悪化を抑制することができる。
【００５０】
（第２の実施形態）
図７は、本発明の第２の実施形態のシミュレーション装置の動作を示すフローチャートである。なお、本実施形態のシミュレーション装置の構成は、第１の実施形態のシミュレーション装置１０１の構成と同様であるため、説明を省略する。また、図７においては、図３と同様の処理については同じ符号を付し、説明を省略する。
【００５１】
実負荷情報生成部１０３は、回路変更処理部１０５が生成した非活性回路部分情報が示す非活性回路部分については寄生成分を生成せずに、非活性回路部分以外の回路部分を構成する素子間の配線部分の寄生成分を示す実負荷情報を生成する。（ステップＳ７１１）
バックアノテーション処理部１０４は、実負荷情報をプレレイアウトネットリストに反映させ、第２のネットリストとしてのポストレイアウトネットリストを生成する（ステップＳ３１３）。以下、図３と同様の処理により、非活性回路部分削除処理および断面処理が行われたシミュレーション用ポストレイアウトネットリストが生成され、そのシミュレーション用ポストレイアウトネットリストを用いてシミュレーションが行われる。
【００５２】
本実施形態のシミュレーション装置は、非活性回路部分の実負荷情報の生成を行わないことにより、実負荷情報生成における処理量を減少させる。一方で、ユーザによる非活性回路部分の追加指定等による非活性回路部分の変更があった場合、本実施形態のシミュレーション装置は、再度、実負荷情報生成を行う必要がある。
【００５３】
このように、本実施形態によれば、シミュレーション装置は、非活性回路部分の実負荷情報生成を行わない。
【００５４】
そのため、実負荷情報生成の処理量が削減される。
【００５５】
なお、本発明のシミュレーション装置にて行われる方法は、コンピュータに実行させるためのプログラムに適用してもよい。また、そのプログラムを記憶媒体に格納することも可能であり、ネットワークを介して外部に提供することも可能である。
【符号の説明】
【００５６】
１０１  シミュレーション装置
１０２  プレレイアウトネットリスト生成部
１０３  実負荷情報生成部
１０４  バックアノテーション処理部
１０５  回路変更処理部
１０６  シミュレーション実行部
２０１  回路
２０２  回路ブロック
２０３  ノード
４０１、４０２、５０１、５０２、６０１、６０２  回路ブロック
４０３  カップリング容量
４０４、６０４  対接地容量
５０３、６０３  入出力端子
５０４  電源
【図１】
2014149700.tif 000003
【図２】
2014149700.tif 000004
【図３】
2014149700.tif 000005
【図４】
2014149700.tif 000006
【図５】
2014149700.tif 000007
【図６】
2014149700.tif 000008
【図７】
2014149700.tif 000009