Pattern edge detection method, pattern edge detection device, and recording medium recording a program for causing a computer to execute pattern edge detection

By building a decision tree model on the wafer or mask and using feature vectors and brightness curves to generate imaginary edges, the error and time-consuming problems of pattern edge detection in the existing technology are solved, and efficient and accurate pattern edge detection is achieved.

CN114945801BActive Publication Date: 2025-09-12TASMIT INC
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202080092004.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2020-12-04
Filing Date
2020-12-10
Publication Date
2025-09-12
Estimated Expiration
2040-12-10

AI Technical Summary

Technical Problem

Existing technologies have problems with incorrect detection or misdetection when detecting the edges of patterns formed on wafers or masks, and machine learning methods require a large amount of training data, which results in excessively long training times.

Method used

Machine learning is used to build a decision tree model. By generating feature vectors and using training data for edge detection, the use of design data is avoided. The brightness curve and exploration line are combined to generate hypothetical edges.

Benefits of technology

It achieves high-precision detection of pattern edges without relying on design data, shortens model building time and improves detection efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114945801B_ABST
    Figure CN114945801B_ABST
Patent Text Reader

Abstract

The present invention relates to a method for detecting the edges (contours) of patterns formed on workpieces such as wafers and masks used in semiconductor manufacturing from images generated by a scanning electron microscope. In this pattern edge detection method, a target image of a target pattern formed on the workpiece is generated, and feature vectors representing multiple feature quantities of each pixel in the target image are generated. The feature vectors are input into a model constructed through machine learning. The model outputs a determination result indicating whether a pixel with the feature vector is an edge pixel or a non-edge pixel. Multiple pixels with the feature vector that have been determined to be edge pixels are connected by lines to generate a hypothetical edge.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a method and apparatus for detecting the edges (contours) of patterns formed on workpieces such as wafers and masks used in semiconductor manufacturing from images generated by a scanning electron microscope. The present invention also relates to a program for causing a computer to execute such pattern edge detection.

[0002] In addition, the present invention relates to a method and apparatus for producing an edge detection model through machine learning. Background Art

[0003] Traditionally, the edges (contours) of patterns formed on workpieces such as wafers are detected as follows. First, a scanning electron microscope is used to generate an image of the pattern on the workpiece. Next, a CAD pattern is generated using the pattern's design data (also known as CAD data), and this CAD pattern is superimposed on the imaged pattern. The CAD pattern is a hypothetical pattern created based on the pattern's design information (position, length, size, etc.) contained in the design data.

[0004] Figure 25 Schematic diagram showing a CAD pattern 505 superimposed on a pattern 501 on an image 500. Figure 25 As shown, a computer generates a plurality of search lines 507 extending in a normal direction relative to the edge of the CAD pattern 505 , and creates a brightness curve of the image 500 along these search lines 507 . Figure 25 In order to simplify the drawing, only a portion of the multiple exploration lines 507 are depicted.

[0005] Figure 26 To indicate along Figure 25 A graph of the brightness curve of the exploration line is shown. Figure 26 The vertical axis represents brightness values, and the horizontal axis represents positions on search line 507. The computer detects edge points 510 on the brightness curve whose brightness values ​​are equal to the threshold. The computer repeats the same process to determine multiple edge points along the brightness curves of all search lines 507. The lines connecting these multiple edge points are determined to be the edges of pattern 501 on image 500.

[0006] However, in Figures 27 to 29 In the example shown in FIG. 5 , it is sometimes impossible to correctly determine (detect) the pattern edge on the image 500. Figure 27 In the example shown, a portion of the edge of the pattern 501 is missing, and the edge of the pattern 501 does not exist on the search line 507 perpendicular to the CAD pattern 505. Figure 28 In the example shown, the edge of the CAD pattern 505 is far away from the edge of the pattern 501 on the image, and the edge of the pattern 501 does not exist on the search line 507. Figure 29In the example shown, the edge of the pattern 510 that does not exist in the CAD pattern 505 cannot be detected by the conventional method using the search line 507 .

[0007] Figures 27 to 29 The examples of pattern defects are shown. Detecting the edges of such defective patterns is relatively important. However, actual patterns sometimes deviate from the design data, and conventional methods using the design data may not be able to accurately detect the edges of defective patterns.

[0008] Meanwhile, the industry is developing technology that uses models created through machine learning to detect the edges of patterns formed on workpieces such as wafers. This technology uses an edge detection model (learned model) to determine whether each pixel in an image where the pattern appears constitutes a pixel that forms the pattern's edge.

[0009] The edge detection model is created using pre-prepared training data through machine learning (e.g., deep learning, decision tree learning, etc.). The training data includes a pattern image generated by a scanning electron microscope and the correct answer data for each pixel that constitutes the pattern image. The correct answer data is information that determines whether each pixel constitutes an edge of the pattern or does not constitute an edge. By performing machine learning using this training data, the parameters (weight coefficients, etc.) that constitute the edge detection model are optimized.

[0010] However, the patterns used for training data have undulating edges, and the boundaries between edges and non-edge areas in the image are unclear. Edge detection models created using this training data can fail to detect edges or misdetect edges. Creating a highly accurate edge detection model requires a large amount of training data for machine learning, which results in a very long machine learning process.

[0011] Prior art literature

[0012] Patent Literature

[0013] Patent Document 1: Japanese Patent Application Laid-Open No. 2003-178314

[0014] Patent Document 2: Japanese Patent Application Laid-Open No. 2013-98267

[0015] Patent Document 3: Japanese Patent Application Laid-Open No. 2020-140518 Summary of the Invention

[0016] Problems to be solved by the invention

[0017] The present invention provides a pattern edge detection method and a pattern edge detection device capable of detecting the edge (contour line) of a pattern on an image without using design data of the pattern.

[0018] In addition, the present invention provides a method and apparatus that can produce a high-precision edge detection model without spending a long time on machine learning.

[0019] Technical means to solve the problem

[0020] In one form, a pattern edge detection method is provided, namely, generating an object image of a target pattern formed on a workpiece, generating a feature vector representing multiple feature quantities of each pixel of the object image, inputting the feature vector into a model constructed by machine learning, outputting a determination result from the model indicating whether the pixel having the feature vector is an edge pixel or a non-edge pixel, and connecting multiple pixels having the feature vector for which the determination result of the pixel representing the edge has been obtained with a line to generate an imaginary edge.

[0021] In one form, the model is a decision tree.

[0022] In one form, the pattern edge detection method further includes the following steps: selecting multiple training patterns from design data, generating multiple training images of multiple actual patterns respectively produced according to the multiple training patterns, detecting the edges of the multiple actual patterns on the multiple training images, classifying the multiple reference pixels constituting the multiple training images into multiple first reference pixels constituting edges and multiple second reference pixels not constituting edges, generating multiple first feature vectors of the multiple first reference pixels and multiple second feature vectors of the multiple second reference pixels, and constructing the model through machine learning using training data including the multiple first feature vectors and the multiple second feature vectors.

[0023] In one embodiment, the plurality of training patterns are a plurality of patterns having at least an edge extending in a first direction, an edge extending in a second direction perpendicular to the first direction, a corner edge, and an end edge.

[0024] In one form, the plurality of actual patterns are patterns formed on the workpiece.

[0025] In one form, the process of selecting the multiple training patterns from the design data is as follows: a design drawing containing multiple patterns drawn according to the design data is displayed on a display screen, and the multiple training patterns selected from the multiple patterns contained in the design drawing or the areas where the multiple training patterns are located are displayed on the display screen in a visually emphasized form.

[0026] In one form, the pattern edge detection method further includes the following steps: generating multiple brightness curves of the object image along multiple exploration lines extending in the normal direction relative to the imaginary edge, determining multiple edge points based on the multiple brightness curves, and connecting the multiple edge points with lines to generate an updated edge.

[0027] In one embodiment, the pattern edge detection method further includes the steps of generating a CAD pattern corresponding to the target pattern using design data, and measuring a distance from an edge of the CAD pattern to the updated edge.

[0028] In one form, a pattern edge detection device is provided, comprising: an image generating device that generates an object image of a target pattern formed on a workpiece; and a computing system connected to the image generating device, wherein the computing system generates a feature vector representing multiple feature quantities of each pixel of the object image, inputs the feature vector into a model constructed by machine learning, outputs a determination result indicating whether a pixel having the feature vector is an edge pixel or a non-edge pixel from the model, and connects multiple pixels having the feature vector for which the determination result indicating an edge pixel has been obtained with a line to generate a virtual edge.

[0029] In one form, the model is a decision tree.

[0030] In one form, the operation system is configured to select multiple training patterns from design data, generate multiple training images of multiple actual patterns respectively produced according to the multiple training patterns, detect edges of the multiple actual patterns on the multiple training images, classify multiple reference pixels constituting the multiple training images into multiple first reference pixels constituting edges and multiple second reference pixels not constituting edges, generate multiple first feature vectors of the multiple first reference pixels and multiple second feature vectors of the multiple second reference pixels, and construct the model through machine learning using training data including the multiple first feature vectors and the multiple second feature vectors.

[0031] In one embodiment, the plurality of training patterns are a plurality of patterns having at least an edge extending in a first direction, an edge extending in a second direction perpendicular to the first direction, a corner edge, and an end edge.

[0032] In one form, the plurality of actual patterns are patterns formed on the workpiece.

[0033] In one form, the computing system has a display screen, and the computing system is configured to display a design drawing containing multiple patterns drawn according to the design data on the display screen, and to display the multiple training patterns selected from the multiple patterns contained in the design drawing or the areas where the multiple training patterns are located on the display screen in a visually emphasized form.

[0034] In one form, the computing system is configured to generate multiple brightness curves of the object image along multiple exploration lines extending in a normal direction relative to the imaginary edge, determine multiple edge points based on the multiple brightness curves, and connect the multiple edge points with lines to generate an updated edge.

[0035] In one embodiment, the calculation system is configured to generate a CAD pattern corresponding to the target pattern using design data, and to measure a distance from an edge of the CAD pattern to the updated edge.

[0036] In one form, a computer-readable recording medium is provided, which records a program for causing a computer to execute the following steps: issuing instructions to a scanning electron microscope to generate an object image of a target pattern formed on a workpiece; generating a feature vector representing multiple feature quantities of each pixel of the object image; inputting the feature vector into a model constructed by machine learning; outputting a determination result from the model indicating whether a pixel having the feature vector is an edge pixel or a non-edge pixel; and connecting multiple pixels having the feature vector for which a determination result indicating a pixel representing an edge has been obtained with a line to generate an imaginary edge.

[0037] In one form, the model is a decision tree.

[0038] In one form, the program is configured to cause the computer to perform the following steps: selecting a plurality of training patterns from design data; issuing instructions to the scanning electron microscope to generate a plurality of training images of a plurality of actual patterns respectively produced according to the plurality of training patterns; detecting edges of the plurality of actual patterns on the plurality of training images; classifying a plurality of reference pixels constituting the plurality of training images into a plurality of first reference pixels constituting edges and a plurality of second reference pixels not constituting edges; generating a plurality of first eigenvectors of the plurality of first reference pixels and a plurality of second eigenvectors of the plurality of second reference pixels; and constructing the model through machine learning using training data including the plurality of first eigenvectors and the plurality of second eigenvectors.

[0039] In one embodiment, the plurality of training patterns are a plurality of patterns having at least an edge extending in a first direction, an edge extending in a second direction perpendicular to the first direction, a corner edge, and an end edge.

[0040] In one form, the plurality of actual patterns are patterns formed on the workpiece.

[0041] In one form, the step of selecting the multiple training patterns from the design data is as follows: displaying a design diagram containing multiple patterns drawn according to the design data on a display screen; and displaying the multiple training patterns selected from the multiple patterns contained in the design diagram or the areas where the multiple training patterns are located on the display screen in a visually emphasized form.

[0042] In one form, the program is configured to cause the computer to perform the following steps: generating multiple brightness curves of the object image along multiple exploration lines extending in a normal direction relative to the imaginary edge; determining multiple edge points based on the multiple brightness curves; and connecting the multiple edge points with lines to generate an updated edge.

[0043] In one embodiment, the program is configured to further cause the computer to execute the following steps: generating a CAD pattern corresponding to the target pattern using design data; and measuring a distance from an edge of the CAD pattern to the updated edge.

[0044] In one form, a method is provided for producing an edge detection model for detecting the edge of a pattern on an image, wherein a training image of a workpiece having a pattern is generated using a scanning electron microscope, the edge of the pattern on the training image is detected, feature vectors of pixels constituting the training image are calculated, a target area within the training image is divided into an edge area, an area near the edge, and a non-edge area, training data is produced including multiple feature vectors of multiple first pixels within the edge area, multiple feature vectors of multiple second pixels within the area near the edge, and multiple feature vectors of multiple third pixels within the non-edge area, and the edge detection model is produced using the training data through machine learning.

[0045] In one embodiment, when the number of the plurality of first pixels is A and the total number of the plurality of second pixels and the plurality of third pixels is B, a value obtained by dividing the number A by the number B (A / B) is a predetermined value.

[0046] In one embodiment, a value obtained by dividing the amount A by the amount B (A / B) is in the range of 0.6 to 1.5.

[0047] In one embodiment, the non-edge area is spaced apart from the edge area by a predetermined number of pixels, and the near-edge area is located between the edge area and the non-edge area.

[0048] In one form, the process of dividing the target area in the training image into an edge area, a region near the edge, and a non-edge area is to divide the target area in the training image into an edge area, an excluded area, a region near the edge, and a non-edge area, wherein the excluded area is adjacent to the edge area and is located between the edge area and the region near the edge, and the training data does not include feature vectors of pixels in the excluded area.

[0049] In one form, the target area includes a first area, a second area, and a third area. The first area includes a first edge, the second area includes a second edge perpendicular to the first edge, and the third area includes a corner edge and an end edge.

[0050] In one embodiment, the number of pixels in the first area, the number of pixels in the second area, and the number of pixels in the third area are in a predetermined ratio.

[0051] In one form, a model generation device is provided for producing an edge detection model for detecting the edge of a pattern on an image, the model generation device comprising: a storage device storing a program for producing the edge detection model; and a computing device performing operations according to commands contained in the program, the model generation device being configured to obtain a training image of a workpiece on which a pattern is formed from a scanning electron microscope, detect the edge of the pattern on the training image, calculate feature vectors of pixels constituting the training image, divide a target area within the training image into an edge area, an area near the edge, and a non-edge area, produce training data comprising multiple feature vectors of multiple first pixels in the edge area, multiple feature vectors of multiple second pixels in the area near the edge, and multiple feature vectors of multiple third pixels in the non-edge area, and use the training data to produce an edge detection model through machine learning.

[0052] In one embodiment, when the number of the plurality of first pixels is A and the total number of the plurality of second pixels and the plurality of third pixels is B, a value obtained by dividing the number A by the number B (A / B) is a predetermined value.

[0053] In one embodiment, a value obtained by dividing the amount A by the amount B (A / B) is in the range of 0.6 to 1.5.

[0054] In one embodiment, the non-edge area is spaced apart from the edge area by a predetermined number of pixels, and the near-edge area is located between the edge area and the non-edge area.

[0055] In one form, the model generation device is configured to divide the target area in the training image into an edge area, an exclusion area, an area near the edge, and a non-edge area, wherein the exclusion area is adjacent to the edge area and is located between the edge area and the area near the edge, and the training data does not include feature vectors of pixels in the exclusion area.

[0056] In one form, the target area includes a first area, a second area, and a third area. The first area includes a first edge, the second area includes a second edge perpendicular to the first edge, and the third area includes a corner edge and an end edge.

[0057] In one embodiment, the number of pixels in the first area, the number of pixels in the second area, and the number of pixels in the third area are in a predetermined ratio.

[0058] In one form, a computer-readable recording medium is provided, which records a program for causing a computer to perform the following steps: obtaining a training image of a workpiece having a pattern formed thereon from a scanning electron microscope; detecting the edge of the pattern on the training image; calculating feature vectors of pixels constituting the training image; dividing a target area within the training image into an edge area, an area near the edge, and a non-edge area; creating training data comprising multiple feature vectors of multiple first pixels within the edge area, multiple feature vectors of multiple second pixels within the area near the edge, and multiple feature vectors of multiple third pixels within the non-edge area; and using the training data to create an edge detection model through machine learning.

[0059] Effects of the Invention

[0060] According to the present invention, a model created through machine learning is used instead of pattern design data to detect edges. Specifically, a hypothetical edge is generated based on the judgment results output by the model. This hypothetical edge is expected to have a shape that is very similar to the edge of the pattern appearing in the image.

[0061] According to the present invention, training data containing pixels within edge regions, pixels within regions near edges, and pixels within non-edge regions is used for machine learning. In particular, pixels within regions near edges, which are difficult to identify, are included in the training data. Therefore, an edge detection model created through machine learning can accurately determine whether a given pixel is an edge.

[0062] Furthermore, according to the present invention, pixels within the excluded region are not used for machine learning. These pixels may be edge pixels or non-edge pixels. In other words, the pixels within the excluded region are considered uncertain pixels. By excluding the feature vectors of these uncertain pixels from the training data, machine learning of the edge detection model can be completed earlier. BRIEF DESCRIPTION OF THE DRAWINGS

[0063] Figure 1 Schematic diagram showing one embodiment of a pattern edge detection device.

[0064] Figure 2 A schematic diagram showing an object image.

[0065] Figure 3 A schematic diagram showing an imaginary edge.

[0066] Figure 4 A schematic diagram showing one embodiment of a model composed of a decision tree.

[0067] Figure 5 To represent the input of a feature vector into Figure 4 Graph showing an example of the judgment results when multiple decision trees are shown.

[0068] Figure 6 To represent the input of another feature vector into Figure 4 FIG. 1 is another example of the determination results when multiple decision trees are shown.

[0069] Figure 7 A diagram showing multiple search lines extending in the normal direction relative to the imaginary edge.

[0070] Figure 8 To indicate along Figure 7 A diagram showing an example of a brightness curve of one of the search lines shown.

[0071] Figure 9 This is a schematic diagram showing an example of a training pattern used for creating training data.

[0072] Figure 10 This is a schematic diagram showing an example of a design diagram displayed on the display screen.

[0073] Figure 11 This is a diagram showing an embodiment in which a frame indicating an area where a selected training pattern is located is displayed on a display screen.

[0074] Figure 12 This figure shows an embodiment in which a selected training pattern is displayed in a form that is visually different from other patterns.

[0075] Figure 13Schematic diagram showing training data including a first feature vector of a first reference pixel constituting an edge and a second feature vector of a second reference pixel not constituting an edge.

[0076] Figure 14 This is a part of a flowchart showing the operation of the pattern edge detection device.

[0077] Figure 15 This is the remaining part of the flowchart showing the operation of the pattern edge detection device.

[0078] Figure 16 This is a diagram illustrating an embodiment of measuring the distance from the edge of a CAD pattern to the updated edge.

[0079] Figure 17 Schematic diagram showing one embodiment of a pattern edge detection device.

[0080] Figure 18 This is a diagram showing an example of an image of a workpiece on which a pattern is formed.

[0081] Figure 19 is a graph representing the detected edges.

[0082] Figure 20 For the general Figure 19 The detected edges shown are superimposed on Figure 18 The resulting graph is shown on the image.

[0083] Figure 21 A diagram illustrating an embodiment of calculating a feature value of a pixel.

[0084] Figure 22 This figure explains the operation of dividing a target area in an image into an edge area, an area near an edge, and a non-edge area.

[0085] Figure 23 A diagram illustrating another embodiment of creating an edge detection model.

[0086] Figure 24 A diagram showing an example of a target area including a plurality of areas set within an image.

[0087] Figure 25 Schematic diagram showing a CAD pattern superimposed on a pattern on an image.

[0088] Figure 26 To indicate along Figure 25 A graph of the brightness curve of the exploration line is shown.

[0089] Figure 27 A diagram showing an example of a defective pattern.

[0090] Figure 28A diagram showing another example of a defective pattern.

[0091] Figure 29 This is a diagram showing another example of a defective pattern. DETAILED DESCRIPTION

[0092] Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings.

[0093] Figure 1 FIG. 1 is a schematic diagram showing an embodiment of a pattern edge detection device. Figure 1 As shown, the pattern edge detection device includes a scanning electron microscope 1 and a computing system 3. The scanning electron microscope 1 is an example of an image generation device that generates an image of a workpiece. Examples of the workpiece include wafers and masks used in semiconductor manufacturing. While the embodiments described below use wafers as the workpiece, the present invention is not limited to the following embodiments. The pattern is a wiring pattern of an electronic device formed on the workpiece.

[0094] The scanning electron microscope 1 is connected to a computing system 3, and the operation of the scanning electron microscope 1 is controlled by the computing system 3. The computing system 3 includes a storage device 6 that stores a database 5 and programs, a processing device 7 that executes operations according to the commands contained in the programs, and a display screen 10 that displays images and a GUI (graphical user interface). The storage device 6 includes a main storage device such as RAM and auxiliary storage devices such as a hard disk drive (HDD) and a solid-state drive (SSD). Examples of the processing device 7 include a CPU (central processing unit) and a GPU (graphics processing unit). However, the specific configuration of the computing system 3 is not limited to these examples.

[0095] The computing system 3 further includes an input device 12 including a mouse 12a and a keyboard 12b. A user can use the mouse 12a and / or the keyboard 12b to operate the GUI displayed on the display screen 10. The input device 12 including the mouse 12a and the keyboard 12b is merely an example, and the present invention is not limited to the input device 12 of this embodiment.

[0096] The computing system 3 comprises at least one computer. For example, the computing system 3 may be an edge server connected to the scanning electron microscope 1 via a communication line, or a cloud server connected to the scanning electron microscope 1 via a communication network such as the Internet or a local area network. The computing system 3 may also be a combination of multiple servers. For example, the computing system 3 may be a combination of an edge server and a cloud server connected to each other via a communication network such as the Internet or a local area network, or a combination of multiple servers not connected by a communication network.

[0097] The scanning electron microscope 1 includes an electron gun 15 that emits an electron beam consisting of primary electrons (charged particles), a focusing lens 16 that converges the electron beam emitted from the electron gun 15, an X deflector 17 that deflects the electron beam in the X direction, a Y deflector 18 that deflects the electron beam in the Y direction, and an objective lens 20 that focuses the electron beam on a wafer W, an example of a workpiece.

[0098] The condenser lens 16 and the objective lens 20 are connected to a lens control device 21, and their movements are controlled by the lens control device 21. The lens control device 21 is connected to the computing system 3. The X deflector 17 and the Y deflector 18 are connected to a deflection control device 22, and their deflection movements are controlled by the deflection control device 22. The deflection control device 22 is also connected to the computing system 3. The secondary electron detector 25 and the reflected electron detector 26 are connected to an image acquisition device 28. The image acquisition device 28 is configured to convert the output signals of the secondary electron detector 25 and the reflected electron detector 26 into an image. The image acquisition device 28 is also connected to the computing system 3.

[0099] The mounting table 31 disposed in the chamber 30 is connected to a mounting table controller 32, and the position of the mounting table 31 is controlled by the mounting table controller 32. The mounting table controller 32 is connected to the computing system 3. A transport device 34 for placing wafers W on the mounting table 31 in the chamber 30 is also connected to the computing system 3.

[0100] The electron beam emitted from the electron gun 15 is converged by the condenser lens 16, deflected by the X deflector 17 and the Y deflector 18, and converged by the objective lens 20 before being irradiated onto the surface of the wafer W. When the primary electrons of the electron beam irradiate the wafer W, secondary electrons and reflected electrons are emitted from the wafer W. The secondary electrons are detected by the secondary electron detector 25, and the reflected electrons are detected by the reflected electron detector 26. The signals of the detected secondary electrons and the reflected electrons are input to the image acquisition device 28 and converted into an image. The image is then transmitted to the computing system 3.

[0101] The design data for the pattern to be formed on wafer W is pre-stored in storage device 6. The pattern on wafer W is produced based on the design data. The pattern design data includes design information such as the coordinates of the pattern vertices, the position, shape, and size of the pattern, and the number of the layer to which the pattern belongs. A database 5 is constructed in storage device 6. The pattern design data is pre-stored in database 5. The computing system 3 can read the design data from database 5 stored in storage device 6. Design data is also called CAD data. CAD is an abbreviation for computer-aided design.

[0102] Next, a method for detecting edges (contours) of patterns on an image will be described. First, the scanning electron microscope 1 generates multiple images of multiple patterns formed on the wafer W. The computing system 3 acquires one of the multiple images, namely a target image, from the scanning electron microscope 1 . Figure 2 Schematic diagram showing a target image 50. A target pattern 51 whose edge is to be detected appears on the target image 50. The target pattern 51 is a pattern formed on a wafer W.

[0103] The computing system 3 generates a feature vector representing multiple feature quantities of each pixel of the target image 50. A feature vector is a multidimensional vector containing multiple feature quantities of each pixel. A feature quantity is a numerical value representing the characteristics of a pixel. In this embodiment, the multiple feature quantities of each pixel are the difference between the brightness value of the pixel and the brightness values ​​of other pixels. In one example, the brightness value is a discrete numerical value from 0 to 255 that follows the grayscale. In this embodiment, the other pixels are adjacent pixels. In one embodiment, the other pixels may also be non-adjacent pixels.

[0104] The computing system 3 applies differential filtering to the target image 50, thereby generating a feature vector containing multiple feature quantities. Specifically, the computing system 3 calculates multiple differences between the brightness value of a pixel and the brightness values ​​of multiple pixels surrounding it. These calculated differences constitute the multiple feature quantities contained in a single feature vector.

[0105] For example, in Figure 2 In the case where the brightness value of the pixel P1 shown is 100 and the brightness values ​​of the pixels surrounding the pixel P1 are 200, 150, 100, and 50, the calculated differences are -100, -50, 0, and 50. Therefore, the feature vector of the pixel P1 in this example is expressed as (-100, -50, 0, 50). On the other hand, Figure 2 In the example, when the brightness value of pixel P2 is 10 and the brightness values ​​of the surrounding pixels are 20, 15, 10, and 10, the calculated differences are -10, -5, 0, and 0. Therefore, the feature vector of pixel P2 in this example is expressed as (-10, -5, 0, 0).

[0106] In this embodiment, the number of feature quantities included in the feature vector is 4, but the present invention is not limited to this embodiment. The feature vector may include a smaller number of feature quantities or a larger number of feature quantities.

[0107] The operation system 3 inputs the multiple feature quantities constituting the feature vector into the model constructed by machine learning, and outputs the judgment result of the pixel representing the edge or the pixel not constituting the edge from the model. The model is a learned model produced by machine learning using training data. The training data includes the feature vectors of each of the multiple pixels and the correct answer data of these feature vectors. The correct answer data is information that determines whether the pixel with a certain feature vector is a pixel constituting the edge of the pattern or a pixel not constituting the edge. The feature vectors of the multiple pixels contained in the training data are respectively associated (correlated) with the correct answer data.

[0108] A model created through machine learning using such training data can determine whether an unknown pixel is an edge pixel or a non-edge pixel based on its feature vector. That is, when the feature vector of an unknown pixel is input to the model, the model outputs a judgment result indicating whether it is an edge pixel or a non-edge pixel.

[0109] The calculation system 3 selects a plurality of pixels having feature vectors for which the determination result of the pixel indicating an edge is obtained, and connects the selected plurality of pixels with a line to generate a virtual edge. Figure 3 The operation system 3 connects the plurality of pixels PX having the feature vectors for which the judgment result of the pixel representing the edge is obtained with a line, thereby forming a virtual edge 55. It is expected that the virtual edge 55 has a similarity to the target pattern 51 on the wafer W (refer to FIG. Figure 2 ) with similar edges.

[0110] In this embodiment, a decision tree is used as a model. The decision tree is a model (learned model) constructed using the random forest algorithm, which is an example of a machine learning algorithm.

[0111] Figure 4 FIG is a schematic diagram showing an embodiment of a model composed of a decision tree. Figure 4 As shown, the model 60 has a plurality of decision trees 60A, 60B, and 60C. The feature vector of each pixel is input to each of the decision trees 60A, 60B, and 60C. The plurality of decision trees 60A, 60B, and 60C determine whether a pixel having a feature vector is an edge pixel or a non-edge pixel according to the algorithm of each decision tree. Figure 4 In the example shown, the model 60 is composed of three decision trees 60A, 60B, and 60C, but the number of decision trees is not particularly limited. In one embodiment, the model 60 may include only one decision tree.

[0112] Figure 5 To represent the input of the feature vector (-100, -50, 0, 50) into Figure 4The figure shows an example of the judgment results when multiple decision trees 60A, 60B, and 60C are shown. The feature vector (-100, -50, 0, 50) is input to the three decision trees 60A, 60B, and 60C, respectively. The first decision tree 60A and the second decision tree 60B judge that the pixel with the feature vector (-100, -50, 0, 50) is an edge pixel, while the third decision tree 60C judges that the pixel with the feature vector (-100, -50, 0, 50) is a non-edge pixel.

[0113] Figure 6 To represent the input of the feature vector (-10, -5, 0, 0) into Figure 4 The figure shows an example of the judgment results when multiple decision trees 60A, 60B, and 60C are shown. The feature vector (-10, -5, 0, 0) is input to the three decision trees 60A, 60B, and 60C respectively. All decision trees 60A, 60B, and 60C judge that the pixel with the feature vector (-10, -5, 0, 0) is a non-edge pixel.

[0114] There are a number of decision trees 60A, 60B, and 60C, and there may be cases where the decision results are different depending on the decision trees 60A, 60B, and 60C. The operation system 3 uses the larger number of the decision results of the pixels indicating the edge or the decision results of the pixels indicating the non-edge. Figure 5 In the example shown, two of the three decision trees 60A, 60B, and 60C output the result of determining an edge pixel, and the other outputs the result of determining a non-edge pixel. In this case, the operation system 3 uses the result of the larger number of decisions and determines that the pixel with the input feature vector (-100, -50, 0, 50) is an edge pixel. Figure 6 In the example shown, all decision trees 60A, 60B, and 60C output a determination result indicating a non-edge pixel. In this case, the operation system 3 determines that the pixel having the input feature vector (-10, -5, 0, 0) is a non-edge pixel.

[0115] Compared to other models like neural networks, decision trees have the advantage of completing machine learning quickly. For example, machine learning to construct multiple decision trees using training data can be completed in approximately one to five minutes. Therefore, using a model 60 that includes a decision tree can shorten the time from the start of machine learning to the generation of the virtual edge 55.

[0116] Generally speaking, even when the same design data is used to make a pattern, the edge shape of the pattern will be slightly different on each wafer. A model made using an image of a pattern on a certain wafer sometimes fails in edge detection of patterns on other wafers. According to this embodiment, the actual pattern used in the production of training data and the target pattern 51 for generating the imaginary edge 55 are formed on the same wafer (workpiece) W. That is, the machine learning of the model 60 in the learning phase and the generation of the imaginary edge 55 in the edge detection phase are performed using an image of the same wafer (workpiece) W. Therefore, the operation system 3 can use the model 60 constructed by machine learning using the training data to generate the imaginary edge 55 of the target pattern 51 with high precision.

[0117] In this embodiment, multiple decision trees are used as the model 60 constructed through machine learning, but the present invention is not limited to this embodiment. In one embodiment, the model 60 constructed through machine learning can also be a model composed of a support vector machine or a neural network. When the model 60 is a neural network, the feature vector is input to the input layer of the neural network, and the decision result is output from the output layer of the neural network. Deep learning is suitable for machine learning of neural networks.

[0118] expected Figure 3 The imaginary edge 55 shown has Figure 2 In one embodiment, the computing system 3 can further execute a process of detecting the edge of the target pattern 51 based on the imaginary edge 55. The edge detection of the target pattern 51 is based on the reference edge 55. Figure 25 and Figure 26 The same method as the conventional edge detection method is used. In particular, the imaginary edge 55 is used instead of the CAD pattern. Figure 7 As shown, the operation system 3 generates multiple brightness curves of the object image 50 along multiple exploration lines 65 extending in the normal direction relative to the imaginary edge 55, determines multiple edge points EP based on the multiple brightness curves, and connects the multiple edge points EP with lines, thereby generating an updated edge 67.

[0119] Figure 8 To indicate along Figure 7 The calculation system 3 determines the edge point EP on the brightness curve whose brightness value is equal to the threshold value. Figure 7 As shown, the computing system 3 determines a plurality of edge points EP on a plurality of brightness curves along a plurality of search lines 65, connects these edge points EP with lines, thereby generating an updated edge 67, and draws the updated edge 67 on the object image 50. It is expected that the updated edge 67 has a similarity to the target pattern 51 (refer to FIG. Figure 2)’s actual edge is very close in shape.

[0120] Next, the training data used in machine learning for constructing model 60 will be described. As described above, the training data is created using images of multiple actual patterns on wafer W, where target pattern 51 is formed to generate imaginary edge 55. The computing system 3 selects multiple training patterns from the design data. The design data (also known as CAD data) is the design data for the pattern to be formed on wafer W.

[0121] To improve the edge judgment accuracy of the model 60, it is ideal to use images of patterns with various edge shapes to create training data. From this point of view, the training pattern images used for the creation of training data Figure 9 As shown, the training data includes multiple patterns PT1, PT2, and PT3, each having an edge E1 extending in a first direction, an edge E2 extending in a second direction perpendicular to the first direction, a corner edge E3, and an end edge E4. The computing system 3 extracts (selects) multiple training patterns PT1, PT2, and PT3 having edges E1 to E4 of various shapes from the design data.

[0122] The calculation system 3 is configured to display the design diagram drawn based on the design data on the display screen 10 (refer to Figure 1 )superior. Figure 10 This is a schematic diagram showing an example of a design diagram 75 displayed on the display screen 10. The design diagram 75 includes various patterns drawn based on the design data. The user can select the design diagram 75 on the display screen 10 while visually confirming the design diagram 75. Figure 9 More specifically, the user can operate Figure 1 The input device 12 shown is equipped with a mouse 12a and a keyboard 12b. Figure 10 As shown, a plurality of training patterns PT1, PT2, and PT3 are selected from a plurality of patterns on the design pattern 75.

[0123] The user can operate the input device 12 to delete or change a part of the training patterns PT1 , PT2 , and PT3 , or can add another pattern on the design pattern 75 to the training patterns PT1 , PT2 , and PT3 .

[0124] The operation system 3 displays the selected plurality of training patterns PT1, PT2, PT3 or the areas where these patterns PT1, PT2, PT3 are located in a visually emphasized manner. Figure 11As shown in FIG. 1 , a frame 80 indicating the area where the selected training patterns PT1, PT2, and PT3 are located is displayed on the display screen 10, or as shown in FIG. Figure 12 As shown in FIG. 1 , the selected training patterns PT1, PT2, and PT3 themselves are displayed in a form that is visually different from other patterns. Figure 12 In the example shown, the selected training patterns PT1, PT2, and PT3 are displayed with thicker lines than the other patterns. However, in other examples, the selected training patterns PT1, PT2, and PT3 can be displayed in a color different from the other patterns. The user can visually confirm the multiple training patterns PT1, PT2, and PT3 on the display screen 10.

[0125] The scanning electron microscope 1 generates a plurality of training images of a plurality of actual patterns, each created based on the selected plurality of training patterns. At this point, the scanning electron microscope 1 can generate an image of the target pattern 51 that should generate the imaginary edge 55. The computing system 3 acquires the plurality of training images from the scanning electron microscope 1 and stores them in the storage device 6.

[0126] Next, the computing system 3 detects the edges of the plurality of actual patterns on the plurality of training images. Figure 25 and Figure 26 The conventional edge detection method described above is executed. That is, the operation system 3 uses the design data to generate a plurality of CAD patterns corresponding to a plurality of training patterns. The operation system 3 can apply corner rounding processing to each CAD pattern to form a curved corner edge. Then, the operation system 3 superimposes these CAD patterns on the plurality of patterns on the training image. The operation system 3 generates a plurality of exploration lines extending in the normal direction relative to the edge of the CAD pattern, and produces a plurality of brightness curves of the image along these exploration lines. The operation system 3 determines an edge point on one brightness curve whose brightness value is equal to the threshold. Furthermore, the operation system 3 repeats the same action to determine a plurality of edge points on the brightness curves along all the exploration lines. The operation system 3 connects these plurality of edge points with a line, and uses the line formed by connecting the edge points as the edge of the actual pattern on the training image. In this way, the edge of the actual pattern on the training image is detected (determined).

[0127] As a result of edge detection of the actual pattern on the training image, the computing system 3 can label each reference pixel constituting the training image as an edge pixel or a non-edge pixel. Specifically, the computing system 3 classifies the plurality of reference pixels constituting the plurality of training images into first reference pixels constituting an edge and second reference pixels not constituting an edge.

[0128] The operation system 3 generates a plurality of first feature vectors for a plurality of first reference pixels and a plurality of second feature vectors for a plurality of second reference pixels. As described above, each feature vector is a multidimensional vector containing a plurality of feature quantities of each reference pixel. The operation system 3 creates training data containing a plurality of first feature vectors and a plurality of second feature vectors and correct answer data of these feature vectors. The correct answer data is information that determines whether a pixel having a certain feature vector is a pixel constituting an edge of a pattern or a pixel not constituting an edge. The first feature vector and the second feature vector contained in the training data are respectively associated (correlated) with the correct answer data.

[0129] Figure 13 This diagram illustrates training data 70, which includes a first feature vector for a first reference pixel that constitutes an edge and a second feature vector for a second reference pixel that does not constitute an edge. The first feature vector is labeled with the correct answer data for pixels that represent edges, while the second feature vector is labeled with the correct answer data for pixels that do not constitute edges. The computing system 3 uses training data 70 to construct a model 60 through machine learning.

[0130] In this embodiment, model 60 is composed of multiple decision trees 60A, 60B, and 60C. The computing system 3 creates multiple data sets 70A, 70B, and 70C, each containing multiple first feature vectors and multiple second feature vectors randomly extracted from training data 70, and uses these data sets 70A, 70B, and 70C to construct multiple decision trees 60A, 60B, and 60C. More specifically, the computing system 3 uses data set 70A to determine the model parameters of decision tree 60A. Similarly, the computing system 3 uses data set 70B to determine the model parameters of decision tree 60B, and uses data set 70C to determine the model parameters of decision tree 60C.

[0131] The computing system 3 uses the training data 70 to verify the model 60, which is composed of multiple decision trees 60A, 60B, and 60C having the model parameters determined as described above. Specifically, the computing system 3 inputs the first eigenvector contained in the training data 70 into the model 60, outputs the judgment result from the model 60, and verifies whether the judgment result indicates an edge pixel. Similarly, the computing system 3 inputs the second eigenvector contained in the training data 70 into the model 60, outputs the judgment result from the model 60, and verifies whether the judgment result indicates a non-edge pixel. The computing system 3 repeatedly performs this verification to obtain multiple judgment results and calculates the proportion of these multiple judgment results that agree with the correct answer data, namely, the judgment accuracy.

[0132] If the judgment accuracy is greater than the set value, the operation system 3 uses the model 60 to generate the virtual edge 55 as described above. If the judgment accuracy is less than the set value, the operation system 3 again performs the creation of training data and machine learning of the model. In one embodiment, when the judgment accuracy is less than the set value, the operation system 3 may not use the model 60 but may perform the model according to the reference. Figure 25 and Figure 26 The conventional edge detection method described above detects the edge of the target pattern 51 .

[0133] Figure 14 and Figure 15 This is a flowchart showing the operation of the pattern edge detection device described so far.

[0134] In step 1, the operation system 3 selects (extracts) a plurality of training patterns from the design data. Figure 9 As shown, the selected training patterns include a plurality of patterns having an edge E1 extending in a first direction, an edge E2 extending in a second direction perpendicular to the first direction, a corner edge E3, and an end edge E4.

[0135] In step 2, the scanning electron microscope 1 generates a plurality of training images of a plurality of actual patterns respectively produced based on the selected plurality of training patterns. At this time, the scanning electron microscope 1 can generate an image of the target pattern 51 in which the imaginary edge should be generated.

[0136] In step 3, the operation system 3 detects the edges of multiple actual patterns on multiple training images. The edge detection is performed according to the reference Figure 25 and Figure 26 The conventional edge detection method described above is executed.

[0137] In step 4 , the operation system 3 classifies the plurality of reference pixels constituting the plurality of training images into first reference pixels constituting edges and second reference pixels not constituting edges.

[0138] In step 5, the calculation system 3 generates a plurality of first feature vectors for the plurality of first reference pixels and a plurality of second feature vectors for the plurality of second reference pixels. Specifically, the calculation system 3 generates a feature vector representing a plurality of feature quantities of each reference pixel.

[0139] In step 6, the operation system 3 creates training data 70 (see Figure 13 ).

[0140] In step 7, the operation system 3 performs machine learning using the training data 70 to construct the model 60. More specifically, the operation system 3 adjusts the model parameters so that the model 60 outputs a correct determination result when a certain feature vector is input to the model 60.

[0141] In step 8, the computing system 3 uses the training data 70 to verify the judgment accuracy of the model 60. Specifically, the computing system 3 inputs the multiple feature vectors included in the training data 70 into the model 60 one by one, and the model 60 outputs multiple judgment results. The computing system 3 calculates the judgment accuracy, which is the proportion of these multiple judgment results that match the correct answer data.

[0142] In step 9, the operation system 3 compares the determination accuracy with the set value. If the determination accuracy is less than the set value, the operation flow returns to step 6. In one embodiment, if the determination accuracy is less than the set value, the operation flow may not return to step 6. The operation system 3 performs the operation according to the reference value. Figure 25 and Figure 26 The conventional edge detection method described above detects the edge of the target pattern 51 .

[0143] In the above step 9, if the judgment accuracy is above the set value, then Figure 15 As shown, in step 10, the computing system 3 generates a virtual edge using the model 60. Specifically, the computing system 3 generates a feature vector representing multiple feature quantities of each pixel of the target image 50, inputs the feature vector into the model 60, and outputs the result of determining whether the pixel represents an edge or a non-edge pixel from the model 60. The computing system 3 connects multiple pixels having the feature vector for which the pixel represents an edge with a line to generate a virtual edge.

[0144] In step 11, the computing system 3 uses the imaginary edge as the reference edge and performs edge detection according to the conventional edge detection method to generate an updated edge. Figure 7 and Figure 8 As shown, the operation system 3 generates a plurality of exploration lines 65 extending in the normal direction relative to the imaginary edge 55, and generates a plurality of brightness curves of the object image 50 along these exploration lines 65, determines a plurality of edge points EP based on the plurality of brightness curves, connects the plurality of edge points EP with lines, and thereby generates an updated edge 67.

[0145] In step 12, the operation system 3 checks to what extent the updated edge 67 generated in step 11 is away from the edge of the CAD pattern. Figure 16As shown, the computing system 3 uses the design data to generate a CAD pattern 75 corresponding to the target pattern 51. The CAD pattern 75 is superimposed on the target pattern 51 on the object image 50. The distance from the edge of the CAD pattern 75 to the updated edge 67 of the target pattern 51 is measured at a plurality of measurement points. The plurality of measurement points are arranged along the edge of the CAD pattern. This step 12 determines the degree to which the updated edge 67 deviates from the design data (or how close it is to the design data).

[0146] A computing system 3, comprising at least one computer, operates according to commands contained in a program electrically stored in a storage device 6. Specifically, the computing system 3 performs the following steps: issuing a command to the scanning electron microscope 1 to generate a target image 50 of a target pattern 51 formed on a workpiece; generating a feature vector representing multiple feature quantities of each pixel in the target image 50; inputting the feature vector into a model 60 constructed through machine learning; outputting a determination result from the model 60 indicating whether a pixel having the feature vector is an edge pixel or a non-edge pixel; and finally, connecting a plurality of pixels having the feature vector for which the determination result indicates an edge pixel with a line to generate a virtual edge 55.

[0147] The program for causing the operation system 3 to execute these steps is recorded in a computer-readable recording medium that is a non-transitory tangible object and is provided via the recording medium to the operation system 3. Alternatively, the program may be input to the operation system 3 via a communication network such as the Internet or a local area network.

[0148] The patterns used for training data have undulating edges, and the boundaries between edges and non-edge areas on the image are unclear. Models created using this training data (hereinafter referred to as edge detection models) can fail to detect edges or misdetect edges. Creating a highly accurate model requires a large amount of training data for machine learning, which results in a very long time for machine learning.

[0149] Therefore, the embodiments described below provide a method and apparatus that can produce a highly accurate edge detection model without spending a long time on machine learning. Figure 17 Schematic diagram showing another embodiment of the pattern edge detection device. The structure and operation of this embodiment are not particularly described. Figures 1 to 16 The previously described implementation modes are the same, so repeated descriptions are omitted.

[0150] The calculation system 3 includes a model generation device 80 that generates an edge detection model for detecting the edge of a pattern formed on the workpiece W. The image acquisition device 28 is connected to the model generation device 80 .

[0151] The model generation device 80 is composed of at least one computer. The model generation device 80 includes a storage device 80a that stores a program and a processing device 80b that performs operations according to the commands contained in the program. The storage device 80a includes a main storage device such as RAM and an auxiliary storage device such as a hard disk drive (HDD) and a solid-state drive (SSD). Examples of the processing device 80b include a CPU (central processing unit) and a GPU (graphics processing unit). However, the specific structure of the model generation device 80 is not limited to these examples. The storage device 80a may be integrated with the storage device 6, and the processing device 80b may be integrated with the processing device 7.

[0152] The model generation device 80 is configured to generate an edge detection model by machine learning, the edge detection model being used to detect edges of a pattern on an image sent from the image acquisition device 28. Next, generation of the edge detection model will be described.

[0153] First, a workpiece W having a pattern formed thereon is prepared. The scanning electron microscope 1 generates a training image of the workpiece W, and the model generation device 80 acquires the training image from the scanning electron microscope 1 . Figure 18 FIG is a diagram showing an example of a training image of a workpiece W having a pattern formed thereon. Figure 18 In the example shown, a plurality of patterns appear on the training image. These patterns are training patterns used for training data. The model generation device 80 detects the edges of the patterns on the training image. The edge detection uses a well-known image processing technique such as Sobel filtering or Canny's method. Alternatively, it can be performed according to the reference Figure 25 and Figure 26 The conventional edge detection method described above performs edge detection. In one embodiment, the user can also manually correct the detected edge. Furthermore, in one embodiment, the user can also draw the edge.

[0154] Figure 19 is a graph representing the detected edges. Figure 19 The model generation device 80 superimposes the detected edges on the training image of the workpiece W. Figure 20 For the general Figure 19 The detected edges shown are superimposed on Figure 18 The graph obtained on the training image shown.

[0155] Next, the model generation device 80 generates a representation structure Figure 18A feature vector of multiple feature quantities of each pixel of the training image shown. A feature vector is a multidimensional vector containing multiple feature quantities of each pixel. A feature quantity is a numerical value representing a feature of a pixel. In this embodiment, the multiple feature quantities of each pixel are the difference between the brightness value of the pixel and the brightness values ​​of other pixels. In one example, the brightness value is a discrete numerical value from 0 to 255 following the grayscale. In this embodiment, the other pixels are adjacent pixels. In one embodiment, the other pixels may also be non-adjacent pixels.

[0156] refer to Figure 21 , an embodiment of calculating the feature value of a pixel is described. Figure 21 As shown, model generation device 80 applies differential filtering to the training image to calculate the feature value of each pixel. More specifically, model generation device 80 differentiates the brightness values ​​of the pixels constituting the training image along multiple directions and calculates a feature value for each pixel, consisting of the difference in brightness values ​​between two pixels aligned along each direction.

[0157] exist Figure 21 In the example shown, the model generation device 80 differentiates the brightness values ​​of the pixels along the directions of 0 degrees, 45 degrees, 90 degrees, and 135 degrees. That is, the model generation device 80 calculates the difference in brightness values ​​of the pixels arranged along the 0-degree direction, the difference in brightness values ​​of the pixels arranged along the 45-degree direction, the difference in brightness values ​​of the pixels arranged along the 90-degree direction, and the difference in brightness values ​​of the pixels arranged along the 135-degree direction. Thus, a feature value consisting of four numerical values ​​is obtained for each pixel. For example, Figure 21 The feature quantity of the pixel indicated by symbol P1 is represented by a feature vector consisting of 200, 50, 0, and -50. However, the angle of differentiation, the number of angles, and the number of feature quantities per pixel are not limited to the present embodiment.

[0158] Then, if Figure 22 As shown, the model generation device 80 divides the target area 100 in the training image into an edge area R1 , a near-edge area R2 , and a non-edge area R3 . Figure 22 The target area 100 is shown as Figure 18 A portion of the training image of the workpiece W is shown. More specifically, Figure 22 The target area 100 is shown as Figure 18 The edge region R1 is a region containing the edge of the pattern on the training image shown in FIG. Figure 19 The edge region R1 has a fixed width. For example, the width of the edge region R1 may be a width equivalent to one pixel, or a width equivalent to a predetermined number (e.g., three) of multiple pixels.

[0159] The non-edge region R3 is spaced apart from the edge region R1 by a predetermined number of pixels. The near-edge region R2 is located between the edge region R1 and the non-edge region R3. That is, the near-edge region R2 is adjacent to the edge region R1 and the non-edge region R3, and extends along the edge region R1 and the non-edge region R3. The width of the near-edge region R2 is fixed. In one embodiment, the width of the near-edge region R2 is wider than the width of the edge region R1. Typically, the edge region R1 is smaller than the near-edge region R2, and the near-edge region R2 is smaller than the non-edge region R3.

[0160] The model generation device 80 generates training data including multiple feature vectors for multiple pixels in the edge region R1, multiple feature vectors for multiple pixels in the near-edge region R2, and multiple feature vectors for multiple pixels in the non-edge region R3. The model generation device 80 uses the training data and machine learning to generate an edge detection model. Examples of edge detection models include decision trees and neural networks. Examples of machine learning include decision tree learning and deep learning.

[0161] The training data includes the correct answer data (or correct answer label) of each pixel. The correct answer data is information that determines whether each pixel is a pixel that constitutes the edge of the pattern or a pixel that does not constitute the edge. The pixels in the edge area R1 are pixels that constitute the edge, and the pixels in the area near the edge R2 and the non-edge area R3 are pixels that do not constitute the edge. Machine learning optimizes the parameters (weight coefficients, etc.) of the edge detection model, which is used to correctly determine whether a pixel with a feature vector input into the edge detection model is an edge pixel or a non-edge pixel. The edge detection model produced by machine learning can determine whether the pixel is an edge pixel or a non-edge pixel based on the feature vector of the pixel.

[0162] According to this embodiment, training data that necessarily includes pixels within the edge region R1, pixels within the edge-proximal region R2, and pixels within the non-edge region R3 is used for machine learning. In particular, pixels within the edge-proximal region R2, which is difficult to determine, are included in the training data. Therefore, the edge detection model created through machine learning can determine whether a given pixel is an edge with high accuracy.

[0163] If the number of pixels in the non-edge area R3 included in the training data is too large compared to the number of pixels in the edge area R1 included in the training data, the algorithm of the edge detection model produced using such training data will be biased towards non-edge pixel detection. As a result, the edge detection model cannot correctly determine that the input pixel is an edge pixel. Therefore, to improve the edge detection accuracy of the edge detection model, it is preferred that the multiple pixels used for machine learning of the edge detection model equally include edge pixels (i.e., pixels in the edge area R1) and non-edge pixels (i.e., pixels in the area near the edge R2 and the non-edge area R3).

[0164] From this point of view, when the number of pixels in the edge region R1 is set to A and the total number of pixels in the edge vicinity region R2 and the number of pixels in the non-edge region R3 is set to B, the value obtained by dividing the number A by the number B (A / B) is a predetermined value. The value obtained by dividing the number A by the number B (A / B) is in the range of 0.6 to 1.5. In order to improve the edge detection accuracy of the edge detection model, in one embodiment, the number A of pixels in the edge region R1 included in the training data is the same as the total number B of pixels in the edge vicinity region R2 and the number of pixels in the non-edge region R3 included in the training data.

[0165] The feature vectors of the pixels in the region R2 near the edge have values ​​between the feature vectors of the pixels in the edge region R1 and the feature vectors of the pixels in the non-edge region R3. Therefore, it is difficult to accurately determine whether the pixels in the region R2 near the edge are edge pixels or non-edge pixels. From another point of view, if a large amount of training data containing feature vectors of pixels in the region R2 near the edge is used, an edge detection model with high edge detection accuracy can be generated. Therefore, in one embodiment, the number of pixels in the region R2 near the edge included in the training data is greater than the number of pixels in the non-edge region R3 included in the training data.

[0166] The computing system 3 uses an edge detection model created through machine learning to detect edges in a target image of the workpiece W as follows. The scanning electron microscope 1 generates a target image of the workpiece W. The computing system 3 receives the target image of the workpiece W from the scanning electron microscope 1, calculates feature vectors for the pixels constituting the target image of the workpiece W, inputs the feature vectors into the edge detection model, and outputs a determination result indicating whether a pixel having the feature vector is an edge pixel or a non-edge pixel. Multiple pixels having feature vectors that have been determined to be edge pixels are connected by lines to generate an edge.

[0167] Model generation device 80, comprising at least one computer, operates according to instructions contained in a program electrically stored in storage device 80a. Specifically, model generation device 80 performs the following steps: acquiring a training image of a workpiece W having a pattern formed thereon from scanning electron microscope 1; detecting edges of the pattern in the training image; calculating feature vectors for pixels constituting the training image; segmenting the target area within the training image into an edge region R1, a region near the edge R2, and a non-edge region R3; generating training data including feature vectors for multiple pixels within edge region R1, multiple pixels within the region near the edge R2, and multiple pixels within the non-edge region R3; and generating an edge detection model using machine learning using the training data.

[0168] The program for causing the model generation device 80 to execute these steps is recorded on a computer-readable recording medium, which is a non-transitory tangible object, and is provided to the model generation device 80 via the recording medium. Alternatively, the program can be input to the model generation device 80 via a communication network such as the Internet or a local area network.

[0169] Next, refer to Figure 23 , another embodiment of making edge detection model is described. The process of this embodiment and reference Figures 17 to 22 The above-described embodiments are the same, so repeated descriptions are omitted.

[0170] like Figure 23 As shown, in this embodiment, the model generation device 80 is configured to divide the target area 100 in the training image into an edge area R1, a near-edge area R2, a non-edge area R3, and an excluded area R4. The excluded area R4 is adjacent to the edge area R1 and is located between the edge area R1 and the near-edge area R2. Figure 23 The width of the excluded region R4 is shown to be constant. In one embodiment, the width of the excluded region R4 is narrower than the width of the peripheral region R2. Furthermore, in one embodiment, the width of the excluded region R4 is the same as or narrower than the width of the peripheral region R1.

[0171] The training data does not include feature vectors for pixels within the excluded region R4. Specifically, the training data includes feature vectors for multiple pixels within the edge region R1, multiple pixels within the near-edge region R2, and multiple pixels within the non-edge region R3, but does not include feature vectors for pixels within the excluded region R4. Therefore, the pixels within the excluded region R4 are not used for machine learning.

[0172] The excluded region R4 is adjacent to the edge region R1, and the feature vectors of each pixel in the excluded region R4 are substantially the same as the feature vectors of each pixel in the edge region R1. Therefore, the pixels in the excluded region R4 may be edge pixels or non-edge pixels. In other words, the pixels in the excluded region R4 are uncertain pixels. If such uncertain pixels are included in the training data, machine learning must be continued until the edge detection model meets the desired correct answer rate. As a result, it takes a long time to complete the machine learning. According to this embodiment, the feature vectors of the pixels in the excluded region R4 are excluded from the training data, so that the machine learning of the edge detection model can be completed in advance.

[0173] To further improve the edge detection accuracy of the edge detection model, in one embodiment, the target region 100 includes multiple regions containing edges of various patterns in the training image. This is because the sharpness of the edges of the patterns in the training image may vary depending on the direction in which the edges extend.

[0174] Figure 24 FIG. 1 is a diagram showing an example of a target area 100 including a plurality of areas set in a training image. Figure 24 As shown, target area 100 includes a first region T1, a second region T2, and a third region T3. Region T1 includes a first edge E1 of a pattern within an image of a workpiece W; region T2 includes a second edge E2 perpendicular to first edge E1; and region T3 includes a corner edge E3 and a terminal edge E4 of the pattern. Training data includes feature vectors of pixels within regions T1, T2, and T3, each of which includes edges E1, E2, E3, and E4 extending in different directions. Machine learning using this training data can improve the accuracy of edge detection for edges extending in various directions.

[0175] To further improve the detection accuracy of edges extending in different directions, in one embodiment, the number of pixels within the first region T1, the number of pixels within the second region T2, and the number of pixels within the third region T3 are in a predetermined ratio. When the number of pixels within the first region T1 is represented by S1, the number of pixels within the second region T2 is represented by S2, and the number of pixels within the third region T3 is represented by S3, the relationship among S1, S2, and S3 is expressed as follows:

[0176] S1=m×S2=n×S3

[0177] Among them, m is 0.9 to 1.1, and n is 0.01 to 0.1.

[0178] The purpose of describing the above embodiments is to enable those with ordinary knowledge in the technical field to which the present invention pertains to the implementation of the present invention. Those skilled in the art will naturally be able to implement various variations of the above embodiments, and the technical concepts of the present invention can also be applied to other embodiments. Therefore, the present invention is not limited to the described embodiments but should be interpreted within the broadest scope consistent with the technical concepts defined by the claims.

[0179] Industrial applicability

[0180] The present invention can be applied to a method and apparatus for detecting the edges (contours) of patterns formed on workpieces such as wafers and masks, used in semiconductor manufacturing, from images generated by a scanning electron microscope. Furthermore, the present invention can be applied to a program for causing a computer to execute such pattern edge detection.

[0181] In addition, the present invention can be used in a method and apparatus for producing an edge detection model through machine learning.

[0182] Explanation of symbols

[0183] 1…Scanning electron microscopy

[0184] 3…Operational system

[0185] 5… Database

[0186] 6…Storage device

[0187] 7…Processing device

[0188] 10…Display screen

[0189] 12…Input device

[0190] 15…Electron gun

[0191] 16… beam focusing lens

[0192] 17…X deflector

[0193] 18…Y deflector

[0194] 20…Objective lens

[0195] 21…Lens control device

[0196] 22…Deflection control device

[0197] 25…Secondary electron detector

[0198] 26…Reflected electron detector

[0199] 28…Image acquisition device

[0200] 30…Chamber

[0201] 31…Place

[0202] 32…Stage control device

[0203] 34…Conveying device

[0204] 50…object images

[0205] 51…Target pattern

[0206] 55…Imaginary Edge

[0207] 60…Model

[0208] 60A, 60B, 60C…Decision Tree

[0209] 65…Exploration Line

[0210] 67…Updated Edge

[0211] 70…training data

[0212] 70A, 70B, 70C...data group

[0213] 75…Design diagram

[0214] 80…Model generation device

[0215] 100…Target area

[0216] W…wafer (workpiece).

Claims

1. A pattern edge detection method, characterized in that: Generate an object image of the target pattern formed on the workpiece, generating a feature vector representing a plurality of feature quantities of each pixel of the target image, The feature vector is input into the model constructed by machine learning, Outputting a determination result indicating whether a pixel having the feature vector is an edge pixel or a non-edge pixel from the model, A virtual edge is generated by connecting a plurality of pixels having feature vectors for which the pixel determination result indicating an edge is obtained with a line. generating a plurality of brightness curves of the object image along a plurality of search lines extending in a normal direction relative to the imaginary edge, Determine a plurality of edge points according to a plurality of the brightness curves, The plurality of edge points are connected with lines, thereby generating updated edges.

2. The pattern edge detection method according to claim 1, wherein: The model is a decision tree.

3. The pattern edge detection method according to claim 1 or 2, characterized in that: It further includes the following steps: Select multiple training patterns from the design data, generating a plurality of training images of a plurality of actual patterns respectively produced based on the plurality of training patterns, detecting edges of the plurality of actual patterns on the plurality of training images, classifying a plurality of reference pixels constituting the plurality of training images into a plurality of first reference pixels constituting edges and a plurality of second reference pixels not constituting edges, generating a plurality of first feature vectors of the plurality of first reference pixels and a plurality of second feature vectors of the plurality of second reference pixels, The model is constructed by machine learning using training data including the plurality of first eigenvectors and the plurality of second eigenvectors.

4. The pattern edge detection method according to claim 3, characterized in that: The plurality of training patterns are a plurality of patterns having at least an edge extending in a first direction, an edge extending in a second direction perpendicular to the first direction, a corner edge, and an end edge.

5. The pattern edge detection method according to claim 3, wherein: The plurality of actual patterns are patterns formed on the workpiece.

6. The pattern edge detection method according to claim 3, characterized in that: The process of selecting the plurality of training patterns from the design data is as follows: Displaying a design diagram containing multiple patterns drawn according to the design data on a display screen, The plurality of training patterns selected from the plurality of patterns included in the design pattern or the regions where the plurality of training patterns are located are displayed on the display screen in a visually emphasized manner.

7. The pattern edge detection method according to claim 1, characterized in that: It further includes the following steps: generating a CAD pattern corresponding to the target pattern using the design data, The distance from the edge of the CAD pattern to the updated edge is measured.

8. A pattern edge detection device, characterized in that: have: an image generating device that generates an object image of a target pattern formed on a workpiece; and a computing system connected to the image generating device, The computing system generates a feature vector representing a plurality of feature quantities of each pixel of the target image, The feature vector is input into the model constructed by machine learning, Outputting a determination result indicating whether a pixel having the feature vector is an edge pixel or a non-edge pixel from the model, A virtual edge is generated by connecting a plurality of pixels having feature vectors for which the pixel determination result indicating an edge is obtained with a line. The calculation system is configured to generate a plurality of brightness curves of the object image along a plurality of search lines extending in a normal direction relative to the imaginary edge. Determine a plurality of edge points according to a plurality of the brightness curves, The plurality of edge points are connected with lines, thereby generating updated edges.

9. The pattern edge detection device according to claim 8, characterized in that: The model is a decision tree.

10. The pattern edge detection device according to claim 8 or 9, characterized in that: The operation system is configured to select a plurality of training patterns from the design data, generating a plurality of training images of a plurality of actual patterns respectively produced based on the plurality of training patterns, detecting edges of the plurality of actual patterns on the plurality of training images, classifying a plurality of reference pixels constituting the plurality of training images into a plurality of first reference pixels constituting edges and a plurality of second reference pixels not constituting edges, generating a plurality of first feature vectors of the plurality of first reference pixels and a plurality of second feature vectors of the plurality of second reference pixels, The model is constructed by machine learning using training data including the plurality of first eigenvectors and the plurality of second eigenvectors.

11. The pattern edge detection device according to claim 10, characterized in that: The plurality of training patterns are a plurality of patterns having at least an edge extending in a first direction, an edge extending in a second direction perpendicular to the first direction, a corner edge, and an end edge.

12. The pattern edge detection device according to claim 10, characterized in that: The plurality of actual patterns are patterns formed on the workpiece.

13. The pattern edge detection device according to claim 10, characterized in that: The computing system has a display screen. The computing system is configured to display a design diagram including a plurality of patterns drawn based on the design data on the display screen. The plurality of training patterns selected from the plurality of patterns included in the design pattern or the regions where the plurality of training patterns are located are displayed on the display screen in a visually emphasized manner.

14. The pattern edge detection device according to claim 8, characterized in that: The operation system is configured to generate a CAD pattern corresponding to the target pattern using the design data, The distance from the edge of the CAD pattern to the updated edge is measured.

15. A computer-readable recording medium, characterized in that A program is recorded to cause the computer to perform the following steps: issuing instructions to the scanning electron microscope to generate an object image of a target pattern formed on the workpiece; generating a feature vector representing a plurality of feature quantities of each pixel of the target image; Inputting the feature vector into a model constructed by machine learning; outputting, from the model, a determination result indicating whether the pixel having the feature vector is an edge pixel or a non-edge pixel; as well as A virtual edge is generated by connecting a plurality of pixels having feature vectors for which the pixel determination result indicating an edge is obtained with a line. The program is configured to cause the computer to execute the following steps: generating a plurality of brightness curves of the object image along a plurality of exploration lines extending in a normal direction relative to the imaginary edge; determining a plurality of edge points according to the plurality of brightness curves; as well as The plurality of edge points are connected with lines, thereby generating updated edges.

16. The computer-readable recording medium according to claim 15, wherein The model is a decision tree.

17. The computer-readable recording medium according to claim 15 or 16, wherein: The program is configured to cause the computer to execute the following steps: selecting a plurality of training patterns from the design data; issuing a command to the scanning electron microscope to generate a plurality of training images of a plurality of actual patterns respectively produced based on the plurality of training patterns; detecting edges of the plurality of actual patterns on the plurality of training images; classifying a plurality of reference pixels constituting the plurality of training images into a plurality of first reference pixels constituting edges and a plurality of second reference pixels not constituting edges; generating a plurality of first feature vectors of the plurality of first reference pixels and a plurality of second feature vectors of the plurality of second reference pixels; and The model is constructed by machine learning using training data including the plurality of first eigenvectors and the plurality of second eigenvectors.

18. The computer-readable recording medium according to claim 17, wherein: The plurality of training patterns are a plurality of patterns having at least an edge extending in a first direction, an edge extending in a second direction perpendicular to the first direction, a corner edge, and an end edge.

19. The computer-readable recording medium according to claim 17, wherein The plurality of actual patterns are patterns formed on the workpiece.

20. The computer-readable recording medium according to claim 17, wherein The steps of selecting the plurality of training patterns from the design data are as follows: Displaying a design pattern including a plurality of patterns drawn according to the design data on a display screen; as well as The plurality of training patterns selected from the plurality of patterns included in the design pattern or the regions where the plurality of training patterns are located are displayed on the display screen in a visually emphasized manner.

21. The computer-readable recording medium according to claim 15, wherein The program is configured to cause the computer to execute the following steps: generating a CAD pattern corresponding to the target pattern using the design data; and The distance from the edge of the CAD pattern to the updated edge is measured.

22. The pattern edge detection method according to claim 1 or 2, characterized in that: It further includes the following steps: Using a scanning electron microscope, a training image of a workpiece with a pattern formed thereon is generated. detecting edges of the pattern on the training image, Calculate the feature vectors of the pixels constituting the training image, The target area in the training image is divided into an edge area, an area near the edge and a non-edge area. Creating training data including a plurality of feature vectors of a plurality of first pixels in the edge region, a plurality of feature vectors of a plurality of second pixels in the region near the edge, and a plurality of feature vectors of a plurality of third pixels in the non-edge region, The model is created through machine learning using the training data.

23. The pattern edge detection method according to claim 22, characterized in that: When the number of the plurality of first pixels is A and the total number of the plurality of second pixels and the plurality of third pixels is B, a value A / B obtained by dividing the number A by the number B is a predetermined value.

24. The pattern edge detection method according to claim 23, characterized in that: The value A / B obtained by dividing the quantity A by the quantity B is in the range of 0.6 to 1.

5.

25. The pattern edge detection method according to claim 22, characterized in that: The distance between the non-edge area and the edge area is a predetermined number of pixels. The near-edge region is located between the edge region and the non-edge region.

26. The pattern edge detection method according to claim 22, characterized in that: The step of dividing the target area in the training image into an edge area, an area near the edge, and a non-edge area is to divide the target area in the training image into an edge area, an exclusion area, an area near the edge, and a non-edge area. The excluded area is adjacent to the edge area and is located between the edge area and the area near the edge. The training data does not include feature vectors of pixels within the excluded area.

27. The pattern edge detection method according to claim 22, characterized in that: The target area includes a first area, a second area, and a third area. The first area includes a first edge, the second area includes a second edge perpendicular to the first edge, and the third area includes a corner edge and an end edge.

28. The pattern edge detection method according to claim 27, characterized in that: The number of pixels in the first area, the number of pixels in the second area, and the number of pixels in the third area are in a predetermined ratio.

29. The pattern edge detection device according to claim 8 or 9, characterized in that: Furthermore, a model generating device for generating the model is provided. The model generation device comprises: a storage device storing a program for making the model; and a computing device that performs calculations according to the instructions contained in the program, The model generation device is configured to acquire a training image of a workpiece on which a pattern is formed from a scanning electron microscope, detecting edges of the pattern on the training image, Calculate the feature vectors of the pixels constituting the training image, The target area in the training image is divided into an edge area, an area near the edge and a non-edge area. Creating training data including a plurality of feature vectors of a plurality of first pixels in the edge region, a plurality of feature vectors of a plurality of second pixels in the region near the edge, and a plurality of feature vectors of a plurality of third pixels in the non-edge region, The model is created through machine learning using the training data.

30. The pattern edge detection device according to claim 29, characterized in that: When the number of the plurality of first pixels is A and the total number of the plurality of second pixels and the plurality of third pixels is B, a value A / B obtained by dividing the number A by the number B is a predetermined value.

31. The pattern edge detection device according to claim 30, characterized in that: The value A / B obtained by dividing the quantity A by the quantity B is in the range of 0.6 to 1.

5.

32. The pattern edge detection device according to claim 29, characterized in that: The distance between the non-edge area and the edge area is a predetermined number of pixels. The near-edge region is located between the edge region and the non-edge region.

33. The pattern edge detection device according to claim 29, characterized in that: The model generation device is configured to divide the target area in the training image into an edge area, an exclusion area, an edge vicinity area, and a non-edge area. The excluded area is adjacent to the edge area and is located between the edge area and the area near the edge. The training data does not include feature vectors of pixels within the excluded area.

34. The pattern edge detection device according to claim 29, characterized in that: The target area includes a first area, a second area, and a third area. The first area includes a first edge, the second area includes a second edge perpendicular to the first edge, and the third area includes a corner edge and an end edge.

35. The pattern edge detection device according to claim 34, characterized in that: The number of pixels in the first area, the number of pixels in the second area, and the number of pixels in the third area are in a predetermined ratio.

Citation Information

Patent Citations

  • Pattern evaluation device, pattern evaluation method and program

    JP2003178314A

  • Semiconductor pattern inspection device

    JP2013098267A

  • Information processing device, control method of information processing device and program

    JP2020140518A

  • Pattern inspecting and measuring device and program

    CN104718428A

  • Pattern edge detection method

    WO2019188009A1