(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0010】
以下、実施の形態の検証装置を、図面を参照して詳細に説明する。
<第1の実施の形態>
図1は、第1の実施の形態の検証装置を示す図である。
【0011】
第1の実施の形態の検証装置(コンピュータ)1は、半導体装置の設計データに基づいて形成する基板露光用のマスクパターンを検証する装置である。
この検証装置1は、形成部1aと、判断部1bと、記憶部1cとを有している。なお、形成部1a、および判断部1bは、検証装置1が有するCPU(Central Processing Unit)が備える機能により実現することができる。また、記憶部1cは、検証装置1が有するRAM(Random Access Memory)やハードディスクドライブ(HDD:Hard Disk Drive)等が備えるデータ記憶領域により実現することができる。
【0012】
形成部1aは、マスクパターン2のデザインルールチェックにより、レイアウト設計規則に違反すると判断されたエラー箇所3a、3bに関する情報を図示しない記憶部から受け取る。エラー箇所3aは、マスクパターン2b、2c間の距離が近すぎるためにデザインルールの基準を満たさないと判断された箇所であり、エラー箇所3bは、マスクパターン2d、2e間の距離が近すぎるためにデザインルールの基準を満たさないと判断された箇所である。なお、エラー箇所3a、3bは、空間を示しておりマスクパターンではない。
【0013】
形成部1aは、レイアウト設計規則に違反するエラー箇所3aを含むマスクパターン2b、2cについて評価線7a、7bを形成し、エラー箇所3bを含むマスクパターン2d、2eについて評価線7c、7dを形成する。評価線7a〜7dは、検証対象のエラーか否か(真のエラーか疑似エラーか)を識別する区画線である。これら評価線7a〜7dは、マスクパターン2b〜2eの角部の組み合わせに基づき形成される。角部の組み合わせは、レイアウト設計規則の違反種別(2つのマスクパターン間の距離が近すぎる(間隔違反)、マスクパターンの幅が小さすぎる(線幅違反)等)に応じて特定される。本実施の形態では、レイアウト設計規則の違反種別が、間隔違反の場合について説明する。
【0014】
形成部1aは、エラー箇所3a、3bを含むマスクパターンを含む検証領域4a、4bを設定する。設定した検証領域4a、4bは、真のエラーと疑似エラーの判断対象のマスクパターンを特定する領域である。検証領域4a、4bの設定方法としては、例えば形成部1aがエラー箇所3a、3bの中点を中心とする正方形を形成する。そして、形成部1aは、形成した正方形の内部を検証領域4a、4bに設定する。
【0015】
そして、形成部1aは、設定した検証領域4a、4b内に少なくとも一部を含むマスクパターン2a〜2eの角部に基準点5を設定する。ここで、マスクパターン2aの辺2a1は、検証領域4a、4bをまたいでいる。この場合には形成部1aは、検証領域4aと辺2a1との交点、および検証領域4bと辺2a1との交点に基準点5をそれぞれ設定する。また、マスクパターン2dの辺2d1、2d2は、検証領域4bをまたいでいる。この場合には形成部1aは、検証領域4bと辺2d1、2d2との交点に基準点5を設定する。
【0016】
次に、形成部1aは、設定した基準点5の近傍の空間に評価点6を設定する。なお、評価点6の設定方法については、第2の実施の形態にて詳述する。また、基準点5を設定せず、直接評価点6を設定するようにしてもよい。
【0017】
次に、形成部1aは、作成した評価点6を角部の組み合わせ毎に繋ぐことにより領域を画定する区画を形成する。これにより、検証領域4a内にマスクパターン2bから所定距離だけ離れた位置に、マスクパターン2bを包含する評価線7bが形成される。マスクパターン2cから所定距離だけ離れた位置にマスクパターン2cを囲む評価線7aが形成される。検証領域4b内にマスクパターン2eの検証領域4b内の部分から所定距離だけ離れた位置に、マスクパターン2eの検証領域4b内の部分を包含する評価線7cが形成される。マスクパターン2dの辺2d1の検証領域4b内の部分とマスクパターン2dから所定距離だけ離れた位置にマスクパターン2dの辺2d2の検証領域4b内の部分とマスクパターン2dを囲む評価線7dが形成される。
【0018】
判断部1bは、形成部1aが形成した評価線7a〜7dの干渉の有無を判断する。本実施の形態では、評価線7a、7bは他の領域に干渉しない。他方、評価線7c、7dは、互いに干渉する。
【0019】
判断部1bは、互いに干渉しないと判断した評価線7a、7bの近傍に位置するマスクパターン2b、2cの識別情報は、記憶部1cに記憶せず、互いに干渉すると判断した評価線7c、7dの近傍に位置するマスクパターン2d、2eの識別情報d1を記憶部1cに記憶する。また、判断部1bは、マスクパターン2d、2eの位置関係を図示しないモニタに表示するようにしてもよい。
【0020】
本実施の形態の検証装置1によれば、評価線7a〜7dの干渉の有無を判断し、干渉する場合、真のエラーであると判定し、干渉しない場合、疑似エラーであるものと判定した。そして、真のエラーに係るマスクパターン2d、2eの識別情報d1のみを記憶部1cに記憶するようにした。これにより、出力結果から疑似エラーが排他され、設計者はエラーの確認作業を効率よく行うことができる。
【0021】
なお、本実施の形態では、間隔違反の場合の処理方法を説明した。しかし、評価線を形成し、干渉の有無により疑似エラーと真のエラーを識別する方法は、線幅違反の場合にも適用することができる。
【0022】
以下、第2の実施の形態において、開示の検証装置をより具体的に説明する。
<第2の実施の形態>
図2は、第2の実施の形態の検証装置のハードウェア構成を示す図である。
【0023】
検証装置10は、CPU101によって装置全体が制御されている。CPU101には、バス108を介してRAM102と複数の周辺機器が接続されている。
RAM102は、検証装置10の主記憶装置として使用される。RAM102には、CPU101に実行させるOS(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、RAM102には、CPU101による処理に使用する各種データが格納される。
【0024】
バス108には、ハードディスクドライブ103、グラフィック処理装置104、入力インタフェース105、ドライブ装置106、および通信インタフェース107が接続されている。
【0025】
ハードディスクドライブ103は、内蔵したディスクに対して、磁気的にデータの書き込みおよび読み出しを行う。ハードディスクドライブ103は、検証装置10の二次記憶装置として使用される。ハードディスクドライブ103には、OSのプログラム、アプリケーションプログラム、および各種データが格納される。なお、二次記憶装置としては、フラッシュメモリ等の半導体記憶装置を使用することもできる。
【0026】
グラフィック処理装置104には、モニタ104aが接続されている。グラフィック処理装置104は、CPU101からの命令に従って、画像をモニタ104aの画面に表示させる。モニタ104aとしては、CRT(Cathode Ray Tube)を用いた表示装置や、液晶表示装置等が挙げられる。
【0027】
入力インタフェース105には、キーボード105aとマウス105bとが接続されている。入力インタフェース105は、キーボード105aやマウス105bから送られてくる信号をCPU101に送信する。なお、マウス105bは、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、例えばタッチパネル、タブレット、タッチパッド、トラックボール等が挙げられる。
【0028】
ドライブ装置106は、例えば、光の反射によって読み取り可能なようにデータが記録された光ディスクや、USB(Universal Serial Bus)メモリ等の持ち運び可能な記録媒体に記録されたデータの読み取りを行う。例えば、ドライブ装置106が光学ドライブ装置である場合、レーザ光等を利用して、光ディスク200に記録されたデータの読み取りを行う。光ディスク200には、Blu−ray(登録商標)、DVD(Digital Versatile Disc)、DVD−RAM、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(ReWritable)等が挙げられる。
【0029】
通信インタフェース107は、ネットワーク50に接続されている。通信インタフェース107は、ネットワーク50を介して、他のコンピュータまたは通信機器との間でデータを送受信する。
【0030】
以上のようなハードウェア構成によって、本実施の形態の処理機能を実現することができる。
図2に示すようなハードウェア構成の検証装置10内には、以下のような機能が設けられる。
【0031】
図3は、第2の実施の形態の検証装置の機能を示すブロック図である。
検証装置10は、設計対象データ記憶部11と、OPC処理部12と、DRC検証部13と、エラー検証部14と、評価点ライブラリ記憶部15と、処理ログ記憶部16と、エラー情報記憶部17とを有している。
【0032】
設計対象データ記憶部11には、設計対象の半導体装置に関する設計データが記憶されている。
OPC処理部12は、設計データにおいて、回路パターンの幅や、隣接する回路パターンまでの距離に応じた補正量を規定した補正テーブルを用いて設計対象の半導体装置を製造する際に用いるフォトマスクのマスクパターンを作成する。
【0033】
DRC検証部13は、作成されたマスクパターンにDRC検証を実行し、エラーが発生した箇所を、間隔系エラー、線幅系エラー、その他のエラーに分類して出力する。具体的には、DRC検証部13は、マスクパターンのうち、DRC検証にて2つのマスクパターンの間隔が近過ぎると判断された結果エラーとなった箇所を間隔系エラーに分類する。また、DRC検証部13は、マスクパターンのうち、DRC検証にてマスクパターンの幅が小さすぎると判断された結果エラーとなった箇所を線幅系エラーに分類する。なお、その他のエラーとしては、マスクパターンそのものが何らかの理由により消失してしまったことを示すエラー等が挙げられる。
【0034】
エラー検証部14は、間隔系エラー、線幅系エラーそれぞれに分類されたマスクパターンのエラー箇所について、真のエラーか疑似エラーかを検証する。
エラー検証部14は、間隔系エラー処理部141と、線幅系エラー処理部142とを有している。
【0035】
図4は、間隔系エラー処理部の処理を説明する図である。
図4(a)は、DRC検証部13により間隔系エラーに分類されたマスクパターン21、22、23、24、25を示している。また、マスクパターン22、23間およびマスクパターン24、25間に発生した間隔系エラーのエラー箇所を識別する図形E1、E2を点線で示している。図形E1、E2は、マスクパターンではない。なお、図形の形状は任意である。
【0036】
間隔系エラー処理部141は、
図4(b)に示すように、エラー箇所E1、E2に基づき検証領域A1、A2を設定する。具体的には、間隔系エラー処理部141は、図形E1、E2の中点からピッチ(片側値)の領域を検証領域A1、A2に設定する。この検証領域A1、A2の大きさは、ユーザーが任意で設定可能とする。例えば設計ルールの最小ピッチ×2等、マスクパターンの線幅と間隔を内包する値が望ましい。
【0037】
その後、間隔系エラー処理部141は、
図4(c)に示すように、生成した検証領域A1、A2それぞれの内部に存在するマスクパターン22〜25のコーナー部(角部)に評価線作成用の基準点p1を設定する。
図4(c)では、基準点p1を黒く塗りつぶした点で表記している。基準点p1は検証領域A1、A2内のマスクパターン22のコーナー部に置くことを基本とするが、ユーザーが任意で指定した辺の長さを満たす場合は、直線の辺にも基準点p1を置くことが可能である。例えば、マスクパターン21の辺211は、検証領域A1をまたいでいる。この場合、検証領域A1内にはマスクパターン21のコーナー部が存在しないので、間隔系エラー処理部141は、検証領域A1と辺211の交点に基準点p1を設定する。また、マスクパターン24の辺241、242は、検証領域A2をまたいでいる。この場合、間隔系エラー処理部141は、検証領域A2と辺241、242の交点にそれぞれ基準点p1を設定する。
【0038】
間隔系エラー処理部141は、設定した各基準点p1を基準として基準点p1が設定された形状に対応する評価点を評価点ライブラリ記憶部15に記憶されている評価点ライブラリ151より取得し設定する。
【0039】
図5は、間隔系エラーに対する評価点の設定方法を示す図である。
評価点ライブラリ151は、間隔系エラーに対応するライブラリであり、各基準点p1を基準に発生させる評価線作成用の位置座標を評価点p2とし、デザインルール等により位置座標を設定しライブラリ化したものである。位置座標は、例えばユーザーにて任意設定可能である。例えば基準点p1の座標が(X,Y)のとき、評価点p2の座標は(X+基本値+補正値,Y+基本値+補正値)で決めることができる。基本値は、デザインルール等によりユーザーが決定する。また、基準点p1に対して評価点p2を複数持つことも可能である。なお、設定する評価点の数は、ユーザーが任意に決定することができる。
【0040】
評価点ライブラリ151には、左下OUTコーナー部、右下OUTコーナー部、右上INコーナー部、左上INコーナー部、左単純ライン、右単純ラインの6種類の評価点p2の設定パターンが登録されている。
【0041】
図5(a)は、マスクパターン26aの左下OUTコーナー部、およびマスクパターン26bの右下OUTコーナー部に基準点p1が設定されている例を示している。
間隔系エラー処理部141は、評価点ライブラリ151を参照する。そして、間隔系エラー処理部141は、左下OUTコーナー部、および右下OUTコーナー部に設定された基準点p1を中心とした円弧をマスクパターンの外部に描き、描いた円弧上に評価点p2を設定する。例えば、マスクパターン26aの左下OUTコーナー部に設定した基準点p1の座標を(0,0)とすると、この基準点p1に対応する評価点p2の座標はそれぞれ(0,−1)、(−0.7,−0.7)、(−1,0)とする。また、マスクパターン26bの右下OUTコーナー部に設定された基準点p1の座標を(0,0)とすると、この基準点p1に対応する評価点p2の座標はそれぞれ(0,−1)、(0.7,−0.7)、(1,0)とする。
【0042】
図5(b)は、マスクパターン27aの右上INコーナー部、およびマスクパターン27bの左上INコーナー部に基準点p1が設定されている例を示している。
間隔系エラー処理部141は、評価点ライブラリ151を参照する。そして、間隔系エラー処理部141は、マスクパターン27aの右上INコーナー部に設定された基準点p1から内側の辺271、272に沿って補正値だけ移動させた点から垂線を下ろし、垂線の交わる点に評価点p2を設定する。例えば、基準点p1の座標を(0,0)とすると、この基準点p1に対応する評価点p2の座標は、(−2.7,−2.7)とする。また、間隔系エラー処理部141は、マスクパターン27bの左上INコーナー部に設定された基準点p1から内側の辺273、274に沿って補正値だけ移動させた点から垂線を下ろし、垂線の交わる点に評価点p2を設定する。例えば、基準点p1の座標を(0,0)とすると、この基準点p1に対応する評価点p2の座標は、(2.7,−2.7)とする。
【0043】
図5(c)は、マスクパターン28aの辺281、およびマスクパターン28bの辺282に基準点p1が設定されている例を示している。
間隔系エラー処理部141は、評価点ライブラリ151を参照する。そして、間隔系エラー処理部141は、マスクパターン28aの辺281に設定された基準点p1から左側に所定距離だけ垂線を下ろし評価点p2を設定する。例えば、基準点p1の座標を(0,0)とすると、この基準点p1に対応する評価点p2の座標は、(−2,0)とする。また、間隔系エラー処理部141は、マスクパターン28bの辺282に設定された基準点p1から右側に所定距離だけ垂線を下ろし評価点p2を設定する。例えば、基準点p1の座標を(0,0)とすると、この基準点p1に対応する評価点p2の座標は、(2,0)とする。
【0044】
次に、間隔系エラー処理部141は、設定した各評価点p2を線で繋ぎ、評価線を生成する。
図6は、間隔系エラー時の評価線の生成を説明する図である。
【0045】
図6に示すマスクパターン29の検証領域A3内には、間隔系エラー処理部141が、評価点ライブラリ151に従い設定した複数の基準点p1が設定されている。座標(X
1,Y
1)の基準点p1は、右下OUTコーナー部に設定した基準点の一例であり、座標(X
2,Y
2)の基準点p1は、左下OUTコーナー部に設定した基準点の一例であり、座標(X
3,Y
3)の基準点p1は、右上INコーナー部に設定した基準点の一例であり、座標(X
4,Y
4)の基準点p1は、右単純ラインに設定した基準点の一例である。
【0046】
また、マスクパターン29の検証領域A3内には、間隔系エラー処理部141が、評価点ライブラリ151に従い設定した複数の評価点p2a、p2b、p2c、p2dが設定されている。間隔系エラー処理部141は、評価点p2a、p2b、p2c、p2d間を繋いで評価線B1を生成する。
【0047】
次に、間隔系エラー処理部141は、評価線B1の干渉有無にてDRC検証部13にて検出された間隔系エラーが、真のエラーか擬似エラーかの判定を行う。具体的には、間隔系エラー処理部141は、評価線と干渉する場合は確認必須エラーとし、干渉しない場合は擬似エラーと判定し、確認不要エラーとする。
【0048】
図7は、真のエラーと疑似エラーの判定方法を説明する図である。
図7は、
図4に示すマスクパターンと同じ部分には同じ符号を付している。
検証領域A1には、生成された評価線B2、B3が存在する。間隔系エラー処理部141は、評価線B2と評価線B3の干渉の有無を判定する。評価線B2と評価線B3は干渉しないため、間隔系エラー処理部141は、マスクパターン22、23間に発生した間隔系エラーは疑似エラーであると判定する。
【0049】
また、検証領域A2には、生成された評価線B4、B5が存在する。間隔系エラー処理部141は、評価線B4と評価線B5の干渉の有無を判定する。評価線B4と評価線B5は干渉するため、間隔系エラー処理部141は、評価線B4、B5の形成に関わった(評価線B4、B5の形成の元となった)マスクパターン24、25間に発生した間隔系エラーは真のエラーであると判定する。
【0050】
間隔系エラー処理部141は、真のエラーであると判定したマスクパターン24、25のエラー情報をモニタ104aに表示する。このエラー情報には、干渉部分の座標およびマスクパターン24、25の形状情報が含まれる。また、間隔系エラー処理部141は、マスクパターン24、25のエラー情報をエラー情報記憶部17に記憶する。
【0051】
他方、間隔系エラー処理部141は、疑似エラーであると判定したマスクパターン22、23のエラー情報を処理ログ記憶部16に記憶する。
次に、線幅系エラー処理部142の処理を説明する。
【0052】
図8は、線幅系エラー処理部の処理を説明する図である。
図8(a)は、DRC検証部13により線幅系エラーに分類されたマスクパターン32、およびマスクパターン32の両端部に位置するマスクパターン31、33を示している。
図8(a)にはマスクパターン32に発生した線幅系エラーのエラー箇所を識別する図形E3を点線で示している。なお、図形の形状は任意である。
【0053】
線幅系エラー処理部142は、基準点p3の設定箇所を検索する。検索方法は、まず、
図8(b)に示すように、線幅系エラー処理部142は、エラー箇所からエラーが発生したマスクパターン32の辺に交わるコーナー部32a、32b、32c、32dを検出する。また、線幅系エラー処理部142は、上下コーナー部32a、32c間の距離h1を測定する。その後、線幅系エラー処理部142は、
図8(c)に示すように、検出したコーナー部32a、32b、32c、32dに対し基準点p3を設定する。
【0054】
なお、基準点p3の設定箇所については、コーナー部に置くことが基本である。しかし、エラーが発生したマスクパターンの辺に交わる上下コーナー部間の距離を測定した結果、測定距離が予め設定した距離を超える場合には、エラーが発生したマスクパターンの辺に基準点を発生させることも可能である。
【0055】
図9は、エラーが発生したマスクパターンの辺に基準点を発生させた例を示す図である。
図9は、マスクパターン41、42、43のうち、マスクパターン42に発生した線幅系エラーのエラー箇所を識別する図形E4を点線で示している。線幅系エラー処理部142は、エラーが発生したマスクパターン42の辺に交わる上下コーナー部間の距離h2を測定した結果、測定距離が予め設定した距離を超えているため、マスクパターン42の辺421、422の中点に基準点p3を設定する。
【0056】
なお、基準点p3を1つの辺に複数個発生することも可能とする。基準点p3を発生させる距離や個数についてもユーザーにて任意設定可能である。
線幅系エラー処理部142は、設定した各基準点p3を基準として基準点p3が設定された形状に対応する評価点を評価点ライブラリ記憶部15に記憶されている評価点ライブラリ152より取得し設定する。
【0057】
図10は、線幅系エラーに対する評価点の設定方法を示す図である。
評価点ライブラリ152は、線幅系エラーに対応するライブラリであり、各基準点p3を基準に発生させる評価線生成用の位置座標を評価点p4とし、デザインルール等により位置座標を設定しライブラリ化したものである。位置座標は、例えばユーザーにて任意設定可能である。
【0058】
評価点ライブラリ152には、左上INコーナー部、左下INコーナー部、右上INコーナー部、右下INコーナー部、左単純ライン、右単純ラインの6種類の評価点p4の設定パターンが登録されている。
【0059】
図10(a)に示すマスクパターン31、32、33では、コーナー部32aが左上INコーナー部に該当し、コーナー部32bが右上INコーナー部に該当し、コーナー部32cが左下INコーナー部に該当し、コーナー部32dが右下INコーナー部に該当する。
【0060】
線幅系エラー処理部142は、評価点ライブラリ152を参照する。そして、線幅系エラー処理部142は、左上INコーナー部、左下INコーナー部、右上INコーナー部、右下INコーナー部に設定された基準点p3それぞれを中心とした円弧をマスクパターンの内部に描き、描いた円弧上に評価点p4を設定する。なお、基準点p3と評価点p4を接続する点線は、設定した評価点p4がどの基準点p3に対応するのかを示している。例えば、コーナー部32aに設定した基準点p3の座標を(0,0)とすると、この基準点p3に対応する評価点p4の座標はそれぞれ(0,1)、(0.7,0.7)、(1,0)とする。また、コーナー部32bに設定した基準点p3の座標を(0,0)とすると、この基準点p3に対応する評価点p4の座標はそれぞれ(0,1)、(−0.7,0.7)、(−1,0)とする。また、コーナー部32cに設定した基準点p3の座標を(0,0)とすると、この基準点p3に対応する評価点p4の座標はそれぞれ(0,−1)、(0.7,−0.7)、(1,0)とする。コーナー部32dに設定した基準点p3の座標を(0,0)とすると、この基準点p3に対応する評価点p4の座標はそれぞれ(0,−1)、(−0.7,−0.7)、(−1,0)とする。
【0061】
図10(b)に示すマスクパターン41、42、43では、コーナー部42aが左上INコーナー部に該当し、コーナー部42bが右上INコーナー部に該当し、コーナー部42cが左下INコーナー部に該当し、コーナー部42dが右下INコーナー部に該当する。また、辺421が左単純ラインに該当する。辺422が右単純ラインに該当する。コーナー部42a、42b、42c、42dにそれぞれ設定した基準点p3に対応する評価点p4の設定方法は、コーナー部32a、32b、32c、32dにそれぞれ設定した基準点p3に対応する評価点p4の設定方法と同様である。
【0062】
線幅系エラー処理部142は、評価点ライブラリ152を参照する。そして、線幅系エラー処理部142は、マスクパターン42の辺421に設定された基準点p3から右側(マスクパターン42の内側)に所定距離だけ垂線を下ろし評価点p4を設定する。例えば、基準点p3の座標を(0,0)とすると、この基準点p3に対応する評価点p4の座標は、(2,0)とする。また、線幅系エラー処理部142は、マスクパターン42の辺422に設定された基準点p3から左側に所定距離だけ垂線を下ろし評価点p4を設定する。例えば、基準点p3の座標を(0,0)とすると、この基準点p3に対応する評価点p4の座標は、(−2,0)とする。
【0063】
次に、線幅系エラー処理部142は、設定した各評価点p4を線で繋ぎ、評価線を生成する。
図11は、真のエラーと疑似エラーの判定方法を説明する図である。
【0064】
図11では、各基準点p3および各評価点p4を識別するために基準点p3および評価点p4にさらに細かい符号を付している。
まず、
図11(a)に示すマスクパターン32の線幅系エラーの判別方法について説明する。
【0065】
線幅系エラー処理部142は、基準点p3aに基づき生成した評価点p4a、p4b、p4cと、基準点p3bに基づき生成した評価点p4d、p4e、p4fとを繋いで評価線C1を生成する。また、線幅系エラー処理部142は、基準点p3cに基づき生成した評価点p4g、p4h、p4iと、基準点p3dに基づき生成した評価点p4j、p4k、p4Lとを繋いで評価線C2を生成する。
【0066】
次に、線幅系エラー処理部142は、評価線C1、C2の干渉有無にてDRC検証部13にて検出された線幅系エラーが、真のエラーか擬似エラーかの判定を行う。具体的には、線幅系エラー処理部142は、評価線と干渉する場合は確認必須エラーとし、干渉しない場合は擬似エラーと判定され、確認不要エラーとなる。評価線C1と評価線C2は干渉しないため、線幅系エラー処理部142は、マスクパターン32に発生した線幅系エラーは疑似エラーであると判定する。
【0067】
次に、
図11(b)に示すマスクパターン42の線幅系エラーの判別方法について説明する。
線幅系エラー処理部142は、基準点p3eに基づき生成した評価点p4m、p4n、p4oと、基準点p3fに基づき生成した評価点p4pと、基準点p3gに基づき生成した評価点p4q、p4r、p4sとを繋いで評価線C3を生成する。また、線幅系エラー処理部142は、基準点p3hに基づき生成した評価点p4t、p4u、p4vと、基準点p3iに基づき生成した評価点p4wと、基準点p3jに基づき生成した評価点p4x、p4y、p4zとを繋いで評価線C4を生成する。
【0068】
次に、線幅系エラー処理部142は、評価線C3、C4の干渉有無にてDRC検証部13にて検出された線幅系エラーが、真のエラーか擬似エラーかの判定を行う。評価線C3と評価線C4は干渉するため、線幅系エラー処理部142は、マスクパターン42に発生した線幅系エラーは真のエラーであると判定する。
【0069】
線幅系エラー処理部142は、真のエラーであると判定したマスクパターン42のエラー情報をモニタ104aに表示する。このエラー情報には、マスクパターン42の形状情報が含まれる。また、線幅系エラー処理部142は、マスクパターン42のエラー情報をエラー情報記憶部17に記憶する。
【0070】
他方、線幅系エラー処理部142は、疑似エラーであると判定したマスクパターン32のエラー情報を処理ログ記憶部16に記憶する。
次に、検証装置10の処理を、フローチャートを用いて説明する。
【0071】
図12は、検証装置の処理を示すフローチャートである。
[ステップS1] エラー検証部14は、検証エラーのエラー種別に間隔系エラーが存在するか否かを判断する。間隔系エラーが存在する場合(ステップS1のYes)、ステップS2に遷移する。間隔系エラーが存在しない場合(ステップS1のNo)、ステップS9に遷移する。
【0072】
[ステップS2] 間隔系エラー処理部141は、間隔系エラーのエラー箇所に検証領域を設定する。その後、ステップS3に遷移する。
[ステップS3] 間隔系エラー処理部141は、ステップS2にて設定した検証領域に基づき基準点を設定する。その後、ステップS4に遷移する。
【0073】
[ステップS4] 間隔系エラー処理部141は、ステップS3にて設定した基準点と、評価点ライブラリとを用いて評価点を設定する。その後、ステップS5に遷移する。
[ステップS5] 間隔系エラー処理部141は、ステップS4にて設定した評価点を線で繋いで評価線を生成する。その後、ステップS6に遷移する。
【0074】
[ステップS6] 間隔系エラー処理部141は、干渉する評価線が存在するか否かを判断する。干渉する評価線が存在する場合(ステップS6のYes)、ステップS7に遷移する。干渉する評価線が存在しない場合(ステップS6のNo)、ステップS8に遷移する。
【0075】
[ステップS7] 間隔系エラー処理部141は、干渉する評価線の形成に関わったマスクパターンのエラー情報をエラー情報記憶部17に記憶する。その後、ステップS9に遷移する。
【0076】
[ステップS8] 間隔系エラー処理部141は、干渉しない評価線の形成に関わったマスクパターンのエラー情報を処理ログ記憶部16に記憶する。その後、ステップS9に遷移する。
【0077】
[ステップS9] エラー検証部14は、検証エラーのエラー種別に線幅系エラーが存在するか否かを判断する。線幅系エラーが存在する場合(ステップS9のYes)、ステップS10に遷移する。線幅系エラーが存在しない場合(ステップS9のNo)、
図12の処理を終了する。
【0078】
[ステップS10] 線幅系エラー処理部142は、エラーが発生した辺に交わるコーナー部を検出する。その後、ステップS11に遷移する。
[ステップS11] 線幅系エラー処理部142は、上下コーナー部までの距離を測定する。その後、ステップS12に遷移する。
【0079】
[ステップS12] 線幅系エラー処理部142は、エラー箇所に交わるコーナー部に基準点を設定する。また、上下コーナー部までの距離に応じて中点に基準点を設定する。その後、ステップS13に遷移する。
【0080】
[ステップS13] 線幅系エラー処理部142は、ステップS12にて設定した基準点と、評価点ライブラリとを用いて評価点を設定する。その後、ステップS14に遷移する。
【0081】
[ステップS14] 線幅系エラー処理部142は、ステップS13にて設定した評価点を線で繋いで評価線を生成する。その後、ステップS15に遷移する。
[ステップS15] 線幅系エラー処理部142は、干渉する評価線が存在するか否かを判断する。干渉する評価線が存在する場合(ステップS15のYes)、ステップS16に遷移する。干渉する評価線が存在しない場合(ステップS15のNo)、ステップS17に遷移する。
【0082】
[ステップS16] 線幅系エラー処理部142は、干渉する評価線の形成に関わったマスクパターンのエラー情報をエラー情報記憶部17に記憶する。その後、
図12の処理を終了する。
【0083】
[ステップS17] 線幅系エラー処理部142は、干渉しない評価線の形成に関わったマスクパターンのエラー情報を処理ログ記憶部16に記憶する。その後、
図12の処理を終了する。
【0084】
以上述べたように、検証装置10によれば、評価線を生成し、評価線の干渉結果に応じて疑似エラーか真のエラーかを判定することにより、擬似エラーの排他が可能となる。このため、設計者は、真のエラーだけを確認すればよく、エラー確認作業を効率よく行うことが可能となる。
【0085】
<変形例>
図13は、変形例を説明する図である。
図13には、エラー箇所に関わるマスクパターン51を図示している。このマスクパターン51には、所定値よりも小さな段差(以下、微小段差という)511が存在する。以下、この場合の基準点の設定方法を説明する。
【0086】
マスクパターン51が、DRC検証部13により間隔系エラーに分類された場合は、間隔系エラー処理部141は、OUTコーナー部511aに基準点p1を設定する。また、マスクパターン51が、DRC検証部13により線幅系エラーに分類された場合は、線幅系エラー処理部142は、INコーナー部511bに基準点p3を設定する。
【0087】
あるいは、エラーの種別にかかわらず、OUTコーナー部511aとINコーナー部511bの中点に間隔系エラーおよび線幅系エラーのいずれにも使用可能な基準点p5を設定するようにしてもよい。
【0088】
なお、検証装置10が行った処理が、複数の装置によって分散処理されるようにしてもよい。例えば、1つの装置が、DRC検証までを行って間隔系エラーおよび線幅系エラーを検出しておき、他の装置が、検出されたエラー情報を用いて疑似エラーと真のエラーを判定するようにしてもよい。
【0089】
以上、本発明の検証方法、検証プログラムおよび検証装置を、図示の実施の形態に基づいて説明したが、本発明はこれに限定されるものではなく、各部の構成は、同様の機能を有する任意の構成のものに置換することができる。また、本発明に、他の任意の構成物や工程が付加されていてもよい。
【0090】
また、本発明は、前述した各実施の形態のうちの、任意の2以上の構成(特徴)を組み合わせたものであってもよい。
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、検証装置1、10が有する機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、光磁気記録媒体、半導体メモリ等が挙げられる。磁気記憶装置には、ハードディスクドライブ、フレキシブルディスク(FD)、磁気テープ等が挙げられる。光ディスクには、DVD、DVD−RAM、CD−ROM/RW等が挙げられる。光磁気記録媒体には、MO(Magneto-Optical disk)等が挙げられる。
【0091】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD、CD−ROM等の可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【0092】
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、ネットワークを介して接続されたサーバコンピュータからプログラムが転送される毎に、逐次、受け取ったプログラムに従った処理を実行することもできる。
【0093】
また、上記の処理機能の少なくとも一部を、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)等の電子回路で実現することもできる。
【0094】
以上の第1〜第2の実施の形態に関し、さらに以下の付記を開示する。
(付記1) 半導体装置の設計データに基づいて形成する基板露光用のマスクパターンの検証方法において、
コンピュータが、
レイアウト設計規則に違反する箇所を含むマスクパターンの形状に基づき検証対象の違反か否かを識別する区画を形成し、
形成した区画の干渉の有無を判断し、判断結果を出力する、
ことを特徴とする検証方法。
【0095】
(付記2) 前記区画を前記マスクパターンの所定の組み合わせの角部を含むように形成することを特徴とする付記1記載の検証方法。
(付記3) 前記所定の組み合わせは、前記レイアウト設計規則の違反種別に応じて特定されることを特徴とする付記2記載の検証方法。
【0096】
(付記4) 前記角部の近傍の所定位置に点を作成し、
作成した前記点を繋ぐことにより前記区画を形成することを特徴とする付記2記載の検証方法。
【0097】
(付記5) 前記違反種別が複数のマスクパターン間の間隔に関わる違反である場合、
前記レイアウト設計規則に違反する箇所に基づき検証対象のマスクパターンを特定する検証領域を設定し、
設定した前記検証領域の前記マスクパターンの角部近傍の空間に前記点を設定することを特徴とする付記4記載の検証方法。
【0098】
(付記6) 前記レイアウト設計規則に違反する前記マスクパターンの辺が前記検証領域をまたぐ場合には前記検証領域と前記辺との交点の近傍の空間に前記点を設定することを特徴とする付記5記載の検証方法。
【0099】
(付記7) 前記違反種別が1つのマスクパターンの線幅に関わる違反である場合、
前記レイアウト設計規則に違反する箇所を含むマスクパターンの角部近傍のマスクパターン内部に前記点を設定することを特徴とする付記4記載の検証方法。
【0100】
(付記8) 前記点の作成位置が、角部の形状に応じて異なることを特徴とする付記4ないし7のいずれかに記載の検証方法。
(付記9) 前記角部の形状に応じて設定する点の位置を記憶する記憶部を参照することにより前記点を設定することを特徴とする付記4ないし8のいずれかに記載の検証装置。
【0101】
(付記10) 前記判断結果を出力する際に、形成した区画の干渉が有る箇所を出力し、干渉がない箇所を出力しないことを特徴とする付記1ないし9のいずれかに記載の検証装置。
【0102】
(付記11) 半導体装置の設計データに基づいて形成する基板露光用のマスクパターンの検証プログラムにおいて、
コンピュータに、
レイアウト設計規則に違反する箇所を含むマスクパターンの形状に基づき検証対象の違反か否かを識別する区画を形成し、
形成した区画の干渉の有無を判断し、判断結果を出力する、
処理を実行させることを特徴とする検証プログラム。
【0103】
(付記12) 半導体装置の設計データに基づいて形成する基板露光用のマスクパターンの検証装置において、
レイアウト設計規則に違反する箇所を含むマスクパターンの形状に基づき検証対象の違反か否かを識別する区画を形成する形成部と、
前記形成部が形成した区画の干渉の有無を判断し、判断結果を出力する判断部と、
を有することを特徴とする検証装置。