(57)【特許請求の範囲】
【請求項１】
回路図等の仕様書から抽出した第１のネットリストとレイアウトから抽出した第２のネットリストの照合を行ない、レイアウトの検証を行なうレイアウト検証装置において、一致ノードに属性の１つとして識別値を与える識別値付与手段と、未一致ノードに対して隣接する未一致ノードの属性及び一致ノードの属性に基づき新たな属性を計算し属性が同じ未一致ノードを抽出して未一致ノードのグループ分けを行なう分割手段と、該分割手段により分けられたグループのうちあるグループ内に要素となるノードが１つ存在し当該ノードが前記第１のネットリストと前記第２のネットリスト間で対応が取れた場合に当該ノードを一致ノードとして検出するノード一致手段を有し、前記第１及び第２のネットリストは一致ノードとなる少なくとも１つの初期対応ノードを有しており、未一致ノードがなくなるかあるいは未一致ノードがありながら一致ノードが見つからなくなるまで、前記ノード一致手段で検出された一致ノードに識別値付与手段で識別値を付与し、残った未一致ノードについて分割手段で属性の計算及びグループ分けを行ない、ノード一致手段で一致ノードを検出する処理を繰り返して実行させることを特徴とするレイアウト検証装置。
【請求項２】
前記識別値付与手段は、前記ノード一致手段で新たに検出された一致ノードに対して固有の識別値を付与することを特徴とする請求項１に記載のレイアウト検証装置。
【請求項３】
前記ノード一致手段において、未一致ノードが存在しかつ一致ノードが見つからなかったとき、各グループごとに同一グループ内で一致させたとき最も矛盾の発生が少ないノードの組み合わせを選択し一致させるように接続照合を行なうノード照合手段をさらに有することを特徴とする請求項１または請求項２に記載のレイアウト検証装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、設計したレイアウトと回路図等の仕様書との電気的な接続関係の一致を検証する方法に関するものである。
【０００２】
【従来の技術】
レイアウト検証とは、ＬＳＩのレイアウト情報から抽出された電気的な接続情報と回路図等の仕様書から得られる電気的な接続情報の照合を行ない、接続状態の不一致を起こしている接続点を検出することである。この照合は、トランジスタレベルで行なわれることもあるし、ＩＣ等が配置されたもっと上位のレベルで行なわれることもある。この照合に用いられる電気的な接続情報としては、ネットリストが用いられる。ネットリストは、レイアウトや回路図等において、同電位となる部分、例えば、配線されている部分を１つのノードとし、回路素子などで接続されているノードを線で結ぶことによって得られるグラフである。
【０００３】
図２は、一般的なレイアウト検証装置の一例を示すブロック図である。図中、４１は回路図ネットリスト抽出機能、４２はレイアウトネットリスト抽出機能、４３は照合機能である。レイアウト検証装置は、図２に示すように、回路図から接続情報を抽出し、ネットリストを作成する回路図ネットリスト抽出機能４１と、レイアウトから接続情報を抽出し、ネットリストを作成するレイアウトネットリスト抽出機能４２と、２つのネットリストを用いて電気的な接続情報を照合する照合機能４３から構成されている。
【０００４】
従来の照合機能４３における照合の方法としては、２つの方法が行なわれている。その一つは、予め対応するノードを初期対応ノードとして与えておき、この初期対応ノードを対応させ、残りのまだ一致していないノード、すなわち、未一致対応ノードを、不一致になるノードの数が最小になるように対応させて行き、そのときのノードの組み合わせを照合の結果とする方法である。
【０００５】
しかし、不一致を起こすノードが最小になることだけを基準に接続照合を行なうと、メモリのように、同じ回路が繰り返し配置され、それらの回路を一度に制御する信号線が存在するＬＳＩにおいて、その信号線の接続をまちがえた場合には、レイアウトの検証時に回路図とレイアウトの本質的な不一致ノードを検出することができないという問題があった。この問題を解決するために、例えば特開平４−９５１６８号公報等では、上述の信号線のような、接続している回路素子の多いものから対応するノードを探索し、本質的な不一致ノードを検出しようとする方法が提案されている。しかし、この方法においても、接続している回路素子の多いノードを一致ノードとするため、このノードが不一致を起こしている場合には、これを検出できない場合が発生するという問題がある。
【０００６】
別の方法として、ネットリストの各ノードに対して属性を与え、与えられた属性と隣接するノードの属性によって新たな属性を計算し、これを繰り返すことにより参照する範囲を徐々に広げて行き、ネットリスト中で唯一の属性を有するノードが１対１に対応するとき、これを一致ノードとする照合方法がある。この方法では、最後の１つのノードになっても、属性の値が一致するまで照合結果が得られず、また、常にネットリスト全体に対して一致ノードの探索を行なうため、時間がかかるという問題があった。
【０００７】
【発明が解決しようとする課題】
本発明は、上述した事情に鑑みてなされたもので、回路図とレイアウトが一致していない場合に、接続の不一致を起こしているノードを効率よく正確に検出することができるレイアウト検証装置を提供することを目的とするものである。
【０００８】
【課題を解決するための手段】
本発明は、請求項１に記載の発明においては、回路図等の仕様書から抽出した第１のネットリストとレイアウトから抽出した第２のネットリストの照合を行ない、レイアウトの検証を行なうレイアウト検証装置において、一致ノードに属性の１つとして識別値を与える識別値付与手段と、未一致ノードに対して隣接する未一致ノードの属性及び一致ノードの属性に基づき新たな属性を計算し属性が同じ未一致ノードを抽出して未一致ノードのグループ分けを行なう分割手段と、該分割手段により分けられたグループのうち、あるグループ内に要素となるノードが１つ存在し、当該ノードが前記第１のネットリストと前記第２のネットリスト間で対応が取れた場合に、当該ノードを一致ノードとして検出するノード一致手段を有し、前記第１及び第２のネットリストは一致ノードとなる少なくとも１つの初期対応ノードを有しており、未一致ノードがなくなるかあるいは未一致ノードがありながら一致ノードが見つからなくなるまで、前記ノード一致手段で検出された一致ノードに識別値付与手段で識別値を付与し、残った未一致ノードについて分割手段で属性の計算及びグループ分けを行ない、ノード一致手段で一致ノードを検出する処理を繰り返して実行させることを特徴とするものである。特に識別値付与手段では、前記ノード一致手段で新たに検出された一致ノードに対して、固有の識別値を付与するように構成するとよい。
【０００９】
また、請求項３に記載の発明においては、請求項１または請求項２に記載のレイアウト検証装置において、前記ノード一致手段で未一致ノードが存在しかつ一致ノードが見つからなかったとき、各グループごとに同一グループ内で一致させたとき最も矛盾の発生が少ないノードの組み合わせを選択し一致させるように接続照合を行なうノード照合手段をさらに有することを特徴とするものである。
【００１０】
【作用】
本発明によれば、レイアウト検証において、一致ノードに属性の１つとして識別値を与え、未一致ノードに対して隣接する未一致ノードの属性及び一致ノードの属性に基づき新たな属性を計算し、計算した属性が同じ未一致ノードを抽出して未一致ノードのグループ分けを行ない、分けられたグループのうち要素となるノードが１つ存在し第１のネットリストと第２のネットリスト間で対応が取れたノードを一致ノードとして検出て固有の識別値を付与して、処理を繰り返すので、ネットリストの初期対応ノード及び一致が検証されたノードに接続しているノードや、ネットリストの中の固有なノードから照合が進み、効率よく照合を行なうことができる。
【００１１】
また、上述の照合により、複数のノードが同じ属性を持っており同一グループに複数の対応するノードの候補が存在しているためにそれ以上の照合が行なえなくなった場合に、照合ができなかった未一致のノードに対しては、ノード照合手段によってグループごとに矛盾の少ない組み合わせを選んで照合を進めることにより、属性の似ているノードが存在している場合でも、照合を行なうことができる。
【００１２】
【実施例】
図１は、本発明のレイアウト検証装置の第１の実施例を示すブロック図である。１は識別値付与手段、２は分割手段、３はノード一致検出手段である。検証の対象となる回路図等の仕様及びＬＳＩのレイアウトは、それぞれ、予めネットリストに変換され、入力される。このとき、一致ノードとなる少なくとも１つの初期対応ノードが指定される。ここで、回路図から抽出したネットリストを、回路図ネットリストと呼ぶ。また、レイアウトからの抽出したネットリストを、レイアウトネットリストと呼ぶことにする。
【００１３】
識別値付与手段１は、入力されるネットリストまたはノード一致検出手段３の処理結果を受け取り、一致ノードに対して属性の一種である識別値を付与する。分割手段２は、識別値付与手段１の結果を受け取り、まず、未一致ノードがあるか否かを判定する。この結果、未一致ノードがなければ、入力された２つのネットリストは一致したことになるので、一致信号を出力し、処理を終了する。未一致ノードがある場合には、未一致ノードに対して、隣接する未一致ノードの属性及び一致ノードの属性に基づき新たな属性を計算する。計算された属性が同じ未一致ノードを抽出して、グループに分割する。ノード一致検出手段３は、分割手段２によってグループ分けされた情報を受け取り、１対１対応のグループを検出してノードを一致させる。すなわち、分割されたグループ内に要素となるノードが１つ存在し、２つのネットリスト間で対応がとれたノードを一致ノードとする。もし、一致ノードが見つかった場合には、識別値付与手段１に戻り、見つかった一致ノードからも、照合を行なうことになる。もし、未一致ノードがありながら、一致ノードが見つからなかった場合には、これ以上、上述の照合処理を繰り返しても一致ノードは見つからないので、処理を終了し、未一致ノードを出力する。
【００１４】
分割手段２において計算し、また、グループ分けに用いる属性の情報としては、例えば、ノードに接続している回路素子の端子の数、すなわち、ノードから出ている枝数や、回路素子の端子の種類によりあらかじめ設定されている値の和（以下、端子値という）等を用いることができる。また、一致したノードにのみそれぞれの対応に固有の識別値を与え、隣接している一致ノードの識別値の和（以下、隣接値という）の情報を用いることが可能である。また、例えば、端子値と隣接値を加えた値を属性の値としたり、識別値と一致ノードの端子値を加えた値を隣接している一致ノードについて加え、その値を隣接値の替わりに用いるなど、種々の値を用いることができる。これらの値を適宜選択し、組み合わせて用いることもできる。
【００１５】
与えられるネットリストの初期対応ノードに、予め識別値を付与しておくこともできる。この場合には、最初に初期対応ノードに識別値を改めて付与する必要はないので、ネットリストの情報は分割手段２に与え、分割手段２、ノード一致手段３、識別値付与手段１の順で処理を進めればよい。
【００１６】
図３は、本発明のレイアウト検証装置の第１の実施例の動作の一例を説明するためのフローチャートである。Ｓ１１において、回路図及びレイアウトのネットリストが与えられると、識別値付与手段１において、予め与えられている初期対応ノードを一致させ、一致した回路図ネットリストのノードと、レイアウトネットリストのノードに同一の識別値を与える。Ｓ１２において、分割手段２で未一致ノードがあるか否かを判定する。もし、未一致ノードがなければ、すべての回路図ネットリストのノードとレイアウトネットリストのノードが一致したことになるので、回路図とレイアウトが一致した旨の信号を出力して処理を終了する。もし、未一致ノードがあれば、Ｓ１３に移る。
【００１７】
Ｓ１３では、分割手段２において、未一致ノードに対して、ノードに接続している枝数、端子値、隣接値等の属性を計算し、それらの属性を基準にして回路図ネットリストのノードとレイアウトネットリストのノードをグループに分割する。属性の同じグループに属している回路図ノードとレイアウトノードが対応する可能性が高い。そのため、Ｓ１４では、ノード一致手段３において、回路図ネットリストのノードとレイアウトネットリストのノードが１対１に対応しているグループがあるか否かを判定する。もし、１対１に対応しているグループがあれば、Ｓ１５において、一致したノードとする。Ｓ１６では、識別値付与手段１において、新たに一致したノードに識別値を与える。そして、Ｓ１２に戻り、処理を続ける。Ｓ１４において、１対１に対応しているグループが見つからないときは、回路図とレイアウトが不一致であるとして、不一致の情報を出力する。
【００１８】
図４は、本発明のレイアウト検証装置の第１の実施例におけるやや具体的な一例を示すブロック構成図である。図中、２１はノード集合記憶手段、２２は一致ノード記憶手段、２３は未一致ノード記憶手段、２４は隣接情報抽出手段、２５は集合内ノード比較手段、２６は未一致ノード再編成手段、２７は集合間ノード比較手段、２８は一致ノード抽出手段、２９は結果通知手段、３０は識別値付与手段である。この具体例では、初期一致ノードに付与される識別値は予め与えられて、一致ノード記憶手段２２に記憶されるものとする。
【００１９】
ノード集合記憶手段２１には、少なくとも１つの初期対応ノードと、素子の数、素子の種類、ノード間の接続関係を備えた回路図ネットリスト及びレイアウトネットリストのノード集合が記憶される。一致ノード記憶手段２２には、回路図ネットリスト及びレイアウトネットリストのノードのうち、一致ノード集合が記憶される。初期状態では、各ネットリストの初期一致ノードが記憶される。未一致ノード記憶手段２３には、未一致のノード集合が記憶される。初期状態では、各ネットリストのノード集合のうち、初期対応ノード以外のノードが未一致ノード集合として記憶される。
【００２０】
隣接情報抽出手段２４は、ノード集合記憶手段２１より、ノードの隣接関係と、未一致ノード記憶手段２３に記憶されている未一致ノードに隣接するノード数と素子数、一致ノード記憶手段２２に記憶されている一致ノード数及び一致ノードの持つ識別値を抽出し、各未一致ノードの属性の値を計算する。この属性の値は、未一致ノード記憶手段２３に各未一致ノードに対応して記憶される。集合内ノード比較手段２５は、隣接情報抽出手段２４により抽出され、計算された属性の値を、回路図ネットリスト及びレイアウトネットリストごとにそれぞれ比較する。未一致ノード再編成手段２６は、集合内ノード比較手段２５による比較結果に基づき、未一致ノード記憶手段２３に含まれる未一致ノードをグループ分けして再編成し、結果を未一致ノード記憶手段２３に記憶させる。
【００２１】
集合間ノード比較手段２７は、未一致ノード再編成手段２６により再編成された回路図ネットリスト及びレイアウトネットリストの未一致ノード集合間で、隣接情報抽出手段２４により計算された属性の値を比較する。一致ノード抽出手段２８では、集合間ノード比較手段２７による比較結果をもとに、一致しているノード対を検出する。新たに一致を検出した各ノード対は、固有の識別値が付与されるとともに一致ノード記憶手段２２に記憶され、未一致ノード記憶手段２３から削除される。
【００２２】
これらの処理が繰り返し行なわれ、未一致ノード記憶手段２３に含まれるノードが無くなったとき、回路図及びレイアウトが一致したことが結果通知手段２９から出力される。また、一致ノード抽出手段２８により新たに一致するノード対が１つも検出されず、未一致ノード記憶手段２３に記憶されているノードが存在するときには、回路図とレイアウトは不一致であるとして、結果通知手段２９から未一致ノード記憶手段２３に記憶されている未一致ノードが不一致ノードとして出力される。
【００２３】
このように、第１の実施例においては、枝の数、回路素子の種類、テキストの情報、一致させたノードの情報を利用することにより、すでに一致したノードに接続しているノードや、ネットリストの中の固有なノードから照合が進んでいくことになる。しかし、上述の第１の実施例では、グループに分割した場合に一対一対応になっていなければ一致していると識別しないため、属性の似ているノードが存在していると対応しているノードが残っていても検証が終わってしまうという問題がある。これを回避するため、図１のノード一致手段３において、未一致ノードが存在し、１対１対応のグループが見つからない場合には、別の照合手段を用いて残りのノードの検証を行なえばよい。
【００２４】
図５は、本発明のレイアウト検証装置の第２の実施例を示すブロック図である。図中、図１と同様の部分には同じ符号を付して説明を省略する。４はノード照合手段である。ノード照合手段４では、ノード一致手段３でグループ分けされた各グループごとに一致ノードを検出して、未一致ノードとして残されるノード数を最小化する。この各グループごとに行なわれる一致ノードの検出は、従来から用いられている方法を用いることができる。ノード照合手段４の実行時には、すでにほとんどのノードで一致が検出されており、また、未一致のノードもグループ分けされており、実際にノード照合手段４で行なわれる照合の処理は、全体の照合処理のごく一部のみである。そのため、ノード照合手段４に従来の時間のかかる照合方法を適用したとしても、全体の処理時間に比べてそれほど影響しない。例えば、すべての組み合わせを検証するような照合方法を用いたとしても、検証の時間はノードの個数の自乗に比例するが、属性による照合でほとんどのノードが一致し、また、未一致ノードがグループ分けされているので、組み合わせは非常に少なくなり、処理はごく短時間で終了する。
【００２５】
図６は、本発明のレイアウト検証装置の第２の実施例の動作の一例を説明するためのフローチャートである。図中、Ｓ１１乃至Ｓ１６の動作は、第１の実施例の動作と同様である。すなわち、枝の数、回路素子の種類、テキストの情報、一致させたノードの情報ノード等を属性として利用し、属性を基準にグループに分割することにより一致の検証を進めて行く照合方法を実行する。これらの動作は、識別値付与手段１、分割手段２、ノード一致手段３により実現される。
【００２６】
Ｓ１４において、未一致ノードがまだ存在するにもかかわらず、１対１対応のグループが見つからなかった場合、すなわち、複数のノードが同じ属性を持っており、同一グループに複数の対応するノードの候補が存在しているためにそれ以上の照合が行なえなくなった場合に、この第２の実施例では、ノード照合手段４による照合を行なう。Ｓ１７において、ノード照合手段４は、同一グループ内で一致させたとき最も矛盾の発生が少ないノードの組み合わせを選択し一致させるように接続照合を行なう。この照合処理の結果をＳ１８において判定し、未一致ノードが無くなれば、回路図とレイアウトは一致したものとして、一致の信号を出力して処理を終了する。また、未一致ノードがまだ存在する場合には、回路図とレイアウトは不一致であるとして、不一致の信号を出力して処理を終了する。このとき、不一致のノードは、ノード照合手段４による照合の結果、減少しており、より正確に不一致部分をユーザに対して提示することができる。
【００２７】
次に、本発明のレイアウト検証装置の第１、第２の実施例における具体例について説明する。図７は、本発明のレイアウト検証装置の第１、第２の実施例における具体例で用いる回路例の説明図、図８は、図７の回路のネットリストである。図中、１０１乃至１１５は２端子素子、２０１乃至２０６は３端子素子、３０１は電源、４０１乃至４２０は配線、５０１乃至５２０はノードである。各素子を図７に示すように配線した回路について考える。２端子素子１０１乃至１１５は、それぞれの端子に１，２の重みが付与されている。また、３端子素子２０１乃至２０６には、それぞれの端子に３，４，５の重みが付与されている。さらに、電源３０１の負極には６、正極には７の重みが付与されている。図７に示された回路は、図８に示したネットリストに変換される。図８において、各ノード５０１乃至５２０は、図７の配線４０１乃至４２０に対応する。このとき指定される初期対応ノードは、ノード５０１とする。
【００２８】
まず、回路図ネットリストとレイアウトネットリストが一致する場合を、図６に示すフローチャート、および、図９乃至図１２に示す過程図を基に説明する。図９乃至図１２は、具体例のネットリストが一致するときの過程図である。以下の説明で用いる属性としては、ノードから出ている枝数と、端子値、隣接値を組にして用いるとともに、一致ノードにおいては識別値を用いる。また、回路図ネットリストとレイアウトネットリストは、ともに図８に示すネットリストになっているものとする。
【００２９】
図８に示すネットリスト及び初期対応ノードが与えられると、まずＳ１１において、２つのネットリストの初期対応ノード５０１を一致させ、識別値を与える。ここでは、識別値として１を与えることにする。Ｓ１２において、まだ未一致ノードが存在するので、Ｓ１３へ進む。Ｓ１３において、未一致ノードの属性を計算する。計算した結果を図９に示す。括弧内の数値が属性の値であり、最初の数値が枝数、次が端子値、最後が隣接値である。また、黒丸のノードが一致ノードであり、単独の数値が識別値である。属性が計算されると、この属性に基づきグループ分けが行なわれる。ここでは、一例として、属性が同じものをグループとしてまとめることにする。すると、ノード５０３，５０５，５０７のグループと、ノード５０４，５０６，５０８，５１１，５１４，５１６，５１８のグループと、ノード５０９，５１５，５１７，５１９のグループと、ノード５１２，５１３のグループが複数のノードで構成され、ノード５０２，５１０，５２０はそれぞれ１つのノードでグループが構成される。Ｓ１４において、１対１対応のグループがあるか否かが判定される。ノード５０２，５１０，５２０は、１対１に対応するグループであるので、Ｓ１５において、これらのノードを一致させる。そして、Ｓ１６において、新たに一致したノード５０２，５１０，５２０に対して、識別値を与える。例えば、ノード５０２に識別値２を、ノード５１０に識別値３を、ノード５２０に識別値４を与えるものとする。そして、Ｓ１２へ戻る。
【００３０】
Ｓ１２において、未一致ノードが存在するので、Ｓ１３へ進む。Ｓ１３において、未一致ノードの属性を計算する。計算した結果を図１０に示す。属性が計算されると、この属性に基づきグループ分けが行なわれる。すると、ノード５０４，５０６，５０８，５１１，５１４，５１６，５１８のグループは、ノード５０４，５０６，５０８のグループと、ノード５１１のグループと、ノード５１４，５１６，５１８のグループに分かれる。また、ノード５０９，５１５，５１７，５１９のグループは、ノード５０９のグループと、ノード５１５、５１７、５１９のグループに分かれる。その他のグループには変化はない。ここで、ノード５１１と、ノード５０９が１対１に対応するグループを構成する。Ｓ１４において、１対１に対応するグループがあることが判定され、Ｓ１５において、１対１対応しているノード５０９，５１１を一致させる。この一致ノード５０９，５１１は、初期対応ノード以外のノード５１０から検索されたノードである。このように、本発明の方法では、初期対応ノード以外のノードからも一致ノードが広がることになる。Ｓ１６において、新たに一致ノードとなったノード５０９，５１１に対して識別値を与える。例えば、ノード５０９に識別値５を、ノード５１１に識別値６を与える。そして、Ｓ１２へ戻る。
【００３１】
Ｓ１２において、未一致ノードが存在するので、Ｓ１３へ進む。Ｓ１３において、未一致ノードの属性を計算する。計算した結果を図１１に示す。属性が計算されると、この属性に基づきグループ分けが行なわれる。すると、ノード５０３，５０４，５１４，５１５が各グループから分割されてそれぞれ独立したグループとなる。Ｓ１４において、１対１に対応するグループがあることが判定され、Ｓ１５において、１対１対応しているノード５０３，５０４，５１４，５１５を一致させる。Ｓ１６において、新たに一致ノードとなったノード５０３，５０４，５１４，５１５に対して識別値を与える。そして、Ｓ１２へ戻る。
【００３２】
Ｓ１２において、未一致ノードが存在するので、Ｓ１３において、未一致ノードの属性を計算する。この状態を図１２に示す。しかし、これ以上分割されて１対１対応となるグループはないので、Ｓ１４からＳ１７へ移行する。Ｓ１７では、最も矛盾の少ないグループ内でのノードの対応を調べる。このときの照合は、未一致ノードである１０個のノードだけである。これにより、残りの未一致ノード５０５乃至５０８と、５１６乃至５１９の一致が照合されることになる。Ｓ１８において、未一致ノードがないことが確認され、回路図とレイアウトが一致したことを示す信号が出力される。
【００３３】
次に、回路図ネットリストとレイアウトネットリストが不一致の場合を、図６に示すフローチャート、および、図７及び図１３に示す回路例、図１４，図１５に示す過程図を基に説明する。図１３は、誤った回路例の説明図、図１４，図１５は、具体例のネットリストが不一致のときの過程図である。この具体例では、図１３に示すように、２端子素子１０７が逆に接続された場合を考える。ここでは、回路図ネットリストは図７に示された回路に基づいており、レイアウトネットリストは、図１３に示された回路相当のレイアウトに基づいているものとする。初期対応ノードはノード５０１とする。
【００３４】
まず、Ｓ１１において、初期対応ノードを一致させ、識別値として例えば１を与える。そして、Ｓ１２において、未一致ノードがあると判断され、Ｓ１３に進む。Ｓ１３では、未一致ノードに対して属性が計算される。計算された属性は、回路図ネットリストでは図７に対応して図９のようになるが、レイアウトネットリストでは、２端子素子１０７の逆接続のために、ノード５０２，５０８の属性が違ってしまい、図１４のようになる。ここで１対１に対応するノードはノード５１０のみである。ノード５２０は、回路図ネットリストでは一意に決まるが、レイアウトネットリストではノード５０２とノード５２０は属性が同じとなり、１対１対応のノードではなくなる。また、レイアウトネットリストにおけるノード５０８は、属性としては一意に決まるが、対応する回路ネットリストにおけるノードが無いため、１対１対応のノードではない。属性に基づきグループ分けを行ない、Ｓ１４では１対１対応のノードがあると判定されて、Ｓ１５において、１対１に対応するノード５１０を一致させ、Ｓ１６において、識別値２を与える。そして、Ｓ１２へ戻り、２回目の処理に移る。
【００３５】
同様に、２回目の処理では、ノード５０９，５１１が１対１に対応するので、これらのノードを一致させ、識別値３，４を与える。３回目の処理では、ノード５０３，５０４，５１４，５１５が１対１に対応するので、これらのノードを一致させ、識別値５，６，７，８を与える。４回目の処理で、ノード５２０が１対１に対応する。この状態を図１５に示す。図１５（Ａ）は回路図ネットリストの過程を示し、図１５（Ｂ）はレイアウトネットリストの過程を示している。これにより、レイアウトネットリストにおけるノード５０２が有する属性は一意に決まるが、対応する回路図ネットリストにおけるノードが存在しないので、１対１対応のノードとはならない。ノード５２０に識別値９を付与する。
【００３６】
５回目の処理では、１対１に対応するノードがなくなる。そのため、Ｓ１４において、１対１対応のグループなしと判定され、Ｓ１７に移り、最も矛盾の少ないグループ内でのノードの対応を調べる。このとき調べるノードは、未一致ノードの９個のノードだけでよい。この照合により、ノード５０５，５０６，５０７，５１２，５１３，５１６，５１７，５１８，５１９が対応することが判定されるが、ノード５０２，５０８については、一致しない。そのため、Ｓ１８において、未一致ノードがあると判断され、回路図とレイアウトが不一致である旨の信号が出力される。その際に、不一致ノードとなったノード５０２とノード５０８が出力される。この出力に応じて、例えば、回路図またはレイアウトが表示されているディスプレイ等に不一致の箇所を表示させることができる。これにより、ユーザは、不一致箇所を認識できる。このとき、不一致となったノード５０２とノード５０８は、２端子素子１０７に接続されているノードであるから、逆接続された２端子素子１０７を正しくユーザに示すことができる。ユーザはこれに基づき、２端子素子１０７を点検すればよい。
【００３７】
【発明の効果】
以上の説明から明らかなように、本発明によれば、レイアウト検証において、回路図とレイアウトが一致していない場合に、接続の不一致を起こしているノードを効率よく検出することが可能となるという効果がある。
また、不一致ノードが最小になるようにノードを一致させる照合方法を組み合わせて用いることにより、属性によって照合を進めて行く方法によって残された未一致ノードがある場合でも、その中から真の不一致ノードを検出することが可能となるという効果がある。
【図面の簡単な説明】
【図１】  本発明のレイアウト検証装置の第１の実施例を示すブロック図である。
【図２】  一般的なレイアウト検証装置の一例を示すブロック図である。
【図３】  本発明のレイアウト検証装置の第１の実施例の動作の一例を説明するためのフローチャートである。
【図４】  本発明のレイアウト検証装置の第１の実施例におけるやや具体的な一例を示すブロック構成図である。
【図５】  本発明のレイアウト検証装置の第２の実施例を示すブロック図である。
【図６】  本発明のレイアウト検証装置の第２の実施例の動作の一例を説明するためのフローチャートである。
【図７】  本発明のレイアウト検証装置の第１、第２の実施例における具体例で用いる回路例の説明図である。
【図８】  図７の回路のネットリストである。
【図９】  具体例のネットリストが一致するときの過程図の一部である。
【図１０】  具体例のネットリストが一致するときの過程図の一部である。
【図１１】  具体例のネットリストが一致するときの過程図の一部である。
【図１２】  具体例のネットリストが一致するときの過程図の一部である。
【図１３】  誤った回路例の説明図である。
【図１４】  具体例のネットリストが不一致のときの過程図の一部である。
【図１５】  具体例のネットリストが不一致のときの過程図の一部である。
【符号の説明】
１  識別値付与手段、２  分割手段、３  ノード一致検出手段、４  ノード照合手段、２１  ノード集合記憶手段、２２  一致ノード記憶手段、２３  未一致ノード記憶手段、２４  隣接情報抽出手段、２５  集合内ノード比較手段、２６未一致ノード再編成手段、２７  集合間ノード比較手段、２８  一致ノード抽出手段、２９  結果通知手段、３０  識別値付与手段。
【図１】
0003640402.tif 000002
【図２】
0003640402.tif 000003
【図３】
0003640402.tif 000004
【図４】
0003640402.tif 000005
【図５】
0003640402.tif 000006
【図６】
0003640402.tif 000007
【図７】
0003640402.tif 000008
【図８】
0003640402.tif 000009
【図９】
0003640402.tif 000010
【図１０】
0003640402.tif 000011
【図１１】
0003640402.tif 000012
【図１２】
0003640402.tif 000013
【図１３】
0003640402.tif 000014
【図１４】
0003640402.tif 000015
【図１５】
0003640402.tif 000016