The invention, together with further advantages thereof, may best be understood by reference to the following description taken in conjunction with the accompanying drawings in which:
The method begins at 300 by receiving the images into a computer system for analysis. The test and reference images are acquired along with the defect region in steps 310 and 315. The reference image may be obtained in step 310 from any of the sources previously described, namely, 1) an image of a similar structure that is presumed defect free, 2) a computer rendering of the design data for the pattern being inspected, or 3) an alternate imaging method of the actual pattern being inspected. Devices that are used to produce this reference image include the KLA SLF, KLA 5xx, Orbot 8000 and NEC LM7000B inspection tools.
The test image may be obtained in step 315 from a photomask inspection system, generally the same inspection system that produced the reference image. Both images are typically grayscale and transferred via file from the inspection tool to the image analysis software, such as the software that may embody the steps herein described. Alternatively, the images may be transferred via a network socket or in hard copy.
The defect region is obtained in step 320 from the photomask inspection system. The defect region is defined as a block of pixels or as an irregular contiguous set of pixels that the inspection system listed as containing a possible defect. I.e., the defect region is a region that surrounds the suspected defect of the test image, or that surrounds a suspected defect in the reference image. Techniques for defining the defect region and for communicating it to a computer system are known to those of skill in the art.
Focus or large rendering errors are detected in steps 330 and 335 by comparing the maximum pixel intensity difference (MPID) between the test and reference images in two regions, 1) the defect region and 2) a narrow region surrounding the defect region. In the preferred method the surrounding region is 3 pixels wide. I.e., an MPID is obtained for the defect region and for the surrounding region. A real defect in the test image will normally be limited to the defect region. The defect is suspected to be a focus or large rendering error if the MPID in the surrounding region is more than approximately 70% of the MPID in the defect region.
A large defect could occasionally be a real manufacturing error such as over-etching that looks much like a rendering error such as defocus. Suspected focus or large rendering errors can be distinguished from such manufacturing errors by comparing the intensity gradients of the two images at an edge in the defect region. The gradient is computed by taking the maximum intensity difference between a pixel and its four adjacent pixels. If the gradients in the two images are nearly identical the defect is considered to be a real manufacturing error. The defect is considered to be a focus or large rendering error if the gradients differ by more than about 10%.
Spatial non-linearity is computed for both the test and reference images in step 340 by first creating an “auto-reference” image for each of the test and original reference images, and then computing the MPID between the original and its auto-reference image. This MPID value is used as the spatial non-linearity value. This technique is called an “auto-reference” technique because the test image or the original reference image itself is used to produce the auto-reference image.
Each auto-reference image is created by performing a one-dimensional smoothing of the original image (i.e., the test image or the reference image) in the defect region. This smoothing eliminates edge roughness such as defects but preserves any straight edges, thereby creating the auto-reference image. More than one auto-reference image may be created for each original image by performing one-dimensional smoothing in both the horizontal and vertical directions, as well as in other likely edge directions.
In one embodiment, the smoothing is performed in both the horizontal and vertical directions, resulting in two different auto-reference images for each original image, and two resulting MPID values for each original image (as described below). The lowest MPID value from all the auto-reference image calculations for a given original image is used as the spatial non-linearity value (the two values corresponding to an auto-reference image created by smoothing in one direction and to an auto-reference image created by smoothing in another direction). The lowest MPID value corresponds to smoothing in the direction of any straight lines.
Once an auto-reference image (or perhaps multiple auto-reference images as discussed above) is created for each of the test image and the original reference image, then the maximum pixel intensity difference (MPID) value can be created for each of the test image and the original reference image. The auto-reference image created from the test image is subtracted from the test image and a maximum pixel intensity difference is determined between the two images. Likewise, the auto-reference image created from the original reference image is subtracted from the reference image and an MPID is determined between these two images. The MPID for each of these operations is used as the spatial non-linearity value for each image. A comparison of the MPID for the test image and the original reference image can help determine where the real defect lies.
In this situation, it can be concluded that the real defect is in the image (test or original reference) having the higher spatial non-linearity value (i.e., the higher MPID value). We know this is true because we assume that the defect is more random, or less symmetrical than the manufactured pattern.
In step 345, if the spatial non-linearity value in both images is more than ten times the average pixel intensity noise in the test image then the defect region pattern is considered complex, such as a corner or a circle. In this case the intended pattern is non-linear, so the spatial non-linearity test is not well suited. In this case an identical, presumably non-defective pattern is used for the reference. Thus, a search for a similar pattern, is performed in the rest of the test image in step 350. The search can be implemented in many ways, including normalized two-dimensional correlation, or blob analysis, both methods known by one familiar with image processing. The preferred method is two-dimensional correlation because it works with any pattern, including color or grayscale patterns. The search also looks for a defect region pattern that is rotated or mirrored.
Normally the test image is searched for the similar pattern, although the reference image can be searched if there is reason to doubt the validity of the test image values, as is the case of a large defect.
If a matching region is found in step 350, then that matching region is sub-pixel aligned with the defect region of the original image (test or original reference) and used as a reference in step 370. This technique is similar to the technique described in step 340 except that a single matching region is used in place of each auto-reference image. This technique is called “auto-reference from repeat.” The MPID between the original image and the “auto-reference from repeat” matching region is computed for both the test and original reference images. These two MPID values are then used as the spatial non-linearity values in step 380 below.
But, if no matching region is found in step 350 then control moves to step 360. Thus, if the defect region pattern is complex with no matching region, then it can be difficult to determine whether the suspected defect is in the test image or in the reference image. Nevertheless, a technique is used in step 360 to provide a best guess. If the defect region contains an edge with one or more obtuse angles between about 135 and 180 degrees then the total intensity gradient (total slope) of the pixels in the defect region is computed for both images. This is a simple measure of image complexity.
In step 380 the image with the higher MPID value (coming from steps 345 or 370) or the image with the higher image complexity value, total slope, (coming from step 360) is concluded to be the image with the real defect.
Next, in step 385, if the inspection type is die-to-die and the defect is found in the reference image then control goes to step 390 to determine if the reference image defect is a real defect or a rendering error. If not, then the method ends at step 399.
If the defect region includes a 90-degree corner, such as in
CPU 922 is also coupled to a variety of input/output devices such as display 904, keyboard 910, mouse 912 and speakers 930. In general, an input/output device may be any of: video displays, track balls, mice, keyboards, microphones, touch-sensitive displays, transducer card readers, magnetic or paper tape readers, tablets, styluses, voice or handwriting recognizers, biometrics readers, or other computers. CPU 922 optionally may be coupled to another computer or telecommunications network using network interface 940. With such a network interface, it is contemplated that the CPU might receive information from the network, or might output information to the network in the course of performing the above-described method steps. Furthermore, method embodiments of the present invention may execute solely upon CPU 922 or may execute over a network such as the Internet in conjunction with a remote CPU that shares a portion of the processing.
In addition, embodiments of the present invention further relate to computer storage products with a computer-readable medium that have computer code thereon for performing various computer-implemented operations. The media and computer code may be those specially designed and constructed for the purposes of the present invention, or they may be of the kind well known and available to those having skill in the computer software arts. Examples of computer-readable media include, but are not limited to: magnetic media such as hard disks, floppy disks, and magnetic tape; optical media such as CD-ROMs and holographic devices; magneto-optical media such as floptical disks; and hardware devices that are specially configured to store and execute program code, such as application-specific integrated circuits (ASICs), programmable logic devices (PLDs) and ROM and RAM devices. Examples of computer code include machine code, such as produced by a compiler, and files containing higher-level code that are executed by a computer using an interpreter.
Although the foregoing invention has been described in some detail for purposes of clarity of understanding, it will be apparent that certain changes and modifications may be practiced within the scope of the appended claims. Therefore, the described embodiments should be taken as illustrative and not restrictive, and the invention should not be limited to the details given herein but should be defined by the following claims and their full scope of equivalents.