図1は、本発明の第1の実施の形態に係る欠陥検出装置1の構成を示す図である。欠陥検出装置1は、半導体基板(以下、「基板」という。)9を保持するステージ2、基板9を撮像して基板9上の多階調の画像データを取得する撮像部3、撮像部3に対してステージ2を相対的に移動するステージ駆動部21、および、各種演算処理を行うCPUや各種情報を記憶するメモリ等により構成されたコンピュータ4を備え、コンピュータ4は欠陥検出装置1の各構成を制御する制御部としての役割を果たす。
撮像部3は、照明光を出射する照明部31、基板9に照明光を導くとともに基板9からの光が入射する光学系32、および、光学系32により結像された基板9の像を電気信号に変換する撮像デバイス33を有し、撮像デバイス33から画像データが出力される。ステージ駆動部21はステージ2を図1中のX方向に移動するX方向移動機構22、および、Y方向に移動するY方向移動機構23を有する。X方向移動機構22はモータ221にボールねじ(図示省略)が接続され、モータ221が回転することにより、Y方向移動機構23がガイドレール222に沿って図1中のX方向に移動する。Y方向移動機構23もX方向移動機構22と同様の構成となっており、モータ231が回転するとボールねじ(図示省略)によりステージ2がガイドレール232に沿ってY方向に移動する。
欠陥検出装置1は、予め準備される参照画像を記憶する参照画像メモリ51、撮像部3により取得される基板9上の所定の検査領域の画像(すなわち、被検査画像)と参照画像との間の相対的な位置ずれ量を求める電気回路である位置ずれ量取得部6、位置ずれ量に基づいて被検査画像に対して参照画像の位置を合わせる位置補正部52、および、位置補正後の被検査画像と参照画像とを比較することにより被検査画像中の欠陥を検出する欠陥検出部53をさらに備え、これらの構成は、例えば、コンピュータ4に追加された専用の回路基板上に設けられる。
位置ずれ量取得部6には撮像部3から被検査画像の画素値が順次入力されるとともに、参照画像メモリ51から参照画像の対応する画素値も入力される。また、参照画像メモリ51と位置補正部52との間、および、撮像部3と欠陥検出部53との間には遅延回路541,542がそれぞれ設けられる。遅延回路541では参照画像メモリ51から入力される参照画像の画素値が所定の画素数(被検査画像または参照画像の画素数よりも多い画素数)だけ遅延されて位置補正部52に出力され、遅延回路542では撮像部3から入力される被検査画像の画素値が、遅延回路541による遅延量よりも多い画素数だけ遅延されて欠陥検出部53に出力される。なお、欠陥検出装置1では被検査画像を記憶するメモリが設けられ、メモリから読み出された被検査画像の画素値が位置ずれ量取得部6および遅延回路542に順次入力されてもよい。
図2は、位置ずれ量取得部6の構成を示す図である。位置ずれ量取得部6は、被検査画像および参照画像にローパスフィルタを作用させるフィルタ回路61、フィルタ回路61による処理後の被検査画像および参照画像の各画素の画素値を後述する増分符号化手法にて変換した値(以下、「変換値」という。)に置き換える符号化回路62、および、被検査画像および参照画像の各画素の変換値が入力されるずれ量算出部60を有し、ずれ量算出部60は、2つの値の比較結果を加算する複数の比較加算回路を配列して有する比較加算回路マトリクス63(二次元展開回路とも呼ばれる。)、および、比較加算回路マトリクス63からの出力に基づいて被検査画像と参照画像との間の位置ずれ量を決定するずれ量決定回路64を有する。図2では符号化回路62から出力される参照画像の各画素の変換値および被検査画像の対応する画素の変換値をそれぞれ符号b1,b2を付して示している。
また、位置ずれ量取得部6は、被検査画像および参照画像の画素の間引き数に係るダウンサンプリングサイズDSSを示す信号がコンピュータ4からそれぞれ入力される加算器選択回路65および加算タイミング選択回路66をさらに有する。ここで、DSSとは被検査画像および参照画像の画素のうち位置ずれ量取得部6における処理の対象として設定される画素の間隔のことである。加算器選択回路65はDSSに基づいて比較加算回路マトリクス63の複数の比較加算回路のうち能動化する比較加算回路を選択する加算回路イネーブル信号AENAを生成し、加算タイミング選択回路66は選択された比較加算回路を実際に能動化する画像イネーブル信号IENAを生成する。
図3は、ずれ量算出部60の構成を示す図である。図3に示す比較加算回路マトリクス63は、符号化回路62から参照画像の変換値b1が順次入力されるラインバッファ632a、および、所定の2つの行方向および列方向に関してs行s列に配列された複数の比較加算回路631を有する。
行方向に並ぶ比較加算回路631の列においてラインバッファ632a側の先頭の比較加算回路631には、その行番号に応じて遅延された変換値b1がラインバッファ632aから入力される。すなわち、参照画像の一の注目画素の変換値b1が最上段の行(第1行)の先頭の比較加算回路631aに入力される際には、次の行(第2行)の先頭の比較加算回路631には参照画像において注目画素より1ライン分だけ先行して入力された画素の変換値b1が入力され、再下段の行(第s行)の先頭の比較加算回路631には注目画素より(s−1)ライン分だけ先行して入力された画素の変換値b1が入力される。
行方向に並ぶ複数の比較加算回路631のそれぞれでは、ラインバッファ632a側の比較加算回路631またはラインバッファ632aから一の変換値b1が入力されると、次のクロックのパルスに応じてラインバッファ632aとは反対側に(すなわち、下流側に)隣接する比較加算回路631へとこの変換値b1を出力する(ただし、下流側に隣接する比較加算回路631が存在する場合に限る。)。したがって、比較加算回路マトリクス63全体では、参照画像の一部の領域に含まれる各画素の変換値b1が同時に対応する比較加算回路631に入力されることとなる。
比較加算回路マトリクス63は、さらに、符号化回路62から被検査画像の各画素の変換値b2が順次入力されるラインバッファ632bを有する。ラインバッファ632bでは、比較加算回路631の配列における中央の位置(以下、「基準位置」という。)の比較加算回路631に入力される変換値b1の画素に対応する被検査画像の画素の変換値b2を各比較加算回路631に同時に出力する。言い換えると、被検査画像の一の画素の変換値b2が各比較加算回路631に入力される際には、一の画素に対応する参照画像の画素およびその周囲の複数の画素の変換値b1が比較加算回路631にそれぞれ入力されることとなる。なお、後述するように変換値b1,b2は、それぞれ2ビットの値である。
図4は1つの比較加算回路631の構成を示す図である。比較加算回路631は、順次入力される被検査画像の各画素の変換値b2と参照画像の対応する画素またはその周囲の画素の変換値b1との比較結果を示す値を出力する比較回路(コンパレータ)633、比較回路633から出力される値を加算する加算回路634、並びに、加算回路イネーブル信号AENAおよび画像イネーブル信号IENAが入力されるAND回路635を有する。AND回路635では、例えばAENAおよびIENAが共に加算回路634を能動化すべきことを示す値「1」である場合にイネーブル信号ENAを加算回路634に出力する。加算回路634はENAが1とされる毎に能動化されて比較回路633からの値を順次加算し、その後、加算結果を図3のずれ量決定回路64に出力する。
図5は欠陥検出装置1が基板9上の欠陥を検出する処理の流れを示す図である。図1の欠陥検出装置1では、例えば、検査対象となる基板9と同じパターンが形成された基板である参照基板を撮像部3により撮像することにより参照画像が取得され、参照画像メモリ51に記憶されて準備される(ステップS11)。なお、参照画像は基板9上に形成されるパターンの設計データ等から生成されてもよく、基板9上の別の箇所を撮像して取得されてもよい。続いて、基板9がステージ2上に載置され、ステージ駆動部21により基板9上の検査領域が撮像部3による撮像位置に合わせられて被検査画像が取得される(ステップS12)。なお、既述のように実際には被検査画像の画素値が位置ずれ量取得部6に順次入力され、後述する演算処理が並行して行われる。
図6は参照画像71および被検査画像72の一例を示す図であり、図6では参照画像71および被検査画像72の一部を上下に並べて図示している。参照画像71には2つの矩形パターン711,712が含まれており、被検査画像72にも参照画像71の矩形パターン711,712とそれぞれほぼ同じ大きさの矩形パターン721,722が含まれている。
図6に示すように、参照画像71中の矩形パターン711に対して被検査画像72中の矩形パターン721の位置が(+X)方向に距離d1だけずれており、参照画像71中の矩形パターン712に対して被検査画像72中の矩形パターン722の位置は、(+X)方向に距離(d1+d2)だけずれている。すなわち、図6の参照画像71と被検査画像72との間には、例えば被検査画像72を取得する際におけるステージ駆動部21の位置決め精度に起因する全体的な位置ずれが距離d1だけ生じており、矩形パターン712と矩形パターン722との間には、例えば基板9上にパターンを形成する際に利用されるフォトマスクの伸縮や電子ビームを利用したパターン描画装置における描画対象のチャージアップによる電子ビームのずれ等に起因する局所的な位置ずれが距離d2だけさらに生じている。なお、一般的には、全体的な位置ずれは局所的な位置ずれよりも大きい。
図1の欠陥検出装置1では、撮像部3から被検査画像72の各画素値が順次出力され、参照画像メモリ51から参照画像71の対応する画素値が出力され、位置ずれ量取得部6により、参照画像71と被検査画像72との間の全体的な位置ずれ量(上記説明における距離d1に相当する位置ずれ量)が求められる(ステップS13)。
図7は被検査画像72における検査の有効領域723を示す図である。ここで、位置ずれ量取得部6において想定される参照画像71と被検査画像72との間の全体的な最大位置ずれ量はX方向およびY方向に関してn画素(nは正の整数)とされ、この場合、図7に示す被検査画像72では外縁からn画素だけ内側の部分が、検査の有効領域723とされる。なお、位置ずれ量を求める処理については欠陥検出処理の全体説明の終了後に詳述する。
位置ずれ量取得部6において位置ずれ量が取得されると、図1の遅延回路541から遅延された参照画像71の画素値が位置補正部52へと順次入力される。位置補正部52は、例えば、図3に示す比較加算回路マトリクス63における複数の比較加算回路631がそれぞれが1つの画素値を1画素分遅延する複数のシフトレジスタに置き換えられた回路を有しており(ただし、被検査画像72の画素値は入力されず、シフトレジスタの数は(2n+1)×(2n+1)とされる。)、複数のシフトレジスタのうち取得された位置ずれ量に対応する位置のシフトレジスタからの画素値が選択されて欠陥検出部53へと出力される。
一方、遅延回路542では位置補正部52の基準位置に位置するシフトレジスタから出力される参照画像71の画素値に合わせて遅延して被検査画像72の画素値を欠陥検出部53に入力する。したがって、欠陥検出部53には、順次入力される被検査画像72の画素値に対して取得された位置ずれ量だけずれた位置の参照画像71の画素値が入力されることとなる。このようにして、位置補正部52では被検査画像72に対して参照画像71の位置が実質的に合わせられて、参照画像71と被検査画像72との間の全体的な位置ずれが補正される(ステップS14)。このとき、シフトレジスタの数は((2n+1)×(2n+1))とされるため、位置補正部52における位置合わせ可能な範囲はX方向およびY方向に±n画素内となる。なお、位置補正部52における両画像71,72の位置ずれの補正は、上記の例のように画素値の遅延量を調整する以外に、例えば、参照画像メモリ51から欠陥検出部53に画素値が直接出力されるようにしておき、参照画像メモリ51から読み出すアドレスを調整することにより実現されてもよい。
続いて、欠陥検出部53では、位置補正後の参照画像71の一部の領域(以下、「局所領域」という。)を、被検査画像72上の対応する位置から2次元的に移動しつつ局所領域に含まれる画素値と被検査画像72の対応する画素値とを比較することにより、被検査画像72中の欠陥が局所的に検出される(ステップS15)。欠陥検出の手法としては、例えば、上述の特許文献3に記載された手法が利用される。これにより、より適切に欠陥を検出することができる。
具体的には、まず、被検査画像72を分割して得られる同じ大きさの複数の局所領域が設定される。続いて、位置補正後の参照画像71において被検査画像72の一の局所領域に対応する局所領域をX方向およびY方向に移動し、複数の位置(そのままの位置を含む)への移動後の参照画像71の局所領域と被検査画像72との差分絶対値画像を求めることにより複数の差分絶対値画像が取得される。このとき、参照画像71の局所領域が位置補正後の位置から移動する際の最大移動距離は、位置ずれ量取得部6において想定される最大位置ずれ量nよりも小さく設定される。
続いて、各差分絶対値画像に対して膨張処理が施され、各画素位置における複数の差分絶対値画像の画素値の最小値を画素値として有する最小値画像が欠陥検出結果として生成される。その際、欠陥検出部53では被検査画像72の有効領域723に含まれる画素値のみが欠陥検出に有効な画素値として取り扱われる。なお、必要に応じて、最小値画像が所定のしきい値にて2値化されて欠陥部分と非欠陥(正常)部分とが明確に区別されてもよい。
欠陥検出部53では、複数の局所領域のそれぞれに対して上記処理が繰り返される。これにより、図6に示す被検査画像72のように参照画像71に対して全体的な位置ずれに加えて局所的な位置ずれが生じている場合であっても、被検査画像72の全体に対して適切にかつ効率よく欠陥が検出される。すなわち、仮に、全体的な位置補正を行うことなく欠陥検出部53にて欠陥を検出する場合、被検査画像72に対して参照画像71を移動させる範囲を広くする必要が生じ、多値の画素値を保存するハードウェアリソースが非常に大きくなってしまう。これに対し、欠陥検出装置1では全体的な位置合わせが予め行われるため、参照画像71を移動させる範囲を大幅に縮小することができ、少ないハードウェアリソースにて効率よく欠陥を検出することが実現される。特に、欠陥検出部53における参照画像71の最大移動距離を位置ずれ量取得部6において想定される最大位置ずれ量よりも小さくすることにより、欠陥検出の処理をさらに効率よく行うことができる。
欠陥検出結果はコンピュータ4に出力されてコンピュータ4の記憶部に記憶され、必要に応じて表示部に表示される。なお、位置補正後の参照画像71を分割することにより複数の局所領域が設定され、各局所領域を被検査画像72の対応する位置からX方向およびY方向に揺すらせつつ比較して局所的な欠陥検出が行われてもよい。
また、欠陥検出部53における局所的な欠陥検出の他の手法として、上述の特許文献2における2値の被検査画像および2値の参照画像に対する欠陥検出手法を多値画像に応用したものが採用されてもよい。具体的には、まず、位置補正後の参照画像の一の局所領域を被検査画像に対してX方向およびY方向に移動し、各位置(そのままの位置を含む)への移動後の参照画像の局所領域と被検査画像との差分絶対値画像を求めることにより複数の差分絶対値画像を取得する。そして、いずれかの差分絶対値画像から欠陥が検出されなかった場合に(例えば、差分絶対値画像を2値化した場合にいずれかの2値画像が画素値が1の所定の大きさの領域を有さない場合に)、参照画像のこの局所領域に対応する被検査画像の局所領域が欠陥を含まないと判定される。
以上のように、図1の欠陥検出装置1では、位置ずれ量に基づいて位置補正部52により位置ずれが補正された被検査画像72および参照画像71において、一の画像の局所領域を他の画像の対応する位置から揺すらせつつ局所領域と他の画像とを比較することにより被検査画像72中の欠陥が局所的に検出される。このとき、欠陥検出装置1では全体的な位置ずれが予め補正されることにより局所領域の最大移動距離を小さくすることができるため、局所的な位置ずれを考慮した基板9上の欠陥検出を効率よく行うことができる。
次に、図5のステップS13における位置ずれ量を求める処理について説明する。図8は位置ずれ量を求める処理の流れを示す図である。欠陥検出装置1では、欠陥検出処理を開始する前にダウンサンプリングサイズDSSがコンピュータ4から図2の位置ずれ量取得部6に予め入力され、位置ずれ量取得部6における処理対象の画素が特定される。以下、位置ずれ量を求める処理の基本的な例としてDSSが1の場合について最初に説明し、その後、DSSが1以外の場合について説明する。
図9はDSSが1の場合の被検査画像72中の画素を示す図であり、処理対象の画素を平行斜線を付して図示している。また、図9では有効領域723のコーナー部分を示している。図9に示すように、DSSが1の場合には全ての画素が処理対象の画素として設定される。
DSSが1として設定された図2の位置ずれ量取得部6に参照画像71および被検査画像72の各画素値が入力されると、フィルタ回路61は実質的に参照画像71および被検査画像72に対して平均値フィルタ等のローパスフィルタを作用させ、処理後の参照画像71の画素値および被検査画像72の画素値が符号化回路62へと順次出力される(ステップS21)。
図10は符号化回路62において変換値を算出する際に利用される画素の位置を説明するための図である。符号化回路62では、参照画像71および被検査画像72の各画素について周囲の画素値を利用して変換値が算出され、画素値が変換値に置き換えられる。例えば、図10において符号73を付して示す画素が処理される際には、画素73に対して互いに垂直な2つの画素配列方向(すなわち、X方向およびY方向)および2つの画素配列方向に対して傾斜した方向にそれぞれ隣接する3つの画素731の画素値を用いて変換値が算出される。より具体的には、参照画像71の変換値b1(x,y)は参照画像71の画素値g1(x,y)を用いて数1により求められ、同様に被検査画像72の変換値b2(x,y)は被検査画像72の画素値g2(x,y)を用いて数2により求められる。なお、数1および数2において、xはX方向の位置を示し、yはY方向の位置を示す。また、(?1:0)は直前の不等式が真である場合に1を返し、偽である場合には0を返すことを表している。
符号化回路62では数1および数2に従って演算を行うことにより、多階調の参照画像71および多階調の被検査画像72の各画素の画素値g1(x,y),g2(x,y)を、異なる方向に隣接する複数の画素の画素値g1(x+i,y+j),g2(x+i,y+j)(ただし、i,jは0または1)との大小関係を示す符号から導かれる変換値b1(x,y),b2(x,y)(2次元的な増分を符号化した値)に置き換える処理が行われ、2次元的な増分符号化がなされた画像として実質的に新たな参照画像および新たな被検査画像が生成される(ステップS22)。このとき、変換値b1,b2は1〜4の値であり、位置ずれ量取得部6では2ビットデータとして取り扱われる。なお、実際には数1および数2におけるi,jが共に0である場合の演算は行われずに、変換値b1,b2が0〜3の値として出力される。
2ビットの変換値b1,b2は図3の比較加算回路マトリクス63へと順次出力され、複数の比較加算回路631には、被検査画像72の一の位置(以下、「注目位置」という。)の画素の変換値b2が入力されると同時に、参照画像71の注目位置の周囲(注目位置を含む。)の複数の画素の変換値b1もそれぞれ入力される。そして、図4に示す比較回路633において、被検査画像72の注目位置の画素の変換値b2と参照画像71の注目位置の周囲の一の画素の変換値b1とが比較され、変換値b1,b2の双方の値が一致する場合には比較結果として、例えば「1」が加算回路634に出力され、一致しない場合には「0」が出力される。
加算器選択回路65ではダウンサンプリングサイズDSSが1とされるため、全ての加算回路634を能動化するための加算回路イネーブル信号AENAが生成され、加算タイミング選択回路66では変換値b1,b2が比較加算回路マトリクス63に入力される毎に加算回路634を能動化する1ビットの画像イネーブル信号IENAが生成される。これにより、変換値b1,b2が入力される毎にAND回路635から加算回路634を能動化するイネーブル信号ENAが出力され、全ての加算回路634において対応する比較回路633から出力される値が加算される。なお、正確には、被検査画像72の有効領域723に含まれない画素の変換値b2に係る比較結果が入力される際には、全ての加算回路634が能動化されず、加算は行われない。
比較加算回路マトリクス63では、参照画像71および被検査画像72の全ての画素の変換値b1,b2が順次入力され、変換値b1,b2の比較および比較結果を示す値の加算が繰り返される。このとき、比較回路633から出力される比較結果の値が1ビットであるため、例えば、被検査画像72の有効領域723に(1024×1024)個の画素が含まれる場合には、加算回路634に必要なレジスタのビット数は20ビット(210×210×20=220)となる。
参照画像71および被検査画像72の全ての画素の変換値b1,b2の入力が完了すると、最終的な加算結果を示す値(以下、「加算値」という。)は図3のずれ量決定回路64に出力されて複数の加算値のうちの最大値が検出され、最大値を出力した比較加算回路631が特定される。比較加算回路631の配列の行方向および列方向はそれぞれX方向およびY方向に対応しており(回路は、実際に幾何学的に行方向および列方向に配列されるとは限らない)、基準位置は位置ずれ量が0の位置であるため、ずれ量決定回路64では特定された比較加算回路631の基準位置に対するX方向およびY方向の相対位置を被検査画像72に対する参照画像71の位置ずれ量として決定する(ステップS23)。そして、求められた位置ずれ量は位置補正部52に入力され、被検査画像72および参照画像71の位置ずれの補正に利用される。
なお、各加算回路634では単なる加算値が参照画像71と被検査画像72との(または、これらを符号化した画像の)相関値として求められるのではなく、例えば、入力される比較結果を示す正規化された値が算出されてもよい。具体的には、加算回路634において数3に示す演算が行われて参照画像71および被検査画像72の画素数に依存しない濃淡の変化の相関値Riscが算出されてもよい。この場合も、相関値が最大となる比較加算回路631の位置に基づいて位置ずれ量が決定される。なお、数3では有効領域723に(N×N)個の画素が含まれているものとしている。また、(?1:0)は直前の不等式が真である場合に1を返し、偽である場合には0を返すことを表している。
このように、専用の電気回路である位置ずれ量取得部6では、符号化回路62により新たな被検査画像および新たな参照画像が生成され、ずれ量算出部60(比較加算回路マトリクス63およびずれ量決定回路64)により新たな被検査画像に対して新たな参照画像を相対的に移動して実質的に新たな被検査画像と新たな参照画像との間の相関が最大となる時の新たな被検査画像と新たな参照画像との間のずれ量が位置ずれ量として求められる。これにより、適切な位置ずれ量を高速に求めることができる。なお、比較回路633において変換値b1,b2の双方の値が一致する場合には「0」が出力され、一致しない場合には「1」が出力されることにより、加算回路634による加算値が相違を示す値として出力され、新たな被検査画像と新たな参照画像との間の相違が最小となる時の位置ずれ量がずれ量決定回路64により決定されてもよい。
次に、DSSが1以外の例として、DSSが2である場合について説明する。図11はDSSが2の場合の被検査画像72中の画素を示す図であり、処理対象の画素を平行斜線を付して図示している。図11に示すように、DSSが2の場合にはX方向およびY方向に関して1画素おきに処理対象の画素(以下、「対象画素」という。)が設定される。
位置ずれ量取得部6では、DSSが1の場合と同様に、フィルタ回路61にて参照画像71および被検査画像72に対してローパスフィルタを作用させ、処理後の参照画像71の画素値および被検査画像72の画素値が符号化回路62へと順次入力される(図8:ステップS21)。
符号化回路62では、例えば、図10において画素73の画素値が処理される際には、参照画像71および被検査画像72の画素73の画素値が、X方向およびY方向並びにこれらの方向に対して傾斜した方向に関してそれぞれ1画素分だけ離れて隣接する3つの画素732の画素値との大小関係を示す符号から導かれる変換値b1,b2に置き換えられて比較加算回路マトリクス63に出力される(ステップS22)。各比較回路633では、被検査画像72の一の位置(注目位置)の画素の変換値b2と参照画像71の注目位置の周囲のいずれかの画素の変換値b1とが比較され、比較結果を示す値が加算回路634に出力される。
図12は比較加算回路マトリクス63において能動化される加算回路634を概念的に示す図であり、想定される最大位置ずれ量が2である比較加算回路マトリクス63においてDSSが2とされた場合を示している。図12に示すように、加算器選択回路65では参照画像71の複数の画素のうちDSSに基づいて設定された間隔で存在する対象画素に対応する加算回路634のみを実質的に能動化するための加算回路イネーブル信号AENAが生成される。具体的には、参照画像71の対象画素に対応する比較加算回路631にはENABLEを示すAENAが入力され、他の比較加算回路631にはDISABLEを示すAENAが入力される。
また、加算タイミング選択回路66(図2参照)から画像イネーブル信号IENAが各比較加算回路631に順次入力され、被検査画像72中の対象画素の変換値b2が注目位置の画素の変換値として入力される際には加算器選択回路65により選択された加算回路634が能動化され、被検査画像72中の対象画素以外の画素の変換値が入力される際には全ての加算回路634が能動化されない。これにより、被検査画像72の一の位置の対象画素の変換値と、参照画像71の一の位置の周囲の複数の対象画素の変換値との比較結果を示す値のみが加算回路634において加算される。
そして、参照画像71および被検査画像72の全ての画素の変換値が比較加算回路マトリクス63に入力された後、ずれ量決定回路64では複数の加算回路634からそれぞれ入力される複数の加算値のうちの最大値を出力した加算回路634が特定される。これにより、実質的に縮小(すなわち、リサイズ)された新たな被検査画像および新たな参照画像に基づいて、ずれ量算出部60により被検査画像と参照画像との間の位置ずれ量が決定される(ステップS23)。
図13.Aおよび図13.Bは、それぞれDSSが3および4の場合の被検査画像72中の画素を示す図であり、処理対象の画素を平行斜線を付して図示している。DSSが3の場合には図13.Aに示すようにX方向およびY方向に2画素おきに対象画素が設定され、図10中の画素73の変換値が算出される際には符号733を付す3つの画素の画素値が用いられる。また、DSSが4の場合には図13.Bに示すようにX方向およびY方向に3画素おきに対象画素が設定され、図10中の画素73の変換値が算出される際には符号734を付す3つの画素の画素値が用いられる。そして、DSSに基づいてAENA、IENAが生成され、対象画素の変換値のみに基づく加算値が算出され、位置ずれ量が特定される。
以上のように、図2の位置ずれ量取得部6では、被検査画像72の一の位置の画素の値と参照画像71の対応する位置の周囲の複数の画素の値との比較結果をそれぞれ出力する複数の比較回路633が設けられ、複数の比較回路633に複数の加算回路634がそれぞれ接続される。そして、ダウンサンプリングサイズDSSに基づいて選択された加算回路634が能動化されて比較結果が加算され、加算値に基づいて位置ずれ量が求められる。これにより、ダウンサンプリングサイズDSSを変更して比較加算回路マトリクス63のサイズを自在に変更することができ、実質的に被検査画像72および参照画像71を任意に縮小して位置ずれ量を容易に取得することが実現される。
また、位置ずれ量取得部6では、被検査画像72および参照画像71の各画素の画素値が、異なる方向に隣接する複数の画素の値との大小関係を示す符号から導かれる2ビットの値に置き換えられることにより、位置ずれ量を求める際の演算量が削減されるとともに、ラインバッファおよびシフトレジスタを有する比較加算回路マトリクス63やずれ量決定回路64を簡素化してハードウェアリソースを削減することもできる。
なお、上述の非特許文献1では、画像中の一方向における画素値の増減の符号に着目して画像を照合する手法(増分符号相関法)が記載されているが、この手法では1次元での画素値の変化のみが考慮されているだけであり、被検査画像と参照画像との間の一致の度合いを精度よく求めることができない可能性がある。これに対して、符号化回路62では被検査画像72および参照画像71の各画素の値が、異なる方向に隣接する複数の画素の画素値を用いて変換値に置き換えられて加算値(すなわち、相関値)が算出されるため、被検査画像72と参照画像71との間の適切な位置ずれ量を容易に求めることができる。その結果、欠陥検出装置1では被検査画像72中の欠陥を効率よく検出することができる。
図14は本発明の第2の実施の形態に係る欠陥検出装置の位置ずれ量取得部6aを示す図である。位置ずれ量取得部6aでは、図2の位置ずれ量取得部6と比較して、加算器選択回路65および加算タイミング選択回路66に代えてサンプリングクロック生成部67および画像縮小回路68が設けられるとともに、ずれ量算出部60aの比較加算回路の構成が相違する。他の構成は同様であり、同符号を付している。
図14のサンプリングクロック生成部67にはコンピュータ4からダウンサンプリングサイズDSSが入力されるとともに、図示省略のクロック生成部から画像処理クロックPCLKが入力される。サンプリングクロック生成部67では、DSSに基づいて後述のサンプリングクロックSPCLKが生成されて画像縮小回路68、符号化回路62、比較加算回路マトリクス63aおよびずれ量決定回路64に入力され、これらの回路がSPCLKに同期して作動する。
図15は比較加算回路マトリクス63aの比較加算回路631aの構成を示す図である。図15に示す比較加算回路631aでは、図4の比較加算回路631からAND回路635が省かれ、比較回路633および加算回路634にはそれぞれサンプリングクロック生成部67からSPCLKが入力される。
図16は被検査画像72の一部を示す図であり、対象画素を平行斜線を付して示している。また、図17は画像処理クロックPCLKおよびサンプリングクロックSPCLKを説明するための図であり、図17の上段は画像処理クロックPCLKを示し、図17の下段はサンプリングクロックSPCLKを示している。図16に示すようにDSSが2として対象画素が設定されている場合には、サンプリングクロック生成部67では、図17の上段に示すPCLKに対して、図17の下段に示すSPCLKが生成される。具体的には、被検査画像72のある1ライン分の範囲(図17中において符号81を付して示す範囲)におけるPCLKに対しては1周期おきにパルスが間引かれ、次の1ライン分の範囲81におけるPCLKに対しては全てのパルスが間引かれる。これにより、図17の下段に示すSPCLKが生成される。
位置ずれ量取得部6aでは、フィルタ回路61による処理(図8:ステップS21)の後の被検査画像72および参照画像71の各画素値が画像縮小回路68にてサンプリングクロックSPCLKに応じて間引かれ、対象画素の画素値のみが符号化回路62に出力される。符号化回路62では、被検査画像72および参照画像71の各対象画素の画素値が、異なる方向に隣接する複数の対象画素の値との大小関係を示す符号から導かれる変換値b1,b2に置き換えられて比較加算回路マトリクス63aに出力され(ステップS22)、比較回路633における比較結果を示す値が加算回路634にて加算される。そして、ずれ量決定回路64により加算回路634の加算値に基づいて位置ずれ量が決定された後(ステップS23)、被検査画像72に対して参照画像71の位置が合わせられ(図5:ステップS14)、位置補正後の被検査画像72および参照画像71に基づいて被検査画像72中の欠陥が局所的に検出される(ステップS15)。
以上のように、図14の位置ずれ量取得部6aでは、リアルタイム処理においてサンプリングクロックSPCLKを生成することにより、ダウンサンプリングサイズDSSを自在に変更して実質的に被検査画像72および参照画像71を縮小し、欠陥検出に際して被検査画像72と参照画像71との間の位置ずれ量が容易に求められる。そして、位置ずれ量に基づいて全体的な位置ずれを補正することにより、欠陥検出装置では局所的な位置ずれを考慮した基板9上の欠陥検出を効率よく行うことができる。
図18は、本発明の第3の実施の形態に係る欠陥検出装置1bの構成を示す図である。図18の欠陥検出装置1bでは、第2の実施の形態に係る欠陥検出装置に対して位置ずれ量取得部6b、遅延回路541b,542b、および、位置補正部52bが付加される。
例えば、サンプリングクロック生成部67を有する位置ずれ量取得部6a(図14参照)におけるダウンサンプリングサイズDSSが2以上とされ、実質的に被検査画像72および参照画像71を縮小して画素数を減少させる(すなわち、解像度を粗くする)ことにより、X方向およびY方向に関してDSSに応じて間引かれた画素数分の誤差を含む位置ずれ量が取得され(図5:ステップS13)、この位置ずれ量に基づいて位置補正部52にて被検査画像72および参照画像71の位置ずれが補正される(ステップS14)。
続いて、位置ずれ量取得部6bでは、DSSが1とされることにより位置補正後の被検査画像72と参照画像71とに基づいてより正確な位置ずれ量が求められる(ステップS13)。このとき、位置ずれ量取得部6bでは、位置ずれ量取得部6aにてX方向およびY方向に間引かれた画素数が最大位置ずれ量とされる。位置補正部52bでは、入力される位置ずれ量に基づいて被検査画像72に対して参照画像71の位置が合わせられ、より正確に位置ずれが補正された被検査画像72および参照画像71を局所的に比較することにより、欠陥検出部53において被検査画像72中の欠陥が検出される。このように、欠陥検出装置1bでは位置ずれ量を求めて位置ずれを補正する処理が実質的に2階層化される。
具体例として、想定される最大位置ずれ量が10画素(すなわち、位置合わせ範囲が±10画素)である場合に、図18の欠陥検出装置1bにおいて前段の位置ずれ量取得部6aには11行11列に配列された121個の比較加算回路631aが設けられてダウンサンプリングサイズDSSが2とされ、後段の位置ずれ量取得部6bには3行3列に配列された9個の比較加算回路631aが設けられるとともにDSSが1とされる。したがって、位置ずれ量取得部6a全体では、合計で130個の比較加算回路631aが設けられる。これに対して、2階層化せずに同じ精度にて位置ずれを補正する場合には、21行21列に配列された441個の比較加算回路が必要となる。
以上のように、欠陥検出装置1bでは階層化を用いてよりロバストなパターンマッチングを実現することができるとともに、少ない比較加算回路631aにて広範囲における位置ずれ量を精度よく求めることができ、被検査画像72と参照画像71との間の位置ずれをより効率よく補正することができる。なお、後段の位置ずれ量取得部6bにおけるDSSが1よりも大きくても(すなわち、最下層での処理を行わなくても)、欠陥検出部53における局所領域の最大移動距離を考慮すれば、欠陥検出装置1bでは精度よく欠陥を検出することが可能である。
上記の欠陥検出装置では符号化回路62が省略されて比較加算回路マトリクス63,63aの各比較加算回路631,631aに被検査画像72および参照画像71の画素値が直接入力されてもよい。この場合は、画像照合の手法として一般的に知られている残差検定法(Similarity detection algorithm)が採用されることが回路設計上好ましい。
図19は残差検定法が採用される場合の比較加算回路631cの構成を示す図である。図19の比較加算回路631cでは図4または図15の比較加算回路631,631aにおける比較回路633に代えて差分絶対値算出回路636が設けられ、差分絶対値算出回路636には被検査画像72および参照画像71の画素値が入力される。差分絶対値算出回路636では入力される被検査画像72の画素値と参照画像71の画素値との差分絶対値が算出され、加算回路634では差分絶対値が加算される。そして、被検査画像72の全ての画素値が処理されると、複数の加算回路634からずれ量決定回路64に複数の加算値が入力され、加算値が最小となる加算回路634(すなわち、差分残差が最小となる位置)が特定されてその位置に基づいて位置ずれ量が決定される。
また、他の手法としては、所定の式を用いて相関値を算出する回路が図4または図15の比較加算回路631,631aに代えて設けられてもよい。例えば、画像照合の手法として一般的に知られている正規化相関法が採用される場合には、参照画像71を移動しつつ参照画像71と被検査画像72との相互相関係数が求められ、最も相関係数が大きくなるときの被検査画像72に対する参照画像71の相対位置が位置ずれ量として求められる。
このように、被検査画像72に対して参照画像71を相対的に移動して実質的に被検査画像72と参照画像71との間の相関が最大(または、相違が最小)となる時の被検査画像72と参照画像71との間のずれ量が位置ずれ量として求められるのであれば、位置ずれ量取得部として様々な電気回路を適用することが可能である。また、被検査画像72に対して参照画像71を移動しつつ相関または相違を求めるという手法を採用することにより、シフトレジスタを用いて容易に専用の電気回路として位置ずれ量取得部を構築することができる。
以上、本発明の実施の形態について説明してきたが、本発明は上記実施の形態に限定されるものではなく、様々な変形が可能である。
上記実施の形態では、位置ずれ量に基づいて被検査画像72に対して参照画像71の位置が合わせられるが、参照画像71に対して被検査画像72の位置が合わせられてもよい。すなわち、位置補正部52,52bでは被検査画像72に対して参照画像71の位置が相対的に合わせられる。
また、符号化回路62では隣接する1または2の画素の画素値を用いて一の画素の変換値が算出されてもよい。特に、幾何学的なパターンの検査が行われる場合には、互いに垂直な2方向に隣接する2つの画素の画素値を用いて変換値を算出するだけでも十分に位置合わせを行うことができる。すなわち、被検査画像72および参照画像71の各画素に対して隣接する少なくとも1つの画素の画素値を用いて変換値が算出されることにより、位置ずれ量を求める際の演算量の削減または演算回路の簡素化を図ることができる。
上記第3の実施の形態では、2つの位置ずれ量取得部6a,6b、および、2つの位置補正部52,52bが設けられることにより、位置ずれ量を求めて位置ずれを補正する処理が実質的に2階層化されるが、もちろん、3以上に階層化されてもよい。
欠陥検出装置における欠陥検出の対象物は半導体基板に限定されず、例えばプリント配線基板、フォトマスク、あるいは、リードフレーム等であってもよい。