以下、本発明を図示する実施形態に基づいて説明する。なお、本発明は、特許協力条約に基づく国際出願第PCT/JP2018/022100号(以下、先願と呼ぶ)に記載された発明(以下、先願発明と呼ぶ)と対比することにより、その特徴の把握が容易になる。そこで、ここでは説明の便宜上、以下の§1〜§4において、まず、先願発明の説明を行い、§5以降において、本発明を先願発明と対比しながら説明することにする。したがって、以下の§1〜§4で述べる内容(図1〜図31に示す内容)は、実質的に先願に記載された基本的実施形態と同じものである。
<<< §1. 先願発明に係る形状補正装置の基本構成 >>>
ここでは、先願発明の基本的実施形態に係る図形パターンの形状補正装置100の構成を、図1のブロック図を参照しながら説明する。図示のとおり、この図形パターンの形状補正装置100は、評価点設定ユニット110、特徴量抽出ユニット120、バイアス推定ユニット130、パターン補正ユニット140を有している。ここで、評価点設定ユニット110、特徴量抽出ユニット120、バイアス推定ユニット130の3つのユニットによって、先願発明に係る図形パターンの形状推定装置100′が構成されており、先願発明に係る図形パターンの形状補正装置100は、この図形パターンの形状推定装置100′に、更に第4番目のユニットとしてパターン補正ユニット140を付加することにより構成される。
<1.1 図形パターンの形状推定装置>
はじめに、図形パターンの形状推定装置100′の構成および機能について説明する。この図形パターンの形状推定装置100′は、元図形パターン10を用いたリソグラフィプロセスをシミュレートすることにより、実基板S上に形成される実図形パターン20の形状を推定する役割を果たす。図1の上方には、元図形パターン10から右方向に向かう一点鎖線の矢印が示され、この矢印の先には、実図形パターン20を有する実基板Sが描かれている。この一点鎖線の矢印は、物理的なリソグラフィプロセスを示している。
図示の元図形パターン10は、コンピュータを用いた設計作業によって作成された図形パターンのデータであり、一点鎖線の矢印は、このデータに基づいて、物理的な露光、現像、エッチング等のリソグラフィプロセスを実施することにより、実基板Sが作製されることを示している。この実基板S上には、元図形パターン10に応じた実図形パターン20が形成されることになる。ただ、このようなリソグラフィプロセスを実施すると、元図形パターン10と実図形パターン20との間には、若干の食い違いが生じる。これは、前述したとおり、リソグラフィプロセスに含まれる、露光、現像、エッチングという工程の諸条件により、元図形パターン10どおりの正確な図形を実基板S上に形成することが困難なためである。
図2は、元図形パターン10と実図形パターン20との間に形状の相違が生じた具体例を示す平面図である。半導体デバイスなどでは、実際には、非常に微細かつ複雑な図形パターンをシリコン等の実基板Sの表面に形成する必要があるが、ここでは説明の便宜上、図2(a) に示すような単純な図形が元図形パターン10として与えられた場合について説明する。図示の元図形パターン10は、1つの長方形からなるパターンであり、たとえば、実基板S上に、ハッチングを施した長方形内部領域に相当する材料層を形成することを示す元の図形データということになる。
実際のリソグラフィ工程では、実基板S上の材料層の上面にレジスト層を形成し、光や電子線による露光を行って、このレジスト層に対する描画を行うことになる。たとえば、レジスト層に対して、図2(a) に示す元図形パターン10の内部領域(ハッチングを施した部分)について露光を行った後、レジスト層を現像して非露光部を除去すれば、露光部が残存レジスト層(ハッチングを施した部分)として残ることになる。更に、この残存レジスト層をマスクとして、材料層に対してエッチングを施せば、理論的には、材料層についても、元図形パターン10の内部領域(ハッチングを施した部分)を残すことができ、実基板S上に、図2(a) に示す元図形パターン10と同一の実図形パターンを得ることができる。
しかしながら、実際には、実基板S上に得られる実図形パターン20は、元図形パターン10に正確には一致しない。その原因は、リソグラフィプロセスに含まれる、露光、現像、エッチングという工程の諸条件が、最終的に得られる実図形パターン20の形状に影響を及ぼすためである。たとえば、露光工程では、光や電子線によってレジスト層に対する描画を行うことになるが、その際に、近接効果(PE:Proximity Effect)によって、レジスト層に実際に描画される露光領域は、元図形パターン10よりも若干広い領域になることが知られている。このような近接効果の影響を受けると、実基板S上に得られる実図形パターン20は、図2(b) に示す例のように、元図形パターン10(破線で示す)よりも広がった領域になる。
この他、現像工程で用いる現像液の特性、エッチング工程で用いるエッチング液やプラスマの特性、現像工程やエッチング工程の時間などの条件も、実図形パターン20の形状に影響を及ぼす要因になる。したがって、実際に半導体デバイスなどを製造する際には、コンピュータ上で所望の元図形パターン10を設計した後、この元図形パターン10を用いたリソグラフィプロセスをコンピュータ上でシミュレートし、実基板S上に形成されるであろう実図形パターン20の形状を推定する手順が実行される。図1に示す図形パターンの形状推定装置100′は、このような推定を行う機能をもった装置であり、実基板Sを作成するリソグラフィプロセス(露光、現像、エッチング工程)を実際に行うことなしに、シミュレーションによって、実基板S上に形成されるであろう実図形パターン20の形状を推定する機能を有している。
図1に示す図形パターンの形状推定装置100′では、評価点設定ユニット110によって、元図形パターン10上に評価点Eが設定される。具体的には、形状推定装置100′には、元図形パターン10として、図形の内部と外部との境界を示す輪郭線の情報を含む図形データが与えられ、評価点設定ユニット110は、そのような元図形パターン10に基づいて、輪郭線上の所定位置に評価点を設定する処理を行う。
図3は、図2(a) に示す元図形パターン10について、いくつかの評価点を設定した例および各評価点に生じるプロセスバイアス(寸法誤差)を示す平面図である。まず図3(a) は、図2(a) に示す元図形パターン10(長方形の図形)の輪郭線上に、評価点E11,E12,E13を設定した例を示す平面図である。図3では、説明の便宜上、3つの評価点E11,E12,E13が設定された簡素な例が示されているが、実際には、長方形の各辺上に、より多数の評価点が設定される。たとえば、輪郭線に沿って所定ピッチで連続的に評価点を設定するように定めておけば、自動的に多数の評価点を設定することができる。
ここでは、図2(a) に示す元図形パターン10に基づいて、図2(b) に示すような実図形パターン20が得られた場合を考えてみよう。図3(b) は、図2(b) に示す実図形パターン20の輪郭(実線)を、図2(a) に示す元図形パターン10の輪郭(破線)と対比して示した平面図であり、実線で示す実図形パターン20の輪郭線が、破線で示す元図形パターン10の輪郭線に比べて、寸法yだけ外側に広がっている状態が示されている。このため、元図形パターン10の横幅aは、実図形パターン20では横幅bに広がっている。縦幅についても同様に若干の広がりが生じている。
図3(b) において、実図形パターン20上の各評価点E21,E22,E23は、元図形パターン10上の各評価点E11,E12,E13に対応する点として定められた評価点である。ここで、評価点E21は、評価点E11を破線で示す輪郭線の法線方向外側に向かって所定寸法y11だけずらした点として定義されている。同様に、評価点E22は、評価点E12を破線で示す輪郭線の法線方向外側に向かって所定寸法y12だけずらした点として定義され、評価点E23は、評価点E13を破線で示す輪郭線の法線方向外側に向かって所定寸法y13だけずらした点として定義されている。
図3に示す例のように、ここでは、元図形パターン10に対する実図形パターン20の形状変化を定量的に示すために、各評価点Eについて生じる輪郭線の法線方向についてのずれ量yを用いることにする。また、このずれ量yを、リソグラフィプロセスに起因して生じるバイアス量であることから「プロセスバイアスy」と呼ぶことにする。プロセスバイアスyは正負の符号をもった値であり、以下に示す実施例では、図形の露光部(描画部)が太る方向を正の値、細る方向を負の値と定義することにする。図示の例では、輪郭線で囲まれた図形の内部が露光部(描画部)になるので、輪郭線の外側方向にずれた場合には正の値、輪郭線の内側方向にずれた場合には負の値となる。図3に示す例の場合、各評価点Eはいずれも外側方向にずれを生じているため、プロセスバイアスy11,y12,y13は正の値をとる。
なお、図3には、説明の便宜上、3つの評価点E11,E12,E13しか示されていないが、実際には、元図形パターン10の輪郭線上には、より多数の評価点Eが定義される。したがって、各評価点Eのそれぞれについてプロセスバイアスyを推定することができれば、各評価点Eを輪郭線の法線方向にプロセスバイアスyだけずらすことにより、リソグラフィプロセス後の各評価点Eの位置を推定することができ、実図形パターン20の輪郭線位置を推定することができる。
もっとも、各評価点Eのプロセスバイアスyの値は、個々の評価点ごとに異なる。たとえば、図3(b) に示す例の場合、プロセスバイアスy11,y12,y13の値はそれぞれ個別の値になる。これは、各評価点E11,E12,E13の元図形パターン10に対する相対位置がそれぞれ異なっているため、リソグラフィプロセスによる影響も異なり、それぞれに生じるずれ量にも差が生じるためである。したがって、元図形パターン10に基づいて実図形パターン20の形状をシミュレーションによって推定する際の推定精度を高めるためには、個々の評価点ごとにリソグラフィプロセスによる影響を適切に予測し、適切なプロセスバイアスyを求めることが重要である。
そこで、図1に示す図形パターンの形状推定装置100′では、まず、評価点設定ユニット110により、元図形パターン10上に評価点が設定される。具体的には、元図形パターン10に含まれている図形の内部と外部との境界を示す輪郭線の情報に基づいて、この輪郭線上の所定位置に各評価点Eを設定すればよい。たとえば、輪郭線に沿って所定間隔で連続的に評価点を設定することができる。
続いて、特徴量抽出ユニット120により、元図形パターン10について、各評価点Eの周囲の特徴を示す特徴量を抽出する。ある1つの評価点Eについての特徴量xは、当該評価点Eの周囲の特徴を示す値ということになる。このような特徴量xを抽出する処理を行うため、特徴量抽出ユニット120は、図1に示すとおり、元画像作成部121、画像ピラミッド作成部122、特徴量算出部123を有している。
元画像作成部121は、与えられた元図形パターン10に基づいて、それぞれ所定の画素値を有する画素の集合体からなる元画像を作成する。たとえば、図2(a) に示すような元図形パターン10が与えられた場合、長方形の内部の画素(図のハッチング部分の画素)については画素値1、長方形の外部の画素については画素値0を付与すれば、二値画像からなる元画像が作成される。
画像ピラミッド作成部122は、この元画像を縮小して縮小画像を作成する縮小処理を含む画像ピラミッド作成処理を行い、複数n枚の階層画像からなる画像ピラミッドを作成する。画像ピラミッドの各階層を構成するn枚の階層画像は、いずれも元画像作成部121で作成された元画像に対して、所定の画像処理を施すことにより得られる画像であり、それぞれ異なるサイズをもっている。このような複数の階層画像の集合体を「画像ピラミッド」と呼ぶのは、各階層画像をサイズの大きい方から小さい方へと順に積み上げて階層構造を形成すると、あたかもピラミッドが構成されるように見えるためである。
特徴量算出部123は、この画像ピラミッドの階層を構成するn枚の各階層画像について、それぞれ評価点Eの近傍の画素の画素値に基づいて特徴量を算出する。具体的には、1枚目の階層画像における評価点Eの近傍の画素の画素値に基づいて特徴量x1が算出され、2枚目の階層画像における評価点Eの近傍の画素の画素値に基づいて特徴量x2が算出され、同様に、n枚目の階層画像における評価点Eの近傍の画素の画素値に基づいて特徴量xnが算出されることになり、1つの評価点Eについて、n個の特徴量x1〜xnが抽出される。たとえば、図3(a) に示す例の場合、評価点E11について、n通りの特徴量x1(E11)〜xn(E11)が抽出され、評価点E12について、n通りの特徴量x1(E12)〜xn(E12)が抽出され、評価点E13について、n通りの特徴量x1(E13)〜xn(E13)が抽出される。
一方、バイアス推定ユニット130は、特徴量抽出ユニット120によって抽出された特徴量xに基づいて、評価点Eの元図形パターン10上の位置と実図形パターン20上の位置とのずれ量を示すプロセスバイアスyを推定する処理を行う。このような推定処理を行うため、バイアス推定ユニット130は、特徴量入力部131と推定演算部132を有している。特徴量入力部131は、特徴量算出部123によって評価点Eについて算出された特徴量x1〜xnを入力する構成要素であり、推定演算部132は、予め実施された学習段階によって得られた学習情報Lに基づいて、特徴量x1〜xnに応じた推定値を求め、求めた推定値を評価点Eについてのプロセスバイアスの推定値yとして出力する処理を行う。
より具体的に言えば、推定演算部132は、元図形パターン10を構成する図形の輪郭線上に位置する各評価点Eについて、当該輪郭線の法線方向についてのずれ量としてプロセスバイアスの推定値yを出力することになる。たとえば、図3(a) に示す元図形パターン10については、図3(b) に示すように、評価点E11についてプロセスバイアスy11、評価点E12についてプロセスバイアスy12、評価点E13についてプロセスバイアスy13が、それぞれ推定値として推定演算部132から出力される。こうして、各評価点Eについてのプロセスバイアスの推定値yが得られれば、各評価点Eの新たな位置(輪郭線の法線方向に、プロセスバイアスyだけずらした位置)を決定することができるので、図3(b) に示すように、実図形パターン20の形状を推定することができる。
以上が、先願発明に係る図形パターンの形状推定装置100′の基本構成および基本動作である。なお、特徴量抽出ユニット120の具体的な動作は§2で詳述し、バイアス推定ユニット130の具体的な動作は§3で詳述する。
<1.2 図形パターンの形状補正装置>
続いて、先願発明に係る図形パターンの形状補正装置100の構成および機能について説明する。図形パターンの形状補正装置100は、上述した図形パターンの形状推定装置100′を用いて、元図形パターン10の形状を補正する装置であり、図1に示すとおり、図形パターンの形状推定装置100′の構成要素となる評価点設定ユニット110、特徴量抽出ユニット120、バイアス推定ユニット130に加えて、更に、パターン補正ユニット140を備えている。パターン補正ユニット140は、バイアス推定ユニット130から出力されるプロセスバイアスの推定値yに基づいて、元図形パターン10に対する補正を行う構成要素であり、このパターン補正ユニット140による補正によって得られる補正図形パターン15が、この図形パターンの形状補正装置100の最終的な出力となる。
パターン補正ユニット140による補正は、元図形パターン10上の各評価点Eをプロセスバイアスyを相殺する方向に移動させ、各図形の境界線を移動後の各評価点Eの位置に修正することによって行うことができる。たとえば、図3(a) に示す元図形パターン10について、図3(b) に示すような実図形パターン20が推定された場合を考えてみよう。この場合、元図形パターン10に含まれる長方形の横幅aは、実図形パターン20上では横幅bに増加しており、(b−a)/2=yとすれば、長方形の左右の辺の位置をいずれも内側へyだけ移動させれば、元図形パターン10と同じ横幅aを有する長方形が得られることになる。したがって、基本的には、元図形パターン10の横幅aを2yだけ減じる補正を行い、この補正後の図形パターンに基づいてリソグラフィプロセスを実行すれば、実基板S上には、実図形パターン20として、当初の設計どおりの横幅aを有する長方形を得ることができる。
図3(a) に示す元図形パターン10の場合、評価点E11を左方(長方形の内側)にプロセスバイアスy11だけ移動させ、評価点E12を左方(長方形の内側)にプロセスバイアスy12だけ移動させ、評価点E13を上方(長方形の内側)にプロセスバイアスy13だけ移動させる補正を行えばよい。もちろん、実際には、より多数の評価点が定義されているので、これらすべての評価点について、プロセスバイアスに相当する寸法だけ長方形の内側に移動させる補正を行い、補正後の評価点を結ぶ新たな輪郭線を定義すれば、当該輪郭線で画定される図形を含む補正図形パターン15が得られることになる。このような補正処理自体は公知の技術なので、ここでは詳しい説明は省略する。
もっとも、実際には、こうして得られた補正図形パターン15を用いてリソグラフィプロセスを実行し、実基板S上に実図形パターン25(図示省略)を形成しても、得られる実図形パターン25は、設計当初の元図形パターン10には正確には一致しない(たとえば、実基板S上に形成される長方形の横幅は、正確にはaにならない)。なぜなら、元図形パターン10に含まれる図形と補正図形パターン15に含まれる図形とでは、サイズや形状が異なるため、リソグラフィプロセスを実行した場合の近接効果などの影響に相違が生じるためである。
別言すれば、特定の評価点Eについてシミュレーションを行った結果、プロセスバイアスyが生じることが判明したとしても、単に当該評価点Eの位置をプロセスバイアスyだけ逆方向に移動させただけでは、正確な補正を行うことはできないのである。
もちろん、元図形パターン10を用いてリソグラフィプロセスを実行した結果として得られる実図形パターン20に比べれば、補正図形パターン15を用いてリソグラフィプロセスを実行した結果として得られる実図形パターン25の方が、より元図形パターン10に近いパターンになるので、元図形パターン10をそのまま用いて実際のリソグラフィプロセスを実行するよりは、パターン補正ユニット140による補正によって得られる補正図形パターン15を用いて実際のリソグラフィプロセスを実行した方が、実基板S上には、より正確な図形パターンが得られることになる。すなわち、パターン補正ユニット140によって補正を行えば、誤差が縮小することは確かである。
そこで、実用上は、図1に示すとおり、パターン補正ユニット140から出力された補正図形パターン15を、再び、図形パターンの形状補正装置100に与える処理を繰り返し行うようにする。すなわち、補正図形パターン15は、図形パターンの形状推定装置100′に新たな元図形パターンとして与えられることになり、この新たな元図形パターン(補正図形パターン15)について、§1.1で述べた処理が実行される。具体的には、評価点設定ユニット110によって補正図形パターン15上に各評価点Eの設定が行われ、特徴量抽出ユニット120によって各評価点Eについての特徴量が抽出され、バイアス推定ユニット130によって各評価点Eについてのプロセスバイアス推定値yが算出される。そして、この算出されたプロセスバイアス推定値yを用いて、パターン補正ユニット140において再度の補正処理が行われる。
図1に示す図形パターンの形状補正装置100は、このように、図形パターンに対する補正を繰り返し実行する機能を有している。すなわち、元図形パターン10に基づいて第1の補正図形パターン15が得られ、この第1の補正図形パターン15に基づいて第2の補正図形パターンが得られ、この第2の補正図形パターンに基づいて第3の補正図形パターンが得られ、... という補正処理が繰り返されることになる。補正処理を行うたびに、元図形パターンとシミュレーションにより得られる図形パターンとの形状誤差は縮小してゆく。
したがって、たとえば、元図形パターンとシミュレーションにより得られる図形パターンとの形状誤差が所定の許容範囲内に収束した時点で補正完了とし、最後に得られた補正図形パターンを用いて実際のリソグラフィプロセスを実行すれば、実基板S上には、設計当初の元図形パターン10に近い実図形パターンを形成することができる。かくして、先願発明に係る図形パターンの形状補正装置100を用いれば、元図形パターンの形状を的確に補正することが可能になる。
なお、図1に示す評価点設定ユニット110、特徴量抽出ユニット120、バイアス推定ユニット130、パターン補正ユニット140は、いずれもコンピュータに所定のプログラムを組み込むことによって構成されている。したがって、先願発明に係る図形パターンの形状推定装置100′や図形パターンの形状補正装置100は、実際には、汎用のコンピュータに専用のプログラムを組み込むことによって実現される。
図4は、図1に示す図形パターンの形状補正装置100を用いた製品の設計・製造工程を示す流れ図である。まず、ステップS1において、製品設計段階が行われる。この製品設計段階は、半導体デバイスなどを構成するための図形パターンを作成する工程であり、図1に示す元図形パターン10は、この製品設計段階で作成されることになる。なお、半導体デバイスなどの製品設計を行い、図形パターンを作成する装置自体は既に公知の装置であるので、ここでは詳しい説明は省略する。
次のステップS2の評価点設定段階は、図1に示す評価点設定ユニット110において実行される段階である。たとえば、図2(a) に示すような元図形パターン10が与えられた場合、図3(a) に示すような評価点E11,E12,E13などが設定される。続くステップS3の特徴量抽出段階は、図1に示す特徴量抽出ユニット120において実行される段階であり、前述したとおり、1つの評価点Eについて、n通りの特徴量x1〜xnが抽出される(詳細な抽出手順は、§2で述べる)。そして、ステップS4のプロセスバイアス推定段階は、図1に示すバイアス推定ユニット130において実行される段階であり、前述したとおり、1つの評価点Eについて、n通りの特徴量x1〜xnを用いてプロセスバイアス推定値yが求められる(詳細な算出手順は、§3で述べる)。
そして、ステップS5のパターン形状補正段階は、図1に示すパターン補正ユニット140において実行される段階であり、前述したとおり、各評価点Eについて求められたプロセスバイアス推定値yを用いて、元図形パターン10に対する補正を行うことにより補正図形パターン15が得られる。このような補正は、1回だけでは不十分であるため、ステップS6において「補正完了」と判断されるまで、ステップS2へ戻る処理が繰り返される。すなわち、ステップS5で得られた補正図形パターン15を、新たな元図形パターン10として取り扱うことにより、ステップS2〜S5の処理が繰り返し実行されることになる。
このような繰り返し処理の結果、ステップS6において「補正完了」と判断されるに至った場合には、ステップS7へと進み、リソグラフィプロセスが実行される。「補正完了」との判断は、たとえば「一定割合の評価点Eについて、元図形パターン上の位置とシミュレーションにより得られる図形パターン上の位置との誤差が、所定の基準値以下になる」というような特定の条件が満たされたことにより行うことができる。ステップS7のリソグラフィプロセスでは、最終的に得られた補正図形パターンに基づいて、露光、現像、エッチングという実工程が行われ、実基板Sの製造が行われる。
図4に示す流れ図において、ステップS1〜S6の段階は、計算機(コンピュータ)上で実行するプロセスであり、ステップS7の段階は、実基板S上で実行するプロセスである。
<1.3 先願発明における特徴量抽出の基本概念>
これまで、図1に示す図形パターンの形状推定装置100′および図形パターンの形状補正装置100の基本構成とその基本動作を述べた。これらの各装置において、先願発明として最も特徴的な構成要素は、特徴量抽出ユニット120である。先願発明は、元図形パターン10から的確な特徴量を抽出して的確なシミュレーションを行い、実基板S上に形成される実図形パターン20の形状を正確に推定するという作用効果を奏するものであるが、このような作用効果を得るために最も重要な役割を果たす構成要素が特徴量抽出ユニット120である。別言すれば、先願発明の重要な特徴は、元図形パターン10から非常にユニークな方法で特徴量の抽出を行う点にある。そこで、ここでは、先願発明における特徴量抽出の基本概念を説明する。
図5は、長方形からなる図形パターン10の輪郭線上に定義された各評価点E11,E12,E13について、その周囲の特徴を把握する概念を示す平面図である。図5(a) は、長方形の右辺中央に設定された評価点E11について、参考円C1の内部と参考円C2の内部の特徴を抽出した状態を示している。参考円C1,C2は、いずれも評価点E11を中心とする円であるが、参考円C1に比べて参考円C2はより大きな円になっている。同様に、図5(b) は、長方形の右辺下方に設定された評価点E12について、図5(c) は、長方形の下辺中央に設定された評価点E13について、それぞれ2つの参考円C1,C2の内部の特徴を抽出した状態を示している。
ここで、各評価点について、参考円C1の内部の特徴を比較すると、評価点E11と評価点E12については、左半分が図形内部(ハッチング領域)、右半分が図形外部(空白領域)になっており、参考円C1の内部の特徴に関しては差がない。一方、評価点E13についての参考円C1の内部の特徴は、上半分が図形内部(ハッチング領域)、下半分が図形外部(空白領域)になっており、評価点E11,E12の参考円C1内の特徴を90°回転させたものになっているが、ハッチング領域の占有率について差はない。一方、参考円C2の内部の特徴を、各評価点E11,E12,E13について比較すると、ハッチング領域の分布がそれぞれ異なっており、互いに異なる特徴を有していることがわかる。
このように、図形パターン10上の各評価点E11,E12,E13について、その近傍の特徴を把握するにしても、参考円C1のような狭い近傍領域の特徴を抽出するか、参考円C2のように若干広い近傍領域の特徴を抽出するか、によって、抽出される特徴は異なる。したがって、ある1つの評価点Eについて、その近傍領域の特徴を何らかの特徴量xとして定量的に抽出する場合、近傍領域の範囲を段階的に変化させれば、より多様な方法で特徴量の抽出が行えることがわかる。
また、前述したとおり、元図形パターン10に基づいてリソグラフィプロセスを実行した場合、基板上に得られる実図形パターン20は、露光工程における近接効果により、元図形パターン10に対して寸法誤差(プロセスバイアス)を生じることになる。特に、電子線露光における近接効果には、影響範囲が狭い前方散乱に起因する効果や、影響範囲が広い後方散乱に起因する効果など、多様な効果が含まれている。たとえば、前方散乱は、レジスト層などから構成される被成形層に電子ビームを照射したときに、質量の小さい電子が、レジスト内で分子に散乱されながら拡がっていく現象として説明され、後方散乱は、レジスト層の下にある金属基板などの表面付近で散乱されて跳ね返ってきた電子がレジスト層内で拡散してゆく現象として説明されている。また、エッチング工程によってもプロセスバイアスが生じ、その大きさは、エッチング時のローディング現象に応じて変動する。このローディング現象も、上述した露光工程における近接効果と同様に、狭い影響範囲をもつ成分や広い影響範囲をもつ成分など、多様な成分が合わさって生じることになる。
結局、ある1つの評価点Eについてのプロセスバイアスyの値は、様々なスケール感をもった現象が融合して決まる値になる。したがって、周囲の狭い範囲に関する特徴量から広い範囲に関する特徴量に至るまで、多様な特徴量を抽出することは、影響範囲がそれぞれ異なる、プロセスバイアスに影響を与える各工程中の様々な現象に対して、正確なシミュレーションを行う上で重要である。そこで、先願発明では、1つの評価点Eについて、近傍から遠方に至るまで、その周囲の様々な領域についての特徴量を抽出するようにしている。このように、1つの評価点Eについて複数の特徴量を抽出するため、先願発明では、それぞれ異なるサイズをもった複数の階層画像からなる「画像ピラミッド」を作成する方法を採用している。この画像ピラミッドには、影響範囲がそれぞれ異なる様々な現象を多重化した情報が含まれていることになる。
図6は、図1に示す特徴量抽出ユニット120およびバイアス推定ユニット130において実行される処理の概要を示す図である。図の上方に示された元画像Q1は、図1に示す元画像作成部121によって作成された画像であり、与えられた元図形パターン10に相当する画像になる。前述したように、元図形パターン10は、半導体デバイスの設計装置などによって作成されるデータであり、図2(a) に示すような図形を示すデータになるが、通常、図形の輪郭線を示すベクトルデータ(各頂点の座標値と各頂点の連結関係を示すデータ)として与えられる。
元画像作成部121は、与えられた元図形パターン10のデータに基づいて、それぞれ所定の画素値を有する画素の集合体からなる元画像Q1を作成する処理を実行する。たとえば、元図形パターン10を構成する図形の内部に画素値1をもった画素を配置し、外部に画素値0をもった画素を配置すれば、多数の画素Uの集合体からなる元画像Q1を作成することができる。図6に示す元画像Q1は、このような画素Uの集合体からなる画像であり、破線で示すように、元図形パターン10に含まれる長方形の図形を画像情報として有している。また、評価点設定ユニット110によって、この図形の輪郭線上に評価点Eが設定されている。なお、図6では、便宜上、1つの評価点Eのみが描かれているが、実際には、図形の輪郭線に沿って、多数の評価点が設定されている。
図1に示す画像ピラミッド作成部122は、この元画像Q1に基づいて、画像ピラミッドPPを作成する。画像ピラミッドPPは、それぞれ異なるサイズをもった複数の階層画像によって構成される。図には、複数n通り(n≧2)の階層画像P1〜Pnによって構成された画像ピラミッドPPが示されている。元画像Q1から階層画像P1〜Pnを作成する具体的な手順は§2で説明するが、基本的には、階層画像P1〜Pnは、画素数を小さくする縮小処理によって作成される。たとえば、図示の例の場合、階層画像P1は、元画像Q1と同じサイズの画像(縦横の画素数が同じ画像)であるのに対して、階層画像P2は、縮小された小さなサイズの画像になっており、階層画像P3は、階層画像P2を更に縮小した、より小さなサイズの画像になっている。
このように、先願発明では、元画像Q1に基づいて、画像サイズが徐々に小さくなってゆくような階層画像P1〜Pnが作成される。このように、サイズの異なる複数の階層画像を上下に並べた様子は、図示のようなピラミッドの形態になるため、先願では、これら複数の階層画像P1〜Pnの集合体を画像ピラミッドPPと呼んでいる。階層画像P1〜Pnは、いずれも元画像Q1に基づいて作成されているため、元図形パターン10の情報を有しており、それぞれについて評価点Eの位置を定義することができる。図では、各階層画像P1〜Pnにそれぞれ長方形の図形が描かれており、その輪郭線上に評価点Eが配置されている。
図1に示す特徴量算出部123は、画像ピラミッドを構成する各階層画像について、評価点の近傍の画素の画素値に基づいて特徴量を算出する処理を行う。図6には、画像ピラミッドPPを構成するn枚の階層画像P1〜Pnから、それぞれ評価点Eの特徴量x1〜xnが抽出された状態が示されている。図示されている特徴量x1〜xnは、いずれも同じ評価点Eの周囲の特徴を示す値であるが、特徴量x1は、第1の階層画像P1上の評価点Eの近傍画素の画素値に基づいて算出された値であり、特徴量x2は、第2の階層画像P2上の評価点Eの近傍画素の画素値に基づいて算出された値であり、特徴量x3は、第3の階層画像P3上の評価点Eの近傍画素の画素値に基づいて算出された値である。各特徴量x1〜xnの具体的な算出手順は§2で説明する。
図6には、便宜上、1つの評価点Eのみが描かれているが、実際には、多数の評価点のそれぞれについて、n個の特徴量x1〜xnが算出されることになる。個々の特徴量x1〜xnは、いずれも所定のスカラー値であるが、個々の評価点Eごとにそれぞれn個の特徴量x1〜xnが得られることになる。したがって、このn個の特徴量x1〜xnをn次元ベクトルとして把握すれば、特徴量抽出ユニット120は、1つの評価点Eについて、n次元ベクトルからなる特徴量を抽出する処理を行うことになる。
こうして抽出された各評価点についての特徴量(n次元ベクトル)は、バイアス推定ユニット130内の特徴量入力部131によって入力され、推定演算部132に与えられる。推定演算部132は、ここに示す実施例の場合、ニューラルネットワークによって構成され、予め実施された学習段階によって得られた学習情報Lに基づいて、n次元ベクトルとして与えられた特徴量x1〜xnに応じて、評価点Eについてのプロセスバイアスの推定値y(スカラー値)を算出する演算を行う。具体的な演算手順は§3で説明する。
このように、先願発明によれば、実際のリソグラフィプロセスに対して、物理的・実験的なシミュレーションモデルが構築されていなくても、あらゆる元図形パターン10に対して正確な特徴量を抽出することができる。また、そもそも物理的・実験的なシミュレーションモデルを構築する必要がないため、後に§3.2で述べるニューラルネットワークの学習段階において、材料物性や工程条件の種々の設定値を考慮する必要もない。
以上、先願発明に係る図形パターンの形状推定装置100′および形状補正装置100を、半導体デバイスを製造するためのリソグラフィプロセスに利用する例について説明したが、先願発明や本願発明は、半導体デバイスの製造工程への利用に限定されるものではなく、リソグラフィプロセスを含む様々な製品の製造工程に利用することができる。たとえば、NIL(Nano Imprint Lithography)やEUV(Extreme UltraViolet Lithography)などのリソグラフィプロセスを含む様々な製品の製造工程においても先願発明や本願発明を利用することが可能である。特に、NILにおいては、元図形パターンから露光リソグラフィを通して作製したマスターテンプレート上の実図形パターンが、元図形パターンと一致するように、元図形パターンに対して補正を行ってもよい。あるいは、マスターテンプレートからインプリントを通して作製したレプリカテンプレート上の実図形パターンが、元図形パターンと一致するように、元図形パターンに対する補正を行ってもよい。その他にも、先願発明や本願発明は、MEMS(Micro Electro Mechanical Systems)、LSPM(Large-size Photomask)、リードフレーム、メタルマスク、メタルメッシュセンサー、カラーフィルタなど、リソグラフィプロセスを含むすべての製品分野に適用可能である。
<<< §2. 特徴量抽出ユニットの詳細 >>>
続いて、特徴量抽出ユニット120の詳細な処理動作を説明する。図1に示すように、特徴量抽出ユニット120は、元画像作成部121、画像ピラミッド作成部122、特徴量算出部123を有しており、図4の流れ図におけるステップS3の特徴量抽出処理を実行する機能を有している。この特徴量抽出処理は、実際には、図7に示す各手順により実行される。ここで、ステップS31,S32は、元画像作成部121によって実行される手順であり、ステップS33〜S36は、画像ピラミッド作成部122によって実行される手順であり、ステップS37は、特徴量算出部123によって実行される手順である。以下、各部で実行される手順を、具体例を挙げて詳細に説明する。
<2.1 元画像作成部121による処理手順>
元画像作成部121は、与えられた元図形パターン10に基づいて、それぞれ所定の画素値を有する画素の集合体からなる元画像を作成する機能を果たし、図7の流れ図のステップS31,S32を実行する。まず、ステップS31において、元図形パターン10を入力する処理が行われ、続くステップS32において、元画像作成処理が行われる。
§1では、説明の便宜上、ステップS31で入力される元図形パターン10の一例として、図2(a) のような1つの長方形の図形のみからなる単純なパターンを示した。ここでは、より詳細な説明を行うため、図8に示すような5つの図形F1〜F5(矩形)を含む元図形パターン10が与えられた場合を考えてみよう。前述したように、図形パターンの形状補正装置100に与えられる元図形パターン10は、通常、図形の輪郭線を示すベクトルデータになる。したがって、図8では、各図形F1〜F5の内部にハッチングを施して示しているが、実際には、この元図形パターン10は、5つの長方形F1〜F5の各頂点の座標値とこれら各頂点の連結関係を示すベクトルデータとして与えられる。
ステップS32の元画像作成処理は、このようなベクトルデータとして与えられた元図形パターン10に基づいて、画素の集合体からなる元画像Q1のデータ(ラスターデータ)を作成する処理ということになる。具体的には、元画像作成部121は、画素Uの二次元配列からなるメッシュを定義し、このメッシュ上に元図形パターン10を重ね合わせ、個々の画素Uの位置と元図形パターン10を構成する図形F1〜F5の輪郭線の位置との関係に基づいて、個々の画素Uの画素値を決定する処理を行う。
図9は、元画像作成部121において、画素Uの二次元配列からなるメッシュ上に元図形パターン10を重ね合わせる処理が行われた状態を示す平面図である。この例では、縦横ともに画素寸法uをもった画素Uを二次元配列させたメッシュが定義されており、多数の画素Uが、縦横ともにピッチuで並べられている。画素寸法uは、各図形F1〜F5の形状を十分な解像度で表現することができる適切な値に設定される。画素寸法uを小さく設定すればするほど、形状表現の解像度は向上するが、後の処理負担は重くなる。一般に、半導体デバイスを製造するために用いられる元図形パターン10は、極めて微細なパターンになるため、画素寸法uとしては、たとえば、u=5〜20nm程度の値を設定するのが好ましい。
こうして、画素Uの二次元配列が定義されたら、図形F1〜F5の輪郭線の位置との関係に基づいて、個々の画素Uに画素値を定義する。画素値の定義には、いくつかの方法がある。
最も基本的な定義方法は、元図形パターン10に基づいて、各図形F1〜F5の内部領域と外部領域とを認識し、各画素U内における内部領域の占有率を当該画素の画素値とする方法である。図8において、ハッチングが施された領域が各図形F1〜F5の内部領域であり、白い領域が外部領域である。したがって、この方法を採る場合、図9のように重ね合わせた状態において、各画素の画素値は、当該画素内における内部領域(ハッチング領域)の占有率(0〜1)として定義される。このような方法で画素値が定義された画像は、一般に「面積密度マップ」と呼ばれている。
図10は、図9に示す「元図形パターン10+画素の二次元配列」に基づいて作成された面積密度マップM1を示す図である。ここで、各セルは、図9で定義された各画素であり、セル内の数字は各画素に定義された画素値である。なお、空白のセルは、画素値0をもつ画素である(画素値0の図示は省略されている)。この面積密度マップM1において、たとえば、画素値1.0をもつ画素は、図9におけるハッチング領域の占有率が100%の画素であり、画素値0.5をもつ画素は、図9におけるハッチング領域の占有率が50%の画素である。この面積密度マップM1は、基本的に、図形内部を画素値1、図形外部を画素値0で表現した二値画像ということになるが、図形の輪郭線が位置する画素については、内部領域の割合を示す値が画素値として与えられることになるので、全体としてはモノクロの階調画像ということになる。
画素値の別な定義方法として、元図形パターン10に基づいて、各図形F1〜F5の輪郭線を認識し、各画素U内に存在する輪郭線の長さを当該画素の画素値とする方法を採ることもできる。この方法を採る場合、図9のように重ね合わせた状態において、各画素の画素値は、当該画素内に存在する輪郭線の長さの総和として定義される。このような方法で画素値が定義された画像は、一般に「エッジ長密度マップ」と呼ばれている。輪郭線の長さの単位としては、たとえば、画素寸法uを1とした単位を用いればよい。
図11は、図9に示す「元図形パターン10+画素の二次元配列」に基づいて作成されたエッジ長密度マップM2を示す図である。ここでも、各セルは、図9で定義された各画素であり、セル内の数字は各画素内に存在する輪郭線の長さの総和(画素寸法uを1とした長さ)として定義された画素値である。なお、空白のセルは、画素値0をもつ画素である(画素値0の図示は省略されている)。このエッジ長密度マップM2において、たとえば、画素値1.0をもつ画素は、図9において、画素内に存在する輪郭線の長さがuとなる画素である。このエッジ長密度マップM2は、基本的に、輪郭線の密度分布を示すモノクロの階調画像ということになるので、前述した面積密度マップM1とは性質がかなり異なる画像になる。ただ、輪郭線上に定義された評価点Eについての特徴量を抽出する上では、非常に有用な画像になる。
以上、図8に示す元図形パターン10に基づいて、個々の画素の画素値を定義する方法を述べたが、リソグラフィプロセスに用いる元図形パターン10には、図形の内部と外部との境界を示す輪郭線の幾何学的な情報に加えて、更に、各図形に関するドーズ量の情報が付加されることがある。図12は、このようなドーズ量の情報を含んだ元図形パターン10を示す平面図である。図12に示すドーズ量付きの元図形パターン10は、図8に示す元図形パターン10と同様に、各図形F1〜F5の輪郭線の情報を含んでいるが、それに加えて、各図形F1〜F5のそれぞれについて、ドーズ量を定義する情報を含んでいる。
具体的には、図示の例の場合、図形F1〜F3についてはドーズ量100%が定義され、図形F4についてはドーズ量50%が定義され、図形F5についてはドーズ量10%が定義されている。これらのドーズ量は、リソグラフィプロセスの露光工程において、照射する光や電子線の強度(露光の回数によって総エネルギー量を制御する場合も含む)を示すものである。図示の例の場合、図形F1〜F3の内部領域を露光する際には100%の強度で光や電子線を照射するが、図形F4の内部領域を露光する際には50%、図形F5の内部領域を露光する際には10%の強度で光や電子線を照射することになる。このように、露光工程時に、個々の図形ごとにドーズ量を制御するようにすれば、実基板S上に形成される実図形パターン20の寸法を更に細かく調整することができる。
リソグラフィプロセスの露光工程において、このようなドーズ量の制御を行うケースでは、シミュレーションにおいても、ドーズ量を考慮する必要がある。このようなケースでは、元画像の画素値を決定する際に、ドーズ量を考慮した方法を採る必要がある。すなわち、図形の内部と外部との境界を示す輪郭線の情報と、リソグラフィプロセスにおける各図形に関するドーズ量の情報と、を含む元図形パターン10が与えられた場合には、当該元図形パターン10に基づいて、各図形の内部領域と外部領域とを認識し、更に、各図形に関するドーズ量を認識し、各画素内に存在する各図形について「内部領域の占有率と当該図形のドーズ量との積」を求め、当該積の総和を当該画素の画素値とする方法を採ればよい。
この方法を採る場合、図9のように重ね合わせた状態において、各画素の画素値は、当該画素内における特定の図形の内部領域(ハッチング領域)の占有率(0〜1)と当該特定の図形に関するドーズ量の積の総和として定義される。このような方法で画素値が定義された画像は、一般に「ドーズ密度マップ」と呼ばれている。このドーズ密度マップも、全体としてはモノクロの階調画像になる。
図13は、図12に示すドーズ量付きの元図形パターン10に基づいて作成されたドーズ密度マップM3を示す図である。ここで、各セルは、図9で定義された各画素であり、セル内の数字は各画素に定義された画素値である。なお、空白のセルは、画素値0をもつ画素である(画素値0の図示は省略されている)。このドーズ密度マップM3を、図10に示す面積密度マップM1と比較すると、ドーズ量100%が与えられた図形F1〜F3が配置された画素についての画素値に変わりはないが、ドーズ量50%が与えられた図形F4やドーズ量10%が与えられた図形F5が配置された画素についての画素値は、当該ドーズ量に応じた量だけ減じられていることがわかる。これは、実際の露光工程において、図形F4,F5の内部に対して、強度が減じられた光や電子線が照射される現象を示すものである。
以上、元図形パターン10に基づいて、面積密度マップM1、エッジ長密度マップM2、ドーズ密度マップM3という3通りの画像(所定の画素値を有する画素Uの集合体)を作成する例を示した。図7の流れ図におけるステップS32の元画像作成処理では、これら3通りの画像のいずれかを作成して元画像とすればよい。図7では、一例として、面積密度マップM1を元画像Q1とした例が示されている。もちろん、上述した3通り以外の方法で元画像Q1を作成することも可能である。
なお、このステップS32で作成された元画像Q1は、ステップS33のフィルタ処理において、第1番目の準備画像Q1として利用される。ステップS33のフィルタ処理は、後述するように、第k番目の準備画像Qkに画像処理フィルタを作用させて、第k番目の階層画像Pkを作成する処理である。そこで、ステップS32の手順は、パラメータk(k=1,2,3,... )を初期値k=1に設定して、第1番目の準備画像Q1を作成する処理と言うことができる。この第1番目の準備画像Q1は、元図形パターン10に基づいて最初に作成された元画像であり、後述する画像ピラミッド作成工程において最初に用いられる基準の画像ということになる。
<2.2 画像ピラミッド作成部122による処理手順>
続いて、画像ピラミッド作成部122による画像ピラミッドの作成処理の手順を説明する。画像ピラミッド作成部122は、図7のステップS32で作成された元画像Q1(たとえば、図10に示す面積密度マップM1)に基づいて、画素数を小さくする縮小処理を行う機能を有し、それぞれ異なるサイズをもった複数の階層画像からなる画像ピラミッドを作成する画像ピラミッド作成処理を行う。ここで述べる実施例の場合、この画像ピラミッド作成処理は、図7の流れ図のステップS33〜S36に示す手順によって実行される。
ここでは、ステップS31において、図8に示すような元図形パターン10が入力され、ステップS32において、図10に示す面積密度マップM1が元画像Q1として作成された場合を例にとって、具体的な画像ピラミッド作成処理の手順を説明する。
まず、ステップS33では、第k番目の準備画像Qkに画像処理フィルタを作用させて、第k番目の階層画像Pkを作成するフィルタ処理が実行される。このフィルタ処理は、具体的には、たとえば、画像処理フィルタとしてガウシアンフィルタを用いた畳込演算として実行される。図14は、準備画像QkにガウシアンフィルタGF33を用いたフィルタ処理を施すことにより、第k番目の階層画像Pkを作成する手順を示す平面図である。この図14に示されている第k番目の準備画像Qkは、実際には、図10に示す面積密度マップM1と同じものである。
すなわち、図10に示す面積密度マップM1は、便宜上、8×8の画素配列として示され、画素値0の記載が省略されているのに対して、図14に示す準備画像Qkは、10×10の画素配列として示され、画素値0も記載されているが、両者は実質的に同一の画像である。要するに、図14では、フィルタ処理を実行する都合上、図10に示す8×8の画素配列からなる面積密度マップM1の周囲に、画素値0を有する画素を配置して10×10の画素配列としているだけである。この段階では、パラメータkは初期値1であり、図14に示す準備画像Qkは、第1番目の準備画像Q1ということになる。上述したとおり、この第1番目の準備画像Q1は、ステップS32における元画像作成処理で作成された元画像に他ならない。
図14に示すフィルタ処理では、ガウシアンフィルタGF33を用いた畳込演算が実行される。ガウシアンフィルタGF33は、図示のような3×3の画素配列であり、このガウシアンフィルタGF33を、第k番目の準備画像Qkの所定位置に重ね合わせて積和演算処理を行うことにより、第k番目の階層画像Pk(フィルタ処理画像)が得られる。図15は、図14に示すフィルタ処理により得られた第k番目の階層画像Pkを示す平面図である。この第k番目の階層画像Pkは、第k番目の準備画像Qkと同様に10×10の画素配列からなり、個々の画素の画素値は、ガウシアンフィルタGF33を用いた積和演算によって得られた値になる。
たとえば、図15に示す第k番目の階層画像Pkにおいて、太枠で囲った画素(第4行第3列の画素)に着目すると、この着目画素には画素値0.375が与えられている。当該画素値は、図14に太枠で囲った3×3の画素配列(第4行第3列の画素を中心とした9画素)上に、図示のガウシアンフィルタGF33を重ね、9画素のそれぞれについて、同位置に重ねられた画素同士の画素値の積を求め、9個の積の総和として求められたものである。具体的には、着目画素の画素値0.375は、「(1/16×0)+(2/16×0.25)+(1/16×0.5)+(2/16×0)+(4/16×0.5)+(2/16×1.0)+(1/16×0)+(2/16×0.25)+(1/16×0.5)」なる積和演算値として求められる。このような積和演算によるフィルタ処理は、画像についての畳込演算処理として一般的に知られた処理であるため、ここでは詳しい説明は省略する。
なお、図14に示すフィルタ処理では、画像処理フィルタとして、図16(a) に示すような3×3の画素配列からなるガウシアンフィルタGF33を用いた畳込演算を行っているが、図16(b) に示すような3×3の画素配列からなるラプラシアンフィルタLF33を用いた畳込演算を行うようにしてもよい。一般に、ガウシアンフィルタを用いたフィルタ処理は、画像の輪郭をボケさせる効果を与え、ラプラシアンフィルタを用いたフィルタ処理は、画像の輪郭を強調させる効果を与えることが知られている。いずれのフィルタ処理を採用しても、第k番目の準備画像Qkに対して若干特徴が異なる第k番目の階層画像Pkを得ることができるので、それぞれ異なる特徴をもった複数の階層画像からなる画像ピラミッドを作成する上で効果的である。
もちろん、ステップS33のフィルタ処理に用いる画像処理フィルタは、図16(a) に示すガウシアンフィルタGF33や図16(b) に示すラプラシアンフィルタLF33に限定されるものではなく、この他にも種々の画像処理フィルタを利用することが可能である。また、用いる画像処理フィルタのサイズも、3×3の画素配列に限定されることなく、任意のサイズの画像処理フィルタを利用することが可能である。たとえば、図17(a) に示すような5×5の画素配列からなるガウシアンフィルタGF55や、図17(b) に示すような5×5の画素配列からなるラプラシアンフィルタLF55を利用してもよい。
こうして、図7の手順におけるステップS33のフィルタ処理が完了すると、ステップS34において、パラメータkが所定の設定値nに到達したか否かが判断され、k<nの場合には、ステップS35の縮小処理が実行される。この縮小処理は、所定の対象画像を元に、当該対象画像よりも画素数の小さな画像を作成する処理である。ここに示す実施例の場合、ステップS33のフィルタ処理で作成された第k番目の階層画像Pkに対して縮小処理を実行することにより、第(k+1)番目の準備画像Q(k+1)を作成する処理が実行される。したがって、準備画像Q(k+1)は、階層画像Pkよりもサイズが小さな画像(画素配列における縦横の画素数が小さな画像)になる。
このような画像についての縮小処理は、「プーリング処理」とも呼ばれ、ステップS35で行う縮小処理としては、たとえば、「アベレージ・プーリング処理」を採用することができる。図18は、第k番目の階層画像Pkに対して、アベレージ・プーリング処理を施すことにより、縮小画像として、第(k+1)番目の準備画像Q(k+1)を作成する手順を示す平面図である。具体的には、図18(a) に示す4×4の画素配列からなる階層画像Pkにアベレージ・プーリング処理(縮小処理)を施すことにより、図18(b) に示すような2×2の画素配列からなる準備画像Q(k+1)が縮小画像として作成されている。
図18に示すアベレージ・プーリング処理は、2×2の画素配列からなる4個の画素を1つの画素に変換(縮小)する処理であり、元の4個の画素の画素値の平均値を、変換後の1つの画素の画素値とすることにより、縮小画像が作成されることになる。たとえば、図18(a) に示す階層画像Pkの左上に配置されている2×2の画素配列からなる4個の画素(太枠内の画素)は、図18(b) の準備画像Q(k+1)上では太枠で示す1画素に変換(縮小)されている。この変換(縮小)後の太枠画素の画素値0.5は、元の4個の画素の画素値の平均値になっている。
一方、図19は、第k番目の階層画像Pkに対して、マックス・プーリング処理を施すことにより、縮小画像として、第(k+1)番目の準備画像Q(k+1)を作成する手順を示す平面図である。具体的には、図19(a) に示す4×4の画素配列からなる階層画像Pkにマックス・プーリング処理(縮小処理)を施すことにより、図19(b) に示すような2×2の画素配列からなる準備画像Q(k+1)が縮小画像として作成されている。
図19に示すマックス・プーリング処理は、図18に示すアベレージ・プーリング処理と同様に、2×2の画素配列からなる4個の画素を1つの画素に変換(縮小)する処理であるが、元の4個の画素の画素値の最大値を、変換後の1つの画素の画素値とすることにより、縮小画像が作成されることになる。たとえば、図19(a) に示す階層画像Pkの左上に配置されている2×2の画素配列からなる4個の画素(太枠内の画素)は、図19(b) の準備画像Q(k+1)上では太枠で示す1画素に変換(縮小)されている。この変換(縮小)後の太枠画素の画素値1.0は、元の4個の画素の画素値の最大値になっている。
なお、図18および図19に示す各プーリング処理は、2×2の画素配列からなる4個の画素を単一の画素に変換する縮小処理であるが、もちろん、3×3の画素配列からなる9個の画素を単一の画素に変換する縮小処理を行うことも可能であるし、3×2の画素配列からなる6個の画素を単一の画素に変換する縮小処理を行うことも可能である。
結局、画像ピラミッド作成部122は、ステップS35の縮小処理として、複数m個の隣接画素を、これら複数m個の隣接画素の画素値の平均値を画素値とする単一の画素に置き換えるアベレージ・プーリング処理を実行することにより縮小画像を作成することもできるし、複数m個の隣接画素を、これら複数m個の隣接画素の画素値の最大値を画素値とする単一の画素に置き換えるマックス・プーリング処理を実行することにより縮小画像を作成することもできる。もちろん、ステップS35の縮小処理としては、その他の縮小処理を行うことも可能である。要するに、階層画像Pkに対して画素数を小さくするような変換を施すことにより、サイズの小さな準備画像Q(k+1)を作成することができる処理、別言すれば、「画素数が小さくなった縮小画像」を作成する処理であれば、ステップS35において、どのような縮小処理を実行してもかまわない。
こうして、ステップS35の縮小処理が完了したら、ステップS36において、パラメータkが1だけ増加され、再びステップS33のフィルタ処理が実行される。結局、上述のように、k=1として第1番目の準備画像Q1(元画像)に対してステップS33でフィルタ処理を行うことにより第1番目の階層画像P1が作成され、続いて、ステップS35で、この階層画像P1に対して縮小処理を行うことにより第2番目の準備画像Q2が作成され、ステップS36でk=2に更新され、再びステップS33において、第2番目の準備画像Q2に対するフィルタ処理を行うことにより第2番目の階層画像P2が作成されることになる。
このような繰り返し手順が、ステップS34において、k=nと判断されるまで繰り返し実行される。ここで、nの値としては、画像ピラミッドの階層数(すなわち、画像ピラミッドを構成する階層画像の総数)として適切な値を予め設定しておけばよい。nの値を大きく設定すればするほど、1つの評価点Eについて抽出される特徴量の数nが多くなるので、より正確なシミュレーションが可能になるが、演算負担は増大する。また、ステップS35の縮小処理を繰り返すほど、画像のサイズはどんどん小さくなってゆくので、nの値を大きく設定しすぎると、ステップS35の縮小処理を行うことができなくなる。したがって、実用上は、元画像Q1のサイズや演算負担を考慮して、nの値を適切に設定すればよい。
こうして、ステップS34において、k=nと判断されると、画像ピラミッド作成部122による処理は完了である。この時点で、図6に示すように、複数n通りの階層画像P1〜Pnからなる画像ピラミッドPPが作成されたことになる。そこで、ステップS34からステップS37へと進み、特徴量算出処理が実行される。
図20は、画像ピラミッド作成部122において、n通りの階層画像P1〜Pnからなる画像ピラミッドPPを作成する手順(図7のステップS33〜S36の手順)を示す平面図である。図の上段左に示す第1の準備画像Q1は、ステップS32の元画像作成処理において、k=1として作成された元画像であり、個々の画素には、たとえば図10に示す面積密度マップM1のような画素値が定義されている。上述したとおり、ステップS33では、この第1の準備画像Q1に対してフィルタ処理が行われる。具体的には、たとえば、3×3の画素配列からなるガウシアンフィルタGF33を用いた畳込演算により、図20の上段右に示すような第1の階層画像P1が作成される。この第1の階層画像P1のサイズは、第1の準備画像Q1のサイズと同じである。
続いて、ステップS35の縮小処理において、第1の階層画像P1に対する縮小処理(たとえば、アベレージ・プーリング処理)が行われ、図20の中段左に示す第2の準備画像Q2が作成される。この第2の準備画像Q2のサイズは、第1の階層画像P1のサイズよりも小さなものになる。続いて、ステップS36において、パラメータkの値が2に更新され、再びステップS33のフィルタ処理が実行される。すなわち、3×3の画素配列からなるガウシアンフィルタGF33を用いた畳込演算により、図20の中段右に示すような第2の階層画像P2が作成される。この第2の階層画像P2のサイズは、第2の準備画像Q2のサイズと同じである。
そして再びステップS35の縮小処理が実行される。すなわち、第2の階層画像P2に対する縮小処理(たとえば、アベレージ・プーリング処理)が行われ、図20の下段左に示す第3の準備画像Q3が作成される。この第3の準備画像Q3のサイズは、第2の階層画像P2のサイズよりも小さなものになる。続いて、ステップS36において、パラメータkの値が3に更新され、再びステップS33のフィルタ処理が実行される。すなわち、3×3の画素配列からなるガウシアンフィルタGF33を用いた畳込演算により、図20の下段右に示すような第3の階層画像P3が作成される。この第3の階層画像P3のサイズは、第3の準備画像Q3のサイズと同じである。
このような処理が、パラメータk=nになるまで繰り返し実行され、最終的に、第nの準備画像Qnと第nの階層画像が得られることになる。こうして、第1の階層画像P1〜第nの階層画像Pnまでのサイズが異なるn通りの階層画像によって、画像ピラミッドPPが構成されることになる。
結局、図7の手順に示す実施例の場合、画像ピラミッド作成部122は、元画像Q1もしくは縮小画像Q(k+1)に対して、所定の画像処理フィルタを用いたフィルタ処理を行う機能を有しており、このフィルタ処理と縮小処理とを交互に実行することにより、複数の階層画像P1〜Pnからなる画像ピラミッドPPを作成することになる。
より具体的には、画像ピラミッド作成部122は、元画像作成部121によって作成された元画像を第1の準備画像Q1とし、第kの準備画像Qk(但し、kは自然数)に対するフィルタ処理によって得られる画像を第kの階層画像Pkとし、第kの階層画像Pkに対する縮小処理によって得られる画像を第(k+1)の準備画像Q(k+1)として、第nの階層画像Pnが得られるまでフィルタ処理と縮小処理とを交互に実行することにより、第1の階層画像P1〜第nの階層画像Pnを含む複数n通りの階層画像からなる画像ピラミッドPPを作成することになる。
先願発明における画像ピラミッドPPは、それぞれ異なるサイズをもった複数の階層画像によって構成されるものであればよいので、図7の流れ図に示す手順において、ステップS35の縮小処理は必須の処理になるが、ステップS33のフィルタ処理は必ずしも必要な処理ではない。ただ、フィルタ処理を行うと、個々の画素の画素値に周囲の画素の画素値の影響を作用させることができる。このため、フィルタ処理を加えることにより、バリエーションに富んだ複数の階層画像を作成することができ、より多様な情報を含んだ特徴量を抽出することができるようになり、結果的に、より正確なシミュレーションが可能になる。したがって、実用上は、図7の流れ図に示す手順のように、縮小処理とフィルタ処理とを交互に実行するようにするのが好ましい。
<2.3 特徴量算出部123による処理手順>
次に、特徴量算出部123による特徴量算出処理の手順を説明する。特徴量算出部123は、図7のステップS37に示すとおり、画像ピラミッドPPを構成する各階層画像P1〜Pnに基づいて、各評価点Eについての特徴量x1〜xnを算出する処理を行う。ここでは、この特徴量x1〜xnの算出処理の手順を具体的に説明する。
図21は、特徴量算出部123において、各階層画像P1〜Pnから特定の評価点Eについての特徴量x1〜xnを算出する手順を示す平面図である。具体的には、図21(a) 〜(c) の左側には、それぞれ第1の階層画像P1,第2の階層画像P2,第3の階層画像P3の各画素配列に、元図形パターン10を構成する長方形(太枠で示す)を重ねた状態が示されており、図21(a) 〜(c) の右側には、各階層画像P1,P2,P3に基づいて、特定の評価点Eについての特徴量x1,x2,x3を算出する原理が示されている。
図21に示す各階層画像P1,P2,P3は、画像ピラミッドPPの各階層を構成する画像の一部である。実際には、P1〜Pnまでのn通りの階層画像が用意され、n組の特徴量x1〜xnが抽出されることになるが、図21では、説明の便宜上、3枚の階層画像P1,P2,P3から3組の特徴量x1,x2,x3を抽出する様子が示されている。
ここで、第1の階層画像P1は、元画像Q1(第1の準備画像)に対してフィルタ処理を施すことによって得られた画像であり、図示の例では、16×16の画素配列を有している。これに対して、第2の階層画像P2は、第1の階層画像P1に対して縮小処理およびフィルタ処理を施すことによって得られた画像であり、図示の例では、8×8の画素配列を有している。また、第3の階層画像P3は、第2の階層画像P2に対して縮小処理およびフィルタ処理を施すことによって得られた画像であり、図示の例では、4×4の画素配列を有している。
図21では、各階層画像P1,P2,P3を、その輪郭が同じ大きさの正方形になるように描いているため、いずれも同じ大きさの画像になっているが、画素配列としては、16×16,8×8,4×4と徐々に縮小しており、画像のサイズは徐々に減少したものになっている。ただ、図21では、各階層画像P1,P2,P3の外枠を、同じ大きさの正方形として描いているため、画素の大きさが徐々に大きくなっている。別言すれば、画像の解像度は、階層画像P1,P2,P3の順に低下してゆき、徐々に粗い画像になってゆく。
上述したとおり、図には、元図形パターン10を構成する長方形が太枠で描かれている。各階層画像P1,P2,P3は、いずれも画素の集合体からなるラスター画像であるので、図に太枠で描かれた長方形の輪郭線は、実際には、輪郭線そのものの情報として含まれているわけではなく、個々の画素の画素値の情報として含まれていることになる。ただ、図21では、説明の便宜上、各階層画像P1,P2,P3上の長方形の位置を太線で示してある。ここでは、この長方形の輪郭線上に定義された特定の評価点Eについて、特徴量x1〜xnを抽出する処理を説明する。
図21(a) 〜(c) を見ればわかるとおり、各階層画像P1,P2,P3に対して、太枠で示す長方形は同じ相対位置に配置されており、特定の評価点Eも同じ相対位置に配置されている。ここに示す実施例の場合、1つの評価点Eについての特徴量は、その近傍の画素の画素値に基づいて算出される。
まず、図21(a) に示すように、第1の階層画像P1に基づいて、評価点Eについての特徴量x1が抽出される。具体的には、特徴量算出部123は、図21(a) の右側に示すように、第1の階層画像P1を構成する画素から、評価点Eの近傍に位置する4個の画素(図にハッチングを施した画素)を着目画素として抽出し、これら4個の着目画素の画素値を用いた演算により特徴量x1を算出する。同様に、図21(b) の右側に示すように、第2の階層画像P2を構成する画素から、評価点Eの近傍に位置する4個の画素(図にハッチングを施した画素)を着目画素として抽出し、これら4個の着目画素の画素値を用いた演算により特徴量x2を算出する。また、図21(c) の右側に示すように、第3の階層画像P3を構成する画素から、評価点Eの近傍に位置する4個の画素(図にハッチングを施した画素)を着目画素として抽出し、これら4個の着目画素の画素値を用いた演算により特徴量x3を算出する。
このような処理を、第4の階層画像P4〜第nの階層画像Pnについても行えば、特定の評価点Eについて、n組の特徴量x1〜xnを抽出することができる。これらn組の特徴量x1〜xnは、いずれも元図形パターン10上の同じ評価点Eについて、その周囲の特徴を示すパラメータになるが、元図形パターン10から影響を受ける範囲が互いに異なっている。たとえば、第1の階層画像P1から抽出された特徴量x1は、図21(a) の右側の図にハッチングが施された狭い領域内の特徴を示す値になるが、第2の階層画像P2から抽出された特徴量x2は、図21(b) の右側の図にハッチングが施されたより広い領域内の特徴を示す値になり、第3の階層画像P3から抽出された特徴量x3は、図21(c) の右側の図にハッチングが施された更に広い領域内の特徴を示す値になる。
前述したように、ある1つの評価点Eについてのプロセスバイアスyの値は、前方散乱,後方散乱など、様々なスケール感をもった現象が融合して決まる値になる。したがって、同一の評価点Eについての特徴量として、その周囲のごく狭い範囲に関する特徴量x1から、より広い範囲に関する特徴量xnに至るまで、多様な特徴量x1〜xnを抽出すれば、影響範囲がそれぞれ異なる様々な現象を考慮した正確なシミュレーションを行うことができる。図21には、1つの評価点Eについて、n組の特徴量x1〜xnを抽出する処理が示されているが、実際には、元図形パターン10上に定義された多数の評価点のそれぞれについて、n組の特徴量x1〜xnが同様の手順によって抽出されることになる。
評価点Eの近傍にある着目画素の画素値に基づいて特徴量xを算出する方法としては、着目画素の画素値の単純平均を特徴量xとする単純な方法を採ることができる。たとえば、図21(a) に示すように、第1の階層画像P1から評価点Eについての特徴量x1を抽出するには、図にハッチングを施して示した着目画素(評価点Eの近傍にある4個の画素)の画素値の単純平均を特徴量x1とすればよい。ただ、より正確な特徴量を算出するためには、評価点Eと各着目画素との距離に応じた重みを考慮した加重平均を求め、この加重平均の値を特徴量x1とするのが好ましい。
図22は、図21に示す特徴量算出手順で用いる具体的な演算方法(加重平均の値を特徴量とする演算方法)を示す図である。ここでは、特定の評価点Eの近傍に位置する着目画素として、4個の画素A,B,C,Dが選択された例が示されている。具体的には、処理対象となる階層画像P上において、評価点Eに近い順に合計4個の画素を選択する処理を行えば、着目画素A,B,C,Dを決定することができる。そこで、この4個の着目画素A,B,C,Dの画素値について、評価点Eと各画素との距離に応じた重みを考慮した加重平均を特徴量xとする演算を行えばよい。
図22(a) には、各着目画素A,B,C,Dの中心点にx印が表示され、これらx印を連結する破線が描かれている。各着目画素A,B,C,Dの画素寸法は縦横ともにuであり、上記破線は、この画素寸法uをもった画素を半分に分割する分割線になっている。ここに示す実施例の場合、評価点Eと各着目画素A,B,C,Dとの距離として、評価点Eと各着目画素A,B,C,Dの中心点との横方向距離および縦方向距離を採用している。具体的には、図22(a) に示す例の場合、着目画素Aについては、横方向距離a,縦方向距離cになり、着目画素Bについては、横方向距離b,縦方向距離cになり、着目画素Cについては、横方向距離a,縦方向距離dになり、着目画素Dについては、横方向距離b,縦方向距離dになる。
この場合、評価点Eの特徴量xは、各着目画素A,B,C,Dの画素値を同じ符号A,B,C,Dで表し、画素寸法u(画素ピッチ)を1とすれば、図22(b) に示すとおり、
G=(A・b+B・a)/2
H=(C・b+D・a)/2
x=(G・d+H・c)/2
なる演算によって求めることができる。
もちろん、4個の着目画素A,B,C,Dの画素値から特徴量xを算出する方法は、この図22に例示する方法に限定されるものではなく、評価点Eの近傍の画素の画素値を反映した特徴量xを算出することができるのであれば、この他にも様々な算出方法を採ることが可能である。また、図21および図22に例示する算出方法では、着目画素として、評価点Eの近傍に位置する4個の画素を選択しているが、特徴量xの算出に利用する着目画素の数は4個に限定されるものではない。たとえば、評価点Eの近傍に位置する3×3の画素配列を構成する9個の画素を着目画素として選択し、これら9個の着目画素の画素値について、評価点Eとの距離に応じた重みを考慮した加重平均を求め、これを評価点Eについての特徴量xとすることも可能である。
一般論として、特徴量算出部123は、特定の階層画像P上の特定の評価点Eについての特徴量xを算出する際に、当該特定の階層画像Pを構成する画素から、当該特定の評価点Eに近い順に合計j個の画素を着目画素として抽出し、抽出したj個の着目画素の画素値について、当該特定の評価点Eと各着目画素との距離に応じた重みを考慮した加重平均を求める演算を行い、得られた加重平均の値を特徴量xとすることができる。
<2.4 特徴量抽出処理の変形例>
ここでは、これまで述べてきた特徴量抽出処理の手順についての変形例をいくつか述べておく。
(1) 差分画像Dkを階層画像とする変形例
§2.2では、画像ピラミッド作成部122による画像ピラミッドPPの作成処理手順として、図7の流れ図に示すステップS33〜S36の処理を例示した。この処理は、元画像Q1(第1の準備画像)を出発点として、フィルタ処理と縮小処理を交互に実行し、図20に示すような手順により、フィルタ処理によって作成されるn枚の画像(以下、フィルタ処理画像と呼ぶ)を、そのまま階層画像P1〜Pnとして採用し、画像ピラミッドPPを作成する処理である。
これに対して、ここで述べる変形例は、図7の流れ図に示すステップS33〜S36の処理を基本としつつ、更に、ステップS33のフィルタ処理が完了した時点で、フィルタ処理により得られた第kのフィルタ処理画像Pk(§2.2では、第kの階層画像Pkと呼んでいた画像)から第kの準備画像Qkを減じる差分演算「Pk−Qk」を行って第kの差分画像Dkを求める処理が付加される。別言すれば、ここで述べる変形例では、図7の流れ図に示すステップS33〜S36の処理がそのまま実行されることになるが、更に、第kのフィルタ処理画像Pkから第kの準備画像Qkを減じる差分演算「Pk−Qk」が余分に行われることになる。
ここで、差分演算「Pk−Qk」は、第kのフィルタ処理画像Pkと第kの準備画像Qkとについて、画素配列上で同じ位置に配置された画素を対応画素と定義し、画像Pk上の各画素の画素値から画像Qk上の対応画素の画素値を減算して差分をとり、得られた差分を画素値とする新たな画素の集合体からなる差分画像Dkを求める処理である。
図23は、このような差分演算「Pk−Qk」によって、n通りの差分画像D1〜Dnからなる画像ピラミッドPDを作成する手順を示す平面図である。ここで、上段右側に示す第1の階層画像D1は、差分演算「P1−Q1」によって得られる差分画像であり、具体的には、図20の上段右側に示す第1のフィルタ処理画像P1(図20では、第1の階層画像P1と呼ばれている)から上段左側に示す第1の準備画像Q1を減じる差分演算(対応位置にある画素同士の画素値の引き算)によって算出される。
同様に、図23の中段右側に示す第2の階層画像D2は、差分演算「P2−Q2」によって得られる差分画像であり、具体的には、図20の中段右側に示す第2のフィルタ処理画像P2(図20では、第2の階層画像P2と呼ばれている)から中段左側に示す第2の準備画像Q2を減じる差分演算によって算出される。また、図23の下段右側に示す第3の階層画像D3は、差分演算「P3−Q3」によって得られる差分画像であり、具体的には、図20の下段右側に示す第3のフィルタ処理画像P3(図20では、第3の階層画像P3と呼ばれている)から下段左側に示す第3の準備画像Q3を減じる差分演算によって算出される。以下、同様の差分演算が行われ、最終的に、差分演算「Pn−Qn」によって得られる差分画像が、第nの階層画像Dnということになる。
§2.2で述べた実施例では、図20に示すとおり、第1の階層画像(第1のフィルタ処理画像)P1〜第nの階層画像(第nのフィルタ処理画像)Pnによって画像ピラミッドPPが構成されていたが、ここで述べる変形例では、図23に示すとおり、第1の階層画像(第1の差分画像)D1〜第nの階層画像(第nの差分画像)Dnによって画像ピラミッドPDが構成されることになる。
上述したように、ここで述べる変形例を実施するには、§2.2で述べた実施例の手順に、更に、差分演算の手順を付加すればよい。具体的には、画像ピラミッド作成部122は、元画像作成部121によって作成された元画像を第1の準備画像Q1とし、第kの準備画像Qk(但し、kは自然数)に対するフィルタ処理によって得られるフィルタ処理画像Pkと第kの準備画像Qkとの差分画像Dkを求め、当該差分画像Dkを第kの階層画像Dkとし、第kのフィルタ処理画像Pkに対する縮小処理によって得られる画像を第(k+1)の準備画像Q(k+1)として、第nの階層画像Dnが得られるまでフィルタ処理と縮小処理とを交互に実行することにより、第1の階層画像D1〜第nの階層画像Dnを含む複数n通りの階層画像からなる画像ピラミッドPDを作成すればよい。
結局、この変形例において画像ピラミッドPDの第k番目の階層を構成する第kの階層画像Dkは、フィルタ処理後の画像(フィルタ処理画像Pk)とフィルタ処理前の画像(準備画像Qk)との差分画像ということになり、各画素の画素値は、フィルタ処理前後の画素値の差に相当する。すなわち、§2.2で述べた実施例における第kの階層画像Pkが、フィルタ処理後の画像自体を示しているのに対して、ここで述べる変形例における第kの階層画像Dkは、フィルタ処理によって生じた差を示すことになる。このように、§2.2で述べた実施例で作成される画像ピラミッドPPと、ここで述べた変形例で作成される画像ピラミッドPDとは、その構成要素となる階層画像の意味合いが大きく異なることになるが、いずれも評価点Eについての何らかの特徴を示す画像である点に変わりはない。したがって、ここで述べた変形例で作成される各階層画像D1〜Dnからも、特徴量の抽出を行うことが可能であり、本変形例における特徴量算出部123は、各階層画像D1〜Dnから特徴量x1〜xnを抽出する処理を行うことになる。
(2) 複数通りのアルゴリズムにより複数通りの画像ピラミッドを作成する変形例
§2.2で述べた実施例では、図20に示すとおり、元画像(第1の準備画像Q1)に対してフィルタ処理および縮小処理を交互に実行することにより各フィルタ処理画像P1〜Pnを求め、これら各フィルタ処理画像P1〜Pnをそのままn通りの階層画像P1〜Pnとするアルゴリムにより、画像ピラミッドPPが作成されている。これに対して、§2.4(1) で述べた差分画像Dkを階層画像とする変形例では、図23に示すとおり、フィルタ処理画像Pkと準備画像Qkとの差分演算を行うことにより各差分画像D1〜Dnを求め、これら各差分画像D1〜Dnをn通りの階層画像D1〜Dnとするアルゴリムにより、画像ピラミッドPDが作成されている。
また、フィルタ処理に用いる画像フィルタには、図16や図17に示すように様々な種類があり、縮小処理(プーリング処理)の方法にも、図18や図19に示すように様々な種類がある。このように、出発点が同じ元画像(第1の準備画像Q1)であったとしても、採用するアルゴリズムによって、得られる画像ピラミッドを構成する各階層画像の内容は異なってくる。しかも、先願発明を実行する上で、利用する画像ピラミッドは必ずしも1つである必要はなく、複数通りのアルゴリズムにより複数の画像ピラミッドを作成し、個々の画像ピラミッドからそれぞれ特徴量を抽出することも可能である。
すなわち、画像ピラミッド作成部122に、1つの元画像(第1の準備画像Q1)について、互いに異なる複数通りのアルゴリズムに基づく画像ピラミッド作成処理を行う機能をもたせておき、複数通りの画像ピラミッドが作成されるようにしてもよい。この場合、特徴量算出部123は、この複数通りの画像ピラミッドのそれぞれを構成する各階層画像について、評価点の位置に応じた画素(評価点の周囲に位置する画素)の画素値に基づいて特徴量を算出する処理を行うようにすればよい。
たとえば、画像ピラミッド作成部122が画像ピラミッド作成処理を行う際に、主アルゴリズムとして、§2.2で述べた実施例のアルゴリズムを採用すれば、図20に示すように、n通りの主階層画像P1〜Pn(フィルタ処理画像)によって構成される主画像ピラミッドPPを作成することができ、副アルゴリズムとして、§2.4(1) で述べた差分画像Dkを階層画像とする変形例のアルゴリズムを採用すれば、図23に示すように、n通りの副階層画像D1〜Dn(差分画像)によって構成される副画像ピラミッドPDを作成することができる。したがって、画像ピラミッド作成部122が、上記2通りのアルゴリズムを用いて画像ピラミッド作成処理を行うようにすれば、主画像ピラミッドPPと副画像ピラミッドPDとの2通りの画像ピラミッドを作成することができる。
ここで、図14に例示するようなガウシアンフィルタを用いたフィルタ処理により作成された主画像ピラミッドPPは、ガウシアンピラミッドと呼ぶことができる。また、差分画像を用いて構成された副画像ピラミッドPDは、ラプラシアンピラミッドと呼ぶことができる。ガウシアンピラミッドとラプラシアンピラミッドは、互いに性質が大きく異なる画像ピラミッドになるので、これらを主画像ピラミッドPPおよび副画像ピラミッドPDとして採用し、2通りの画像ピラミッドを利用して特徴量の抽出を行うようにすれば、より多様性をもった特徴量の抽出が可能になる。
一方、特徴量算出部123が、主画像ピラミッドPPを構成する主階層画像P1〜Pnおよび副画像ピラミッドPDを構成する副階層画像D1〜Dnについて、それぞれ評価点Eの近傍の画素の画素値に基づいて特徴量を算出する処理を行うようにすれば、主階層画像P1〜Pnから算出された特徴量xp1〜xpnと副階層画像D1〜Dnから算出された特徴量xd1〜xdnとが得られる。すなわち、1つの評価点Eについて、合計2n個の特徴量が抽出されることになる。この場合、推定演算部132に対しては、1つの評価点Eについての特徴量が、2n次元ベクトルとして与えられることになるので、より正確な推定演算を行うことが可能になる。
結局、上述した変形例を実施するには、画像ピラミッド作成部122が、元画像作成部121によって作成された元画像を第1の準備画像Q1とし、第kの準備画像Qk(但し、kは自然数)に対するフィルタ処理によって得られる画像を第kの主階層画像Pkとし、第kの主階層画像Pkに対する縮小処理によって得られる画像を第(k+1)の準備画像Q(k+1)として、第nの主階層画像Pnが得られるまでフィルタ処理と縮小処理とを交互に実行することにより、第1の主階層画像P1〜第nの主階層画像Pnを含む複数n通りの階層画像からなる主画像ピラミッドを作成し、更に、第kの主階層画像Pkと第kの準備画像Qkとの差分画像Dkを求め、当該差分画像Dkを第kの副階層画像Dkとすることにより、第1の副階層画像D1〜第nの副階層画像Dnを含む複数n通りの階層画像からなる副画像ピラミッドを作成するようにすればよい。
また、特徴量算出部123については、主画像ピラミッドPPおよび副画像ピラミッドPDを構成する各階層画像について、評価点Eの近傍の画素の画素値に基づいて特徴量を算出するようにすればよい。そうすれば、1つの評価点Eについての特徴量として、2n次元ベクトルを抽出することが可能になり、より正確な推定演算を行うことが可能になる。
(3) 複数通りの元画像を作成して複数通りの画像ピラミッドを作成する変形例
上述した§2.4(2) では、同一の元画像に対して、複数通りのアルゴリズムを適用することにより、複数通りの画像ピラミッドを作成する変形例を述べた。ここでは、複数通りの元画像を作成して複数通りの画像ピラミッドを作成する変形例を述べる。
先願発明に係る図形パターンの形状推定装置100′では、図1に示すように、元画像作成部121が、与えられた元図形パターン10に基づいて元画像を作成する処理を行う。ここで作成される元画像としては、§2.1で述べたとおり、面積密度マップM1(図10)や、エッジ長密度マップM2(図11)や、ドーズ密度マップM3(図13)など、様々な形態の画像を採用することができる。
別言すれば、元画像作成部121は、元図形パターン10に基づいて元画像を作成する際に、様々な作成アルゴリズムを採用することができ、いずれのアルゴリズムを採用したかによって、内容の異なる様々な元画像を作成することができる。たとえば、図10に示す面積密度マップM1,図11に示すエッジ長密度マップM2,図13に示すドーズ密度マップM3は、いずれも同一の元図形パターン10に基づいて作成された画像であるが、個々の画素のもつ画素値は相互に異なっており、それぞれ異なる画像になっている。あるいは、同一の元図形パターン10に基づいて、画素サイズ(1画素の寸法)およびマップサイズ(縦横に並んだ画素の数)が異なる複数の密度マップ(要するに、解像度が異なる複数のマップ)を準備し、これら複数の密度マップのそれぞれを元画像として複数の画像ピラミッドを作成してもよい。もちろん、理論的には、画素サイズが小さく、マップサイズが大きな密度マップ(高解像度の密度マップ)を元画像として用いるのが理想的であるが、計算機のもつメモリは有限であるため、実用上は、画素サイズおよびマップサイズが異なる複数の密度マップを元画像として用いるのが好ましい。
そこで、元画像作成部121に、互いに異なる複数通りのアルゴリズムに基づく元画像作成処理を行い、複数通りの元画像を作成する機能をもたせておき、画像ピラミッド作成部122に、この複数通りの元画像に基づいてそれぞれ別個独立した画像ピラミッドを作成する処理を行う機能をもたせておけば、複数通りの画像ピラミッドを作成することができる。そして、特徴量算出部123に、この複数通りの画像ピラミッドのそれぞれを構成する各階層画像について、評価点Eの近傍の画素の画素値に基づいて特徴量を算出する機能をもたせておけば、より高次元のベクトルからなる特徴量を抽出することが可能になり、より正確な推定演算を行うことが可能になる。
たとえば、元画像作成部121によって、図10に示す面積密度マップM1からなる第1の元画像と、図11に示すエッジ長密度マップM2からなる第2の元画像と、図13に示すドーズ密度マップM3からなる第3の元画像と、を作成する機能をもたせておけば、画像ピラミッド作成部122は、この3通りの元画像に基づいて、3組の別個独立した画像ピラミッドを作成することができる。いずれの画像ピラミッドも、同一の元図形パターン10に基づいて作成された画像ピラミッドである。特徴量算出部123は、この3通りの画像ピラミッドのそれぞれを構成する各階層画像について、評価点Eの近傍の画素の画素値に基づいて特徴量を算出する処理を行うことができる。1つの画像ピラミッドから、n個の特徴量x1〜xnを抽出することにすれば、同一の評価点Eについて、合計3n個の特徴量を抽出することが可能になる。すなわち、1つの評価点Eについての特徴量として、3n次元ベクトルを与えることができるので、より正確な推定演算を行うことが可能になる。
もちろん、ここで述べた変形例に、上述した§2.4(2) の変形例を組み合わせることも可能である。§2.4(2) で述べたとおり、画像ピラミッド作成部122が、画像ピラミッドを作成する際に、異なる2種類のアルゴリズムを採用すれば、主画像ピラミッドPPと副画像ピラミッドPDとの2通りの画像ピラミッドを作成することができる。そこで、上記3通りの元画像のそれぞれに基づいて、主画像ピラミッドPPと副画像ピラミッドPDとの2通りの画像ピラミッドを作成すれば、同一の元図形パターン10に基づいて合計6組の画像ピラミッドを作成することができるので、1つの評価点Eについての特徴量として、6n次元ベクトルを与えることができる。
<<< §3. バイアス推定ユニットの詳細 >>>
ここでは、バイアス推定ユニット130の詳細な処理動作を説明する。図1に示すように、バイアス推定ユニット130は、特徴量入力部131と推定演算部132を有しており、図4の流れ図におけるステップS4のプロセスバイアス推定処理を実行する機能を有している。図6に示す実施例の場合、1つの評価点Eについて、x1〜xnなる特徴量(n次元ベクトル)が特徴量入力部131に入力され、推定演算部132による推定演算が実行され、評価点Eについてのプロセスバイアスの推定値yが求められている。図6に示す実施例では、推定演算部132として、ニューラルネットワークが用いられている。そこで、以下、このニューラルネットワークの詳細な構成および動作を説明する。
<3.1 ニューラルネットワークによる推定演算>
ニューラルネットワークは、近年、人工知能の根幹をなす技術として注目されており、画像処理をはじめとする様々な分野で利用されている。このニューラルネットワークは、生物の脳の構造を模したコンピュータ上での構築物であり、ニューロンとそれを繋ぐエッジによって構成される。
図24は、図1に示す推定演算部132として、ニューラルネットワークを利用した実施例を示すブロック図である。図示のとおり、ニューラルネットワークには、入力層、中間層(隠れ層)、出力層が定義され、入力層に与えられた情報に対して、中間層(隠れ層)において所定の情報処理がなされ、出力層にその結果が出力される。先願発明の場合、図示のとおり、ある1つの評価点Eについての特徴量x1〜xnが、n次元ベクトルとして入力層に与えられ、出力層には、当該評価点Eについてのプロセスバイアスの推定値yが出力される。ここで、プロセスバイアスの推定値yは、§1で述べたように、所定の図形の輪郭線上に位置する評価点Eについて、当該輪郭線の法線方向についてのずれ量を示す推定値である。
図24に示す実施例の場合、推定演算部132は、特徴量入力部131が入力した特徴量x1〜xnを入力層とし、プロセスバイアスの推定値yを出力層とするニューラルネットワークを有しており、このニューラルネットワークの中間層は、第1隠れ層,第2隠れ層,..., 第N隠れ層なるN層の隠れ層によって構成されている。これら隠れ層は、多数のニューロン(ノード)を有し、これら各ニューロンを繋ぐエッジが定義されている。
入力層に与えられた特徴量x1〜xnは、エッジを介して各ニューロンに信号として伝達されてゆく。そして、最終的に、出力層からプロセスバイアスの推定値yに相当する信号が出力されることになる。ニューラルネットワーク内の信号は、1つの隠れ層のニューロンから次の隠れ層のニューロンへと、エッジを介した演算を経て伝達されてゆく。エッジを介した演算は、学習段階で得られた学習情報L(具体的には、後述するパラメータW,b)を用いて行われる。
図25は、図24に示すニューラルネットワークで実行される具体的な演算プロセスを示すダイアグラムである。図に太線で示す部分は、第1隠れ層,第2隠れ層,..., 第N隠れ層を示しており、各隠れ層内の個々の円はニューロン(ノード)、各円を連結する線はエッジを示している。前述したとおり、入力層には、ある1つの評価点Eについての特徴量x1〜xnが、n次元ベクトルとして与えられ、出力層には、当該評価点Eについてのプロセスバイアスの推定値yがスカラー値(輪郭線の法線方向についてのずれ量を示す寸法値)として出力される。
図示の例の場合、第1隠れ層はM(1)次元の層であり、合計M(1)個のニューロンh(1,1)〜h(1,M(1))によって構成され、第2隠れ層はM(2)次元の層であり、合計M(2)個のニューロンh(2,1)〜h(2,M(2))によって構成され、第N隠れ層はM(N)次元の層であり、合計M(N)個のニューロンh(N,1)〜h(N,M(N))によって構成されている。
ここで、第1隠れ層のニューロンh(1,1)〜h(1,M(1))に伝達される信号の演算値を、同じ符号を用いて、それぞれ演算値h(1,1)〜h(1,M(1))と表すことにすると、これら演算値h(1,1)〜h(1,M(1))の値は、図26の上段に示す行列の式で与えられる。この式の右辺の関数f(ξ)としては、図27(a) に示すシグモイド関数、図27(b) に示す正規化線形関数ReLU、図27(c) に示す正規化線形関数Leakey ReLUなどの活性化関数を用いることができる。
また、関数f(ξ)の引数として記載されているξは、図26の中段に示すように、行列[W]と行列[x1〜xn](入力層にn次元ベクトルとして与えられた特徴量)との積に、行列[b]を加えた値になる。ここで、行列[W]および行列[b]の内容は、図26の下段に示すとおりであり、行列の個々の成分(重みパラメータW(u,v)とバイアスパラメータb(u,v))は、後述する学習段階によって得られた学習情報Lである。すなわち、行列[W]および行列[b]を構成する個々の成分(パラメータW(u,v),b(u,v))の値は、学習情報Lとして与えられており、図26に示された演算式を用いれば、入力層に与えられた特徴量x1〜xnに基づいて、第1隠れ層の演算値h(1,1)〜h(1,M(1))を算出することができる。
一方、図28は、図25に示すダイアグラムにおける第2隠れ層〜第N隠れ層の各値を求める演算式を示す図である。具体的には、第(i+1)隠れ層(1≦i≦N)のニューロンh(i+1,1)〜h(i+1,M(i+1))に伝達される信号の演算値を、同じ符号を用いて、それぞれ演算値h(i+1,1)〜h(i+1,M(i+1))と表すことにすると、これら演算値h(i+1,1)〜h(i+1,M(i+1))の値は、図28の上段に示す行列の式で与えられる。この式の右辺の関数f(ξ)としては、前述したように、図27に示す各関数などを用いることができる。
また、関数f(ξ)の引数として記載されているξは、図28の中段に示すように、行列[W]と行列[h(i,1)〜h(i,M(i))](1つ前の第i隠れ層のニューロンh(i,1)〜h(i,M(i))の演算値)との積に、行列[b]を加えた値になる。ここで、行列[W]および行列[b]の内容は、図28の下段に示すとおりであり、行列の個々の成分(パラメータW(u,v),b(u,v))は、やはり、後述する学習段階によって得られた学習情報Lである。
ここでも、行列[W]および行列[b]を構成する個々の成分(パラメータW(u,v),b(u,v))の値は、学習情報Lとして与えられており、図28に示された演算式を用いれば、第i隠れ層で求められた演算値[h(i,1)〜h(i,M(i))]に基づいて、第(i+1)隠れ層の演算値h(i+1,1)〜h(i+1,M(i+1))を算出することができる。よって、図25に示すダイアグラムにおける第2隠れ層〜第N隠れ層の各値は、図28に示す演算式に基づいて順次求めることができる。
図29は、図25に示すダイアグラムにおける出力層の値yを求める演算式を示す図である。具体的には、出力値y(評価点Eについてのプロセスバイアスの推定値:スカラー値)は、図29の上段に示す行列の式で与えられる。すなわち、出力値yは、行列[W]と行列[h(N,1)〜h(N,M(N))](第N隠れ層のニューロンh(N,1)〜h(N,M(N))の値)との積に、スカラー値b(N+1)を加えた値になる。ここで、行列[W]の内容は、図29の下段に示すとおりであり、行列[W]の個々の成分(パラメータW(u,v))およびスカラー値b(N+1)は、やはり、後述する学習段階によって得られた学習情報Lである。
このように、図25に示すダイアグラムにおける第1隠れ層の各値は、入力層として与えられた特徴量x1〜xnに、学習情報Lとして予め準備されているパラメータW(1,v),b(1,v)を作用させることにより求めることができ、第2隠れ層の各値は、第1隠れ層の各値に、学習情報Lとして予め準備されているパラメータW(2,v),b(2,v)を作用させることにより求めることができ、... 、第N隠れ層の各値は、第(N−1)隠れ層の各値に、学習情報Lとして予め準備されているパラメータW(N,v),b(N,v)を作用させることにより求めることができ、出力層yの値は、第N隠れ層の各値に、学習情報Lとして予め準備されているパラメータパラメータW(N+1,v),b(N+1)を作用させることにより求めることができる。具体的な演算式は、図26〜図29に示すとおりである。
なお、§2.4の(2) ,(3) で述べたように、複数通りの画像ピラミッドを作成する変形例を採用する場合は、入力層として与えられる特徴量が、n次元のベクトル(x1〜xn)ではなく、V・n次元(Vは、画像ピラミッドの総数)のベクトルになるが、図25に示すダイアグラムにおける入力層の数値がV・n個に増加するだけで、ニューラルネットワークの基本的な構成および動作に変わりはない。
以上、図25に示すニューラルネットワークを用いて、ある1つの評価点Eについてのプロセスバイアスの推定値yを求める演算を説明したが、実際には、元図形パターン10に含まれる図形の輪郭線上に定義された多数の評価点について同様の演算が行われ、個々の評価点について、それぞれプロセスバイアスの推定値yが求められることになる。図1に示す図形パターンの形状補正装置100では、パターン補正ユニット140が、こうして求められた個々の評価点についてのプロセスバイアスの推定値yに基づいてパターン形状の補正処理(図4のステップS5)を実行することになる。
<3.2 ニューラルネットワークの学習段階>
上述したとおり、図24に示す実施例の場合、推定演算部132は、ニューラルネットワークによって構成されており、予め設定されている学習情報Lを利用して、各ニューロンに伝達される信号値を演算することになる。ここで、学習情報Lの実体は、図26の下段、図28の下段、図29の下段に行列[W],[b]の各成分として記載されたパラメータW(u,v),b(u,v)等の値である。したがって、このようなニューラルネットワークを構築するには、予め実行した学習段階によって、学習情報Lを得ておく必要がある。
すなわち、推定演算部132に含まれるニューラルネットワークは、多数のテストパターン図形を用いたリソグラフィプロセスによって実基板S上に実際に形成される実図形パターン20の実寸法測定によって得られた寸法値と、各テストパターン図形から得られる特徴量と、を用いた学習段階によって得られたパラメータW(u,v),b(u,v)等を学習情報Lとして用い、プロセスバイアスの推定処理を行うことになる。このようなニューラルネットワークの学習段階の処理自体は公知の技術であるが、ここでは先願発明に利用するニューラルネットワークの学習段階に適した処理の概要を簡単に説明しておく。
図30は、図24に示すニューラルネットワークが用いる学習情報Lを得るための学習段階の手順を示す流れ図である。まず、ステップS81において、テストパターン図形の作成処理が実行される。ここで、テストパターン図形は、たとえば、図2(a) に示すような元図形パターン10に相当するものであり、通常、長方形やL字型図形などの単純な図形が用いられる。実際には、サイズや形状が異なる数千個ものテストパターン図形が作成される。
続いて、ステップS82において、各テストパターン図形上に評価点Eが設定される。具体的には、個々のテストパターン図形の輪郭線上に、所定間隔で多数の評価点Eを定義する処理を行えばよい。そして、ステップS83において、各評価点Eについて、それぞれ特徴量が抽出される。このステップS83の特徴量抽出処理は、§2で述べた処理と同様であり、特徴量抽出ユニット120と同等の機能を有するユニットによって実行される。§2で述べた手順によれば、個々の評価点Eについて、それぞれ特徴量x1〜xnが抽出されることになる。
ステップS84の推定演算部学習処理は、ステップS83で抽出された特徴量を利用して、学習情報L(すなわち、パラメータW(u,v),b(u,v)等)を決定する処理である。この学習処理を実行するためには、実際のリソグラフィプロセスにより得られた実寸法が必要になる。そこで、ステップS85では、ステップS81で作成されたテストパターン図形に基づいて、実際にリソグラフィプロセスが実行され、実基板Sが作成される。そして、ステップS86において、この実基板S上に形成された実図形パターンに対して、個々の図形の実寸法測定が行われる。この測定結果は、ステップS84の学習処理に利用されることになる。
このように、図30に示す学習段階のプロセスは、ステップS81〜S84からなる計算機上で実行するプロセス(コンピュータプログラムにより実行されるプロセス)と、ステップS85,S86からなる実基板上で実行するプロセスと、によって構成される。ステップS84の推定演算部学習処理は、計算機上の処理で得られた特徴量x1〜xnと実基板上で測定された実寸法とに基づいて、ニューラルネットワークに利用される学習情報Lを決定する処理ということになる。
図31は、図30に示す流れ図におけるステップS84の推定演算部学習の詳細な手順を示す流れ図である。まず、ステップS841において、各評価点の設計位置および特徴量が入力される。ここで、評価点の設計位置は、ステップS82において設定された評価点のテストパターン図形上の位置であり、評価点の特徴量は、ステップS83において抽出された特徴量x1〜xnである。続いて、ステップS842において、各評価点の実位置が入力される。ここで、評価点の実位置は、ステップS86において実測された実基板S上の各図形の実寸法に基づいて決定される。そして、ステップS843において、各評価点の実バイアスが算出される。この実バイアスは、ステップS841で入力された評価点の設計位置とステップS842で入力された評価点の実位置とのずれ量に相当する。
たとえば、ステップS81において、図3(a) に示す元図形パターン10のような長方形がテストパターン図形として作成された場合、ステップS82において、この長方形の輪郭線上に、評価点E11,E12,E13等が設定され、ステップS83において、これら各評価点E11,E12,E13のそれぞれについて、特徴量x1〜xnが抽出される。各評価点E11,E12,E13の位置および特徴量は、ステップS841において入力される。
一方、ステップS85のリソグラフィプロセスによって、実基板S上には、たとえば、図3(b) に示すような実図形パターン20が形成され、ステップS86の実寸法測定によって、この実図形パターン20を構成する長方形の各辺について、実寸法が測定される。この測定により、各評価点E11,E12,E13を、それぞれ輪郭線の法線方向に移動させた点として、評価点の実位置E21,E22,E23が決定される。各評価点の実位置E21,E22,E23は、ステップS842において入力される。
そこで、ステップS843では、図3(b) に示すように、各評価点E11,E12,E13の設計位置と実位置E21,E22,E23との差として、実バイアスy11,y12,y13が算出される。実際には、たとえば、図3(b) に示す実図形パターン20を構成する長方形の横幅bと、図3(a) に示す元図形パターン10を構成する長方形の横幅aとの差「b−a」を2で除した値yを求める作業により、実バイアスを決定するようにしてもよい。もちろん、実際には、数千個という規模のテストパターン図形が作成され、個々の図形の輪郭線上に多数の評価点が設定されるので、ステップS841〜S843の手順は、膨大な数の評価点についてそれぞれ実行されることになる。ここで、1つの評価点Eについて着目すると、当該評価点Eについては、特徴量x1〜xnと実バイアスyとの組み合わせが、学習材料として準備されたことになる。
続いて、ステップS844において、パラメータW,bが初期値に設定される。ここで、パラメータW,bは、図26の下段、図28の下段、図29の下段に行列[W],[b]の各成分として記載されたパラメータW(u,v),b(u,v)等に相当し、学習情報Lを構成する値になる。初期値としては、乱数によってランダムな値を与えればよい。別言すれば、学習前の当初の段階では、学習情報Lを構成するパラメータW,bはデタラメな値になっている。
続いて実行されるステップS845〜S848の各段階は、実際の学習プロセスであり、この学習プロセスを行うことにより、当初はデタラメな値が設定されていたパラメータW,bが徐々に更新されてゆき、やがて学習情報Lとして十分に機能する程度の正確な値に修正される。まず、ステップS845では、特徴量x1〜xnからプロセスバイアスyを推定する演算が実行される。
具体的には、図24に示すようなニューラルネットワークを準備する。もちろん、この段階では、学習情報Lを構成するパラメータW,bには、初期値として乱数が与えられており、このニューラルネットワークは、推定演算部132としての正常な機能を果たすことはできない不完全なものである。この不完全なニューラルネットワークの入力層に、ステップS841で入力した特徴量x1〜xnを与え、不完全な値からなる学習情報Lを用いた演算を行い、出力層としてプロセスバイアスの推定値yを算出する。もちろん、当初得られるプロセスバイアスの推定値yは、観測された実バイアスとはかけ離れた値になる。
そこで、ステップS846において、その時点における実バイアスに対する残差を算出する。すなわち、ステップS845で得られたプロセスバイアスの推定値yと、ステップS843で得られた実バイアスの算出値との差を求め、この差を、当該評価点Eについての残差とする。この残差が所定の許容値以下になれば、その時点での学習情報L(すなわち、パラメータW(u,v),b(u,v)等)は、十分に実用性をもった学習情報であると判断できるので、学習段階を終了することができる。
ステップS847は、学習段階を終了できるか否かを判定する手順である。実際には、膨大な数の評価点のそれぞれについて残差が求められるので、実用上は、たとえば、残差二乗和の改善量が規定値を下回っていたら、学習終了とする判断を行うような判定方法を採用すればよい。学習終了と判定されなかった場合は、ステップS848において、パラメータW(u,v),b(u,v)等の更新が行われる。具体的には、残差を減少させる作用が生じるように、各パラメータW(u,v),b(u,v)等の値を所定量だけ増減する更新が行われる。具体的な更新方法については、ニューラルネットワークにおける学習手法として様々なアルゴリズムに基づく方法が知られているので、ここでは説明を省略するが、基本方針としては、多数のテストパターン図形の評価点についての残差を総合的に勘案して、それぞれの残差が全体的に少なくなるような総合的な調整を行うアルゴリズムが採用される。
こうして、ステップS847において肯定的な判定がなされるまで、ステップS845〜S848の手順が繰り返し実行される。その結果、学習情報Lを構成するパラメータW(u,v),b(u,v)等の値は、残差を減少させる方向に徐々に修正されてゆき、最終的には、ステップS847において肯定的な判定がなされ、学習段階は終了する。この学習終了段階で得られた学習情報L(パラメータW(u,v),b(u,v)等)は、実バイアスに近いプロセスバイアスの推定値yを出力層に得るのに適した情報になっている。したがって、学習終了段階で得られた学習情報Lを含むニューラルネットワークは、先願発明における推定演算部132として機能することになる。
<<< §4. 先願発明に係る図形パターンの形状推定方法 >>>
これまで先願発明を、図1に示す構成を有する図形パターンの形状推定装置100′もしくは図形パターンの形状補正装置100として捉え、その構成および動作を説明した。ここでは、先願発明を、図形パターンの形状推定方法という方法発明として捉えた説明を簡単に行っておく。
先願発明を図形パターンの形状推定方法の発明として把握した場合、当該方法は、元図形パターンを用いたリソグラフィプロセスをシミュレートすることにより、実基板上に形成される実図形パターンの形状を推定する方法ということになる。そして、この方法は、コンピュータが、図形の内部と外部との境界を示す輪郭線の情報を含む元図形パターン10を入力する元図形パターン入力段階(図4のステップS1で作成されたパターンを入力する段階)と、コンピュータが、入力した図形の輪郭線上の所定位置に評価点Eを設定する評価点設定段階(図4のステップS2)と、コンピュータが、入力した元図形パターン10について、各評価点Eの周囲の特徴を示す特徴量x1〜xnを抽出する特徴量抽出段階(図4のステップS3)と、コンピュータが、抽出した特徴量x1〜xnに基づいて、各評価点Eの元図形パターン10上の位置と実図形パターン20上の位置とのずれ量を示すプロセスバイアスyを推定するプロセスバイアス推定段階(図4のステップS4)と、によって構成される。
ここで、特徴量抽出段階(図4のステップS3)は、元図形パターン10に基づいて、それぞれ所定の画素値を有する画素Uの集合体からなる元画像Q1を作成する元画像作成段階(図7のステップS32)と、この元画像Q1に基づいて、縮小画像Qk(準備画像)を作成する縮小処理(図7のステップS35)を含む画像ピラミッド作成処理を行い、それぞれ異なるサイズをもった複数の階層画像P1〜Pnからなる画像ピラミッドPPを作成する画像ピラミッド作成段階(図7のステップS33〜S35)と、作成された画像ピラミッドPPを構成する各階層画像P1〜Pnについて、各評価点Eの近傍の画素の画素値に基づいて特徴量x1〜xnを算出する特徴量算出段階(図7のステップS37)と、を含んでいる。
ここで、上記プロセスバイアス推定段階(図4のステップS4)は、予め実施された学習段階によって得られた学習情報Lに基づいて、評価点Eについての特徴量x1〜xnに応じた推定値を求め、求めた推定値を当該評価点Eについてのプロセスバイアスの推定値yとして出力する推定演算段階を含んでいる。
なお、§2で述べた特徴量抽出ユニット120を使用した場合は、上記画像ピラミッド作成段階で、元画像Q1もしくは縮小画像Qkに対して所定の画像処理フィルタを用いたフィルタ処理を行うフィルタ処理段階(図7のステップS33)と、このフィルタ処理後の画像Pkに対して縮小処理を行う縮小処理段階(図7のステップS35)と、を交互に実行することにより、複数の階層画像P1〜Pnからなる画像ピラミッドPPを作成することができる。
具体的には、§2.2で述べた手順では、画像ピラミッド作成段階で、フィルタ処理後の画像(図7のステップS33で得られたフィルタ処理画像Pk)を階層画像P1〜Pnとする画像ピラミッドPPが作成されている。これに対して、§2.4(1) で述べた変形例の手順では、画像ピラミッド作成段階で、フィルタ処理後の画像(フィルタ処理画像Pk)とフィルタ処理前の画像(準備画像Qk)との差分画像Dkが作成され、作成した差分画像を階層画像D1〜Dnとする画像ピラミッドPDが作成されている。
<<< §5. 本発明に係る図形パターンの形状補正装置 >>>
さて、これまで§1〜§4において、先願発明に係る図形パターンの形状補正装置の説明を行った。続いて、この§5以降において、本発明に係る図形パターンの形状補正装置の特徴を、先願発明と対比しながら詳述する。
<5.1 従来技術および先願発明の問題>
図1に示す先願発明に係る図形パターンの形状補正装置100は、特徴量抽出ユニット120が画像ピラミッドを利用して各評価点の特徴量を抽出する点に特徴がある。先願発明の従来技術に対する利点は、このようなユニークな方法で適切な特徴量の抽出が可能になる点である。ただ、この先願発明に係る図形パターンの形状補正装置100は、従来技術に係る装置と同様に、プロセスバイアスの推定値yに基づいて補正を行うため、実用上、パターン補正ユニット140による補正処理を繰り返し実行する必要がある。
たとえば、図1には、元図形パターン10を形状補正装置100に与えることにより、補正図形パターン15が得られる例が示されているが、通常、こうして得られた補正図形パターン15を用いてリソグラフィプロセスを実行し、実基板S上に実図形パターン25(図示省略)を形成しても、得られる実図形パターン25は、設計当初の元図形パターン10には正確には一致しない。これは、元図形パターン10に含まれる図形と補正図形パターン15に含まれる図形とでは、サイズや形状が異なるため、リソグラフィプロセスを実行した場合の近接効果などの影響にも相違が生じるためである。
このため、実際には、図1に示すとおり、パターン補正ユニット140から出力された補正図形パターン15を、再び、図形パターンの形状補正装置100に与える処理を繰り返し行う必要がある。すなわち、補正図形パターン15は、形状補正装置100に元図形パターンの代わりに与えられ、この補正図形パターン15について再度の補正処理を行い、新たな補正図形パターンを得て、この新たな補正図形パターンを再び形状補正装置100に与えて、更に新たな補正図形パターンを得る、という処理が繰り返される。
このような繰り返し処理は、図4の流れ図にも示されている。すなわち、ステップS2〜S5の補正処理は、最初はステップS1で作成された元図形パターンに対して行われるが、2回目以降は、ステップS5で得られた補正図形パターンに対して行われることになり、ステップS6で補正完了と判断されるまで、ステップS2〜S5の補正処理が繰り返し実行されることになる。ステップS7のリソグラフィプロセスを構成する露光、現像、エッチングという実工程は、このような繰り返し処理によって最終的に得られた最後の補正図形パターンに基づいて実行されることになる。
このように、先願発明に係る形状補正装置や従来技術に係る形状補正装置では、図形パターンに対する補正処理を繰り返し実行する必要があるため、作業工程が複雑になり、多大な作業時間がかかるという問題が生じていた。特に、半導体デバイスを製造するための図形パターンには膨大な数の図形が含まれており、元図形パターンに基づいて最適な補正図形パターンを得るプロセスには多大な作業時間が必要になる。本発明は、このような問題を解決するためのものであり、元図形パターンに対する補正を行うための作業工程をより単純化し、作業時間を短縮することを目的としている。
<5.2 本発明に係る形状補正装置の基本構成とその特徴>
図32は、本発明の基本的実施形態に係る図形パターンの形状補正装置100Zの構成を示すブロック図である。図示のとおり、この図形パターンの形状補正装置100Zは、評価点設定ユニット110、特徴量抽出ユニット120、最適補正バイアス推定ユニット130Z、パターン補正ユニット140Zを有している。これらの各構成要素は、いずれもコンピュータに所定のプログラムを組み込むことによって構成されている。したがって、本発明に係る図形パターンの形状補正装置100Zは、実際には、汎用のコンピュータに専用のプログラムを組み込むことによって実現される。
図32に示す図形パターンの形状補正装置100Zの特徴は、図1に示す先願発明に係る図形パターンの形状補正装置100の構成と比較すると容易に把握できる。なお、ここでは、本発明に係る図形パターンの形状補正装置100Zに固有の構成要素については、符号末尾に「Z」を付して示してある。図1と図32とを比較すると、評価点設定ユニット110および特徴量抽出ユニット120については全く同一であるが、図1のバイアス推定ユニット130が図32では最適補正バイアス推定ユニット130Zに置き換わっており、図1のパターン補正ユニット140が図32ではパターン補正ユニット140Zに置き換わっていることがわかる。
結局、図32に示す図形パターンの形状補正装置100Zは、図1に示す先願発明に係る図形パターンの形状補正装置100におけるバイアス推定ユニット130を最適補正バイアス推定ユニット130Zに置き換え、パターン補正ユニット140をパターン補正ユニット140Zに置き換えたものということができる。評価点設定ユニット110は、元図形パターン10上に評価点を設定する役割を果たす構成要素であり、特徴量抽出ユニット120は、元図形パターン10について、評価点の周囲の特徴を示す特徴量x1〜xnを抽出する構成要素である。これら構成要素110,120は、図1に示す各構成要素と全く同一のものであるため、ここでは詳しい説明は省略する。
本発明に係る図形パターンの形状補正装置100Zの特徴は、最適補正バイアス推定ユニット130Zによって最適補正バイアスzを推定し、パターン補正ユニット140Zによってこの最適補正バイアスzを用いた補正を行う点にある。ここで、最適補正バイアスzとは、評価点の特徴量に基づいて決定される値であり、実図形パターン20を元図形パターン10に近づけるために必要な評価点の位置補正量である。
先願発明に係る形状補正装置100や従来技術に係る形状補正装置において、補正処理を繰り返し実行する必要性が生じるのは、プロセスバイアスyに基づいて図形パターンの補正処理を行っているためである。たとえば、図1に示す先願発明に係る形状補正装置100の場合、バイアス推定ユニット130によって、各評価点についてのプロセスバイアスyが推定され、パターン補正ユニット140は、このプロセスバイアスyに基づいて元図形パターン10に対する補正を行い、補正図形パターン15を得ている。
ただ、プロセスバイアスyは、所定の図形パターンに基づいてリソグラフィプロセスを行った場合に得られるであろう実図形パターン20の形状について、元の図形パターンの形状との偏差を示す量である。したがって、§5.1で問題点として述べたように、元図形パターン10に対して、プロセスバイアスyを相殺する補正を行って補正図形パターン15を得たとしても、この補正図形パターン15をそのまま用いてリソグラフィプロセスを行った場合、得られる実図形パターン25は、元図形パターン10に正確に一致することはない。このため、先願発明に係る形状補正装置100を用いた場合、図4のステップS2〜S5の補正処理を繰り返し実行する必要がある。
これに対して、図32に示す本発明に係る形状補正装置100Zを用いた場合、パターン補正ユニット140Zは、プロセスバイアスyではなく、最適補正バイアスzに基づく補正を行うため、得られた補正図形パターン35をそのまま用いてリソグラフィプロセスを行うと、元図形パターン10に正確に一致した実図形パターンを得ることができる。これは、元図形パターン10をそのまま用いてリソグラフィプロセスを行った場合に実基板S上に得られるパターンを実図形パターン20としたときに、プロセスバイアスyが実図形パターン20と元図形パターン10との形状についての偏差を示す量であるのに対して、最適補正バイアスzは、実図形パターン20を元図形パターン10に近づけるために必要な評価点の位置補正量であるためである。このような最適補正バイアスzを推定する具体的な方法は§6で詳述する。
結局、図32に示す図形パターンの形状補正装置100Zを用いた場合、パターン補正ユニット140Zから出力された補正図形パターン35をそのまま用いてリソグラフィプロセスを行うことができ、補正図形パターン35に対して更なる補正を行う必要はない。図33は、図32に示す図形パターンの形状補正装置100Zを用いた製品の設計・製造工程を示す流れ図である。ここで、ステップS1Z〜S3Zまでの処理は、図4に示す先願発明におけるステップS1〜S3の処理と全く同様である。
具体的には、まず、ステップS1Zにおいて製品設計段階が行われ、元図形パターン10が作成される。そして、ステップS2Zでは、評価点設定ユニットによって、元図形パターン10上に評価点が設定され、ステップS3Zでは、特徴量抽出ユニット120によって、各評価点Eについての特徴量が抽出される。
一方、ステップS4Zでは、ステップS4とは異なる処理が行われる。すなわち、図4のステップS4では、各評価点について、特徴量に基づいてプロセスバイアスyが推定されていたのに対して、図33のステップS4Zでは、各評価点について、特徴量に基づいて最適補正バイアスzが推定されることになる。上述したとおり、この最適補正バイアスzの推定処理は、最適補正バイアス推定ユニット130Zによって実行される。
続くステップS5Zでは、この最適補正バイアスzに基づいて、元図形パターン10に対する形状補正が行われ、補正図形パターン35が作成される。図4のステップS5では、プロセスバイアスyに基づいて元図形パターン10に対する形状補正が行われ、補正図形パターン15が作成されていた。前述したとおり、プロセスバイアスyに基づく補正により得られた補正図形パターン15は、まだリソグラフィプロセスに用いるほど正確なパターンにはなっていないため、図4の流れ図では、ステップS6を経た繰り返し処理が必要になる。これに対して、最適補正バイアスzに基づく補正により得られた補正図形パターン35は、リソグラフィプロセスに十分に利用できる正確なパターンになっているため、図33の流れ図では、ステップS5ZからステップS7Zへ移行してリソグラフィプロセスが実行され、実基板Sが製造されることになる。
このように、図32に示す図形パターンの形状補正装置100Zを用いて製品の設計・製造工程を行えば、図33に示す補正処理段階(ステップS2Z〜S5Z)を繰り返し行う必要はない。すなわち、ステップS1Zの製品設計で作成した元図形パターン10に対して、1回だけ補正処理を行えば、ステップS7Zのリソグラフィプロセスで用いる補正図形パターン35を得ることができる。もちろん、この図33に示す流れ図において、ステップS1Z〜S5Zの段階は、計算機(コンピュータ)上で実行するプロセスであり、ステップS7Zの段階は、実基板S上で実行するプロセスということになる。
結局、図32に示す本発明に係る形状補正装置100Zも、図1に示す先願発明に係る形状補正装置100も、元図形パターン10に基づくリソグラフィプロセスによって実基板S上に実図形パターン20を形成する際に、実図形パターン20が元図形パターン10に一致するように、元図形パターン10の形状を補正して、リソグラフィプロセスで実際に用いる補正図形パターンを作成する図形パターンの形状補正装置という点では共通するが、本発明に係る形状補正装置100Zでは、元図形パターン10に対する補正処理の回数が減るため、元図形パターン10に対する補正を行うための作業工程がより単純化され、作業時間を短縮することが可能になる。
<<< §6. 最適補正バイアスの具体的な推定方法 >>>
§5では、図32を参照しながら、本発明に係る形状補正装置100Zの基本構成を説明した。上述したとおり、この形状補正装置100Zの特徴は、最適補正バイアス推定ユニット130Zによって最適補正バイアスzを推定し、パターン補正ユニット140Zによって、推定された最適補正バイアスzを用いた補正を行う点にある。そこで、この§6では、最適補正バイアスzを推定する具体的な方法を詳述する。
なお、図32に示す形状補正装置100Zは、本発明の一実施形態として、図1に示す先願発明で用いられている評価点設定ユニット110および特徴量抽出ユニット120をそのまま流用した構成を採っているが、本発明の本質的な特徴は上述したとおり、最適補正バイアス推定ユニット130Zおよびパターン補正ユニット140Zにある。したがって、本発明を実施するにあたり、評価点設定ユニット110および特徴量抽出ユニット120は、必ずしも§1,§2で述べた先願発明どおりの構成を採用する必要はない。
特に、先願発明に用いられている特徴量抽出ユニット120は、§2で述べたとおり、画像ピラミッドを利用して特徴量を抽出するという固有の形態を採用しているが、本発明を実施する上では、特徴量の抽出方法にどのような手法を用いるかは不問である。したがって、図32に示す実施例では、元画像作成部121、画像ピラミッド作成部122、特徴量算出部123を有する特徴量抽出ユニット120が用いられているが、本発明に用いる特徴量抽出ユニットとしては、元図形パターン10について評価点の周囲の特徴を示す何らかの特徴量を何らかの方法で抽出する機能を有していれば、どのようなユニットを採用してもかまわない。たとえば、複数n通りの階層画像P1〜Pnからなる画像ピラミッドPPを用いる代わりに、複数n通りの算出関数を用いて各評価点Eについてのn通りの特徴量x1〜xnを算出する処理を行うことも可能である。各算出関数としては、座標値X,Yに位置する評価点E(X,Y)について、当該座標値X,Yを変数として代入することにより、評価点E(X,Y)と元図形パターン10に含まれる各図形との位置関係を定量化して所定の関数値を算出することができる関数(たとえば、先願の付加的実施形態に用いられている関数)を用いればよい。
<6.1 プロセスバイアスと最適補正バイアスの相違>
上述したとおり、図32に示す図形パターンの形状補正装置100Zの特徴的な構成要素は、最適補正バイアス推定ユニット130Zとパターン補正ユニット140Zである。ここで、最適補正バイアス推定ユニット130Zは、特徴量抽出ユニット120が抽出した各評価点Eの特徴量x1〜xnに基づいて、実図形パターン20を元図形パターン10に近づけるために必要な各評価点Eの位置補正量を示す最適補正バイアスzを推定する機能を有しており、パターン補正ユニット140Zは、最適補正バイアス推定ユニット130Zが推定した各評価点Eの最適補正バイアスzに基づいて、元図形パターン10の各評価点Eの位置を移動させることにより、元図形パターン10の形状を補正して補正図形パターン35を作成する機能を有している。
図1に示す先願発明の図形パターンの形状補正装置100と図32に示す本発明の図形パターンの形状補正装置100Zとの重要な相違点は、前者では、プロセスバイアスyに基づいて元図形パターン10が補正されるのに対して、後者では、最適補正バイアスzに基づいて元図形パターン10が補正される点にある。そこで、ここでは、プロセスバイアスyと最適補正バイアスzとの相違を、具体的な事例を挙げて説明する。
図34は、図1に示す先願発明に係る図形パターンの形状補正装置100による図形パターンの逐次補正プロセスの一例を示すパターン変遷図である。図には、説明の便宜上、図34(a) の左側に示すように、一辺が30nmの正方形からなる元図形パターン41が与えられた極めて単純な例が示されている。ここでは、この正方形の右辺上に設定された評価点Eに着目する(もちろん、実際には、正方形の輪郭線上に多数の評価点が設定される)。
いま、図34(a) の左側に示す元図形パターン41をそのまま用いて、リソグラフィプロセスを実施した場合に、図34(a) の右側の図に実線で示すような初期実図形パターン42が得られるものとしよう。図34(a) の右側の図の破線は、元図形パターン41を示している。図示の例の場合、初期実図形パターン42は、一辺が40nmの正方形である。これは、リソグラフィプロセスにおける近接効果やローディング現象などの影響により、実基板S上には、元図形パターン41を構成する正方形よりも一辺の長さが10nm長い正方形が形成されるためである。
図1に示す形状補正装置100では、図34(a) の右側に示す初期実図形パターン42の形状がシミュレーションによって推定される。すなわち、バイアス推定ユニット130によって、元図形パターン41上の評価点Eについてのプロセスバイアスyが推定されるので、このプロセスバイアスyの推定値に基づいて、初期実図形パターン42の形状を推定することができる。具体的には、図34(a) に示す例の場合、バイアス推定ユニット130によって、元図形パターン41上の評価点Eについてのプロセスバイアスyとして、y=+5nmなる値が算出されるので、評価点Eを正方形の外側に5nm移動させることにより、初期実図形パターン42の形状を推定することができる。
もちろん、実際には、元図形パターン41を構成する正方形の輪郭線上に多数の評価点が定義される。これらの各評価点について、それぞれy=+5nmなるプロセスバイアス推定値が算出されれば、元図形パターン41を構成する正方形の各辺を外側に5nmだけ移動させることにより、図34(a) の右側に示す初期実図形パターン42が得られることになる。正方形の4辺がいずれも外側に広がるので、元図形パターン41が一辺30nmの正方形で構成されているのに対して、初期実図形パターン42は一辺40nmの正方形で構成されることになる。
こうして、初期実図形パターン42の形状が把握できれば、エラー量eを求めることができる。プロセスバイアスyが、リソグラフィプロセス前後におけるずれ量を示すのに対して、エラー量eは、「元図形パターン(設計当初のパターン)と実図形パターンとの間における、評価点Eについて生じる輪郭線の法線方向についてのずれ量」として定義される。図34(a) の場合、リソグラフィプロセス前のパターン(リソグラフィプロセスにそのまま利用されるパターン)は、元図形パターン41であるので、初期実図形パターン42についてのエラー量eは、プロセスバイアスyと同じ+5nmになる。すなわち、y=e=+5nmである。
図1に示す先願発明に係る図形パターンの形状補正装置100の場合、パターン補正ユニット140による補正は、エラー量eを相殺する方向に行われる。具体的には、エラー量eの符号を反転させた量として補正バイアスcを定義し、元図形パターン41の評価点Eの位置を補正バイアスcに応じた量だけ輪郭線の法線方向に移動させるパターン補正処理が行われる。図34(a) に示す例の場合、補正バイアスc=−5nmになるので、元図形パターン41の評価点Eの位置を内側に5nm移動させるパターン補正が行われる。その結果、元図形パターン41は、図34(b) の左側に示すような第1次補正図形パターン43に補正される。
この第1次補正図形パターン43は、元図形パターン41を構成する正方形の各辺を内側に5nmだけ移動させた図形によって構成されるので、結局、一辺20nmの正方形によって構成されることになる。要するに、元図形パターン41をそのまま用いてリソグラフィプロセスを実施すると、実基板S上には、外側に5nmだけ広がった正方形が初期実図形パターン42として形成されることが推定されるので、元図形パターン41を内側に5nmだけ縮小する補正を行う、という方針により、第1次補正図形パターン43が得られたことになる。
ところが、この第1次補正図形パターン43をそのまま用いてリソグラフィプロセスを実施しても、実基板S上には、元図形パターン41に等しい一辺が30nmの正方形を得ることはできない。これは既に述べてきたとおり、元図形パターン41についての近接効果やローディング現象などの影響と、第1次補正図形パターン43についての近接効果やローディング現象などの影響とは、同じにはならないためである。
図34(b) には、左側に示す第1次補正図形パターン43をそのまま用いて、リソグラフィプロセスを実施した場合に、図34(b) の右側の図に実線で示すような第1次実図形パターン44が得られるであろう、との推定がなされた例が示されている。実際には、図1に示すバイアス推定ユニット130によって、評価点Eについてのプロセスバイアス推定値yとして、y=+4nmなる値が算出されるので、第1次補正図形パターン43上の評価点Eの位置を外側に動かすことにより(実際には、多数の評価点の位置を動かすことにより)、図34(b) の右側の図に実線で示す第1次実図形パターン44の形状を把握することができる。
図34(b) の右側の図の破線は、第1次補正図形パターン43を示している。図示の例の場合、第1次実図形パターン44は、一辺が28nmの正方形であり、リソグラフィプロセスにおける近接効果やローディング現象などの影響により、第1次補正図形パターン43を構成する正方形よりも一辺の長さが8nm長くなっている。しかしながら、元図形パターン41と比べると、一辺の長さは2nmだけ短いので、第1次実図形パターン44についてのエラー量eは、e=−1nmとなり、プロセスバイアスy=+4nmとは異なる値になる。
そこで、パターン補正ユニット140は、エラー量eの符号を反転させた量として補正バイアスcを定義し、第1次補正図形パターン43の評価点Eの位置を補正バイアスcに応じた量だけ輪郭線の法線方向に移動させる再度のパターン補正処理を行う。図34(b) に示す例の場合、補正バイアスc=+1になるので、第1次補正図形パターン43の評価点Eの位置を外側に1nm移動させるパターン補正が行われる。その結果、第1次補正図形パターン43は、図34(c) の左側に示すような第2次補正図形パターン45に補正される。
この第2次補正図形パターン45は、第1次補正図形パターン43を構成する正方形の各辺を外側に1nmだけ移動させた図形によって構成されるので、結局、一辺22nmの正方形によって構成されることになる。要するに、第1次補正図形パターン43をそのまま用いてリソグラフィプロセスを実施すると、実基板S上には、元図形パターン41を構成する正方形よりも各辺が1nmだけ内側に縮まった正方形が第1次実図形パターン44として形成されることが推定されるので、第1次補正図形パターン43を外側に1nmだけ拡大する補正を行う、という方針により、第2次補正図形パターン45が得られたことになる。
通常、この第2次補正図形パターン45をそのまま用いてリソグラフィプロセスを実施しても、実基板S上には、元図形パターン41に等しい一辺が30nmの正方形を得ることはできない。図34(c) には、左側に示す第2次補正図形パターン45をそのまま用いて、リソグラフィプロセスを実施した場合に、図34(c) の右側の図に実線で示すような第2次実図形パターン46が得られるであろう、との推定がなされた例が示されている。実際には、図1に示すバイアス推定ユニット130によって、評価点Eについてのプロセスバイアス推定値yとして、y=+4.1nmなる値が算出されるので、第2次補正図形パターン45上の評価点Eの位置を外側に動かすことにより(実際には、多数の評価点の位置を動かすことにより)、図34(c) の右側の図に実線で示す第2次実図形パターン46の形状を把握することができる。
図34(c) の右側の図の破線は、第2次補正図形パターン45を示している。図示の例の場合、第2次実図形パターン46は、一辺が30.2nmの正方形であり、本来形成すべき元図形パターン41を構成する一辺30nmの正方形に対して、依然として、エラー量e=+0.1を含んでいる。図4のステップS6では、このエラー量eの絶対値が所定の許容値以下になった場合に、補正完了と判定することになる。上例の場合、エラー量e=+0.1が許容値以下であれば補正完了となり、第2次補正図形パターン45が最終的な補正図形パターンとして、実際のリソグラフィプロセスに用いられることになる。もちろん、エラー量e=+0.1が許容値を超えていた場合には、更なるパターン補正処理が継続されることになる。
このように、プロセスバイアスyは、「リソグラフィプロセス前後における、評価点Eについて生じる輪郭線の法線方向についてのずれ量」として定義される量であり、図1に示す先願発明に係る形状補正装置100内のバイアス推定ユニット130は、元図形パターン10もしくは補正図形パターン15をそのまま用いてリソグラフィプロセスを実行した場合に得られるであろう実図形パターンと、リソグラフィプロセスに利用した図形パターンと、のずれ量を示すプロセスバイアスyの値を推定する機能を有する。そして、パターン補正ユニット140は、このプロセスバイアスyの推定値に基づいて、実図形パターンの形状を推定し、元図形パターン10の形状との差を示すエラー量eを求め、このエラー量eを相殺する方向にパターン補正を行うことになる。
これに対して、図32に示す本発明に係る形状補正装置100Z内の最適補正バイアス推定ユニット130Zは、各評価点についての最適補正バイアスzを推定する機能を有する。ここで、最適補正バイアスzは、「実図形パターンを元図形パターンに近づけるために必要な(所定の誤差許容範囲をもって一致させるために必要な)、元図形パターン上の評価点の位置補正量」である。たとえば、図34に示す具体例の場合、図34(c) の右側に示す第2次実図形パターン46が、所定の許容範囲内の誤差(具体的には、+0.1nm)をもって元図形パターン41に一致する図形パターンであるとすれば、元図形パターン41上の各評価点を正方形の内側に4nmだけ移動させれば第2次補正図形パターン45が得られることになるので、元図形パターン41上の評価点Eについての最適補正バイアスzは、z=−4nmということになる。
図1に示す先願発明に係る形状補正装置100の場合、図34(a) 〜(c) に示すように、パターン補正を繰り返し実行することにより、実際のリソグラフィプロセスに用いる第2次補正図形パターン45を得ている。この場合、元図形パターン41が一辺30nmの正方形であるのに対して、第2次補正図形パターン45が一辺22nmの正方形であるので、結果的に、最適補正バイアスzとして、(22nm−30nm)/2=−4nmなる値が求められていることになる。しかしながら、そのためには補正処理を繰返し実施しなければならない。
本発明に係る形状補正装置100Zの最適補正バイアス推定ユニット130Zは、元図形パターン41上の評価点Eの特徴量に基づいて、当該評価点Eについての最適補正バイアスz(上例の場合、z=−4nm)を推定する機能を有している。このため、パターン補正ユニット140Zは、この最適補正バイアスzに基づいて元図形パターン41に対するパターン補正を行うだけで、実際のリソグラフィプロセスに用いることが可能な補正図形パターン35(上例の場合、第2次補正図形パターン45)を作成することができる。
<6.2 最適補正バイアス推定ユニットの構成>
図32に示すとおり、本発明に係る最適補正バイアス推定ユニット130Zは、特徴量入力部131Zと最適補正バイアス推定演算部132Zとを有している。ここで、特徴量入力部131Zは、特徴量抽出ユニット120において、各評価点について抽出された特徴量x1〜xnを入力する構成要素である。一方、最適補正バイアス推定演算部132Zは、予め実施された学習段階によって得られた学習情報LZを格納しており、この学習情報LZに基づいて、特徴量入力部131Zが入力した特徴量に応じた推定値を求め、求めた推定値を評価点についての最適補正バイアスzとして出力する構成要素である。
ここで、図1に示すバイアス推定ユニット130と図32に示す最適補正バイアス推定ユニット130Zとを比較すると、両者の本質的な違いは、前者の推定演算部132が、学習情報Lに基づいてプロセスバイアスyを推定する機能を果たすのに対して、後者の最適補正バイアス推定演算部132Zが、学習情報LZに基づいて最適補正バイアスzを推定する機能を果たす点にある。
ここに示す実施例の場合、最適補正バイアス推定演算部132Zは、特徴量入力部131Zが入力した特徴量x1〜xnを入力層とし、最適補正バイアスzの推定値を出力層とする最適補正バイアス推定用のニューラルネットワークを有しており、実質的な推定演算は、このニューラルネットワークによって実行される。一方、図1に示すバイアス推定ユニット130の推定演算部132も、既に述べたように、特徴量入力部131が入力した特徴量x1〜xnを入力層とし、プロセスバイアスyの推定値を出力層とするプロセスバイアス推定用のニューラルネットワークを有しており、実質的な推定演算は、このニューラルネットワークによって実行される。
図35は、図1に示す先願発明に係る推定演算部132(図35では、プロセスバイアス推定演算部132と呼んでいる)を構成するプロセスバイアス推定用のニューラルネットワーク(図(a) :図24に示すものと実質的に同じ)と、図32に示す本発明に係る最適補正バイアス推定演算部132Zを構成する最適補正バイアス推定用のニューラルネットワーク(図(b) )との対比を示すブロック図である。図示のとおり、両ニューラルネットワークは、いずれも特定の評価点Eについての特徴量x1〜xnからなるn次元ベクトルを入力層として、1つのスカラー値を出力層とする点において変わりはない。また、図示の例の場合、いずれのニューラルネットワークも、第1隠れ層〜第N隠れ層というN段階の隠れ層を有する点も共通している。
ただ、図35(a) に示すニューラルネットワークは、出力層に現れるスカラー値が、評価点Eについてのプロセスバイアスの推定値yであるのに対して、図35(b) に示すニューラルネットワークは、出力層に現れるスカラー値が、評価点Eについての最適補正バイアスの推定値zである点が異なっている。
図1に示す先願発明では、図35(a) に示すニューラルネットワークを用いてプロセスバイアスyを推定し、このプロセスバイアスyを用いてパターン形状補正(図4のステップS5)を行うため、得られた補正図形パターン15の各評価点についての特徴量x1〜xnを再度ニューラルネットワークの入力層に与える、という繰り返し処理が必要になる。これに対して、図32に示す本発明では、図35(b) に示すニューラルネットワークを用いて最適補正バイアスzを推定し、この最適補正バイアスzを用いてパターン形状補正(図33のステップS5Z)を行うため、得られた補正図形パターン35をそのまま用いて、実際のリソグラフィプロセス(図33のステップS7Z)を実行することができる
図35(a) に示すプロセスバイアス推定用のニューラルネットワークと図35(b) に示す最適補正バイアス推定用のニューラルネットワークとにおいて、それぞれ出力層に異なる結果が得られるのは、格納されている学習情報(パラメータW,bの値)が異なっているためである。すなわち、図35(a) に示すニューラルネットワークで用いられる学習情報Lは、入力層に与えられた特徴量x1〜xnに基づいて、プロセスバイアスyの推定値が出力層に得られるような学習を行うことにより得られた情報であるのに対して、図35(b) に示すニューラルネットワークで用いられる学習情報LZは、入力層に与えられた特徴量x1〜xnに基づいて、最適補正バイアスzの推定値が出力層に得られるような学習を行うことにより得られた情報ということになる。
ここで述べる実施例の場合、プロセスバイアスyの値や最適補正バイアスzの値として、図形の輪郭線上に設定された評価点についての輪郭線の法線方向についてのずれ量や補正量を用いている。したがって、最適補正バイアス推定演算部132Zは、図形の輪郭線上に位置する評価点Eについての最適補正バイアスの推定値zとして、当該輪郭線の法線方向についての評価点の位置補正量の推定値を求めることになる。
<6.3 学習情報LZの作成方法>
上述したように、本発明で重要な機能を果たす最適補正バイアス推定演算部132Zは、最適補正バイアスzを推定する際に、予め実施された学習段階によって得られた学習情報LZを利用することになる。別言すれば、本発明を実施する上では、適切な学習情報LZを作成することが非常に重要である。そこで、ここでは、この学習情報LZを作成する具体的な処理の一例を述べる。
ここで述べる学習情報LZの作成処理は、本発明に係る図形パターンの形状補正装置100Zを製造する上での準備段階として行われる。この準備段階は、次のように、第1の準備段階と第2の準備段階とによって構成される。第1の準備段階では、多数のテストパターン図形について、それぞれ最適補正バイアスを決定する処理が実行され、第2の準備段階では、これら多数のテストパターン図形とその最適補正バイアスとに基づく学習により、学習情報LZが作成される。以下、これら各準備段階で行われる処理内容を説明する。
図36は、本発明に係る最適補正バイアス推定用のニューラルネットワークが用いる学習情報LZを得るための第1の準備段階(最適補正バイアス決定処理)を示す流れ図である。
まず、テストパターン図形作成ステップS91において、内部と外部との境界を示す輪郭線を有するテストパターン図形が作成される。テストパターン図形としては、長方形やL字型図形などの単純な図形を用いればよい。ここでは、説明の便宜上、図34(a) の左側に示すような正方形図形(元図形パターン41)が、テストパターン図形として作成されたものとし、図34を利用しながら、この第1の準備段階の具体的な処理を説明することにする(図34に示されている図形41〜45の名称は、適宜読み替えることにする)。
続いて、評価点設定ステップS92において、補正対象パターン図形の輪郭線上の所定位置に評価点Eが設定される。ここで、補正対象パターン図形としては、ステップS92を初めて実施する場合は、ステップS91で作成されたテストパターン図形が用いられるが、後述するステップS98から戻ってきた2回目以降に実施する場合は、ステップS98によるパターン形状補正で作成された補正後パターン図形が補正対象パターン図形として用いられる。いずれにしても、この補正対象パターン図形は、ステップS98によるパターン形状補正処理での補正対象となる図形である。図34(a) の左側に示す正方形41が補正対象パターン図形の場合、その輪郭線上に評価点Eが設定される。実際には、輪郭線に沿って多数の評価点が設定される(たとえば、所定ピッチで連続的に評価点を設定すればよい。)。
そして、特徴量抽出ステップS93において、補正対象パターン図形(上例の場合、図34(a) の左側に示す正方形41)上の各評価点Eについて、その周囲の特徴を示す特徴量x1〜xnが抽出される。特徴量の抽出処理は、たとえば、§2で述べた方法を採用すればよい(もちろん、他の抽出方法を採用してもよい)。
次に、プロセスバイアス推定ステップS94において、各評価点Eについてのプロセスバイアスyが、ステップS93で抽出された特徴量x1〜xnに基づいて推定される。ここで、プロセスバイアスyは、補正対象パターン図形上の評価点の位置と、この補正対象パターン図形を用いたリソグラフィプロセスによって得られるであろう実図形上の評価点の位置と、のずれ量である。たとえば、図34(a) の左側に示す正方形41が補正対象パターン図形の場合、この補正対象パターン図形を用いたリソグラフィプロセスによって得られるであろう実図形は、図34(a) の右側に示す正方形42になるので、y=+5nmなるプロセスバイアスが、ステップS93で抽出された特徴量x1〜xnに基づいて推定されることになる。
実際には、このステップS94のプロセスバイアス推定処理は、特徴量を入力層とし、プロセスバイアスの推定値yを出力層とするニューラルネットワークを用いて行うことができる。たとえば、図35(a) に示すプロセスバイアス推定演算部132は、特徴量x1〜xnを入力層とし、プロセスバイアスの推定値yを出力層とするニューラルネットワークを有しており、ステップS94のプロセスバイアス推定処理は、プロセスバイアス推定演算部132を利用して行うことができる。
続いて、エラー量算出ステップS95において、プロセスバイアスyに基づいて実図形の形状を推定し、推定された実図形とテストパターン図形とのずれを示すエラー量eが算出される。図34(a) に示す例の場合、プロセスバイアスy=+5nmに基づいて、実図形42の形状が推定され、テストパターン図形41とのずれを示すエラー量として、e=+5nmが算出される。
そして、判定ステップS96において、エラー量eが所定の許容範囲内に収まるか否かが判定される。具体的には、エラー量の絶対値|e|と所定の許容値ethとを比較して、|e|≦ethなる条件が満たされるか否かが判定される。ここで、条件が満たされなかった場合は、ステップS96からステップS97へと進む。たとえば、eth=0.2nmに設定されていたとすると、上例の場合はエラー量e=+5nmであるので条件は満たされず、ステップS97へと進むことになる。
補正バイアス決定ステップS97では、エラー量eを相殺するために必要な、補正対象パターン図形上の評価点についての位置補正量を示す補正バイアスcが決定される。図34(a) に示す例の場合、エラー量e=+5nmを相殺するために、+5nmの符号を反転させることにより、c=−5nmなる補正バイアスが決定される。
そして、パターン形状補正ステップS98では、この補正バイアスcに基づいて、補正対象パターン図形の形状を補正して、補正後パターン図形を作成する処理が行われる。図34(a) に示す例の場合、補正バイアスc=−5nmに基づいて、補正対象パターン図形41に対して、輪郭線を内側に5nmだけ移動させるパターン補正が行われるので、図34(b) の左側に示すような一辺20nmの正方形からなる補正後パターン図形43が作成される。
こうして、ステップS98において、補正後パターン図形が作成されたら、再びステップS92からの処理が実行される。但し、今回は、図34(b) の左側に示す補正後パターン図形43が、新たな補正対象パターン図形になり、ステップS92〜S95を経ることにより、図34(b) に示すように、エラー量e=−1nmが算出される。eth=0.2nmに設定されていた場合、ステップS96では再び否定的判定がなされる。そして、ステップS97へと進み、エラー量e=−1nmを相殺するために、−1nmの符号を反転させることにより、c=+1nmなる補正バイアスが決定される。続くステップS98では、補正バイアスc=+1nmに基づいて、補正対象パターン図形43に対して、輪郭線を外側に1nmだけ移動させるパターン補正が行われるので、図34(c) の左側に示すような一辺22nmの正方形からなる補正後パターン図形45が作成される。
こうして、ステップS98において補正後パターン図形が作成されたら、ステップS92からの3回目の処理が実行される。この3回目では、図34(c) の左側に示す補正後パターン図形45が、新たな補正対象パターン図形になり、ステップS92〜S95を経ることにより、図34(c) に示すように、エラー量e=+0.1nmが算出される。eth=0.2nmに設定されていた場合、今度はステップS96で肯定的判定がなされるので、ステップS96からステップS99へと進み、最適補正バイアス決定処理が行われる。
最適補正バイアス決定ステップS99において実行される処理は、その時点で得られている最後の補正後パターン図形を最終補正後パターン図形として、テストパターン図形を最終補正後パターン図形に一致させるために必要な、テストパターン図形上の評価点についての位置補正量を最適補正バイアスzと決定する処理である。
たとえば、上例の場合、ステップS99を実行する時点で得られている最後の補正後パターン図形は、図34(c) の左側に示す図形45ということになるので、この図形45が最終補正後パターン図形ということなる。そこで、ステップS99では、図34(a) の左側に示すテストパターン図形41を最終補正後パターン図形45に一致させるために必要な、テストパターン図形41上の評価点Eについての位置補正量が最適補正バイアスzとして決定される。具体的には、図34に示す例の場合、最適補正バイアスz=−4nmになる。これは、テストパターン図形41上の評価点Eを、図形の内側に4nmだけ移動する位置補正を行えば、テストパターン図形41を最終補正後パターン図形45に一致させられることを意味する。
結局、この第1の準備段階では、まず、テストパターン図形作成ステップS91においてテストパターン図形(たとえば、図34の図形41)が作成される。そして、このテストパターン図形を最初の補正対象パターン図形として、評価点設定ステップS92、特徴量抽出ステップS93、プロセスバイアス推定ステップS94、補正バイアス決定ステップS97、パターン形状補正ステップS98を実行することにより、補正後パターン図形(たとえば、図34の図形43)が作成される。
続いて、この補正後パターン図形を新たな補正対象パターン図形として、評価点設定ステップS92、特徴量抽出ステップS93、プロセスバイアス推定ステップS94、補正バイアス決定ステップS97、パターン形状補正ステップS98を実行して新たな補正後パターン図形(たとえば、図34の図形45)を作成する処理を、エラー量eが所定の許容範囲内に収まるまで繰り返し実行し、最後に得られた補正後パターン図形(たとえば、図34の図形45)を最終補正後パターン図形とする。
そして、最後の最適補正バイアス決定ステップS99において、テストパターン図形(たとえば、図34の図形41)を最終補正後パターン図形(たとえば、図34の図形45)に一致させるために必要な、テストパターン図形上の評価点についての位置補正量を最適補正バイアスzと決定する処理が行われる。1つのテストパターン図形上には多数の評価点が設定されているので、これら個々の評価点のそれぞれについて、最適補正バイアスzが決定されることになる。
かくして、図36の流れ図に示す第1の準備段階を実施すれば、任意のテストパターン図形について、最適補正バイアスzを決定することができる。この第1の準備段階のうち、ステップS92〜S99の処理は、実際には、図1に示す形状補正装置100を利用して実行することができる。そもそも図34は、図1に示す形状補正装置100による図形パターンの逐次補正プロセスの一例を示すパターン変遷図である。したがって、図36の流れ図に示す第1の準備段階は、図1に示す形状補正装置100に対して、元図形パターン10(実際の製品を製造するために設計されたパターン)を与える代わりに、単純なテストパターン図形を与えることにより実行することが可能である。
もちろん、この図36の流れ図に示す第1の準備段階には、ステップS98からステップS92へと戻るループが存在し、パターン補正処理を繰り返し実行する必要がある。ただ、補正対象パターン図形は、実際の製品を製造するために設計された複雑な元図形パターン10ではなく、単純なテストパターン図形であるので、演算負担はそれほど大きなものにはならない。また、そもそも第1の準備段階は、本発明に係る図形パターンの形状補正装置100Zに利用する学習情報LZを作成するための準備段階なので、処理完了までに長時間が必要になったとしても支障は生じない。
なお、以上の説明では、1つのテストパターン図形について、最適補正バイアスzを決定するプロセスを述べたが、実際には、サイズや形状が異なる数千個ものテストパターン図形が作成され、これら多数のテストパターン図形のそれぞれについて、かつ、各テストパターン図形上に設定されたすべての評価点について、それぞれ最適補正バイアスzが決定される。したがって、第1の準備段階を実行することにより得られる情報には、作成した多数のテストパターン図形の情報と、各テストパターン図形上に設定された多数の評価点の情報と、これら各評価点について決定された最適補正バイアスzの情報と、が含まれていることになる。これらの情報は、以下に述べる第2の準備段階の学習で利用される。
図37は、本発明に係る最適補正バイアス推定用のニューラルネットワークが用いる学習情報LZを得るための第2の準備段階(推定演算部132Zの学習処理)を示す流れ図である。
まず、テストパターン図形入力ステップS101では、図36のステップS91で作成したテストパターン図形の入力が行われ、最適補正バイアス入力ステップS102では、図36のステップS99で決定された最適補正バイアスzの入力が行われる。
次に、評価点設定ステップS103において、入力したテストパターン図形の輪郭線上に多数の評価点Eが設定され、続く特徴量抽出ステップS104において、各評価点Eのそれぞれについて、その周囲の特徴を示す特徴量x1〜xnが抽出される。もっとも、ステップS103の評価点設定処理は、図36のステップS92の評価点設定処理と同じであり、ステップS104の特徴量抽出処理は、図36のステップS93の特徴量抽出処理と同じである。したがって、実際には、ステップS103の評価点設定処理では、ステップS92で設定された評価点をそのまま流用することが可能であり、ステップS104の特徴量抽出処理では、ステップS93で抽出された特徴量をそのまま流用することが可能である。
最後に、推定演算部学習ステップS105において、ニューラルネットワークの学習が行われる。この学習処理は、§3.1で述べたニューラルネットワークの学習段階と同様のプロセスによって行うことができる。
図38は、図35(b) に示す本発明に係るニューラルネットワークで実行される具体的な演算プロセスを示すダイアグラムである。このダイアグラムの基本構成は、図25に示すニューラルネットワークと同様であり、図に太線で示す部分は、第1隠れ層,第2隠れ層,..., 第N隠れ層を示し、各隠れ層内の個々の円はニューロン(ノード)、各円を連結する線はエッジを示している。そして、入力層に、ある1つの評価点Eについての特徴量x1〜xnを与えると、出力層には、当該評価点Eについての最適補正バイアスの推定値zがスカラー値として出力される。
図38のニューラルネットワークの場合も、第1隠れ層はM(1)次元の層であり、合計M(1)個のニューロンh(1,1)〜h(1,M(1))によって構成され、第2隠れ層はM(2)次元の層であり、合計M(2)個のニューロンh(2,1)〜h(2,M(2))によって構成され、第N隠れ層はM(N)次元の層であり、合計M(N)個のニューロンh(N,1)〜h(N,M(N))によって構成されている。
ここで、第1隠れ層のニューロンh(1,1)〜h(1,M(1))に伝達される信号の演算値を、同じ符号を用いて、それぞれ演算値h(1,1)〜h(1,M(1))と表すことにすると、これら演算値h(1,1)〜h(1,M(1))の値は、前述した図26の上段に示す行列の式で与えられる。ここで、この式の右辺の関数f(ξ)としては、図27に示す各活性化関数などを用いることができる。
また、第(i+1)隠れ層(1≦i≦N)のニューロンh(i+1,1)〜h(i+1,M(i+1))に伝達される信号の演算値を、同じ符号を用いて、それぞれ演算値h(i+1,1)〜h(i+1,M(i+1))と表すことにすると、これら演算値h(i+1,1)〜h(i+1,M(i+1))の値は、図28の上段に示す行列の式で与えられる。この式の右辺の関数f(ξ)としては、やはり図27に示す各関数などを用いることができる。
そして、出力値z(評価点Eについての最適補正バイアスの推定値:スカラー値)は、図38の下段に示す行列の式で与えられる。すなわち、出力値zは、行列[W]と行列[h(N,1)〜h(N,M(N))](第N隠れ層のニューロンh(N,1)〜h(N,M(N))の値)との積に、スカラー値b(N+1)を加えた値になる。ここで、行列[W]の内容は、図38の最下段に示すとおりである。
ニューラルネットワークにおける学習情報LZとは、行列[W]の個々の成分(パラメータW(u,v))およびスカラー値b(N+1)の各パラメータ値W,bに他ならない。ステップS105の推定演算部学習処理では、まず、学習情報LZを構成する各パラメータW,bに、初期値として乱数を与えておく。このような初期値が設定された学習情報LZは不完全なものであるが、学習が進むにつれて、徐々に完全なものへと更新されてゆく。
このような学習を行うための材料として、第1の準備段階で得られた多数のテストパターン図形の情報と、各テストパターン図形上に設定された多数の評価点の情報と、これら各評価点について決定された最適補正バイアスzの情報と、が用いられる。すなわち、特定のテストパターン図形について、特定の評価点Eの特徴量x1〜xnを与えたときに、出力層に、当該評価点Eについて決定された最適補正バイアスzが出力されるように、各パラメータW,bの値を更新する処理が行われることになる。最終的には、多数のテストパターン図形のいずれについても、正しい最適補正バイアスzが出力されるような更新が行われる。具体的な更新方法としては、たとえば、§3.2で述べた方法と同様の方法を採用すればよい。また、このような更新方法としては、ニューラルネットワークにおける学習手法として様々なアルゴリズムに基づく方法が知られているので、ここでは説明を省略する。
図25に示すニューラルネットワークも、図38に示すニューラルネットワークも、入力層に与えられた特徴量x1〜xnに基づいて、出力層に所定のスカラー値を出力するという機能は全く同じである。ただ、前者がプロセスバイアスの推定値yを出力層に出力するのに対して、後者は最適補正バイアスの推定値zを出力層に出力することになる。このように、出力層に出力されるスカラー値が異なるのは、用いる学習情報が異なっているためである。
図25に示すニューラルネットワークは、プロセスバイアスの推定値yを出力するためのネットワークであるので、正しいプロセスバイアスの推定値yが出力されるような学習の成果である学習情報L(パラメータW,bの値)が利用される。これに対して、図38に示すニューラルネットワークは、最適補正バイアスの推定値zを出力するためのネットワークであるので、正しい最適補正バイアスの推定値zが出力されるような学習の成果である学習情報LZ(やはり、パラメータW,bの値)が利用される。この学習情報LZは、デジタルデータとして、所定の情報記録媒体に格納されて用いられる。
結局、最適補正バイアス推定用のニューラルネットワークが用いる学習情報LZは、評価点の元図形パターン上の位置と実図形パターン上の位置とのずれ量を示すプロセスバイアスyを推定するプロセスバイアス推定用のニューラルネットワーク(具体的には、図1に示すバイアス推定ユニット130の推定演算部132)を利用して得られた多数のテストパターン図形についての最適補正バイアス(図36の第1の準備段階で得られた値z)を用いた学習段階(図37の第2の準備段階)によって得られたパラメータということになる。
図37に示す第2の準備段階の処理は、特徴量x1〜xnを入力層とし、最適補正バイアスの推定値zを出力層とするニューラルネットワークに利用するための学習情報LZを得る学習処理であり、図33の補正処理段階における最適補正バイアス推定ステップS4Zは、上記学習情報LZを利用したニューラルネットワークを用いて実行されることになる。もちろん、図33に示す補正処理段階、図36に示す第1の準備段階、図37に示す第2の準備段階は、いずれもコンピュータに組み込まれた専用プログラムによって実行される。
また、図32に示す最適補正バイアス推定演算部132Zに格納されている学習情報LZは、多数のテストパターン図形について抽出された特徴量と各テストパターン図形についての最適補正バイアスとに基づいて、特徴量を入力として与えた場合に最適補正バイアスが出力されるような学習(図37の第2の準備段階)によって得られた学習情報ということになる。そして、この学習に用いられる各テストパターン図形についての最適補正バイアスは、所定の補正対象パターン図形を用いたリソグラフィプロセスのシミュレーション結果に基づいて当該補正対象パターン図形を補正して補正後パターン図形を得るパターン形状補正処理を、得られた補正後パターン図形を新たな補正対象パターン図形として所定回数だけ繰り返し実施すること(図36の第1の準備段階)により得られた位置補正量ということになる。
図39は、図36に示す最適補正バイアス決定処理で決定された、種々のテストパターン図形についての最適補正バイアスの一例を示す表である。表の各行は、それぞれ特定のテストパターン図形に対応しており、パターンカテゴリの欄に記載された内容は、各テストパターン図形の名称である。また、設計寸法欄の数値は、当該テストパターン図形の基準方向の寸法であり、測長値欄の数値は、当該テストパターン図形を用いてリソフラフィプロセスを実行した場合に得られるであろう実図形の基準方向の寸法である。そして、プロセスバイアス欄の数値は、当該テストパターン図形について算出されたプロセスバイアスyの値であり、最適補正バイアス欄の数値は、当該テストパターン図形について決定された最適補正バイアスzの値である。
たとえば、表の1行目には、「Line & Space」と呼ばれる単純な形状をもったテストパターン図形についての情報が記載されている。すなわち、このテストパターン図形は、幅1000nm(設計寸法)の長方形パターンからなり、当該テストパターン図形を用いてリソフラフィプロセスを実行した場合に得られるであろう実図形は幅1012.6nm(測長値)の長方形パターンになり、プロセスバイアスyは+6.3nm、最適補正バイアスzは−6.5nmである。
この表において、プロセスバイアスyの絶対値と最適補正バイアスzの絶対値とを比較すると、両者はある程度近似した値になっているが、若干の相違があることがわかる。既に述べたように、プロセスバイアスyの値に基づく補正を1回だけ行っただけでは、正確な補正図形パターンを得ることはできないが、最適補正バイアスzの値に基づく補正を1回だけ行えば、ある程度正確な補正図形パターンを得ることができる。この表におけるプロセスバイアスyの絶対値と最適補正バイアスzの絶対値との相違は、このような両者の補正精度の相違を反映したものになっている。
<<< §7. 本発明の変形例 >>>
ここでは、これまで述べてきた本発明に係る図形パターンの形状補正装置について、いくつかの有用な変形例を述べる。
<7.1 プロセスバイアスの位置依存性を考慮した変形例>
本発明は、リソグラフィプロセスによって実基板上に実図形パターンを形成することを前提として、元図形パターンに対して補正を行う技術である。これまで述べてきた先願発明の実施形態や本発明の実施形態では、形成する図形パターンの形状に着目し、図形パターン上に設定された各評価点の特徴量に基づいて、当該評価点についての最適な補正量を推定するという手法を採用しているが、この推定には、実基板S上の位置は考慮されていない。
しかしながら、実際には、実基板S上の位置によってプロセスバイアスyに変動が生じる。たとえば、図40は、このような変動が生じる例を説明する実基板Sの平面図である。この例では、実基板SがXY平面上に配置されており、この実基板S上に2つの着目点α,βが設定されている。着目点αは実基板Sの中央に位置する点であり、着目点βは実基板Sの右下に位置する点である。本願発明者は、このように実基板S上の位置が異なる2つの着目点α,βでは、全く同じ図形に基づくリソグラフィプロセスを実行した場合でも、プロセスバイアスyの値が異なることを確認した。
たとえば、図34(a) の左側に示すような正方形からなる元図形パターン41を用いたリソグラフィプロセスによって、実基板S上の着目点α,βの各位置に、それぞれ正方形の図形パターンを形成したものとしよう。この場合、着目点αの位置に形成した正方形についてのプロセスバイアスyが+5nmだったとすると、着目点βの位置に形成した正方形についてのプロセスバイアスyは、正確には+5nmにはならない。すなわち、プロセスバイアスyは、実基板S上の位置に依存して変動することになる。
プロセスバイアスyが、実基板S上の位置に依存して変動する理由は、リソグラフィプロセスを行った場合の近接効果やローディング現象などの影響が、実基板S上の位置に応じて相違するためと考えられる。図41は、実基板S上の位置によって生じるプロセスバイアスyの具体的な変動量の一例を示す三次元グラフである。この三次元グラフのX軸およびY軸は、XY平面上に配置された実基板Sの横方向および縦方向の位置(単位:cm)を示しており、d軸は、各位置における幅変動量(単位:nm)を示している。この幅変動量dは、テストパターン図形の所定方向の全幅に関する変動量を示しているので、プロセスバイアスyの変動量は、幅変動量dの半分の値になる(たとえば矩形の場合、左辺と右辺についてのプロセスバイアスyの変動量の和が幅変動量dになるため)。
図41のグラフの場合、座標(0,0)の位置における幅変動量dを0として基準にとれば、基板の周囲にゆくほど、幅変動量d(この例では負の値をとる)の絶対値が増大する傾向にある。したがって、この三次元グラフを図40に示す実基板Sに適用すれば、着目点αのプロセスバイアスをyとした場合、着目点βのプロセスバイアスは「y+d/2」になる。図41の例の場合、幅変動量dは負の値をとるので、着目点αのプロセスバイアスyに比べて、着目点βのプロセスバイアス「y+d/2」は小さくなる。たとえば、実基板Sの右下の位置(座標(6,−6))では、幅変動量d=−3.5nmになっているので、座標(0,0)の基準位置におけるプロセスバイアスyに比べて、3.5/2nmだけ小さなプロセスバイアスが得られることになる。
もちろん、このような三次元グラフは、用いる実基板Sの形態や、実際に行われるリソグラフィプロセスの露光、現像、エッチング工程の諸条件によって形状が変化することになるが、これらの条件が固定されれば、プロセスバイアスyの位置依存性を示す普遍性をもったグラフになる。もちろん、プロセスバイアスyが位置に依存する変動量を有していれば、当然、最適補正バイアスzも位置に依存する変動量を有することになる。したがって、先願発明や本発明でプロセスバイアスyを推定する際、あるいは、本発明で最適補正バイアスzを推定する際に、プロセスバイアスの位置依存性を考慮すれば、実基板S上のどの位置に図形が形成されるかという情報を考慮した正確な推定を行うことが可能である。
このように、プロセスバイアスの位置依存性を考慮した推定を行う場合、特徴量抽出ユニット120に、評価点Eの実基板S上の位置に依存する最適補正バイアスもしくはプロセスバイアスの変動量dを特徴量の1つとして抽出させればよい。そうすれば、図1に示す先願発明に係るバイアス推定ユニット130では、評価点Eの周囲の特徴を示す特徴量x1〜xnに加えて、更に、(n+1)番目の特徴量として、評価点Eの実基板S上の位置に応じた変動量d(たとえば、図41の三次元グラフで与えられる幅変動量d)を入力することにより、より正確なプロセスバイアスyを推定することができる。
ニューラルネットワークを用いてプロセスバイアスyの推定を行う場合は、図25に示す演算プロセスの代わりに、図42に示す演算プロセスを採用すればよい。両者の相違は、前者では入力層が特徴量x1〜xnを示すn次元ベクトルであったのに対し、後者では入力層が特徴量x1〜xnおよび変動量dを示す(n+1)次元ベクトルになっている点である。このように、後者では入力層が1次元分増えることになるが、基本的な演算アルゴリズムは前者と同様である。
一方、図32に示す本発明に係る最適補正バイアス推定ユニット130Zでは、評価点Eの周囲の特徴を示す特徴量x1〜xnに加えて、更に、(n+1)番目の特徴量として、評価点Eの実基板S上の位置に応じた変動量d(たとえば、図41の三次元グラフで与えられる幅変動量d)を入力することにより、より正確な最適補正バイアスzを推定することができる。
ニューラルネットワークを用いて最適補正バイアスzの推定を行う場合は、図38に示す演算プロセスの代わりに、図43に示す演算プロセスを採用すればよい。両者の相違は、前者では入力層が特徴量x1〜xnを示すn次元ベクトルであったのに対し、後者では入力層が特徴量x1〜xnおよび変動量dを示す(n+1)次元ベクトルになっている点である。このように、後者では入力層が1次元分増えることになるが、基本的な演算アルゴリズムは前者と同様である。
図44は、図36に示す最適補正バイアス決定処理で決定された、種々のテストパターン図形についての位置依存性を考慮した最適補正バイアスの一例を示す表である。表の各行は、それぞれ特定のテストパターン図形と特定の幅変動量dとの組み合わせに対応している。具体的には、パターンカテゴリの欄に記載された内容は、各テストパターン図形の名称であり、設計寸法欄の数値は、当該テストパターン図形の基準方向の寸法であり、変動量欄の数値は、当該テストパターン図形を形成する実基板S上の位置に依存した幅変動量(図41の三次元グラフで与えられる幅変動量d)であり、測長値欄の数値は、当該テストパターン図形を用いてリソグラフィプロセスを実行した場合に当該位置に得られるであろう実図形の基準方向の寸法である(NAと記載された欄は測定が省略されている)。そして、プロセスバイアス欄の数値は、当該テストパターン図形と当該位置との組み合わせについて算出されたプロセスバイアスyの値であり、最適補正バイアス欄の数値は、当該テストパターン図形と当該位置との組み合わせについて決定された最適補正バイアスzの値である。
たとえば、表の1行目には、「Line & Space」と呼ばれる単純な形状をもったテストパターン図形を、幅変動量dに対応する位置に形成した場合の情報が記載されている。すなわち、このテストパターン図形は、幅1000nm(設計寸法)の長方形パターンからなり、当該テストパターン図形を用いてリソフラフィプロセスを実行した場合に、幅変動量d=0に対応する位置(図41の例の場合、座標(0,0)の位置)に得られるであろう実図形は、幅1012.6nm(測長値)の長方形パターンになり、プロセスバイアスyは+6.3nm、最適補正バイアスzは−6.5nmである。
これに対して、表の2行目には、同じテストパターン図形を、幅変動量d=−2.0に対応する位置(図41の例の場合、たとえば、座標(5,−2)の位置)に形成した場合、プロセスバイアスyは+5.3nm、最適補正バイアスzは−5.4nmであることが示されている。ここで、プロセスバイアスyは、第1行目の値+6.3nmから、幅変動量d=−2.0の絶対値の半分を差し引いた値として算出されている。同様に、表の3行目には、同じテストパターン図形を、幅変動量d=−4.0に対応する位置に形成した場合、プロセスバイアスyは+4.3nm、最適補正バイアスzは−4.3nmであることが示されている。ここで、プロセスバイアスyは、第1行目の値+6.3nmから、幅変動量d=−4.0の絶対値の半分を差し引いた値として算出されている。
この表によれば、プロセスバイアスの位置依存性を考慮してプロセスバイアスyおよび最適補正バイアスzが求められているため、全く同じテストパターン図形であっても、実基板S上の形成位置に応じた正確なプロセスバイアスyおよび最適補正バイアスzが得られていることがわかる。
<7.2 先願発明を併用した変形例>
§5.1では、先願発明の問題点として、プロセスバイアスの推定値yに基づいて補正を行うため、補正処理を繰り返し実行する必要がある点を説明し、本発明では、最適補正バイアスの推定値zに基づいて補正を行うため、補正処理を繰り返し実行しなくても十分な補正を行うことができるメリットを説明した。確かに、最適補正バイアスの推定値zに基づく補正を行えば、元図形パターンに対する補正処理の回数を減らすことができ、作業時間を短縮することが可能になる。
しかしながら、最適補正バイアス推定ユニット130Zの推定精度は、用いる学習情報LZの内容や、入力として与えられる特徴量の的確性に依存するため、必ずしも常に的確な最適補正バイアスzの推定値を出力できるとは限らない。そこで、ここでは、§5以降で述べてきた本発明に係る図形パターンの形状補正装置100Zに、§1〜§3で述べた先願発明に係る図形パターンの形状補正装置100の要素を組み込むことにより、先願発明を併用した変形例を述べることにする。
図45は、先願発明を併用した変形例に係る図形パターンの形状補正装置100ZZの構成を示すブロック図である。この図45に示す形状補正装置100ZZは、図1に示す先願発明に係る図形パターンの形状補正装置100に、最適補正バイアス推定ユニット130Zを組み込み、パターン補正処理を行うユニットとして、プロセスバイアスyに基づく補正と最適補正バイアスzに基づく補正との双方を行う機能を有するパターン補正ユニット140ZZを設けたものと言うことができる。
図45に示す形状補正装置100ZZを、図1に示す形状補正装置100と対比すると、評価点設定ユニット110および特徴量抽出ユニット120の部分は全く同じである。また、図45のプロセスバイアス推定ユニット130は、図1のバイアス推定ユニット130と全く同じである。ただ、図1のバイアス推定ユニット130が、プロセスバイアスyを推定するユニットであることを明確にするため、図45では、プロセスバイアス推定ユニット130と呼んでいる。また、図1の推定演算部132のことを、図45では、プロセスバイアス推定演算部132と呼んでいる。
一方、図45の最適補正バイアス推定ユニット130Zは、図32に示す最適補正バイアス推定ユニット130Zと全く同じである。そして、図45のパターン補正ユニット140ZZは、図1のパターン補正ユニット140(プロセスバイアスyに基づく補正機能を有する)と、図32のパターン補正ユニット140Z(最適補正バイアスzに基づく補正機能を有する)とを兼ねたユニットと言うべきものであり、プロセスバイアスyに基づく補正と最適補正バイアスzに基づく補正との双方を行う機能を有している。
見方を変えて、この図45に示す形状補正装置100ZZを、図32に示す形状補正装置100Zと対比すると、図45に示す形状補正装置100ZZは、図32に示す形状補正装置100Zに、更に、プロセスバイアス推定ユニット130を付加し、図32に示すパターン補正ユニット140Zに、図1に示すパターン補正ユニット140の機能を加えてパターン補正ユニット140ZZとした変形例に係る装置ということができる。
ここで、プロセスバイアス推定ユニット130は、上述したとおり、図1に示すバイアス推定ユニット130と同一の構成要素であり、特徴量x1〜xnに基づいて、評価点Eの補正図形パターン上の位置とこの補正図形パターンを用いたリソグラフィプロセスによって得られるであろう実図形パターン上の位置とのずれ量を示すプロセスバイアスを推定する機能を有する。ここで、「補正図形パターン」は、パターン補正ユニット140ZZから出力される補正図形パターン35を意味し、図1における補正図形パターン15に相当するものである。
この図45に示す形状補正装置100ZZには、2通りの補正処理系統が備わっている。第1の補正処理系統は、評価点設定ユニット110→特徴量抽出ユニット120→最適補正バイアス推定ユニット130Z→パターン補正ユニット140ZZという経路で補正処理が行われる系統であり、補正は最適補正バイアスzに基づいて行われる。一方、第2の補正処理系統は、評価点設定ユニット110→特徴量抽出ユニット120→プロセスバイアス推定ユニット130→パターン補正ユニット140ZZという経路で補正処理が行われる系統であり、補正はプロセスバイアスyに基づいて行われる。
しかも、第1の補正処理系統は、元図形パターン10に対する補正(第1回目の補正)を行うために利用され、第2の補正処理系統は、補正図形パターン35に対する繰り返し補正(第2回目以降の補正)を行うために利用される。別言すれば、最適補正バイアス推定ユニット130Zは、第1回目の補正(元図形パターン10に対する補正)を行うために最適補正バイアスzを推定する処理を行い、プロセスバイアス推定ユニット130は、第2回目以降の繰り返し補正(補正図形パターン35に対する補正)を行うためにプロセスバイアスyを推定する処理を行う。
このように、2通りの補正処理系統が備わっているため、評価点設定ユニット110は、元図形パターン10上に評価点Eを設定する処理(第1回目の補正時)と、補正図形パターン35上に評価点Eを設定する処理(第2回目以降の補正時)と、を選択的に実行する機能を有している。また、特徴量抽出ユニット120は、元図形パターン10について評価点Eの周囲の特徴を示す特徴量x1〜xnを抽出する処理と、補正図形パターン35について評価点Eの周囲の特徴を示す特徴量x1〜xnを抽出する処理と、を選択的に実行する機能を有している。
そして、パターン補正ユニット140ZZは、最適補正バイアス推定ユニット130Zが推定した最適補正バイアスzに基づく補正により補正図形パターン35を作成する処理と、プロセスバイアス推定ユニット130が推定したプロセスバイアスyに基づく補正により補正図形パターン35を更に補正して新たな補正図形パターン35を作成する処理と、を選択的に実行する機能を有している。
図46は、図45に示す形状補正装置100ZZを用いた製品の設計・製造工程の手順を示す流れ図である。図示のとおり、この手順は、前半段階(ステップS1Z〜S5Z)と後半段階(ステップS2〜S7)とによって構成されており、ステップS1Z〜S6までの工程は計算機(コンピュータ)上で実行するプロセスであり、ステップS7の工程は実基板上で実行するプロセスである。
前半段階のステップS1Z〜S5Zは、上述した第1の補正処理系統を利用して行われる処理であり、図33に示すステップS1Z〜S5Zと全く同じである。この前半段階のステップS1Z〜S5Zでは、設計装置により作成された元図形パターン10が、図45に示す形状補正装置100ZZに与えられ、第1の補正処理系統により、元図形パターン10に対して最適補正バイアスzを用いる補正が行われ、補正図形パターン35が出力される。図32に示す基本的実施形態に係る形状補正装置100Zの場合、こうして得られた補正図形パターン35を用いて、リソグラフィプロセスが実施され、実基板Sが製造されることになるが、ここで述べる変形例に係る形状補正装置100ZZの場合、こうして得られた補正図形パターン35に対して、更なる補正が続行される。
すなわち、前半段階のステップS1Z〜S5Zに引き続いて、後半段階のステップS2〜S7が実行される。この後半段階のステップS2〜S6は、上述した第2の補正処理系統を利用して行われる処理であり、図4に示すステップS2〜S6と全く同じである。この後半段階のステップS2〜S6では、第2の補正処理系統により、前半段階の処理で得られた補正図形パターン35に対して、プロセスバイアスyを用いる補正が必要な回数だけ繰り返し行われ、最終的な補正図形パターン35が出力される。ステップS7のリソグラフィプロセスは、こうして得られた最終的な補正図形パターン35を用いて実行される。
要するに、この図46の流れ図に示す手順では、まず、与えられた元図形パターン10に対して、評価点設定ユニット110による評価点設定がなされ、特徴量抽出ユニット120による特徴量抽出がなされ、最適補正バイアス推定ユニット130Zによる最適補正バイアスzの推定がなされ、パターン補正ユニット140ZZによる補正により元図形パターン10に対する補正がなされ、補正図形パターン35が作成される(第1の補正処理系統:前半段階のステップS1Z〜S5Z)。続いて、この補正図形パターン35に対して、評価点設定ユニット110による評価点設定がなされ、特徴量抽出ユニット120による特徴量抽出がなされ、プロセスバイアス推定ユニット130によるプロセスバイアスyの推定がなされ、パターン補正ユニット140ZZによる更なる補正により新たな補正図形パターン35が作成される(第2の補正処理系統:後半段階のステップS2〜S6)。
もちろん、第2の補正処理系統による補正を1回だけ行うようにしてもかまわないので、ステップS6を省略して、ステップS5からステップS7へと進んでもかまわない。それでも、第1の補正処理系統による補正(前半段階のステップS1Z〜S5Z)で得られた補正図形パターン35に対する更なる補正が行われるので、より正確な補正図形パターン35を用いたリソグラフィプロセスを実行することができる。ただ、より正確な補正図形パターンを用いてリソグラフィプロセスを実行するためには、ステップS6からステップS2に戻るループ処理により、第2の補正処理系統による補正を繰り返し実行するのが好ましい。
したがって、実用上は、パターン補正ユニット140ZZによる第2の補正処理系統に基づく補正により新たな補正図形パターン35が作成された後、当該新たな補正図形パターン35に対して、評価点設定ユニット110による評価点設定がなされ、特徴量抽出ユニット120による特徴量抽出がなされ、プロセスバイアス推定ユニット130によるプロセスバイアスの推定がなされ、パターン補正ユニット140ZZによる補正により更に新たな補正図形パターン35が作成される処理が、所定回数だけ繰り返し実行されるようにするのが好ましい。
<<< §8. 本発明に係る図形パターンの形状補正方法 >>>
これまで本発明を、図32に示す構成を有する図形パターンの形状補正装置100Zとして捉え、その構成および動作を説明した。ここでは、本発明を、図形パターンの形状補正方法という方法発明として捉えた説明を簡単に行っておく。
本発明を図形パターンの形状補正方法の発明として把握した場合、当該方法は、元図形パターンに基づくリソグラフィプロセスによって実基板上に実図形パターンを形成する際に、実図形パターンが元図形パターンに一致するように、元図形パターンの形状を補正して、リソグラフィプロセスで実際に用いる補正図形パターンを作成する方法ということになる。そして、この形状補正方法は、第1の準備段階と、第2の準備段階と、補正処理段階と、を有している。
第1の準備段階では、図36の流れ図で説明したとおり、コンピュータが、所定のテストパターン図形を用いたリソグラフィプロセスによって得られるであろう実図形が当該テストパターン図形に一致するように、当該テストパターン図形上に設定された複数の評価点Eについての位置補正量を示す最適補正バイアスzを決定する最適補正バイアス決定処理が、多数のテストパターン図形について行われる。
より詳細には、図36の流れ図に示されているとおり、内部と外部との境界を示す輪郭線を有するテストパターン図形を作成するテストパターン図形作成ステップS91と、所定の補正対象パターン図形の輪郭線上の所定位置に評価点Eを設定する評価点設定ステップS92と、評価点Eの周囲の特徴を示す特徴量x1〜xnを抽出する特徴量抽出ステップS93と、補正対象パターン図形上の評価点Eの位置と、補正対象パターン図形を用いたリソグラフィプロセスによって得られるであろう実図形上の評価点Eの位置と、のずれ量を示すプロセスバイアスyを、上記特徴量x1〜xnに基づいて推定するプロセスバイアス推定ステップS94と、プロセスバイアスyに基づいて実図形の形状を推定し、推定された実図形とテストパターン図形とのずれを示すエラー量eを算出するエラー量算出ステップS95と、が順次実行される。
続いて、エラー量eを相殺するために必要な、補正対象パターン図形上の評価点Eについての位置補正量を示す補正バイアスcを決定する補正バイアス決定ステップS97と、この補正バイアスcに基づいて、補正対象パターン図形の形状を補正して、補正後パターン図形を作成するパターン形状補正ステップS98と、が実行される。
しかも、テストパターン図形を最初の補正対象パターン図形として、評価点設定ステップS92、特徴量抽出ステップS93、プロセスバイアス推定ステップS94、エラー量算出ステップS95、補正バイアス決定ステップS97、パターン形状補正ステップS98を実行して補正後パターン図形を作成した後、作成された補正後パターン図形を新たな補正対象パターン図形として、評価点設定ステップS92、特徴量抽出ステップS93、プロセスバイアス推定ステップS94、エラー量算出ステップS95、補正バイアス決定ステップS97、パターン形状補正ステップS98を実行して新たな補正後パターン図形を作成する処理を、エラー量eが所定の許容範囲内に収まるまで繰り返し実行する。そして、最後に得られた補正後パターン図形を最終補正後パターン図形とし、テストパターン図形を最終補正後パターン図形に一致させるために必要な、テストパターン図形上の評価点Eについての位置補正量を最適補正バイアスzと決定する処理(ステップS99)が行われる。
なお、ステップS94のプロセスバイアス推定処理は、特徴量x1〜xnを入力層とし、プロセスバイアスの推定値yを出力層とするニューラルネットワークを用いて行うことができる。
一方、第2の準備段階では、図37の流れ図で説明したとおり、コンピュータが、各テストパターン図形について設定された複数の評価点Eについて、周囲の特徴を示す特徴量x1〜xnを抽出し、抽出した特徴量x1〜xnを入力としたときに、当該テストパターン図形について第1の準備段階で決定された最適補正バイアスzが出力されるような演算を行うための学習を、上記多数のテストパターン図形について実行することにより学習情報LZを得る学習処理が行われる。
そして、補正処理段階では、図33の流れ図のステップS2Z〜S5Zで説明したとおり、コンピュータが、元図形パターン10について設定された複数の評価点Eについて周囲の特徴を示す特徴量x1〜xnを抽出し、第2の準備段階で得られた学習情報LZを利用して、抽出した特徴量x1〜xnを入力とした場合の出力として、元図形パターン10上の各評価点Eについての最適補正バイアスzを求め、求めた最適補正バイアスzに基づいて元図形パターン10上の各評価点Eの位置を補正することにより補正図形パターン35を作成する処理が行われる。
なお、第2の準備段階の学習処理は、特徴量x1〜xnを入力層とし、最適補正バイアスの推定値zを出力層とするニューラルネットワークに利用するための学習情報を得る処理として行うことができ、その場合、補正処理段階の処理は、上記ニューラルネットワークを用いて行うことができる。