JP2004102772A - 設計検証装置 - Google Patents
設計検証装置 Download PDFInfo
- Publication number
- JP2004102772A JP2004102772A JP2002265251A JP2002265251A JP2004102772A JP 2004102772 A JP2004102772 A JP 2004102772A JP 2002265251 A JP2002265251 A JP 2002265251A JP 2002265251 A JP2002265251 A JP 2002265251A JP 2004102772 A JP2004102772 A JP 2004102772A
- Authority
- JP
- Japan
- Prior art keywords
- logic circuit
- unit
- layout
- reference information
- wiring
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/398—Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
【課題】論理回路とレイアウトとの比較時に、クロスリファレンス情報を生成し、最適な論理回路とレイアウトの対応情報の検索等を容易にする。
【解決手段】設計検証装置は、論理回路データとそのレイアウトパターンに関するレイアウトデータとを記憶した記憶部と、レイアウトデータに基づいて、素子の接続関係を認識する要素認識部と、比較検証部とを備える。比較検証部は、論理回路データに基づく論理回路の接続関係と、レイアウトの接続関係との対応を比較検証し、論理回路データ、および、接続関係の各々に基づいて、論理回路の複数の素子をマージし、各々マージされた複数の素子の接続関係の対応を比較検証する。さらに装置は、論理回路の接続関係に応じて、第1および第2の機能ユニットにおける複数の素子およびその配線の対応関係を規定したクロスリファレンス情報ファイルを生成する。
【選択図】 図1
【解決手段】設計検証装置は、論理回路データとそのレイアウトパターンに関するレイアウトデータとを記憶した記憶部と、レイアウトデータに基づいて、素子の接続関係を認識する要素認識部と、比較検証部とを備える。比較検証部は、論理回路データに基づく論理回路の接続関係と、レイアウトの接続関係との対応を比較検証し、論理回路データ、および、接続関係の各々に基づいて、論理回路の複数の素子をマージし、各々マージされた複数の素子の接続関係の対応を比較検証する。さらに装置は、論理回路の接続関係に応じて、第1および第2の機能ユニットにおける複数の素子およびその配線の対応関係を規定したクロスリファレンス情報ファイルを生成する。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は、半導体集積回路のコンピュータ支援設計に有用な、論理回路の動作を検証する装置に関する。より具体的には、本発明は、論理回路に対応するマスクレイアウトパターンデータを用いて、当該パターンの配線間に潜在的に存在する寄生素子の情報を抽出し、抽出した寄生素子情報を加味した上で論理回路の動作を検証する半導体設計検証装置に関する。
【0002】
【従来の技術】
図21〜図23は、バックアノテーションのための、従来の半導体設計検証装置の構成を示すブロック図である。バックアノテーションとは、実装設計で決定されたロケーション、実ピン名、または追加、削除された部品の情報を、論理回路図に反映させる処理をいう。部品のレイアウトが完了すると、実際の配線長を使って回路の遅延を見積ることができる。よって、レイアウトから抽出された遅延情報をゲートレベル・シミュレーションに反映させると、回路の正確な動作速度を判定できる。バックアノテーションは、所望の速度仕様を満足するような半導体装置を製作するために必要である。
【0003】
図21を参照して、従来の半導体設計検証装置は、論理・回路設計データを格納したデータベース1と、マスクレイアウトパターンデータを格納したデータベース2と、LVS比較部3と、ネットリスト生成部9と、レイアウト寄生素子付きネットリスト10と、解析部11とを有する。LVS比較部3は、レイアウトデータ2に基づいて認識された配線およびデバイスの接続関係と、論理回路データ1に基づいて認識された接続関係との対応関係を比較検証する。これを、LVS(Layout Versus Schematic)比較と称する。ネットリスト生成部9は、比較結果に基づいて、レイアウトに寄生する素子情報を抽出し、レイアウト寄生素子付きのネットリスト10を生成する。解析部11は、レイアウト寄生素子付きネットリスト10を用いて、レイアウトに寄生する素子情報を加味した論理回路の動作を検証・解析する。
【0004】
次に、図22は、パス選択型バックアノテーションのための半導体設計検証装置の構成を示すブロック図である。パス選択型バックアノテーションとは、レイアウト設計完了前などに実施するバックアノテーションであり、論理回路ネットリストを用いた、レイアウトから抽出した寄生素子情報を加味しない回路シミュレーションの結果に基づいて、シミュレーションに必要な部分回路に対応するレイアウト寄生素子情報のみを加味するバックアノテーションである。そのため、この半導体設計検証装置は、寄生素子情報を加味しない、論理回路データ1を用いた回路の動作検証を実行するプレレイアウトシミュレーション部14と、その結果を記述したノードリスト15とを新たに有する。また、半導体設計検証装置は、図21のネットリスト生成部9、レイアウト寄生素子付きネットリスト10、解析部11に代えて、パス選択型ネットリスト生成部18と、パス選択型ネットリスト19と、パス選択型解析部20とを有する。
【0005】
図23は、電源/GNDラインバックアノテーションのための半導体設計検証装置の構成を示すブロック図である。電源/GNDラインバックアノテーションとは、電源/GNDラインのレイアウト寄生素子情報のみを加味し、内部回路情報としては論理回路ベースのネットリストを用いるバックアノテーションである。この半導体設計検証装置は、図21のネットリスト生成部9、レイアウト寄生素子付きネットリスト10、解析部11に代えて、電源/GNDネットリスト生成部29と、電源/GNDレイアウト寄生素子付きネットリスト26と、電源/GND解析部27とを有する。
【0006】
【発明が解決しようとする課題】
従来の半導体設計検証装置は、バックアノテーションのための前処理を行っていたにもかかわらず、バックアノテーションが適切に行えないことがあった。例えば、従来の半導体設計検証装置がLVS比較を行い、論理回路とレイアウトとが論理等価と認識した場合、または、マージ処理されたデバイス群に含まれるデバイスおよびその数が、論理回路とレイアウトとで1対1に対応しない場合には、レイアウトのデバイスや配線が、対応する論理回路上でデバイス名や配線名の情報を持たないことがあった。このため、レイアウトベースの寄生素子情報付きネットリストを用いたバックアノテーション(図22)では、論理回路図から検索された波形入力/波形表示点、または、ブロック入出力点を指定できず、レイアウトデータ上での対応ポイントを探し出すのに手間取っていた。さらに、対応ポイントを誤って指定してしまう危険性もあった。
【0007】
図24を参照して、この問題をより具体的に説明する。図24は、適切なバックアノテーションが行えない場合の例を示す論理回路図である。タイミングエラー発生等により、図24の「×」で示すマークポイントの解析を行う場合を考える。例えば、矢印で示す2点については、”XIBUF|XIW<2>|XI22|MI40:GATE”、および、”XIBUF|XIW<2>|XI22|MI40:DRAIN”という名前が論理回路図から検索される。一方、レイアウトから抽出した寄生素子情報付きネットリストでは、構成素子の情報が、”NODE111:GATE”、”NODE111: DRAIN ”のような配線名で出力されている場合がある。これでは、”NODE111”がどのノードを表すのか、また、複数存在する”GATE”のうち、どれが対応する”GATE”であるかを判断できない。すなわち、ネットリスト上の対応ポイントを探すことができない。
【0008】
また、電源/GNDラインバックアノテーション(図23)においても、論理回路ベースの内部回路ネットリストと、レイアウトベースの寄生素子情報付き電源/GNDネットリストとの繋ぎの部分で不一致箇所が生じることがある。これでは、電圧降下およびエレクトロマイグレーションが発生する危険箇所を見落とす可能性がある。
【0009】
本発明の目的は、論理回路とレイアウトとの比較時(LVS比較時)に、スワップ情報を含むクロスリファレンス情報を生成し、最適な論理回路とレイアウトの対応に関する情報の検索・利用を容易にすることである。
【0010】
【課題を解決するための手段】
本発明による設計検証装置は、論理回路の素子および該素子間の配線に関する論理回路データ、および、該論理回路のレイアウトパターンに関するレイアウトデータを記憶した記憶部と、前記レイアウトデータに基づいて、素子の接続関係を認識する要素認識部と、前記論理回路データに基づく論理回路の接続関係と、要素認識部が認識したレイアウトの接続関係との対応を比較検証する比較検証部を備えている。比較検証部は、前記論理回路データに基づいて、前記論理回路の複数の素子を第1の機能ユニットとしてマージし、要素認識部が認識した前記接続関係に基づいて、前記論理回路の複数の素子を第2の機能ユニットとしてマージし、前記第1の機能ユニットにおけるマージされた複数の素子の第1の接続関係と、前記第2の機能ユニットにおけるマージされた複数の素子の第2の接続関係との対応を比較検証する。設計検証装置は、さらに前記論理回路の接続関係に応じて、前記第1の機能ユニットにおける前記複数の素子およびその配線、および、前記第2の機能ユニットにおける前記複数の素子およびその配線の対応関係を規定したクロスリファレンス情報を生成するクロスリファレンス情報ファイル化部を備えている。これにより上記目的が達成される。
【0011】
クロスリファレンス情報ファイル化部は、パラレル接続された前記論理回路のクロスリファレンス情報を生成してもよい。
【0012】
クロスリファレンス情報ファイル化部は、シリアル接続された前記論理回路のクロスリファレンス情報を生成してもよい。
【0013】
クロスリファレンス情報ファイル化部は、パラレル接続とシリアル接続とが混在する前記論理回路のクロスリファレンス情報を生成してもよい。
【0014】
比較検証部は、前記論理回路が、複数の素子を互いに入れ替えても論理等価であるか否かをさらに判断し、論理等価である場合には、クロスリファレンス情報ファイル化部は、論理等価と判断された素子群が交換可能であることを示すクロスリファレンス情報を生成してもよい。
【0015】
設計検証装置は、クロスリファレンス情報ファイル化部が生成した前記クロスリファレンス情報に基づいて、前記論理回路の素子または配線と、前記レイアウトパターンの素子または配線との対応を検索する検索部をさらに備えている。素子が、ゲート端子、ソース端子、およびドレイン端子を含むトランジスタである場合に、検索部は、該トランジスタのゲート端子の接続関係を基準として、前記対応を検してもよい。
【0016】
設計検証装置は、クロスリファレンス情報ファイル化部が生成した前記クロスリファレンス情報に基づいて、前記論理回路の素子または配線と、前記レイアウトパターンの素子または配線との対応を検索する検索部をさらに備えている。素子が、ゲート端子、ソース端子、およびドレイン端子を含むトランジスタである場合に、該検索部は、該トランジスタのソース端子およびドレイン端子の接続関係を基準として、前記対応を検索してもよい。
【0017】
設計検証装置は、記憶部に記憶された前記論理回路データに基づいて、前記論理回路に所定の電圧を印加したときの各ノードの電位の変化をシミュレーションするシミュレーション部を備えていてもよい。シミュレーション部は、シミュレーションの結果得られた、電位の変化が無かった前記論理回路のノードを特定する第1のノードリストを生成する。また設計検証装置は、シミュレーション部が生成した前記第1のノードリスト、および、記憶部に記憶された前記レイアウトデータに基づいて、前記論理回路の電位の変化がなかったノードに対応する前記レイアウトパターンのノードを特定し、前記第1のノードリストを、特定された前記レイアウトパターンのノードをさらに追加した第2のノードリストに変換するノードリスト変換部をさらに備えていてもよい。
【0018】
シミュレーション部は、シミュレーションの結果得られた、電位の変化があった前記論理回路のノードを特定する第3のノードリストを生成してもよい。ノードリスト変換部は、シミュレーション部が生成した前記第3のノードリスト、および、記憶部に記憶された前記レイアウトデータに基づいて、前記論理回路の電位の変化があったノードに対応する前記レイアウトパターンのノードを特定し、前記第3のノードリストを、特定された前記レイアウトパターンのノードをさらに追加した第4のノードリストに変換してもよい。
【0019】
設計検証装置は、比較検証部による比較検証の結果、および、前記第4のノードリストに基づいて、論理回路の一部分である部分回路に対応するレイアウトパターンの寄生素子に関する情報を抽出して、該寄生素子に関する情報を、レイアウトパターン内の素子および配線の情報に付加したレイアウトネットリストを生成するネットリスト生成部をさらに備えていてもよい。
【0020】
前記論理回路データは、論理回路内の素子および配線に関する情報を記述した論理回路ネットリストである。設計検証装置は、クロスリファレンス情報ファイル化部が生成した前記クロスリファレンス情報、および、前記論理回路ネットリストに基づいて、前記論理回路と前記レイアウトとの対応を検索する検索部と、比較検証部による比較検証の結果に基づいて、電源から接地に至る配線レイアウトに対応するレイアウトパターンの寄生素子に関する情報を抽出して、該寄生素子に関する情報を、レイアウトパターン内の素子および配線の情報に付加したレイアウトネットリストを生成するネットリスト生成部をさらに備えていてもよい。
【0021】
【発明の実施の形態】
以下、添付の図面を参照して、本発明の実施の形態を説明する。本明細書では、論理回路の動作を検証する半導体設計検証装置を説明する。より詳しくは、半導体設計検証装置は、論理回路に対応するマスクレイアウトパターンデータを用いて、当該パターンの配線間に潜在的に存在する寄生素子の情報を抽出し、抽出した寄生素子情報を加味した上で論理回路の動作を検証する。以下の実施の形態では、半導体設計検証装置を単に「設計検証装置」と称する。図において、同一または類似の機能を有する構成要素には、同一の参照符号を付している。
【0022】
(実施の形態1)
図1は、実施の形態1の設計検証装置100の構成を示すブロック図である。設計検証装置100は、論理・回路設計データを格納したデータベース1と、マスクレイアウトパターンデータを格納したデータベース2と、LVS比較部3と、パラレルデバイス/シリアルデバイス/パラレルシリアルデバイス/論理等価デバイスのクロスリファレンス情報ファイル化部4〜7と、論理回路対レイアウトに関するクロスリファレンス情報ファイル8と、ネットリスト生成部9と、レイアウト寄生素子付きネットリスト10と、解析部11とを有する。本明細書では、データベース1に含まれる情報を、「論理回路データ1」と称する。また、データベース2に含まれる情報を、「レイアウトデータ2」と称する。なお、データベース1および2は、説明の便宜上、別々に設けているが、単一の記憶装置内に設けられていてもよい。
【0023】
以下、各構成要素の機能および動作を説明する。論理回路データ1は、論理回路の構成素子および構成素子間の接続に基づいて生成されたデータである。本明細書では、例えば、論理回路データ1は論理回路ネットリストデータであるとして説明するが。レイアウトデータ2は、電源電位、接地電位等が与えられる位置、接続関係の全レイアウトを、所定のフォーマットにより表現したデータである。論理回路データ1およびレイアウトデータ2については、図2を参照して後述する。
【0024】
LVS比較部3は、レイアウトデータ2に基づいて認識された配線およびデバイスの接続関係と、論理回路データ1に基づいて認識された接続関係との対応関係を比較検証する。これは、作成されたレイアウトが、論理回路と同じ接続関係を持つか否かを検証するためである。この機能を、LVS(Layout Versus Schematic)機能という。LVS比較部3は、レイアウトの構造を記述する際の表記を定義したLVSルールを格納するデータベース31(以下、「LVSルール31」と称する)と、要素認識部32と、比較検証部33とを有する。要素認識部32は、LVSルール31およびレイアウトデータ2に基づいて、レイアウトデータ2により示される配線・デバイスを認識する。要素認識部32は、認識したレイアウト内の配線・デバイスの情報を記述したレイアウトネットリストを出力する。比較検証部33は、論理回路データ1の論理・回路設計データと、要素認識部32から出力されたレイアウトネットリストとに基づいて、配線とデバイスの接続関係を比較し、対応関係を検証する。この比較および検証は、周知のLVSを用いて行われる。
【0025】
続いて、設計検証装置100のパラレルデバイス・クロスリファレンス情報ファイル化部4は、LVS比較部3が独自の基準でマージした、パラレルマージデバイス群のクロスリファレンス情報をファイル化する。クロスリファレンス情報は、クロスリファレンス情報ファイル化部4〜7により生成される、論理回路とレイアウトとの対応関係を規定したデータある。より詳しくは後述する。他のクロスリファレンス情報ファイル化部5および6も同様に、LVS比較部3が独自の基準でマージした、シリアルマージデバイス群/パラレルおよびシリアルの複合型マージデバイス群のクロスリファレンス情報をファイル化する。一方、論理等価デバイス・クロスリファレンス情報ファイル化部7は、LVS比較部3が論理等価と認識したデバイス群のスワップ情報を含めたクロスリファレンス情報をファイル化する。
【0026】
ネットリスト生成部9は、LVS比較部3による比較結果、および、クロスリファレンス情報ファイル8に基づいて、レイアウトに寄生する素子情報を抽出し、レイアウト寄生素子情報付きネットリスト10を生成する。ここで、レイアウトに「寄生する素子」とは、レイアウトされた配線間に潜在的に存在する、意識的に配置していない容量等の回路要素をいう。生成したレイアウト寄生素子付きネットリスト10は、ハードディスク等の所定の記憶媒体に格納される。解析部11は、クロスリファレンス情報ファイル8、および、レイアウト寄生素子付きネットリスト10を用いて、レイアウトに寄生する素子情報を加味した論理回路の動作を検証・解析する。
【0027】
図2は、論理回路データ1、レイアウトデータ2およびLVS比較部3のより具体的な例を示す図である。「論理回路」として示す、NAND回路とNOT回路とからなる回路は、図に示すような「論理回路ネットリスト」として表現される。論理回路ネットリストは、論理回路内の配線およびデバイスの情報を記述したASCII形式のリストであり、CDLフォーマットや、SPICEフォーマット等が知られている。論理回路データ1(図1)は、このような論理回路ネットリストである。
【0028】
一方、「レイアウト」として示す、論理回路に対応する具体的なレイアウトは、マスクレイアウトパターンとして表現される。マスクレイアウトパターンは、位置、接続関係の全レイアウト等の、レイアウトに関する全情報を所定のフォーマット、例えばバイナリ形式のGDSIIフォーマットで表されている(バイナリ形式であるため、データの具体例は明示していないが、LVS比較部3においては、その内容を解読可能である)。レイアウトデータ2(図1)は、このようなマスクレイアウトパターンデータである。
【0029】
「LVSルールファイル」として示されているのは、LVSルール31(図1)に格納された、レイアウトの構造を記述する際の表記を定義したデータファイルの内容の例である。
【0030】
要素認識部32は、GDSIIフォーマットファイルのマスクレイアウトパターンと、LVSルールファイルのLVSルールとに基づいて、レイアウトネットリストを生成する。例えば、[CELL INV {PORT 3 4}]の下4行は、論理回路のインバータ要素を記述し、[CELL NAND2 {PORT 3 4 5}]の下8行は、論理回路のNAND要素を記述する。そして[CELL TOP_CELL {PORT E A B}]の下2行は、論理回路全体の入出力関係を示す。
【0031】
比較検証部33は、要素認識部32が生成したレイアウトネットリストと、論理回路ネットリストとに基づいて、LVSを用いて配線とデバイスの接続関係を比較し、対応関係を検証する。
【0032】
次に、図3〜図12を参照して、ファイル化部4〜7(図1)の動作を説明する。まず最初に、パラレルデバイス・クロスリファレンス情報ファイル化部4(図1)から説明する。
【0033】
ファイル化部4(図1)は、比較検証部33から、LVS比較の際に生成したマージされた論理回路ネットリスト、および、レイアウトネットリストを受け取り、クロスリファレンス情報を生成する。クロスリファレンス情報とは、複数のデバイスを1つの機能ユニットとして捉えた場合、すなわち、複数のデバイスを1つにマージしたとして取り扱う場合に、論理回路ネットリストのデバイスおよび配線、および、レイアウトネットリストのデバイスおよび配線の対応関係を規定する。なお、ファイル化部4(図1)は、パラレル接続されたデバイスのクロスリファレンス情報を生成することから、パラレル接続以外の接続、例えば、シリアル接続の場合には、クロスリファレンス情報ファイルを生成できない。この場合は、受け取ったネットリスト等をそのまま後段のファイル化部5(図1)に送る。以下の説明では、いずれのファイル化部4〜7も、比較検証部33からマージされた論理回路ネットリスト、および、レイアウトネットリストを受け取るとして説明する。
【0034】
図3は、複数のデバイスがパラレル接続により構成された論理回路およびレイアウトの例を示す図である。論理回路は、入力をSA、出力をOUTとする3つのデバイスSMA,SMB,SMCを含む。LVS比較部3は、比較検証部33(図1)におけるLVS比較検証時にこれら3つのデバイスSMA,SMB,SMCをマージ処理し、最も単純化して論理回路ネットリストを取り扱う。この例では、LVS比較部3は、論理回路ネットリストを、入力をSA、出力をOUTとする1つの機能ボックス38として取り扱う。なお、与えられた論理回路、レイアウトが直列(シリアル)接続か、パラレル(並列)接続かを判断する場合には、例えば、OUTからGNDまでに至る経路に基づいて判断することができる。すなわち、OUTからGNDまでに、デバイスが連続して配置されている場合にはシリアル接続であると判断でき、複数の経路が存在する場合には、パラレル接続であると判断できる。ファイル化部4(図1)は、以下のように表現されたボックス38の情報を受け取る。
{INST ParaChain#1=N||3 {PIN GND=SD#0 OUT=SD#1 SA=G#0 GND=BULK}}
そしてファイル化部4(図1)は、ボックス38を表す情報として、
ParaChain#1 {inst SMA=N} {inst SMB=N} {inst SMC=N}
も併せて保持する。
【0035】
一方、レイアウトについても同様に、LVS比較部3は、最も単純化してレイアウトネットリストを取り扱う。この例では、LVS比較部3は、比較検証部33(図1)におけるLVS比較検証時に、デバイスLM1およびLM2をマージ処理し、入力をLA、出力をOUTとする1つの機能ボックス39としてレイアウトネットリストを取り扱う。これにより、1つの機能ボックスにマージすることにより、論理回路とレイアウトとの対応を取ることができる。このボックス39は、以下のように表現され、ファイル化部4(図1)は、この情報を受け取る。
{INST ParaChain#8=N||2 {PIN GND=SD#0 OUT=SD#1 LA=G#0 GND=BULK}}
そしてファイル化部4(図1)は、ボックス39を表す情報として、
も併せて保持する。
【0036】
ファイル化部4(図1)は、上述したボックス38および39の各々を特定する情報に基づいて、以下のように処理を行う。すなわち、周辺の接続関係の比較により、論理回路ネットの入力SAは、レイアウトの入力LAに対応すると判断する。このとき、論理回路のParaChain#1と、レイアウトのParaChain#8 とは、ピンがすべて一致するため、ParaChain#1== ParaChain#8 (一致)と判断できる。この時点で、ParaChain#1== ParaChain#8、および、SA==LA が得られている。
【0037】
次に、ファイル化部4(図1)は、これらの情報および各ネットリストに基づいて、論理回路とレイアウトで対応するパラレルデバイスの数が複数対複数(この例では3対2)であると判断する。そこで、ファイル化部4(図1)は、論理回路の1つのデバイス名を代表名として出力する。どのデバイス名を採用するかは任意である。
【0038】
図4は、ファイル化部4(図1)が出力したクロスリファレンス情報ファイルを示す図である。図4中の「−−Merge Device−−」の欄に、論理回路の3つのデバイス名(SMA,SMB,SMC)と、代表名(SMA)とが示されている。代表名が決まると、次に、レイアウトにおけるデバイスに、名称を付す。名称は、”代表名@xx”という形式である。このxxには、MOSデバイスである場合には、”M”を付した数字が入る。図3および図4の例では、「SMA@M1」、および、「SMA@M2」が付される。図4中の「−−Correspond−−」の欄には、レイアウトの「LM1」には、「SMA@M1」が対応付けられ、「LM2」には「SMA@M2」が対応付けられていることが理解される。このようにして、ファイル化部4(図1)は、論理回路とレイアウト間の対応表を生成する。
【0039】
ファイル化部4(図1)が生成したクロスリファレンス情報は、残りのファイル化部5〜7を経てクロスリファレンス情報ファイル8に格納され、ネットリスト生成部9、または、解析部11等における後の処理に使用される。例えば、ネットリスト生成部9、または、解析部11において、図3に示す論理回路のデバイス「SMB」に対応するレイアウトのデバイス名が必要な場合を考える。すると、ネットリスト生成部9等は、図4に示すクロスリファレンス情報ファイル中の「−−Merge Device−−」以下より、「SMB」は「SMA」にマージされているという情報を引き出す。そして次に「−−Correspond−−」以下の「Device name」を参照して、「LM1」および「LM2」という2つのレイアウトデバイスに対応しているという情報を引き出す。以上のようにして、「SMB」に対応するレイアウトのデバイス名「LM1」および「LM2」が得られる。
【0040】
次に、図5および図6を参照して、シリアルデバイス・クロスリファレンス情報ファイル化部5(図1)の動作を説明する。図5は、複数のデバイスがシリアル接続により構成された論理回路およびレイアウトの例を示す図である。論理回路は、入力をSA、出力をOUTとする2つのデバイスSMA,SMBと、中間配線SNETAとを含む。LVS比較部3は、比較検証部33(図1)におけるLVS比較検証時にこれら2つのデバイスSMA,SMBをマージ処理し、入力をSA、出力をOUTとする、点線で囲まれた1つの機能ボックスとして論理回路ネットリストを取り扱う。ファイル化部5(図1)は、以下のように表現されたこの機能ボックスの情報を受け取る。
{INST SeriChain#1=N−−2 {PIN GND=SD#0 OUT=SD#1 SA=G#0 GND=BULK}}
そしてファイル化部4(図1)は、機能ボックスを表す情報として、
SeriChain#1 {inst SMB=N} {inst SMA=N}
も併せて保持する。
【0041】
一方、レイアウトについても同様に、LVS比較部3は、比較検証部33(図1)におけるLVS比較検証時に、デバイスLM1〜LM3をマージ処理し、入力をLA、出力をOUTとする、点線で囲まれた1つの機能ボックスとしてレイアウトネットリストを取り扱う。ファイル化部5(図1)は、以下のように表現されたこの機能ボックスの情報を受け取る。
{INST SeriChain#8=N−−3 {PIN GND=SD#0 OUT=SD#1 LA=G#0 GND=BULK}}
そしてファイル化部4(図1)は、ボックスを表す情報として、
も併せて保持する。
【0042】
ファイル化部5(図1)は、上述したボックスの各々を特定する情報に基づいて、以下のように処理を行う。すなわち、周辺の接続関係の比較により、論理回路ネットの入力SAは、レイアウトの入力LAに対応すると判断する。このとき、論理回路のSeriChain#1と、レイアウトのSeriChain#8 とは、ピンがすべて一致するため、SeriChain#1==SeriChain#8(一致)と判断できる。この時点で、SeriChain#1== SeriChain#8、および、SA==LA が得られている。
【0043】
ファイル化部5(図1)は、これらの情報および各ネットリストに基づいて、論理回路とレイアウトで対応するシリアルデバイスの数が複数対複数(この例では2対3)であると判断できる。そこで、ファイル化部5(図1)は、論理回路の1つのデバイス名を代表名として出力する。どのデバイス名を採用するかは任意である。
【0044】
図6は、ファイル化部5(図1)が出力したクロスリファレンス情報ファイルを示す図である。図6中の「−−Merge Device−−」の欄に、論理回路の2つのデバイス名(SMA,SMB)と、代表名(SMA)とが示されている。以下の処理は、ファイル化部5(図1)における処理と同様である。すなわち、代表名が決まると、次に、レイアウトにおけるデバイスに、”代表名@xx”という形式で名称を付す。このxxには、先のファイル化部4(図1)についての説明と同様、MOSデバイスである場合には、M1、M2等が入る。図5および図6の例では、「SMA@M1」、「SMA@M2」および「SMA@M3」が付される。図6中の「−−Correspond−−」の欄には、レイアウトの「LM1」には、「SMA@M1」が対応付けられ、「LM2」には「SMA@M2」が対応付けられ、「LM3」には「SMA@M3」が対応付けられていることを示す。さらに、レイアウトの中間配線「LN_1」および「LN_2」には、中間配線名「SNETA」に「@1」、「@2」を付加して出力側から対応させる。このようにして、ファイル化部5(図1)は、論理回路とレイアウト間の対応表を生成する。
【0045】
ファイル化部5(図1)が生成したクロスリファレンス情報は、残りのファイル化部6および7を経てクロスリファレンス情報ファイル8に格納され、ネットリスト生成部9、または、解析部11等における後の処理に使用される。例えば、ネットリスト生成部9、または、解析部11において、図5に示す論理回路の配線「SNETA」に対応するレイアウトの配線名が必要な場合を考える。すると、ネットリスト生成部9等は、図6に示すクロスリファレンス情報ファイル中の「−−Correspond−−」以下の「Net name」を参照して、「SNETA」が付された配線を特定する。すなわち、論理回路の配線「SNETA」が、「LN_1」および「LN_2」という2つのレイアウト配線に対応しているという情報を引き出す。以上のようにして、「SNETA」に対応するレイアウトの配線名「LN_1」および「LN_2」が得られる。
【0046】
次に、図7および図8を参照して、パラレルシリアルデバイス・クロスリファレンス情報ファイル化部6(図1)の動作を説明する。ファイル化部6が動作するのは、ファイル化部4および5によっては、ともにクロスリファレンス情報が生成できなかった場合である。図7は、複数のデバイスがパラレル接続、および、シリアル接続により構成された論理回路およびレイアウトの例を示す図である。論理回路は、入力をSA、SB、SC、出力をOUTとする3つのデバイスSMA,SMB、SMCと、中間配線SNETA、SNETBとを含む。LVS比較部3は、比較検証部33(図1)におけるLVS比較検証時にこれら3つのデバイスSMA,SMB,SMCをマージ処理し、入力をSA、SB、SC、出力をOUTとする、点線で囲まれた1つの機能ボックスとして論理回路ネットリストを取り扱う。ファイル化部6(図1)は、以下のように表現されたボックスの情報を受け取る。
{INST SeriChain#2=N−−3 {PIN GND=SD#0 OUT=SD#1 SC=G#0 SB=G#1 SC=G#2 GND=BULK}}
ファイル化部6(図1)はさらに、機能ボックスを表す情報として、
SeriChain#2 {inst SMC=N} {inst SMB=N} {inst SMA=N}
も併せて保持する。
【0047】
一方、レイアウトについても同様に、LVS比較部3は、比較検証部33(図1)におけるLVS比較検証時に、デバイスLM1〜LM6をマージ処理し、入力をLA、LB、LC、出力をOUTとする、点線で囲まれた1つの機能ボックスとしてレイアウトネットリストを取り扱う。ファイル化部6(図1)は、以下のように表現されたこの機能ボックスの情報を受け取る。
{INST SeriChain#8=N−−3 {PIN GND=SD#0 OUT=SD#1 LA=G#0 GND=BULK}}
そしてファイル化部4(図1)は、点線で囲まれたボックスを表す情報として、
も併せて保持する。さらに、並列接続された、LM1〜3の直列接続トランジスタ群と、LM4〜6の並列接続トランジスタ群とが1つにマージされ、ボックスを表す情報はさらに以下を含む。
比較検証部33がLVSによる比較・検証を行う際に、以下のように表現されたレイアウトネットリストが利用され、ファイル化部6(図1)は、この情報も併せて保持する。
{INST ParaChain#37=N||2 {PIN GND=SD#0 OUT=SD#1 LC=G#0 LB=G#1 LA=G#2 GND=BULK}}
ファイル化部6(図1)は、上述したボックスの各々を特定する情報に基づいて、以下のように処理を行う。すなわち、周辺の接続関係の比較により、論理回路ネットの入力SAが、レイアウトの入力LAに、同様にSBがLBに、SCはLCに対応すると判断する。このとき、論理回路のSeriChain#2と、レイアウトのParaChain#37 とは、ピンがすべて一致するため、SeriChain#2==ParaChain#37(一致)と判断できる。この時点で、以下の4つの情報が得られている。すなわちSeriChain#2==ParaChain#37、および、SA==LA, SB==LB, SC==LCが得られている。
【0048】
ファイル化部6(図1)は、上述の情報および各ネットリストに基づいて、論理回路ネットリストおよびレイアウトの各々について、ゲート配線名がSA/LAで、かつ、出力OUTから見て1つ目のデバイスに着目する。その結果、ファイル化部6(図1)は、論理回路ではSMAのみが該当するが、レイアウトにはLM1およびLM4の2つが該当すると判断する。同様に、ファイル化部6(図1)は、ゲート配線名がSB/LBで、かつ、出力OUTから見て2つ目のデバイス、および、3つ目のデバイスに順に着目する。その結果、論理回路デバイスのSMBに対してレイアウトのLM2とLM5が該当し、論理回路デバイスのSMCに対してレイアウトのLM3とLM6が該当すると判断する。ファイル化部6(図1)は、以上の結果をクロスリファレンス情報ファイルに出力する。
【0049】
図8は、ファイル化部6(図1)が出力したクロスリファレンス情報ファイルを示す図である。レイアウトの「LM1」および「LM4」には、「SMA@M1」および「SMA@M2」が対応付けられている。また、レイアウトの「LM2」および「LM5」には、「SMB@M1」および「SMB@M2」が対応付けられ、レイアウトの「LM3」および「LM6」には、「SMC@M1」および「SMC@M2」が対応付けられている。さらに、クロスリファレンス情報ファイルには、論理回路の中間配線とレイアウトの中間配線の対応関係も示されている。すなわち、出力OUTに近い側の論理回路の配線「SNETA」が、出力OUTに近い側のレイアウトの配線「LN_1」と「LN_3」に対応する。よって、「LN_1」および「LN_3」には、「SNETA@1」および「SNETA@2」が対応付けられている。同様に、論理回路の配線「SNETB」は、レイアウトの配線「LN_2」と「LN_4」に対応する。よって、「LN_2」および「LN_4」には、「SNETB@1」および「SNETB@2」対応付けられる。このようにして、ファイル化部6(図1)は、論理回路とレイアウト間の対応表を生成する。
【0050】
ファイル化部6(図1)が生成したクロスリファレンス情報は、残りのファイル化部7を経てクロスリファレンス情報ファイル8に格納され、ネットリスト生成部9、または、解析部11等における後の処理に使用される。例えば、ネットリスト生成部9、または、解析部11において、図7に示す論理回路の配線「SNETA」に対応するレイアウトの配線名が必要な場合を考える。すると、ネットリスト生成部9等は、図8に示すクロスリファレンス情報ファイル中の「−−Correspond−−」以下の「Net name」を参照して、「SNETA」が付された配線を特定する。すなわち、論理回路の配線「SNETA」が、「LN_1」および「LN_3」という2つのレイアウト配線に対応しているという情報を引き出す。以上のようにして、「SNETA」に対応するレイアウトの配線名「LN_1」および「LN_3」が得られる。
【0051】
次に、図9および図10を参照して、論理等価デバイス・クロスリファレンス情報ファイル化部7(図1)の動作を説明する。
【0052】
図9は、複数のデバイスがシリアル接続により構成された論理回路およびレイアウトの例を示す図である。論理回路の入力は、出力OUTに近い方からSA,SB,SCであるのに対して、レイアウトの入力は、出力OUTに近い方からLC,LA,LBである。よって、SAとLA、SBとLB、SCとLCのように、同じ符号(A,B,C)を対応させることはできない。
【0053】
まず、このような論理回路とレイアウトが入力されたときに、LVS比較部3は、比較検証部33(図1)におけるLVS比較検証時に、論理回路の3つのデバイスSMA,SMB,SMCをマージ処理し、入力をSA、SB、SC、出力をOUTとする、点線で囲まれた1つの機能ボックスとして論理回路ネットリストを取り扱う。このとき、LVS比較部3は、入力SA,SB,SCの並び順が、論理に無関係であると判断する。その理由は、下記表1に示すように、出力OUTは、SA,SB,SCがすべて1のときに接地電位(GND)になり、その他の場合には、SA、SB、SCの値によらず一定値(1.8V)になるからである。
【0054】
【表1】
【0055】
その結果、論理回路ネットリストは以下のように表現され、ファイル化部7(図1)は、この情報を受け取る。
{INST SeriChain#4=N−−3{PIN GND=SD#0 OUT=SD#1 SC=G#s0 SB=G#s1 SC=G#s2 GND=BULK}}
ここで、「SC=G#s0」、「SC=G#s1」、「SC=G#s2」における小文字「s」は、互いに入れ替え可能(swappable)であることを示す。より具体的には、SCは、GNDから見て1つ目のゲートであるが、「G#s1」に対応する「SB」、または、「G#s2」に対応する「SA」と入れ替え可能である。
【0056】
ファイル化部7(図1)はさらに、点線で囲まれた機能ボックスを表す情報として、
SeriChain#4 {inst SMC=N} {inst SMB=N} {inst SMA=N}
も併せて保持する。
【0057】
レイアウトについても、論理回路と同様の理由により、入力LA、LB、LCの並び順は論理に無関係である。よって、レイアウトネットリストは以下のように表現され、ファイル化部7(図1)は、この情報を受け取る。
{INST SeriChain#14=N−−3{PIN GND=SD#0 OUT=SD#1 LB=G#s0 LA=G#s1 LC=G#s2 GND=BULK}}
ファイル化部7(図1)はさらに、点線で囲まれた機能ボックスを表す情報として、
も併せて保持する。
【0058】
ファイル化部7(図1)は、上述したボックスの各々を特定する情報に基づいて、以下のように処理を行う。すなわち、周辺の接続関係の比較により、論理回路ネットの入力SAが、レイアウトの入力LAに、同様にSBがLBに、SCはLCに対応すると判断する。このとき、論理回路のSeriChain#4と、レイアウトのSeriChain#14 とは、ピンがすべて一致するため、SeriChain#4==SeriChain#14(一致)と判断できる。この時点で、以下の4つの情報が得られている。すなわちSeriChain#4==SeriChain#14、および、SA==LA, SB==LB, SC==LCが得られている。
【0059】
ファイル化部7(図1)は、上述の情報および各ネットリストに基づいて、論理回路ネットリストおよびレイアウトの対応関係を記述したクロスリファレンス情報を生成する。
【0060】
ファイル化部7(図1)は、2種類の基準に基づいてクロスリファレンス情報を生成する。すなわち、ゲート端子の接続位置による基準と、ソース端子またはドレイン端子の接続位置による基準である。
【0061】
ゲート端子の接続位置による基準に基づく場合には、ファイル化部7(図1)は、図9におけるレイアウトデバイス「LM1」のゲート「LC」を、論理回路のゲート「SC」に対応させる。同様に、レイアウトのゲート「LA」を、論理回路のゲート「SA」に対応させ、レイアウトのゲート「LB」を、論理回路のゲート「SB」に対応させる。図10は、ファイル化部7(図1)が出力したクロスリファレンス情報ファイルを示す図である。ゲート端子の接続位置による基準を用いて得られたクロスリファレンス情報は、「−−Gate based Correspond−−」に示されている。この基準によれば、レイアウトの「LM1」、「LM2」、「LM3」は、それぞれ論理回路の「SMC」、「SMA」、「SMB」に対応付けられる。また、レイアウトの中間配線「LN_1」、「LN_2」は、論理回路の「SNETA」、「SNETB」に対応付けられる。
【0062】
再び図9を参照して、ソース/ドレイン端子の接続位置による基準に基づく場合には、ファイル化部7(図1)は、レイアウトデバイス「LM1」のドレイン配線は「OUT」であるから、論理回路では、ドレイン配線が「OUT」である「SMA」を、レイアウトの「LM1」に対応付ける。同様に、レイアウトの「LM3」を、論理回路の「SMC」に対応させ、レイアウトの「LM2」を、論理回路の「SMB」に対応させる。この結果、図10の「−−S/D based Correspond−−」以下には、この対応関係が示されている。この基準によれば、レイアウトの「LA」、「LB」、「LC」は、それぞれ論理回路の「SA」、「SB」、「SC」に対応付けられる。また、レイアウトの中間配線「LN_1」、「LN_2」は、論理回路の「SNETA」、「SNETB」に対応付けられる。また、レイアウトの中間配線「LN_1」、「LN_2」は、論理回路の「SNETA」、「SNETB」に対応付けられる。またファイル化部7(図1)は、入れ替えても論理が同じであるデバイスおよび配線の情報、すなわち、上述した「SC=G#s0」、「SC=G#s1」等、小文字の「s」が付された端子およびデバイスを抽出し、「Swappable」以下に追加する。
【0063】
ファイル化部7(図1)が生成したクロスリファレンス情報は、クロスリファレンス情報ファイル8に格納され、ネットリスト生成部9、または、解析部11等における後の処理に使用される。例えば、ネットリスト生成部9、または、解析部11において、図9に示す論理回路のデバイス「SMB」に対応するレイアウトのデバイス名が必要な場合を考える。ゲート端子の接続位置による基準でレイアウトのデバイス名を得たい場合には、ネットリスト生成部9等は、図10に示すクロスリファレンス情報ファイル中の「−−Gate based Correspond−−」以下の「Device name」を参照して、「LM3」を特定する。また、ソース/ドレイン端子の接続位置による基準でレイアウトのデバイス名を得たい場合には、ネットリスト生成部9等は、図10に示すクロスリファレンス情報ファイル中の「−−S/D based Correspond−−」から、「LM2」を特定する。以上のようにして、論理回路の各デバイスに対応するレイアウトのデバイス名が得られる。
【0064】
以上説明したように、ファイル化部4〜7が生成するクロスリファレンス情報は、ブロック内部の素子、中間配線等の全ての要素に対して論理回路とレイアウトとの対応を特定できる。ネットリスト生成部9、解析部11等は、レイアウトに寄生する素子情報を加味した論理回路の動作を検証・解析するバックアノテーション時に、これらのクロスリファレンス情報を参照することにより、より詳細な解析が可能であり、また、指定したパスのみの解析が可能になる。すなわち、ネットリスト生成部9、解析部11等は、論理回路とレイアウトの配線名やデバイス名の対応を容易に認識でき、論理回路図面上の名称で配線名やデバイス名を指定できるようになる。よって、対応関係の認識効率を向上させ、かつ、認識ミスを削減できる。
【0065】
なお、ファイル化部4および5(図1)の順序は、入れ替えることができる。ファイル化部6は、ファイル化部4および5の両方において処理できなかった場合に、その論理回路およびレイアウトのデータを受け取ればよい。
【0066】
(実施の形態2)
実施の形態2では、実施の形態1の設計検証装置に、さらに別の構成要素を加えた設計検証装置を説明する。
【0067】
図11は、実施の形態2の設計検証装置200の構成を示すブロック図である。設計検証装置200は、設計検証装置100(図1)に、さらにゲート端子基準検索/修正部12を追加して構成されている。本実施の形態では、ゲート端子基準検索/修正部12、および、これに関連する他の構成要素のみを説明する。直接的に関連しない構成要素の機能および動作は、実施の形態1の設計検証装置100(図1)の構成要素と同じであるので、その説明は省略する。なお図11では、LVS比較部3に含まれる構成要素は記載していないが、図1に示すLVS比較部3の各構成要素を有する。
【0068】
ゲート端子基準検索/修正部12は、クロスリファレンス情報ファイル8を受け取り、トランジスタのゲート端子の接続関係に基づいて、論理回路とレイアウトの対応情報を検索・修正する。以下、図12の(a)〜(c)を参照して具体的に説明する。
【0069】
図12の(a)は、論理回路およびレイアウトを示す図である。図12の(b)は、論理等価デバイス・クロスリファレンス情報ファイル化部7(図11)が、(a)の論理回路およびレイアウトから作成したクロスリファレンス情報ファイルを示す図である。ゲート端子基準検索/修正部12(図11)は、クロスリファレンス情報ファイルを受け取って、それに含まれている「−−Gate based Correspond−−」以下に記述されている対応表を検索する。また、ゲート端子基準検索/修正部12は、ネットリスト生成部9からレイアウト寄生素子付きネットリストを受け取る。検索の結果に基づいて、ゲート端子基準検索/修正部12は、受け取ったレイアウト寄生素子付きネットリストを修正して、デバイス名を、GND側からSMB,SMA,SMCの順に並べ、ゲート配線名が、SB、SA,SCの順に並べ、そして、中間配線名がSNETA@2,SNETA@1の順になるように並べる。
【0070】
さらに、例えば論理回路の中間配線「SNETA」が、寄生素子に関する抽出および出力指定配線となっている場合には、ゲート端子基準対応修正部12は、さらに、クロスリファレンス情報ファイルの「−−Gate based Correspond−−」以下に記述されている対応表を検索する。そして、「SNETA」に対応するレイアウト配線「LN_1」、「LN_2」についてもレイアウト寄生素子情報を抽出する。そして、その寄生素子情報をレイアウト寄生素子付きネットリストに追加する。図12の(c)は、トランジスタのゲート端子を基準にした情報検索結果を示す。
【0071】
以上により、本実施の形態によれば、トランジスタのゲート端子の接続関係を基準にして、論理回路との対応が自動かつ完全にとられたバックアノテーションが可能となる。
【0072】
(実施の形態3)
実施の形態3は、実施の形態2の変形例を説明する。すなわち実施の形態3では、実施の形態2で説明したゲート端子基準検索/修正部12(図11)に代えて、ソースドレイン端子基準検索/修正部13を設けた設計検証装置を説明する。
【0073】
図13は、実施の形態3の設計検証装置300の構成を示すブロック図である。設計検証装置300は、設計検証装置200(図11)のゲート端子基準検索/修正部12を、ソースドレイン端子基準検索/修正部13に変更して構成されている。本実施の形態では、ソースドレイン端子基準検索/修正部13、および、これに関連する他の構成要素のみを説明する。実施の形態1および2でした他の構成要素の説明は、省略する。
【0074】
ソースドレイン端子基準検索/修正部13は、クロスリファレンス情報ファイル8を受け取り、トランジスタのソース/ドレイン端子の接続関係に基づいて、論理回路とレイアウトの対応情報を検索・修正する。以下、図14の(a)〜(c)を参照して具体的に説明する。
【0075】
図14の(a)は、論理回路およびレイアウトを示す図である。図14の(b)は、論理等価デバイス・クロスリファレンス情報ファイル化部7(図11)が、(a)の論理回路およびレイアウトから作成したクロスリファレンス情報ファイルを示す図である。ソースドレイン端子基準検索/修正部13(図13)は、クロスリファレンス情報ファイルを受け取って、それに含まれている「−−S/D Based Correspond−−」以下に記述されている対応表を検索する。また、ソースドレイン端子基準検索/修正部13は、ネットリスト生成部9からレイアウト寄生素子付きネットリストを受け取る。検索の結果に基づいて、ソースドレイン端子基準検索/修正部13は、受け取ったレイアウト寄生素子付きネットリストを修正して、デバイス名を、GND側からSMC,SMB,SMAの順に並べ、ゲート配線名が、SB、SA,SCの順に並べ、そして、中間配線名がSNETB,SNETAの順になるように並べる。
【0076】
さらに、例えば論理回路の中間配線「SNETA」が、寄生素子に関する抽出および出力指定配線となっている場合には、ソースドレイン端子基準検索/修正部13は、さらに、クロスリファレンス情報ファイルの「−− S/D Based Correspond−−」以下に記述されている対応表を検索する。そして、「SNETA」に対応するレイアウト配線「LN_1」、「LN_2」についてもレイアウト寄生素子情報を抽出する。そして、その寄生素子情報をレイアウト寄生素子付きネットリストに追加する。
【0077】
以上により、本実施の形態によれば、トランジスタのソース/ドレイン端子の接続関係を基準にして、論理回路との対応が自動かつ完全にとられたバックアノテーションが可能となる。図14の(c)は、トランジスタのソース/ドレイン端子を基準にした情報検索結果を示す。
【0078】
なお、実施の形態2で説明したゲート端子基準検索/修正部12(図11)と、実施の形態3で説明したソースドレイン端子基準検索/修正部13とを両方備えた設計検証装置を考えることもできる。ユーザは、必要に応じて、ゲート端子、または、ソース/ドレイン端子のいずれの接続関係を基準にしてバックアノテーションするかを決定できる。
【0079】
(実施の形態4)
実施の形態4は、レイアウト設計完了前等にプレレイアウトシミュレーションを行う半導体設計検証装置を説明する。「プレレイアウトシミュレーション」とは、論理回路ネットリストを用いた、レイアウトから抽出した寄生素子情報を加味しない論理回路の動作検証をいう。以下、より詳しく説明する。
【0080】
図15は、実施の形態4の設計検証装置400の構成を示すブロック図である。設計検証装置400は、論理回路データ1と、レイアウトデータ2と、LVS比較部3と、パラレルデバイス/シリアルデバイス/パラレルシリアルデバイス/論理等価デバイスのクロスリファレンス情報ファイル化部4〜7と、論理回路対レイアウトに関するクロスリファレンス情報ファイル8とを有する。これらの構成要素の機能および動作は、実施の形態1の設計検証装置100(図1)の該当する構成要素と同じであるので、その説明は省略する。
【0081】
設計検証装置400はさらに、プレレイアウトシミュレーション部14と、ノードリスト15と、ノードリスト変換部16と、変換後ノードリスト17と、パス選択型ネットリスト生成部18と、パス選択型ネットリスト19と、パス選択型解析部20とを有する。
【0082】
以下、これらの機能および動作を説明する。まず、プレレイアウトシミュレーション部14は、論理回路データ1を用いた回路の動作検証を実行する。ここで、プレレイアウトシミュレーションとは、論理回路に所定の電圧を印加したときの、各ノードの電位の変化についてのシミュレーションである。ノードリスト15は、プレレイアウトシミュレーション部14によるシミュレーションの結果、すなわち、各ノードについて、電位の変化の有無を示すノードリストを記述する。より詳しくは、ノードリスト15は、activeノードリストおよびinactiveノードリストから構成されている。このうち、activeノードリストには、プレレイアウトシミュレーション時に電位の変化したノード名が記述されている。inactiveノードリストには、プレレイアウトシミュレーション時に電位の変化しなかったノード名と電位とが記述されている。ノードリスト15もまた、所定のデータベースとして記憶装置に記憶される。この記憶装置は、論理回路データ1およびレイアウトデータ2を記憶している記憶装置と同じであってもよい。
【0083】
ノードリスト変換部16は、クロスリファレンス情報ファイル8に基づいて、ノードリスト15のinactiveノードリストについて、記載されたノード名に対応するレイアウト側の全てのノード名と電位とを各リストに追加する。変換後ノードリスト17は、ノードリスト変換部16から出力された、変換後のactiveノードリストおよび変換後のinactiveノードリストを含む。
【0084】
パス選択型ネットリスト生成部18は、LVS比較部3から出力された比較結果、および、変換後ノードリスト17を用いて、シミュレーション時に動作する部分回路に対応するレイアウトの寄生素子情報のみを抽出する。さらに生成部18は、シミュレーションに必要な部分回路に対してのみ、対応するレイアウトの寄生素子情報のみを付加し、レイアウトネットリストを生成する。このレイアウトネットリストを、パス選択型レイアウト寄生素子付きネットリスト19と称する。パス選択型解析部20は、変換後ノードリスト17のinactiveノードリスト、および、パス選択型ネットリスト19に基づいて、論理回路の動作を検証・解析する。
【0085】
以上のように、プレレイアウトシミュレーションにより、電位が変化したノードの情報、および電位の変化しなかったノードの情報を得て、パス選択型ネットリスト生成部がその情報を参照することにより、半導体設計検証装置は、シミュレーション時に動作する部分回路に対応するレイアウト寄生素子の情報のみを考慮できる。
【0086】
次に、図16の(a)〜(d)を参照して、設計検証装置400の主要な動作を説明する。図16の(a)は、論理回路およびレイアウトを示す図である。図から明らかなように、複数のデバイスがパラレル接続、および、シリアル接続されている。図16の(b)は、パラレルシリアルデバイス・クロスリファレンス情報ファイル化部6(図15)が(a)の論理回路およびレイアウトに基づいて生成したクロスリファレンス情報ファイルである。すなわち、クロスリファレンス情報ファイル8(図15)は既に生成されているとする。図16の(c)は、activeノードリストおよびinactiveノードリストの例である。図16の(d)は、変換後のactiveノードリストおよび変換後のinactiveノードリストの例である。
【0087】
まずノードリスト変換部16は、クロスリファレンス情報ファイル(図16の(b))内に、activeノードリスト(図16の(c))に記載されている配線名’SNETA’が存在するか否かを検索する。そして、配線名’SNETA’が存在することを知ると、ノードリスト変換部16は、対応しているレイアウト配線名’LN_1’’LN_3’を既に存在するactiveノードリストに追加して出力する。この出力結果が、変換後のactiveノードリスト(図16の(d))である。
【0088】
次に、ノードリスト変換部16は、クロスリファレンス情報ファイル(図16の(b))内に、inactiveノードリスト(図16の(c))に記載されている配線名’SNETB’が存在するか否かを検索する。そして、配線名’SNETB’が存在することを知ると、ノードリスト変換部16は、対応しているレイアウト配線名’LN_2’’LN_4’を既に存在するinactiveノードリストに追加して出力する。inactiveノードリストでは、’SNETB’の定電位定義は0Vである。追加出力されたレイアウト配線名’LN_2’’LN_4’の定電位定義は、’SNETB’と同じ0Vに設定する。
【0089】
パス選択型ネットリスト生成部18は、変換後のactiveノードリスト(図16の(d))を参照して、配線名’SNETA’’LN_1’’LN_3’についてレイアウトの寄生素子情報を抽出し、配線名’SNETA’’LN_1’’LN_3’についてのレイアウト寄生素子情報付きネットリストを出力する。パス選択型解析部20(図15)は、変換後のinactiveノードリスト(図16の(d))を参照して、配線’SNETB’’LN_2’’LN_4’の電位を0Vに設定する。
【0090】
従来の装置では、パラレルおよびシリアルの複合型マージデバイス群のレイアウト中間ノードなどに、activeノードでもinactiveノードでもない電位不定のノードが存在したが、本実施の形態の設計検証装置によれば、activeノードinactiveノードを自動で、かつ、漏れなく指定したパス選択型バックアノテーションが可能になる。
【0091】
(実施の形態5)
実施の形態5は、論理回路ベースのレイアウト寄生素子情報付きネットリストを生成する半導体設計検証装置を説明する。
【0092】
図17は、実施の形態5の設計検証装置500の構成を示すブロック図である。設計検証装置500は、論理回路データ1と、レイアウトデータ2と、LVS比較部3と、パラレルデバイス/シリアルデバイス/パラレルシリアルデバイス/論理等価デバイスのクロスリファレンス情報ファイル化部4〜7と、論理回路対レイアウトに関するクロスリファレンス情報ファイル8と、プレレイアウトシミュレーション部14と、ノードリスト15と、パス選択型解析部20とを有する。これらの構成要素の機能および動作は、実施の形態1および4の設計検証装置の該当する構成要素と同じであるので、その説明は省略する。
【0093】
設計検証装置500はさらに、パス選択型ネットリスト生成部18と、パス選択型解析部20と、論理回路基準検索/修正部21と、論理回路ベースのパス選択型ネットリスト22とを有する。パス選択型ネットリスト生成部18は、LVS比較部3から出力された比較結果、および、ノードリスト15を用いて、シミュレーション時に動作する部分回路に対応するレイアウトの寄生素子情報のみを抽出する。論理回路基準検索/修正部21は、パス選択型ネットリスト生成部18の出力に基づいて、クロスリファレンス情報ファイル8から、論理回路を基準として論理回路とレイアウトとの対応情報を検索し、修正する。パス選択型ネットリスト22は、基準検索/修正部21で生成される、シミュレーション時に動作する部分回路に対応するレイアウトの寄生素子情報が付加されたネットリストを生成する。このネットリストは、論理回路とデバイス数、デバイス/配線名、接続関係すべてが全く一致している、論理回路ベースのパス選択型寄生素子付きネットリストである。パス選択型解析部20は、パス選択型ネットリスト22と、ノードリスト15とに基づいて、論理回路の動作を検証・解析する。
【0094】
次に、図18の(a)〜(d)を参照して、設計検証装置500の主要な動作を説明する。図18の(a)〜(c)は、複数のデバイスがパラレル接続、および、シリアル接続されており、図16の(a)〜(c)と同じ例を用いている。図18の(a)に示す論理回路およびレイアウトが与えられると、パラレルシリアルデバイス・クロスリファレンス情報ファイル化部6(図17)は、図18の(b)に示すクロスリファレンス情報ファイルを生成する。一方、プレレイアウトシミュレーション部14は、図16の(c)に示すノードリスト15を生成する。
【0095】
図18の(d)は、論理回路を基準にした検索結果を示す。この検索は、以下のように行われる。まず、パス選択型ネットリスト生成部18は、activeノードリスト15に記載されている、配線名’SNETA’についてレイアウト寄生素子情報を抽出し、配線名’SNETA’についてのレイアウト寄生素子情報付きネットリストを生成する。次に論理回路基準検索/修正部21は、クロスリファレンス情報ファイル(b)の’−−Correspond−−’以下に記述されている対応表を参照し、レイアウトデバイス’LM1’および’LM4’に関する情報を論理回路デバイス’SMA’に返し、同様にレイアウトデバイス’LM2’、’LM5’に関する情報を論理回路デバイス’SMB’に返し、またレイアウトデバイス’LM3’、’LM6’に関する情報を論理回路デバイス’SMC’に返す。
【0096】
一方、レイアウト配線については、配線名’LN_1’、’LN_3’についても寄生素子情報を抽出する。これは、寄生素子抽出対象配線’SNETA’が、’LN_1’、’LN_3’に対応づけられているからである。よって、’LN_1’、’LN_3’に関する情報を論理回路配線’SNETA’に返す。それに対して、’LN_2’、’LN_4’に対応する論理回路配線’SNETB’は、寄生素子抽出対象配線ではないため、レイアウト配線’LN_2’、’LN_4’ については寄生素子情報を抽出せず、論理回路配線’SNETB’に返すことにより、レイアウト寄生素子情報付きの論理回路ベースのネットリストを生成する。
【0097】
以上により、本実施の形態によれば、論理回路ベースのレイアウト寄生素子情報付きネットリストを用いて、プレレイアウトシミュレーションで出力されるactiveノードリスト、inactiveノードリスト等をそのまま利用して、パス選択型バックアノテーションを行うことができる。
【0098】
(実施の形態6)
実施の形態6は、電源/GNDライン解析バックアノテーションについて、論理回路ネットリストと電源/GNDレイアウト寄生素子情報付きネットリストを組み合わせる半導体設計検証装置を説明する。
【0099】
図19は、実施の形態6の設計検証装置600の構成を示すブロック図である。設計検証装置600は、論理回路データ1と、レイアウトデータ2と、LVS比較部3と、パラレルデバイス/シリアルデバイス/パラレルシリアルデバイス/論理等価デバイスのクロスリファレンス情報ファイル化部4〜7と、論理回路対レイアウトに関するクロスリファレンス情報ファイル8とを有する。これらの構成要素の機能および動作は、実施の形態1の設計検証装置の該当する構成要素と同じであるので、その説明は省略する。
【0100】
設計検証装置600はさらに、論理回路ネットリスト23と、情報検索部24と、電源/GNDネットリスト生成部25と、電源/GNDレイアウト寄生素子付きネットリスト26と、電源/GND解析部27とを有する。論理回路ネットリスト23は、論理回路データ1より抽出されるデータである。これまでの説明では、論理回路データ1は論理回路ネットリストを例に説明していたため、本実施の形態でも特に異なることはない。しかし、本実施の形態では、論理回路ネットリストを積極的に利用することを明確にする意味で、論理回路ネットリスト23を記載している。情報検索部24は、クロスリファレンス情報ファイル8を用いて、電源/GNDラインの寄生素子情報付きネットリストと、内部回路情報としての論理回路ネットリストとを組み合わせ、論理回路とレイアウトの対応情報を検索する。電源/GNDネットリスト生成部25は、LVS比較部3から出力されたLVS比較結果、および、情報検索部24の検索結果に基づいて、電源/GNDラインの寄生素子情報を抽出し、電源/GNDライン寄生素子情報付きネットリスト26を生成する。電源/GND解析部27は、内部回路情報としての論理回路ネットリスト23と、ネットリスト26とを組み合わせて、論理回路の動作を検証・解析する。
【0101】
次に、図20の(a)〜(c)を参照して、設計検証装置600の主要な動作を説明する。図20の(a)は、論理回路およびレイアウトを示す図である。図では、複数のデバイスがパラレル接続されていることが理解される。図20の(b)は、パラレルデバイス・クロスリファレンス情報ファイル化部4(図19)が、(a)の論理回路およびレイアウトに基づいて生成したクロスリファレンス情報ファイルである。図20の(c)は、情報検索部24(図19)による検索結果を示す図である。
【0102】
情報検索部24は、クロスリファレンス情報ファイル(b)を検索して、’−−Correspond−−’の内容から、レイアウトデバイス’LM1’は、’SMA@1’に対応していること、および、’−−Merge Device−−’の内容から、論理回路の3デバイス’SMA’’SMB’’SMC’がマージされて’SMA’という代表名が付されていることを認識する。この結果、情報検索部24は、レイアウトデバイス’LM1’に、’SMA_SMB_SMC@1’という名称が割り振る。同様に、’LM2’には’SMA_SMB_SMC@2’というデバイス名を割り振る。そして、電源/GNDネットリスト生成部25は、レイアウトデバイス’LM1’に対しては、’SMA_SMB_SMC@1’というデバイス名で、レイアウトデバイス’LM2’に対しては、’SMA_SMB_SMC@2’というデバイス名で、電源/GNDレイアウト寄生素子付きネットリスト26を出力する。
【0103】
続いて、電源/GND解析部27(図19)は、電源/GNDレイアウト寄生素子付きネットリスト26に含まれているデバイス名’SMA_SMB_SMC@1’および’SMA_SMB_SMC@2’に基づいて、論理回路の3つのパラレルデバイスがレイアウトの2つのパラレルデバイスに対応していることを確認する。そして、電源/GND解析部27は、論理回路ネットリスト23のデバイス’SMA’’SMB’および’SMC’から供給される電源の和を、電源/GNDレイアウトの寄生素子付きネットリスト26の2つのソース端子(’SMA_SMB_SMC@1’および’SMA_SMB_SMC@2’の各ソース端子)に割り振る。
【0104】
従来の装置では、論理回路とレイアウトで素子の数が異なる場合などの場合に、電源/GNDラインと内部回路の繋ぎの箇所で不一致が生じていたが、本実施の形態の設計検証装置によれば、いかなる場合においても電源/GNDラインと内部回路の繋ぎの箇所が完全に一致した、精度のよい電源/GNDラインバックアノテーションが可能になる。
【0105】
【発明の効果】
設計検証装置のクロスリファレンス情報ファイル化部が、論理回路における複数の素子およびその配線、および、レイアウトパターンにおける複数の素子およびその配線の対応関係を規定したクロスリファレンス情報を生成するので、素子、中間配線等の全ての要素に対して論理回路とレイアウトとの対応を特定できる。これにより、レイアウトに寄生する素子情報を加味した論理回路の動作を検証・解析するバックアノテーション時に、これらのクロスリファレンス情報を参照することにより、より詳細な解析が可能であり、また、指定したパスのみの解析が可能になる。すなわち、論理回路とレイアウトの配線名やデバイス名の対応を容易に認識でき、論理回路図面上の名称で配線名やデバイス名を指定できるようになる。よって、バックアノテーションにおいて、対応関係の認識効率を向上させ、かつ、認識ミスを削減できる。
【0106】
例えば、クロスリファレンス情報ファイル化部は、パラレル接続/シリアル接続/パラレル接続とシリアル接続との混在する論理回路のクロスリファレンス情報を生成する。または、クロスリファレンス情報ファイル化部は、論理等価と判断された素子群が交換可能であることを示すクロスリファレンス情報を生成する。
【0107】
検索部は、トランジスタのゲート端子の接続関係を基準として、または、ソース端子およびドレイン端子の接続関係を基準として、論理回路の素子・配線と、レイアウトパターンの素子・配線との対応を検索する。これにより、特に論理回路に互いに入れ替えても論理等価である素子が存在する場合に、基準を適宜変更して、論理回路とレイアウトパターンとの対応を検索できる。
【0108】
論理回路に所定の電圧を印加したときの電位の変化をシミュレーションして、レイアウトデータを参照することにより、電位の変化のなかった論理回路のノードと、それに対応するレイアウトパターンのノードとを記載したノードリストを生成できる。これにより、電位の変化のなかったノードを漏れなく指定したパス選択型バックアノテーションが可能になる。
【0109】
また、電位の変化のあった論理回路のノードと、それに対応するレイアウトパターンのノードとを記載したノードリストを生成することにより、電位の変化のあったノードをも漏れなく指定したパス選択型バックアノテーションが可能になる。
【0110】
ネットリスト生成部は、電位が変化したノードの情報、および電位の変化しなかったノードの情報を得て、寄生素子に関する情報をレイアウトパターン内の素子および配線の情報に付加したレイアウトネットリストを生成する。これにより、シミュレーション時に動作する部分回路に対応するレイアウト寄生素子の情報のみを考慮できる。
【0111】
同様に、ネットリスト生成部は、電源から接地に至る配線レイアウトに対応するレイアウトパターンの寄生素子に関する情報を抽出して、寄生素子に関する情報を、レイアウトパターン内の素子および配線の情報に付加したレイアウトネットリストを生成する。これにより、電源から接地に至る配線レイアウトに対応するレイアウト寄生素子の情報のみを考慮できる。
【図面の簡単な説明】
【図1】実施の形態1の設計検証装置の構成を示すブロック図である。
【図2】論理回路データ、レイアウトデータおよびLVS比較部のより具体的な例を示す図である。
【図3】複数のデバイスがパラレル接続により構成された論理回路およびレイアウトの例を示す図である。
【図4】パラレルデバイス・クロスリファレンス情報ファイル化部が出力したクロスリファレンス情報ファイルを示す図である。
【図5】複数のデバイスがシリアル接続により構成された論理回路およびレイアウトの例を示す図である。
【図6】シリアルデバイス・クロスリファレンス情報ファイル化部が出力したクロスリファレンス情報ファイルを示す図である。
【図7】複数のデバイスがパラレル接続、および、シリアル接続により構成された論理回路およびレイアウトの例を示す図である。
【図8】パラレルシリアルデバイス・クロスリファレンス情報ファイル化部が出力したクロスリファレンス情報ファイルを示す図である。
【図9】複数のデバイスがシリアル接続により構成された論理回路およびレイアウトの例を示す図である。
【図10】論理等価デバイス・クロスリファレンス情報ファイル化部が出力したクロスリファレンス情報ファイルを示す図である。
【図11】実施の形態2の設計検証装置の構成を示すブロック図である。
【図12】(a)は、論理回路およびレイアウトを示す図である。(b)は、論理等価デバイス・クロスリファレンス情報ファイル化部が、(a)の論理回路およびレイアウトから作成したクロスリファレンス情報ファイルを示す図である。(c)は、トランジスタのゲート端子を基準にした情報検索結果を示す。
【図13】実施の形態3の設計検証装置の構成を示すブロック図である。
【図14】(a)は、論理回路およびレイアウトを示す図である。(b)は、論理等価デバイス・クロスリファレンス情報ファイル化部が、(a)の論理回路およびレイアウトから作成したクロスリファレンス情報ファイルを示す図である。(c)は、トランジスタのソース/ドレイン端子を基準にした情報検索結果を示す。
【図15】実施の形態4の設計検証装置の構成を示すブロック図である。
【図16】(a)は、論理回路およびレイアウトを示す図である。(b)は、パラレルシリアルデバイス・クロスリファレンス情報ファイル化部が(a)の論理回路およびレイアウトに基づいて生成したクロスリファレンス情報ファイルである。(c)は、activeノードリストおよびinactiveノードリストの例である。(d)は、変換後のactiveノードリストおよび変換後のinactiveノードリストの例である。
【図17】実施の形態5の設計検証装置の構成を示すブロック図である。
【図18】(a)は、論理回路およびレイアウトを示す図である。(b)は、パラレルシリアルデバイス・クロスリファレンス情報ファイル化部が(a)の論理回路およびレイアウトに基づいて生成したクロスリファレンス情報ファイルである。(c)は、activeノードリストおよびinactiveノードリストの例である。(d)は、論理回路を基準にした検索結果を示す図である。
【図19】実施の形態6の設計検証装置の構成を示すブロック図である。
【図20】(a)は、論理回路およびレイアウトを示す図である。(b)は、パラレルデバイス・クロスリファレンス情報ファイル化部が、(a)の論理回路およびレイアウトに基づいて生成したクロスリファレンス情報ファイルである。(c)は、情報検索部による検索結果を示す図である。
【図21】従来の半導体設計検証装置の構成を示すブロック図である。
【図22】パス選択型バックアノテーションのための半導体設計検証装置の構成を示すブロック図である。
【図23】電源/GNDラインバックアノテーションのための半導体設計検証装置の構成を示すブロック図である。
【図24】適切なバックアノテーションが行えない場合の例を示す論理回路図である。
【符号の説明】
1 論理回路データ、 2 レイアウトデータ、 3 LVS比較部、 4 パラレルデバイス・クロスリファレンス情報ファイル化部、 5 シリアルデバイス・クロスリファレンス情報ファイル化部、 6 パラレルシリアルデバイス・クロスリファレンス情報ファイル化部、 7 論理等価デバイス・クロスリファレンス情報ファイル化部、 8 論理回路対レイアウト・クロスリファレンス情報ファイル、 9 ネットリスト生成部、 10 レイアウト寄生素子付きネットリスト、 11 解析部、 31 LVSルール、 32 要素認識部、 33 比較検証部、 100 設計検証装置
【発明の属する技術分野】
本発明は、半導体集積回路のコンピュータ支援設計に有用な、論理回路の動作を検証する装置に関する。より具体的には、本発明は、論理回路に対応するマスクレイアウトパターンデータを用いて、当該パターンの配線間に潜在的に存在する寄生素子の情報を抽出し、抽出した寄生素子情報を加味した上で論理回路の動作を検証する半導体設計検証装置に関する。
【0002】
【従来の技術】
図21〜図23は、バックアノテーションのための、従来の半導体設計検証装置の構成を示すブロック図である。バックアノテーションとは、実装設計で決定されたロケーション、実ピン名、または追加、削除された部品の情報を、論理回路図に反映させる処理をいう。部品のレイアウトが完了すると、実際の配線長を使って回路の遅延を見積ることができる。よって、レイアウトから抽出された遅延情報をゲートレベル・シミュレーションに反映させると、回路の正確な動作速度を判定できる。バックアノテーションは、所望の速度仕様を満足するような半導体装置を製作するために必要である。
【0003】
図21を参照して、従来の半導体設計検証装置は、論理・回路設計データを格納したデータベース1と、マスクレイアウトパターンデータを格納したデータベース2と、LVS比較部3と、ネットリスト生成部9と、レイアウト寄生素子付きネットリスト10と、解析部11とを有する。LVS比較部3は、レイアウトデータ2に基づいて認識された配線およびデバイスの接続関係と、論理回路データ1に基づいて認識された接続関係との対応関係を比較検証する。これを、LVS(Layout Versus Schematic)比較と称する。ネットリスト生成部9は、比較結果に基づいて、レイアウトに寄生する素子情報を抽出し、レイアウト寄生素子付きのネットリスト10を生成する。解析部11は、レイアウト寄生素子付きネットリスト10を用いて、レイアウトに寄生する素子情報を加味した論理回路の動作を検証・解析する。
【0004】
次に、図22は、パス選択型バックアノテーションのための半導体設計検証装置の構成を示すブロック図である。パス選択型バックアノテーションとは、レイアウト設計完了前などに実施するバックアノテーションであり、論理回路ネットリストを用いた、レイアウトから抽出した寄生素子情報を加味しない回路シミュレーションの結果に基づいて、シミュレーションに必要な部分回路に対応するレイアウト寄生素子情報のみを加味するバックアノテーションである。そのため、この半導体設計検証装置は、寄生素子情報を加味しない、論理回路データ1を用いた回路の動作検証を実行するプレレイアウトシミュレーション部14と、その結果を記述したノードリスト15とを新たに有する。また、半導体設計検証装置は、図21のネットリスト生成部9、レイアウト寄生素子付きネットリスト10、解析部11に代えて、パス選択型ネットリスト生成部18と、パス選択型ネットリスト19と、パス選択型解析部20とを有する。
【0005】
図23は、電源/GNDラインバックアノテーションのための半導体設計検証装置の構成を示すブロック図である。電源/GNDラインバックアノテーションとは、電源/GNDラインのレイアウト寄生素子情報のみを加味し、内部回路情報としては論理回路ベースのネットリストを用いるバックアノテーションである。この半導体設計検証装置は、図21のネットリスト生成部9、レイアウト寄生素子付きネットリスト10、解析部11に代えて、電源/GNDネットリスト生成部29と、電源/GNDレイアウト寄生素子付きネットリスト26と、電源/GND解析部27とを有する。
【0006】
【発明が解決しようとする課題】
従来の半導体設計検証装置は、バックアノテーションのための前処理を行っていたにもかかわらず、バックアノテーションが適切に行えないことがあった。例えば、従来の半導体設計検証装置がLVS比較を行い、論理回路とレイアウトとが論理等価と認識した場合、または、マージ処理されたデバイス群に含まれるデバイスおよびその数が、論理回路とレイアウトとで1対1に対応しない場合には、レイアウトのデバイスや配線が、対応する論理回路上でデバイス名や配線名の情報を持たないことがあった。このため、レイアウトベースの寄生素子情報付きネットリストを用いたバックアノテーション(図22)では、論理回路図から検索された波形入力/波形表示点、または、ブロック入出力点を指定できず、レイアウトデータ上での対応ポイントを探し出すのに手間取っていた。さらに、対応ポイントを誤って指定してしまう危険性もあった。
【0007】
図24を参照して、この問題をより具体的に説明する。図24は、適切なバックアノテーションが行えない場合の例を示す論理回路図である。タイミングエラー発生等により、図24の「×」で示すマークポイントの解析を行う場合を考える。例えば、矢印で示す2点については、”XIBUF|XIW<2>|XI22|MI40:GATE”、および、”XIBUF|XIW<2>|XI22|MI40:DRAIN”という名前が論理回路図から検索される。一方、レイアウトから抽出した寄生素子情報付きネットリストでは、構成素子の情報が、”NODE111:GATE”、”NODE111: DRAIN ”のような配線名で出力されている場合がある。これでは、”NODE111”がどのノードを表すのか、また、複数存在する”GATE”のうち、どれが対応する”GATE”であるかを判断できない。すなわち、ネットリスト上の対応ポイントを探すことができない。
【0008】
また、電源/GNDラインバックアノテーション(図23)においても、論理回路ベースの内部回路ネットリストと、レイアウトベースの寄生素子情報付き電源/GNDネットリストとの繋ぎの部分で不一致箇所が生じることがある。これでは、電圧降下およびエレクトロマイグレーションが発生する危険箇所を見落とす可能性がある。
【0009】
本発明の目的は、論理回路とレイアウトとの比較時(LVS比較時)に、スワップ情報を含むクロスリファレンス情報を生成し、最適な論理回路とレイアウトの対応に関する情報の検索・利用を容易にすることである。
【0010】
【課題を解決するための手段】
本発明による設計検証装置は、論理回路の素子および該素子間の配線に関する論理回路データ、および、該論理回路のレイアウトパターンに関するレイアウトデータを記憶した記憶部と、前記レイアウトデータに基づいて、素子の接続関係を認識する要素認識部と、前記論理回路データに基づく論理回路の接続関係と、要素認識部が認識したレイアウトの接続関係との対応を比較検証する比較検証部を備えている。比較検証部は、前記論理回路データに基づいて、前記論理回路の複数の素子を第1の機能ユニットとしてマージし、要素認識部が認識した前記接続関係に基づいて、前記論理回路の複数の素子を第2の機能ユニットとしてマージし、前記第1の機能ユニットにおけるマージされた複数の素子の第1の接続関係と、前記第2の機能ユニットにおけるマージされた複数の素子の第2の接続関係との対応を比較検証する。設計検証装置は、さらに前記論理回路の接続関係に応じて、前記第1の機能ユニットにおける前記複数の素子およびその配線、および、前記第2の機能ユニットにおける前記複数の素子およびその配線の対応関係を規定したクロスリファレンス情報を生成するクロスリファレンス情報ファイル化部を備えている。これにより上記目的が達成される。
【0011】
クロスリファレンス情報ファイル化部は、パラレル接続された前記論理回路のクロスリファレンス情報を生成してもよい。
【0012】
クロスリファレンス情報ファイル化部は、シリアル接続された前記論理回路のクロスリファレンス情報を生成してもよい。
【0013】
クロスリファレンス情報ファイル化部は、パラレル接続とシリアル接続とが混在する前記論理回路のクロスリファレンス情報を生成してもよい。
【0014】
比較検証部は、前記論理回路が、複数の素子を互いに入れ替えても論理等価であるか否かをさらに判断し、論理等価である場合には、クロスリファレンス情報ファイル化部は、論理等価と判断された素子群が交換可能であることを示すクロスリファレンス情報を生成してもよい。
【0015】
設計検証装置は、クロスリファレンス情報ファイル化部が生成した前記クロスリファレンス情報に基づいて、前記論理回路の素子または配線と、前記レイアウトパターンの素子または配線との対応を検索する検索部をさらに備えている。素子が、ゲート端子、ソース端子、およびドレイン端子を含むトランジスタである場合に、検索部は、該トランジスタのゲート端子の接続関係を基準として、前記対応を検してもよい。
【0016】
設計検証装置は、クロスリファレンス情報ファイル化部が生成した前記クロスリファレンス情報に基づいて、前記論理回路の素子または配線と、前記レイアウトパターンの素子または配線との対応を検索する検索部をさらに備えている。素子が、ゲート端子、ソース端子、およびドレイン端子を含むトランジスタである場合に、該検索部は、該トランジスタのソース端子およびドレイン端子の接続関係を基準として、前記対応を検索してもよい。
【0017】
設計検証装置は、記憶部に記憶された前記論理回路データに基づいて、前記論理回路に所定の電圧を印加したときの各ノードの電位の変化をシミュレーションするシミュレーション部を備えていてもよい。シミュレーション部は、シミュレーションの結果得られた、電位の変化が無かった前記論理回路のノードを特定する第1のノードリストを生成する。また設計検証装置は、シミュレーション部が生成した前記第1のノードリスト、および、記憶部に記憶された前記レイアウトデータに基づいて、前記論理回路の電位の変化がなかったノードに対応する前記レイアウトパターンのノードを特定し、前記第1のノードリストを、特定された前記レイアウトパターンのノードをさらに追加した第2のノードリストに変換するノードリスト変換部をさらに備えていてもよい。
【0018】
シミュレーション部は、シミュレーションの結果得られた、電位の変化があった前記論理回路のノードを特定する第3のノードリストを生成してもよい。ノードリスト変換部は、シミュレーション部が生成した前記第3のノードリスト、および、記憶部に記憶された前記レイアウトデータに基づいて、前記論理回路の電位の変化があったノードに対応する前記レイアウトパターンのノードを特定し、前記第3のノードリストを、特定された前記レイアウトパターンのノードをさらに追加した第4のノードリストに変換してもよい。
【0019】
設計検証装置は、比較検証部による比較検証の結果、および、前記第4のノードリストに基づいて、論理回路の一部分である部分回路に対応するレイアウトパターンの寄生素子に関する情報を抽出して、該寄生素子に関する情報を、レイアウトパターン内の素子および配線の情報に付加したレイアウトネットリストを生成するネットリスト生成部をさらに備えていてもよい。
【0020】
前記論理回路データは、論理回路内の素子および配線に関する情報を記述した論理回路ネットリストである。設計検証装置は、クロスリファレンス情報ファイル化部が生成した前記クロスリファレンス情報、および、前記論理回路ネットリストに基づいて、前記論理回路と前記レイアウトとの対応を検索する検索部と、比較検証部による比較検証の結果に基づいて、電源から接地に至る配線レイアウトに対応するレイアウトパターンの寄生素子に関する情報を抽出して、該寄生素子に関する情報を、レイアウトパターン内の素子および配線の情報に付加したレイアウトネットリストを生成するネットリスト生成部をさらに備えていてもよい。
【0021】
【発明の実施の形態】
以下、添付の図面を参照して、本発明の実施の形態を説明する。本明細書では、論理回路の動作を検証する半導体設計検証装置を説明する。より詳しくは、半導体設計検証装置は、論理回路に対応するマスクレイアウトパターンデータを用いて、当該パターンの配線間に潜在的に存在する寄生素子の情報を抽出し、抽出した寄生素子情報を加味した上で論理回路の動作を検証する。以下の実施の形態では、半導体設計検証装置を単に「設計検証装置」と称する。図において、同一または類似の機能を有する構成要素には、同一の参照符号を付している。
【0022】
(実施の形態1)
図1は、実施の形態1の設計検証装置100の構成を示すブロック図である。設計検証装置100は、論理・回路設計データを格納したデータベース1と、マスクレイアウトパターンデータを格納したデータベース2と、LVS比較部3と、パラレルデバイス/シリアルデバイス/パラレルシリアルデバイス/論理等価デバイスのクロスリファレンス情報ファイル化部4〜7と、論理回路対レイアウトに関するクロスリファレンス情報ファイル8と、ネットリスト生成部9と、レイアウト寄生素子付きネットリスト10と、解析部11とを有する。本明細書では、データベース1に含まれる情報を、「論理回路データ1」と称する。また、データベース2に含まれる情報を、「レイアウトデータ2」と称する。なお、データベース1および2は、説明の便宜上、別々に設けているが、単一の記憶装置内に設けられていてもよい。
【0023】
以下、各構成要素の機能および動作を説明する。論理回路データ1は、論理回路の構成素子および構成素子間の接続に基づいて生成されたデータである。本明細書では、例えば、論理回路データ1は論理回路ネットリストデータであるとして説明するが。レイアウトデータ2は、電源電位、接地電位等が与えられる位置、接続関係の全レイアウトを、所定のフォーマットにより表現したデータである。論理回路データ1およびレイアウトデータ2については、図2を参照して後述する。
【0024】
LVS比較部3は、レイアウトデータ2に基づいて認識された配線およびデバイスの接続関係と、論理回路データ1に基づいて認識された接続関係との対応関係を比較検証する。これは、作成されたレイアウトが、論理回路と同じ接続関係を持つか否かを検証するためである。この機能を、LVS(Layout Versus Schematic)機能という。LVS比較部3は、レイアウトの構造を記述する際の表記を定義したLVSルールを格納するデータベース31(以下、「LVSルール31」と称する)と、要素認識部32と、比較検証部33とを有する。要素認識部32は、LVSルール31およびレイアウトデータ2に基づいて、レイアウトデータ2により示される配線・デバイスを認識する。要素認識部32は、認識したレイアウト内の配線・デバイスの情報を記述したレイアウトネットリストを出力する。比較検証部33は、論理回路データ1の論理・回路設計データと、要素認識部32から出力されたレイアウトネットリストとに基づいて、配線とデバイスの接続関係を比較し、対応関係を検証する。この比較および検証は、周知のLVSを用いて行われる。
【0025】
続いて、設計検証装置100のパラレルデバイス・クロスリファレンス情報ファイル化部4は、LVS比較部3が独自の基準でマージした、パラレルマージデバイス群のクロスリファレンス情報をファイル化する。クロスリファレンス情報は、クロスリファレンス情報ファイル化部4〜7により生成される、論理回路とレイアウトとの対応関係を規定したデータある。より詳しくは後述する。他のクロスリファレンス情報ファイル化部5および6も同様に、LVS比較部3が独自の基準でマージした、シリアルマージデバイス群/パラレルおよびシリアルの複合型マージデバイス群のクロスリファレンス情報をファイル化する。一方、論理等価デバイス・クロスリファレンス情報ファイル化部7は、LVS比較部3が論理等価と認識したデバイス群のスワップ情報を含めたクロスリファレンス情報をファイル化する。
【0026】
ネットリスト生成部9は、LVS比較部3による比較結果、および、クロスリファレンス情報ファイル8に基づいて、レイアウトに寄生する素子情報を抽出し、レイアウト寄生素子情報付きネットリスト10を生成する。ここで、レイアウトに「寄生する素子」とは、レイアウトされた配線間に潜在的に存在する、意識的に配置していない容量等の回路要素をいう。生成したレイアウト寄生素子付きネットリスト10は、ハードディスク等の所定の記憶媒体に格納される。解析部11は、クロスリファレンス情報ファイル8、および、レイアウト寄生素子付きネットリスト10を用いて、レイアウトに寄生する素子情報を加味した論理回路の動作を検証・解析する。
【0027】
図2は、論理回路データ1、レイアウトデータ2およびLVS比較部3のより具体的な例を示す図である。「論理回路」として示す、NAND回路とNOT回路とからなる回路は、図に示すような「論理回路ネットリスト」として表現される。論理回路ネットリストは、論理回路内の配線およびデバイスの情報を記述したASCII形式のリストであり、CDLフォーマットや、SPICEフォーマット等が知られている。論理回路データ1(図1)は、このような論理回路ネットリストである。
【0028】
一方、「レイアウト」として示す、論理回路に対応する具体的なレイアウトは、マスクレイアウトパターンとして表現される。マスクレイアウトパターンは、位置、接続関係の全レイアウト等の、レイアウトに関する全情報を所定のフォーマット、例えばバイナリ形式のGDSIIフォーマットで表されている(バイナリ形式であるため、データの具体例は明示していないが、LVS比較部3においては、その内容を解読可能である)。レイアウトデータ2(図1)は、このようなマスクレイアウトパターンデータである。
【0029】
「LVSルールファイル」として示されているのは、LVSルール31(図1)に格納された、レイアウトの構造を記述する際の表記を定義したデータファイルの内容の例である。
【0030】
要素認識部32は、GDSIIフォーマットファイルのマスクレイアウトパターンと、LVSルールファイルのLVSルールとに基づいて、レイアウトネットリストを生成する。例えば、[CELL INV {PORT 3 4}]の下4行は、論理回路のインバータ要素を記述し、[CELL NAND2 {PORT 3 4 5}]の下8行は、論理回路のNAND要素を記述する。そして[CELL TOP_CELL {PORT E A B}]の下2行は、論理回路全体の入出力関係を示す。
【0031】
比較検証部33は、要素認識部32が生成したレイアウトネットリストと、論理回路ネットリストとに基づいて、LVSを用いて配線とデバイスの接続関係を比較し、対応関係を検証する。
【0032】
次に、図3〜図12を参照して、ファイル化部4〜7(図1)の動作を説明する。まず最初に、パラレルデバイス・クロスリファレンス情報ファイル化部4(図1)から説明する。
【0033】
ファイル化部4(図1)は、比較検証部33から、LVS比較の際に生成したマージされた論理回路ネットリスト、および、レイアウトネットリストを受け取り、クロスリファレンス情報を生成する。クロスリファレンス情報とは、複数のデバイスを1つの機能ユニットとして捉えた場合、すなわち、複数のデバイスを1つにマージしたとして取り扱う場合に、論理回路ネットリストのデバイスおよび配線、および、レイアウトネットリストのデバイスおよび配線の対応関係を規定する。なお、ファイル化部4(図1)は、パラレル接続されたデバイスのクロスリファレンス情報を生成することから、パラレル接続以外の接続、例えば、シリアル接続の場合には、クロスリファレンス情報ファイルを生成できない。この場合は、受け取ったネットリスト等をそのまま後段のファイル化部5(図1)に送る。以下の説明では、いずれのファイル化部4〜7も、比較検証部33からマージされた論理回路ネットリスト、および、レイアウトネットリストを受け取るとして説明する。
【0034】
図3は、複数のデバイスがパラレル接続により構成された論理回路およびレイアウトの例を示す図である。論理回路は、入力をSA、出力をOUTとする3つのデバイスSMA,SMB,SMCを含む。LVS比較部3は、比較検証部33(図1)におけるLVS比較検証時にこれら3つのデバイスSMA,SMB,SMCをマージ処理し、最も単純化して論理回路ネットリストを取り扱う。この例では、LVS比較部3は、論理回路ネットリストを、入力をSA、出力をOUTとする1つの機能ボックス38として取り扱う。なお、与えられた論理回路、レイアウトが直列(シリアル)接続か、パラレル(並列)接続かを判断する場合には、例えば、OUTからGNDまでに至る経路に基づいて判断することができる。すなわち、OUTからGNDまでに、デバイスが連続して配置されている場合にはシリアル接続であると判断でき、複数の経路が存在する場合には、パラレル接続であると判断できる。ファイル化部4(図1)は、以下のように表現されたボックス38の情報を受け取る。
{INST ParaChain#1=N||3 {PIN GND=SD#0 OUT=SD#1 SA=G#0 GND=BULK}}
そしてファイル化部4(図1)は、ボックス38を表す情報として、
ParaChain#1 {inst SMA=N} {inst SMB=N} {inst SMC=N}
も併せて保持する。
【0035】
一方、レイアウトについても同様に、LVS比較部3は、最も単純化してレイアウトネットリストを取り扱う。この例では、LVS比較部3は、比較検証部33(図1)におけるLVS比較検証時に、デバイスLM1およびLM2をマージ処理し、入力をLA、出力をOUTとする1つの機能ボックス39としてレイアウトネットリストを取り扱う。これにより、1つの機能ボックスにマージすることにより、論理回路とレイアウトとの対応を取ることができる。このボックス39は、以下のように表現され、ファイル化部4(図1)は、この情報を受け取る。
{INST ParaChain#8=N||2 {PIN GND=SD#0 OUT=SD#1 LA=G#0 GND=BULK}}
そしてファイル化部4(図1)は、ボックス39を表す情報として、
も併せて保持する。
【0036】
ファイル化部4(図1)は、上述したボックス38および39の各々を特定する情報に基づいて、以下のように処理を行う。すなわち、周辺の接続関係の比較により、論理回路ネットの入力SAは、レイアウトの入力LAに対応すると判断する。このとき、論理回路のParaChain#1と、レイアウトのParaChain#8 とは、ピンがすべて一致するため、ParaChain#1== ParaChain#8 (一致)と判断できる。この時点で、ParaChain#1== ParaChain#8、および、SA==LA が得られている。
【0037】
次に、ファイル化部4(図1)は、これらの情報および各ネットリストに基づいて、論理回路とレイアウトで対応するパラレルデバイスの数が複数対複数(この例では3対2)であると判断する。そこで、ファイル化部4(図1)は、論理回路の1つのデバイス名を代表名として出力する。どのデバイス名を採用するかは任意である。
【0038】
図4は、ファイル化部4(図1)が出力したクロスリファレンス情報ファイルを示す図である。図4中の「−−Merge Device−−」の欄に、論理回路の3つのデバイス名(SMA,SMB,SMC)と、代表名(SMA)とが示されている。代表名が決まると、次に、レイアウトにおけるデバイスに、名称を付す。名称は、”代表名@xx”という形式である。このxxには、MOSデバイスである場合には、”M”を付した数字が入る。図3および図4の例では、「SMA@M1」、および、「SMA@M2」が付される。図4中の「−−Correspond−−」の欄には、レイアウトの「LM1」には、「SMA@M1」が対応付けられ、「LM2」には「SMA@M2」が対応付けられていることが理解される。このようにして、ファイル化部4(図1)は、論理回路とレイアウト間の対応表を生成する。
【0039】
ファイル化部4(図1)が生成したクロスリファレンス情報は、残りのファイル化部5〜7を経てクロスリファレンス情報ファイル8に格納され、ネットリスト生成部9、または、解析部11等における後の処理に使用される。例えば、ネットリスト生成部9、または、解析部11において、図3に示す論理回路のデバイス「SMB」に対応するレイアウトのデバイス名が必要な場合を考える。すると、ネットリスト生成部9等は、図4に示すクロスリファレンス情報ファイル中の「−−Merge Device−−」以下より、「SMB」は「SMA」にマージされているという情報を引き出す。そして次に「−−Correspond−−」以下の「Device name」を参照して、「LM1」および「LM2」という2つのレイアウトデバイスに対応しているという情報を引き出す。以上のようにして、「SMB」に対応するレイアウトのデバイス名「LM1」および「LM2」が得られる。
【0040】
次に、図5および図6を参照して、シリアルデバイス・クロスリファレンス情報ファイル化部5(図1)の動作を説明する。図5は、複数のデバイスがシリアル接続により構成された論理回路およびレイアウトの例を示す図である。論理回路は、入力をSA、出力をOUTとする2つのデバイスSMA,SMBと、中間配線SNETAとを含む。LVS比較部3は、比較検証部33(図1)におけるLVS比較検証時にこれら2つのデバイスSMA,SMBをマージ処理し、入力をSA、出力をOUTとする、点線で囲まれた1つの機能ボックスとして論理回路ネットリストを取り扱う。ファイル化部5(図1)は、以下のように表現されたこの機能ボックスの情報を受け取る。
{INST SeriChain#1=N−−2 {PIN GND=SD#0 OUT=SD#1 SA=G#0 GND=BULK}}
そしてファイル化部4(図1)は、機能ボックスを表す情報として、
SeriChain#1 {inst SMB=N} {inst SMA=N}
も併せて保持する。
【0041】
一方、レイアウトについても同様に、LVS比較部3は、比較検証部33(図1)におけるLVS比較検証時に、デバイスLM1〜LM3をマージ処理し、入力をLA、出力をOUTとする、点線で囲まれた1つの機能ボックスとしてレイアウトネットリストを取り扱う。ファイル化部5(図1)は、以下のように表現されたこの機能ボックスの情報を受け取る。
{INST SeriChain#8=N−−3 {PIN GND=SD#0 OUT=SD#1 LA=G#0 GND=BULK}}
そしてファイル化部4(図1)は、ボックスを表す情報として、
も併せて保持する。
【0042】
ファイル化部5(図1)は、上述したボックスの各々を特定する情報に基づいて、以下のように処理を行う。すなわち、周辺の接続関係の比較により、論理回路ネットの入力SAは、レイアウトの入力LAに対応すると判断する。このとき、論理回路のSeriChain#1と、レイアウトのSeriChain#8 とは、ピンがすべて一致するため、SeriChain#1==SeriChain#8(一致)と判断できる。この時点で、SeriChain#1== SeriChain#8、および、SA==LA が得られている。
【0043】
ファイル化部5(図1)は、これらの情報および各ネットリストに基づいて、論理回路とレイアウトで対応するシリアルデバイスの数が複数対複数(この例では2対3)であると判断できる。そこで、ファイル化部5(図1)は、論理回路の1つのデバイス名を代表名として出力する。どのデバイス名を採用するかは任意である。
【0044】
図6は、ファイル化部5(図1)が出力したクロスリファレンス情報ファイルを示す図である。図6中の「−−Merge Device−−」の欄に、論理回路の2つのデバイス名(SMA,SMB)と、代表名(SMA)とが示されている。以下の処理は、ファイル化部5(図1)における処理と同様である。すなわち、代表名が決まると、次に、レイアウトにおけるデバイスに、”代表名@xx”という形式で名称を付す。このxxには、先のファイル化部4(図1)についての説明と同様、MOSデバイスである場合には、M1、M2等が入る。図5および図6の例では、「SMA@M1」、「SMA@M2」および「SMA@M3」が付される。図6中の「−−Correspond−−」の欄には、レイアウトの「LM1」には、「SMA@M1」が対応付けられ、「LM2」には「SMA@M2」が対応付けられ、「LM3」には「SMA@M3」が対応付けられていることを示す。さらに、レイアウトの中間配線「LN_1」および「LN_2」には、中間配線名「SNETA」に「@1」、「@2」を付加して出力側から対応させる。このようにして、ファイル化部5(図1)は、論理回路とレイアウト間の対応表を生成する。
【0045】
ファイル化部5(図1)が生成したクロスリファレンス情報は、残りのファイル化部6および7を経てクロスリファレンス情報ファイル8に格納され、ネットリスト生成部9、または、解析部11等における後の処理に使用される。例えば、ネットリスト生成部9、または、解析部11において、図5に示す論理回路の配線「SNETA」に対応するレイアウトの配線名が必要な場合を考える。すると、ネットリスト生成部9等は、図6に示すクロスリファレンス情報ファイル中の「−−Correspond−−」以下の「Net name」を参照して、「SNETA」が付された配線を特定する。すなわち、論理回路の配線「SNETA」が、「LN_1」および「LN_2」という2つのレイアウト配線に対応しているという情報を引き出す。以上のようにして、「SNETA」に対応するレイアウトの配線名「LN_1」および「LN_2」が得られる。
【0046】
次に、図7および図8を参照して、パラレルシリアルデバイス・クロスリファレンス情報ファイル化部6(図1)の動作を説明する。ファイル化部6が動作するのは、ファイル化部4および5によっては、ともにクロスリファレンス情報が生成できなかった場合である。図7は、複数のデバイスがパラレル接続、および、シリアル接続により構成された論理回路およびレイアウトの例を示す図である。論理回路は、入力をSA、SB、SC、出力をOUTとする3つのデバイスSMA,SMB、SMCと、中間配線SNETA、SNETBとを含む。LVS比較部3は、比較検証部33(図1)におけるLVS比較検証時にこれら3つのデバイスSMA,SMB,SMCをマージ処理し、入力をSA、SB、SC、出力をOUTとする、点線で囲まれた1つの機能ボックスとして論理回路ネットリストを取り扱う。ファイル化部6(図1)は、以下のように表現されたボックスの情報を受け取る。
{INST SeriChain#2=N−−3 {PIN GND=SD#0 OUT=SD#1 SC=G#0 SB=G#1 SC=G#2 GND=BULK}}
ファイル化部6(図1)はさらに、機能ボックスを表す情報として、
SeriChain#2 {inst SMC=N} {inst SMB=N} {inst SMA=N}
も併せて保持する。
【0047】
一方、レイアウトについても同様に、LVS比較部3は、比較検証部33(図1)におけるLVS比較検証時に、デバイスLM1〜LM6をマージ処理し、入力をLA、LB、LC、出力をOUTとする、点線で囲まれた1つの機能ボックスとしてレイアウトネットリストを取り扱う。ファイル化部6(図1)は、以下のように表現されたこの機能ボックスの情報を受け取る。
{INST SeriChain#8=N−−3 {PIN GND=SD#0 OUT=SD#1 LA=G#0 GND=BULK}}
そしてファイル化部4(図1)は、点線で囲まれたボックスを表す情報として、
も併せて保持する。さらに、並列接続された、LM1〜3の直列接続トランジスタ群と、LM4〜6の並列接続トランジスタ群とが1つにマージされ、ボックスを表す情報はさらに以下を含む。
比較検証部33がLVSによる比較・検証を行う際に、以下のように表現されたレイアウトネットリストが利用され、ファイル化部6(図1)は、この情報も併せて保持する。
{INST ParaChain#37=N||2 {PIN GND=SD#0 OUT=SD#1 LC=G#0 LB=G#1 LA=G#2 GND=BULK}}
ファイル化部6(図1)は、上述したボックスの各々を特定する情報に基づいて、以下のように処理を行う。すなわち、周辺の接続関係の比較により、論理回路ネットの入力SAが、レイアウトの入力LAに、同様にSBがLBに、SCはLCに対応すると判断する。このとき、論理回路のSeriChain#2と、レイアウトのParaChain#37 とは、ピンがすべて一致するため、SeriChain#2==ParaChain#37(一致)と判断できる。この時点で、以下の4つの情報が得られている。すなわちSeriChain#2==ParaChain#37、および、SA==LA, SB==LB, SC==LCが得られている。
【0048】
ファイル化部6(図1)は、上述の情報および各ネットリストに基づいて、論理回路ネットリストおよびレイアウトの各々について、ゲート配線名がSA/LAで、かつ、出力OUTから見て1つ目のデバイスに着目する。その結果、ファイル化部6(図1)は、論理回路ではSMAのみが該当するが、レイアウトにはLM1およびLM4の2つが該当すると判断する。同様に、ファイル化部6(図1)は、ゲート配線名がSB/LBで、かつ、出力OUTから見て2つ目のデバイス、および、3つ目のデバイスに順に着目する。その結果、論理回路デバイスのSMBに対してレイアウトのLM2とLM5が該当し、論理回路デバイスのSMCに対してレイアウトのLM3とLM6が該当すると判断する。ファイル化部6(図1)は、以上の結果をクロスリファレンス情報ファイルに出力する。
【0049】
図8は、ファイル化部6(図1)が出力したクロスリファレンス情報ファイルを示す図である。レイアウトの「LM1」および「LM4」には、「SMA@M1」および「SMA@M2」が対応付けられている。また、レイアウトの「LM2」および「LM5」には、「SMB@M1」および「SMB@M2」が対応付けられ、レイアウトの「LM3」および「LM6」には、「SMC@M1」および「SMC@M2」が対応付けられている。さらに、クロスリファレンス情報ファイルには、論理回路の中間配線とレイアウトの中間配線の対応関係も示されている。すなわち、出力OUTに近い側の論理回路の配線「SNETA」が、出力OUTに近い側のレイアウトの配線「LN_1」と「LN_3」に対応する。よって、「LN_1」および「LN_3」には、「SNETA@1」および「SNETA@2」が対応付けられている。同様に、論理回路の配線「SNETB」は、レイアウトの配線「LN_2」と「LN_4」に対応する。よって、「LN_2」および「LN_4」には、「SNETB@1」および「SNETB@2」対応付けられる。このようにして、ファイル化部6(図1)は、論理回路とレイアウト間の対応表を生成する。
【0050】
ファイル化部6(図1)が生成したクロスリファレンス情報は、残りのファイル化部7を経てクロスリファレンス情報ファイル8に格納され、ネットリスト生成部9、または、解析部11等における後の処理に使用される。例えば、ネットリスト生成部9、または、解析部11において、図7に示す論理回路の配線「SNETA」に対応するレイアウトの配線名が必要な場合を考える。すると、ネットリスト生成部9等は、図8に示すクロスリファレンス情報ファイル中の「−−Correspond−−」以下の「Net name」を参照して、「SNETA」が付された配線を特定する。すなわち、論理回路の配線「SNETA」が、「LN_1」および「LN_3」という2つのレイアウト配線に対応しているという情報を引き出す。以上のようにして、「SNETA」に対応するレイアウトの配線名「LN_1」および「LN_3」が得られる。
【0051】
次に、図9および図10を参照して、論理等価デバイス・クロスリファレンス情報ファイル化部7(図1)の動作を説明する。
【0052】
図9は、複数のデバイスがシリアル接続により構成された論理回路およびレイアウトの例を示す図である。論理回路の入力は、出力OUTに近い方からSA,SB,SCであるのに対して、レイアウトの入力は、出力OUTに近い方からLC,LA,LBである。よって、SAとLA、SBとLB、SCとLCのように、同じ符号(A,B,C)を対応させることはできない。
【0053】
まず、このような論理回路とレイアウトが入力されたときに、LVS比較部3は、比較検証部33(図1)におけるLVS比較検証時に、論理回路の3つのデバイスSMA,SMB,SMCをマージ処理し、入力をSA、SB、SC、出力をOUTとする、点線で囲まれた1つの機能ボックスとして論理回路ネットリストを取り扱う。このとき、LVS比較部3は、入力SA,SB,SCの並び順が、論理に無関係であると判断する。その理由は、下記表1に示すように、出力OUTは、SA,SB,SCがすべて1のときに接地電位(GND)になり、その他の場合には、SA、SB、SCの値によらず一定値(1.8V)になるからである。
【0054】
【表1】
【0055】
その結果、論理回路ネットリストは以下のように表現され、ファイル化部7(図1)は、この情報を受け取る。
{INST SeriChain#4=N−−3{PIN GND=SD#0 OUT=SD#1 SC=G#s0 SB=G#s1 SC=G#s2 GND=BULK}}
ここで、「SC=G#s0」、「SC=G#s1」、「SC=G#s2」における小文字「s」は、互いに入れ替え可能(swappable)であることを示す。より具体的には、SCは、GNDから見て1つ目のゲートであるが、「G#s1」に対応する「SB」、または、「G#s2」に対応する「SA」と入れ替え可能である。
【0056】
ファイル化部7(図1)はさらに、点線で囲まれた機能ボックスを表す情報として、
SeriChain#4 {inst SMC=N} {inst SMB=N} {inst SMA=N}
も併せて保持する。
【0057】
レイアウトについても、論理回路と同様の理由により、入力LA、LB、LCの並び順は論理に無関係である。よって、レイアウトネットリストは以下のように表現され、ファイル化部7(図1)は、この情報を受け取る。
{INST SeriChain#14=N−−3{PIN GND=SD#0 OUT=SD#1 LB=G#s0 LA=G#s1 LC=G#s2 GND=BULK}}
ファイル化部7(図1)はさらに、点線で囲まれた機能ボックスを表す情報として、
も併せて保持する。
【0058】
ファイル化部7(図1)は、上述したボックスの各々を特定する情報に基づいて、以下のように処理を行う。すなわち、周辺の接続関係の比較により、論理回路ネットの入力SAが、レイアウトの入力LAに、同様にSBがLBに、SCはLCに対応すると判断する。このとき、論理回路のSeriChain#4と、レイアウトのSeriChain#14 とは、ピンがすべて一致するため、SeriChain#4==SeriChain#14(一致)と判断できる。この時点で、以下の4つの情報が得られている。すなわちSeriChain#4==SeriChain#14、および、SA==LA, SB==LB, SC==LCが得られている。
【0059】
ファイル化部7(図1)は、上述の情報および各ネットリストに基づいて、論理回路ネットリストおよびレイアウトの対応関係を記述したクロスリファレンス情報を生成する。
【0060】
ファイル化部7(図1)は、2種類の基準に基づいてクロスリファレンス情報を生成する。すなわち、ゲート端子の接続位置による基準と、ソース端子またはドレイン端子の接続位置による基準である。
【0061】
ゲート端子の接続位置による基準に基づく場合には、ファイル化部7(図1)は、図9におけるレイアウトデバイス「LM1」のゲート「LC」を、論理回路のゲート「SC」に対応させる。同様に、レイアウトのゲート「LA」を、論理回路のゲート「SA」に対応させ、レイアウトのゲート「LB」を、論理回路のゲート「SB」に対応させる。図10は、ファイル化部7(図1)が出力したクロスリファレンス情報ファイルを示す図である。ゲート端子の接続位置による基準を用いて得られたクロスリファレンス情報は、「−−Gate based Correspond−−」に示されている。この基準によれば、レイアウトの「LM1」、「LM2」、「LM3」は、それぞれ論理回路の「SMC」、「SMA」、「SMB」に対応付けられる。また、レイアウトの中間配線「LN_1」、「LN_2」は、論理回路の「SNETA」、「SNETB」に対応付けられる。
【0062】
再び図9を参照して、ソース/ドレイン端子の接続位置による基準に基づく場合には、ファイル化部7(図1)は、レイアウトデバイス「LM1」のドレイン配線は「OUT」であるから、論理回路では、ドレイン配線が「OUT」である「SMA」を、レイアウトの「LM1」に対応付ける。同様に、レイアウトの「LM3」を、論理回路の「SMC」に対応させ、レイアウトの「LM2」を、論理回路の「SMB」に対応させる。この結果、図10の「−−S/D based Correspond−−」以下には、この対応関係が示されている。この基準によれば、レイアウトの「LA」、「LB」、「LC」は、それぞれ論理回路の「SA」、「SB」、「SC」に対応付けられる。また、レイアウトの中間配線「LN_1」、「LN_2」は、論理回路の「SNETA」、「SNETB」に対応付けられる。また、レイアウトの中間配線「LN_1」、「LN_2」は、論理回路の「SNETA」、「SNETB」に対応付けられる。またファイル化部7(図1)は、入れ替えても論理が同じであるデバイスおよび配線の情報、すなわち、上述した「SC=G#s0」、「SC=G#s1」等、小文字の「s」が付された端子およびデバイスを抽出し、「Swappable」以下に追加する。
【0063】
ファイル化部7(図1)が生成したクロスリファレンス情報は、クロスリファレンス情報ファイル8に格納され、ネットリスト生成部9、または、解析部11等における後の処理に使用される。例えば、ネットリスト生成部9、または、解析部11において、図9に示す論理回路のデバイス「SMB」に対応するレイアウトのデバイス名が必要な場合を考える。ゲート端子の接続位置による基準でレイアウトのデバイス名を得たい場合には、ネットリスト生成部9等は、図10に示すクロスリファレンス情報ファイル中の「−−Gate based Correspond−−」以下の「Device name」を参照して、「LM3」を特定する。また、ソース/ドレイン端子の接続位置による基準でレイアウトのデバイス名を得たい場合には、ネットリスト生成部9等は、図10に示すクロスリファレンス情報ファイル中の「−−S/D based Correspond−−」から、「LM2」を特定する。以上のようにして、論理回路の各デバイスに対応するレイアウトのデバイス名が得られる。
【0064】
以上説明したように、ファイル化部4〜7が生成するクロスリファレンス情報は、ブロック内部の素子、中間配線等の全ての要素に対して論理回路とレイアウトとの対応を特定できる。ネットリスト生成部9、解析部11等は、レイアウトに寄生する素子情報を加味した論理回路の動作を検証・解析するバックアノテーション時に、これらのクロスリファレンス情報を参照することにより、より詳細な解析が可能であり、また、指定したパスのみの解析が可能になる。すなわち、ネットリスト生成部9、解析部11等は、論理回路とレイアウトの配線名やデバイス名の対応を容易に認識でき、論理回路図面上の名称で配線名やデバイス名を指定できるようになる。よって、対応関係の認識効率を向上させ、かつ、認識ミスを削減できる。
【0065】
なお、ファイル化部4および5(図1)の順序は、入れ替えることができる。ファイル化部6は、ファイル化部4および5の両方において処理できなかった場合に、その論理回路およびレイアウトのデータを受け取ればよい。
【0066】
(実施の形態2)
実施の形態2では、実施の形態1の設計検証装置に、さらに別の構成要素を加えた設計検証装置を説明する。
【0067】
図11は、実施の形態2の設計検証装置200の構成を示すブロック図である。設計検証装置200は、設計検証装置100(図1)に、さらにゲート端子基準検索/修正部12を追加して構成されている。本実施の形態では、ゲート端子基準検索/修正部12、および、これに関連する他の構成要素のみを説明する。直接的に関連しない構成要素の機能および動作は、実施の形態1の設計検証装置100(図1)の構成要素と同じであるので、その説明は省略する。なお図11では、LVS比較部3に含まれる構成要素は記載していないが、図1に示すLVS比較部3の各構成要素を有する。
【0068】
ゲート端子基準検索/修正部12は、クロスリファレンス情報ファイル8を受け取り、トランジスタのゲート端子の接続関係に基づいて、論理回路とレイアウトの対応情報を検索・修正する。以下、図12の(a)〜(c)を参照して具体的に説明する。
【0069】
図12の(a)は、論理回路およびレイアウトを示す図である。図12の(b)は、論理等価デバイス・クロスリファレンス情報ファイル化部7(図11)が、(a)の論理回路およびレイアウトから作成したクロスリファレンス情報ファイルを示す図である。ゲート端子基準検索/修正部12(図11)は、クロスリファレンス情報ファイルを受け取って、それに含まれている「−−Gate based Correspond−−」以下に記述されている対応表を検索する。また、ゲート端子基準検索/修正部12は、ネットリスト生成部9からレイアウト寄生素子付きネットリストを受け取る。検索の結果に基づいて、ゲート端子基準検索/修正部12は、受け取ったレイアウト寄生素子付きネットリストを修正して、デバイス名を、GND側からSMB,SMA,SMCの順に並べ、ゲート配線名が、SB、SA,SCの順に並べ、そして、中間配線名がSNETA@2,SNETA@1の順になるように並べる。
【0070】
さらに、例えば論理回路の中間配線「SNETA」が、寄生素子に関する抽出および出力指定配線となっている場合には、ゲート端子基準対応修正部12は、さらに、クロスリファレンス情報ファイルの「−−Gate based Correspond−−」以下に記述されている対応表を検索する。そして、「SNETA」に対応するレイアウト配線「LN_1」、「LN_2」についてもレイアウト寄生素子情報を抽出する。そして、その寄生素子情報をレイアウト寄生素子付きネットリストに追加する。図12の(c)は、トランジスタのゲート端子を基準にした情報検索結果を示す。
【0071】
以上により、本実施の形態によれば、トランジスタのゲート端子の接続関係を基準にして、論理回路との対応が自動かつ完全にとられたバックアノテーションが可能となる。
【0072】
(実施の形態3)
実施の形態3は、実施の形態2の変形例を説明する。すなわち実施の形態3では、実施の形態2で説明したゲート端子基準検索/修正部12(図11)に代えて、ソースドレイン端子基準検索/修正部13を設けた設計検証装置を説明する。
【0073】
図13は、実施の形態3の設計検証装置300の構成を示すブロック図である。設計検証装置300は、設計検証装置200(図11)のゲート端子基準検索/修正部12を、ソースドレイン端子基準検索/修正部13に変更して構成されている。本実施の形態では、ソースドレイン端子基準検索/修正部13、および、これに関連する他の構成要素のみを説明する。実施の形態1および2でした他の構成要素の説明は、省略する。
【0074】
ソースドレイン端子基準検索/修正部13は、クロスリファレンス情報ファイル8を受け取り、トランジスタのソース/ドレイン端子の接続関係に基づいて、論理回路とレイアウトの対応情報を検索・修正する。以下、図14の(a)〜(c)を参照して具体的に説明する。
【0075】
図14の(a)は、論理回路およびレイアウトを示す図である。図14の(b)は、論理等価デバイス・クロスリファレンス情報ファイル化部7(図11)が、(a)の論理回路およびレイアウトから作成したクロスリファレンス情報ファイルを示す図である。ソースドレイン端子基準検索/修正部13(図13)は、クロスリファレンス情報ファイルを受け取って、それに含まれている「−−S/D Based Correspond−−」以下に記述されている対応表を検索する。また、ソースドレイン端子基準検索/修正部13は、ネットリスト生成部9からレイアウト寄生素子付きネットリストを受け取る。検索の結果に基づいて、ソースドレイン端子基準検索/修正部13は、受け取ったレイアウト寄生素子付きネットリストを修正して、デバイス名を、GND側からSMC,SMB,SMAの順に並べ、ゲート配線名が、SB、SA,SCの順に並べ、そして、中間配線名がSNETB,SNETAの順になるように並べる。
【0076】
さらに、例えば論理回路の中間配線「SNETA」が、寄生素子に関する抽出および出力指定配線となっている場合には、ソースドレイン端子基準検索/修正部13は、さらに、クロスリファレンス情報ファイルの「−− S/D Based Correspond−−」以下に記述されている対応表を検索する。そして、「SNETA」に対応するレイアウト配線「LN_1」、「LN_2」についてもレイアウト寄生素子情報を抽出する。そして、その寄生素子情報をレイアウト寄生素子付きネットリストに追加する。
【0077】
以上により、本実施の形態によれば、トランジスタのソース/ドレイン端子の接続関係を基準にして、論理回路との対応が自動かつ完全にとられたバックアノテーションが可能となる。図14の(c)は、トランジスタのソース/ドレイン端子を基準にした情報検索結果を示す。
【0078】
なお、実施の形態2で説明したゲート端子基準検索/修正部12(図11)と、実施の形態3で説明したソースドレイン端子基準検索/修正部13とを両方備えた設計検証装置を考えることもできる。ユーザは、必要に応じて、ゲート端子、または、ソース/ドレイン端子のいずれの接続関係を基準にしてバックアノテーションするかを決定できる。
【0079】
(実施の形態4)
実施の形態4は、レイアウト設計完了前等にプレレイアウトシミュレーションを行う半導体設計検証装置を説明する。「プレレイアウトシミュレーション」とは、論理回路ネットリストを用いた、レイアウトから抽出した寄生素子情報を加味しない論理回路の動作検証をいう。以下、より詳しく説明する。
【0080】
図15は、実施の形態4の設計検証装置400の構成を示すブロック図である。設計検証装置400は、論理回路データ1と、レイアウトデータ2と、LVS比較部3と、パラレルデバイス/シリアルデバイス/パラレルシリアルデバイス/論理等価デバイスのクロスリファレンス情報ファイル化部4〜7と、論理回路対レイアウトに関するクロスリファレンス情報ファイル8とを有する。これらの構成要素の機能および動作は、実施の形態1の設計検証装置100(図1)の該当する構成要素と同じであるので、その説明は省略する。
【0081】
設計検証装置400はさらに、プレレイアウトシミュレーション部14と、ノードリスト15と、ノードリスト変換部16と、変換後ノードリスト17と、パス選択型ネットリスト生成部18と、パス選択型ネットリスト19と、パス選択型解析部20とを有する。
【0082】
以下、これらの機能および動作を説明する。まず、プレレイアウトシミュレーション部14は、論理回路データ1を用いた回路の動作検証を実行する。ここで、プレレイアウトシミュレーションとは、論理回路に所定の電圧を印加したときの、各ノードの電位の変化についてのシミュレーションである。ノードリスト15は、プレレイアウトシミュレーション部14によるシミュレーションの結果、すなわち、各ノードについて、電位の変化の有無を示すノードリストを記述する。より詳しくは、ノードリスト15は、activeノードリストおよびinactiveノードリストから構成されている。このうち、activeノードリストには、プレレイアウトシミュレーション時に電位の変化したノード名が記述されている。inactiveノードリストには、プレレイアウトシミュレーション時に電位の変化しなかったノード名と電位とが記述されている。ノードリスト15もまた、所定のデータベースとして記憶装置に記憶される。この記憶装置は、論理回路データ1およびレイアウトデータ2を記憶している記憶装置と同じであってもよい。
【0083】
ノードリスト変換部16は、クロスリファレンス情報ファイル8に基づいて、ノードリスト15のinactiveノードリストについて、記載されたノード名に対応するレイアウト側の全てのノード名と電位とを各リストに追加する。変換後ノードリスト17は、ノードリスト変換部16から出力された、変換後のactiveノードリストおよび変換後のinactiveノードリストを含む。
【0084】
パス選択型ネットリスト生成部18は、LVS比較部3から出力された比較結果、および、変換後ノードリスト17を用いて、シミュレーション時に動作する部分回路に対応するレイアウトの寄生素子情報のみを抽出する。さらに生成部18は、シミュレーションに必要な部分回路に対してのみ、対応するレイアウトの寄生素子情報のみを付加し、レイアウトネットリストを生成する。このレイアウトネットリストを、パス選択型レイアウト寄生素子付きネットリスト19と称する。パス選択型解析部20は、変換後ノードリスト17のinactiveノードリスト、および、パス選択型ネットリスト19に基づいて、論理回路の動作を検証・解析する。
【0085】
以上のように、プレレイアウトシミュレーションにより、電位が変化したノードの情報、および電位の変化しなかったノードの情報を得て、パス選択型ネットリスト生成部がその情報を参照することにより、半導体設計検証装置は、シミュレーション時に動作する部分回路に対応するレイアウト寄生素子の情報のみを考慮できる。
【0086】
次に、図16の(a)〜(d)を参照して、設計検証装置400の主要な動作を説明する。図16の(a)は、論理回路およびレイアウトを示す図である。図から明らかなように、複数のデバイスがパラレル接続、および、シリアル接続されている。図16の(b)は、パラレルシリアルデバイス・クロスリファレンス情報ファイル化部6(図15)が(a)の論理回路およびレイアウトに基づいて生成したクロスリファレンス情報ファイルである。すなわち、クロスリファレンス情報ファイル8(図15)は既に生成されているとする。図16の(c)は、activeノードリストおよびinactiveノードリストの例である。図16の(d)は、変換後のactiveノードリストおよび変換後のinactiveノードリストの例である。
【0087】
まずノードリスト変換部16は、クロスリファレンス情報ファイル(図16の(b))内に、activeノードリスト(図16の(c))に記載されている配線名’SNETA’が存在するか否かを検索する。そして、配線名’SNETA’が存在することを知ると、ノードリスト変換部16は、対応しているレイアウト配線名’LN_1’’LN_3’を既に存在するactiveノードリストに追加して出力する。この出力結果が、変換後のactiveノードリスト(図16の(d))である。
【0088】
次に、ノードリスト変換部16は、クロスリファレンス情報ファイル(図16の(b))内に、inactiveノードリスト(図16の(c))に記載されている配線名’SNETB’が存在するか否かを検索する。そして、配線名’SNETB’が存在することを知ると、ノードリスト変換部16は、対応しているレイアウト配線名’LN_2’’LN_4’を既に存在するinactiveノードリストに追加して出力する。inactiveノードリストでは、’SNETB’の定電位定義は0Vである。追加出力されたレイアウト配線名’LN_2’’LN_4’の定電位定義は、’SNETB’と同じ0Vに設定する。
【0089】
パス選択型ネットリスト生成部18は、変換後のactiveノードリスト(図16の(d))を参照して、配線名’SNETA’’LN_1’’LN_3’についてレイアウトの寄生素子情報を抽出し、配線名’SNETA’’LN_1’’LN_3’についてのレイアウト寄生素子情報付きネットリストを出力する。パス選択型解析部20(図15)は、変換後のinactiveノードリスト(図16の(d))を参照して、配線’SNETB’’LN_2’’LN_4’の電位を0Vに設定する。
【0090】
従来の装置では、パラレルおよびシリアルの複合型マージデバイス群のレイアウト中間ノードなどに、activeノードでもinactiveノードでもない電位不定のノードが存在したが、本実施の形態の設計検証装置によれば、activeノードinactiveノードを自動で、かつ、漏れなく指定したパス選択型バックアノテーションが可能になる。
【0091】
(実施の形態5)
実施の形態5は、論理回路ベースのレイアウト寄生素子情報付きネットリストを生成する半導体設計検証装置を説明する。
【0092】
図17は、実施の形態5の設計検証装置500の構成を示すブロック図である。設計検証装置500は、論理回路データ1と、レイアウトデータ2と、LVS比較部3と、パラレルデバイス/シリアルデバイス/パラレルシリアルデバイス/論理等価デバイスのクロスリファレンス情報ファイル化部4〜7と、論理回路対レイアウトに関するクロスリファレンス情報ファイル8と、プレレイアウトシミュレーション部14と、ノードリスト15と、パス選択型解析部20とを有する。これらの構成要素の機能および動作は、実施の形態1および4の設計検証装置の該当する構成要素と同じであるので、その説明は省略する。
【0093】
設計検証装置500はさらに、パス選択型ネットリスト生成部18と、パス選択型解析部20と、論理回路基準検索/修正部21と、論理回路ベースのパス選択型ネットリスト22とを有する。パス選択型ネットリスト生成部18は、LVS比較部3から出力された比較結果、および、ノードリスト15を用いて、シミュレーション時に動作する部分回路に対応するレイアウトの寄生素子情報のみを抽出する。論理回路基準検索/修正部21は、パス選択型ネットリスト生成部18の出力に基づいて、クロスリファレンス情報ファイル8から、論理回路を基準として論理回路とレイアウトとの対応情報を検索し、修正する。パス選択型ネットリスト22は、基準検索/修正部21で生成される、シミュレーション時に動作する部分回路に対応するレイアウトの寄生素子情報が付加されたネットリストを生成する。このネットリストは、論理回路とデバイス数、デバイス/配線名、接続関係すべてが全く一致している、論理回路ベースのパス選択型寄生素子付きネットリストである。パス選択型解析部20は、パス選択型ネットリスト22と、ノードリスト15とに基づいて、論理回路の動作を検証・解析する。
【0094】
次に、図18の(a)〜(d)を参照して、設計検証装置500の主要な動作を説明する。図18の(a)〜(c)は、複数のデバイスがパラレル接続、および、シリアル接続されており、図16の(a)〜(c)と同じ例を用いている。図18の(a)に示す論理回路およびレイアウトが与えられると、パラレルシリアルデバイス・クロスリファレンス情報ファイル化部6(図17)は、図18の(b)に示すクロスリファレンス情報ファイルを生成する。一方、プレレイアウトシミュレーション部14は、図16の(c)に示すノードリスト15を生成する。
【0095】
図18の(d)は、論理回路を基準にした検索結果を示す。この検索は、以下のように行われる。まず、パス選択型ネットリスト生成部18は、activeノードリスト15に記載されている、配線名’SNETA’についてレイアウト寄生素子情報を抽出し、配線名’SNETA’についてのレイアウト寄生素子情報付きネットリストを生成する。次に論理回路基準検索/修正部21は、クロスリファレンス情報ファイル(b)の’−−Correspond−−’以下に記述されている対応表を参照し、レイアウトデバイス’LM1’および’LM4’に関する情報を論理回路デバイス’SMA’に返し、同様にレイアウトデバイス’LM2’、’LM5’に関する情報を論理回路デバイス’SMB’に返し、またレイアウトデバイス’LM3’、’LM6’に関する情報を論理回路デバイス’SMC’に返す。
【0096】
一方、レイアウト配線については、配線名’LN_1’、’LN_3’についても寄生素子情報を抽出する。これは、寄生素子抽出対象配線’SNETA’が、’LN_1’、’LN_3’に対応づけられているからである。よって、’LN_1’、’LN_3’に関する情報を論理回路配線’SNETA’に返す。それに対して、’LN_2’、’LN_4’に対応する論理回路配線’SNETB’は、寄生素子抽出対象配線ではないため、レイアウト配線’LN_2’、’LN_4’ については寄生素子情報を抽出せず、論理回路配線’SNETB’に返すことにより、レイアウト寄生素子情報付きの論理回路ベースのネットリストを生成する。
【0097】
以上により、本実施の形態によれば、論理回路ベースのレイアウト寄生素子情報付きネットリストを用いて、プレレイアウトシミュレーションで出力されるactiveノードリスト、inactiveノードリスト等をそのまま利用して、パス選択型バックアノテーションを行うことができる。
【0098】
(実施の形態6)
実施の形態6は、電源/GNDライン解析バックアノテーションについて、論理回路ネットリストと電源/GNDレイアウト寄生素子情報付きネットリストを組み合わせる半導体設計検証装置を説明する。
【0099】
図19は、実施の形態6の設計検証装置600の構成を示すブロック図である。設計検証装置600は、論理回路データ1と、レイアウトデータ2と、LVS比較部3と、パラレルデバイス/シリアルデバイス/パラレルシリアルデバイス/論理等価デバイスのクロスリファレンス情報ファイル化部4〜7と、論理回路対レイアウトに関するクロスリファレンス情報ファイル8とを有する。これらの構成要素の機能および動作は、実施の形態1の設計検証装置の該当する構成要素と同じであるので、その説明は省略する。
【0100】
設計検証装置600はさらに、論理回路ネットリスト23と、情報検索部24と、電源/GNDネットリスト生成部25と、電源/GNDレイアウト寄生素子付きネットリスト26と、電源/GND解析部27とを有する。論理回路ネットリスト23は、論理回路データ1より抽出されるデータである。これまでの説明では、論理回路データ1は論理回路ネットリストを例に説明していたため、本実施の形態でも特に異なることはない。しかし、本実施の形態では、論理回路ネットリストを積極的に利用することを明確にする意味で、論理回路ネットリスト23を記載している。情報検索部24は、クロスリファレンス情報ファイル8を用いて、電源/GNDラインの寄生素子情報付きネットリストと、内部回路情報としての論理回路ネットリストとを組み合わせ、論理回路とレイアウトの対応情報を検索する。電源/GNDネットリスト生成部25は、LVS比較部3から出力されたLVS比較結果、および、情報検索部24の検索結果に基づいて、電源/GNDラインの寄生素子情報を抽出し、電源/GNDライン寄生素子情報付きネットリスト26を生成する。電源/GND解析部27は、内部回路情報としての論理回路ネットリスト23と、ネットリスト26とを組み合わせて、論理回路の動作を検証・解析する。
【0101】
次に、図20の(a)〜(c)を参照して、設計検証装置600の主要な動作を説明する。図20の(a)は、論理回路およびレイアウトを示す図である。図では、複数のデバイスがパラレル接続されていることが理解される。図20の(b)は、パラレルデバイス・クロスリファレンス情報ファイル化部4(図19)が、(a)の論理回路およびレイアウトに基づいて生成したクロスリファレンス情報ファイルである。図20の(c)は、情報検索部24(図19)による検索結果を示す図である。
【0102】
情報検索部24は、クロスリファレンス情報ファイル(b)を検索して、’−−Correspond−−’の内容から、レイアウトデバイス’LM1’は、’SMA@1’に対応していること、および、’−−Merge Device−−’の内容から、論理回路の3デバイス’SMA’’SMB’’SMC’がマージされて’SMA’という代表名が付されていることを認識する。この結果、情報検索部24は、レイアウトデバイス’LM1’に、’SMA_SMB_SMC@1’という名称が割り振る。同様に、’LM2’には’SMA_SMB_SMC@2’というデバイス名を割り振る。そして、電源/GNDネットリスト生成部25は、レイアウトデバイス’LM1’に対しては、’SMA_SMB_SMC@1’というデバイス名で、レイアウトデバイス’LM2’に対しては、’SMA_SMB_SMC@2’というデバイス名で、電源/GNDレイアウト寄生素子付きネットリスト26を出力する。
【0103】
続いて、電源/GND解析部27(図19)は、電源/GNDレイアウト寄生素子付きネットリスト26に含まれているデバイス名’SMA_SMB_SMC@1’および’SMA_SMB_SMC@2’に基づいて、論理回路の3つのパラレルデバイスがレイアウトの2つのパラレルデバイスに対応していることを確認する。そして、電源/GND解析部27は、論理回路ネットリスト23のデバイス’SMA’’SMB’および’SMC’から供給される電源の和を、電源/GNDレイアウトの寄生素子付きネットリスト26の2つのソース端子(’SMA_SMB_SMC@1’および’SMA_SMB_SMC@2’の各ソース端子)に割り振る。
【0104】
従来の装置では、論理回路とレイアウトで素子の数が異なる場合などの場合に、電源/GNDラインと内部回路の繋ぎの箇所で不一致が生じていたが、本実施の形態の設計検証装置によれば、いかなる場合においても電源/GNDラインと内部回路の繋ぎの箇所が完全に一致した、精度のよい電源/GNDラインバックアノテーションが可能になる。
【0105】
【発明の効果】
設計検証装置のクロスリファレンス情報ファイル化部が、論理回路における複数の素子およびその配線、および、レイアウトパターンにおける複数の素子およびその配線の対応関係を規定したクロスリファレンス情報を生成するので、素子、中間配線等の全ての要素に対して論理回路とレイアウトとの対応を特定できる。これにより、レイアウトに寄生する素子情報を加味した論理回路の動作を検証・解析するバックアノテーション時に、これらのクロスリファレンス情報を参照することにより、より詳細な解析が可能であり、また、指定したパスのみの解析が可能になる。すなわち、論理回路とレイアウトの配線名やデバイス名の対応を容易に認識でき、論理回路図面上の名称で配線名やデバイス名を指定できるようになる。よって、バックアノテーションにおいて、対応関係の認識効率を向上させ、かつ、認識ミスを削減できる。
【0106】
例えば、クロスリファレンス情報ファイル化部は、パラレル接続/シリアル接続/パラレル接続とシリアル接続との混在する論理回路のクロスリファレンス情報を生成する。または、クロスリファレンス情報ファイル化部は、論理等価と判断された素子群が交換可能であることを示すクロスリファレンス情報を生成する。
【0107】
検索部は、トランジスタのゲート端子の接続関係を基準として、または、ソース端子およびドレイン端子の接続関係を基準として、論理回路の素子・配線と、レイアウトパターンの素子・配線との対応を検索する。これにより、特に論理回路に互いに入れ替えても論理等価である素子が存在する場合に、基準を適宜変更して、論理回路とレイアウトパターンとの対応を検索できる。
【0108】
論理回路に所定の電圧を印加したときの電位の変化をシミュレーションして、レイアウトデータを参照することにより、電位の変化のなかった論理回路のノードと、それに対応するレイアウトパターンのノードとを記載したノードリストを生成できる。これにより、電位の変化のなかったノードを漏れなく指定したパス選択型バックアノテーションが可能になる。
【0109】
また、電位の変化のあった論理回路のノードと、それに対応するレイアウトパターンのノードとを記載したノードリストを生成することにより、電位の変化のあったノードをも漏れなく指定したパス選択型バックアノテーションが可能になる。
【0110】
ネットリスト生成部は、電位が変化したノードの情報、および電位の変化しなかったノードの情報を得て、寄生素子に関する情報をレイアウトパターン内の素子および配線の情報に付加したレイアウトネットリストを生成する。これにより、シミュレーション時に動作する部分回路に対応するレイアウト寄生素子の情報のみを考慮できる。
【0111】
同様に、ネットリスト生成部は、電源から接地に至る配線レイアウトに対応するレイアウトパターンの寄生素子に関する情報を抽出して、寄生素子に関する情報を、レイアウトパターン内の素子および配線の情報に付加したレイアウトネットリストを生成する。これにより、電源から接地に至る配線レイアウトに対応するレイアウト寄生素子の情報のみを考慮できる。
【図面の簡単な説明】
【図1】実施の形態1の設計検証装置の構成を示すブロック図である。
【図2】論理回路データ、レイアウトデータおよびLVS比較部のより具体的な例を示す図である。
【図3】複数のデバイスがパラレル接続により構成された論理回路およびレイアウトの例を示す図である。
【図4】パラレルデバイス・クロスリファレンス情報ファイル化部が出力したクロスリファレンス情報ファイルを示す図である。
【図5】複数のデバイスがシリアル接続により構成された論理回路およびレイアウトの例を示す図である。
【図6】シリアルデバイス・クロスリファレンス情報ファイル化部が出力したクロスリファレンス情報ファイルを示す図である。
【図7】複数のデバイスがパラレル接続、および、シリアル接続により構成された論理回路およびレイアウトの例を示す図である。
【図8】パラレルシリアルデバイス・クロスリファレンス情報ファイル化部が出力したクロスリファレンス情報ファイルを示す図である。
【図9】複数のデバイスがシリアル接続により構成された論理回路およびレイアウトの例を示す図である。
【図10】論理等価デバイス・クロスリファレンス情報ファイル化部が出力したクロスリファレンス情報ファイルを示す図である。
【図11】実施の形態2の設計検証装置の構成を示すブロック図である。
【図12】(a)は、論理回路およびレイアウトを示す図である。(b)は、論理等価デバイス・クロスリファレンス情報ファイル化部が、(a)の論理回路およびレイアウトから作成したクロスリファレンス情報ファイルを示す図である。(c)は、トランジスタのゲート端子を基準にした情報検索結果を示す。
【図13】実施の形態3の設計検証装置の構成を示すブロック図である。
【図14】(a)は、論理回路およびレイアウトを示す図である。(b)は、論理等価デバイス・クロスリファレンス情報ファイル化部が、(a)の論理回路およびレイアウトから作成したクロスリファレンス情報ファイルを示す図である。(c)は、トランジスタのソース/ドレイン端子を基準にした情報検索結果を示す。
【図15】実施の形態4の設計検証装置の構成を示すブロック図である。
【図16】(a)は、論理回路およびレイアウトを示す図である。(b)は、パラレルシリアルデバイス・クロスリファレンス情報ファイル化部が(a)の論理回路およびレイアウトに基づいて生成したクロスリファレンス情報ファイルである。(c)は、activeノードリストおよびinactiveノードリストの例である。(d)は、変換後のactiveノードリストおよび変換後のinactiveノードリストの例である。
【図17】実施の形態5の設計検証装置の構成を示すブロック図である。
【図18】(a)は、論理回路およびレイアウトを示す図である。(b)は、パラレルシリアルデバイス・クロスリファレンス情報ファイル化部が(a)の論理回路およびレイアウトに基づいて生成したクロスリファレンス情報ファイルである。(c)は、activeノードリストおよびinactiveノードリストの例である。(d)は、論理回路を基準にした検索結果を示す図である。
【図19】実施の形態6の設計検証装置の構成を示すブロック図である。
【図20】(a)は、論理回路およびレイアウトを示す図である。(b)は、パラレルデバイス・クロスリファレンス情報ファイル化部が、(a)の論理回路およびレイアウトに基づいて生成したクロスリファレンス情報ファイルである。(c)は、情報検索部による検索結果を示す図である。
【図21】従来の半導体設計検証装置の構成を示すブロック図である。
【図22】パス選択型バックアノテーションのための半導体設計検証装置の構成を示すブロック図である。
【図23】電源/GNDラインバックアノテーションのための半導体設計検証装置の構成を示すブロック図である。
【図24】適切なバックアノテーションが行えない場合の例を示す論理回路図である。
【符号の説明】
1 論理回路データ、 2 レイアウトデータ、 3 LVS比較部、 4 パラレルデバイス・クロスリファレンス情報ファイル化部、 5 シリアルデバイス・クロスリファレンス情報ファイル化部、 6 パラレルシリアルデバイス・クロスリファレンス情報ファイル化部、 7 論理等価デバイス・クロスリファレンス情報ファイル化部、 8 論理回路対レイアウト・クロスリファレンス情報ファイル、 9 ネットリスト生成部、 10 レイアウト寄生素子付きネットリスト、 11 解析部、 31 LVSルール、 32 要素認識部、 33 比較検証部、 100 設計検証装置
Claims (11)
- 論理回路の素子および該素子間の配線に関する論理回路データ、および、該論理回路のレイアウトパターンに関するレイアウトデータを記憶した記憶部と、
前記レイアウトデータに基づいて、素子の接続関係を認識する要素認識部と、前記論理回路データに基づく論理回路の接続関係と、要素認識部が認識したレイアウトの接続関係との対応を比較検証する比較検証部であって、前記論理回路データに基づいて、前記論理回路の複数の素子を第1の機能ユニットとしてマージし、要素認識部が認識した前記接続関係に基づいて、前記論理回路の複数の素子を第2の機能ユニットとしてマージし、前記第1の機能ユニットにおけるマージされた複数の素子の第1の接続関係と、前記第2の機能ユニットにおけるマージされた複数の素子の第2の接続関係との対応を比較検証する比較検証部と、
前記論理回路の接続関係に応じて、前記第1の機能ユニットにおける前記複数の素子およびその配線、および、前記第2の機能ユニットにおける前記複数の素子およびその配線の対応関係を規定したクロスリファレンス情報を生成するクロスリファレンス情報ファイル化部と
を備えた、設計検証装置。 - クロスリファレンス情報ファイル化部は、パラレル接続された前記論理回路のクロスリファレンス情報を生成する、請求項1に記載の設計検証装置。
- クロスリファレンス情報ファイル化部は、シリアル接続された前記論理回路のクロスリファレンス情報を生成する、請求項1または2に記載の設計検証装置。
- クロスリファレンス情報ファイル化部は、パラレル接続とシリアル接続とが混在する前記論理回路のクロスリファレンス情報を生成する、請求項3に記載の設計検証装置。
- 比較検証部は、前記論理回路が、複数の素子を互いに入れ替えても論理等価であるか否かをさらに判断し、論理等価である場合には、クロスリファレンス情報ファイル化部は、論理等価と判断された素子群が交換可能であることを示すクロスリファレンス情報を生成する、請求項4に記載の設計検証装置。
- クロスリファレンス情報ファイル化部が生成した前記クロスリファレンス情報に基づいて、前記論理回路の素子または配線と、前記レイアウトパターンの素子または配線との対応を検索する検索部をさらに備え、
前記素子が、ゲート端子、ソース端子、およびドレイン端子を含むトランジスタである場合に、該検索部は、該トランジスタのゲート端子の接続関係を基準として、前記対応を検索する、請求項5に記載の設計検証装置。 - クロスリファレンス情報ファイル化部が生成した前記クロスリファレンス情報に基づいて、前記論理回路の素子または配線と、前記レイアウトパターンの素子または配線との対応を検索する検索部をさらに備え、
前記素子が、ゲート端子、ソース端子、およびドレイン端子を含むトランジスタである場合に、該検索部は、該トランジスタのソース端子およびドレイン端子の接続関係を基準として、前記対応を検索する、請求項5に記載の設計検証装置。 - 記憶部に記憶された前記論理回路データに基づいて、前記論理回路に所定の電圧を印加したときの各ノードの電位の変化をシミュレーションするシミュレーション部であって、シミュレーションの結果得られた、電位の変化が無かった前記論理回路のノードを特定する第1のノードリストを生成するシミュレーション部と、
シミュレーション部が生成した前記第1のノードリスト、および、記憶部に記憶された前記レイアウトデータに基づいて、前記論理回路の電位の変化がなかったノードに対応する前記レイアウトパターンのノードを特定し、前記第1のノードリストを、特定された前記レイアウトパターンのノードをさらに追加した第2のノードリストに変換するノードリスト変換部と
をさらに備えた、請求項5に記載の設計検証装置。 - シミュレーション部は、シミュレーションの結果得られた、電位の変化があった前記論理回路のノードを特定する第3のノードリストを生成し、
ノードリスト変換部は、シミュレーション部が生成した前記第3のノードリスト、および、記憶部に記憶された前記レイアウトデータに基づいて、前記論理回路の電位の変化があったノードに対応する前記レイアウトパターンのノードを特定し、前記第3のノードリストを、特定された前記レイアウトパターンのノードをさらに追加した第4のノードリストに変換する、請求項8に記載の設計検証装置。 - 設計検証装置は、比較検証部による比較検証の結果、および、前記第4のノードリストに基づいて、論理回路の一部分である部分回路に対応するレイアウトパターンの寄生素子に関する情報を抽出して、該寄生素子に関する情報を、レイアウトパターン内の素子および配線の情報に付加したレイアウトネットリストを生成するネットリスト生成部をさらに備えた、請求項9に記載の設計検証装置。
- 前記論理回路データは、論理回路内の素子および配線に関する情報を記述した論理回路ネットリストであり、
設計検証装置は、
クロスリファレンス情報ファイル化部が生成した前記クロスリファレンス情報、および、前記論理回路ネットリストに基づいて、前記論理回路と前記レイアウトとの対応を検索する検索部と、
比較検証部による比較検証の結果に基づいて、電源から接地に至る配線レイアウトに対応するレイアウトパターンの寄生素子に関する情報を抽出して、該寄生素子に関する情報を、レイアウトパターン内の素子および配線の情報に付加したレイアウトネットリストを生成するネットリスト生成部をさらに備えた、請求項5に記載の設計検証装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002265251A JP2004102772A (ja) | 2002-09-11 | 2002-09-11 | 設計検証装置 |
US10/435,045 US20040049747A1 (en) | 2002-09-11 | 2003-05-12 | Verification apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002265251A JP2004102772A (ja) | 2002-09-11 | 2002-09-11 | 設計検証装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004102772A true JP2004102772A (ja) | 2004-04-02 |
Family
ID=31986567
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002265251A Pending JP2004102772A (ja) | 2002-09-11 | 2002-09-11 | 設計検証装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20040049747A1 (ja) |
JP (1) | JP2004102772A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009205259A (ja) * | 2008-02-26 | 2009-09-10 | Nec Electronics Corp | 半導体集積回路のレイアウト設計方法 |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7823112B1 (en) | 2003-05-30 | 2010-10-26 | Golden Gate Technology, Inc. | Method, software and system for ensuring timing between clocked components in a circuit |
JP4476831B2 (ja) * | 2004-06-08 | 2010-06-09 | 株式会社リコー | プリント配線板作業関連情報表示システム、プリント配線板作業関連情報表示方法、この表示方法を利用したプリント回路実装品の製造方法、この表示方法を実行させるコンピュータプログラム及びこのコンピュータプログラムを記録可能な記録媒体 |
DE102004033339A1 (de) * | 2004-07-09 | 2006-02-02 | Infineon Technologies Ag | Verfahren und Vorrichtung zum Auffinden von Schaltungsabweichungen |
US7360193B1 (en) * | 2004-09-21 | 2008-04-15 | Golden Gate Technology, Inc. | Method for circuit block placement and circuit block arrangement based on switching activity |
US7596771B2 (en) * | 2005-05-10 | 2009-09-29 | Texas Instruments Incorporated | Distributed element generator, method of generating distributed elements and an electronic design automation tool employing the same |
US7827509B2 (en) * | 2005-07-15 | 2010-11-02 | Lsi Corporation | Digitally obtaining contours of fabricated polygons |
US20070061764A1 (en) * | 2005-09-15 | 2007-03-15 | Interntional Business Machines Corporation | Keyword-based connectivity verification |
DE102005045716A1 (de) * | 2005-09-24 | 2007-04-05 | Infineon Technologies Ag | Verfahren und Hilfseinrichtung zum Erstellen und Überprüfen des Stromlaufplans für eine zu integrierende Schaltung |
US20080115102A1 (en) * | 2006-11-14 | 2008-05-15 | Dan Rittman | System and method for automatic elimination of connectivity mismatches during construction of a mask layout block, maintaining process design rule correctness |
US7594210B2 (en) * | 2006-11-16 | 2009-09-22 | Clk Design Automation, Inc. | Timing variation characterization |
US7793243B1 (en) | 2006-12-04 | 2010-09-07 | Clk Design Automation, Inc. | Multi-engine static analysis |
JP5563385B2 (ja) * | 2010-06-23 | 2014-07-30 | ラピスセミコンダクタ株式会社 | レイアウトパタン生成装置及びレイアウトパタン生成方法 |
US8782577B2 (en) | 2010-07-24 | 2014-07-15 | Cadence Design Systems, Inc. | Method, apparatus, and article of manufacture for providing in situ, customizable information in designing electronic circuits with electrical awareness |
US8762914B2 (en) * | 2010-07-24 | 2014-06-24 | Cadence Design Systems, Inc. | Methods, systems, and articles of manufacture for constraint verification for implementing electronic circuit designs with electrical awareness |
US8707231B2 (en) * | 2012-07-31 | 2014-04-22 | Freescale Semiconductor, Inc. | Method and system for derived layer checking for semiconductor device design |
US10713356B2 (en) * | 2013-03-04 | 2020-07-14 | Crowdstrike, Inc. | Deception-based responses to security attacks |
US9405871B1 (en) * | 2014-12-05 | 2016-08-02 | Xilinx, Inc. | Determination of path delays in circuit designs |
US10783296B1 (en) * | 2018-06-08 | 2020-09-22 | Diakopto, Inc. | Matched net and device analysis based on parasitics |
CN114139485B (zh) * | 2021-11-29 | 2024-07-09 | 北京华大九天科技股份有限公司 | 一种网表器件参数计算方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5202841A (en) * | 1989-07-14 | 1993-04-13 | Mitsubishi Denki Kabushiki Kaisha | Layout pattern verification system |
US5828580A (en) * | 1994-11-08 | 1998-10-27 | Epic Design Technology, Inc. | Connectivity-based approach for extracting parasitic layout in an integrated circuit |
US5623420A (en) * | 1994-11-16 | 1997-04-22 | Sun Microsystems, Inc. | Method and apparatus to distribute spare cells within a standard cell region of an integrated circuit |
US6499130B1 (en) * | 2000-02-17 | 2002-12-24 | Avant! Corporation | Methods, apparatus and computer program products that perform layout versus schematic comparison of integrated circuits using advanced symmetry resolution techniques |
-
2002
- 2002-09-11 JP JP2002265251A patent/JP2004102772A/ja active Pending
-
2003
- 2003-05-12 US US10/435,045 patent/US20040049747A1/en not_active Abandoned
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009205259A (ja) * | 2008-02-26 | 2009-09-10 | Nec Electronics Corp | 半導体集積回路のレイアウト設計方法 |
Also Published As
Publication number | Publication date |
---|---|
US20040049747A1 (en) | 2004-03-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2004102772A (ja) | 設計検証装置 | |
US6530073B2 (en) | RTL annotation tool for layout induced netlist changes | |
Barros et al. | Analog circuits and systems optimization based on evolutionary computation techniques | |
Massier et al. | The sizing rules method for CMOS and bipolar analog integrated circuit synthesis | |
US6473885B1 (en) | Digital circuit layout techniques using circuit decomposition and pin swapping | |
US20070044060A1 (en) | System and Technique of Pattern Matching and Pattern Replacement | |
US7971178B1 (en) | System to merge custom and synthesized digital integrated circuit design data | |
US6360352B2 (en) | Digital circuit layout techniques | |
US20090228848A1 (en) | Circuit verification apparatus, a method of circuit verification and circuit verification program | |
JP4495865B2 (ja) | 業者間アプリケーションサービスプロバイダ | |
WO1999009497A1 (fr) | Procede d'extraction de caracteristiques de synchronisation de circuits a transistors, support de stockage stockant une bibliotheque de caracteristiques de synchronisation, procede de conception de lsi et procede d'extraction par grille | |
US7340697B2 (en) | Integrated computer-aided circuit design kit facilitating verification of designs across different process technologies | |
US7000206B2 (en) | Timing path detailer | |
US8504953B2 (en) | Schematic generation visualization aid for netlists comprising analog circuits | |
US6405351B1 (en) | System for verifying leaf-cell circuit properties | |
US6449578B1 (en) | Method and apparatus for determining the RC delays of a network of an integrated circuit | |
Riepe et al. | Transistor level micro-placement and routing for two-dimensional digital VLSI cell synthesis | |
Cheremisinov et al. | Extracting a logic gate network from a transistor-level CMOS circuit | |
Lu et al. | Combining technology mapping with post-placement resynthesis for performance optimization | |
Ren et al. | Intuitive ECO synthesis for high performance circuits | |
Wu et al. | Design partitioning for large-scale equivalence checking and functional correction | |
US6877140B1 (en) | Method and system for generating a schematic representing bus structures | |
JP2003233636A (ja) | 回路検証装置 | |
Zeidman | Introduction to verilog | |
US7124393B1 (en) | System and method for processing configuration information |