Inspection equipment, inspection method, and program
The inspection apparatus addresses false defect detections in DDB inspection by automatically calculating correction values for design images, reducing inspection time and improving accuracy through a correction value map and deep learning models.
Patent Information
- Application Number
- JP2025021553
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-02-13
- Publication Date
- 2026-08-25
AI Technical Summary
Existing defect inspection methods, such as DDB inspection, struggle to distinguish between defects in semiconductor masks and wafers and low reproducibility issues in reference images, leading to false defect detections, and require manual adjustment of correction amounts for optical proximity effects, increasing inspection time.
An inspection apparatus and method that automatically calculates correction values for design images using geometric pattern information, generating a reference image without manual intervention, by employing a correction value map based on geometric pattern data and deep learning models.
Reduces false defect detections and minimizes inspection time by generating accurate reference images that closely resemble captured images, eliminating the need for manual adjustment of correction amounts.
Smart Images

Figure 2026135805000001_ABST
Abstract
Description
Technical Field
[0001] Embodiments of the present invention relate to an inspection apparatus, an inspection method, and a program.
Background Art
[0002] In the manufacture of large-scale integrated circuits of semiconductor devices, in order to suppress the reduction in yield, defect inspection for inspecting that there are no defects in the mask serving as the master of the circuit pattern and the wafer on which the circuit pattern is formed is important. One of the defect inspection methods is DDB (Die to Database) inspection. In DDB inspection, a captured image of the created mask or wafer circuit pattern is compared with a reference image virtually reproduced from the circuit pattern of the mask design data, and a location with a large error is detected as a defect. Such DDB inspection is implemented in various inspection apparatuses because it uses a simple principle of comparing two images.
[0003] However, DDB inspection cannot distinguish between a case where the error between the two compared images indicates a defect in the mask or wafer in the captured image and a case where the error indicates a location with low reproducibility of the reference image. Along with this, in the latter case, even if there are no defects in the mask or wafer, there is a high possibility of false detection of a location with low reproducibility of the reference image as a defect. From the viewpoint of reducing such a possibility of false detection, in DDB inspection, it is necessary to generate a reference image that faithfully reproduces the captured image of a mask or wafer without defects.
[0004] As a method for generating a reference image, for example, a binary image according to the presence or absence of a pattern is created from design data, and a point spread function PSF obtained by类推 from the edge pattern of the captured image for the edge blur due to the optical characteristics of the imaging system is convolved with the binary image. Note that PSF is an abbreviation for Point Spread Function. In this method, the optical blur of the captured image is reproduced on the binary image by a convolution operation, which is a linear operation, to generate a reference image.
[0005] On the other hand, regarding the masks and wafers of captured images, it is known that when the miniaturization of circuit patterns makes the pattern dimensions smaller than the exposure wavelength, the corners of the patterns become rounded and the edges shift compared to the binarized image, resulting in optical proximity effects such as dimensional shifts in the patterns. Furthermore, this optical proximity effect cannot be reproduced on the binarized image using only the point spread function (PSF).
[0006] Therefore, in the method for generating reference images, it is necessary to reproduce the optical proximity effect by applying rounding processing to correct the corners of the pattern and line width adjustment processing to correct the line width of the pattern by correcting it to expand and contract, before convolving the point spread function PSF. However, the degree to which the optical proximity effect occurs differs depending on the pattern, such as the pattern of corners or the pattern of straight lines. For this reason, if rounding processing or line width adjustment processing is applied to all patterns in the binarized image with the same correction amount, the optical proximity effect can be reproduced well for patterns for which the same correction amount is the optimal correction amount, while for patterns for which the same correction amount is an inappropriate correction amount, pattern disappearance or insufficient reproduction of the optical proximity effect may occur. In this case, a reference image with low reproducibility is generated. In contrast to this, a technique is known that corrects the pattern by applying corner rounding processing and line width adjustment processing to the design data based on the target pattern size obtained from the registered data or GUI (Graphical User Interface), depending on the pattern.
[0007] However, this technology requires manual adjustment of the correction amount for patterns not present in the registered data, which increases inspection time. Therefore, from the perspective of preventing increased inspection time, it is desirable to eliminate the need for manual adjustment of the correction amount. [Prior art documents] [Patent Documents]
[0008] [Patent Document 1] Patent No. 5564276 [Overview of the Initiative] [Problems that the invention aims to solve]
[0009] The problem that this invention aims to solve is to provide an inspection device, method, and program that eliminate the need for manual adjustment of the correction amount. [Means for solving the problem]
[0010] An inspection apparatus according to one embodiment comprises a design image acquisition unit, a graphic pattern calculation unit, a correction value map calculation unit, a design image correction unit, and a reference image generation unit. The design image acquisition unit acquires a design image generated from design data including a graphic pattern to be inspected. The graphic pattern calculation unit calculates graphic pattern information relating to the graphic pattern based on the design image. The correction value map calculation unit calculates a correction value map of the design image based on the graphic pattern information. The design image correction unit generates a corrected image by correcting the design image based on the correction value map. The reference image generation unit generates a reference image based on the corrected image. [Brief explanation of the drawing]
[0011] [Figure 1] A block diagram illustrating the configuration of an inspection apparatus according to the first embodiment. [Figure 2] A schematic diagram illustrating the graphic pattern information according to the first embodiment. [Figure 3] A flowchart illustrating the operation in the first embodiment. [Figure 4] A schematic diagram illustrating the effects of the first embodiment. [Figure 5] A block diagram illustrating the configuration of an inspection device according to a first modified example of the first embodiment. [Figure 6] A block diagram illustrating the configuration of an inspection device according to a second modified example of the first embodiment. [Figure 7] A flowchart illustrating the operation in a second modified example of the first embodiment. [Figure 8] A block diagram illustrating the configuration of an inspection device according to a third modified example of the first embodiment. [Figure 9] Flowchart for explaining the operation in the third modification of the first embodiment. [Figure 10] Block diagram illustrating the configuration of the inspection apparatus according to the second embodiment. [Figure 11] Block diagram illustrating the configuration of the inspection apparatus according to the third embodiment. [Figure 12] Schematic diagram for explaining an example of the model according to the third embodiment. [Figure 13] Schematic diagram for explaining another example of the model according to the third embodiment. [Figure 14] Schematic diagram for explaining still another example of the model according to the third embodiment. [Figure 15] Schematic diagram for explaining the graphic pattern information in the third embodiment. [Figure 16] Block diagram illustrating the hardware configuration of the inspection apparatus according to each embodiment.
Mode for Carrying Out the Invention
[0012] Hereinafter, referring to the drawings, an inspection apparatus, an inspection method, and a program according to each embodiment will be described.
[0013] (First Embodiment) FIG. 1 is a block diagram illustrating the configuration of the inspection apparatus according to the first embodiment. The inspection apparatus 100 includes a design image acquisition unit 101, a graphic pattern calculation unit 102, a correction value map calculation unit 103, a design image correction unit 104, and a reference image generation unit 106.
[0014] Here, the design image acquisition unit 101 acquires a design image generated from design data including a graphic pattern of an inspection target. The design image acquisition unit 101 outputs the acquired design image to the graphic pattern calculation unit 102 and the design image correction unit 104.
[0015] For example, masks that serve as the original plates for circuit patterns of semiconductor devices, and wafers on which circuit patterns have been formed, can be used as appropriate for inspection. A mask is a glass plate on which a fine circuit pattern has been formed, used in the exposure process of a transfer technique called photolithography, and selectively transmits or blocks light from a light source according to the circuit pattern. A wafer is a semiconductor substrate on which an integrated circuit is formed by selective exposure through the mask, thereby transferring the circuit pattern from the mask.
[0016] As graphic patterns, for example, circuit patterns or parts of circuit patterns can be used as appropriate. Specifically, when the object to be inspected is a wafer, the graphic pattern corresponds to a circuit pattern. Also, when the object to be inspected is a mask, and the entire circuit pattern is transferred in a single exposure process, the graphic pattern corresponds to a circuit pattern. Also, when the object to be inspected is a mask, and the circuit pattern is transferred layer by layer in two or more exposure processes, the graphic pattern of each mask corresponds to a part of the circuit pattern. In this embodiment, the case where the graphic pattern corresponds to a circuit pattern will be described as an example.
[0017] Design data is created using specialized design software and computers, such as CAD (Computer-Aided Design). The design process involves stages such as functional design to realize the required functions, logical design to create circuit diagrams, and physical design to arrange elements and wiring layouts, ultimately resulting in the creation of design data for mask generation. The design image generated from this design data is free from defects.
[0018] The design image is a binarized image derived from the design data, similar to DDB (Die to Database) inspection, depending on the presence or absence of a pattern. Alternatively, the design image may be an image that, in addition to the binarized image, shows edge pattern information with decimal pixel precision, by calculating the pixel value from the area ratio of the pattern per pixel at each edge. Furthermore, the design image may be an image based on the pattern of the design data. In addition, the design image is not limited to the design data that defines the structure of the object to be inspected; for example, it may include information such as the material or surface color of the object to be inspected.
[0019] The geometric pattern calculation unit 102 calculates geometric pattern information based on the design image. The geometric pattern calculation unit 102 outputs the calculated geometric pattern information to the correction value map calculation unit 103.
[0020] As geometric pattern information, for example, numerical data obtained by combining positional information within the design image may be used, or patch images may be used, which are created by dividing the design image of the geometric pattern into small patches. As numerical data, for example, pattern width, gap width, edge information, pixel values at corners, and corner angles can be used as appropriate.
[0021] Figure 2 is a schematic diagram illustrating this geometric pattern information, with Figures 2(a) to (e) corresponding to numerical data and Figure 2(f) corresponding to a patch image. In Figure 2, a binarized image is shown as an example of a design image, with the pattern represented by a pixel value of 255 and non-pattern areas by a pixel value of 0. For design images other than binarized images, the pixel values or numerical data indicating the pattern and non-pattern areas are replaced.
[0022] As shown in Figure 2(a), the pattern width is numerical data indicating the width and height of the pattern. It is calculated by raster scanning the design image horizontally (or vertically) and determining the length between pixels whose pixel value changes from 0 to 255 and pixels whose pixel value changes from 255 to 0. Alternatively, the pattern width may be calculated by extracting edge information from the design image through edge detection or differentiation of the image, and then calculating it from the edge information and the changes in pixel values before and after the edge, as described above.
[0023] The gap width, as shown in Figure 2(b), is numerical data that indicates the vertical and horizontal width of the gap between patterns. Similar to the pattern width described above, the gap width is calculated by raster scanning the image horizontally (or vertically) and representing the length between the pixel whose pixel value changes from 255 to 0 and the pixel whose pixel value changes from 0 to 255. Alternatively, the gap width may be calculated by extracting edge information from the design image using edge detection or image differentiation, and then using the edge information and the change in pixel values before and after the edge, as described above.
[0024] Edge information, as shown in Figure 2(c), is numerical data about the edges surrounding a target pixel Px within a pattern. Suitable edge information includes, for example, the response value of an edge detection filter for surrounding pixels, or the distance from the edges surrounding the target pixel when edges are extracted from the design image using edge detection or differential imaging. Examples of edge detection filters include the Sobel filter. The distance from the edge is calculated using the shorter of the left-right (or up-down) distances, as shown in Figure 2(c), but both the shorter and longer distances may be used. Similar to pattern width and gap width, both horizontal and vertical values are calculated for the edge information.
[0025] The pixel values at the corners are numerical data indicating the pixel values at the corners of the pattern, as shown in Figure 2(d). The corners of the pattern are detected from the design image using corner detection or edge detection, such as Harris. In the example shown in Figure 2(d), the pixel values at the corners of the pattern are detected as a bright numerical value of 255.
[0026] The angle of a corner is numerical data indicating the angle of the corner of the pattern, as shown in Figure 2(e). To calculate the angle of a corner, the corner is detected from the design image, similar to Figure 2(d), and the angle is calculated from the inclination of the edge of the detected corner. The geometric pattern information may use numerical values for the angle, or it may use information that classifies the numerical values of the angle into ranges such as acute, right, and obtuse angles.
[0027] The digitized data shown in Figures 2(a) to (e) above is calculated separately for the vertical and horizontal directions of the image. When digitizing the data, the number of pixels or the actual length obtained by multiplying the number of pixels by the pixel size may be used.
[0028] As shown in Figure 2(f), the patch image is an image containing a portion of the pattern, extracted from the design image. For example, the patch image may include corner edges, or it may not include edges, or it may include straight line edges, as shown in the area of Mx×My (Mx,My≧1) pixels in the rectangular frame Fp. The patch image may be extracted from all pixels of the design image, or it may be extracted from only a portion of the pattern, such as corners or edges, necessary for calculating the correction value map. In other words, the extraction of patch images from areas in the design image that do not contain edges may be omitted. To add to this, the correction value map is a map in which the correction values for edges such as corners and straight lines of the pattern are placed at the positions of those edges, so the correction value for areas where edges are not detected by the edge detection filter will be zero. Therefore, the correction value of the correction value map for areas that do not contain edges may be set to zero in advance.
[0029] The correction value map calculation unit 103 calculates a correction value map of the design image based on the graphic pattern information. The correction value map is a map that shows correction values according to the graphic pattern information. The correction value is a correction parameter that represents the correction strength when correcting the boundary portion of the graphic pattern of the design image by image processing such as line width change processing or rounding processing in order to reproduce the proximity effect of light. The correction value may also be called a resize value because it corresponds to the degree to which the size of the graphic pattern is changed. It is preferable, but not limited to, that two values, horizontal and vertical, are calculated for each pixel, for the correction value. Specifically, the correction value map calculation unit 103 calculates a correction value map that shows the amount to correct the corners and line width of the pattern of the design image for each pixel or for each small area K × L (1 ≤ K, L < width or height of the design image) according to the graphic pattern information. K is the number of pixels that represent the width (horizontal length) of the small area, and L is the number of pixels that represent the height (vertical length) of the small area. In the smallest case (K=L=1), the small area corresponds to 1 pixel. The correction value map calculation unit 103 outputs the calculated correction value map to the design image correction unit 104. The correction value map is the same size as the design image, and correction values are assigned to the same pixel positions or the same sub-region positions as the design image. The correction value map is calculated using a model that has been pre-trained to derive the correction value map from the geometric pattern information.
[0030] As for the model, N-th degree function models (where N≧1) and deep learning models can be used as appropriate. For example, multiple geometric pattern information w i When calculating the correction value r from a quadratic function model with input (i=1,…,M)(M≧1), the coefficient of the Nth-degree function is c=[c 10 ,…,c MM Let's assume that the following equation (1) holds true.
[0031]
number
[0032] The coefficient c of the Nth degree function is the geometric pattern information w iThe correction value r can be calculated using the least squares method or similar from multiple training data sets paired with the correction value r. The training data includes a design image, a captured image, and a correction value map in which the correction value that brings the design image closest to the captured image is placed. The correction value map can be generated by calculating the correction value r for each pixel or sub-region from the above model, and then placing the calculated correction value r on the map in the pixels or sub-regions used for the calculation.
[0033] When using deep learning in the model, the correction value map can be directly regression-regressed using geometric pattern information as input, or error information used to calculate the correction value map can be regression-regressed. Examples of error information include the pixel-by-pixel error distribution between a reference image generated from a design image corrected with various correction values and the captured image, or the average error distribution calculated for each sub-region. The correction value map can be generated using the error information after regression-regressing the error information. For example, if the error distribution is regression-regressed as the error information, the correction value map can be calculated by selecting the correction value that minimizes the error for each pixel or sub-region.
[0034] The geometric pattern information input to the model may consist of one or more geometric pattern data points in the case of numerical data, and any combination is acceptable. Alternatively, in the case of patch images, the geometric pattern information input to the model may be a patch image extracted from a design image containing geometric pattern information. The model may consist of separate models calculating horizontal / vertical line width or corner correction values, or a single model calculating horizontal / vertical line width or corner correction values. Accordingly, the model training method may use a first training data set that takes geometric pattern information as input data and horizontal / vertical line width correction values as output data, and a second training data set that takes geometric pattern information as input data and horizontal / vertical corner correction values as output data. For example, separate trained models may be prepared by using the first training data for training the first model and the second training data for training the second model. Alternatively, a single trained model may be prepared by using both the first and second training data for training a single model. Furthermore, the process of calculating correction values by the model may be implemented on a cloud server that can communicate with the inspection device 100. For example, the correction value map calculation unit 103 may send graphic pattern information to a cloud server, and when it receives the correction values calculated from the graphic pattern information within the cloud server, it may record the received correction values and calculate a correction value map.
[0035] The design image correction unit 104 generates a corrected image by correcting the design image based on the correction value map. For example, the design image correction unit 104 generates a corrected image by correcting the corners and line widths of the pattern in the design image based on the correction value map, and outputs it to the reference image generation unit 106. The correction process is a process that makes the design image closer to the captured image. Examples of correction processes that can be used as appropriate include rounding the corners of the pattern using a circular filter, or expanding and contracting the line width with integer or decimal pixel precision. The correction method may be changed depending on the shape of the graphic pattern, the material to be inspected, the shooting method in defect inspection, etc.
[0036] The reference image generation unit 106 generates a reference image based on the corrected image. In addition to the corrected image, the reference image generation unit 106 may also use a differentially corrected image obtained by differentiating the corrected image as an input image for generating the reference image. In addition to the corrected image, an image obtained by enlarging a part of the corrected image may also be used as an input image. Furthermore, in addition to the corrected image, an image obtained by extracting only the color components of the corrected image may also be used as an input image.
[0037] Next, the operation of the inspection device configured as described above will be explained using the flowchart in Figure 3. The following steps ST10 to ST50 are automatically executed by each part of the activated inspection device 100 without manual operation.
[0038] First, the design image acquisition unit 101 of the inspection device 100 acquires a design image generated from design data that includes the geometric pattern to be inspected (step ST10).
[0039] After step ST10, the geometric pattern calculation unit 102 calculates geometric pattern information related to the geometric pattern based on the acquired design image (step ST20). For example, the geometric pattern calculation unit 102 calculates geometric pattern information w for each small region into which the geometric pattern of the design image has been divided. i The graphic pattern calculation unit 102 calculates the graphic pattern information w for each pixel of the graphic pattern in the design image. i You may calculate this.
[0040] After step ST20, the correction value map calculation unit 103 calculates a correction value map of the design image based on the calculated geometric pattern information (step ST30). For example, the correction value map calculation unit 103 calculates the geometric pattern information w for each small region of the design image. i Based on this, a correction value r is calculated from an Nth-degree function or a deep learning model, and the calculated correction value r is set to the position of the corresponding sub-region in the correction value map. As a result, the correction value map calculation unit 103 calculates a correction value map that includes the correction value r for each sub-region.
[0041] After step ST30, the design image correction unit 104 generates a corrected image based on the calculated correction value map (step ST40). For example, the design image correction unit 104 corrects the design image for each small region based on the correction value r for each small region of the correction value map. As a result, the design image correction unit 104 generates a corrected image in which the design image has been corrected by the correction value r for each small region.
[0042] After step ST40, the reference image generation unit 106 generates a reference image based on the generated corrected image (step ST50). The generated reference image is used for defect inspection by comparing it with a separately captured image of the object to be inspected.
[0043] As described above, according to the first embodiment, the design image acquisition unit 101 acquires a design image generated from design data including the geometric pattern to be inspected. The geometric pattern calculation unit 102 calculates geometric pattern information related to the geometric pattern based on the acquired design image. The correction value map calculation unit 103 calculates a correction value map of the design image based on the calculated geometric pattern information. The design image correction unit 104 generates a corrected image by correcting the design image based on the calculated correction value map. The reference image generation unit 106 generates a reference image based on the generated corrected image.
[0044] Therefore, according to the first embodiment, unlike conventional methods, manual adjustment of the correction amount is unnecessary because the configuration calculates geometric pattern information from the design image and calculates a correction value map from the geometric pattern information. Furthermore, since manual adjustment is unnecessary, an increase in inspection time can be prevented. In addition, according to the first embodiment, when calculating correction parameters to approximate the design image to the captured image, the correction value map can be calculated from the geometric pattern information of the design image without using the captured image.
[0045] Furthermore, according to the first embodiment, as shown in the upper part of Figure 4, by correcting the design image 1 pixel by pixel or sub-region by sub-region using the correction value map Mp, a reference image 2 with higher accuracy that is closer to the captured image is generated, thereby reducing the probability of false detection due to errors in the reference image 2. In addition, it becomes possible to quickly generate a reference image 2 with a small error from a flawless captured image. In contrast, in the comparative example, as shown in the lower part of Figure 4, the entire design image 1 is corrected with the same correction value, which causes errors in the reference image 3 due to the disappearance of patterns that do not match the correction value or insufficient correction, thus increasing the probability of false detection due to errors in the reference image 3.
[0046] (Various variations) The first embodiment may be implemented in modified form as shown in the following examples. Each modification, unless otherwise specified, can achieve the same effects as the original first embodiment. Furthermore, each modification may be implemented in combination with the following embodiments.
[0047] (Modified example of the first embodiment) The first modified example is a configuration in which the inspection device 100 includes a storage unit.
[0048] Figure 5 is a block diagram illustrating the configuration of an inspection device according to the first modified example of the first embodiment. The same reference numerals are used for parts identical to those in Figure 1, and their detailed descriptions are omitted. Here, only the different parts will be described. Similarly, in each of the following modified examples and embodiments, the descriptions of overlapping parts will be omitted. This inspection device 100 further includes a storage unit 105 compared to the configuration shown in Figure 1.
[0049] The memory unit 105 is a memory capable of reading and writing data, for example, a corrected image corrected by the design image correction unit 104 is written to the memory unit 105 and stored therein. Also, for example, the memory unit 105 can read the stored corrected image from the reference image generation unit 106.
[0050] The other configurations are the same as in the first embodiment.
[0051] With the above configuration, steps ST10 to ST40 are executed as described above, and the design image correction unit 104 generates a corrected image. Thereafter, the design image correction unit 104 stores the corrected image in the storage unit 105.
[0052] Thus, in the inspection device 100, upon acquiring a design image, the design image can be corrected in the same manner as described above. In addition, a corrected image can be generated in advance before defect inspection and stored in the storage unit 105, thereby reducing inspection time. Furthermore, the reference image generation unit 106 can generate a reference image based on the corrected image stored in the storage unit 105, in the same manner as described above.
[0053] (Second modified example of the first embodiment) The second modified example is a specific example of the graphic pattern calculation unit 102 and the correction value map calculation unit 103, and as shown in Figures 2(a) to (e), it corresponds to the case where the graphic pattern information is in numerical data format.
[0054] For example, the geometric pattern calculation unit 102 includes a corner detection unit 102a and a pattern detection unit 102b, as shown in Figure 6.
[0055] The corner detection unit 102a detects the corners of the geometric pattern included in the design image and calculates geometric pattern information that includes one or more pieces of information, either the pixel value of the corner or the angle. For example, as shown in Figure 2(d), the corner detection unit 102a may detect the corners of the geometric pattern included in the design image and calculate geometric pattern information that includes the pixel value of the corner. Alternatively, as shown in Figure 2(e), the angle detection unit 102e may detect the corners of the geometric pattern included in the design image and calculate geometric pattern information that includes the angle of the corner.
[0056] The pattern detection unit 102b calculates graphic pattern information that includes one or more pieces of information such as the pattern width within the graphic pattern included in the design image, the gap width between patterns, and edge information around the pattern, as shown in Figures 2(a) to (c).
[0057] The correction value map calculation unit 103 includes a corner correction calculation unit 103a and a width correction calculation unit 103b.
[0058] The corner correction calculation unit 103a calculates a correction value map including the correction value of a corner based on one or more pieces of information, either the pixel value or the angle of a corner, included in the graphic pattern information. For example, the corner correction calculation unit 103a may calculate a correction value map including the correction value of a corner based on the angle of a corner included in the graphic pattern information.
[0059] The width correction calculation unit 103b calculates a correction value map for scaling the pattern width based on one or more pieces of information included in the graphic pattern information, such as the pattern width, gap width, and edge information.
[0060] The other configurations are the same as in the first embodiment.
[0061] Next, the operation of the inspection device 100 configured as described above will be explained using the flowchart in Figure 7.
[0062] First, as described above, step ST10 is executed and the design image is acquired by the design image acquisition unit 101. After that, steps ST20 to ST30 are executed. Step ST20 includes steps ST21 to ST22, and step ST30 includes steps ST31 to ST32.
[0063] After step ST10, the graphic pattern calculation unit 102 uses the corner detection unit 102a to detect the corners of the graphic pattern included in the design image and obtains the pixel values and angles of the corners (step ST21).
[0064] After step ST21, the geometric pattern calculation unit 102 calculates the pattern width, gap width, and edge information around the pattern within the geometric pattern included in the design image using the pattern detection unit 102b (step ST22). This provides geometric pattern information including the pattern width, gap width, and edge information. After that, step ST20, including steps ST21 to ST22, is completed.
[0065] After step ST20, the correction value map calculation unit 103 calculates a correction value map including the correction value for the corner based on the pixel value and angle of the corner, using the corner correction calculation unit 103a (step ST31). The corner correction value is the rounding correction amount used for rounding the corner.
[0066] After step ST31, the correction value map calculation unit 103 calculates a correction value map related to the expansion and contraction of the pattern width based on the pattern width, gap width, and edge information using the width correction calculation unit 103b (step ST32). The correction value related to the expansion and contraction of the pattern width is the line width correction amount for the line width expansion and contraction processing. This completes step ST30, which includes steps ST31 to ST32.
[0067] After step ST30, the processing from step ST40 onwards is executed as described above.
[0068] As described above, according to the second modified example of the first embodiment, the corner detection unit 102a of the graphic pattern calculation unit 102 detects the corners of the graphic pattern and calculates graphic pattern information that includes one or more pieces of information, either the pixel value or the angle of the corner. The corner correction calculation unit 103a of the correction value map calculation unit 103 calculates a correction value map that includes the correction value of the corner based on one or more pieces of information, either the pixel value or the angle of the corner, included in the graphic pattern information. Therefore, a corrected image and a reference image corresponding to the correction value of the corner in the correction value map can be generated.
[0069] Furthermore, according to a second modification of the first embodiment, the pattern detection unit 102b of the graphic pattern calculation unit 102 calculates graphic pattern information that includes one or more pieces of information such as the pattern width within the graphic pattern, the gap width between patterns, and edge information around the pattern. The correction value map calculation unit 103 calculates a correction value map related to the scaling of the pattern width based on one or more pieces of information such as the pattern width, gap width, and edge information included in the graphic pattern information, using the width correction calculation unit 103b. Therefore, a corrected image and a reference image corresponding to the correction value map related to the scaling of the pattern width can be generated.
[0070] In the second modified example of the first embodiment, the processing is shown to be performed sequentially, but the method is not limited to this. For example, the processing of the pattern corners (steps ST21 and ST31) and the processing of the line width (steps ST22, ST32) may be swapped or executed in parallel.
[0071] Furthermore, in the second modified example of the first embodiment, the processing of corners and line widths in the geometric pattern were performed separately, but the method is not limited to this. For example, the correction value for line width may be calculated using the geometric pattern information of the corners, or the correction amount for corners may be calculated from the geometric pattern information of line widths. Also, when calculating the correction amount for either corners or line widths, the correction amount for one of the targets may be calculated based on the geometric pattern information of one and the correction amount of the other.
[0072] (Third modified example of the first embodiment) The third modified example is another specific example of the graphic pattern calculation unit 102 and the correction value map calculation unit 103, and corresponds to the case where the graphic pattern information is a patch image, as shown in Figure 2(f).
[0073] For example, the graphic pattern calculation unit 102 includes a patch image acquisition unit 102c, as shown in Figure 8.
[0074] As shown in Figure 2(f), the patch image acquisition unit 102c detects geometric patterns contained in the design image, acquires patch images containing the geometric patterns, and calculates geometric pattern information including the patch images.
[0075] The correction value map calculation unit 103 includes a corner correction calculation unit 103a and a width correction calculation unit 103b, similar to the second modified example shown in Figure 6.
[0076] The corner correction calculation unit 103a calculates a correction value map that includes the correction value of the corner represented by the patch image, based on the patch image included in the graphic pattern information.
[0077] The width correction calculation unit 103b calculates a correction value map related to the scaling of the pattern width represented by the patch image, based on the patch image included in the graphic pattern information.
[0078] The other configurations are the same as in the first embodiment.
[0079] Next, the operation of the inspection device 100 configured as described above will be explained using the flowchart in Figure 9.
[0080] First, as described above, step ST10 is executed and the design image is acquired by the design image acquisition unit 101. Then, steps ST20 to ST30 are executed. Step ST20 includes step ST25, and step ST30 includes steps ST31 to ST32.
[0081] After step ST10, the graphic pattern calculation unit 102 acquires patch images of the graphic patterns included in the design image using the patch image acquisition unit 102c, and calculates graphic pattern information including the patch images (step ST25). This completes step ST20, including step ST25.
[0082] After step ST20, the correction value map calculation unit 103 calculates a correction value map including the correction value of the corners represented by the patch image, based on the patch image included in the graphic pattern information, using the corner correction calculation unit 103a (step ST31). The corner correction value is the rounding correction amount used for rounding the corners.
[0083] After step ST31, the correction value map calculation unit 103 calculates a correction value map related to the scaling of the pattern width represented by the patch image, based on the patch image included in the graphic pattern information, using the width correction calculation unit 103b (step ST32). The correction value related to the scaling of the pattern width is the line width correction amount for the line width expansion and contraction processing. This completes step ST30, which includes steps ST31 to ST32.
[0084] After step ST30, the processing from step ST40 onwards is executed as described above.
[0085] As described above, according to the third modified example of the first embodiment, the graphic pattern calculation unit 102 acquires patch images of the graphic pattern using the patch image acquisition unit 102c and calculates graphic pattern information including the patch images. The correction value map calculation unit 103 calculates a correction value map including the correction values of the corners represented by the patch images based on the patch images included in the graphic pattern information using the corner correction calculation unit 103a. Therefore, a correction image and a reference image corresponding to the correction values of the corners in the correction value map can be generated.
[0086] Furthermore, according to a third modification of the first embodiment, the correction value map calculation unit 103 calculates a correction value map relating to the scaling of the pattern width represented by the patch image based on the patch image included in the graphic pattern information, using the width correction calculation unit 103b. Therefore, a corrected image and a reference image corresponding to the correction value map relating to the scaling of the pattern width can be generated.
[0087] (Second embodiment) The second embodiment is an inspection apparatus 100 shown in Figure 1, which includes the processing for acquiring captured images and the processing for calculating errors necessary for defect inspection.
[0088] Figure 10 is a block diagram illustrating the configuration of an inspection apparatus according to the second embodiment. Compared to the configuration shown in Figure 1, this inspection apparatus 100 further includes an image acquisition unit 107 and an error calculation unit 108.
[0089] The image acquisition unit 107 acquires captured images of the object to be inspected. For example, the image acquisition unit 107 acquires captured images of a mask created from the design data of the mask to be inspected using an electron beam exposure apparatus or the like, using an imaging device, and outputs the captured images to the error calculation unit 108. Alternatively, the image acquisition unit 107 may acquire captured images of a wafer on which an integrated circuit has been formed by photolithography using the mask, using an imaging device, and output the captured images to the error calculation unit 108. The image acquisition unit 107 may be implemented as an imaging device that photographs the object to be inspected and generates captured images, or it may be implemented as a processor that performs the process of reading the captured images from a storage device that has stored the captured images. Here, the imaging device is a device that operates on the same principle as a general electron microscope or X-ray imaging. That is, the imaging device scans and irradiates the object to be inspected (mask or wafer) with light (electromagnetic waves) from a light source, and generates captured images of the object to be inspected by converting the transmitted or reflected light (electromagnetic waves) into pixel values according to the intensity when it reaches the sensor. For the light source of the imaging device, for example, a DUV (Deep Ultraviolet) laser can be used. For the sensor of the imaging device, a sensor array arranged in a two-dimensional array, similar to a CMOS sensor, is used. The wavelength of the light used for imaging and the arrangement of the sensor array must be appropriately determined according to the fineness of the geometric pattern of the object to be inspected.
[0090] The error calculation unit 108 calculates the error between the reference image and the captured image. For example, the error calculation unit 108 calculates the error between the reference image and the captured image based on the reference image generated by the reference image generation unit 106 and the captured image acquired by the image acquisition unit 107. The error calculation unit 108 may also determine areas with large calculated errors as defects.
[0091] Specifically, the error calculation unit 108 calculates the error by performing a difference process between the reference image and the captured image. The difference process may, for example, involve calculating a simple difference for each pixel, or it may involve calculating the maximum error, minimum error, absolute maximum error, average error, mean squared error (MSE), and root mean squared error (RMSE) for each small region.
[0092] The other configurations are the same as in the first embodiment.
[0093] With the above configuration, the functional units from the design image acquisition unit 101 to the reference image generation unit 106 generate a reference image from a corrected image obtained by correcting the design image according to the design data including the geometric pattern to be inspected, as described above.
[0094] Meanwhile, the image acquisition unit 107 acquires images of the object to be inspected.
[0095] The error calculation unit 108 calculates the error between the reference image and the captured image and outputs the calculated error. The error calculation unit 108 may also determine areas with large calculated errors as defects and output the corresponding errors and the determination results.
[0096] As described above, according to the second embodiment, the image acquisition unit 107 acquires a captured image of the object to be inspected. The error calculation unit 108 calculates the error between the reference image and the captured image. Therefore, in addition to the effects of the first embodiment, the configuration for calculating the error between the reference image and the captured image enables defect inspection of the object to be inspected.
[0097] (Third embodiment) The third embodiment is a configuration in the inspection device 100 shown in Figure 10, which includes a process for creating a model for calculating a correction value map.
[0098] Figure 11 is a block diagram illustrating the configuration of an inspection device according to a third embodiment. Compared to the configuration shown in Figure 10, this inspection device 100 includes a model creation unit 109 in the correction value map calculation unit 103. However, the model creation unit 109 may be located outside the correction value map calculation unit 103 within the inspection device 100, or it may be located outside the inspection device 100. In the latter case, the model creation unit 109 may be implemented on a cloud server that can communicate with the inspection device 100.
[0099] The model creation unit 109 creates a model for calculating a correction value map using the captured images of the object to be inspected and the training reference images from the reference images. Here, as shown in Figures 12 to 14, an Nth-degree function model Md1 (where N≧1) and deep learning models such as DNN models Md2 and Md3 can be used as appropriate. DNN is an abbreviation for Deep Neural Network. In this embodiment, three models are given as examples, but the model creation unit 109 only needs to create at least one model.
[0100] The Nth-degree polynomial model Md1 is a model that outputs a correction value corresponding to the error between the captured image and the training reference image, based on geometric pattern information.
[0101] The DNN models Md2 and Md3 are models that output the error between the captured image and the training reference image, or a correction value corresponding to the error, based on patch images extracted from the design image that serves as the basis for the training reference image. In this case, the geometric pattern information is the patch image extracted from the design image that serves as the basis for the training reference image. However, the input to the DNN models Md2 and Md3 is not limited to patch images. For example, in the case of a patch image of a region near an edge but not containing the edge, it is possible to train the DNN models Md2 and Md3 using both the patch image and the distance of that region from the edge as input data, and the correction value as output data. Alternatively, the input to the DNN models Md2 and Md3 may consist only of geometric pattern information (digital data) other than patch images. For example, in the case of numerical data of a region near an edge but not containing the edge, it is possible to train the DNN models Md2 and Md3 using both the gap width of that region and the distance of that region from the edge as input data, and the correction value as output data. Furthermore, the DNN models Md2 and Md3 include, for example, a network 31 that extracts features from a patch image, and linear layers 32 and 32a to which the features are input. Specifically, the DNN models Md2 and Md3 include, for example, a network 31 common to both models and separate linear layers 32 or 32a for each model, starting from the input side. That is, in the DNN models Md2 and Md3, the patch image input passes through network 31 and linear layer 32, or network 31 and linear layer 32a in sequence, and is output as a correction value or error value. Any neural network capable of extracting features from a patch image can be used as network 31 as appropriate. The two DNN models Md2 and Md3 differ only in their final linear layers 32 and 32a. The linear layer 32 of the DNN model Md2 linearly combines the outputs of network 31 and outputs two correction values, which are two scalar values. The two correction values include a correction value in the X direction, which is the horizontal direction of the design image 21, and a correction value in the Y direction, which is the vertical direction of the design image. Note that the X and Y directions are orthogonal to each other. Correction values in two directions are preferable to correction values in one direction from the viewpoint of reducing errors.The reason why correction values in two directions are necessary is that the optical proximity effect in the X direction and the optical proximity effect in the Y direction differ depending on the exposure device. Multiple edges within a circuit pattern are formed along either the X or Y direction. This is also true for gaps between patterns. Multiple corners within a circuit pattern have two mutually orthogonal edges, and each edge is formed along either the X or Y direction.
[0102] Here, we will provide some supplementary information regarding the geometric pattern information. As shown in an enlarged view in Figure 15, two circuit patterns Pt1 and Pt2 are formed in a part of design image 1 with a gap between them, and the gaps between circuit patterns Pt1 and Pt2 may have the same gap width at the positions indicated by the three arrows A1 to A3. Note that the positions indicated by arrows A1 and A3 correspond to the positions of edges in the X direction, respectively. In this case, the correction value that minimizes the error differs between the central gap width at the position indicated by arrow A2 and the other gap widths at the positions indicated by arrows A1 and A3. One possible reason for the difference in correction values is that the presence of Y-direction edges around the X-direction edges may influence the other gap widths. Therefore, the geometric pattern information needs to include two or more pieces of information: information about size, such as gap width and pattern width, and information that assumes the existence of edges, such as the distance to the edge or the pixel value or angle of the corner. This is also true in the case of the gap width in the X direction (not shown), where the X and Y directions are swapped. Therefore, it is preferable to obtain geometric pattern information containing two or more pieces of information within the same region of the design image.
[0103] The linear layer 32a of the DNN model Md3 linearly combines the outputs of the network 31 and outputs a scalar error value for each correction value within the range of correction values. For example, the 2R error values output include R error values in the X direction and R error values in the Y direction (where R is the number of each correction value within the range of correction values). The R error values in the X direction constitute the error distribution in the X direction. Similarly, the R error values in the Y direction constitute the error distribution in the Y direction.
[0104] One method for creating the model is to generate multiple reference images from corrected images obtained by correcting the design image with multiple correction values for each pixel or sub-region, and then calculate an Nth-degree function model Md1 between the corrected image and the geometric pattern information based on the error with the captured image. In the method for calculating the Nth-degree function model, the aforementioned equation (1) may also be used.
[0105] Alternatively, as a method for creating the model, a DNN model Md2 may be trained using patch images of the design image as input, with the correction values for each pixel or sub-region that minimize the error among the multiple generated reference images and the captured image as training data. Furthermore, as a method for creating the model, a DNN model Md2 may be trained using the design image as input data and correction value maps in the X and Y directions as output data.
[0106] Alternatively, as a method for creating the model, a DNN model Md3 may be trained using the error distribution between multiple generated reference images and captured images as training data, and the patch images of the design images as input. However, the model may also be trained using the design images as input data and the error distribution in the X and Y directions as output data.
[0107] The correction value map calculation unit 103 calculates a correction value map based on the output of the model by inputting geometric pattern information into the model.
[0108] The other configurations are the same as in the second embodiment.
[0109] With the above configuration, the model creation unit 109 of the correction value map calculation unit 103 creates a model for calculating the correction value map using the captured image of the object to be inspected and the training reference image from the reference images. Therefore, in addition to the effects of the second embodiment, it is possible to create a model for creating the correction value map according to the object to be inspected.
[0110] Furthermore, the model may output a correction value corresponding to the error between the captured image and the training reference image, based on the geometric pattern information. In this case, a correction value map can be calculated using a model that takes geometric pattern information as input and outputs a correction value.
[0111] Furthermore, the geometric pattern information may be patch images extracted from the design image that serves as the basis for the training reference image. The model may output the error between the captured image and the training reference image, or a correction value corresponding to the error, based on the patch image. In this case, a correction value map can be calculated using a model that takes the patch image as geometric pattern information as input and outputs the error. Alternatively, a correction value map can be calculated using a model that takes the patch image as input and outputs a correction value corresponding to the error.
[0112] The correction value map calculation unit 103 may calculate a correction value map based on the output of the model by inputting geometric pattern information into the model. In this case, the correction value map can be calculated based on the geometric pattern information using the created model.
[0113] (Fourth embodiment) Figure 16 is a block diagram illustrating the hardware configuration of a computer 1000 implemented as an inspection device according to the fourth embodiment. The computer 1000, as hardware of the inspection device 100, includes a CPU (Central Processing Unit) 1010, RAM (Random Access Memory) 1020, program memory 1030, auxiliary storage device 1040, and input / output interface 1050. The CPU 1010 communicates with the RAM 1020, program memory 1030, auxiliary storage device 1040, and input / output interface 1050 via a bus 1060.
[0114] CPU 1010 is an example of a general-purpose processor. RAM 1020 is used by CPU 1010 as working memory. RAM 1020 includes volatile memory such as SDRAM (Synchronous Dynamic Random Access Memory). Program memory 1030 stores various programs, including test programs. For example, ROM (Read-Only Memory), part of auxiliary storage device 1040, or a combination thereof may be used as program memory 1030. Auxiliary storage device 1040 stores data non-temporarily. Auxiliary storage device 1040 includes non-volatile memory such as HDD or SSD.
[0115] The input / output interface 1050 is an interface for connecting to other devices. For example, the input / output interface 1050 is used to connect to input devices, imaging devices, and display devices.
[0116] Each program stored in program memory 1030 includes a computer executable instruction. When a program (computer executable instruction) is executed by the CPU 1010, it causes the CPU 1010 to perform a predetermined process. For example, when a test program is executed by the CPU 1010, it causes the CPU 1010 to perform a series of processes described with respect to the parts in Figures 1, 5, 6, 8, 10, and 11.
[0117] The program may be provided to computer 1000 in a state where it is stored on a non-temporary computer-readable storage medium. In this case, for example, computer 1000 further includes a drive (not shown) for reading data from the storage medium and retrieving the program from the storage medium. Examples of storage media include magnetic disks, optical disks (CD-ROM, CD-R, DVD-ROM, DVD-R, etc.), magneto-optical disks (MO, etc.), and semiconductor memory. Alternatively, the program may be stored on a server on a communication network, and computer 1000 may download the program from the server using the input / output interface 1050.
[0118] The processing described in each embodiment is not limited to a form in which a general-purpose hardware processor such as the CPU 1010 performs the processing by program and model. For example, the processing described in each embodiment may be performed by a dedicated hardware processor such as an ASIC (Application Specific Integrated Circuit). The term "processing circuit (processing unit)" includes at least one general-purpose hardware processor, at least one dedicated hardware processor, or a combination of at least one general-purpose hardware processor and at least one dedicated hardware processor. In the example shown in Figure 16, the CPU 1010, RAM 1020, and program memory 1030 correspond to the processing circuit.
[0119] According to at least one embodiment described above, manual adjustment of the correction amount can be eliminated.
[0120] While several embodiments of the present invention have been described, these embodiments are presented as examples only and are not intended to limit the scope of the invention. These novel embodiments can be carried out in a variety of other forms, and various omissions, substitutions, and modifications can be made without departing from the spirit of the invention. These embodiments and their variations are included in the scope and spirit of the invention, as well as in the claims of the invention and its equivalents. [Explanation of Symbols]
[0121] 100...Inspection device, 101...Design image acquisition unit, 102...Geometric pattern calculation unit, 102a...Corner detection unit, 102b...Pattern detection unit, 103...Correction value map calculation unit, 103a...Corner correction calculation unit, 103b...Width correction calculation unit, 104...Design image correction unit, 105...Storage unit, 106...Reference image generation unit, 107...Image acquisition unit, 108...Error calculation unit, 109...Model creation unit, 1000...Computer, 1030...Program memory, 1040...Auxiliary storage device, 1050...Input / output interface, 1060...Bus.
Claims
1. A design image acquisition unit that acquires a design image generated from design data including the geometric pattern to be inspected, A geometric pattern calculation unit calculates geometric pattern information relating to the geometric pattern based on the design image, A correction value map calculation unit calculates a correction value map of the design image based on the graphic pattern information, A design image correction unit generates a corrected image by correcting the design image based on the correction value map, A reference image generation unit that generates a reference image based on the corrected image, An inspection device equipped with the following features.
2. Storage unit for storing the corrected image The inspection apparatus according to claim 1, further comprising the following:
3. The graphic pattern calculation unit includes a corner detection unit that detects the corners of the graphic pattern and calculates the graphic pattern information which includes one or more pieces of information, either the pixel value or the angle of the corner. The inspection apparatus according to claim 1, wherein the correction value map calculation unit comprises a corner correction calculation unit that calculates the correction value map including the correction value of the corner based on one or more pieces of information, either the pixel value of the corner or the angle of the corner.
4. The graphic pattern calculation unit includes a pattern detection unit that calculates the graphic pattern information which includes one or more pieces of information such as the pattern width within the graphic pattern, the gap width between patterns, and edge information around the pattern. The inspection apparatus according to claim 1, wherein the correction value map calculation unit includes a width correction calculation unit that calculates a correction value map relating to the expansion or contraction of the pattern width based on one or more pieces of information, which include the pattern width, the gap width, and the edge information.
5. The aforementioned graphic pattern calculation unit, A corner detection unit detects the corners of the graphic pattern and calculates graphic pattern information that includes one or more pieces of information, either the pixel value or the angle of the corner. A pattern detection unit calculates the graphic pattern information which includes one or more pieces of information such as the pattern width within the graphic pattern, the gap width between patterns, and edge information around the pattern. Equipped with, The correction value map calculation unit, An angle correction calculation unit calculates a correction value map including a correction value for the corner based on one or more pieces of information, either the pixel value or the angle of the corner, A width correction calculation unit calculates a correction value map for scaling the pattern width based on one or more pieces of information, including the pattern width, the gap width, and the edge information. An inspection apparatus according to claim 1, comprising:
6. An image acquisition unit that acquires images of the subject to be inspected, An error calculation unit that calculates the error between the aforementioned reference image and the aforementioned captured image, An inspection apparatus according to claim 1, comprising:
7. The correction value map calculation unit includes a model creation unit that creates a model for calculating the correction value map using the captured image of the object to be inspected and the training reference image from the reference images. An inspection apparatus according to claim 1, comprising:
8. The inspection apparatus according to claim 7, wherein the model outputs a correction value corresponding to the error between the captured image and the learning reference image based on the graphic pattern information.
9. The aforementioned geometric pattern information includes patch images extracted from the design image which is the source of the learning reference image, The inspection apparatus according to claim 7, wherein the model outputs an error between the captured image and the learning reference image or a correction value corresponding to the error, based on graphic pattern information including the patch image.
10. The inspection apparatus according to any one of claims 7 to 9, wherein the correction value map calculation unit calculates the correction value map based on the output of the model by inputting the graphic pattern information into the model.
11. Obtaining a design image generated from design data containing the geometric pattern to be inspected, Based on the aforementioned design image, the geometric pattern information relating to the geometric pattern is calculated, Based on the aforementioned geometric pattern information, a correction value map of the design image is calculated, Based on the correction value map, a corrected image is generated by correcting the design image. A reference image is generated based on the aforementioned corrected image, A testing method equipped with [a specific feature / feature].
12. A design image acquisition unit that acquires a design image generated from design data including the geometric pattern to be inspected, A geometric pattern calculation unit calculates geometric pattern information relating to the geometric pattern based on the design image, A correction value map calculation unit calculates a correction value map of the design image based on the graphic pattern information, A design image correction unit generates a corrected image by correcting the design image based on the correction value map, A reference image generation unit that generates a reference image based on the corrected image, A program to make a computer realize this.
Citation Information
Patent Citations
Mounting structure of liquid crystal display panel
JP1980064276A