(57)【特許請求の範囲】
【請求項１】
プロセッサと記憶装置とを含むコンピュータシステムによって実行される半導体レイアウトデータの設計検証方法であって、
前記プロセッサにより、検証対象のレイアウトデータ内の第１のパターンをモザイク化して第１のモザイクパターンを生成するステップと、
複数のレイアウトパターンとその各々をモザイク化した複数のモザイクパターンとを収容したライブラリに含まれる第２のモザイクパターンを前記記憶装置から読み出して、前記第１のモザイクパターンと一致するかを前記プロセッサにより判定する第１の判定ステップと、
前記第１の判定ステップにおいて一致すると判定された場合に、前記第２のモザイクパターンに対応する前記ライブラリ内の第２のパターンを前記記憶装置から読み出して、前記第１のパターンと一致するかを前記プロセッサにより判定する第２の判定ステップと
を有し、
前記第１及び第２のパターン並びに前記第１及び第２のモザイクパターンは、それぞれの原点を有し、
前記第１及び第２の判定ステップは、比較する２つのパターンを、前記それぞれの原点を揃えて比較することにより実行される、
ことを特徴とする方法。
【請求項２】
前記ライブラリの前記複数のモザイクパターンは、グリッドを用いて前記複数のレイアウトパターンの各々をモザイク化した複数の基準モザイクパターンと、前記複数のレイアウトパターンの各々を前記グリッド内でシフトさせてモザイク化した複数のずらしモザイクパターンとを含む、ことを特徴とする請求項１に記載の方法。
【請求項３】
前記ライブラリの前記複数のレイアウトパターンは、トランジスタストラクチャ内のゲートパターンを含み、
当該方法は更に、前記第１のモザイクパターンを生成するステップに先立って、前記プロセッサにより、前記第１のパターンとして、前記検証対象のレイアウトデータ内のトランジスタストラクチャからゲートパターンを抽出するステップを有する、
ことを特徴とする請求項１又は２に記載の方法。
【請求項４】
前記ライブラリの前記複数のレイアウトパターンは、機能ブロック内のゲートパターンを含み、
当該方法は更に、前記第１のモザイクパターンを生成するステップに先立って、前記プロセッサにより、前記第１のパターンとして、前記検証対象のレイアウトデータ内の機能ブロックストラクチャからゲートパターンを抽出するステップを有する、
ことを特徴とする請求項１又は２に記載の方法。
【請求項５】
前記ゲートパターンを抽出するステップは、前記ゲートパターンの原点として、前記ゲートパターンの抽出に用いた前記ストラクチャの原点を設定することを伴う、ことを特徴とする請求項３又は４に記載の方法。
【請求項６】
検証対象のレイアウトデータ、及び複数のレイアウトパターンとその各々をモザイク化した複数のモザイクパターンとを収容したライブラリを格納する１つ以上の記憶手段と、
前記検証対象のレイアウトデータ内の第１のパターンをモザイク化して第１のモザイクパターンを生成し、該第１のモザイクパターンと前記ライブラリに含まれる第２のモザイクパターンとが一致するかを判定し、一致する場合に、前記第２のモザイクパターンに対応する前記ライブラリ内の第２のパターンと前記第１のパターンとが一致するかを判定する処理部と
を有し、
前記第１及び第２のパターン並びに前記第１及び第２のモザイクパターンは、それぞれの原点の情報を有し、
前記処理部は、比較する２つのパターンを、前記それぞれの原点を揃えて比較することによって、前記第１のモザイクパターンと前記第２のモザイクパターンとの一致、及び前記第１のパターンと前記第２のパターンとの一致を判定する、
ことを特徴とする半導体レイアウトデータの設計検証システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体レイアウトデータの設計検証のための方法及びシステムに関する。
【背景技術】
【０００２】
近年、大規模集積回路（ＬＳＩ）などの半導体装置の高集積化・多機能化に伴い、半導体装置の製造に必要とされる設計レイアウトデータのデータ量が非常に大きくなっている。一方で、半導体装置の開発期間の短縮や、多量の設計レイアウトを事前に検証して製造段階から設計段階への手戻りを防止することが望まれている。
【０００３】
設計検証は、設計データ中に特定のパターンが含まれるか、又は使用されているパターンが新規パターンであるか等を調べるために行われ得る。一例として、過去にエラーパターンであると判定されたパターンが設計データに含まれていないかが調査される。このようなレイアウトデータの設計検証は、典型的に、パターンマッチングによって行われている。
【０００４】
パターンマッチングは、例えば被写体の自動追尾や工業製品の組立工程での位置合わせなど、様々な用途で使用されている。探索対象画像（テンプレート画像）を撮影画像などの被検証画像の全体内で網羅的に探すパターンマッチング手法が一般的であるが、そのような手法は多大なる計算リソースを必要とし得る。そのため、縮小した画像などを用いて候補位置を抽出した後に、候補位置付近で縮小していない元の画像を用いて高精度のマッチングを行う技術が提案されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平８−１１１５９９号公報
【特許文献２】特開平１０−２１３８９号公報
【特許文献３】特開２００７−３０４８５２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
縮小画像などを用いる既知のパターンマッチング手法においては、網羅的な探索を行うため、且つ／或いは縮小画像に起因する候補位置の抽出漏れを防止する必要があるため、計算量の低減には限界がある。特に、ＬＳＩなどの大規模な半導体装置の設計データは、含んでいるパターンの数そのものが多いのみでなく、似通ったパターンを数多く含んでおり、パターン検出精度を維持したままパターンマッチングの計算量を低減することが困難である。
【０００７】
故に、パターンマッチングを効率化し、半導体レイアウトデータの設計検証を高速化し得る技術が望まれる。
【課題を解決するための手段】
【０００８】
一観点によれば、検証対象のレイアウトデータ内の第１のパターンがモザイク化され、それにより生成された第１のモザイクパターンが、ライブラリに含まれる第２のモザイクパターンと一致するか判定される。ライブラリは、複数のレイアウトパターンとその各々をモザイク化した複数のモザイクパターンとを収容している。第１のモザイクパターンと第２のモザイクパターンとが一致すると判定された場合、第１のモザイクパターンに対応する第１のパターンが、第２のモザイクパターンに対応するライブラリ内の第２のパターンと一致するか判定される。第１及び第２のパターン並びに第１及び第２のモザイクパターンは、データ作成時に定められたそれぞれの原点の情報を有しており、２つのパターン間の一致判定は、それぞれのパターンの原点を揃えて比較することにより実行される。
【発明の効果】
【０００９】
比較されるパターンが有する原点情報を利用して、モザイクパターン同士の比較及びモザイク化前の元のパターン同士の比較を行うことにより、パターンの探索に要する計算量を低減することができる。故に、パターンマッチングの効率化、ひいては、半導体レイアウトデータの設計検証の高速化が達成され得る。
【図面の簡単な説明】
【００１０】
【図１】一実施形態に係る半導体レイアウトデータの設計検証方法を示す図である。
【図２】ＯＰＣ前のレイアウトデータからのゲート領域の抽出処理を示す図である。
【図３】ゲート領域の抽出処理とＯＰＣ処理とを示す図である。
【図４】新たなストラクチャの生成処理の一例を示す図である。
【図５】ストラクチャの階層構造及び新たなストラクチャを示す図である。
【図６】レイアウトパターンのライブラリとその構築方法を示す図である。
【図７】センターモザイク及びずらしモザイクの生成処理の一例を示す図である。
【図８】図１の設計検証方法の一部を図解的に示す図である。
【図９】モザイクマッチングの手順を例示する図である。
【図１０】一実施形態に係る半導体レイアウトデータの設計検証システムのハードウェア構成を示す図である。
【発明を実施するための形態】
【００１１】
以下、図面を参照しながら実施形態について詳細に説明する。なお、図面において、種々の構成要素は必ずしも同一の尺度で描かれていない。また、複数の図を通して、同様の要素には同一又は類似の参照符号を付する。
【００１２】
先ず、図１を参照して、一実施形態に係る半導体レイアウトデータの設計検証方法を概説する。図１は、設計検証における処理及びデータの流れを示している。なお、ここでの説明においては、処理ステップとデータとの双方に同一の参照符号を用いることがある。
【００１３】
ステップ１０にて、検証対象の半導体レイアウトデータ１０が入力され、当該設計検証方法を実行するコンピュータシステム（設計検証システム）のメモリ又はハードディスクなどの記憶装置に格納される。レイアウトデータ１０は、磁気テープ、磁気ディスク、光ディスク又は半導体メモリなどのリムーバブル記憶装置を介して入力されてもよいし、通信回線を介して遠隔のコンピュータシステムから受信されてもよい。レイアウトデータ１０はまた、設計検証システム内の、あるいはそれに接続された、ＣＡＤシステムにて作成されて設計検証システム又はＣＡＤシステムの記憶装置に保存されたものであってもよい。
【００１４】
検証対象のレイアウトデータ１０は、ＬＳＩ又はその他の半導体装置の設計データであり、典型的に多数のストラクチャを含んでいる。ストラクチャとは、例えばトランジスタ及び機能ブロックなど種々の大きさの設計単位を意味し得る。トランジスタストラクチャは、単一のトランジスタ又は複数のトランジスタの組を含み得る。機能ブロックストラクチャは、例えばマクロ・スタンダード・セルなど、トランジスタストラクチャより大規模な構成を有する。各ストラクチャは、そのストラクチャ名と、それを構成するレイヤ又はサブストラクチャの配置情報及び図形情報と、原点座標情報とを含み得る。構成レイヤなどの情報は、典型的に構成図形要素の頂点座標を含み、複数の図形要素で構成される場合、各図形要素に対応する下層レイヤを用いて階層的に表されることも可能である。なお、レイアウトデータ１０は、光近接効果補正（optical  proximity  correction；ＯＰＣ）の実行前／後の何れのデータであってもよい。
【００１５】
ステップ１１にて、検証対象のレイアウトデータ１０からレイアウトパターンが選択される。このステップは、レイアウトパターンを抽出するサブステップ１２と、抽出されたレイアウトパターンの原点を設定するサブステップ１４とを含み得る。
【００１６】
サブステップ１２にて、レイアウトデータ１０が含む多数のストラクチャの中から、例えば、１つのトランジスタストラクチャ又は機能ブロックストラクチャの、１つ又は複数のレイヤのパターン１２が抽出される。あるいは、ストラクチャが含む複数のレイヤのパターンから新たなパターン１２の作成・抽出を行ってもよい。例えば、図２及び３を参照して後述するトランジスタのゲート領域など、各ストラクチャを特徴付けることが可能なパターンが抽出され得る。
【００１７】
サブステップ１４にて、抽出されたパターン１２の原点１４が設定される。原点１４は、ストラクチャが含む既存のパターンをそのまま抽出する場合には、そのストラクチャの原点をそのまま保持するように設定される。また、ストラクチャの既存のパターンから新たなパターンを作成・抽出する場合にも、抽出パターンの原点１４はそのストラクチャの原点に設定される。
【００１８】
抽出されたパターン１２及び設定された原点１４の情報は、作業メモリ空間（以下、抽出パターン格納部と称する）に格納され得る。
【００１９】
ステップ２０にて、抽出パターン１２のモザイク化が実行される。モザイク化は、ライブラリ作成に関連付けて後述するように（図７参照）、抽出パターン１２に所定の比較的粗いピッチの二次元グリッドを割り当て、グリッドによって形成される比較的粗いマスのアレイで抽出パターン１２を表現する。
【００２０】
モザイク化により得られたモザイクパターンは、ステップ２５にて、抽出パターン１２に関連付けられて、作業メモリ空間（以下、抽出モザイクパターン格納部と称する）に格納される。モザイクパターン２５の原点には、抽出パターン格納部に格納されたモザイク化前の抽出パターン１２の原点１４が用いられ得る。あるいは、モザイクパターン２５の原点は、該モザイクパターンとともに抽出モザイクパターン格納部に格納してもよい。
【００２１】
ステップ４０にて、検証対象のレイアウトデータ１０からのモザイクパターン２５と、レイアウトパターンのライブラリ３０からのモザイクパターン３５とのパターンマッチングが実行される。ライブラリ３０は、ＬＳＩ又はその他の半導体装置の多数の設計データを有するデータベースとして、典型的に、ハードディスクなどの大容量記憶装置内に構築されている。ライブラリ３０は典型的に多数のストラクチャのレイアウトパターン３２を収容しており、各ストラクチャはそのストラクチャ名と、それを構成するレイヤ又はサブストラクチャの配置情報及び図形情報（構成図形要素の頂点座標など）と、原点座標情報とを含み得る。ライブラリ３０はまた、ＯＰＣ前／後双方のレイアウトパターンを収容し得る。
【００２２】
さらに、ライブラリ３０は好ましくは、例えばトランジスタのゲート領域など、ストラクチャの複数レイヤのレイアウトパターンから作成された、各ストラクチャを特徴付けることが可能なパターンを収容している。作成されたパターンの原点には、該パターンを含むストラクチャの原点が用いられる。
【００２３】
ライブラリ３０はまた、各レイアウトパターン３２をモザイク化したモザイクパターン３５を収容している。モザイクパターン３５の原点は、モザイク化前のレイアウトパターン３２の原点、すなわち、該レイアウトパターンを含むストラクチャの原点と同一である。モザイクパターン３５の作成については、図６及び７を参照して詳細に後述する。モザイクマッチングステップ４０にて使用されるライブラリ３０からのパターンは、このようなモザイクパターン３５である。
【００２４】
モザイクマッチングは、比較する２つのモザイクパターン２５及び３５の原点を基準にして行われる。すなわち、２つのモザイクパターン２５及び３５それぞれの原点を揃えたときに、それぞれの図形パターンが一致するかが判定される。これは、モザイク化及び／又は原点を用いずにパターンマッチングを行う手法と比較して、パターンマッチングのための計算量を低減することができる。このことは、特に、多数且つ／或いは複雑なストラクチャを有するレイアウトデータ１０を検証する際に顕著である。
【００２５】
ステップ４５にて、モザイクマッチングステップ４０の結果として、検証対象のレイアウトデータからのモザイクパターン２５と、ライブラリからのモザイクパターン３５とが一致するかが判定される。一致しないと判定された場合、これらのパターンの組に対するパターンマッチングは終了する（ステップ５５）。
【００２６】
ステップ４５で一致すると判定された場合には、ステップ５０にて、モザイク化前の元のレイアウトパターンのマッチングが実行される。そのため、検証対象のレイアウトデータ１０から、モザイクパターン２５に関連するモザイク化されていないレイアウトパターンが読み出される。このレイアウトパターンは、典型的に、モザイクマッチングステップ４０で用いられたモザイクパターン２５を生成する元となったレイアウトパターンとし得る。この場合、抽出パターン格納部に格納されている抽出パターン１２を読み出すことができる。また、ライブラリ３０から、モザイクパターン３５に関連するモザイク化されていないレイアウトパターン３２が読み出される。
【００２７】
なお、ステップ５０で用いられるレイアウトパターンは、一致が確認されたモザイクパターンのモザイク化前のパターンに限定されず、該モザイクパターンに関連するその他の１つ以上のパターンが読み出されてもよい。一例として、該当するストラクチャが含む複数（例えば、全て）のレイヤのレイアウトパターンが読み出され、レイヤごとにパターンマッチングが実行されてもよい。
【００２８】
元パターンのマッチングステップ５０も原点を基準にして行われる。すなわち、２つのレイアウトパターンそれぞれの原点を揃えたときに、それぞれの図形パターンが一致するかが判定される。それぞれのレイアウトパターンが図形要素の頂点座標を有する場合、全ての頂点座標が比較され得る。このような比較は、複雑なレイアウトパターンの場合であっても容易に行うことができる。
【００２９】
ステップ５０における判定結果が一致／不一致の何れの場合も、これらのパターンの組に対するパターンマッチングはステップ５５にて終了する。
【００３０】
この設計検証方法は、様々な目的で使用することができる。一例として、ライブラリ３０に登録された例えばエラーパターンなどの特定のレイアウトパターンが、検証対象のレイアウトデータ１０に含まれているかを調べることができる。その場合、ライブラリ３０からの特定のレイアウトパターン３２及びそのモザイクパターン３５がテンプレートパターンとして作業メモリ空間（ライブラリパターン格納部及びライブラリモザイクパターン格納部と称し得る）に保持される。そして、検証対象のレイアウトデータ１０からレイアウトパターンを順次読み出し、上述の処理フローが繰り返され得る。
【００３１】
他の一例として、検証対象のレイアウトデータ１０で使用されているレイアウトパターンが、ライブラリ３０に登録されていない新規パターンであるかを調べることができる。その場合、そのレイアウトパターン１２及びそのモザイクパターン２５がそれぞれ抽出パターン格納部及び抽出モザイクパターン格納部に保持される。そして、ライブラリ３０からモザイクパターン３５及びレイアウトパターン３２を順次読み出し、上述の処理フローが繰り返され得る。
【００３２】
以上の設計検証方法によれば、半導体レイアウトデータに特有の原点情報とモザイクマッチングとを利用することにより、パターンマッチングのための計算量を低減し、半導体レイアウトデータの検証を高速化することができる。
【００３３】
次に、トランジスタのゲートの抽出処理を例に、パターンマッチングに使用され得る新たなストラクチャを生成する処理を説明する。この処理は、検証対象のレイアウトデータ１０からのレイアウトパターン及びライブラリ３０内のレイアウトパターンの双方に対して用いられ得る。
【００３４】
図２を参照するに、トランジスタストラクチャから、トランジスタのゲートとして作用する領域に相当するゲートストラクチャを抽出する手順が模式的に示されている。図２（ａ）に示すように、トランジスタストラクチャ６０は、例えばアイソレーションパターン６１、ゲート材料パターン６２、コンタクトホールパターン６３及びメタルパターン６４などの複数レイヤのレイアウトパターンを含んでいる。トランジスタのゲートを規定するため、アイソレーションパターン６１とゲート材料パターン６２とを抽出し（図２（ｂ））、これら２つのパターンのみを合成する（図２（ｃ））。アイソレーションパターン６１は、素子間分離領域に囲まれたトランジスタ形成領域を規定し、ゲート材料パターン６２は例えばゲートポリシリコンのエッチングパターンを規定している。故に、これらを図形的に論理積演算（ＡＮＤ）処理することによって、トランジスタのゲート領域６５を抽出することができる（図２（ｄ））。その他のレイヤのレイアウトパターンを抽出し、合成し、図形論理演算処理することによって、トランジスタを特徴付けるその他の領域を抽出してもよい。
【００３５】
なお、図２においては、ＯＰＣ前のレイアウトパターンを用いて説明したが、図３に示すように、ＯＰＣ処理を施したアイソレーションパターン６１’及びゲート材料パターン６２’から同様にしてゲート領域６５’を抽出することができる。なお、図示の例では、抽出されたアイソレーションパターン６１及びゲート材料パターン６２（図３（ｂ））に対してＯＰＣ処理（図３（ｃ））を施してＯＰＣ後のパターン６１’及び６２’を生成している。しかしながら、所与のストラクチャデータ（図３（ａ））としてＯＰＣ後のレイアウトパターンが用いられてもよい。
【００３６】
このような領域抽出は、例えばＣＡＤシステム上で図形を直接的に編集することにより行ってもよいが、図４に示すように、テキスト（ＡＳＣＩＩ）フォーマット上で行ってもよい。半導体レイアウトデータに利用されるＧＤＳII及びＯＡＳＩＳなどのデータフォーマットは、公開フォーマットであり、図形（バイナリ）データをテキストフォーマットへ変換することができるからである。例えば、トランジスタストラクチャ６０の図形（図４（ａ））をテキストフォーマットに変換すると、ストラクチャの名称７１、原点及び領域などの情報７２、並びにレイヤ配置情報７３などを含むテキストデータ７０（図４（ｂ））が得られる。レイヤ配置情報７３は、このトランジスタストラクチャが含む複数レイヤの情報を記述している。故に、図４（ｃ）に示すように、テキストデータ７０上で不要なレイヤ配置情報７３を削除し、所望のレイヤ配置情報７３’のみを残存させるように編集することができる。そして、編集されたテキストデータ７０’をバイナリ変換することにより、例えばアイソレーションパターン８１及びゲート材料パターン８２のみを有するトランジスタストラクチャ６０’の図形（図４（ｄ））を得ることができる。
【００３７】
図５は、ストラクチャの階層構造と、それを図形的あるいはテキスト的に編集した新たなストラクチャの生成とを図解的に示している。トランジスタストラクチャ６０は、上述のストラクチャ名７１、原点などの情報７２及びレイヤ配置情報７３に相当する情報を有している。レイヤ配置情報７３は、４つのレイヤ又はサブストラクチャ６１−６４を規定している。各レイヤ６１−６４は、図形要素ごとにサブレイヤ（例えば、６１−１、６１−２、６２−１、６２−２）を有し得る。トランジスタのゲート領域に相当するレイヤ又はサブストラクチャ６５は、レイヤ又はサブストラクチャ６１−６４から、抽出、合成及び論理演算処理を行うことによって作成されている。トランジスタストラクチャ６０のレイヤ配置情報７３を新たなレイヤ６５の配置情報７３’で置換することにより、例えばトランジスタのゲートストラクチャといった新たなストラクチャ６０”を得ることができる。ゲートストラクチャ６０”は、その原点情報７２としてトランジスタストラクチャ６０の原点情報を保持することにより、上述のような原点を基準とするパターンマッチングに使用されることができる。
【００３８】
なお、この例においては、ゲートストラクチャ６０”は、ストラクチャ名７１を元のトランジスタストラクチャ６０と同一にし、トランジスタストラクチャ６０の新たなレイヤとして定義されている。しかしながら、元のトランジスタストラクチャと関連付けるためのデータを付与して、ストラクチャ名を変更することも可能である。また、ここではトランジスタストラクチャ６０からそのゲートストラクチャ６０”を抽出する手法を説明したが、機能ブロックストラクチャにおいても同様にして機能ブロック単位のゲートストラクチャを抽出することができる。
【００３９】
ゲート領域は、トランジスタ及び機能ブロックの構成を比較的小さい面積で特徴付けることができる。故に、トランジスタや機能ブロックのストラクチャから抽出されたゲートストラクチャを使用することは、モザイクマッチングにおけるモザイクの微細化によるマッチング精度の向上、及び／又はパターンマッチングの高速化をもたらし得る。
【００４０】
次に、ライブラリ３０の構築方法を説明する。図６に示すように、ライブラリ３０は、既存の１つ以上のレイアウトデータ８０に基づいて構築される。レイアウトデータ８０に含まれる各レイアウトパターンは、そのままのパターン（モザイク前パターン）３２でライブラリ３０に登録されるとともに、モザイク化を施されたモザイクパターン３５としても登録される。モザイク化は、好ましくは、便宜上センターモザイクとも称する基準モザイクパターン３５ａの生成８５ａに加えて、ずらしモザイク３５ｂと称する更なるモザイクパターンの生成８５ｂを含む。
【００４１】
図７を参照するに、センターモザイク３５ａ及びずらしモザイク３５ｂの生成手法の一例が示されている。モザイクパターン３５（３５ａ及び３５ｂ）は、例えば、モザイク化するレイアウトパターン３２に２次元グリッド８６を割り当て、グリッド８６により形成されるアレイ状のマス８７の各々において、その中にレイアウトパターン３２が存在するかを所定の基準に従って決定することによって行われ得る。所定の基準は、例えば、１マスの面積の１０％以上又は３０％以上などといった面積比基準として定められ得る。
【００４２】
センターモザイク３５ａ及び１つ以上のずらしモザイク３５ｂは、グリッド８６の割り当て位置をずらして、すなわち、レイアウトパターン３２とグリッド８６との相対位置を変化させて生成される。図示の例では、左右に３通りの相対位置でモザイクパターンを生成しており、これらのうちの中央の条件でのモザイクパターン３５ａを、便宜上、センターモザイクと称している。図示されるように、この相対位置の相違により、得られるセンターモザイク３５ａ及び１つ以上のずらしモザイク３５ｂのパターンは異なるものとなり得る。
【００４３】
このように、センターモザイク３５ａに加えてずらしモザイク３５ｂを生成してライブラリ３０に登録しておくことにより、検証対象のレイアウトデータ１０からのレイアウトパターンをモザイク化する際のグリッドの割り当て位置の影響を抑制あるいは排除し得る。データ検証時にグリッドの割り当て位置に依存してモザイクパターン（図１の２５参照）が異なるものとなっても、それと一致するモザイクパターンがライブラリ３０内に存在することになるからである。これにより、データ検証時のマッチング率が向上する。
【００４４】
図示の例においては、センターモザイク３５ａを基準に左右各１つのずらしモザイク３５ｂを生成しているが、好ましくは、上下各１つのずらしモザイクを更に生成する。より好ましくは、センターモザイク３５ａを中心として８方向に各１つのずらしモザイク、合計で９通りのモザイクパターン３５を生成する。
【００４５】
相対位置のずらし量は、センターを基準にして各方向にグリッド８６のハーフピッチまで、すなわち、全体でグリッド８６のピッチまでとすることができる。このグリッドピッチ内で生成するモザイクパターンの数は、３つに限定されず、２つであってもよいし、４つ以上であってもよい。しかしながら、ずらしモザイク数を大きくすることは、レイアウトパターンの一致／不一致の誤判定を防止することにつながるものの、全体的なパターンマッチング効率の低下及びライブラリ３０の管理の繁雑さの問題を生じさせ得る。
【００４６】
なお、ここでは、トランジスタストラクチャに関するモザイク化を説明したが、機能ブロックストラクチャ及びゲートストラクチャなどのその他のストラクチャに対してもモザイクパターンが生成され、ライブラリ３０に登録される。
【００４７】
以上の説明を踏まえ、図８及び９を参照して、図１を用いて概説した設計検証方法の一部を更に詳細に説明する。
【００４８】
図８は、図１の設計検証方法の一部を図解的に示している。ライブラリ３０は、例えば、トランジスタストラクチャ、それから抽出されたゲートストラクチャ、及び機能ブロックストラクチャのレイアウトパターンを含んでいる。ライブラリ３０はまた、これらのレイアウトパターンの各々をモザイク化したモザイクパターンを含んでいる。モザイクパターンは、各ストラクチャに対して、センターモザイク及びずらしモザイクを含む複数のパターンを含み得る。図８には示していないが、機能ブロックストラクチャに関するずらしモザイクも含まれ得る。また、機能ブロックストラクチャから抽出されたゲートストラクチャが含まれていてもよい。
【００４９】
検証対象レイアウトデータ１０からのレイアウトパターンは、トランジスタ、そのゲート、機能ブロック、又はそのゲート（図示せず）のストラクチャのレイアウトパターンとし得る。そして、それをモザイク化したモザイクパターン２５が生成される。
【００５０】
モザイクマッチングステップ４０では、ライブラリ３０からのモザイクパターン３５と検証対象レイアウトデータからのモザイクパターン２５とのパターンマッチングが行われる。判定ステップ４５にてモザイクパターンの一致が確認された場合、一致した２つのモザイクパターンに関連付けられたモザイク化前パターン同士のマッチングが実行される。
【００５１】
図９は、モザイクマッチングの手順の例を図解的に示している。ここでは、ライブラリ３０内の１つのトランジスタストラクチャ及び１つの機能ブロックについて、検証対象のレイアウトデータ１０内に一致するレイアウトパターンが存在するかを検証している。図９の例において、トランジスタストラクチャのモザイクマッチングは、トランジスタストラクチャから抽出されたゲートストラクチャを用いて行われている。
【００５２】
ライブラリ３０に収容されたセンターモザイク３５ａ及びずらしモザイク３５ｂを含む複数のモザイクパターンが使用され得る。図示していないが、機能ブロックについても同様である。図９の例においては、これらのモザイクパターンを用いて、検証対象のレイアウト内に、６つの候補トランジスタ（ゲート）ストラクチャ及び２つの候補機能ブロックストラクチャが見出されている。このモザイクマッチングは、ライブラリ３０内のモザイクパターン３５ａ、３５ｂの原点（図中の“×”）と、検証対象レイアウトデータからのモザイクパターン２５の原点（同じく“×”）とを揃えたときに双方のパターンが一致するかを判定することにより行われる。モザイクパターンを＋９０°、−９０°、１８０°回転させたパターンも、同一のストラクチャの候補として扱うことができる。このような扱いは、ライブラリ内に、回転されたモザイクパターンを登録しておくことで可能にされてもよいし、モザイクマッチング時に、ライブラリ側又は検証対象側の何れかのモザイクパターンを回転させて比較することで可能にされてもよい。また、同様にして、鏡像の関係にレイアウトされたパターンも同一のレイアウトパターンとして扱ってもよい。
【００５３】
センターモザイク３５ａ及び１つ以上のずらしモザイク３５ｂのうちの何れと一致したかにかかわらず、候補ストラクチャは同一のストラクチャに対する候補である。故に、モザイクマッチングに続く元パターンのマッチングでは、検証対象側の各候補の元パターンは、ライブラリ側の同一の元パターンに対して一致／不一致が判定される。回転されることで一致した候補モザイクパターンについては、その回転に関する情報を記録し、それを利用することにより、ライブラリ側又は検証対象側の何れかの元パターンを回転させて比較することができる。
【００５４】
次に、一実施形態に係る設計検証方法を実行し得るコンピュータシステム（設計検証システム）１００を説明する。図１０は、設計検証システム１００が有し得るハードウェア構成の一例を示している。設計検証システム１００は、バス１０１に接続された、ＣＰＵなどの処理部１０２、ＲＡＭなどのメモリ１０３、及びハードディスクなどの大容量の記憶装置１０４を有している。設計検証システム１００はまた、バス１０１に接続された、キーボード及びマウスなどからユーザ入力することを可能にする外部入力インタフェース１０５、及びプリンタなどへのデータ出力を可能にする外部出力インタフェース１０６を有している。設計検証システム１００はまた、バス１０１に接続されたグラフィックスコントローラ１０７を有しており、該コントローラ１０７を介してモニタ１０８上にレイアウトパターン画像及びＧＵＩなどを表示することができる。設計検証システム１００は更に、イントラネット又はインターネットなどのネットワークを通じて外部と通信するためのネットワークインタフェース１０９、及びリムーバブル記憶媒体との間でのデータ交換のための記憶メディアインタフェース１１０を有し得る。
【００５５】
記憶装置１０４は、多数のレイアウトパターンを収容したライブラリを格納することができる。記憶装置１０４はまた、ネットワーク又はリムーバブル記憶媒体から受信した検証対象のレイアウトデータを格納することができる。しかしながら、ライブラリは、ネットワークに接続された遠隔サーバの記憶装置に格納されていてもよく、レイアウトデータはメモリ１０３に格納されてもよい。メモリ１０３は、モザイクマッチング及びモザイク化前の元パターンのマッチングにおける比較のために読み出されたレイアウトパターンのデータを格納し得る。また、メモリ１０３及び／又は記憶装置１０４には、処理部１０２によって実行されたときに処理部１０２に上述の設計検証方法を実行させるプログラムが格納され得る。
【００５６】
以上、実施形態について詳述したが、本発明は特定の実施形態に限定されるものではなく、特許請求の範囲に記載された要旨の範囲内において、種々の変形及び変更が可能である。
【００５７】
以上の説明に関し、更に以下の付記を開示する。
（付記１）
検証対象のレイアウトデータ内の第１のパターンをモザイク化して第１のモザイクパターンを生成するステップと、
複数のレイアウトパターンとその各々をモザイク化した複数のモザイクパターンとを収容したライブラリに含まれる第２のモザイクパターンと、前記第１のモザイクパターンとが一致するかを判定する第１の判定ステップと、
前記第１の判定ステップにおいて一致すると判定された場合に、前記第２のモザイクパターンに対応する前記ライブラリ内の第２のパターンと前記第１のパターンとが一致するかを判定する第２の判定ステップと
を有し、
前記第１及び第２のパターン並びに前記第１及び第２のモザイクパターンは、それぞれの原点を有し、
前記第１及び第２の判定ステップは、比較する２つのパターンを、それぞれの原点を揃えて比較することにより実行される、
ことを特徴とする半導体レイアウトデータの設計検証方法。
（付記２）
前記ライブラリの前記複数のモザイクパターンは、グリッドを用いて前記複数のレイアウトパターンの各々をモザイク化した複数の基準モザイクパターンと、前記複数のレイアウトパターンの各々を前記グリッド内でシフトさせてモザイク化した複数のずらしモザイクパターンとを含む、ことを特徴とする付記１に記載の方法。
（付記３）
前記ライブラリの前記複数のレイアウトパターンは、トランジスタストラクチャ内のゲートパターンを含み、
当該方法は更に、前記第１のモザイクパターンを生成するステップに先立って、前記第１のパターンとして、前記検証対象のレイアウトデータ内のトランジスタストラクチャからゲートパターンを抽出するステップを有する、
ことを特徴とする付記１又は２に記載の方法。
（付記４）
前記ライブラリの前記複数のレイアウトパターンは、機能ブロック内のゲートパターンを含み、
当該方法は更に、前記第１のモザイクパターンを生成するステップに先立って、前記第１のパターンとして、前記検証対象のレイアウトデータ内の機能ブロックストラクチャからゲートパターンを抽出するステップを有する、
ことを特徴とする付記１又は２に記載の方法。
（付記５）
前記ゲートパターンを抽出するステップは、前記ゲートパターンの原点として、前記ゲートパターンの抽出に用いた前記ストラクチャの原点を設定することを伴う、ことを特徴とする付記３又は４に記載の方法。
（付記６）
前記ゲートパターンを抽出するステップは、素子間分離パターンとゲート材料パターンとの論理積を演算することを含む、ことを特徴とする付記３乃至５の何れか一に記載の方法。
（付記７）
前記検証対象のレイアウトデータは光近接効果補正されたレイアウトデータである、ことを特徴とする付記１乃至６の何れか一に記載の方法。
（付記８）
検証対象のレイアウトデータ、及び複数のレイアウトパターンとその各々をモザイク化した複数のモザイクパターンとを収容したライブラリを格納する１つ以上の記憶手段と、
前記検証対象のレイアウトデータ内の第１のパターンをモザイク化して第１のモザイクパターンを生成し、該第１のモザイクパターンと前記ライブラリに含まれる第２のモザイクパターンとが一致するかを判定し、一致する場合に、前記第２のモザイクパターンに対応する前記ライブラリ内の第２のパターンと前記第１のパターンとが一致するかを判定する処理部と
を有し、
前記第１及び第２のパターン並びに前記第１及び第２のモザイクパターンは、それぞれの原点の情報を有し、
前記処理部は、比較する２つのパターンを、それぞれの原点を揃えて比較することによって、前記第１のモザイクパターンと前記第２のモザイクパターンとの一致、及び前記第１のパターンと前記第２のパターンとの一致を判定する、
ことを特徴とする半導体レイアウトデータの設計検証システム。
【符号の説明】
【００５８】
１０    検証対象レイアウトデータ
１２    検証対象レイアウトパターン
１４    原点
２５    検証対象モザイクパターン
３０    ライブラリ
３２    ライブラリ内のレイアウトパターン
３５    ライブラリ内のモザイクパターン
３５ａ  センターモザイク
３５ｂ  ずらしモザイク
４０    モザイクパターンマッチング
５０    元パターンマッチング
６０    トランジスタストラクチャ
６０”  ゲートストラクチャ
６１    アイソレーションパターン
６２    ゲート材料パターン
６３    コンタクトホールパターン
６４    メタルパターン
６５    ゲートパターン
７１    ストラクチャ名
７２    原点などの情報
７３    レイヤ配置情報
８６    グリッド
８７    マス
１００  設計検証システム
１０１  バス
１０２  処理部
１０３  メモリ
１０４  記憶装置
１０５  外部入力インタフェース
１０６  外部出力インタフェース
１０７  グラフィックスコントローラ
１０８  モニタ
１０９  ネットワークインタフェース
１１０  記憶メディアインタフェー
【図１】
0005609593.tif 000002
【図２】
0005609593.tif 000003
【図３】
0005609593.tif 000004
【図４】
0005609593.tif 000005
【図５】
0005609593.tif 000006
【図６】
0005609593.tif 000007
【図７】
0005609593.tif 000008
【図８】
0005609593.tif 000009
【図９】
0005609593.tif 000010
【図１０】
0005609593.tif 000011