JP2014070956A - Image processing apparatus, visual inspection device, image processing method, and visual inspection method - Google Patents
Image processing apparatus, visual inspection device, image processing method, and visual inspection method Download PDFInfo
- Publication number
- JP2014070956A JP2014070956A JP2012216204A JP2012216204A JP2014070956A JP 2014070956 A JP2014070956 A JP 2014070956A JP 2012216204 A JP2012216204 A JP 2012216204A JP 2012216204 A JP2012216204 A JP 2012216204A JP 2014070956 A JP2014070956 A JP 2014070956A
- Authority
- JP
- Japan
- Prior art keywords
- inspection
- processor
- image processing
- command
- image
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000012545 processing Methods 0.000 title claims abstract description 136
- 238000011179 visual inspection Methods 0.000 title claims abstract description 13
- 238000000034 method Methods 0.000 title claims description 28
- 238000003672 processing method Methods 0.000 title claims description 7
- 238000007689 inspection Methods 0.000 claims abstract description 400
- 239000000758 substrate Substances 0.000 claims abstract description 44
- 230000007547 defect Effects 0.000 claims abstract description 33
- 238000003860 storage Methods 0.000 claims description 6
- 230000003252 repetitive effect Effects 0.000 claims description 5
- 238000005516 engineering process Methods 0.000 abstract 1
- 238000012360 testing method Methods 0.000 description 22
- 238000003384 imaging method Methods 0.000 description 19
- 238000010586 diagram Methods 0.000 description 13
- 238000001514 detection method Methods 0.000 description 6
- 101000882406 Staphylococcus aureus Enterotoxin type C-1 Proteins 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 239000004065 semiconductor Substances 0.000 description 4
- 230000000052 comparative effect Effects 0.000 description 3
- 230000002950 deficient Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 101710104662 Enterotoxin type C-3 Proteins 0.000 description 2
- 102100030844 Exocyst complex component 1 Human genes 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000010894 electron beam technology Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003028 elevating effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 229910052736 halogen Inorganic materials 0.000 description 1
- 150000002367 halogens Chemical class 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
Images
Abstract
Description
本発明は、複数のコアを有するプロセッサを用いて、画像を処理する技術に関する。 The present invention relates to a technique for processing an image using a processor having a plurality of cores.
従来、半導体ウエハ等の基板上に形成された回路パターンの欠陥を検出するに際して、回路パターンの画像を取得し、基準となる参照画像との比較に基づいて、欠陥箇所を抽出する外観検査が行われている。最近では、処理を高速に行うため、複数のプロセッサ(プロセッサエレメント)を備えた並列データ処理型の外観検査装置が提案されている(例えば、特許文献1)。 Conventionally, when detecting a defect in a circuit pattern formed on a substrate such as a semiconductor wafer, an appearance inspection is performed in which an image of the circuit pattern is acquired and a defect portion is extracted based on a comparison with a reference image serving as a reference. It has been broken. Recently, in order to perform processing at high speed, a parallel data processing type appearance inspection apparatus including a plurality of processors (processor elements) has been proposed (for example, Patent Document 1).
具体的に、特許文献1に記載の外観検査装置では、ラインセンサでスキャン撮影した画像を分割する際に、全体制御コンピュータが、複数のプロセッサエレメントの各々に分割された画像を分配する条件を設定する。そして画像分配処理部は、その分配条件に従って上記画像を分割し、それぞれをプロセッサエレメントに転送する。そして各プロセッサエレメントは、規定された検査処理を行って、回路パターンの欠陥を抽出する。 Specifically, in the appearance inspection apparatus described in Patent Document 1, when dividing an image scanned by a line sensor, the overall control computer sets a condition for distributing the divided image to each of a plurality of processor elements. To do. Then, the image distribution processing unit divides the image according to the distribution condition, and transfers each of the images to the processor element. Each processor element performs a prescribed inspection process to extract a defect in the circuit pattern.
また、特許文献1に記載の外観検査装置では、プロセッサエレメントの処理能力や、検査アルゴリズム毎の演算負荷に基づいて、切り出す画像の範囲を調整している。これにより、各プロセッサエレメントに負荷が均等にかかるようにして、プロセッサエレメントの処理能力を効率よく活用するようにしている。 Moreover, in the appearance inspection apparatus described in Patent Document 1, the range of an image to be cut out is adjusted based on the processing capability of the processor element and the calculation load for each inspection algorithm. As a result, the load is applied evenly to each processor element so that the processing capacity of the processor element is efficiently utilized.
最近のプロセッサには、内部に複数の演算コアを備え、それらを並列に動作させて、データ処理を高速に行うプロセッサ(マルチコアプロセッサ)がある。このようなプロセッサの1つに、GPU(Graphics Processing Unit)が知られているが、このGPUは、例えば数十個〜数千個のコアを備えており、超並列プロセッサとも呼ばれている。このようなマルチコアプロセッサを、上述した外観検査装置に適用することも考えられる。 Recent processors include a processor (multi-core processor) that includes a plurality of arithmetic cores inside and operates them in parallel to perform data processing at high speed. A GPU (Graphics Processing Unit) is known as one of such processors, and this GPU includes, for example, tens to thousands of cores, and is also called a massively parallel processor. It is also conceivable to apply such a multi-core processor to the above-described visual inspection apparatus.
しかしながら、特許文献1の発明は、複数のプロセッサに対して、並列処理させることを目的とするものである。このため、特許文献1では、マルチコアプロセッサにおいて、演算処理を効率的に行うことは考慮されていない。このため、従来の外観検査装置にマルチコアプロセッサを適用したとしても、検査処理の効率を向上することはできない。 However, the invention of Patent Document 1 is intended to cause a plurality of processors to perform parallel processing. For this reason, Patent Document 1 does not consider the efficient execution of arithmetic processing in a multi-core processor. For this reason, even if a multi-core processor is applied to a conventional visual inspection apparatus, the efficiency of the inspection process cannot be improved.
本発明は、上記課題に鑑みなされたものであり、複数のコアを有するプロセッサを用いたときに、検査処理の効率を向上させる技術を提供することを目的とする。 The present invention has been made in view of the above problems, and an object thereof is to provide a technique for improving the efficiency of inspection processing when a processor having a plurality of cores is used.
上記の課題を解決するため、第1の態様は、画像処理装置であって、複数のコアを有するプロセッサを備える画像処理部と、検査対象となる検査画像を記憶する画像記憶部と、前記検査画像を複数に分割して得られる検査セクション毎に生成された、前記プロセッサが実行する複数の検査コマンドを含む検査タスクを保持する検査タスク保持部と、前記複数の検査コマンドを、前記プロセッサに登録して実行させるプロセッサ制御部とを備え、前記プロセッサ制御部は、1つの前記検査タスクに含まれる前記複数の検査コマンドのうち、前記プロセッサに先に登録した第一検査コマンドと前記プロセッサに未登録である第二検査コマンドとの間で、処理内容に依存関係がないとき、前記プロセッサに前記第二検査コマンドを登録する。 In order to solve the above-described problem, a first aspect is an image processing apparatus, an image processing unit including a processor having a plurality of cores, an image storage unit that stores an inspection image to be inspected, and the inspection An inspection task holding unit for holding an inspection task including a plurality of inspection commands executed by the processor, which is generated for each inspection section obtained by dividing an image into a plurality of parts, and registers the plurality of inspection commands in the processor A processor control unit to be executed, and the processor control unit includes a first inspection command previously registered in the processor among the plurality of inspection commands included in one inspection task and an unregistered in the processor The second inspection command is registered in the processor when there is no dependency in the processing content with the second inspection command.
また、第2の態様は、第1の態様に係る画像処理装置において、前記プロセッサ制御部は、前記プロセッサに登録された複数の検査コマンドを、前記プロセッサに並行に実行させる。 According to a second aspect, in the image processing apparatus according to the first aspect, the processor control unit causes the processor to execute a plurality of inspection commands registered in the processor in parallel.
また、第3の態様は、第1または第2の態様に係る画像処理装置であって、前記画像処理部が、前記プロセッサを複数備えており、複数の前記検査タスクが、複数の前記プロセッサにそれぞれ分配される。 A third aspect is the image processing apparatus according to the first or second aspect, wherein the image processing unit includes a plurality of the processors, and the plurality of inspection tasks are assigned to the plurality of processors. Each is distributed.
また、第4の態様は、第1から第3までの態様のいずれか1態様に係る画像処理装置において、前記プロセッサ制御部は、前記第一検査コマンドおよび第二検査コマンドの種類に基づいて、前記プロセッサに前記第二コマンドを登録するか否かを判断する。 Further, in a fourth aspect, in the image processing apparatus according to any one of the first to third aspects, the processor control unit is configured based on the types of the first inspection command and the second inspection command. It is determined whether or not the second command is registered in the processor.
また、第5の態様は、基板に形成されたパターンを検査する外観検査装置において、第1から第4までの態様のいずれか1態様に係る画像処理装置と、基板を撮影して前記検査画像を取得する撮影部とを備え、前記画像処理部は、前記基板に形成されたパターンの欠陥を検査する。 Further, a fifth aspect is an appearance inspection apparatus for inspecting a pattern formed on a substrate, the image processing apparatus according to any one of the first to fourth aspects, and the inspection image obtained by photographing the substrate. The image processing unit inspects a defect of a pattern formed on the substrate.
また、第6の態様は、第5の態様に係る外観検査装置において、前記複数の検査コマンドは、非繰り返しパターンを検査するダイ検査コマンドと、繰り返しパターンを検査するアレイ検査コマンドとを含む。 According to a sixth aspect, in the visual inspection apparatus according to the fifth aspect, the plurality of inspection commands include a die inspection command for inspecting a non-repeated pattern and an array inspection command for inspecting a repetitive pattern.
また、第7の態様は、画像処理方法であって、(a)検査対象である検査画像を、複数に分割して得られた検査セクション毎に、複数のコアを有するプロセッサが実行する複数の検査コマンドで構成される検査タスクを生成する工程と、(b)前記複数の検査コマンドを、前記プロセッサに登録して実行させる工程とを含み、前記(b)工程は、1つの前記検査タスクに含まれる前記複数の検査コマンドのうち、前記プロセッサに先に登録した第一検査コマンドと前記プロセッサに未登録の第二の検査コマンドとの間で、処理内容に依存関係がないとき、前記プロセッサに前記第二検査コマンドを登録する工程である。 The seventh aspect is an image processing method, wherein (a) a plurality of processors executed by a processor having a plurality of cores is executed for each inspection section obtained by dividing an inspection image to be inspected into a plurality of sections. A step of generating an inspection task composed of inspection commands; and (b) a step of registering and executing the plurality of inspection commands in the processor, wherein the step (b) includes one inspection task. Among the plurality of inspection commands included, when there is no dependency in the processing content between the first inspection command previously registered in the processor and the second inspection command not registered in the processor, the processor Registering the second inspection command;
また、第8の態様は、第7の態様に係る画像処理方法において、(c)前記(b)工程にて前記プロセッサに登録された前記複数の検査コマンドを、前記プロセッサが並列に実行する工程、をさらに含む。 According to an eighth aspect, in the image processing method according to the seventh aspect, (c) a step in which the processor executes the plurality of inspection commands registered in the processor in the step (b) in parallel. Further included.
また、第9の態様は、基板に形成されたパターンを検査する外観検査方法であって、(A)基板を撮影することによって、検査画像を取得する工程、(B)前記検査画像を複数に分割して得られる検査セクション毎に、複数のコアを有するプロセッサが実行する複数の検査コマンドを含む検査タスクを生成する工程と、(C)前記複数の検査コマンドを、前記プロセッサに登録して実行させる工程とを含み、前記(C)工程は、1つの前記検査タスクに含まれる前記複数の検査コマンドのうち、前記プロセッサに先に登録した第一検査コマンドと前記プロセッサに未登録の第二の検査コマンドとの間で、処理内容に依存関係がないとき、前記プロセッサに前記第二検査コマンドを登録する工程である。 Further, a ninth aspect is an appearance inspection method for inspecting a pattern formed on a substrate, and (A) a step of acquiring an inspection image by photographing the substrate, and (B) a plurality of the inspection images. Generating a test task including a plurality of test commands executed by a processor having a plurality of cores for each test section obtained by dividing; and (C) registering and executing the plurality of test commands in the processor. The step (C) includes, among the plurality of inspection commands included in one inspection task, a first inspection command previously registered in the processor and a second unregistered in the processor. This is a step of registering the second inspection command in the processor when there is no dependency on the processing content with the inspection command.
また、第10の態様は、第9の態様に係る外観検査方法において、(D)前記(C)工程にて前記プロセッサに登録された前記複数の検査コマンドを、前記プロセッサが並列に実行する工程、をさらに含む。 According to a tenth aspect, in the visual inspection method according to the ninth aspect, (D) a step in which the processor executes the plurality of inspection commands registered in the processor in the step (C) in parallel. Further included.
第1〜第10の態様によると、プロセッサに先に登録された第一検査コマンドとまだ登録されていない第二検査コマンドとの間で、処理内容に依存関係がないときに、第二検査コマンドをプロセッサに登録する。これにより、同一のプロセッサにおいて、第一検査コマンドと第二検査コマンドとを並列に実行できるので、演算処理の効率を向上させることができる。 According to the first to tenth aspects, when there is no dependency in the processing content between the first inspection command registered in the processor and the second inspection command not yet registered, the second inspection command Is registered in the processor. Thereby, since the first inspection command and the second inspection command can be executed in parallel in the same processor, the efficiency of the arithmetic processing can be improved.
また、第2の態様に係る画像処理装置によると、複数の検査コマンドを並列に処理することができる。 Moreover, according to the image processing apparatus which concerns on a 2nd aspect, a some test | inspection command can be processed in parallel.
また、第3の態様に係る画像処理装置によると、複数の検査タスクを並列に処理することができる。 Moreover, according to the image processing apparatus which concerns on a 3rd aspect, a some test | inspection task can be processed in parallel.
また、第4の態様に係る画像処理装置によると、第二検査コマンドを登録するかどうかを、制御部に迅速かつ適切に判断させることができる。 Moreover, according to the image processing apparatus which concerns on a 4th aspect, it can be made to determine quickly and appropriately whether a 2nd test command is registered.
また、第5の態様によると、撮影部によって基板を撮影することで、検査画像を取得し、これを検査することができる。 Moreover, according to the 5th aspect, a test | inspection image can be acquired and this can be test | inspected by image | photographing a board | substrate with an imaging | photography part.
また、第6の態様によると、繰り返しパターンおよび非繰り返しパターンの欠陥をそれぞれ適切に検査することができる。 Moreover, according to the 6th aspect, the defect of a repeating pattern and a non-repeating pattern can each be test | inspected appropriately.
以下、図面を参照して実施形態を詳細に説明する。ただし、この実施形態に記載されている構成はあくまでも例示であり、本発明の範囲をそれらのみに限定する趣旨のものではない。 Hereinafter, embodiments will be described in detail with reference to the drawings. However, the configuration described in this embodiment is merely an example, and is not intended to limit the scope of the present invention.
<1. 第1実施形態>
<1.1. 外観検査装置1の構成>
図1は、実施形態に係る外観検査装置1の概略構成図である。また図2は、実施形態に係る外観検査装置1の機能ブロック図である。なお、図1および以降の各図においては、理解容易のため、必要に応じて各部の寸法や数を誇張または簡略化して描いている場合がある。また、図1および以降の各図においては、それぞれの位置関係の理解を容易にするため、Z軸方向を鉛直方向、XY平面を水平面とするXYZ直交座標系を付している場合がある。
<1. First Embodiment>
<1.1. Configuration of Appearance Inspection Apparatus 1>
FIG. 1 is a schematic configuration diagram of an appearance inspection apparatus 1 according to the embodiment. FIG. 2 is a functional block diagram of the appearance inspection apparatus 1 according to the embodiment. In addition, in FIG. 1 and each subsequent figure, the dimension and number of each part may be exaggerated or simplified as needed for easy understanding. In addition, in FIG. 1 and subsequent drawings, in order to facilitate understanding of the positional relationship, an XYZ orthogonal coordinate system in which the Z-axis direction is the vertical direction and the XY plane is the horizontal plane may be attached.
外観検査装置1は、被検査物である半導体基板9(以下、単に「基板9」という。)に形成されたパターン(回路パターン等)の欠陥を、撮影部3によって撮影して得た画像(検査画像)に基づいて検査する装置である。外観検査装置1は、基板9を保持するステージ2(基板保持部)、ステージ2を水平方向(X軸方向およびY軸方向)に移動させるステージ移動機構21、基板9の鉛直方向上側(+Z側)の上面を撮影する撮影部3、ステージ2等の外観検査装置1の各構成の動作を制御する制御部4、撮影部3によって撮影された画像に基づいてパターンの欠陥検出を行う画像処理装置5、および、画像処理装置5によって取得された欠陥データを処理する欠陥データ処理部6を備えている。
The appearance inspection apparatus 1 captures an image (image (such as a circuit pattern)) formed on a semiconductor substrate 9 (hereinafter simply referred to as “
ステージ移動機構21は、ステージ2を、Y軸方向に移動させるY方向移動機構22、X方向に移動するX方向移動機構23、および、ステージ2をZ軸方向に移動させてフォーカス調整を行うステージ昇降機構24を備えている。Y方向移動機構22はモータ221に接続されたボールねじ(図示せず。)と、X方向移動機構23に固定されたボールねじに螺合するナット部材(図示せず。)と、を有している。モータ221が回転することにより、X方向移動機構23がガイドレール222に沿ってY軸方向に移動する。X方向移動機構23もY方向移動機構22と同様の構成を備えており、モータ231により図示しないボールねじを回転させることで、ステージ2を一対のガイドレール232に沿ってX方向に移動させる。なお、ステージ移動機構21には、ボールねじを利用するものの他、リニアモータ等の直動機構を利用することも考えられる。
The
基板9は、検査中、ステージ2の上面に吸着固定されている。このため、ステージ移動機構21によりステージ2をX方向またはY方向に移動させることで、撮影部3に対して基板9を相対的に移動させることができる。外観検査装置1においては、基板9をX軸方向またはY軸方向に移動させて、図示を省略するハロゲンランプやLED等の照射部から、可視光が基板9に面照射またはライン状に照射される。そして、基板9にて反射した反射光が、撮影部3の備える検出器(ここでは、ラインセンサ31)によって検出される。なお、可視光に代えて、紫外光、赤外光を照射するようにしてもよい。また、光源として、電子線またはレーザ光を出射するものが利用されてもよい。
The
なお、本実施形態では、ステージ移動機構21がステージ2を移動させることで、基板9を撮影部3に対し、XY平面内で相対的に移動させている。しかしながら、ステージ2を固定して、撮影部3を移動させてもよい。もちろん、ステージ2および撮影部3の双方を個別に移動させてもよい。つまり、撮影部3に対して基板9を相対的に移動させることができるのであれば、外観検査装置1はどのように構成されていてもよい。
In the present embodiment, the
撮影部3は、ラインセンサ31を備えている。ラインセンサ31は、基板9に照射された電子線またはレーザ光等を検出する複数の検出素子が一列に配列されることで構成されている。ラインセンサ31によって検出された検出信号は、図示しないADコンバータによって適宜デジタルデータ化され、補正処理等の所定の処理を経て、画像信号として画像処理装置5のバッファメモリ53に順次送信される。このようにして、バッファメモリ53に、検査対象である検査画像が保存される。バッファメモリ53は、画像データ記憶部の一例である。また、撮影部3は、検査画像をバッファメモリ53に保存すると共に、ラインセンサ31によって取り込んだライン数(取り込み済みライン数)をバッファメモリ53に保存する。
The
なお、本実施形態では、撮影部3にラインセンサ31が採用されているが、ラインセンサ31の代わりにCCD等のエリアセンサを採用することも考えられる。
In the present embodiment, the
制御部4は、CPU(Central Processing Unit)、RAM(Random Access Memory)を備える一般的なコンピュータとして構成されている。図2に示される、検査レシピ作成部41、検査タスク生成部43およびステージ制御部45は、CPUがプログラムに従って動作することによりソフトウェア的に実現される機能ブロックである。なお、これらの機能の一部または全部が、専用の回路等によってハードウェア的に実現されてもよい。
The
検査レシピ作成部41は、オペレータが外観検査装置1において実行する検査内容を決定するために、検査レシピを作成するGUIを提供するものである。検査レシピは、検査前にオペレータから与えられる検査条件である。オペレータは、操作部49を介して検査条件(例えば、基板9上におけるダイ91の配置情報、同一ダイ91内における繰り返しパターン領域93および繰り返しパターン領域95の配置情報、検査範囲、検査方法、または、検査パラメータ等)の設定を行う。検査パラメータとしては、例えば、画像上におけるノイズ除去のためのフィルタの設定値、または、パターン欠陥を判断するための閾値(例えば、画素の濃度値)等が含まれる。
The inspection
検査タスク生成部43は、検査レシピ作成部41によって作成された検査レシピに基づいて、検査タスクを生成する。検査タスクは、後述するGPU591が実行する検査処理の単位である。検査タスクには、例えば、後述する各GPU591が検査を行う部分の座標情報、検査タイプ(後述するダイ検査またはアレイ検査)、または、個々の検査処理に適用される検査パラメータ等が含まれる。
The inspection
検査タスク生成部43は、作成した複数の検査タスクを、検査が開始可能になるスキャン撮影の取り込みライン数でソートし、検査タスク保持部51に全検査タスクを保存する(キューイング)。これにより、基板9の内、スキャン撮影が完了した部分から、順次検査を開始することが可能となる。
The inspection
ステージ制御部45は、モータ221,231の駆動を制御することにより、ステージ2のX軸方向またはY軸方向の移動量、移動速度等を制御する。ステージ制御部45は、検査レシピによって指定された基板9上の特定領域を撮影するように、ステージ2の移動を制御する。
The
制御部4には、各種情報を表示する液晶モニタ等で構成される表示部47、および、制御部4に対してオペレータが各種情報を操作入力するためのマウスまたはキーボード等で構成される操作部49が接続されている。なお、表示部47をタッチパネルで構成することにより、表示部47が操作部49の機能の一部または全部を兼ねることも考えられる。表示部47に表示される情報に基づいて、制御部4に対して、操作部49を介した各種指示入力を行うことができる。
The
画像処理装置5は、制御部4と同様に、CPUやRAM等を備えた一般的なコンピュータとして構成されており、パターン欠陥検出に関する各種演算処理を行う。画像処理装置5は、検査タスク保持部51、バッファメモリ53および画像処理制御部55を備えている。画像処理制御部55は、複数のGPU制御部57を含んでいる。画像処理制御部55は、CPUが図示しないプログラムに従って動作することによりソフトウェア的に実現される機能ブロックである。また、画像処理装置5は、複数のGPU591を有する画像処理部59を備えている。複数のGPU591の各々は、対応するGPU制御部57によって動作が制御される。また、各GPU591は、複数のGPUコア5910(図11参照)を備えた、マルチコアプロセッサを構成する。
Similar to the
なお、制御部4および画像処理装置5は、LAN等の通信回線で接続された2台のコンピュータで構成されるが、1台のコンピュータで構成されることも考えられる。
The
検査タスク保持部51は、検査タスク生成部43が生成した検査タスクを保存するための記憶部(RAM等の一時的に情報を記憶するものも含む。)である。検査タスク保持部51に対しては、画像処理制御部55がアクセスする(具体的には、複数のGPU制御部57が非同期かつ排他的にアクセスする)。そして、検査タスク保持部51において、所定の順序で並べられた複数の検査タスクのうちの1つが、適宜取り出される。
The inspection
バッファメモリ53は、上述したように、ラインセンサ31が順次検出する検出信号に基づいた画像信号(画像データ)を逐次保存する記憶部である。バッファメモリ53に蓄積される画像信号は、ラインセンサ31が検出した回数(つまりライン数)に応じたデータ量の画像データとなる。バッファメモリ53は、画像データ記憶部の一例である。
As described above, the
画像処理制御部55は、複数のGPU591に対して、検査タスクに基づく画像処理を完了した順に、検査タスク保持部51に保持された次の新たな検査タスクに従って、新たな画像処理を順次実行させる。このように、外観検査装置1においては、複数の検査タスクがどの画像処理部59で実行されるかはあらかじめ定められていない。したがって、外観検査装置1においては、複数の検査タスクのうちの1つを実行するGPU591が、実際に検査が開始されてから順次決定されるようになっている。ただし、検査を開始するに際して、予め、各検査タスクを実行するGPU591が決められていてもよい。
The image processing control unit 55 causes the plurality of
上述したように、各GPU制御部57は、複数のGPU591のうち、特定のGPU591を制御する。GPU制御部57は、検査タスク保持部51にアクセスして検査タスクを取得し、該検査タスクに記述された指示に沿って、GPU591を動作させる。GPU制御部57は、プロセッサ制御部の一例である。
As described above, each
各GPU591は、画像処理用メモリ593に接続されている。GPU591と画像処理用メモリ593とは、例えば1つのビデオカード(グラフィックカード)で構成されており、PCI Express規格のシリアルバス等を介して、バッファメモリ53またはGPU制御部57と通信可能に接続されている。
Each
GPU591は、例えば、米国nVIDIA社等が提供するGPGPU(General Purpose Computing on Graphics Processing Unit)等を利用することができる。GPU591は、複数のプログラマブルシェーダ(3Dグラフィックスにおいて定義された3Dモデルや光源の情報を元に、その見え方を計算するプログラムのコード(ソフトウェア)およびそれを実行するハードウェアであり、処理内容がプログラム可能なもの)を備えており、該プログラマブルシェーダが所定のプログラムに従って動作することにより、パターン欠陥検出に関わる並列性の高い演算処理を行う。つまり、このプログラマブルシェーダは、GPUコアを構成する。プログラムシェーダを動作させるためのプログラム開発には、例えば、米国nVIDIA社が提供するCUDA(Compute Unified Device Architecture)、OpenCL等の様々な開発環境を利用することができる。
As the
画像処理用メモリ593は、GPU591が作業を行う領域を供する記憶部である。例えば、一般的なビデオカードに搭載される、グラフィック処理に適したGDDR(Graphics Double Data Rate)規格のメモリを、画像処理用メモリ593としてよい。なお、近年市販されているビデオカードには、数ギガバイトのビデオメモリが搭載されているものが多数あり、画像処理用メモリ593としては十分な容量を備えている。
The
図1に示される欠陥データ処理部6は、各画像処理部59において検出された欠陥情報を収集して、検査結果を図示しない記憶部(RAM等の一時的に情報を記憶するものも含む。)に保存する。欠陥情報としては、具体的には、パターン欠陥が検出された位置の座標情報、欠陥箇所の面積情報、または、欠陥画素の濃度値等が含まれる。もちろん、欠陥情報はこれらのようなものに限定されるものではない。なお、欠陥データ処理部6は、CPUおよびRAMを備えた1台のコンピュータで構成されてもよいが、制御部4または画像処理装置5が欠陥データ処理部6の機能を兼ね備えるようにすることも考えられる。
The defect
<1.2. パターン欠陥の検査処理>
外観検査装置1において検査処理が開始された場合、まず、オペレータの操作入力に基づいて、検査レシピ作成部41により検査レシピが生成される。この検査レシピ作成時には、オペレータは、検査する範囲や、適用する検査方法等の各種検査条件の指定を行う。検査タスク生成部43は、この作成された検査レシピに基づいて、検査タスクを作成する。作成された検査タスクは、検査タスク保持部51に保存される。また、外観検査装置1は、ステージ制御部45によって、検査レシピに従ってステージ2を移動させるとともに、撮影部3により検査範囲の撮影を行う。
<1.2. Pattern defect inspection processing>
When an inspection process is started in the appearance inspection apparatus 1, first, an inspection recipe is generated by the inspection
図3は、基板9の一例を示す概略平面図である。図3に示される基板9は、円形状の半導体ウエハであり、その表面には、複数のダイ91が形成されている。図3に示される撮影領域300は、ラインセンサ31がY軸方向に沿ってスキャン撮影した領域を示している。
FIG. 3 is a schematic plan view showing an example of the
図4は、図3に示される1つのダイ91の概略平面図である。図4に示されるダイ91は、同一領域内で回路パターンの繰り返し性が低い領域(以下、非繰り返しパターン領域93という。)と、メモリセル等のように同一領域内で回路パターンの繰り返し性がある領域(以下、繰り返しパターン領域95という。)とが混在している。 FIG. 4 is a schematic plan view of one die 91 shown in FIG. The die 91 shown in FIG. 4 has a circuit pattern repeatability within the same region (hereinafter referred to as a non-repeated pattern region 93) and a circuit pattern repeatability within the same region such as a memory cell. A certain area (hereinafter referred to as a repeated pattern area 95) is mixed.
図5は、スキャン撮影の一例を示す図である。図6は、図5に示されるスキャン撮影で得た画像に対して検査セクションSECを設定する過程を説明するための図である。 FIG. 5 is a diagram illustrating an example of scan imaging. FIG. 6 is a diagram for explaining the process of setting the examination section SEC for the image obtained by the scan photographing shown in FIG.
外観検査装置1では、スキャン撮影して得た画像を、複数の画像に分割し、その分割画像を検査セクションSECとする。そして、この検査セクションSEC毎に、検査タスクが作成される。検査セクションSECは、ダイ91の大きさ、検査に要する演算量、または、画像処理部59の処理能力などの各種条件に応じて可変とされているが、予め検査セクションSECの最大サイズが規定されている。この理由は、検査セクションのサイズが大きすぎると、画像処理量が、画像処理部59の処理能力(GPU591の演算処理能力、画像処理用メモリ593などのメモリ容量等)を超える虞があるからである。そこで、画像処理部59が適切に画像処理を行うことができるように、経験的に、検査セクションの最大サイズが予め定められている。
In the appearance inspection apparatus 1, an image obtained by scanning is divided into a plurality of images, and the divided image is set as an inspection section SEC. An inspection task is created for each inspection section SEC. The inspection section SEC is variable according to various conditions such as the size of the die 91, the amount of calculation required for the inspection, or the processing capability of the
本実施形態では、検査セクションSECの横幅DT11(X方向の長さ)は、撮影領域300の横幅に一致するように設定されている。そして、検査セクションの高さ幅DT13(Y方向の長さ)について、最大高さ幅DTM13が予め定められている。すなわち、最大高さ幅DTM13のときに、検査セクションSECが最大サイズとなる。なお、検査セクションSECの横幅DT11についても、最大横幅を予め規定しておき、その最大横幅までの範囲で適宜変更できるようにしてもよい。
In the present embodiment, the horizontal width DT11 (the length in the X direction) of the inspection section SEC is set to match the horizontal width of the
次に、検査セクションSECのサイズが決定されるのであるが、本実施形態では、ダイ91のサイズによってそのサイズが決定される。例えば、図5に示される例では、検査セクションの最大高さ幅DTM13は、1つのダイ91の縦方向の長さよりも長くなっている。このような場合、できるだけ多くのダイ91が含まれるように、検査セクションSECの高さ幅DT13が決定される。つまり、図5に示される例の場合、検査セクションの最大高さ幅DTM13は、隣接する2つのダイ91の縦方向の長さよりも若干長い。このため、図6に示されるように、−Y側にあるダイ91の−Y側端部から、該ダイ91に+Y側に隣接するダイ91の+Y側端部までの長さが、検査セクションSECの高さ幅DT13に設定される。また、検査セクションSECの位置も、これらの隣接する2つのダイ91が丁度含まれるように設定される。
Next, the size of the inspection section SEC is determined. In this embodiment, the size is determined by the size of the
このように、ダイ91の縦方向の長さが比較的短い場合には、できるだけ多くのダイ91を含むように、検査セクションSECが設定される。これにより、各検査セクションSECが小さくなりすぎることを抑制できる。検査セクションSECを小さくしすぎた場合、画像データの転送処理時に発生する通信等のためのオーバーヘッドの時間が、画像データ自体の転送時間に対して相対的に大きくなり、転送効率が大幅に悪化する場合がある。したがって、検査セクションSECが小さくなることを抑制することで、転送効率を高く維持することができる。 As described above, when the longitudinal length of the die 91 is relatively short, the inspection section SEC is set so as to include as many dies 91 as possible. Thereby, it can suppress that each test | inspection section SEC becomes small too much. If the inspection section SEC is made too small, the overhead time for communication or the like that occurs during the transfer processing of the image data becomes relatively large with respect to the transfer time of the image data itself, and transfer efficiency is greatly deteriorated. There is a case. Therefore, the transfer efficiency can be kept high by suppressing the inspection section SEC from becoming smaller.
図7は、その他のスキャン撮影の例を示す図である。また、図8は、図7に示されるスキャン撮影で得た画像に対して検査セクションSECを設定する過程を説明するための図である。 FIG. 7 is a diagram illustrating another example of scan photography. FIG. 8 is a diagram for explaining the process of setting the examination section SEC for the image obtained by the scan photographing shown in FIG.
図7に示される例では、図5および図6に示される例とは異なり、ダイ91Aの縦方向の長さが検査セクションの最大高さ幅DTM13よりも大きくなっている。この場合、ダイ91Aの縦方向の長さをできるだけ少ない分割数n(nは2以上の自然数)で等分したときに、その1つ分の長さが、検査セクションSECの最大高さ幅DTM13を超えないときに、その1つの分の長さが検査セクションSECの高さ幅DT13に設定される。例えば図7に示される例では、検査セクションの最大高さ幅DTM13が、ダイ91Aの縦方向の長さよりも短く、かつ、該縦方向の長さの半分以上となっている。このため、図8に示されるように、検査セクションの高さ幅DT13は、ダイ91Aを縦方向において2分割したときの、その一つ分の長さに設定される。
In the example shown in FIG. 7, unlike the examples shown in FIGS. 5 and 6, the longitudinal length of the
このように、比較的大きいダイ91Aの場合に、縦方向に等分割して検査セクションの高さ幅DT13を決定することにより、1つの検査セクションが大きくなりすぎることを抑制できる。これにより、画像処理量が、画像処理部59の処理能力(GPU591の演算処理能力、画像処理用メモリ593などのメモリ容量等)を超える虞がなくなり、画像処理部59が適切に画像処理を行うことができる。
As described above, in the case of the relatively
次に、検査セクションSEC毎に検査タスクを作成する点について説明する。なお、以下の説明では、図6に示されるように、比較的小さいダイ91をスキャン撮影して得た場合を例に挙げて説明する。ただし、図8に示されるような、比較的大きいダイ91Aであっても、同様に検査を実行できることはいうまでもない。
Next, the point that an inspection task is created for each inspection section SEC will be described. In the following description, as shown in FIG. 6, a case where a comparatively small die 91 is obtained by scanning is described as an example. However, it goes without saying that even a relatively
図9は、検査セクションSEC毎に、検査タスクが生成される様子を説明する図である。検査セクションSECが設定されると、検査タスク生成部43が、検査セクションSEC毎に、1つの検査タスクを生成する。検査タスクは、各プロセッサ(GPU591)に分配する検査処理の単位である。図9に示される例では、3つの検査セクションSEC1〜SEC3が設定されているため、これらに対応する検査タスクT1〜T3が生成される。なお、1つの検査セクションSECに対して、複数種類の検査を行う溜めに、複数の検査タスクを生成してもよい。
FIG. 9 is a diagram illustrating a state in which an inspection task is generated for each inspection section SEC. When the inspection section SEC is set, the inspection
各検査タスクT1〜T3は、各検査セクションSEC1〜3の位置情報の他、複数の検査コマンド(検査コマンドC11,C12,C13・・・、検査コマンドC21,C22,C23・・・、検査コマンドC31,C32,C33・・・)で構成されている。検査コマンドは、各プロセッサ(GPU591)が実行する検査処理の最小実行単位である。 Each inspection task T1 to T3 includes a plurality of inspection commands (inspection commands C11, C12, C13..., Inspection commands C21, C22, C23..., Inspection command C31 in addition to the position information of the inspection sections SEC1 to SEC3. , C32, C33... The inspection command is a minimum execution unit of inspection processing executed by each processor (GPU 591).
図10は、検査コマンドの例を説明するための図である。本実施形態では、非繰り返しパターン領域93と繰り返しパターン領域95に対して異なる検査方法が適用される。具体的に、非繰り返しパターン領域93については、いわゆるダイ検査が適用される。また、繰り返しパターン領域95については、アレイ検査が適用される。
FIG. 10 is a diagram for explaining an example of the inspection command. In the present embodiment, different inspection methods are applied to the
非繰り返しパターン領域93に適用されるダイ検査とは、検査対象のダイ91と、これとは異なるダイ91とを比較することによって、パターン欠陥を検出する検査方法である。異なるダイ91は、任意の位置にあるものを選択し得るが、例えば、ラインセンサ31の長手方向と平行な方向に隣接するダイ91を選択すればよい。
The die inspection applied to the
繰り返しパターン領域95に適用されるアレイ検査とは、検査対象である1つのダイ91内における、繰り返しパターン同士を比較することにより、パターン欠陥を検出する検査方法である。比較される2つの繰り返しパターンは、隣接していてもよいし、離れていてもよい。
The array inspection applied to the
このように、非繰り返しパターン領域93と繰り返しパターン領域95とは、異なる検査が適用される。このため、図10に示されるように、検査セクションSEC1は、非繰り返しパターン領域93に対応する領域と繰り返しパターン領域95に対応する領域とに分割される。さらに、本実施形態では、非繰り返しパターン領域93と繰り返しパターン領域95とに分割された領域は、矩形の領域に分割される。このため、図10に示される検査セクションSEC1では、16個の矩形領域A1−1〜A1−16に分割される。なお、検査セクションSEC1を必ずしも矩形領域に分割する必要はなく、任意の形状の領域に分割することが可能である。
As described above, different inspections are applied to the
具体的に、矩形領域A1−1〜A1−3,A1−5〜A1−7,A1−9〜A1−11,A1−13〜A1−15は、非繰り返しパターン領域93に対応する。このため、これらの領域について、GPU591にダイ検査を実行させるダイ検査コマンドが検査タスクT1に登録される。一方、矩形領域A1−4,A1−8,A1−12,A1−16は、繰り返しパターン領域95に対応する。このため、これらの領域について、GPU591にアレイ検査を実行させるアレイ検査コマンドが検査タスクT1に登録されることとなる。
Specifically, the rectangular areas A1-1 to A1-3, A1-5 to A1-7, A1-9 to A1-11, and A1-13 to A1-15 correspond to the
各GPU制御部57は、検査タスク保持部51に非同期かつ排他的にアクセスして、1つの検査タスクを取得する。検査タスクを取得したGPU制御部57は、その情報を元に、まず、バッファメモリ53に記録されたスキャン撮影の取り込み済みライン数が、本検査タスクの検査開始に必要な取り込みライン数を超えているかどうかを判定する。取り込み済みライン数が、検査に必要な取り込みライン数を超えていない場合、GPU制御部57は、超えるまで待機する。取り込み済み取り込みライン数が、検査に必要な取り込みライン数を超えている場合、GPU制御部57は、GPU591に接続されている画像処理用メモリ593に、検査する範囲の画像(検査画像)を、バッファメモリ53から取り込ませる。
Each
次に、GPU制御部57は、検査タスクに含まれる複数の検査コマンドから、1つの検査コマンドを取得して、該検査コマンドにおいて指定された処理をGPU591に登録する。また、GPU制御部57は、同一の検査タスクから、次の検査コマンドを取得し、先に登録した検査コマンド(第一検査コマンド)と次の検査コマンド(第二検査コマンド)との間で、処理内容に依存関係があるか否かを判定する。そして、依存関係がない場合、すなわち、先の検査コマンドと新たな検査コマンドとが同時に処理可能なものである場合、先の検査コマンドが完了するのを待たずに、次の検査コマンドをGPU591に登録して、その処理を実行させる。このように、並列に実行可能な検査コマンドの処理が、非同期に(つまり、処理の完了を待たずに)次々とGPU591に登録される。
Next, the
図11は、GPU591が複数の検査コマンドを実行するときのタイムチャートの一例を示す図である。図11に示される例では、GPU591は、21個のGPUコア5910を備えている。なお、このGPUコア数は、一例であり、適宜変更可能である。また、図11に示される例では、GPU591は、検査コマンドC1−1〜C1−16を実行している。これらの検査コマンドC1−1〜C1−16は、図10に示される、矩形領域A1−1〜A1−16について検査する、ダイ検査コマンドまたはアレイ検査コマンドにそれぞれ該当する。また、図11において、横軸は、各検査コマンドの実行に割り当てられるGPUコア5910の数量を示しており、縦軸は時間を示している。
FIG. 11 is a diagram illustrating an example of a time chart when the
図11に示される例では、各検査コマンドに割り当てられるGPUコア数は、以下のように設定されている。
(グループ1)検査コマンドC1−1,C1−5,C1−9,C1−13・・・21個
(グループ2)検査コマンドC1−2,C1−6,C1−10,C1−14・・・5個
(グループ3)検査コマンドC1−3,C1−7,C1−11,C−15・・・12個
(グループ4)検査コマンドC1−4,C1−8,C1−12,C1−16・・・14個
In the example shown in FIG. 11, the number of GPU cores assigned to each inspection command is set as follows.
(Group 1) Inspection commands C1-1, C1-5, C1-9, C1-13... 21 (Group 2) Inspection commands C1-2, C1-6, C1-10, C1-14. 5 (group 3) inspection commands C1-3, C1-7, C1-11, C-15... 12 (group 4) inspection commands C1-4, C1-8, C1-12, C1-16. ..14 pieces
グループ1〜3の検査コマンドは、ダイ検査コマンド、グループ4の検査コマンドは、アレイ検査コマンドに相当する。ここで、ダイ検査コマンドとアレイ検査コマンドとは、それぞれ処理内容に依存関係がないため、並列に実行可能な検査コマンドとなっている。つまり、検査コマンドC1−1〜C1−16は、いずれも、相互に並列に実行可能な検査コマンドである。しかしながら、グループ1とグループ4の検査コマンドは、割り当てられるGPUコア数が比較的多く、他の検査コマンドのためにGPUコア5910を提供することができない。このため、これらの検査コマンドは、1つずつ順番に実行されることとなる。
The inspection commands for groups 1 to 3 correspond to die inspection commands, and the inspection commands for
一方、グループ2とグループ3の検査コマンドは、同時に実行したとしても、割り当てられるGPUコア数の和(=7+11)が全GPU数(=21)を超えないため、GPU591が並列に実行可能となっている。
On the other hand, even if the inspection commands for group 2 and
なお、上記の例では、各検査コマンドに割り当てられるGPUコア数に基づいて、複数の検査コマンドを同時に実行するか否かが決定される。しかしながら、各検査コマンドに消費されるレジスタまたはオンチップ・メモリの容量等の条件を鑑みて、2以上の検査コマンドを同時に登録して実行させるか否かを決定するようにしてもよい。 In the above example, whether or not to execute a plurality of inspection commands simultaneously is determined based on the number of GPU cores assigned to each inspection command. However, in view of conditions such as the capacity of the register or on-chip memory consumed by each inspection command, it may be determined whether or not two or more inspection commands are registered and executed simultaneously.
図12は、並列に実行できない検査コマンドの例を説明するための図である。図11において実行される検査コマンドC1−1〜C1−16は、並列に処理可能な検査コマンドであった。これに対して、検査コマンド同士の処理内容に依存関係がある場合、GPU591がこれらの検査コマンドを同時に実行することができない。
FIG. 12 is a diagram for explaining an example of a test command that cannot be executed in parallel. The inspection commands C1-1 to C1-16 executed in FIG. 11 are inspection commands that can be processed in parallel. On the other hand, when there is a dependency relationship between the processing contents of the inspection commands, the
例えば、ダイ検査またはアレイ検査後に、その検査結果に対して「マスク処理」を行う場合がある。具体的に、ダイ91上の特定部分について欠陥が必ず現れることが分かっている等の諸事情がある場合に、ダイ検査後またはアレイ検査後に、上記特定部分に関する検査結果をマスク処理して破棄する場合がある。つまり、マスク処理をGPU591に実行させるためのマスク処理コマンドC34は、ダイ検査コマンドC31,C32またはアレイ検査コマンドC33と同時に実行することはできない(図12参照)。
For example, after the die inspection or the array inspection, “mask processing” may be performed on the inspection result. Specifically, when there are various circumstances such that it is known that a defect always appears on a specific part on the
このように、次にGPU591に登録しようとする検査コマンド(第二検査コマンド)と、先に登録した検査コマンド(第一検査コマンド)との間で、処理内容に依存関係があるために、同時に実行できない場合、GPU制御部57は、先に登録した検査コマンド(第一検査コマンド)が完了した後に、次の検査コマンド(第二検査コマンド)をGPU591に登録する。
As described above, since there is a dependency on the processing contents between the inspection command (second inspection command) to be registered next in the
また、同時に実行できない検査コマンドの例として、「出力処理」がある。具体的に、出力処理とは、ダイ検査またはアレイ検査によって検出した欠陥を、欠陥データ処理部6に出力する際に、例えば、検査の種別(ダイ検査またはアレイ検査)の明示、欠陥箇所の位置情報、欠陥箇所の画像の切り出し等をGPU591に実行させる処理である。この出力処理を実行させる出力処理コマンドも、アレイ検査コマンドまたはダイ検査コマンドの後でしか実行できない場合がある。したがって、このような出力処理コマンドも、アレイ検査コマンドまたはダイ検査コマンドが先に完了してから、GPU591に登録されることとなる。
An example of an inspection command that cannot be executed simultaneously is “output processing”. Specifically, output processing refers to, for example, specifying the type of inspection (die inspection or array inspection) and the position of a defect when outputting defects detected by die inspection or array inspection to the defect
GPU制御部57は、先に登録した検査コマンドと次に登録すべき検査コマンドについて、処理内容に依存関係があるかどうか(つまり、並列処理可能かどうか)を判断する際、これらの検査コマンドの種類のみに基づいて判断すればよい。具体的には、「ダイ検査コマンド」、「アレイ検査コマンド」、「マスク処理コマンド」または「出力処理コマンド」といったコマンドの種類が参照されればよい。これにより、GPU制御部57によって、検査コマンドをGPU591に高速かつ適切に登録することが可能となる。
The
以上のようにして、GPU591が、1つの検査タスクに含まれる全検査コマンドの実行を完了すると、GPU制御部57は、GPU591によって生成された欠陥情報を、欠陥データ処理部6に出力する。そして、各GPU制御部57が各GPU591に並列して各検査タスクを実行させることで、検査タスク保持部51に保持されている全検査タスクが順次実行される。また、検査タスク保持部51に保存されている全検査タスクが完了すると、基板9の別の場所について、スキャン撮影が行われる。このようにして、基板9の所望の範囲についての検査が行われる。
As described above, when the
<1.3. 効果>
以上のように、本実施形態では、先にGPU591に登録された検査コマンド(第一検査コマンド)と、次に登録する(未登録の)検査コマンド(第二検査コマンド)との間で、処理内容に依存関係がない場合、GPU591に次の検査コマンド(第二検査コマンド)が登録される。GPU591において、先の検査コマンド(第一検査コマンド)と次の検査コマンド(第二検査コマンド)とを、並列に処理することが可能となるため、演算処理の効率を向上することができる。
<1.3. Effect>
As described above, in the present embodiment, processing is performed between the inspection command (first inspection command) registered in the
図13は、比較例に係るGPU591が複数の検査コマンドを実行するときのタイムチャートの一例を示す図である。この図13に示される比較例では、検査コマンドC1−1〜C1−16について、処理内容の依存関係に関わらず、順番に実行されている。この場合、GPUコア5910が動作していない時間が多く存在しており、マルチコアプロセッサであるGPU591の優位性が生かされていない。
FIG. 13 is a diagram illustrating an example of a time chart when the
これに対して、本実施例では、図11に示されるように、並列処理が可能な検査コマンドについては、複数のGPUコア5910によって、並列に実行される。これにより、GPUコア5910が動作していない時間を顕著に減らすことができる。つまり、演算処理の効率を向上することができる。
On the other hand, in this embodiment, as shown in FIG. 11, test commands that can be processed in parallel are executed in parallel by a plurality of
<2. 変形例>
以上、実施形態について説明してきたが、本発明は上記のようなものに限定されるものではなく、様々な変形が可能である。
<2. Modification>
Although the embodiment has been described above, the present invention is not limited to the above, and various modifications are possible.
例えば、上記実施形態では、図10に示されるように、検査対象領域である検査セクションSEC1を、非繰り返しパターン領域93および繰り返しパターン領域95で分割し、さらにそれらを矩形領域に分割して、それぞれの矩形領域毎に検査コマンドが割り当てられる。しかしながら、検査対象領域を分割する方法は、このようなものに限定されない。
For example, in the above embodiment, as shown in FIG. 10, the inspection section SEC1, which is the inspection target area, is divided into a
例えば、図14に示されるように、1つのダイ91Bにおいて、四角形の検査対象領域R11および略円形の検査対象領域R13が存在する場合に、これらの検査対象領域R11,R13を多数の矩形領域に分割することが考えられる。このように、検査セクションを細かく分割することで、矩形領域毎に適用される検査(ダイ検査またはアレイ検査)において、検査条件(例えば、欠陥か否かを判定するための閾値等)を矩形領域毎に異ならせることができる。これにより、より綿密な検査を実施することができる。
For example, as shown in FIG. 14, when a rectangular inspection target region R11 and a substantially circular inspection target region R13 exist in one
また、上記実施形態では、複数のGPU591を用いて、検査処理を並列に行うようにしているが、例えば、これを複数のCPUに代行させることも考えられる。この場合、例えばCPUとRAMを備えた複数台のコンピュータを用意し、GPU591をCPUで代用し、また、画像処理用メモリ593をRAMで代用すればよい。1台のコンピュータに、複数のCPUを搭載するいわゆるマルチCPUで代用することも考えられる。なお、一般的には、CPUを利用するよりも、GPU591を利用した方が、欠陥検出に関する画像処理を高速に行うことができる。
In the above embodiment, a plurality of
また、GPU591の代わりに、Cell(Cell Broadband Engine(株式会社ソニー・コンピュータエンタテインメントの商標))のように、種類の異なる複数のプロセッサコアを備えた、ヘテロジニアスマルチコアのプロセッサを採用することも考えられる。
It is also possible to adopt a heterogeneous multi-core processor having a plurality of different processor cores such as Cell (Cell Broadband Engine (trademark of Sony Computer Entertainment Inc.)) instead of the
また、上記実施形態では、GPU591毎に、専用の画像処理用メモリ593が用意されている。しかしながら、各GPU591が、共通の画像処理用メモリにアクセスするように構成されていてもよい。
In the above embodiment, a dedicated
また、上記実施形態では、基板9を半導体基板としているが、本発明は、フォトマスク用ガラス基板、表示装置用基板、光ディスク用基板、磁気ディスク用基板、光磁気ディスク用基板、プリント基板、または、太陽電池用基板等の各種基板の画像処理、または、外観検査処理を行う場合にも有効である。
In the above embodiment, the
さらに、上記実施形態および変形例で示される各構成は、矛盾が生じない限りにおいて相互に組み合わせたり、または、省略したりすることができることはいうまでもない。 Furthermore, it goes without saying that the configurations shown in the above-described embodiments and modifications can be combined with each other or omitted as long as no contradiction arises.
1 外観検査装置
2 ステージ
21 ステージ移動機構
3 撮影部
31 ラインセンサ
4 制御部
41 検査レシピ作成部
43 検査タスク生成部
45 ステージ制御部
5 画像処理装置
51 検査タスク保持部
53 バッファメモリ
55 画像処理制御部
57 GPU制御部(プロセッサ制御部)
59 画像処理部
5910 GPUコア(コア)
591 GPU(プロセッサ)
593 画像処理用メモリ
6 欠陥データ処理部
9 基板
91,91A,91B ダイ
93 非繰り返しパターン領域
95 繰り返しパターン領域
A1〜A16 矩形領域
C1〜C16 検査コマンド
C31,C32 ダイ検査コマンド
C33 アレイ検査コマンド
C34 マスク処理コマンド
DT11 横幅
DT13 高さ幅
DTM13 最大高さ幅
R11,R13 検査対象領域
T1〜T3 検査タスク
SEC,SEC1〜SEC3 検査セクション
DESCRIPTION OF SYMBOLS 1 Appearance inspection apparatus 2
59
591 GPU (processor)
593
Claims (10)
複数のコアを有するプロセッサを備える画像処理部と、
検査対象となる検査画像を記憶する画像記憶部と、
前記検査画像を複数に分割して得られる検査セクション毎に生成された、前記プロセッサが実行する複数の検査コマンドを含む検査タスクを保持する検査タスク保持部と、
前記複数の検査コマンドを、前記プロセッサに登録して実行させるプロセッサ制御部と、
を備え、
前記プロセッサ制御部は、1つの前記検査タスクに含まれる前記複数の検査コマンドのうち、前記プロセッサに先に登録した第一検査コマンドと前記プロセッサに未登録である第二検査コマンドとの間で、処理内容に依存関係がないとき、前記プロセッサに前記第二検査コマンドを登録する、画像処理装置。 An image processing apparatus,
An image processing unit comprising a processor having a plurality of cores;
An image storage unit for storing an inspection image to be inspected;
An inspection task holding unit that holds an inspection task including a plurality of inspection commands executed by the processor, generated for each inspection section obtained by dividing the inspection image into a plurality of parts;
A processor control unit that registers and executes the plurality of inspection commands in the processor;
With
The processor control unit, among the plurality of inspection commands included in one inspection task, between a first inspection command previously registered in the processor and a second inspection command not registered in the processor, An image processing apparatus for registering the second inspection command in the processor when there is no dependency in processing contents.
前記プロセッサ制御部は、前記プロセッサに登録された複数の検査コマンドを、前記プロセッサに並行に実行させる、画像処理装置。 The image processing apparatus according to claim 1.
The processor control unit causes the processor to execute a plurality of inspection commands registered in the processor in parallel.
前記画像処理部が、前記プロセッサを複数備えており、
複数の前記検査タスクが、複数の前記プロセッサにそれぞれ分配される、画像処理装置。 The image processing apparatus according to claim 1 or 2,
The image processing unit includes a plurality of the processors,
An image processing apparatus, wherein a plurality of inspection tasks are respectively distributed to the plurality of processors.
前記プロセッサ制御部は、前記第一検査コマンドおよび第二検査コマンドの種類に基づいて、前記プロセッサに前記第二コマンドを登録するか否かを判断する、画像処理装置。 The image processing apparatus according to any one of claims 1 to 3,
The image processing apparatus, wherein the processor control unit determines whether to register the second command in the processor based on types of the first inspection command and the second inspection command.
請求項1から4までのいずれか1項に記載の画像処理装置と、
基板を撮影して前記検査画像を取得する撮影部と、
を備え、
前記画像処理部は、前記基板に形成されたパターンの欠陥を検査する、外観検査装置。 An appearance inspection apparatus for inspecting a pattern formed on a substrate,
An image processing apparatus according to any one of claims 1 to 4,
A photographing unit for photographing the substrate and obtaining the inspection image;
With
The image processing unit is an appearance inspection apparatus that inspects a defect of a pattern formed on the substrate.
前記複数の検査コマンドは、非繰り返しパターンを検査するダイ検査コマンドと、繰り返しパターンを検査するアレイ検査コマンドとを含む、外観検査装置。 The appearance inspection apparatus according to claim 5,
The visual inspection apparatus, wherein the plurality of inspection commands include a die inspection command for inspecting a non-repeated pattern and an array inspection command for inspecting a repetitive pattern.
(a) 検査対象である検査画像を、複数に分割して得られた検査セクション毎に、複数のコアを有するプロセッサが実行する複数の検査コマンドで構成される検査タスクを生成する工程と、
(b) 前記複数の検査コマンドを、前記プロセッサに登録して実行させる工程と、
を含み、
前記(b)工程は、1つの前記検査タスクに含まれる前記複数の検査コマンドのうち、前記プロセッサに先に登録した第一検査コマンドと前記プロセッサに未登録の第二の検査コマンドとの間で、処理内容に依存関係がないとき、前記プロセッサに前記第二検査コマンドを登録する工程である、画像処理方法。 An image processing method comprising:
(a) generating an inspection task composed of a plurality of inspection commands executed by a processor having a plurality of cores for each inspection section obtained by dividing an inspection image to be inspected into a plurality of sections;
(b) registering and executing the plurality of inspection commands in the processor;
Including
In the step (b), among the plurality of inspection commands included in one inspection task, between the first inspection command previously registered in the processor and the second inspection command not registered in the processor. An image processing method, which is a step of registering the second inspection command in the processor when there is no dependency in processing contents.
(c) 前記(b)工程にて前記プロセッサに登録された前記複数の検査コマンドを、前記プロセッサが並列に実行する工程、
をさらに含む、画像処理方法。 The image processing method according to claim 7.
(c) a step in which the processor executes the plurality of inspection commands registered in the processor in the step (b) in parallel;
An image processing method further comprising:
(A) 基板を撮影することによって、検査画像を取得する工程、
(B) 前記検査画像を複数に分割して得られる検査セクション毎に、複数のコアを有するプロセッサが実行する複数の検査コマンドを含む検査タスクを生成する工程と、
(C) 前記複数の検査コマンドを、前記プロセッサに登録して実行させる工程と、
を含み、
前記(C)工程は、1つの前記検査タスクに含まれる前記複数の検査コマンドのうち、前記プロセッサに先に登録した第一検査コマンドと前記プロセッサに未登録の第二の検査コマンドとの間で、処理内容に依存関係がないとき、前記プロセッサに前記第二検査コマンドを登録する工程である、外観検査方法。 An appearance inspection method for inspecting a pattern formed on a substrate,
(A) a process of obtaining an inspection image by photographing the substrate;
(B) generating an inspection task including a plurality of inspection commands to be executed by a processor having a plurality of cores for each inspection section obtained by dividing the inspection image into a plurality of sections;
(C) registering and executing the plurality of inspection commands in the processor;
Including
In the step (C), among the plurality of inspection commands included in one inspection task, between the first inspection command previously registered in the processor and the second inspection command not registered in the processor. An appearance inspection method, which is a step of registering the second inspection command in the processor when there is no dependency in processing contents.
(D) 前記(C)工程にて前記プロセッサに登録された前記複数の検査コマンドを、前記プロセッサが並列に実行する工程、
をさらに含む、外観検査方法。 The visual inspection method according to claim 9,
(D) a step in which the processor executes the plurality of inspection commands registered in the processor in the step (C) in parallel;
A visual inspection method further comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012216204A JP6074210B2 (en) | 2012-09-28 | 2012-09-28 | Image processing apparatus, appearance inspection apparatus, image processing method, and appearance inspection method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012216204A JP6074210B2 (en) | 2012-09-28 | 2012-09-28 | Image processing apparatus, appearance inspection apparatus, image processing method, and appearance inspection method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014070956A true JP2014070956A (en) | 2014-04-21 |
JP6074210B2 JP6074210B2 (en) | 2017-02-01 |
Family
ID=50746303
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012216204A Active JP6074210B2 (en) | 2012-09-28 | 2012-09-28 | Image processing apparatus, appearance inspection apparatus, image processing method, and appearance inspection method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6074210B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7441861B2 (en) | 2020-01-09 | 2024-03-01 | 日立Astemo株式会社 | Arithmetic device and inspection method |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05101110A (en) * | 1991-10-04 | 1993-04-23 | Toshiba Corp | Data base arithmetic processing unit |
JP2009281898A (en) * | 2008-05-23 | 2009-12-03 | Hitachi High-Technologies Corp | Defect inspection method and apparatus for the same |
JP2010218130A (en) * | 2009-03-16 | 2010-09-30 | Mitsubishi Electric Corp | Drawing control device |
JP2011065645A (en) * | 2009-09-18 | 2011-03-31 | Square Enix Co Ltd | Multi-core processor system |
-
2012
- 2012-09-28 JP JP2012216204A patent/JP6074210B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05101110A (en) * | 1991-10-04 | 1993-04-23 | Toshiba Corp | Data base arithmetic processing unit |
JP2009281898A (en) * | 2008-05-23 | 2009-12-03 | Hitachi High-Technologies Corp | Defect inspection method and apparatus for the same |
JP2010218130A (en) * | 2009-03-16 | 2010-09-30 | Mitsubishi Electric Corp | Drawing control device |
JP2011065645A (en) * | 2009-09-18 | 2011-03-31 | Square Enix Co Ltd | Multi-core processor system |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7441861B2 (en) | 2020-01-09 | 2024-03-01 | 日立Astemo株式会社 | Arithmetic device and inspection method |
Also Published As
Publication number | Publication date |
---|---|
JP6074210B2 (en) | 2017-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9196031B2 (en) | Appearance inspection apparatus and method | |
TW200539059A (en) | Scalable shader architecture | |
JP2004012360A (en) | Pattern inspection device, pattern inspection method, and program | |
KR100380909B1 (en) | Appearance inspection apparatus and appearance inspection method | |
JP2016530521A (en) | Board inspection equipment | |
JP4564768B2 (en) | Pattern inspection method and apparatus | |
JPH04148544A (en) | Wire bonding inspector | |
JP2011222636A (en) | Inspection apparatus, inspection method, and defect coordinate correction method | |
JP2009031006A (en) | Visual inspection device and method | |
JP6074210B2 (en) | Image processing apparatus, appearance inspection apparatus, image processing method, and appearance inspection method | |
US9659361B2 (en) | Measuring apparatus that generates positional deviation distribution of a pattern on a target object | |
JP2013148380A (en) | Visual inspection device | |
JP2005091161A (en) | Defect-confirming system and defect-confirming method | |
JP2014062837A (en) | Defect inspection device and defect reviewing device | |
US9811896B2 (en) | Measuring apparatus | |
JP2013024666A (en) | Defect detection method and defect detection device | |
JP2013148363A (en) | Visual inspection device | |
JP2002296753A (en) | Graphic data developing method | |
JP2005241310A (en) | Visual examination device, visual examination method and visual examination program | |
JP6460660B2 (en) | Data operation device, data operation method, and defect inspection device | |
JP2014032100A (en) | Pattern inspection device and pattern inspection method | |
JP2017194587A (en) | Inspection method and inspection device for color filter | |
JP4089302B2 (en) | Appearance inspection apparatus and appearance inspection method | |
JP2015042942A (en) | Image processor, defect detection device, image processing method, program, and, recording medium | |
US9824413B2 (en) | Sort-free threading model for a multi-threaded graphics pipeline |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150619 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160411 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160510 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160701 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20161220 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170106 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6074210 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |