(57)【要約】【課題】煩雑な作業を必要とせずに、パターンの欠陥検査を効率よく行う技術を提供する。【解決手段】外観検査装置１は、撮影部３が撮影したパターンの形成された基板９表面の画像に基づいて、パターンの欠陥を検出する検査部５を備えている。検査部５は、検査内容を規定する複数の検査タスクを保持する検査タスク保持部５１と、欠陥検出に関する画像処理を実行する複数のＧＰＵ５９１と、検査タスクに従って、複数の前記画像処理部のそれぞれを制御する画像処理制御部５５とを備えている。画像処理制御部５５は、複数のＧＰＵ５９１に対し、検査タスクに基づく画像処理を終えた順に、検査タスク保持部５１に保持された次の検査タスクに従って、新たな画像処理を順次実行させる。【選択図】図２
2013148380.tif 000002
【特許請求の範囲】
【請求項１】
パターンが形成された基板を撮影した画像に基づいて、前記パターンの欠陥を検出する外観検査装置であって、
検査内容を規定する複数の検査タスクを保持する検査タスク保持部と、
欠陥検出に関する画像処理を実行する複数の画像処理部と、
前記検査タスクに従って、複数の前記画像処理部のそれぞれを制御する画像処理制御部と、
を備え、
前記画像処理制御部は、
複数の前記画像処理部に対し、前記検査タスクに基づく画像処理を終えた順に、前記検査タスク保持部に保持された次の前記検査タスクに従って、新たな画像処理を順次実行させる外観検査装置。
【請求項２】
請求項１に記載の外観検査装置において、
撮影部が撮影した画像データを保持する画像データ保持部と、
前記画像処理部が画像処理を実行する画像データであり、前記撮影部が撮影した領域を分割した分割領域の画像データが保存される画像処理用メモリと、
をさらに備え、
前記画像処理制御部は、
前記画像データ保持部に保持された画像データに、前記画像処理部が処理する前記分割領域の画像データが含まれているか否か判定し、含まれている場合には、該分割領域の画像データを前記画像処理用メモリに転送させる外観検査装置。
【請求項３】
請求項１または２に記載の外観検査装置において、
前記撮影部は、ラインセンサを含み、
前記画像処理制御部は、前記撮影部によって、あらかじめ定められたライン数の画像データが取得され、画像保存メモリに保存された場合に、該画像データを前記画像処理用メモリに転送させる外観検査装置。
【請求項４】
請求項１から３までのいずれか１項に記載の外観検査装置において、
前記画像処理部がＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）を含む外観検査装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、基板に形成されたパターンの欠陥を検査する技術に関する。
【背景技術】
【０００２】
従来、半導体ウエハなどの基板上に形成された回路パターンの欠陥を検出する場合、回路パターンの画像を取得し、基準となる参照画像との比較に基づいて、欠陥箇所を抽出する外観検査が行われている。最近では、処理を高速に行うため、複数のプロセッサエレメントを備えた並列データ処理型の外観検査装置が提案されている（例えば、特許文献１）。
【０００３】
具体的に、特許文献１に記載の外観検査装置では、ラインセンサでスキャン撮影した画像を分割する際、全体制御コンピュータが、複数のプロセッサエレメントの各々に分割された画像を分配する条件を設定する。そして画像分配処理部は、その分配条件に従って上記画像を分割し、それぞれをプロセッサエレメントに転送する。そして各プロセッサエレメントは、規定された検査処理を行って、回路パターンの欠陥を抽出する。
【０００４】
また、特許文献１に記載の外観検査装置では、プロセッサエレメントの処理能力や、検査アルゴリズム毎の演算負荷に基づいて、切り出す画像の範囲を調整している。これにより、各プロセッサエレメントに負荷が均等にかかるようにして、プロセッサエレメントの処理能力を効率よく活用するようにしている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１１−０２８４１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に記載の外観検査装置では、複数のプロセッサエレメントに対して、バランスよく演算処理の負荷をかけるために、あらかじめ、試験的に検査を行って、各プロセッサエレメントに対する負荷比率を調整する必要がある。また、検査時間の短縮のために、プロセッサエレメントを増やすような場合には、プロセッサエレメントに対する負荷比率を再調整する煩雑な作業を必要とする。
【０００７】
また、特許文献１に記載の外観検査装置では、検査が開始される前に、切り出された画像と、それを処理するプロセッサエレメントとが結びつけられる。このため、切り出された画像に含まれる欠陥の大きさまたは量に応じて、処理時間が変化してしまう場合もあり、複数のプロセッサエレメントにかかる負荷のバランスが崩れてしまう可能性が高くなっている。
【０００８】
本発明は、上記課題に鑑みなされたものであり、煩雑な作業を必要とせずに、パターンの欠陥検査を効率よく行う技術を提供することを目的としている。
【課題を解決するための手段】
【０００９】
上記の課題を解決するため、第１の態様は、パターンが形成された基板を撮影した画像に基づいて、前記パターンの欠陥を検出する外観検査装置であって、検査内容を規定する複数の検査タスクを保持する検査タスク保持部と、欠陥検出に関する画像処理を実行する複数の画像処理部と、前記検査タスクに従って、複数の前記画像処理部のそれぞれを制御する画像処理制御部とを備え、前記画像処理制御部は、複数の前記画像処理部に対し、前記検査タスクに基づく画像処理を終えた順に、前記検査タスク保持部に保持された次の前記検査タスクに従って、新たな画像処理を順次実行させる。
【００１０】
また、第２の態様は、第１の態様に係る外観検査装置において、撮影部が撮影した画像データを保持する画像データ保持部と、前記画像処理部が画像処理を実行する画像データであり、前記撮影部が撮影した領域を分割した分割領域の画像データが保存される画像処理用メモリとをさらに備え、前記画像処理制御部は、前記画像データ保持部に保持された画像データに、前記画像処理部が処理する前記分割領域の画像データが含まれているか否か判定し、含まれている場合には、該分割領域の画像データを前記画像処理用メモリに転送させる。
【００１１】
また、第３の態様は、第１または第２の態様に係る外観検査装置において、前記撮影部は、ラインセンサを含み、前記画像処理制御部は、前記撮影部によって、あらかじめ定められたライン数の画像データが取得され、画像保存メモリに保存された場合に、該画像データを前記画像処理用メモリに転送させる。
【００１２】
また、第４の態様は、第１から第３の態様までのいずれか１態様に係る外観検査装置において、前記画像処理部がＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）を含む。
【発明の効果】
【００１３】
第１の態様に係る外観検査装置によると、各画像処理部に対して、画像処理を終えた順に、次の新たな画像処理を実行させため、各画像処理部を常に稼働状態とすることができる。したがって、複数の画像処理部の処理能力を無駄なく活用できる。また、欠陥の程度に応じて、個々の画像処理時間が変動しても、全ての画像処理部に対して、バランスよく負荷をかけることができる。したがって、検査前に煩雑な準備を必要とせず、容易に検査効率の向上を図ることができる。
【００１４】
第２の態様に係る外観検査装置によると、画像処理部が画像処理を実行する分割領域の撮影が完了した場合に、その画像データを画像処理用メモリに転送することができる。これにより、画像処理を実施することが可能となる。
【００１５】
第３の態様に係る外観検査装置によると、ライセンサーが検出した回数（ライン数）に応じて、画像データの転送を行うことができる。
【００１６】
第４の態様に係る外観検査装置によると、画像処理部としてＧＰＵを利用することにより、欠陥検出に関する画像処理演算を高速に行うことができる。
【図面の簡単な説明】
【００１７】
【図１】実施形態に係る外観検査装置の概略構成図である。
【図２】実施形態に係る外観検査装置の機能ブロック図である。
【図３】基板の一例を示す概略平面図である。
【図４】図３に示した１つのダイの概略平面図である。
【図５】検査タスク生成時における、撮影領域の分割例を示す説明図である。
【図６】複数のダイに跨がって、スキャン撮影が実行された様子を示す図である。
【図７】複数のＧＰＵの動作シーケンスを示す図である。
【発明を実施するための形態】
【００１８】
以下、図面を参照して実施形態を詳細に説明する。ただし、この実施形態に記載されている構成はあくまでも例示であり、本発明の範囲をそれらのみに限定する趣旨のものではない。
【００１９】
＜１．  実施形態＞
＜１．１．  外観検査装置１の構成＞
図１は、実施形態に係る外観検査装置１の概略構成図である。また図２は、実施形態に係る外観検査装置１の機能ブロック図である。なお、図１および以降の各図においては、理解容易のため、必要に応じて各部の寸法や数を誇張または簡略化して描いている場合がある。また、図１および以降の各図においては、それぞれの位置関係の理解を容易にするため、Ｚ軸方向を鉛直方向、ＸＹ平面を水平面とする左手系のＸＹＺ直交座標系を適宜付している場合がある。
【００２０】
外観検査装置１は、被検査物である半導体基板９（以下、単に「基板９」という。）に形成されたパターン（回路パターンなど）の欠陥を、撮影部３によって撮影された画像に基づいて検査する装置である。外観検査装置１は、基板９を保持するステージ２（基板保持部）、ステージ２を水平方向（Ｘ軸方向およびＹ軸方向）に移動させるステージ移動機構２１、基板９の鉛直方向上側（＋Ｚ側）の主面（以下、「上面」という。）を撮影する撮影部３、ステージ２などの外観検査装置１の各構成の動作を制御する制御部４、撮影部３によって撮影された画像に基づいてパターンの欠陥検出を行う検査部５、および、検査部５によって取得された欠陥データを処理する欠陥データ処理部６とを備えている。
【００２１】
ステージ移動機構２１は、ステージ２を、Ｙ軸方向に移動させるＹ方向移動機構２２、Ｘ方向に移動するＸ方向移動機構２３、および、ステージ２をＺ軸方向に移動させてフォーカス調整を行うステージ昇降機構２４を備えている。Ｙ方向移動機構２２はモータ２２１に接続されたボールねじ（図示せず。）と、Ｘ方向移動機構２３に固定されたボールねじに螺合するナット部材（図示せず。）とを有している。モータ２２１が回転することにより、Ｘ方向移動機構２３がガイドレール２２２に沿ってＹ軸方向に移動する。Ｘ方向移動機構２３もＹ方向移動機構２２と同様の構成を備えており、モータ２３１により図示しないボールねじを回転させることで、ステージ２を一対のガイドレール２３２に沿ってＸ方向に移動させる。なお、ステージ移動機構２１には、本実施形態のようにボールねじを利用するものの他、リニアモータなどの直動機構を利用することも考えられる。
【００２２】
基板９は、検査中、ステージ２の上面に吸着固定されている。このため、ステージ移動機構２１によりステージ２をＸ方向またはＹ方向に移動させることで、撮影部３に対して基板９を相対的に移動させることができる。外観検査装置１においては、基板９をＸ軸方向またはＹ軸方向に移動させて、図示を省略するハロゲンランプやＬＥＤなどの照射部から、可視光が基板９に面照射またはライン状に照射される。そして、そして、基板９にて反射した反射光が、撮影部３の備える検出器（ここでは、ラインセンサ３１）によって検出される。なお、可視光に代えて、紫外光、赤外光を照射するようにしてもよい。また、光源として、電子線またはレーザ光を出射するものが利用されてもよい。
【００２３】
なお、本実施形態では、ステージ移動機構２１がステージ２を移動させることで、基板９を撮影部３に対し、ＸＹ平面内で相対的に移動させている。しかしながら、ステージ２を固定して、撮影部３を移動させてもよい。もちろん、ステージ２および撮影部３の双方を個別に移動させてもよい。つまり、撮影部３に対して基板９を相対的に移動させることができるのであれば、外観検査装置１はどのように構成されていてもよい。
【００２４】
撮影部３は、ラインセンサ３１を備えている。ラインセンサ３１は、基板９に照射された電子線またはレーザ光などを検出する複数の検出素子が一列に配列されることで構成されている。ラインセンサ３１によって検出された検出信号は、図示しないＡＤコンバータによって適宜デジタルデータ化され、補正処理などの所定の処理を経て、画像信号として検査部５のバッファメモリ５３に順次送信される。バッファメモリ５３は、画像保存メモリの一例である。なお、ラインセンサ３１の代わりに、ＣＣＤなどのエリアセンサを適用することも考えられる。
【００２５】
制御部４は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）を備える一般的なコンピュータとして構成されている。図２に示される、検査レシピ作成部４１、検査タスク生成部４３およびステージ制御部４５は、ＣＰＵがプログラムに従って動作することによりソフトウェア的に実現される機能ブロックである。なお、これらの機能の一部または全部が、専用の回路などによってハードウェア的に実現されてもよい。
【００２６】
検査レシピ作成部４１は、オペレータが外観検査装置１において実行する検査内容を決定するために、検査レシピを作成するＧＵＩを提供するものである。検査レシピは、検査前にオペレータから与えられる検査条件である。オペレータは、操作部４９を介して検査条件（例えば、検査範囲や、検査方法、検査に用いられるパラメータなど）の設定を行う。検査パラメータとしては、例えば、画像上におけるノイズ除去のためのフィルタの設定値、または、パターン欠陥を判断するための閾値となる設定値（例えば、画素の濃度値）などが含まれる。
【００２７】
検査タスク生成部４３は、検査レシピ作成部４１によって作成された検査レシピに基づいて、検査タスクを生成する。検査タスクは、後述する画像処理ユニット５９が実行する検査処理の単位である。検査タスクには、例えば、後述する各画像処理ユニット５９が検査処理を行う部分の座標情報、検査タイプ（後述するダイ比較検査またはセル比較検査など。）、または、個々の検査処理に適用される検査パラメータなどが含まれる。
【００２８】
ステージ制御部４５は、モータ２２１，２３１の駆動を制御することにより、ステージ２のＸ軸方向またはＹ軸方向の移動量、移動速度などを制御する。ステージ制御部４５は、検査レシピによって指定された基板９上の特定領域を撮影するように、ステージ２の移動を制御する。
【００２９】
制御部４には、各種情報を表示する液晶モニタなどで構成される表示部４７、および、制御部４に対してオペレータが各種情報を操作入力するためのマウスまたはキーボードなどで構成される操作部４９が接続されている。なお、表示部４７をタッチパネルで構成することにより、表示部４７が操作部４９の機能の一部または全部を兼ねることも考えられる。表示部４７に表示される情報に基づいて、制御部４に対して、操作部４９を介した各種指示入力を行うことができる。
【００３０】
検査部５は、制御部４と同様に、ＣＰＵやＲＡＭなどを備えた一般的なコンピュータとして構成されており、パターン欠陥検出に関する各種演算処理を行う。検査部５は、検査タスク保持部５１、バッファメモリ５３および画像処理制御部５５を備えている。画像処理制御部５５は、複数のＧＰＵ制御部５７を含んでいる。また、検査部５は、複数のＧＰＵ制御部５７の各々によって、その動作が制御される画像処理ユニット５９を複数備えている。画像処理制御部５５は、ＣＰＵが図示しないプログラムに従って動作することによりソフトウェア的に実現される機能ブロックである。なお、制御部４および検査部５は、ＬＡＮなどの通信回線で接続された２台のコンピュータで構成されるが、１台のコンピュータで構成されることも考えられる。
【００３１】
検査タスク保持部５１は、検査タスク生成部４３が生成した検査タスクを保存するための記憶部（ＲＡＭなどの一時的に情報を記憶するものも含む。）である。検査タスク保持部５１に対しては、画像処理制御部５５がアクセスする（具体的には、複数のＧＰＵ制御部５７が非同期かつ排他的にアクセスする）。そして、検査タスク保持部５１において、所定の順序で並べられた複数の検査タスクのうちの１つが、適宜取り出される。
【００３２】
バッファメモリ５３は、上述したように、ラインセンサ３１が順次検出する検出信号に基づいた画像信号（画像データ）を逐次保存する記憶部である。バッファメモリ５３に蓄積される画像信号は、ラインセンサ３１が検出した回数（つまりライン数）に応じたデータ量の画像データとなる。バッファメモリ５３は、画像データ保持部の一例である。
【００３３】
画像処理制御部５５は、複数の画像処理ユニット５９に対して、検査タスクに基づく画像処理を完了した順に、検査タスク保持部５１に保持された次の新たな検査タスクに従って、新たな画像処理を順次実行させる。したがって、画像処理を終えた画像処理部５９に対して、次々と、新たな検査タスクに従った画像処理の指示が与えられる。このように、外観検査装置１においては、複数の検査タスクがどの画像処理部５９で実行されるかはあらかじめ定められていない。したがって、外観検査装置１においては、複数の検査タスクのうちの１つを実行する画像処理ユニット５９が、実際に検査が開始されてから順次決定されるようになっている。
【００３４】
ＧＰＵ制御部５７は、複数の画像処理ユニット５９のうちの特定の画像処理ユニット５９が備えるＧＰＵ５９１を制御する機能を有している。ＧＰＵ制御部５７は、検査タスク保持部５１にアクセスして検査タスクを取得し、該検査タスクに記述された指示に沿って、ＧＰＵ５９１を動作させる。上述したように、検査タスクには、処理対象領域の座標位置、検査タイプ（ダイ比較検査またはセル比較検査など）、検査パラメータなどに関する情報が記述されているので、ＧＰＵ制御部５７は、該検査情報を解釈してその内容に沿った画像処理をＧＰＵ５９１に実行させる。
【００３５】
画像処理ユニット５９は、ＧＰＵ５９１と画像処理用メモリ５９３とを備えている。画像処理ユニット５９は、例えばビデオカード（グラフィックカード）で構成されており、ＰＣＩ  Ｅｘｐｒｅｓｓ規格のシリアルバスなどを介して、画像処理ユニット５９がバッファメモリ５３またはＧＰＵ制御部５７と通信可能に接続される。
【００３６】
ＧＰＵ５９１は、例えば、米国ｎＶＩＤＡ社などが提供するＧＰＧＰＵ（Ｇｅｎｅｒａｌ  Ｐｕｒｐｏｓｅ  Ｃｏｍｐｕｔｉｎｇ  ｏｎ  Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）などを利用することができる。ＧＰＵ５９１は、複数のプログラマブルシェーダ（３Ｄグラフィックスにおいて定義された３Ｄモデルや光源の情報を元に、その見え方を計算するプログラムのコード（ソフトウェア）およびそれを実行するハードウェアであり、処理内容がプログラム可能なもの）を備えており、該プログラマブルシェーダが所定のプログラムに従って動作することにより、パターン欠陥検出に関わる並列性の高い演算処理を行う。プログラムシェーダを動作させるためのプログラム開発には、例えば、米国ｎＶＩＤＩＡ社が提供するＣＵＤＡ（Ｃｏｍｐｕｔｅ  Ｕｎｉｆｉｅｄ  Ｄｅｖｉｃｅ  Ａｒｃｈｉｔｅｃｔｕｒｅ）、ＯｐｅｎＣＬなどの様々な開発環境を利用することができる。ＧＰＵ５９１は、画像処理部の一例である。
【００３７】
画像処理用メモリ５９３は、ＧＰＵ５９１が作業を行う領域を供する記憶部である。画像処理用メモリ５９３は、例えば、一般的なビデオカードに搭載される、グラフィック処理に適したＧＤＤＲ（Ｇｒａｐｈｉｃｓ  Ｄｏｕｂｌｅ  Ｄａｔａ  Ｒａｔｅ）規格のメモリが使用される。なお、近年市販されているビデオカードには、数ギガバイトのビデオメモリが搭載されているものが多数あり、画像処理用メモリ５９３としては十分な容量を備えている。
【００３８】
図１に示した欠陥データ処理部６は、各画像処理ユニット５９において検出された欠陥情報を収集して、検査結果を図示しない記憶部（ＲＡＭなどの一時的に情報を記憶するものも含む。）に保存する。欠陥情報としては、具体的には、パターン欠陥が検出された位置の座標情報、欠陥箇所の面積情報、または、欠陥画素の濃度値などが含まれる。もちろん、欠陥情報はこれらのようなものに限定されるものではない。なお、欠陥データ処理部６は、ＣＰＵおよびＲＡＭを備えた１台のコンピュータで構成されてもよいが、制御部４または検査部５が欠陥データ処理部６の機能を兼ね備えるようにすることも考えられる。
【００３９】
＜１．２．  パターン欠陥の検査処理＞
外観検査装置１において検査処理が開始される場合、まず、オペレータの操作入力に基づいて、検査レシピ作成部４１により検査レシピが生成される。この検査レシピ作成時には、オペレータは、検査範囲や、適用する検査方法などの各種検査条件の指定を行う。検査タスク生成部４３は、この作成された検査レシピに基づいて、検査タスクを作成する。作成された検査タスクは、検査タスク保持部５１に保存される。また、外観検査装置１は、ステージ制御部４５によって、検査レシピに従ってステージ２を移動させるとともに、撮影部３により検査範囲の撮影を行う。
【００４０】
図３は、基板９の一例を示す概略平面図である。図３に示した基板９は、円形状の半導体ウエハであり、その表面には、複数のダイ９１が形成されている。図３に示した撮影領域３００は、ラインセンサ３１がＹ軸方向に沿ってスキャン撮影した領域を示している。
【００４１】
図４は、図３に示した１つのダイ９１の概略平面図である。図４に示したダイ９１は、同一領域内で回路パターンの繰り返し性が低い領域（以下、非繰り返しパターン領域９３という。）と、メモリセルなどのように同一領域内で回路パターンの繰り返し性がある領域（以下、繰り返しパターン領域９５という。）とが混在している。
【００４２】
図５は、検査タスク生成時における、撮影領域３００の分割例を示す説明図である。なお、図５においては、特定のダイ９１について、非繰り返しパターン領域９３と繰り返しパターン領域９５とに撮影領域３００が跨がっている例を図示している。
【００４３】
図５に示したように、検査タスク生成部４３が検査タスクを生成する際、撮影領域３００を複数の部分領域（ここでは、分割領域７０ａ〜７０ｄ）に分割する。具体的には、検査タスク生成部４３は、まず、非繰り返しパターン領域９３に対応する領域（ここでは、分割領域７０ａ，７０ｂ，７０ｃ）と、繰り返しパターン領域９５に対応する領域（ここでは、分割領域７０ｄ）とに分割する。そして、検査タスク生成部４３は、分割したそれぞれ領域を、さらに矩形状の領域に分割する。これにより、矩形状の分割領域７０ａ〜７０ｄが個別の検査対象領域として設定される。ただし、撮影領域３００を分割する方法は、上記のようなものに限定されるものではなく、様々な方法が考えられる。例えば、検査タスク生成部４３が、撮影領域３００を任意の形状で均等な大きさに分割してそれぞれを分割領域に設定することも考えられる。
【００４４】
このようにして分割された各分割領域７０ａ〜７０ｄについての座標情報が、検査タスクに登録される。また、各分割領域７０ａ〜７０ｄのそれぞれに対して、適用すべき欠陥処理の検査タイプに関する情報も、検査タスクに登録される。
【００４５】
例えば分割領域７０ａ〜７０ｃについては非繰り返しパターン領域９３であるので、いわゆるダイ比較検査が適用される。ダイ比較検査とは、ラインセンサ３１の長手方向と平行な方向に隣接する２つのダイ９１，９１を比較することによって、パターン欠陥を検出する検査方法である。
【００４６】
また、分割領域７０ｄについては、繰り返しパターン領域９５であり、該分割領域７０ｄ内においても同じ回路パターンが繰り返し出現する。そこで、分割領域７０ｄに対しては、いわゆるセル比較検査が適用される。セル比較検査とは、隣接する繰り返しパターン同士を比較して、パターン欠陥を検出する検査方法である。
【００４７】
このように、分割された分割領７０ａ〜７０ｄが、非繰り返しパターン領域９３か繰り返しパターン領域９５のどちらに対応するかによって、検査タイプが決定され、検査タスクに登録される。
【００４８】
なお、検査タスク生成部４３は、生成した複数の検査タスクを、撮影部３のスキャン方向にあわせて並べ替えて、検査タスク保持部５１に保存する。つまり、撮影部３によりスキャン撮影がより早く行われる領域が、優先して画像処理ユニット５９にて処理されるように、複数の検査タスクの実行権が割り当て（キューイング）。画像処理制御部５５（具体的には、複数のＧＰＵ制御部５７）は、このキューイングされた順に検査タスクを取得する。このため、検査対象である各分割領域は、撮影を終えた順に、各ＧＰＵ５９１によって画像処理されることとなる。したがって、検査部５は、撮影部３がスキャンした撮影領域３００の検査処理を効率的に進めることができる。
【００４９】
撮影部３は、ラインセンサ３１による撮影によって取得される画像データをバッファメモリ５３に順次保存する。一方、画像処理制御部５５が備える複数のＧＰＵ制御部５７のそれぞれは、対応する画像処理ユニット５９において欠陥検査に関する画像処理を実行させるべく、検査タスク保持部５１に非同期かつ排他的にアクセスして、検査タスクを１つずつ取得する。
【００５０】
各ＧＰＵ制御部５７は、取得した検査タスクを元に、まず、バッファメモリ５３に、検査タスクに規定された検査対象である分割領域（例えば、図５に示した分割領域７０ａ，７０ｂ，７０ｃまたは７０ｄ）の画像データが、既に撮影済みであるかどうかを判定する（撮影済みの画像データに関する判定）。具体的には、バッファメモリ５３に取り込み済みのライン数と、分割領域に対応するライン数とを比較する。そして、ＧＰＵ制御部５７は、取り込み済みライン数の方が大きい場合（すなわち、撮影済みの画像データに、分割領域の画像データが含まれている場合）に、該分割領域の画像データを、対応する画像処理用メモリ５９３に転送させる。そして、ＧＰＵ制御部５７は、ＧＰＵ５９１に対して、検査パラメータを渡すとともに、検査タスクに登録されている検査タイプの検査に関する画像処理を実行させる。
【００５１】
一方、分割領域に対応するライン数よりも、取り込み済みライン数よりも小さい場合（すなわち、撮影済みの画像データに、分割領域の画像データが含まれていない場合）には、ＧＰＵ制御部５７は、検査対象の分割領域が撮影されるまで、ＧＰＵ５９１を待機させる。
【００５２】
上記撮影済みの画像データに関する判定を行うため、撮影部３がバッファメモリ５３に取り込んだライン数に関する情報を、バッファメモリ５３に保存しておき、この情報を各ＧＰＵ制御部５７が適宜参照するようにしてもよい。また、撮影部３がバッファメモリ５３に取り込んだライン数に関する情報を、適宜画像処理制御部５５に通知するようにすることも考えられる。
【００５３】
ＧＰＵ５９１は、ＧＰＵ制御部５７から検査処理を開始する旨の指示を受けると、画像処理用メモリ５９３にアクセスして、検査する分割領域の画像データと、参照領域の画像データとを取り出す。そして、ＧＰＵ５９１は、検査する分割領域と参照領域との画像データについて、ノイズの除去やコントラスト調整などの所定の画像処理を行った後、パターン欠陥検出のための比較処理を行う。この比較処理については、特定の方法に限定されるものではなく、様々な方法が考えられる。例えば、画素比較の濃度値の差をしきい値で２値化して、欠陥の有無を判定するようにしてもよい。また、２値化によりモノクロ化された画像間の画素比較に基づいて、相違部分（パターン欠陥）が抽出されるようにしてもよい。また、各画像に対してエッジ抽出を行い、抽出されたエッジの形状比較に基づいて、相違部分が抽出されるようにしてもよい。ＧＰＵ５９１は、このような処理により取得される欠陥情報の結果を、画像処理用メモリ５９３に適宜書き込む。
【００５４】
ＧＰＵ５９１による検査処理が完了すると、ＧＰＵ制御部５７は、画像処理用メモリ５９３に保存された欠陥情報を欠陥データ処理部６へ転送する。そして、ＧＰＵ制御部５７は、再び検査タスク保持部５１へアクセスし、別の検査タスクを取得する。このようにして、検査部５は、複数の画像処理ユニット５９によって、検査タスク保持部５１に保存された全検査タスクを並列的に実行する。
【００５５】
欠陥データ処理部６は、複数の画像処理ユニット５９が抽出したパターン欠陥の座標情報、欠陥箇所の面積情報、または、欠陥画素の濃度値などの欠陥情報を収集して、記憶部に保存する。このとき、欠陥のタイプ分け（例えば、異物の付着によるパターン異常、または、回路の欠けなどのパターン形成の異常）が行われるようにしてもよい。また、複数の１つのパターン欠陥が、複数のスキャン画像に跨がって存在するような場合に、欠陥データ処理部６が、これらの複数のスキャン画像をつなぎ合わせて、欠陥箇所の全体が含まれる１つの画像を生成する処理（マージ処理）を行うようにしてもよい。
【００５６】
＜１．３．  効果＞
図６は、複数のダイ９１１〜９１５に跨がって、スキャン撮影が実行された様子を示す図である。図６において、ダイ９１１〜９１５は、図３に示したダイ９１と同一のチップであり、非繰り返しパターン領域９３および繰り返しパターン領域９５を有している。また、図示の例では、撮影領域３００が、分割領域７１ａ〜７１ｄ，７２ａ〜７２ｄ，７３ａ〜７３ｄ，７４ａ〜７４ｄ、および、７５ａ〜７５ｄにそれぞれ分割されている。これらの分割領域のそれぞれについて、検査タスクが個別に設定される。
【００５７】
図７は、複数のＧＰＵ５９１の動作シーケンスを示す図である。図７中、ＧＰＵ００，ＧＰＵ０１，ＧＰＵ０２は、３つのＧＰＵ５９１にそれぞれ対応している。また、各ブロック８１は、図６に示した各分割領域画像データについて、各ＧＰＵ００〜ＧＰＵ０２のそれぞれが画像処理に対応するものであり、各ブロック８１の横幅は、各画像処理にかかる処理時間の大きさに相当している。また、各ブロック８１に記入された文字は、それぞれ、図６に示した分割領域７１ａ〜７１ｄ，７２ａ〜７２ｄ，７３ａ〜７３ｄ，７４ａ〜７４ｄ，７５ａ〜７５ｄに対応するものである。例えば、「７１ａ」が記入されたブロック８１は、分割領域７１ａについての画像処理に対応するものとなっている。
【００５８】
図７に示したように、各ＧＰＵ制御部５７は、対応する各ＧＰＵ５９１（ＧＰＵ００〜ＧＰＵ０２のいずれか）が１つの画像処理が完了した場合、検査タスク保持部５１から次の検査タスクを取得して、対応するＧＰＵ５９１に対して、その検査処理を実行させる。このため、全てのＧＰＵ５９１は、検査タスク保持部５１から検査タスクがなくなるまで、停止することなく常に検査処理を実行し続けることとなる。
【００５９】
ここで、例えば、１つの検査処理の処理時間が、通常よりも長引いた場合を想定する。具体例として、分割領域７３ｃに関する画像処理に関して、該領域に欠陥が多数発生しているなどのために、図７においてハッチングで示したように画像処理の処理時間が通常よりも長引いたとする。
【００６０】
特許文献１に記載の外観検査装置のように、各画像処理部（本実施形態のＧＰＵ５９１に対応する。）のそれぞれが実行する検査処理が、あらかじめ決定されているような場合、各ＧＰＵ５９１は自身にあらかじめ割り振られた検査タスクのみしか実行しないこととなる。このため、１つのＧＰＵ５９１に対して、処理時間の延長が発生した場合、そのＧＰＵ５９１に割り振られた全ての検査処理の完了時間が、その分遅延されることとなる。全検査タスクが終了する時間は、全てのＧＰＵ５９１がそれぞれに割り当てられた処理を完了する時間となるため、１つのＧＰＵ５９１の処理時間が長引くことで処理全体の完了時間も長引くこととなってしまう。
【００６１】
これに対して、本実施形態に係る外観検査装置１においては、１つのＧＰＵ５９１に対して、処理時間の延長が発生したとしても、他のＧＰＵ５９１が次々と次の検査タスクを実行していく。つまり、１つのＧＰＵ５９１の遅れを、他のＧＰＵ５９１の働きでカバーすることが可能となっている。その結果、全てのＧＰＵ５９１にかかる負荷がバランス良く保たれた状態を維持できるため、全検査タスクの完了時間を短縮できる。
【００６２】
また、本実施形態に係る外観検査装置１の場合、特許文献１に記載の外観検査装置のように、各ＧＰＵ５９１に対する検査の割り振りを行うといったような、検査前の煩雑な準備を行う必要がない。また、ＧＰＵ５９１の数を増やす（つまり、並列処理のスレッド数を増やす）ような場合にも、容易に対応することができる。
【００６３】
以上のように、本実施形態に係る外観検査装置１によると、各ＧＰＵ５９１に対して、画像処理を終えた順に、次の新たな画像処理を順次実行させるため、各ＧＰＵ５９１は、常に稼働状態となる。したがって、複数のＧＰＵ５９１の処理能力を無駄なく最大限に活用できるようになる。また、欠陥の程度に応じて、個々の画像処理時間が変動しても、全てのＧＰＵ５９１に対して、バランスよく負荷をかけることができる。すなわち、検査タスク毎にかかる処理時間の増大にも柔軟に対応できるため、検査効率の向上を図ることができる。
【００６４】
＜２．  変形例＞
以上、実施の形態について説明してきたが、本発明は上記のようなものに限定されるものではなく、様々な変形が可能である。
【００６５】
例えば、上記実施の形態では、複数のＧＰＵ５９１を用いて、検査処理を並列に行うようにしているが、例えば、これを複数のＣＰＵに代行させることも考えられる。この場合、例えばＣＰＵとＲＡＭを備えた複数台のコンピュータを用意し、ＧＰＵ５９１をＣＰＵで代用し、また、画像処理用メモリ５９３をＲＡＭで代用すればよい。１台のコンピュータに、複数のＣＰＵを搭載するいわゆるマルチＣＰＵで代用することも考えられる。なお、一般的には、ＣＰＵを利用するよりも、ＧＰＵ５９１を利用した方が、欠陥検出に関する画像処理を高速に行うことができる。
【００６６】
また、上記実施の形態では、画像処理ユニット５９のいずれもが、画像処理用メモリ５９３を備えているが、複数のＧＰＵ５９１が、同じ画像処理用メモリ５９３にアクセスするようにすることも考えられる。
【００６７】
また、上記実施の形態では、基板９を半導体基板としているが、本発明は、フォトマスク用ガラス基板、表示装置用基板、光ディスク用基板、磁気ディスク用基板、光磁気ディスク用基板、プリント基板、または、太陽電池用基板などの各種基板の外観検査を行う場合にも有効である。
【００６８】
さらに、上記実施形態および変形例で示した各構成は、矛盾が生じない限りにおいて相互に組み合わせたり、または、省略したりすることができることはいうまでもない。
【符号の説明】
【００６９】
１  外観検査装置
２  ステージ
２１  ステージ移動機構
２２  Ｙ方向移動機構
２２１，２３１  モータ
２２２  ガイドレール
２３  Ｘ方向移動機構
２３２  ガイドレール
２４  ステージ昇降機構
３  撮影部
３００  撮影領域
３１  ラインセンサ
４  制御部
４１  検査レシピ作成部
４３  検査タスク生成部
５  検査部
５１  検査タスク保持部
５３  バッファメモリ
５５  画像処理制御部
５７  ＧＰＵ制御部
５９  画像処理ユニット
５９１  ＧＰＵ
５９３  画像処理用メモリ
６  欠陥データ処理部
７０ａ〜７０ｄ  分割領域
９  基板
９１  ダイ
９３  非繰り返しパターン領域
９５  繰り返しパターン領域
【図１】
2013148380.tif 000003
【図２】
2013148380.tif 000004
【図３】
2013148380.tif 000005
【図４】
2013148380.tif 000006
【図５】
2013148380.tif 000007
【図６】
2013148380.tif 000008
【図７】
2013148380.tif 000009