説明

パターン密度検証方法及びプログラム

【課題】チップ全体の密度検証においてマクロセル部分での設計規則違反の判定を出さないようにすること。
【解決手段】検証エリアの内側と外側に内側補助区画と外側補助区画とをそれぞれ設定し(ステップS19)、内側補助区画のパターン占有面積に外側補助区画のパターン占有面積を加味した検証エリアのパターン密度D2が密度基準を満たすか否かを判定する(ステップS20)。

【発明の詳細な説明】
【技術分野】
【0001】
半導体装置のパターン密度検証方法及びプログラムに関するものである。
【背景技術】
【0002】
従来、半導体装置のレイアウト設計では、セルを配置し、配線パターンを生成する。そして、設計した各配線層のパターンの密度が半導体装置の設計規則を満たすか否かの検証(密度検証)を行っている。この密度検証において、設計規則に基づく所定サイズの検証エリアの配置位置を、検証ステップ値で順次変更し、それぞれの位置での検証エリアのパターン密度が設計規則を満たしているか否かを判定する。そして、設計規則を満たしていない箇所が存在すれば、その設計規則を満たすべくパターンを編集し、再度パターン密度検証を行う。
【0003】
レイアウト設計において、セルはマクロセルを含む。マクロセルは、半導体装置内の特定機能をひとかたまりとした機能ブロックである。このため、マクロセルを配置した後に密度検証を行う方法では、マクロセル内の密度違反を検出した場合に、マクロセルの設計変更を行わなければならない。このため、マクロセルの設計の段階でも該マクロセル部分だけの密度検証を行う手法が知られている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2003−67441号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、マクロセルを配置するときに、マクロセルの基準位置(例えば設計上の原点)と、半導体装置の設計基準となる格子の交点とが異なる場合がある。この場合、マクロセルを密度検証した検証エリアの位置と、半導体装置の検証エリアの位置がずれる。すると、配線パターンの位置によって、エラーとなる場合がある。この場合には、上記と同様にマクロセルのレイアウトを再度行わなければならず、開発期間が増加してしまう。
【0006】
このパターン密度検証方法で、チップ全体の密度検証においてマクロセル部分での設計規則違反の判定を出さないようにすることを目的とする。
【課題を解決するための手段】
【0007】
本発明の一観点によれば、中央処理装置は、検証エリアの内側と外側に内側補助区画と外側補助区画とをそれぞれ設定し、前記内側補助区画内のパターン占有面積と前記外側補助区画内のパターン占有面積とに基づき算出された前記検証エリアのパターン密度が所定の密度基準を満たすか否かを検証する。
【発明の効果】
【0008】
開示されたパターン密度検証方法によれば、チップ全体の密度検証においてマクロセル部分での設計規則違反の判定を出さないようにすることが可能となる。
【図面の簡単な説明】
【0009】
【図1】配線設計装置の概略構成図である。
【図2】密度検証処理の説明図である。
【図3】第一実施形態の密度検証処理のフロー図である。
【図4】第一実施形態の密度検証処理のフロー図である。
【図5】パターン密度の最大変化量の説明図である。
【図6】第一実施形態の密度検証処理の説明図である。
【図7】第一実施形態の密度検証処理の説明図である。
【図8】第一実施形態の密度検証処理の説明図である。
【図9】(a)〜(f)は第一実施形態の内側補助区画と外側補助区画の組み合わせの説明図である。
【図10】密度検証処理の説明図である。
【図11】第二実施形態の密度検証処理のフロー図である。
【図12】第二実施形態の密度検証処理のフロー図である。
【図13】第二実施形態の密度検証処理の説明図である。
【図14】(a)〜(f)は第二実施形態の内側補助区画と外側補助区画の組み合わせの説明図である。
【図15】(a)〜(c)は、第二実施形態の密度検証処理の説明図である。
【図16】第二実施形態の密度検証処理の説明図である。
【図17】(a)〜(c)は、第二実施形態の密度検証処理の説明図である。
【図18】第二実施形態の密度検証処理の説明図である。
【図19】第二実施形態の密度検証処理の説明図である。
【図20】第二実施形態の密度検証処理の説明図である。
【図21】第三実施形態の密度検証処理のフロー図である。
【図22】第三実施形態の密度検証処理の説明図である。
【図23】(a)〜(c)は、第三実施形態の密度検証処理の説明図である。
【図24】(a)〜(c)は、第三実施形態の密度検証処理の説明図である。
【図25】第三実施形態の密度検証処理の説明図である。
【発明を実施するための形態】
【0010】
(第一実施形態)
以下、第一実施形態を図1〜図10に従って説明する。
図1に示すように、半導体装置のレイアウトデータを生成するための設計装置(コンピュータ)11は一般的なCAD(Computer Aided Design )装置からなり、中央処理装置(以下、CPUという)12、メモリ13、記憶装置14、表示装置15、入力装置16、及び、ドライブ装置17により構成され、それらはバス18を介して相互に接続されている。
【0011】
CPU12は、メモリ13を利用してプログラムを実行し、半導体装置のレイアウト設計等の必要な処理を実現する。プログラムは、CPU12を半導体装置のレイアウトデータを生成する設計装置としての各種手段として機能させるためのものである。メモリ13には、各種処理を提供するために必要なプログラムとデータが格納され、メモリ13としては、通常、キャッシュ・メモリ、システム・メモリおよびディスプレイ・メモリを含む。
【0012】
表示装置15は、レイアウト表示、パラメータ入力画面等の表示に用いられ、これにはCRT,LCD,PDP等が用いられる。入力装置16は、ユーザからの要求や指示,パターン,パラメータの入力に用いられ、これにはキーボードおよびマウス装置(図示せず)等が用いられる。
【0013】
コンピュータ11は、レイアウトデータに基づき半導体装置に形成するパターン(図形)を表示装置15に表示させる。そして、コンピュータ11は、ユーザが操作する入力装置16からの信号に従って、表示装置15上のパターンの追加,削除を行うとともに、レイアウトデータに対してパターンデータの追加,削除を行う。
【0014】
記憶装置14は、通常、磁気ディスク装置、光ディスク装置、光磁気ディスク装置を含む。この記憶装置14には、半導体装置(半導体集積回路装置)のレイアウトデータを生成するためのプログラムデータとファイルが格納され、CPU12は、入力装置16による指示に応答しているプログラム,データをメモリ13へ転送し、それを実行する。
【0015】
CPU12が実行するプログラムデータは、記録媒体19にて提供される。ドライブ装置17は、記録媒体19を駆動し、その記憶内容にアクセスする。CPU12は、ドライブ装置17を介して記録媒体19からプログラムデータを読み出し、それを記憶装置14にインストールする。
【0016】
記録媒体19としては、磁気テープ(MT)、メモリカード、フレキシブルディスク、光ディスク(CD-ROM,DVD-ROM,… )、光磁気ディスク(MO,MD,…)等、任意のコンピュータ読み取り可能な記録媒体を使用することができる。この記録媒体19に、上述のプログラム,データを格納しておき、必要に応じて、メモリ13にロードして使用することもできる。
【0017】
尚、記録媒体19には、通信媒体を介してアップロード又はダウンロードされたプログラムデータを記録した媒体、ディスク装置を含む。更に、コンピュータによって直接実行可能なプログラムを記録した記録媒体だけでなく、いったん他の記録媒体(ハードディスク等)にインストールすることによって実行可能となるようなプログラムを記録した記録媒体や、暗号化されたり、圧縮されたりしたプログラムを記録した記録媒体も含む。
【0018】
次に、パターン密度を考慮したレイアウト設計手法の概要を説明する。
まず、CPU12は、図2に示すマクロセル21(半導体装置内の特定機能をひとかたまりとした機能ブロック)のパターンデータを作成し、その後、マクロセル21のパターン密度検証を各レイヤ(層)で行う。このパターン密度検証で、マクロセル21のパターン密度が半導体装置の設計規則を満たしていない場合には、その設計規則を満たすようにマクロセル21のパターンの編集を行う。パターン密度は、検証エリアの面積に対する、検証エリア内のパターンの面積の合計値の比率である。
【0019】
次に、CPU12は、チップ22全体のパターンの形状の作成を行い、その後、チップ22全体(検証するレイヤ全体)のパターン密度検証を各レイヤで行う。このパターン密度検証で、チップ22全体のパターン密度が半導体装置の設計規則を満たしていない場合には、その設計規則を満たすべくパターンの編集を行う。そして、各レイヤでチップ22全体のパターン密度が設計規則を満たせば、レイアウトが確定する。
【0020】
次に、上記のマクロセル21のパターン密度検証方法の詳細を図3〜図10に従って説明する。
CPU12は、予め設定されている検証条件P1(検証するレイヤ、半導体装置の設計規則に基づく第1密度基準値R1、検証エリアA1のサイズ及び検証ステップ値V1)及びマクロセル21のレイアウトデータLに基づいて下記の処理を行う。例えば、1つの配線層において、第1密度基準値R1を75%とし、検証エリアA1を1辺が32μmの正方形とし、検証ステップ値V1は8μmとする。
【0021】
まず、CPU12は、検証エリアA1をX軸方向及びY軸方向に検証ステップ値V1だけそれぞれずらしたときに見込まれるパターン密度の最大変化量に基づく第2密度基準値R2を算出する(図3中、ステップS11)。
【0022】
このパターン密度の最大変化量は、図5に示すように、検証エリアA1をX軸方向及びY軸方向に検証ステップ値V1だけそれぞれずらしたときに、ずらす前の検証エリアA1(便宜上、第1検証エリアA11とする)のパターン密度と、ずらした後の検証エリアA1(便宜上、第2検証エリアA12とする)のパターン密度の差である。今、第1検証エリアA11及び第2検証エリアA12において、第1検証エリアA11に含まれ、第2検証エリアA12に含まれない領域をM、第2検証エリアA12に含まれ、第1検証エリアA11に含まれない領域をNとする。これら領域M,Nの面積は、検証エリアA1を対角方向にずらした場合に最大となる。そして、両領域M,Nのいずれか一方に形成されたパターンの面積の合計値が領域の面積と等しく(パターン密度が100%)、いずれか他方にパターンが全く無い状態(パターン密度が0%)の場合、第1検証エリアA11のパターン密度と第2検証エリアA12のパターン密度の差が最大となる、即ちパターン密度の変化量が最大となる。
【0023】
この第1検証エリアA11の位置と第2検証エリアA12の位置の相対的なずれ量は、マクロセルの設計時における検証エリアの位置と、チップの設計時における検証エリアの位置との相対的なずれ量の最大値とみることができる。そして、このずれ量は、チップの設計時の検証エリアの基準点に対するマクロセルの基準点のずれ量と見ることができる。そして、最大変化量は、チップの検証エリアに対してマクロセルの基準点をずらして配置したときに、マクロセルの検証時における検証エリアのパターン密度に対して、チップの検証時における検証エリアのパターン密度の差の最大値となる。
【0024】
そして、CPU12は、第1密度基準値R1から最大変化量を引いた結果の値を第2密度基準値R2とする。つまり、マクロセルの検証エリアにおけるパターン密度がこの第2密度基準値R2以下の場合、マクロセルをチップ上にどのように配置しても、その検証エリア内のパターンは、チップの密度検証において密度違反を発生させないことになる。従って、パターン密度の最大変化量を考慮してマクロセルの密度検証を行うことにより、チップ上にマクロセルを配置したときの密度違反の発生を抑えることが可能となる。
【0025】
CPU12は、最大変化量を、(パターン密度の最大変化量)=(領域M(又は領域N)の面積)/(検証エリアA1の面積)×100(%)により算出する。そして、CPU12は、第1密度基準値R1からパターン密度の最大変化量を差し引いた値を第2密度基準値R2とする。例えば、検証エリアA1を1辺が32μmの正方形とし、検証ステップ値V1を8μmとした場合には、第2密度基準値R2は、75−((32−24)/32)×100=31.25(%)となる。
【0026】
次に、CPU12は、検証領域T1を検証する所定のマクロセル21の範囲に設定し(ステップS12)、その後、検証領域T1内に検証エリアA1を設定する(ステップS13)。CPU12は、検証エリアA1の基準値(検証エリアA1の左下頂点の座標値)を配置する位置を、検証領域T1内の所定の位置(例えば図6における左下の角部分)からX軸方向とY軸方向とにそれぞれ検証ステップ値V1の整数倍の値を加算した座標値とする。
【0027】
次に、CPU12は、ステップS14において、マクロセル21のレイアウトデータLに基づいて検証ステップ区画23(1辺が検証ステップ値V1である正方形)毎にパターン占有面積を算出し、その算出値を基に面積テーブルC1を作成する(図6参照)。尚、図6において、算出したパターン占有面積の数値の一例を各検証ステップ区画23内に示している。
【0028】
次に、CPU12は、ステップS13で設定した検証エリアA1の中で、未検証の検証エリアA1があるか否かを判定し(ステップS15)、未検証の検証エリアA1がある場合、その検証エリアA1を密度検証の対象としてステップS16に移行する。
【0029】
ステップS16において、CPU12は、面積テーブルC1に基づいて対象とした検証エリアA1のパターン密度D1を算出し、そのパターン密度D1が第2密度基準値R2以下か否かを判定する。パターン密度D1が第2密度基準値R2以下の場合、チップ上に配置した場合にも設計規則を満たす(即ち、パターン密度D1が第1密度基準値R1以下である)ため、その検証エリアA1を検証済のものとして記録し、ステップS15に戻る。一方、パターン密度D1が第2密度基準値R2よりも大きい場合、ステップS17に移行する。
【0030】
ステップS17において、CPU12は、検証エリアA1のパターン密度D1が設計規則を満たすか否か、即ち、パターン密度D1が第1密度基準値R1以下か否かを判定する。パターン密度D1が第1密度基準値R1よりも大きい場合、マクロセルの設計段階において密度違反である。従って、CPU12は対象の検証エリアA1の位置とパターン密度D1を記録する(ステップS18)。そして、その検証エリアA1を検証済のものとして記録し、ステップS15に戻る。
【0031】
一方、パターン密度D1が第1密度基準値R1以下の場合、図4に示すステップS19に移行する。このようにステップS16及びステップS17を経ることで、パターン密度D1が第1密度基準値R1以下であって第2密度基準値R2よりも大きい検証エリアA1が、ステップS19以降の密度検証を行う対象となる。この密度検証の対象となる検証エリアA1は、マクロセルの設計段階では密度違反を発生していないが、チップ上に配置した場合に設計規則を満たさない、即ち密度違反を発生させる可能性がある検証エリアである。
【0032】
ステップS19からステップS21において、CPU12は、対象の検証エリアA1に対して補助区画を設定し、対象の検証エリアA1の密度検証を行う。まず、ステップS19において、CPU12は対象の検証エリアA1に対し、内側補助区画31と外側補助区画32を設定する。図7に示すように、CPU12は、検証エリアA1の辺に沿って、検証エリアA1の内側に複数の内側補助区画31を設定し、検証エリアA1の外側に複数の外側補助区画32を設定する。各内側補助区画31及び各外側補助区画32は、1辺が検証ステップ値V1である正方形である。
【0033】
各内側補助区画31は、所定の外側補助区画32と対応している。
詳述すると、図9(a)(b)(c)(d)に示すように、検証エリアA1の角部分に位置する各内側補助区画31aは3つの外側補助区画32と対応している。1つは内側補助区画31aの対角に位置する外側補助区画32aであり、残りの2つは内側補助区画31のX軸方向及びY軸方向の対辺部分にそれぞれ位置する外側補助区画32bである。尚、図9(a)〜(d)には、検証エリアA1の角部分に位置する内側補助区画31aとそれに対応する外側補助区画32a,32bとの組み合わせをそれぞれ示している。
【0034】
そして、図9(e)(f)に示すように、角部分の内側補助区画31a以外の内側補助区画31b(角部分の内側補助区画31a間に位置する内側補助区画31b)は、そのX軸方向(又はY軸方向)の対辺部分に位置する外側補助区画32cと対応している。尚、図9(e)(f)には、内側補助区画31bと外側補助区画32cとの各組み合わせを示している。
【0035】
上記の組み合わせは、後述のチップ22全体の密度検証の検証エリアがX軸方向及びY軸方向の少なくとも一方にずれたときに、そのチップ22全体の密度検証の検証エリアから一部が外れる内側補助区画31とチップ22全体の密度検証の検証エリアに一部が含まれる外側補助区画32の組み合わせである。このため、チップ22全体の密度検証の検証エリアがX軸方向及びY軸方向の少なくとも一方にずれた場合におけるその検証エリアの内のパターン密度を考慮することができ、チップ22全体の密度検証においてマクロセル21部分での設計規則違反の判定を出さないようにすることが可能となる。
【0036】
次に、CPU12は、外側補助区画32を加味したパターン密度D2を算出する(ステップS20)。まず、CPU12は、内側補助区画31のパターン占有面積に、対応する外側補助区画32のパターン占有面積を足し合わせる。次に、その足し合わせた値と1つの内側補助区画31の面積とを比較し、そのうちの小さい方の値をその内側補助区画31のパターン占有面積とする(図8参照)。つまり、この外側補助区画32に基づく内側補助区画31のパターン占有面積は、内側補助区画31に対応する外側補助区画32のパターン占有面積を全て足し合わしたときに、その内側補助区画31が取り得る最大のパターン占有面積である。そして、CPU12は、面積テーブルC1における各内側補助区画31のパターン占有面積の値を、外側補助区画32を加味したパターン占有面積の値に更新する。
【0037】
図8には、各補助区画31,32内のパターン占有面積が図7に示す値の場合の外側補助区画32を加味した内側補助区画31のパターン占有面積を示している。本実施形態のように内側補助区画31の1辺の長さ(検証ステップ値V1)が8μmの場合、内側補助区画31の面積は64μmである。内側補助区画31のパターン占有面積と対応する外側補助区画32のパターン占有面積との合計値が内側補助区画31の面積(64μm)よりも大きいときは、その内側補助区画31の面積(64μm)を、外側補助区画32を加味した内側補助区画31のパターン占有面積とする。一方、合計値が内側補助区画31の面積(64μm)以下のときは、その合計値を、外側補助区画32を加味した内側補助区画31のパターン占有面積とする。尚、検証エリアA1の辺が検証領域T1の辺と重なる(検証エリアA1が検証領域T1の端に位置する)場合には、その検証エリアA1の外側補助区画32の一部が検証領域T1の外側に設定されるが、その検証領域T1外に設定された外側補助区画32のパターン占有面積は0(零)とする。
【0038】
その後、CPU12は、上記工程で各内側補助区画31のパターン占有面積を更新した面積テーブルC1に基づいて検証エリアA1のパターン密度D2を算出する。
次に、CPU12は、パターン密度D2と設計規則に基づく第1密度基準値R1とを比較し、パターン密度D2が第1密度基準値R1以下か否かを判定する(ステップS21)。パターン密度D2が第1密度基準値R1以下の場合、その検証エリアA1を検証済のものとして記録し、ステップS15に戻る(図3参照)。一方、パターン密度D2が第1密度基準値R1よりも大きい場合には、ステップS22以降の詳細な密度検証を行う。
【0039】
CPU12は、予め設定されている検証条件P2(検証するレイヤ、半導体装置の設計規則に基づく第1密度基準値R1、検証エリアA2のサイズ及び検証ステップ値V2)及びマクロセル21のレイアウトデータLに基づいて詳細な密度検証を行う。検証ステップ値V2は、上記密度検証の検証ステップ値V1よりも小さな値に設定され、本実施形態では4μmに設定される。尚、この詳細な密度検証の検証ステップ値V2は、レイアウトの最小単位に設定するのが望ましい。また、詳細な密度検証での検証エリアA2のサイズ及び形状は、上記密度検証の検証エリアA1のサイズと等しく設定される。
【0040】
ステップS22において、CPU12は、詳細な密度検証を行う検証領域T2を上記の密度検証における検証エリアA1と外側補助区画32を合わせた領域に設定し(図10参照)、その後、検証領域T2内に検証エリアA2を設定する(ステップS23)。検証エリアA2の設定の要領は、検証ステップ値V2が小さい点を除き上記密度検証の場合(ステップS13を参照)と同様である。
【0041】
次に、CPU12は、ステップS24において、マクロセル21のレイアウトデータLに基づいて検証ステップ区画41(1辺が検証ステップ値V2である正方形)毎にパターン占有面積を算出し、その算出値を基に面積テーブルC2を作成する(図10参照)。尚、図10において、算出したパターン占有面積の数値の一例を各検証ステップ区画41内に示している。
【0042】
次に、CPU12は、ステップS23で設定した検証エリアA2の中で、未検証の検証エリアA2があるか否かを判定し(ステップS25)、未検証の検証エリアA2がある場合、その検証エリアA2を密度検証の対象としてステップS26に移行する。
【0043】
ステップS26において、CPU12は、面積テーブルC2に基づき対象となる検証エリアA2のパターン密度D3を算出し、そのパターン密度D3が第1密度基準値R1以下か否かを判定する。パターン密度D3が第1密度基準値R1以下の場合、設計規則を満たすため、その検証エリアA2を検証済のものとして記録し、ステップS25に戻る。一方、パターン密度D3が第1密度基準値R1よりも大きい場合、CPU12は設計規則を違反するその検証エリアA2の位置とパターン密度D3を記録する(ステップS27)。そして、その検証エリアA2を検証済のものとして記録し、ステップS25に戻る。その後、ステップS25において、未検証の検証エリアA2がないと判定した場合、詳細な密度検証を完了し、ステップS15に戻る。
【0044】
そして、ステップS15において、未検証の検証エリアA1がないと判定した場合、マクロセル21のパターン密度検証を終了する。
上記の検証処理において、設計規則違反が記録された場合、その設計規則違反の記録に基づきマクロセル21のレイアウトデータLが設計規則を満たすべく編集される。そして、CPU12は、再度上記のパターン密度検証を行う。そして、各検証エリアA1(及び各検証エリアA2)で設計規則の違反がなければ、マクロセル21の設計(パターンの形状の作成)が完了する。
【0045】
半導体装置の設計処理において、CPU12は、チップ22全体のパターンの形状の作成(マクロセル21の配置位置等の決定)を行う。その後、CPU12は、チップ22全体(検証するレイヤ全体)のパターン密度検証を各レイヤで行う。
【0046】
チップ22全体のパターン密度検証では、その検証条件(設計規則に基づく密度基準値(前記第1密度基準値R1と同値)、検証エリアのサイズ、及び検証ステップ値)は、マクロセル21のパターン密度検証の場合と同様である。
【0047】
まず、CPU12は、検証領域をチップ22全体(レイヤ全体)に設定し、その後、マクロセル21のパターン密度検証の場合と同様に検証エリアを設定する(ステップS13を参照)。次に、各検証エリアでパターン密度が設計規則を満たしているか否か(パターン密度が密度基準値以下か否か)を検証し、設計規則を満たしていない検証エリアが存在した場合には、設計規則を満たすべくチップ22全体のパターンの編集を行う。その後、チップ22全体のパターン密度検証を再度行い、各検証エリアで設計規則を満たせば、チップ22全体の設計が完了する。
【0048】
以上のように本実施形態のパターン密度検証方法では、マクロセル21単体のパターン密度検証において、検証エリアA1のパターン密度D1(実際のパターン密度)が、検証エリアA1をX軸方向及びY軸方向に検証ステップ値V1だけそれぞれずらしたときに見込まれるパターン密度の最大変化量に基づく第2密度基準値R2以下か否かを判定する(ステップS16)。パターン密度D1が第2密度基準値R2以下の場合、その検証エリアA1とその周囲八方の検証エリアA1との間(検証ステップ間)で設計規則を違反することはない。また、パターン密度D1が第2密度基準値R2よりも大きく、且つ第1密度基準値R1以下の検証エリアA1では、外側補助区画32を加味したパターン密度D2に基づく判定を行う(ステップS21)。そして、パターン密度D2が第1密度基準値R1以下の場合、その検証エリアA1とその周囲八方の検証エリアA1との間(検証ステップ間)で設計規則を違反することはなく、パターン密度D2が第1密度基準値R1よりも大きい場合、その検証エリアA1とその周囲八方の検証エリアA1との間(検証ステップ間)では設計規則を違反する虞がある。このように、マクロセル21単体の密度検証の段階において、各検証エリアA1の検証ステップ間で設計規則を違反する虞がある箇所を発見することができるため、チップ22全体の密度検証においてマクロセル21部分で設計規則を違反することがないようにパターンを設計することが可能となる。
【0049】
また、本実施形態のパターン密度検証方法では、パターン密度D2が第1密度基準値R1よりも大きい場合、その検証エリアA1とその外側補助区画32を合わせた領域を検証領域T2とし、検証ステップ値V1よりも小さい検証ステップ値V2で密度検証を行う(ステップ22〜ステップ27)。これにより、検証エリアA1の検証ステップ間で設計規則を違反する詳細な位置を発見することが可能となる。
【0050】
以上記述したように、本実施形態によれば、以下の効果を奏する。
(1)CPU12は、検証エリアA1の内側と外側に内側補助区画31と外側補助区画32とをそれぞれ設定し、内側補助区画31内のパターン占有面積と外側補助区画32内のパターン占有面積とに基づき算出された検証エリアA1のパターン密度D2が密度基準を満たすか否かを検証する。従って、周囲八方の検証エリアA1との間(検証ステップ間)で設計規則を違反する虞がある検証エリアA1を発見することができるため、チップ22全体の密度検証においてマクロセル21部分での設計規則違反の判定を出さないようにすることが可能となる。
【0051】
(2)CPU12は、内側補助区画31内のパターン占有面積に外側補助区画32内のパターン占有面積を加味した検証エリアA1のパターン密度D2が密度基準を満たすか否かを検証するため、検証ステップ間で設計規則を違反する虞がある検証エリアA1を発見することができる。
【0052】
(3)CPU12は、内側補助区画31及び外側補助区画32をそれぞれ検証エリアA1の辺に沿って複数設定し、各内側補助区画31内のパターン占有面積にそれぞれ対応する外側補助区画32内のパターン占有面積を加味するため、検証エリアA1が検証ステップ間で設計規則を違反するか否かの判定の精度を向上させることが可能となる。
【0053】
(4)CPU12は、外側補助区画32内のパターン占有面積を内側補助区画31内のパターン占有面積に加味する際に、それらを足し合わせた面積が内側補助区画31の面積よりも大きい場合には、その内側補助区画31の面積を、外側補助区画32内のパターン占有面積を加味した内側補助区画31内のパターン占有面積とする。このため、検証エリアA1が検証ステップ間で設計規則を違反するか否かの判定の精度を向上させることが可能となる。
【0054】
(5)CPU12は、検証エリアA1内に含まれるパターン密度D1が密度基準を満たすか否かを検証し、そのパターン密度D1が密度基準を満たす場合、内側補助区画31と外側補助区画32のパターン占有面積に基づき算出された検証エリアA1のパターン密度D2に基づく検証を行い、検証エリアA1内に含まれるパターン密度D1が密度基準を満たさない場合には、内側補助区画31と外側補助区画32のパターン占有面積に基づき算出された検証エリアA1のパターン密度D2に基づく検証を行わない。これにより、パターン密度D2に基づく検証を行う必要がない検証エリアA1においてそのパターン密度D2に基づく検証を行わずに済むため、設計時間を短縮することが可能となる。
【0055】
(6)CPU12は、検証エリアA1をX軸方向及びY軸方向にそれぞれ検証ステップ値V1だけずらしたときに見込まれる検証エリアA1内に含まれるパターン密度の最大変化量と密度基準とに基づく閾値(第2密度基準値R2)を算出し、検証エリアA1の位置を検証ステップ値V1で順次変更し、それぞれの位置で検証エリアA1内に含まれるパターン密度D1と第2密度基準値R2とを比較し、その比較結果に応じて、内側補助区画31と外側補助区画32のパターン占有面積に基づき算出された検証エリアA1のパターン密度D2に基づく検証を行う。これにより、パターン密度D2に基づく検証を行う必要がない検証エリアA1においてそのパターン密度D2に基づく検証を行わずに済むため、設計時間を短縮することが可能となる。
【0056】
(7)CPU12は、内側補助区画31と外側補助区画32のパターン占有面積に基づき算出された検証エリアA1のパターン密度D2が密度基準を満たさない場合、検証エリアA1と各外側補助区画32を合わせた検証領域T2内において検証エリアA2を検証ステップ値V2で順次変更し、それぞれの位置で検証エリアA2内に含まれるパターン密度D1が密度基準を満たすか否かを判定する。これにより、検証エリアA2の検証ステップ間で設計規則を違反する詳細な位置を発見することが可能となる。
【0057】
(第二実施形態)
以下、第二実施形態を図11〜図19に従って説明する。なお、先の図1〜図10に示した部材と同一の部材にはそれぞれ同一の符号を付し、それら各要素についてはその説明を省略する。
【0058】
CPU12は、図11及び図12に示すフローチャートに従って、マクロセル21のパターン密度検証を行う。まず、CPU12は、ステップS31からステップS38までの処理を、第一実施形態のステップS1からステップS18までの処理と同様に行う。
【0059】
次に、CPU12は、ステップS39において、対象の検証エリアA1に対し、内側補助区画31と外側補助区画32を設定する。図13に示すように、CPU12は、検証エリアA1の辺に沿って、検証エリアA1の内側に複数の内側補助区画31を設定し、検証エリアA1の外側に複数の外側補助区画32を設定する。
【0060】
具体的には、図14(a)〜(d)に示すように、第一実施形態と同様に、CPU12は、検証エリアA1の角部分に内側補助区画31a及び外側補助区画32a,32bを設定する。そして、図14(e)(f)に示すように、CPU12は、角部分の内側補助区画31a間に内側補助区画31cを設定する。同様に、CPU12は、角部分の外側補助区画32b間に外側補助区画32dを設定する。図14では、内側補助区画31c及び外側補助区画32dは、長手方向の一辺の長さが検証ステップV1の2倍、短手方向の1辺の長さが検証ステップV1と等しい長方形である。
【0061】
各内側補助区画31は、所定の外側補助区画32と対応している。詳述すると、図14(a)〜(d)に示すように、検証エリアA1の角部分に位置する各内側補助区画31aは、3つの外側補助区画32a,32bと対応している。そして、図14(e)(f)に示すように、角部分の内側補助区画31a間に位置する内側補助区画31cは、そのX軸方向(又はY軸方向)の対辺部分に位置する外側補助区画32dと対応している。尚、図14(e)(f)には、内側補助区画31cと外側補助区画32dとの各組み合わせを示している。
【0062】
次に、CPU12は、ステップS40において、対象の検証エリアA1に対して設定された内側補助区画31内に形成されるパターンに、対応する外側補助区画32内に形成されるパターンを図形演算する。CPU12は、この図形演算処理により、外側補助区画32を加味した内側補助区画31のパターン占有面積を算出する。例えば、本実施形態では、CPU12は、図形演算として論理和(OR)処理を行う。
【0063】
詳述すると、CPU12は、内側補助区画31内に形成されるパターンに、対応する外側補助区画32内に形成されるパターンを図形演算する。CPU12は、図形演算したパターンの面積を、外側補助区画32を加味した内側補助区画31のパターン占有面積とする。
【0064】
例えば、図15(a),(b)に示すように、内側補助区画31c1(図13参照)内に形成されるパターンPa1に、外側補助区画32d1(図13参照)内に形成されるパターンPa2を図形演算すると、外側補助区画32d1を加味した内側補助区画31c1内のパターンPa3は、図15(c)に示すようなパターンとなる。
【0065】
例えば、内側補助区画31c1及び外側補助区画32d1の長手方向の1辺の長さ(検証ステップ値V1の2倍)が16μm、短手方向の1辺の長さ(検証ステップV1)が8μmとした場合、内側補助区画31c1及び外側補助区画32d1の面積は128μmとなる。図15(a)、(b)から明らかなように、内側補助区画31c1内に形成されるパターンPa1のパターン占有面積は64μm、外側補助区画32d1内に形成されるパターンPa2のパターン占有面積は64μmである。そして、図15(c)から明らかなように、外側補助区画32d1を加味した内側補助区画31c1のパターン面積は128μmとなる。
【0066】
この場合、外側補助区画32d1を加味した内側補助区画31c1のパターン占有面積(128μm)は、内側補助区画31c1のパターン占有面積の値(64μm)に、対応する外側補助区画32d1のパターン占有面積の値(64μm)を加算した値(128μm)と等しくなる。
【0067】
図13において検証エリアA1が左方向に検証ステップV1ずれた場合、検証エリアA1に含まれる内側補助区画31c1のパターン占有面積と外側補助区画32d1のパターン占有面積を加算した値は、検証ステップV1の半分ずれたときに最大となる。図16は、検証ステップV1の半分ずれた検証エリアA1(便宜上、検証エリアA1aとする)を示している。
【0068】
図16から明からなように、この最大となる検証エリアA1aに含まれる内側補助区画31c1のパターン占有面積と外側補助区画32d1のパターン占有面積を加算した値は、128μmである。この加算値と、上記のように外側補助区画32d1を加味した内側補助区画31c1のパターン占有面積は等しい。
【0069】
従って、外側補助区画32d1を加味した内側補助区画31c1のパターン占有面積は、検証エリアA1が図13において左方向に検証ステップV1以内ずれたときの、検証エリアA1に含まれる内側補助区画31c1のパターン占有面積と外側補助区画32d1のパターン占有面積を加算した値の最大値となる。すなわち、外側補助区画32d1を加味した内側補助区画31c1のパターン占有面積は、図13において検証エリアA1が左方向に検証ステップV1以内にずれた場合におけるパターン占有面積を考慮した値になっている。
【0070】
また、図17(a)、(b)に示すように、内側補助区画31c2(図13参照)内に形成されるパターンPa4に、外側補助区画32d2内に形成されるパターンPa5を図形演算すると、外側補助区画32d2を加味した内側補助区画31c2内のパターンPa6は、図17(c)に示すようなパターンとなる。
【0071】
図17(a)、(b)から明らかなように、内側補助区画31c2内に形成されるパターンPa4のパターン占有面積は64μm、外側補助区画32d2内に形成されるパターンPa5のパターン占有面積は64μmである。そして、図17(c)から明らかなように、外側補助区画32d2を加味した内側補助区画31c2内に形成されるパターンPa6のパターン占有面積は64μmとなる。
【0072】
この場合、外側補助区画32d2を加味した内側補助区画31c2のパターン占有面積(64μm)を、内側補助区画31c2のパターン占有面積(64μm)に、対応する外側補助区画32d2のパターン占有面積(64μm)を加算することにより算出すると、その算出値が128μmとなる。これは、内側補助区画31c2内のパターンPa4に、対応する外側補助区画32d2のパターンPa5を図形演算する際、内側補助区画31c2内に形成されるパターンPa4と外側補助区画32d2内に形成されるパターンPa5が重なるためである。
【0073】
このような場合、検証エリアA1がずれても、検証エリアA1内のパターン占有面積は変わらない。つまり、内側補助区画31と外側補助区画32の重なり合う部分のパターン占有面積は、一方の区画のみを考慮すれば良いことになる。従って、図17の場合、一方の区画のパターン占有面積(64μm)を考慮すればよい。
【0074】
つまり、実際に内側補助区画31c2内に形成されるパターンPa4と外側補助区画32d2内に形成されるパターンPa5を図形演算すると、パターンPa4とパターンPa5が重なる部分のパターン占有面積を内側補助区画31c2のパターン占有面積に加算しない。その結果、内側補助区画31c2及び外側補助区画32d2のパターン占有面積を加算する場合と比べて、外側補助区画32d2を加味した内側補助区画31c2のパターン占有面積をより精度良く算出することができるからである。そのため、パターンが重なる部分がある場合、いずれか一方のパターン占有面積からその重なる部分の面積を減算し、その減算後のパターン占有面積と他方のパターン占有面積を加算したことになる。
【0075】
図13において検証エリアA1を右方向に検証ステップV1ずらしたとき、検証エリアA1に含まれる内側補助区画31c2のパターン占有面積と外側補助区画32d2のパターン占有面積を加算した値は、図13において検証エリアA1が右方向に検証ステップV1の半分ずらしたときに最大となる。
【0076】
図18は、図13において右方向に検証ステップV1の半分ずらした検証エリアA1(便宜上、検証エリアA1bとする)を示している。図18から明からなように、この最大となる検証エリアA1bに含まれる内側補助区画31c2のパターン占有面積と外側補助区画32d2のパターン占有面積を加算した値は、64μmである。この加算値と、上記のように外側補助区画32d2を加味した内側補助区画31c2のパターン占有面積は等しい。
【0077】
従って、外側補助区画32d2を加味した内側補助区画31c2のパターン占有面積は、図13において検証エリアA1が右方向に検証ステップV1以内ずれたときの、検証エリアA1bに含まれる内側補助区画31c2のパターン占有面積と外側補助区画32d2のパターン占有面積を加算した値の最大値となる。すなわち、外側補助区画32d2を加味した内側補助区画31c2のパターン占有面積は、検証エリアA1が図13において右方向に検証ステップV1以内ずれた場合におけるパターン占有面積を考慮した値になっている。
【0078】
そして、CPU12は、面積テーブルC1における各内側補助区画31のパターン占有面積の値を、外側補助区画32を加味した内側補助区画31のパターン占有面積の値に更新する。その後、CPU12は、各内側補助区画31のパターン占有面積を更新した面積テーブルC1に基づいて検証エリアA1のパターン密度D2を算出する。
【0079】
図19は、図13に示すように各補助区画31,32内にパターンPa7が形成されている場合の外側補助区画32を加味した内側補助区画31内に形成されるパターンPa8を示している。そして、図20は、図19に示すように外側補助区画32を加味した内側補助区画31内にパターンPa8が形成されている場合の外側補助区画32を加味した内側補助区画31のパターン占有面積を示している。
【0080】
尚、図20において、外側補助区画32を加味した内側補助区画31のパターン占有面積の値を各検証ステップ区画23内に示している。また、検証エリアA1の辺が検証領域T1の辺と重なる(検証エリアA1が検証領域T1の端に位置する)場合には、その検証エリアA1の外側補助区画32の一部が検証領域T1の外側に設定されるが、その検証領域T1外に設定された外側補助区画32にはパターンが無いこととする。
【0081】
すなわち、ステップS40において、CPU12は、内側補助区画31内に形成されるパターンに、対応する外側補助区画32内に形成されるパターンを図形演算することにより、上記のように外側補助区画32を加味した内側補助区画31のパターン占有面積をより精度良く算出することができる。
【0082】
従って、CPU12は、検証エリアA1内における対応する外側補助区画32内のパターンと図形演算すると自身のパターンと重なる内側補助区画31の数が多いほど、検証エリアA1のパターン密度D2をより精度良く算出することができる。このため、CPU12は、検証エリアA1がずれた場合の値により近いパターン密度D2を算出することができる。この結果、設計規則違反の判定を過剰に出さないようにすることが可能となり、検証エリアA1のパターン密度検証を再度行う箇所が減少する。
【0083】
尚、CPU12は、ステップS41からステップS47までの処理を、第一実施形態のステップS21からステップS27までの処理と同様に行う。
以上記述したように、本実施形態によれば、以下の効果を奏する。
【0084】
(1)CPU12は、内側補助区画31内のパターンに、対応する外側補助区画32内に形成されるパターンを図形演算して、外側補助区画32を加味した内側補助区画31内に形成されるパターンを形成する。そして、CPU12は、その外側補助区画32を加味した内側補助区画31内のパターンに基づいて、外側補助区画32を加味した内側補助区画31のパターン占有面積を算出するようにした。
【0085】
従って、内側補助区画31内のパターンに、対応する外側補助区画32内のパターンを図形演算するとそれらパターンが重なる場合、外側補助区画32を加味した内側補助区画31のパターン占有面積をより精度良く算出することができる。
【0086】
(2)CPU12は、検証エリアA1がずれた場合の値に近いパターン密度D2を算出できるため、設計規則違反の判定を過剰に出さないようにすることが可能となる。従って、検証エリアA1のパターン密度検証を再度行う箇所が減少するため、検証時間を短縮することができる。
【0087】
(第三実施形態)
以下、第三実施形態を図21〜25に従って説明する。なお、先の図1〜図20に示した部材と同一の部材にはそれぞれ同一の符号を付し、それら各要素についてはその説明を省略する。
【0088】
CPU12は、第二実施形態と同様に、マクロセル21のパターン密度検証を行う。尚、本実施形態では、図11,図12のステップS31〜S38,S41〜S47の処理と同じ部分について図面を省略し、図12に示すステップS39及びステップS40に対応する処理を、図21に示すステップS39a及びステップS40aの処理として説明する。
【0089】
CPU12は、ステップS39aにおいて、第一実施形態と同様に、対象の検証エリアA1に対し、内側補助区画31と外側補助区画32を設定する。CPU12は、設定した内側補助区画31を所定数の分割内側区画I1〜I16に分割する。同様に、CPU12は、外側補助区画32を所定数の分割外側区画O1〜O16に分割する。ここで、所定数は、内側補助区画31と外側補助区画32を分割内側区画I1〜I16及び分割外側区画O1〜O16に分割することで、分割内側区画I1〜I16及び分割外側区画O1〜O16の一辺が、パターンの最小幅又はパターン同士の最小間隔に応じた長さ付近となる数である。
【0090】
本実施形態では、内側補助区画31は、1辺がパターンの最小幅の半分である正方形の分割内側区画I1〜I16に分割される。同様に、外側補助区画32は、1辺がパターンの最小幅の半分である正方形の分割外側区画O1〜O16に分割される。本実施形態では、パターンの最小幅は4μmである。
【0091】
従って、図22に示すように、内側補助区画31は、1辺がパターンの最小幅の半分(2μm)であるため、16個の分割内側区画I1〜I16に分割される。同様に、外側補助区画32は、16個の分割外側区画O1〜O16に分割される。
【0092】
そして、CPU12は、マクロセル21のレイアウトデータLに基づいて各内側補助区画31の分割内側区画I1〜I16と、各外側補助区画32の分割外側区画O1〜O16のパターン占有面積を算出する。そして、CPU12は、ステップS34で面積テーブルC1に記憶した内側補助区画31及び外側補助区画32のパターン占有面積の値を、対応する分割内側区画I1〜I16と分割外側区画O1〜O16のパターン占有面積の値に更新する。
【0093】
各内側補助区画31は、第一実施形態と同様に、所定の外側補助区画32とそれぞれ対応している。各内側補助区画31の分割内側区画I1〜I16は、自身の内側補助区画31に対応する外側補助区画32の分割外側区画O1〜O16とそれぞれ対応している。詳しくは、図22に示すように、各内側補助区画31dを分割した分割内側区画I1〜I16が、対応する外側補助区画32dを分割した分割外側区画O1〜O16とそれぞれ対応している。
【0094】
具体的には、内側補助区画31dの左上の角部分に位置する分割内側区画I1が、外側補助区画32dの左上の角部分に位置する分割外側区画O1と対応している。その分割内側区画I1の右隣に位置する分割内側区画I2が、分割外側区画O1の右隣に位置する分割外側区画O2と対応している。また、分割内側区画I2の右隣に位置する分割内側区画I3が、分割外側区画O2の右隣に位置する分割外側区画O3と対応している。そして、内側補助区画31dの右下の角部分に位置する分割内側区画I16が、外側補助区画32dの右下の角部分に位置する分割外側区画O16と対応している。
【0095】
次に、ステップS40aにおいて、CPU12は、分割外側区画O1〜O16を加味したパターン密度D2を算出する。まず、CPU12は、分割内側区画I1〜I16内に形成されるパターンのパターン占有面積の値に、対応する分割外側区画O1〜O16内に形成されるパターンのパターン占有面積の値を加算する。次に、その加算値と分割内側区画I1〜I16の面積(4μm)とを比較し、そのうちの小さい方の値をその分割内側区画I1〜I16のパターン占有面積とする。
【0096】
つまり、この分割外側区画O1〜O16に基づく分割内側区画I1〜I16内に形成されるパターンのパターン占有面積は、分割内側区画I1〜I16に、対応する分割外側区画O1〜O16内に形成されるパターンのパターン占有面積を全て加算したときに、その分割内側区画I1〜I16が取り得る最大のパターン占有面積である。
【0097】
本実施形態では、分割内側区画I1〜I16の1辺の長さが2μmの場合、分割内側区画I1〜I16の面積は4μmである。そして、分割内側区画I1〜I16のパターン占有面積と、対応する分割外側区画O1〜O16のパターン占有面積との加算値が分割内側区画I1〜I16の面積(4μm)よりも大きいときは、その分割内側区画I1〜I16の面積(4μm)を、分割外側区画O1〜O16を加味した分割内側区画I1〜I16のパターン占有面積とする。反対に、加算値が分割内側区画I1〜I16の面積(4μm)以下のときは、その加算値を、分割外側区画O1〜O16を加味した分割内側区画I1〜I16のパターン占有面積とする。
【0098】
CPU12は、上記の分割外側区画O1〜O16を加味した分割内側区画I1〜I16のパターン占有面積を、外側補助区画32を加味した内側補助区画31のパターン占有面積を算出する場合と比べて、より精度良く算出することができる。
【0099】
図23(a)、(b)に示すように、内側補助区画31内にパターンPa10が、外側補助区画32内にパターンPa11が配置される場合に、CPU12が分割外側区画O1〜O16を加味した分割内側区画I1〜I16のパターン占有面積を算出する処理を説明する。CPU12は、分割内側区画I1〜I16のパターン占有面積に、対応する分割外側区画O1〜O16のパターン占有面積を加算して、分割外側区画O1〜O16を加味した分割内側区画I1〜I16のパターン占有面積を算出する。
【0100】
詳述すると、図23(a)、(b)に示すような内側補助区画31及び外側補助区画32の場合の分割内側区画I1〜I16内に形成されるパターンPa10のパターン占有面積、及び、分割外側区画O1〜O16内に形成されるパターンPa11のパターン占有面積を図24(a)、(b)に示す。
【0101】
図24(a)、(b)において、分割内側区画I1〜I16のパターン占有面積の値と、分割外側区画O1〜O16のパターン占有面積の値を、分割内側区画I1〜I16内及び分割外側区画O1〜O16内にそれぞれ示している。図24(c)に、算出した分割外側区画O1〜O16を加味した分割内側区画I1〜I16のパターン占有面積を示す。
【0102】
図24(c)において、分割外側区画O1〜O16を加味した分割内側区画I1〜I16のパターン占有面積の値を、分割内側区画I1〜I16内に示している。従って、外側補助区画32を加味した内側補助区画31のパターン占有面積は、分割内側区画I1〜I16のパターン占有面積を全て加算した値のため、その値は48μmである。図23(c)から明らかなように、内側補助区画31の面積が64μmであるため、外側補助区画32を加味した内側補助区画31のパターン占有面積の値は48μmである。
【0103】
従って、外側補助区画32を加味した内側補助区画31のパターン占有面積の値は、実際に、内側補助区画31内に形成されるパターンPa10に、対応する外側補助区画32内に形成されるパターンPa11を加算した値(48μm)と等しい。すなわち、図23(a)、(b)に示すような内側補助区画31及び外側補助区画32の場合、CPU12は、分割外側区画O1〜O16を加味した分割内側区画I1〜I16のパターン占有面積を精度良く算出することができる。
【0104】
これは、図23(a)、(b)に示すような内側補助区画31及び外側補助区画32の場合、分割内側区画I1〜I16又は分割外側区画O1〜O16内のパターン密度が0%又は100%のいずれかであり、CPU12が分割内側区画I1〜I16又は分割外側区画O1〜O16のパターン占有面積を精度良く算出することができるためである。
【0105】
詳しくは、分割内側区画I1内のパターン密度が0%の場合(分割内側区画I1にパターンが無い場合)、分割内側区画I1のパターン占有面積に、対応する分割外側区画O1のパターン占有面積を加算すると、分割外側区画O1のパターン占有面積が、分割外側区画O1を加味した分割内側区画I1のパターン占有面積となる。
【0106】
すなわち、分割内側区画I1内にパターンが無いため、分割外側区画O1のパターンのみが、分割外側区画O1を加味した分割内側区画I1内に形成される。従って、分割内側区画I1〜I16又は分割外側区画O1〜O16のパターン密度が0%の場合、分割外側区画O1〜O16を加味した分割内側区画I1〜I16のパターン占有面積をより精度良く算出することができる。
【0107】
一方、分割内側区画I1のパターン密度が100%の場合(分割内側区画I1内の全ての領域にパターンが形成されている場合)、分割内側区画I1のパターン占有面積に、対応する分割外側区画O1のパターン占有面積を加算すると、分割内側区画I1のパターン占有面積が、分割外側区画O1を加味した分割内側区画I1のパターン占有面積となる。
【0108】
換言すると、分割内側区画I1の全ての領域にパターンが形成されているため、どの様な分割外側区画O1内に形成されるパターンと図形演算されても、分割外側区画O1を加味した分割内側区画I1内に形成されるパターンは、分割内側区画I1内に形成されるパターンから変更されない。従って、分割内側区画I1〜I16又は分割外側区画O1〜O16のパターン密度が100%の場合、CPU12は、分割外側区画O1〜O16を加味した分割内側区画I1〜I16のパターン占有面積をより精度良く算出することができる。
【0109】
反対に、分割内側区画I1〜I16又は分割外側区画O1〜O16のパターン密度が0%又は100%ではない場合であって、内側補助区画31内のパターンに、外側補助区画32内のパターンを図形演算するとそれらパターンが重なってしまうとき、対応する分割外側区画O1〜O16を加味した分割内側区画I1〜I16のパターン占有面積を精度良く算出することができずに実際の値よりも算出値が大きくなってしまう。
【0110】
このため、分割内側区画I1〜I16又は分割外側区画O1〜O16のパターン密度が0%又は100%ではない場合、上記のように、対応する分割外側区画O1〜O16を加味した分割内側区画I1〜I16のパターン占有面積を精度良く算出することができずに実際の値よりも算出値が大きくなってしまう可能性がある。
【0111】
このような補助区画は、面積が小さいほど、パターン密度が0%又は100%となる区画の割合が多くなる。補助区画の1辺の長さをパターン編集可能な最小単位まで短くすると、検証エリアA1における全ての補助区画のパターン密度が0%又は100%になる。つまり、補助区画は、パターン編集可能な最小単位まで1辺の長さを短くするほど、補助区画のパターン密度が0%又は100%になる確率が高くなる。しかし、補助区画の面積が小さいほど、検証エリアA1の補助区画の数が増加するため、CPU12の負荷が増大する。
【0112】
例えば、分割内側区画I1〜I16及び分割外側区画O1〜O16の1辺の長さは、本実施形態のように最小幅又は最小間隔の半分が好ましい。分割内側区画I1〜I16及び分割外側区画O1〜O16は、最小間隔で最小幅のパターンが配置される条件が0%又は100%のパターン密度に最もなりにくい。図25は、この0%又は100%のパターン密度に最もなりにくい条件で分割内側区画I1〜I16に配置されているパターンPa13,Pa14を示している。図25において、パターン密度が0%又は100%の分割内側区画I1〜I16内に右下がり斜線を引いて示している。この場合、図25から明らかなように、パターン密度が0%又は100%の分割内側区画I1〜I16は、全体の50%となる。
【0113】
分割内側区画I1〜I16及び分割外側区画O1〜O16は、内側補助区画31及び外側補助区画32よりも面積が小さいため、パターン密度が0%又は100%になりやすい。内側補助区画31又は外側補助区画32のパターン密度が0%又は100%ではない場合であって、分割内側区画I1〜I16又は分割外側区画O1〜O16のパターン密度が0%又は100%のとき、CPU12は、分割外側区画O1〜O16を加味した分割内側区画I1〜I16のパターン占有面積を、外側補助区画32を加味した内側補助区画31のパターン占有面積より、精度良く算出することができる。
【0114】
従って、CPU12は、分割外側区画O1〜O16を加味した分割内側区画I1〜I16のパターン占有面積を算出する方が、外側補助区画32を加味した内側補助区画31のパターン占有面積を算出するより、同じ面積の領域のパターン占有面積を算出する場合に精度良く算出することができる。
【0115】
図23(a)、(b)に示すような内側補助区画31及び外側補助区画32の場合、CPU12は、外側補助区画32を加味した内側補助区画31のパターン占有面積のパターン占有面積を、分割外側区画O1〜O16を加味した分割内側区画I1〜I16のパターン占有面積に基づいて算出する方が、外側補助区画32を加味した内側補助区画31のパターン占有面積を算出するより、精度良く算出することができる。この場合、パターン占有面積の算出値は16μm小さくなる。
【0116】
そして、CPU12は、面積テーブルC1における各分割内側区画I1〜I16のパターン占有面積の値を、分割外側区画O1〜O16を加味した分割内側区画I1〜I16のパターン占有面積の値に更新する。CPU12は、各分割内側区画I1〜I16のパターン占有面積を更新した面積テーブルC1に基づいて検証エリアA1のパターン密度D2を算出する。このとき、検証エリアA1において、パターン密度が0%又は100%の分割内側区画I1〜I16及び分割外側区画O1〜O16の総面積は、パターン密度が0%又は100%の内側補助区画31及び外側補助区画32の総面積より大きい。
【0117】
従って、CPU12は、検証エリアA1のパターン占有面積を、分割外側区画O1〜O16を加味した分割内側区画I1〜I16のパターン占有面積に基づいて算出する方が、外側補助区画32を加味した内側補助区画31のパターン占有面積に基づいて算出するより、精度良く算出できる。このため、CPU12は、検証エリアA1がずれた場合の値により近いパターン密度D2を算出することができる。この結果、設計規則違反の判定を過剰に出さないようにすることが可能となり、検証エリアA1のパターン密度検証を再度行う箇所が減少する。
【0118】
以上記述したように、本実施形態によれば、以下の効果を奏する。
(1)CPU12は、内側補助区画31及び外側補助区画32を分割内側区画I1〜I16及び分割外側区画O1〜O16にそれぞれ分割する。そして、CPU12は、分割内側区画I1〜I16に、対応する分割外側区画O1〜O16を図形演算することで、分割外側区画O1〜O16を加味した分割内側区画I1〜I16のパターン占有面積を算出するようにした。
【0119】
CPU12は、内側補助区画31又は外側補助区画32のパターン密度が0%又は100%の場合、外側補助区画32を加味した内側補助区画31を精度良く算出することができる。また、CPU12は、分割内側区画I1〜I16又は分割外側区画O1〜O16のパターン密度が0%又は100%の場合、分割外側区画O1〜O16を加味した分割内側区画I1〜I16を精度良く算出することができる。
【0120】
分割内側区画I1〜I16及び分割外側区画O1〜O16は、面積が小さいため、内側補助区画31及び外側補助区画32より、パターン密度が0%又は100%になりやすい。このため、検証エリアA1において、パターン密度が0%又は100%の分割内側区画I1〜I16及び分割外側区画O1〜O16の総面積は、パターン密度が0%又は100%の内側補助区画31及び外側補助区画32の総面積より大きい。
【0121】
従って、CPU12は、検証エリアA1のパターン占有面積を、分割外側区画O1〜O16を加味した分割内側区画I1〜I16のパターン占有面積に基づいて算出する方が、外側補助区画32を加味した内側補助区画31のパターン占有面積に基づいて算出するより、精度良く算出できる。
【0122】
(2)CPU12は、検証エリアA1がずれた場合の値に近いパターン密度D2を算出できるため、設計規則違反の判定を過剰に出さないようにすることが可能となる。従って、検証エリアA1のパターン密度検証を再度行う箇所が減少するため、検証時間を短縮することができる。
【0123】
尚、上記各実施の形態は、以下の態様で実施してもよい。
・内側補助区画31と外側補助区画32の組み合わせは、上記実施形態の組み合わせに限定されるものではなく、適宜変更してもよい。
【0124】
・上記実施形態では、内側補助区画31及び外側補助区画32はそれぞれ複数設定されたが、特にこれに限定されるものではなく、それぞれ単数としてもよい。
・上記実施形態では、内側補助区画31及び外側補助区画32は検証エリアA1の全周に亘って設定されたが、特にこれに限定されるものではなく、例えば、X軸方向の一辺及びY軸方向の一辺のみに沿って設定してもよい。
【0125】
・上記実施形態では、内側補助区画31及び外側補助区画32に基づく密度検証を、上限側の密度検証に用いたが、下限側の密度検証に用いてもよく、また、その上限側及び下限側の密度検証を両方行ってもよい。尚、下限側の密度検証の場合、第1密度基準値R1とパターン密度の最大変化量を足し合わせた値を第2密度基準値R2とする。
【0126】
・上記実施形態の密度検証処理において、第2密度基準値R2に基づく密度検証(ステップS11及びステップS16)を省いてもよい。
・上記実施形態において、パターン密度D1と第2密度基準値R2とを比較する処理を行うステップS16と、パターン密度D1と第1密度基準値R1とを比較する処理を行うステップS17の順序を入れ替えてもよい。
【0127】
上記各実施形態に関し、以下の付記を開示する。
(付記1)
半導体装置に形成するパターンのレイアウトデータを生成する設計装置の中央処理装置にて実行されるパターン密度検証方法であって、
前記中央処理装置は、検証エリアの内側と外側に内側補助区画と外側補助区画とをそれぞれ設定し、前記内側補助区画内のパターン占有面積と前記外側補助区画内のパターン占有面積とに基づき算出された前記検証エリアのパターン密度が所定の密度基準を満たすか否かを検証する、
ことを特徴とするパターン密度検証方法。(1)
(付記2)
前記中央処理装置は、前記内側補助区画内のパターン占有面積に前記外側補助区画内のパターン占有面積を加味した上で、前記検証エリアのパターン密度を算出する、
ことを特徴とする付記1記載のパターン密度検証方法。(2)
(付記3)
前記中央処理装置は、前記内側補助区画内に形成されるパターンと前記外側補助区画内に形成されるパターンを図形演算し、その演算結果に基づいて前記検証エリアのパターン密度を算出する、
ことを特徴とする付記1記載のパターン密度検証方法。(3)
(付記4)
前記中央処理装置は、前記内側補助区画及び前記外側補助区画をそれぞれ前記検証エリアの辺に沿って複数設定し、前記各内側補助区画内のパターン占有面積にそれぞれ対応する前記外側補助区画内のパターン占有面積を加味する、
ことを特徴とする付記2又は3記載のパターン密度検証方法。(4)
(付記5)
前記中央処理装置は、前記内側補助区画及び前記外側補助区画を複数の分割内側区画及び分割外側区画に分割し、前記分割内側区画のパターン占有面積にそれぞれ対応する前記分割外側区画のパターン占有面積を加味した上で、前記検証エリアのパターン密度を算出する、
ことを特徴とする付記4記載のパターン密度検証方法。(5)
(付記6)
前記中央処理装置は、前記内側補助区画及び前記外側補助区画の大きさを、パターンの幅又はパターンの間隔に応じて設定することを特徴とする付記5記載のパターン密度検証方法。
(付記7)
前記中央処理装置は、前記外側補助区画内のパターン占有面積を前記内側補助区画内のパターン占有面積に加味する際に、それらを足し合わせた面積が前記内側補助区画の面積よりも大きい場合には、その内側補助区画の面積を、前記外側補助区画内のパターン占有面積を加味した前記内側補助区画内のパターン占有面積とする、
ことを特徴とする付記2〜6のうち何れか一項に記載のパターン密度検証方法。
(付記8)
前記中央処理装置は、前記検証エリア内に含まれるパターン密度が前記密度基準を満たすか否かを検証し、
そのパターン密度が前記密度基準を満たす場合、前記内側補助区画と前記外側補助区画のパターン占有面積に基づき算出された前記検証エリアのパターン密度に基づく検証を行い、
前記検証エリア内に含まれるパターン密度が前記密度基準を満たさない場合には、前記内側補助区画と前記外側補助区画のパターン占有面積に基づき算出された前記検証エリアのパターン密度に基づく検証を行わない、
ことを特徴とする付記1〜7のうちの何れか一項に記載のパターン密度検証方法。
(付記9)
前記中央処理装置は、前記検証エリアをX軸方向及びY軸方向にそれぞれ検証ステップ値だけずらしたときに見込まれる前記検証エリア内に含まれるパターン密度の最大変化量と前記密度基準とに基づく閾値を算出し、
前記検証エリアの位置を前記検証ステップ値で順次変更し、それぞれの位置で前記検証エリア内に含まれるパターン密度と前記閾値とを比較し、その比較結果に応じて、前記内側補助区画と前記外側補助区画のパターン占有面積に基づき算出された前記検証エリアのパターン密度に基づく検証を行う、
ことを特徴とする付記1〜8のうちの何れか一項に記載のパターン密度検証方法。
(付記10)
前記中央処理装置は、前記内側補助区画と前記外側補助区画のパターン占有面積に基づき算出された前記検証エリアのパターン密度が前記密度基準を満たさない場合、前記検証エリアと前記各外側補助区画を合わせた検証領域内において前記検証エリアを所定の検証ステップ値で順次変更し、それぞれの位置で前記検証エリア内に含まれるパターン密度が前記密度基準を満たすか否かを判定する、
ことを特徴とする付記1〜9のうちの何れか一項に記載のパターン密度検証方法。
(付記11)
半導体装置に形成するパターンのレイアウトデータを生成するために設計装置の中央処理装置が実行するプログラムであって、
検証エリアの内側と外側に内側補助区画と外側補助区画とをそれぞれ設定するステップと、
前記内側補助区画内のパターン占有面積と前記外側補助区画のパターン占有面積とに基づき算出された前記検証エリアのパターン密度が所定の密度基準を満たすか否かを検証するステップと、
を含む、
ことを特徴とするプログラム。(6)
【符号の説明】
【0128】
11 設計装置
12 中央処理装置(CPU)
31 内側補助区画
32 外側補助区画
A1,A2 検証エリア
D1,D2,D3 パターン密度
I1〜I16 分割内側区画
L レイアウトデータ
O1〜O16 分割外側区画
R1 第1密度基準値
R2 第2密度基準値(閾値)
T1,T2 検証領域
V1,V2 検証ステップ値

【特許請求の範囲】
【請求項1】
半導体装置に形成するパターンのレイアウトデータを生成する設計装置の中央処理装置にて実行されるパターン密度検証方法であって、
前記中央処理装置は、検証エリアの内側と外側に内側補助区画と外側補助区画とをそれぞれ設定し、前記内側補助区画内のパターン占有面積と前記外側補助区画内のパターン占有面積とに基づき算出された前記検証エリアのパターン密度が所定の密度基準を満たすか否かを検証する、
ことを特徴とするパターン密度検証方法。
【請求項2】
前記中央処理装置は、前記内側補助区画内のパターン占有面積に前記外側補助区画内のパターン占有面積を加味した上で、前記検証エリアのパターン密度を算出する、
ことを特徴とする請求項1記載のパターン密度検証方法。
【請求項3】
前記中央処理装置は、前記内側補助区画内に形成されるパターンと前記外側補助区画内に形成されるパターンを図形演算し、その演算結果に基づいて前記検証エリアのパターン密度を算出する、
ことを特徴とする請求項1記載のパターン密度検証方法。
【請求項4】
前記中央処理装置は、前記内側補助区画及び前記外側補助区画をそれぞれ前記検証エリアの辺に沿って複数設定し、前記各内側補助区画内のパターン占有面積にそれぞれ対応する前記外側補助区画内のパターン占有面積を加味する、
ことを特徴とする請求項2又は3記載のパターン密度検証方法。
【請求項5】
前記中央処理装置は、前記内側補助区画及び前記外側補助区画を複数の分割内側区画及び分割外側区画に分割し、前記分割内側区画のパターン占有面積にそれぞれ対応する前記分割外側区画のパターン占有面積を加味した上で、前記検証エリアのパターン密度を算出する、
ことを特徴とする請求項4記載のパターン密度検証方法。
【請求項6】
半導体装置に形成するパターンのレイアウトデータを生成するために設計装置の中央処理装置が実行するプログラムであって、
検証エリアの内側と外側に内側補助区画と外側補助区画とをそれぞれ設定するステップと、
前記内側補助区画内のパターン占有面積と前記外側補助区画のパターン占有面積とに基づき算出された前記検証エリアのパターン密度が所定の密度基準を満たすか否かを検証するステップと、
を含む、
ことを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate


【公開番号】特開2011−70630(P2011−70630A)
【公開日】平成23年4月7日(2011.4.7)
【国際特許分類】
【出願番号】特願2010−62000(P2010−62000)
【出願日】平成22年3月18日(2010.3.18)
【出願人】(308014341)富士通セミコンダクター株式会社 (2,507)
【Fターム(参考)】