Method and system for reducing charging artifacts in inspection images
Through physics-based machine learning models and autoencoder technology, the problems of low efficiency and insufficient accuracy of charging artifacts in SEM images are solved, and more efficient defect detection and more accurate image processing are achieved.
Patent Information
- Application Number
- CN202380045554.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2022-06-07
- Filing Date
- 2023-05-08
- Publication Date
- 2025-01-17
AI Technical Summary
The prior art has problems of inefficient and insufficient accuracy in reducing charging artifacts in scanning electron microscope (SEM) images, especially in semiconductor manufacturing where the accuracy and yield requirements for defect detection are increasingly high. Down.
Using a physics-based machine learning model, trains the machine learning model to reduce charging artifacts by generating simulations of checking image sets and applying a physics-based charging model, and applies the trained model to the actual inspection image to generate an output image using an autoencoder. , reduce charging artifacts.
Significantly reduce over-correction of machine learning models, and the generated output images contain fewer charging artifacts, improve detection accuracy and efficiency, and reduce artifact coupling caused by scanning direction and geometric features.
Smart Images

Figure CN119325622A_ABST
Abstract
Description
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This application claims priority to EP application 22177678.4 filed on June 7, 2022, which is incorporated herein by reference in its entirety. Technical Field
[0003] The description herein relates to the field of image inspection devices and, more particularly, to using physics-based machine learning models to reduce charging artifacts in inspection images. Background Art
[0004] An image inspection device (e.g., a charged particle beam device or an optical beam device) is capable of generating a two-dimensional (2D) image of a wafer substrate by detecting particles (e.g., photons, secondary electrons, backscattered electrons, image electrons, or other types of electrons) generated when a beam (e.g., a charged particle beam or an optical beam) generated by a source associated with the inspection device strikes the surface of the wafer substrate. In the semiconductor industry, various image inspection devices are used for semiconductor wafers for various purposes, such as wafer processing (e.g., electron beam direct write lithography systems), process monitoring (e.g., critical dimension scanning electron microscopes (CD-SEMs)), wafer inspection (e.g., electron beam inspection systems), or defect analysis (e.g., defect review SEMs, or DR-SEMs, and focused ion beam systems, or FIBs).
[0005] In order to control the quality of the fabricated structures on the wafer substrate, the 2D images of the wafer substrate can be analyzed to detect potential defects in the wafer substrate. As the physical size of IC components continues to shrink, the accuracy and yield of defect detection become increasingly important. However, when inspecting electrically insulating materials, the quality of SEM images is often affected by charging artifacts caused by the SEM. In some cases, such charging artifacts may lead to charge-induced critical dimension (CD) errors. There are several techniques that can be used to reduce charging artifacts in SEM imaging, such as coating the target sample surface with conductive materials, optimizing the landing energy of the electron beam in the SEM, using faster scanning (e.g., using a lower dose per SEM frame and using more SEM frames), using opposite scanning directions in the SEM, etc. However, it is worth noting that these techniques have different disadvantages. In particular, it is worth noting that experimental techniques to avoid charging (e.g., "quadruple scanning" that performs four-directional scans and averages the measured values) can be slow and result in low throughput. Numerical image processing techniques may lack physics-based interpretability. This technology needs further improvement. Summary of the invention
[0006] Embodiments of the present disclosure provide systems and methods for reducing charging artifacts in inspection images. In some embodiments, the system may include an image inspection device configured to scan a sample and generate an inspection image of an integrated circuit manufactured on the sample, and a controller including a circuit system. The controller may be configured to acquire an inspection image set, wherein each inspection image in the inspection image set includes charging artifacts. The controller may also be configured to use the inspection image set as input to train a machine learning model, wherein the machine learning model outputs a decoupled feature set of the inspection image set.
[0007] In some embodiments, the system may include an image inspection device configured to scan a sample and generate an inspection image of an integrated circuit manufactured on the sample, and a controller including a circuit system. The controller may be configured to generate a set of simulated inspection images, wherein each simulated inspection image in the set of simulated inspection images does not include charging artifacts. The controller may also be configured to generate an inspection image set by applying a physics-based model to the set of simulated inspection images. The controller may also be configured to train a machine learning model using the inspection image set as input, wherein the machine learning model outputs decoupled features of the inspection image set. The controller may also be configured to apply the trained machine learning model to the inspection image to generate an output inspection image, wherein the output inspection image includes fewer charging artifacts than the inspection image.
[0008] In some embodiments, a non-transitory computer readable medium may store an instruction set that is executable by at least one processor of a device to cause the device to perform a method. The method may include acquiring an inspection image set, wherein each inspection image in the inspection image set includes a charging artifact. The method may also include using the inspection image set as input to train a machine learning model, wherein the machine learning model outputs a decoupled feature set of the inspection image set.
[0009] In some embodiments, a non-transitory computer-readable medium may store an instruction set that can be executed by at least one processor of a device to cause the device to perform a method. The method may include generating a set of simulated inspection images, wherein each simulated inspection image in the set of simulated inspection images does not include charging artifacts. The method may also include generating an inspection image set by applying a physics-based model to the set of simulated inspection images. The method may also include training a machine learning model using the inspection image set as input, wherein the machine learning model outputs decoupled features of the inspection image set. The method may also include applying the trained machine learning model to the inspection image to generate an output inspection image, wherein the output inspection image includes fewer charging artifacts than the inspection image.
[0010] In some embodiments, a computer-implemented method for reducing charging artifacts in an inspection image may include acquiring an inspection image set, wherein each inspection image in the inspection image set includes charging artifacts. The computer-implemented method may also include training a machine learning model using the inspection image set as input, wherein the machine learning model outputs a disentangled feature set for the inspection image set.
[0011] In some embodiments, a computer-implemented method for reducing charging artifacts in an inspection image may include generating a set of simulated inspection images, wherein each simulated inspection image in the set of simulated inspection images does not include charging artifacts. The method may also include generating the inspection image set by applying a physics-based model to the set of simulated inspection images. The method may also include training a machine learning model using the inspection image set as input, wherein the machine learning model outputs a set of decoupled features for the inspection image set. The method may also include applying the trained machine learning model to the inspection image to generate an output inspection image, wherein the output inspection image includes fewer charging artifacts than the inspection image. BRIEF DESCRIPTION OF THE DRAWINGS
[0012] Figure 1 is a schematic diagram illustrating an example charged particle beam inspection (CPBI) system consistent with some embodiments of the present disclosure.
[0013] Figure 2 is a schematic diagram showing an example charged particle beam tool consistent with some embodiments of the present disclosure, which may be Figure 1 An example of a portion of a charged particle beam inspection system.
[0014] Figure 3 is a schematic diagram illustrating an example process for charging effects induced by a charged particle beam tool consistent with some embodiments of the present disclosure.
[0015] Figure 4 is a schematic diagram illustrating an example process for reducing charging artifacts in inspection images consistent with some embodiments of the present disclosure.
[0016] Figure 5 is a schematic diagram of an example neural network consistent with some embodiments of the present disclosure.
[0017] Figure 6 is a schematic diagram of an example autoencoder consistent with some embodiments of the present disclosure.
[0018] Figure 7 is a schematic diagram of an example process for reducing charging artifacts in inspection images using a trained autoencoder, consistent with some embodiments of the present disclosure.
[0019] Figure 8is a schematic diagram of a first example process for training an autoencoder consistent with some embodiments of the present disclosure.
[0020] Fig. 9 is a schematic diagram of a second example process for training an autoencoder consistent with some embodiments of the present disclosure.
[0021] Fig.10 is a flow chart illustrating an example method for reducing charging artifacts in inspection images consistent with some embodiments of the present disclosure. DETAILED DESCRIPTION
[0022] Reference will now be made in detail to example embodiments, examples of which are shown in the accompanying drawings. The following description refers to the accompanying drawings, wherein, unless otherwise specified, the same numbers in different figures represent the same or similar elements. The implementations set forth in the following description of the example embodiments do not represent all implementations consistent with the present disclosure. Instead, they are merely examples of devices and methods consistent with aspects related to the subject matter described in the appended claims. Without limiting the scope of the present disclosure, some embodiments may be described in the context of providing detection systems and detection methods in systems utilizing electron beams ("e-beams"). However, the present disclosure is not limited thereto. Other types of charged particle beams (e.g., including protons, ions, muons, or any other particles carrying a charge) may be similarly applied. In addition, the systems and methods for detection may be used in other imaging systems, such as optical imaging, photon detection, x-ray detection, ion detection, or any imaging system that may cause charging effects (to be described in the present disclosure).
[0023] Electronic devices consist of circuits formed on a sheet of semiconductor material called a substrate. The semiconductor material may include, for example, silicon, gallium arsenide, indium phosphide, or silicon germanium. Many circuits can be formed together on the same silicon wafer and are called an integrated circuit, or IC. The size of these circuits has been greatly reduced so that more can fit on a substrate. For example, the IC chip in a smartphone may be as small as a thumbnail but may contain more than 2 billion transistors, each less than one thousandth the size of a human hair.
[0024] Manufacturing these ICs, which have extremely small structures or components, is a complex, time-consuming, and expensive process that typically involves hundreds of individual steps. An error in even one step can cause a defect in the finished IC, rendering it unusable. Therefore, one goal of the manufacturing process is to avoid such defects in order to maximize the number of functional ICs manufactured in the process; that is, to increase the yield of the overall process.
[0025] An integral part of improving yield is monitoring the chip manufacturing process to ensure that a sufficient number of functional integrated circuits are produced. One way to monitor the process is to inspect the chip circuit structures at various stages of their formation. Inspection can be performed using a scanning charged particle microscope ("SCPM"). For example, the SCPM can be a scanning electron microscope (SEM). The SCPM can be used to image these extremely small structures, in effect taking a "photograph" of the wafer structure. This image can be used to determine if the structure is formed correctly in the correct location. If the structure is defective, the process can be adjusted to reduce the likelihood that the defect will occur again.
[0026] The working principle of an SCPM (e.g., SEM) is similar to that of a camera. A camera takes a picture by receiving and recording the intensity of light reflected or emitted from a person or object. An SCPM takes a picture by receiving and recording the energy or number of charged particles (e.g., electrons) reflected or emitted from a wafer structure. Typically, the structure is made on a substrate (e.g., a silicon substrate) that is placed on a platform called a stage for imaging. Before taking such a "picture," a beam of charged particles may be projected onto the structure, and as the charged particles are reflected or emitted ("leave") from the structure (e.g., from the wafer surface, from the structure below the wafer surface, or both), the detector of the SCPM may receive and record the energy or number of these charged particles to generate an inspection image. To take such a "picture," the charged particle beam may scan the wafer (e.g., in a row-by-row or zigzag manner), and the detector may receive the leaving charged particles from the area (called a "beam spot") under the projection of the charged particle beam. The detector may receive and record the leaving charged particles from each beam spot at a time, and merge the recorded information of all beam spots to generate an inspection image. Some SCPMs use a single charged particle beam (referred to as "single-beam SCPM", such as a single-beam SEM) to take a single "photo" to generate an inspection image, while some SCPMs use multiple charged particle beams (referred to as "multi-beam SCPM", such as a multi-beam SEM) to take multiple "sub-photos" of the wafer in parallel and stitch them together to generate an inspection image. By using multiple charged particle beams, the SEM can provide more charged particle beams to the structure to obtain these multiple "sub-photos", resulting in more charged particles leaving the structure. Accordingly, the detector can receive more leaving charged particles at the same time, and generate an inspection image of the wafer structure with higher efficiency and faster speed.
[0027] Wafer defect detection is a key step in semiconductor mass production and process development in the R&D stage. A wafer may include one or more dies. As used herein, a die refers to a portion or block of a wafer on which an integrated circuit can be manufactured. Typically, integrated circuits of the same design can be mass-produced on a single semiconductor wafer, and then the wafer can be cut (or "diced") into pieces, each of which includes a copy of the integrated circuit and is called a die. There are several conventional techniques for wafer defect detection, including die-to-die ("D2D") inspection technology, die-to-database ("D2DB") inspection technology, and simulation-based inspection technology. Image analysis can be performed on the inspection image to identify potential defects in the structure manufactured on the wafer.
[0028] In the D2D detection technology, for each die on the wafer, an inspection image of the die (referred to as a "die inspection image") can be generated. For example, the die inspection image can be an SEM image that is actually measured. The die inspection images can be compared and analyzed to detect defects. For example, each pixel of the first die inspection image of the first die can be compared with each corresponding pixel of the second die inspection image of the second die to determine their gray value differences. Potential defects can be identified based on pixel gray value differences. For example, if one or more differences exceed a predetermined threshold, the pixels corresponding to one or more differences in at least one of the first die inspection image or the second die inspection image may represent part of a potential defect. In some embodiments, the compared die inspection images (e.g., the first die inspection image or the second die inspection image) can be associated with adjacent dies (e.g., the first die and the second die are randomly selected from dies that are less than four dies apart). In some embodiments, the compared die inspection images (eg, the first die inspection image or the second die inspection image) may be associated with shift cycle dies (eg, the first die and the second die are selected from dies that are a fixed number of dies apart).
[0029] In the D2DB inspection technique, a die inspection image of a die on a wafer may be compared to a drawn image generated from a design layout file (e.g., a GDS layout file) of the same die. The design layout file may include a non-visual description of the integrated circuits in the die, and the drawing of the design layout file may reference a visualization (e.g., a 2D image) of the non-visual description. For example, the die inspection image may be compared to the drawn image to determine differences in one or more of their corresponding features, such as, for example, pixel-by-pixel grayscale values, grayscale intensities within a polygon, or distances between corresponding patterns. Potential defects may be identified based on the differences. For example, if one or more differences exceed a predetermined threshold, the pixels in the die inspection image corresponding to the one or more differences may represent a portion of a potential defect.
[0030] In a simulation-based inspection technique, a die inspection image may be compared to a simulated image (e.g., a simulated SEM image) corresponding to the inspection image. In some embodiments, the simulated image may be generated by a machine learning model (e.g., a generative adversarial network or "GAN") to simulate a graphical representation of the inspection image measured by an image inspection device. The simulated image may be used as a reference for comparison with the die inspection image. For example, each pixel of the die inspection image may be compared to each corresponding pixel of the simulated image to determine the difference in their grayscale values. Potential defects may be identified based on the difference in pixel-by-pixel grayscale values. For example, if one or more differences exceed a predetermined threshold, the pixels in the die inspection image corresponding to the one or more differences may represent a portion of a potential defect.
[0031] One phenomenon in image formation (for defect detection) is artifacts introduced by the inspection tool (e.g., a scanning charged particle microscope). Such artifacts do not originate from actual defects in the final product. Artifacts may distort or reduce the quality of the image to be inspected and cause difficult or inaccurate defect detection. When incident charged particles from a charged particle inspection device (e.g., a SEM) interact with the dielectric material during inspection, the accumulated and changing charges in the dielectric material of the wafer (e.g., a photoresist) may cause distortion. The accumulated charge may affect the trajectory of the charged particles entering and leaving the beam spot and cause measurement artifacts in the inspection image. Such measurement artifacts caused by the accumulated charge are referred to as "charging artifacts" in this disclosure. Charging artifacts can include, for example, grid distortion of the field of view ("FOV"), shadows generated due to local charging, contour deformation, placement errors, etc. Charging artifacts may further cause inaccuracies in the measurement of critical dimensions or edge placement based on the inspection image, or hinder the calibration of the optical particle counter.
[0032] Several existing techniques can be used to reduce the charging artifacts described above. However, each technique presents one or more technical challenges. For example, at the scale of large FOV, one or more polynomial models can be used to correct low-frequency FOV grid distortions. However, the polynomial model may not be able to correct dark shadows or subtle contour deformations that appear at the nanometer scale. As another example, charging artifacts can be mitigated using a quadruple scanning technique, in which the same sample can be scanned from four different directions to generate an average inspection image. However, the quadruple scanning technique can only average charging artifacts, but cannot eliminate them. In addition, the order of the four scanning directions may affect the critical dimensions measured in the quadruple scanning technique. In addition, since a single sample is scanned four times, the quadruple scanning technique can be time-consuming.
[0033] Embodiments of the present disclosure may provide methods, devices, and systems for reducing charging artifacts in inspection images using a physics-based machine learning model (e.g., an autoencoder). In some disclosed embodiments, one or more simulated inspection images (e.g., simulated SEM images) may be generated using a simulation technique (e.g., a Monte Carlo-based SEM simulator) with various parameters (e.g., pattern, critical dimension, pitch, groove depth, edge roughness, etc.). A physics-based charging model may be used to simulate charging artifacts caused by a charged particle inspection device in a simulated inspection image. The physics-based charging model may perform simulations using various charging parameters (e.g., scanning direction, charged particle dose, charge diffusion time, etc.). Given that the actual inspection image generated in actual measurement (i.e., not in simulation) has a non-zero dose of charged particles, the physics-based charging model may also use a non-zero dose of charged particles to simulate charging artifacts in the simulated inspection image. After the charging artifacts are introduced into the simulated inspection image, a training set may be formed to train a machine learning model (e.g., an autoencoder), and the trained machine learning model may be applied to the actual inspection image to remove the charging artifacts.
[0034] Compared with existing technologies for charging artifact elimination, the technical solution disclosed in this article provides multiple technical advantages. For example, the training set generated using a physics-based model can significantly reduce the overcorrection introduced by the machine learning model. Since a non-zero dose of charged particles is used as a parameter in the physics-based model, the training set can become more similar to the actual inspection image, thereby reducing the inference error of the machine learning model. Compared with the quadruple scanning technology, the simulation technology can generate simulated inspection images in a shorter time. By using the disclosed solution, the coupling of charging artifacts with artifacts caused by other factors (e.g., scanning direction, geometric features, or actual artifacts) can be minimized.
[0035] For the sake of clarity, the relative sizes of components in the drawings may be exaggerated. In the following description of the drawings, identical or similar reference numerals denote identical or similar components or entities, and only the differences with respect to the various embodiments are described.
[0036] As used herein, unless expressly stated otherwise, the term "or" encompasses all possible combinations unless not feasible. For example, if a component is specified to include A or B, then unless expressly stated otherwise or not feasible, the component may include A, or B, or A and B. As a second example, if a component is specified to include A, B, or C, then unless expressly stated otherwise or not feasible, the component may include A, or B, or C, or A and B, or A and C, or B and C, or A and B and C.
[0037] Figure 1An exemplary charged particle beam inspection (CPBI) system 100 consistent with some embodiments of the present disclosure is shown. The CPBI system 100 can be used for imaging. For example, the CPBI system 100 can use an electron beam for imaging. Figure 1 As shown, the CPBI system 100 includes a main chamber 101, a load / lock chamber 102, a beam tool 104, and an equipment front end module (EFEM) 106. The beam tool 104 is located in the main chamber 101. The EFEM 106 includes a first loading port 106a and a second loading port 106b. The EFEM 106 may include additional loading ports. The first loading port 106a and the second loading port 106b receive a wafer front opening transport box (FOUP) containing wafers (e.g., semiconductor wafers or wafers made of other (multiple) materials) or samples to be inspected (wafers and samples can be used interchangeably). A "batch" is a plurality of wafers that can be loaded as a batch for processing.
[0038] One or more robots (not shown) in the EFEM 106 can transport the wafer to the load / lock chamber 102. The load / lock chamber 102 is connected to a load / lock vacuum pump system (not shown), which removes gas molecules in the load / lock chamber 102 to reach a first pressure below atmospheric pressure. After reaching the first pressure, one or more robots (not shown) can transport the wafer from the load / lock chamber 102 to the main chamber 101. The main chamber 101 is connected to a main chamber vacuum pump system (not shown), which removes gas molecules in the main chamber 101 to reach a second pressure below the first pressure. After reaching the second pressure, the wafer will be inspected by the beam tool 104. The beam tool 104 can be a single beam system or a multi-beam system.
[0039] The controller 109 is electrically connected to the beam tool 104. The controller 109 may be a computer that can perform various controls of the CPBI system 100. Figure 1 The controller 109 is shown in FIG. 1 as being external to the structure including the main chamber 101 , the load / lock chamber 102 , and the EFEM 106 , but it will be appreciated that the controller 109 may be part of the structure.
[0040] In some embodiments, the controller 109 may include one or more processors (not shown). The processor may be a general or special electronic device capable of manipulating or processing information. For example, the processor may include any number of any combination of the following: a central processing unit (or "CPU"), a graphics processing unit (or "GPU"), an optical processor, a programmable logic controller, a microcontroller, a microprocessor, a digital signal processor, an intellectual property (IP) core, a programmable logic array (PLA), a programmable array logic (PAL), a general array logic (GAL), a complex programmable logic device (CPLD), a field programmable gate array (FPGA), a system on a chip (SoC), an application-specific integrated circuit (ASIC), and any type of circuit capable of data processing. The processor may also be a virtual processor, which includes one or more processors distributed on multiple machines or devices coupled via a network.
[0041] In some embodiments, the controller 109 may also include one or more memories (not shown). The memory may be a general or specific electronic device capable of storing processor-accessible code and data (e.g., via a bus). For example, the memory may include any number of any combination of the following: random access memory (RAM), read-only memory (ROM), optical disk, magnetic disk, hard disk, solid-state drive, flash drive, secure digital (SD) card, memory stick, compact flash (CF) card, or any type of storage device. The code may include an operating system (OS) and one or more application programs (or "apps") for specific tasks. The memory may also be a virtual memory, which includes one or more memories distributed on multiple machines or devices coupled via a network.
[0042] Figure 2 An example imaging system 200 is shown in accordance with an embodiment of the disclosure. Figure 2 The beam tool 104 can be configured for the CPBI system 100. The beam tool 104 can be a single beam device or a multi-beam device. Figure 2As shown, the beam tool 104 includes a motorized sample stage 201, and a wafer holder 202 supported by the motorized sample stage 201 for fixing a wafer 203 to be inspected. The beam tool 104 also includes an objective lens assembly 204, a charged particle detector 206 (including charged particle sensor surfaces 206a and 206b), an objective lens aperture 208, a converging lens 210, a beam limiting aperture 212, a gun aperture 214, an anode 216, and a cathode 218. In some embodiments, the objective lens assembly 204 may include a modified swinging objective delayed immersion lens (SORIL), which includes a pole piece 204a, a control electrode 204b, a deflector 204c, and an excitation coil 204d. The beam tool 104 may also include an energy dispersive X-ray spectrometer (EDS) detector (not shown) to characterize the material on the wafer 203.
[0043] A primary charged particle beam 220 (or simply "primary beam 220"), such as an electron beam, is emitted from the cathode 218 by applying an accelerating voltage between the anode 216 and the cathode 218. The primary beam 220 passes through the gun aperture 214 and the beam limiting aperture 212, both of which can determine the size of the charged particle beam entering the converging lens 210, which is located below the beam limiting aperture 212. The converging lens 210 focuses the primary beam 220 before the beam enters the objective lens aperture 208 to set the size of the charged particle beam before entering the objective lens assembly 204. The deflector 204c deflects the primary beam 220 to facilitate beam scanning on the wafer. For example, during the scanning process, the deflector 204c can be controlled to deflect the primary beam 220 to different locations on the top surface of the wafer 203 at different points in time in sequence to provide data for image reconstruction of different portions of the wafer 203. In addition, the deflector 204c can also be controlled to deflect the primary beam 220 to different sides of the wafer 203 at a specific position at different time points to provide data for stereoscopic image reconstruction of the wafer structure at the position. In addition, in some embodiments, the anode 216 and the cathode 218 can generate multiple primary beams 220, and the beam tool 104 can include multiple deflectors 204c to simultaneously project multiple primary beams 220 to different parts / sides of the wafer to provide data for image reconstruction of different parts of the wafer 203.
[0044] The excitation coil 204d and the pole piece 204a generate a magnetic field that starts at one end of the pole piece 204a and ends at the other end of the pole piece 204a. A portion of the wafer 203 scanned by the primary beam 220 may be immersed in the magnetic field and may be charged, thereby generating an electric field. The electric field reduces the energy of the primary beam 220 that strikes near the surface of the wafer 203 before the primary beam 220 collides with the wafer 203. The control electrode 204b is electrically isolated from the pole piece 204a and controls the electric field on the wafer 203 to prevent the wafer 203 from slightly doming and to ensure proper beam focusing.
[0045] After receiving the primary beam 220, a secondary charged particle beam 222 (or "secondary beam 222"), such as a secondary electron beam, may be emitted from a portion of the wafer 203. The secondary beam 222 may form a beam spot on the sensor surfaces 206a and 206b of the charged particle detector 206. The charged particle detector 206 may generate a signal (e.g., voltage, current, etc.) representing the intensity of the beam spot and provide the signal to the image processing system 250. The intensity of the secondary beam 222 and the resulting beam spot may vary depending on the external or internal structure of the wafer 203. In addition, as described above, the primary beam 220 may be projected onto different locations on the top surface of the wafer or on different sides of the wafer at a specific location to generate secondary beams 222 (and resulting beam spots) of different intensities. Therefore, by mapping the intensity of the beam spot with the location of the wafer 203, the processing system can reconstruct an image reflecting the internal or surface structure of the wafer 203.
[0046] The imaging system 200 can be used to inspect a wafer 203 on a motorized sample stage 201 and includes a beam tool 104, as described above. The imaging system 200 can also include an image processing system 250, which includes an image acquisition device 260, a memory 270, and a controller 109. The image acquisition device 260 can include one or more processors. For example, the image acquisition device 260 can include a computer, a server, a mainframe, a terminal, a personal computer, any type of mobile computing device, etc., or a combination thereof. The image acquisition device 260 can be connected to the detector 206 of the beam tool 104 through a medium such as an electrical conductor, a fiber optic cable, a portable storage medium, IR, Bluetooth, the Internet, a wireless network, radio, or a combination thereof. The image acquisition device 260 can receive a signal from the detector 206 and can construct an image. Therefore, the image acquisition device 260 can acquire an image of the wafer 203. The image acquisition device 260 can also perform various post-processing functions, such as generating a contour, superimposing an indicator on the acquired image, etc. The image acquisition device 260 can perform brightness and contrast adjustments on the acquired image, etc. The memory 270 may be a storage medium such as a hard disk, cloud storage, random access memory (RAM), other types of computer-readable memory, etc. The memory 270 may be coupled to the image acquirer 260 and may be used to save the scanned raw image data as a raw image, a post-processed image, or other auxiliary processed images. The image acquirer 260 and the memory 270 may be connected to the controller 109. In some embodiments, the image acquirer 260, the memory 270, and the controller 109 may be integrated together as a control unit.
[0047] In some embodiments, the image acquirer 260 may acquire one or more images of the sample based on the imaging signal received from the detector 206. The imaging signal may correspond to a scanning operation for performing charged particle imaging. The acquired image may be a single image including multiple imaging regions. The single image may be stored in the memory 270. The single image may be an original image that may be divided into multiple regions. Each region may include an imaging region that includes a feature of the wafer 203.
[0048] Figure 3 is a schematic diagram illustrating an example process for charging effects caused by a charged particle beam tool (e.g., a scanning charged particle microscope) consistent with some embodiments of the present disclosure. A scanning charged particle microscope (“SCPM”) generates a primary charged particle beam (e.g., Figure 2 The primary charged particle beam 220 in the embodiment of the present invention can be, for example, a primary charged particle beam. Figure 3 In the embodiment of the present invention, electrons of the primary electron beam 302 are projected onto the surface of the insulator sample 304. The insulator sample 304 may be an insulating material, such as a non-conductive resist, a silicon dioxide layer, or the like.
[0049] The electrons of the primary electron beam 302 may penetrate the surface of the insulator sample 304 to a certain depth (e.g., several nanometers) and interact with particles of the insulator sample 304 in the interaction volume 306. Some electrons of the primary electron beam 302 may elastically interact with particles in the interaction volume 306 (e.g., in the form of elastic scattering or collision) and may be reflected or rebounded from the surface of the insulator sample 304. The elastic interaction conserves the total kinetic energy of the interacting entities (e.g., the electrons of the primary electron beam 302 and the particles of the insulator sample 304), wherein the kinetic energy of the interacting entities is not converted into other forms of energy (e.g., thermal energy, electromagnetic energy, etc.). Such reflected electrons generated by the elastic interaction may be referred to as backscattered electrons (BSE), such as Figure 3 BSE 308 in the primary electron beam 302. Some electrons in the primary electron beam 302 may interact inelastically with particles in the interaction volume 306 (e.g., in the form of inelastic scattering or collisions). Inelastic interactions do not conserve the total kinetic energy of the interacting entities, wherein some or all of the kinetic energy of the interacting entities may be converted into other forms of energy. For example, through inelastic interactions, the kinetic energy of some electrons in the primary electron beam 302 may cause electron excitations and transitions in atoms of the particles. Such inelastic interactions may also generate electrons that leave the surface of the insulator sample 304, which may be referred to as secondary electrons (SEs), such as Figure 3The yield or emission rate of BSE and SE may depend on factors such as the electron energy of the primary electron beam 302 and the material under examination. The electron energy of the primary electron beam 302 may be imparted in part by its accelerating voltage (e.g., Figure 2 The number of BSEs and SEs may be more or less (or even the same) than the injected electrons of the primary electron beam 302. The imbalance of the incoming and outgoing electrons may result in the accumulation of charge (e.g., positive or negative charge) on the surface of the insulator sample 304. Since the insulator sample 304 is non-conductive and cannot be grounded, the extra charge may accumulate locally on or near the surface of the insulator sample 304, which may be referred to as a SCPM-induced (e.g., SEM-induced) charging effect.
[0050] Typically, insulating materials (e.g., many types of photoresists) may be positively charged because the outgoing electrons (e.g., BSE or SE) typically exceed the incident electrons of the SEM's primary electron beam, and the extra positive charge can accumulate on or near the surface of the insulator material. Figure 3 The SEM-induced charging effect is shown to occur and cause positive charges to accumulate on the surface of the insulator sample 304. The positive charges can be physically modeled as holes 312. Figure 3 In the example of FIG. 3 , electrons of the primary electron beam 302 injected into the interaction volume 306 may diffuse to adjacent volumes of the interaction volume 306, which may be referred to as diffuse electrons, such as diffuse charges 314. The diffuse electrons may recombine with positive charges (e.g., holes 312) in the insulator sample 304, such as recombinant pairs 316. The diffusion and recombination of charges may affect the distribution of holes 312. Holes 312 may cause problems, such as attracting BSEs and SEs back to the surface of the insulator sample 304, increasing the landing energy of electrons of the primary electron beam 302, causing electrons of the primary electron beam 302 to deviate from their intended landing points, or interfering with the surface of the insulator sample 304 and electron detectors (such as BSEs and SEs) of the BSEs and SEs. Figure 2 The electric field between the electron detector 206).
[0051] The SCPM-induced charging effect may attenuate and distort the SCPM signal received by the electron detector, thereby further distorting the generated SCPM image. In addition, since the insulator sample 304 is non-conductive, positive charge may accumulate along the path of the primary electron beam 302 as the primary electron beam 302 scans across its surface. This accumulation of positive charge may increase or complicate the distortion in the generated SEM image. This distortion caused by the SCPM-induced charging effect may be referred to as SCPM-induced charging artifacts. SCPM-induced charging artifacts may cause errors in the estimation of the geometric dimensions of the manufactured structure, or lead to incorrect identification of defects during inspection.
[0052] refer to Figure 3 As an example, the surface of the insulator sample 304 may include various features, such as lines, grooves, corners, edges, holes, etc. These features may be at different heights. When the primary electron beam 302 is scanned across features with height changes (especially sudden height changes), SEs can be generated and collected from the surface and the edges of the features and even hidden surfaces (e.g., the side walls of the edges). These additional SEs may cause the edges or contours in the SEM image to be brighter. This effect can be called "edge enhancement" or "edge blurring". The charging effect caused by the SEM may also be aggravated by the escape of additional SEs (i.e., leaving additional positive charges on the sample surface). The aggravated charging effect may cause different charging artifacts to appear in the edge blur area of the SEM image, depending on whether the height of the surface is increased or decreased when the primary electron beam 302 is scanned. Contour identification techniques can be applied to identify one or more contours in the SEM image. The identified contour indicates the location of the edge blur (i.e., the area with additional positive charge).
[0053] Consistent with some embodiments of the present disclosure, a computer-implemented method for reducing charging artifacts in an inspection image is disclosed. In some embodiments, the inspection image may be an image of a structure (e.g., an integrated circuit) fabricated on a sample (e.g., a wafer die). As used herein, the inspection image may refer to an image obtained by a charged particle inspection device (e.g., Figure 1 System 100 or Figure 2 An image generated as a result of an inspection process performed by the system 200). For example, the inspection image may be Figure 2 The SEM image generated by the image processing system 250 in the present disclosure can refer to a structure manufactured on a sample (e.g., a wafer) in a semiconductor manufacturing process (e.g., a photolithography process). For example, the manufacturing structure can be manufactured in a die of the sample.
[0054] The computer-implemented method may include acquiring a set of inspection images, wherein each inspection image in the set of inspection images may include a charging artifact. Acquiring, as used herein, may refer to accepting, adopting, admitting, obtaining, acquiring, retrieving, receiving, reading, accessing, collecting, or any operation for inputting data. In some embodiments, the set of inspection images may be measured inspection images. For example, the set of inspection images may be acquired by performing multiple scans on a test sample (e.g., the same or different from the sample). Each of the multiple scans may use a different acquisition setting. For example, the acquisition setting may include at least one of the following: a beam current, a scan direction, or a landing energy of the beam.
[0055] In some embodiments, the inspection image set may be a simulated inspection image. To generate the inspection image set, in some embodiments, the method may include generating a simulated inspection image set. In some embodiments, each simulated inspection image in the simulated inspection image set may include charging artifacts, and thus, the simulated inspection image set may be directly used as the inspection image set.
[0056] In some embodiments, each inspection image in the inspection image set may not include charging artifacts. In this case, the simulated inspection image set can be generated using a Monte Carlo-based technique (e.g., a Monte Carlo SEM simulator). In some embodiments, the Monte Carlo-based technique can simulate the ray trajectories of a charged particle (e.g., an electron) incident into a sample (e.g., a structure on a wafer), the ray trajectories of one or more secondary charged particles (e.g., secondary electrons) emerging from the sample due to interactions between the incident charged particle and atoms of the sample, and parameters of the incident charged particle and the secondary charged particle (e.g., energy, momentum, or any other energy or kinematic characteristic). The Monte Carlo-based technique can also simulate the interaction of the secondary charged particles with a detector of a charged particle inspection device (e.g., Figure 2 The graphical representation of the inspection image generated by the detector due to the interaction between the secondary charged particles and the detector material can be a simulated image.
[0057] After generating a set of simulated inspection images that do not contain charging artifacts, the computer-implemented method may further include generating a set of inspection images by applying a physics-based model to the set of simulated inspection images. In some embodiments, the physics-based model may simulate charging effects based on parameters related to incident charged particles (e.g., charge density, angle of incidence, scanning direction, scanning speed, dose, charge diffusion time, etc.). Based on these parameters, the physics-based model may determine interaction features (e.g., Coulomb forces, local barrier potentials, etc.) that may affect the trajectories of secondary electrons or backscattered electrons. For example, if the secondary electrons have a potential lower than the calculated local barrier potential, the secondary electrons may be considered to be non-escapable, which may reduce the secondary electron yield and affect the simulation results.
[0058] For example, Figure 4 4 is a schematic diagram illustrating an example process 400 for reducing charging artifacts in an inspection image consistent with some embodiments of the present disclosure. Process 400 includes stages 402, 404, and 408. In stage 402, a seed profile 402A may be used as an input to a Monte Carlo SEM simulator to generate a simulated inspection image. For example, seed profile 402A may be generated based on design data (e.g., a GDSII design layout). Figure 4As shown, seed outline 402A includes a variety of patterns, such as horizontal lines and vertical lines. Based on seed outline 402A, a three-dimensional finite element mesh 402B can be generated by a meshing program. The meshing program can be independent of or as part of the Monte Carlo SEM simulator. Based on mesh 402B, the Monte Carlo SEM simulator can generate a simulated inspection image 402C. The simulated inspection image 402C does not include any charging artifacts, which are represented by edge blurring (e.g., white shadows around the pattern) in the simulated inspection image 402C.
[0059] At stage 404, simulated inspection image 402C may be input to a physics-based model 404A (eg, a forward charging model) to generate simulated inspection image 404B. Simulated inspection image 404B includes charging artifacts represented by edge blurring (eg, white shading on the right side of the pattern) in simulated inspection image 404B.
[0060] Consistent with some embodiments of the present disclosure, the computer-implemented method may further include training a machine learning model using the inspection image set as input. The machine learning model may output a set of decoupled features of the inspection image set. Decoupled features as used herein may refer to features that are not entangled, separate, independent, or have no relationship with each other, wherein the value of a first feature has no correlation or little correlation with the value of a second feature. For example, referring to Figure 4 , after stage 404, the simulated inspection image 404B may be input to the machine learning model 406 to train the machine learning model 406. In some embodiments, the machine learning model may include an autoencoder, and the decoupled feature set may include a code set of the autoencoder.
[0061] The autoencoder in the present disclosure may refer to a neural network model (or simply "neural network"). The neural network used herein may refer to a computational model that analyzes potential relationships in an input data set by imitating the human brain. Similar to biological neural networks, a neural network may include a set of connected units or nodes (called "neurons"), which are constructed into different layers, wherein each connection (also called "edge") can obtain and send signals between neurons in adjacent layers in a manner similar to synapses in a biological brain. The signal can be any type of data (e.g., real number). Each neuron can obtain one or more signals as input and output another signal by applying a nonlinear function to the input signal. Neurons and edges can usually be weighted by corresponding weights to represent the knowledge that the neural network has acquired. During the training process (similar to the learning process of a biological brain), weights can be adjusted (e.g., by increasing or decreasing their values) to change the signal strength between neurons, thereby improving the performance accuracy of the neural network. Neurons can apply a threshold function (called an "activation function") to the output value of their nonlinear function so that a signal is output only when the aggregate value (e.g., weighted sum) of the output value of the nonlinear function exceeds a threshold determined by the threshold function. Neurons in different layers can transform their input signals in different ways (e.g., by applying different nonlinear functions or activation functions). The output of the last layer (called the "output layer") can output the analysis results of the neural network, such as the classification of the input data set (e.g., in the case of image recognition), a numerical result, or any type of output data used to obtain analysis results from the input data.
[0062] Neural network training as used herein may refer to a process of improving the accuracy of a neural network output. In general, training may be divided into three types: supervised training, unsupervised training, and reinforcement training. In supervised training, a target output data set (also referred to as a "label" or "ground truth") may be generated based on an input data set using methods other than a neural network. The input data set may then be fed to a neural network to generate an output data set that is typically different from the target output data. Based on the difference between the output data and the target output data, the weights of the neural network may be adjusted according to a rule. If this adjustment is successful, the neural network may generate another output data set that is more similar to the target output data using the same input data in the next iteration. If this adjustment is unsuccessful, the weights of the neural network may be adjusted again. After a sufficient number of iterations, the training process may be terminated according to one or more predetermined criteria (e.g., the difference between the final output data and the target output data is less than a predetermined threshold, or the number of iterations reaches a predetermined threshold). The trained neural network may be used to analyze other input data.
[0063] In unsupervised training, a neural network is trained without any external metrics (e.g., labels) to identify patterns in input data rather than generate labels for them. Typically, a neural network can analyze shared properties (e.g., similarities and differences) and relationships between input data elements according to one or more predetermined rules or algorithms (e.g., principal component analysis, clustering, anomaly detection, or latent variable identification). The trained neural network can extrapolate the identified relationships to other input data.
[0064] In reinforcement learning, a neural network is trained in a trial-and-error manner without any external metrics (e.g., labels) to maximize the benefits of decisions. In reinforcement training, the input data set to the neural network may vary. For example, during training, a reward value or a penalty value may be determined for the output of the neural network according to one or more rules, and the weights of the neural network may be adjusted to maximize the reward value (or minimize the penalty value). The trained neural network can apply its learned decision-making knowledge to other input data.
[0065] During the training process of a neural network, a loss function (or "cost function") can be used to evaluate the output data. As used herein, a loss function can map the output data of a machine learning model (e.g., a neural network) to a real number (referred to as a "loss" or "cost") that intuitively represents the loss or error associated with the output data (e.g., representing the difference between the output data and the target output data). The training of a neural network can seek to maximize or minimize the loss function (e.g., by pushing the loss to a local maximum or local minimum in a loss curve). For example, one or more parameters of the neural network can be adjusted or updated to maximize or minimize the loss function. After adjusting or updating one or more parameters, the neural network can acquire new input data in the next iteration of its training. When the loss function is maximized or minimized, the training of the neural network can be terminated.
[0066] As an example, Figure 5 is a schematic diagram of an example neural network 500 consistent with some embodiments of the present disclosure. Figure 5 As shown, the neural network 500 may include an input layer 520, which receives inputs, including inputs 510-1, ..., inputs 510-m (m is an integer). For example, the inputs of the neural network 500 may include any structured or unstructured data (e.g., images). In some embodiments, the neural network 500 may obtain multiple inputs at the same time. For example, in Figure 5In some embodiments, the input layer 520 may acquire m inputs simultaneously, such that the input layer 520 receives input 510-1 in a first cycle (e.g., in a first inference) and pushes data from input 510-1 to a hidden layer (e.g., hidden layer 530-1), then receives a second input in a second cycle (e.g., in a second inference) and pushes data from the second input to the hidden layer, and so on. The input layer 520 may acquire any number of inputs simultaneously, continuously, or in any manner that groups the inputs.
[0067] The input layer 520 may include one or more nodes, including node 520-1, node 520 2, ..., node 520-a (a is an integer). Nodes (also called "machine perception" or "neurons") can simulate the functions of biological neurons. Each node can apply an activation function to the received input (e.g., one or more of input 510-1, ..., input 510-m). The activation function may include a Heaviside step function, a Gaussian function, a multivariate quadratic function, an inverse multivariate quadratic function, a sigmoid function, a rectified linear unit (ReLU) function (e.g., a ReLU6 function or a Leaky ReLU function), a hyperbolic tangent ("tanh") function, or any nonlinear function. The output of the activation function may be weighted by a weight associated with the node. The weight may include a positive value between 0 and 1, or any value that can scale the output of certain nodes in a layer to be larger or smaller than the output of other nodes in the same layer.
[0068] like Figure 5 As further shown, neural network 500 includes multiple hidden layers, including hidden layer 530-1, ..., hidden layer 530-n (n is an integer). When neural network 500 includes multiple hidden layers, it can be referred to as a "deep neural network" (DNN). Each hidden layer can include one or more nodes. For example, in Figure 5 , hidden layer 530-1 includes node 530-1-1, node 530-1-2, node 530-1-3, ..., node 530-1-b (b is an integer), and hidden layer 530-n includes node 530-n-1, node 530-n-2, node 530-n-3, ..., node 530-nc (c is an integer). Similar to the nodes of the input layer 520, the nodes of the hidden layer can apply the same or different activation functions to the outputs of the connected nodes from the previous layer, and weight the outputs from the activation functions by the weights associated with the nodes.
[0069] like Figure 5As further shown, the neural network 500 may include an output layer 540, which ultimately determines the output, including output 550-1, output 550-2, ..., output 550-d (d is an integer). The output layer 540 may include one or more nodes, including node 540-1, node 540-2, ..., node 540-d. Similar to the nodes of the input layer 520 and the hidden layer, the nodes of the output layer 540 may apply an activation function to the output of the connected nodes from the previous layer, and weight the output from the activation function by the weight associated with the node.
[0070] although Figure 5 , each hidden layer of the neural network 500 is depicted as being connected to each node of the previous and next layers (referred to as "fully connected"), but the layers of the neural network 500 may use any connection scheme. For example, one or more layers of the neural network 500 (e.g., the input layer 520, the hidden layer 530-1, ..., the hidden layer 530-n, or the output layer 540) may use a convolutional scheme, a sparse connection scheme, or any other scheme. Figure 5 The fully connected scheme depicted in uses fewer connections between a layer and the previous layer.
[0071] In addition, despite Figure 5 The inputs and outputs of the layers of neural network 500 are depicted as forward propagation (e.g., feeding from input layer 520 to output layer 540, referred to as a "feed-forward network"), but neural network 500 may additionally or alternatively use back propagation (e.g., feeding data from output layer 540 toward input layer 520) for other purposes. For example, back propagation may be implemented using long short-term memory nodes (LSTM). Thus, although neural network 500 is depicted as being similar to a convolutional neural network (CNN), neural network 500 may include a recurrent neural network (RNN) or any other neural network.
[0072] The autoencoder in the present disclosure may include an encoder submodel (or simply referred to as "encoder") and a decoder submodel (or simply referred to as "decoder"), wherein both the encoder and the decoder are symmetric neural networks. The encoder of the autoencoder can obtain input data and output a compressed representation of the input data (also referred to as "potential code" or simply referred to as "code" herein). The code of the input data may include extracted features of the input data. For example, the code may include a feature vector, a feature map, a feature matrix, a pixelated feature image, or any form of data representing the extracted features of the input data. During training, the decoder of the autoencoder can obtain the code output by the encoder and output decoded data. The goal of training the autoencoder may be to minimize the difference between the input data and the decoded data. After the training is completed, in the application of the trained autoencoder (referred to as the "inference phase"), the input data may be fed to the encoder to generate the code, and the decoder of the autoencoder is not used. The code can be used as purposeful output data or feature extraction data for other applications (e.g., for training different machine learning models).
[0073] As an example, Figure 6 is a schematic diagram illustrating an example autoencoder 600 consistent with some embodiments of the present disclosure. Figure 6 As shown, the autoencoder 600 includes an encoder 602 and a decoder 604. The encoder 602 and the decoder 604 are both neural networks (e.g., similar to Figure 5 The neural network 500 in FIG. 5 ). The encoder 602 includes an input layer 620 (e.g., similar to Figure 5 ), hidden layer 630 (e.g., similar to Figure 5 The bottleneck layer 640 can be used as the output layer of the encoder 602 (e.g., similar to Figure 5 It should be noted that the encoder 602 may include one or more hidden layers (in addition to the hidden layer 630) and is not limited to the same Figure 6 The decoder 604 includes a hidden layer 650 (e.g., similar to Figure 5 ) and the output layer 660 (e.g., similar to Figure 5 The bottleneck layer 640 may be used as the input layer of the decoder 604 (e.g., similar to Figure 5 It should be noted that decoder 604 may include one or more hidden layers (in addition to hidden layer 650) and is not limited to Figure 6 The example embodiments are shown and described in association. Figure 6 The dashed lines between the layers of the autoencoder 640 in represent example connections between neurons in adjacent layers.
[0074] like Figure 6 As shown, the structure of encoder 602 and the structure of decoder 604 are symmetrical (e.g., similar in reverse order). For example, hidden layer 630 may include the same number of neurons (e.g., 4) as hidden layer 650, and input layer 620 may include the same number of neurons (e.g., 9) as output layer 660. In addition, the connection between the neurons of input layer 620 and the neurons of hidden layer 630 may be symmetrical with the connection between the neurons of hidden layer 650 and the neurons of output layer 660, and the connection between the neurons of hidden layer 630 and the neurons of bottleneck layer 640 may be symmetrical with the connection between the neurons of bottleneck layer 640 and the neurons of hidden layer 650.
[0075] like Figure 6 As shown, the encoder 602 may receive input data at the input layer 620 ( Figure 6 ), and outputs a compressed representation of the input data at the bottleneck layer 640. The compressed representation is Figure 6 606. For example, the code 606 may include a feature vector, a feature map, a feature matrix, a pixelated feature image, or any form of data representing extracted features of the input data. The decoder 604 may receive the code 606 at the hidden layer 650 and output the decoded data at the output layer 660 ( Figure 6 602). During the training of the autoencoder 600, the difference between the decoded data and the input data can be minimized. After the training of the autoencoder 600 is completed, the encoder 602 can be used in the reference phase. Non-training data can be input to the encoder 602 to generate a code 606 as a compressed representation of the non-training data. The code 606 output by the encoder 602 in the reference phase can be used as a purposeful output data or as feature extraction data for other applications (e.g., for training different machine learning models).
[0076] In some embodiments, the decoupled feature set output by the machine learning model described herein may include at least one of the following: a feature representing a scanning direction, a feature representing a pattern, or a feature representing a charged particle dose. For example, if the machine learning model is an autoencoder (e.g., autoencoder 600), the decoupled feature set may be a code set (e.g., code 606) that includes at least one of the following: a code representing a scanning direction, a code representing a pattern, or a code representing a charged particle dose.
[0077] Consistent with some embodiments of the present disclosure, the computer-implemented method may further include applying the trained machine learning model to the inspection image to generate an output inspection image. The output inspection image may include fewer charging artifacts than the inspection image. For example, referring to Figure 4, the machine learning model 406 can be applied to inspect the image ( Figure 4 ) to generate an output inspection image 408 to reduce charging artifacts in the inspection image.
[0078] In some embodiments, the machine learning model may include an autoencoder (e.g., Figure 6 The decoupled feature set may include a code set of the autoencoder (e.g., Figure 6 The code set may include at least one of the following: a code indicating a scanning direction, a code indicating a pattern feature, or a code indicating a charged particle dose. In such an embodiment, to generate an output inspection image, an encoder of the trained autoencoder (e.g., Figure 6 The encoder 602 described in conjunction with the above) is applied to the inspection image to generate a code set. The code representing the charged particle dose can then be set to a zero value. Thereafter, the decoder of the trained autoencoder (e.g., Figure 6 A decoder 604 described in association is applied to the code set to generate an output inspection image, wherein the code set may include a changed code representing a charged particle dose.
[0079] For example, Figure 7 is a schematic diagram illustrating an example process 700 for reducing charging artifacts in an inspection image 702 using a trained autoencoder 704 consistent with some embodiments of the present disclosure. Figure 7 As shown, the inspection image 702 can be obtained in actual measurement rather than in simulation. The inspection image 702 includes multiple patterns (represented by black circular holes). The pattern exhibits charging artifacts (represented by white shadows in the lower half of the black circular holes). Such charging artifacts may degrade the performance of the edge detection algorithm and further affect the defect detection of the inspection image 702.
[0080] like Figure 7 As shown, the automatic encoder 704 includes an encoder 706 and a decoder 710. The encoder 706 can obtain the inspection image 702 as input and output a code 708. The code 708 includes a code 712 representing pattern features (for example, the pattern represented by the black circular holes in the inspection image 702), a code 714 representing the scanning direction, and a code 716 representing the dose of charged particles incident on the sample during the scan. Figure 7 As shown, after generating code 708, code 716 may become zero value 718. Decoder 710 may be applied to code 708 (except that code 716 has been changed to zero value 718) to generate output image 720. Compared to inspection image 702, charging artifacts in output image 720 may be reduced or eliminated.
[0081] In some embodiments, the output inspection image may include a pattern with a peripheral edge blur. For example, the peripheral edge blur may exist in all directions of the pattern and surround the pattern. The peripheral edge blur may also have substantially the same intensity in all directions of the pattern (e.g., with a maximum fluctuation of 5%). For example, referring to Figure 7 , each pattern in the output image 720 has surrounding edge blurring (indicated by white shadows surrounding each black circular hole, respectively). Since there are fewer charging artifacts, the output image 720 can be used for edge detection of its patterns, which can generate more accurate results.
[0082] In some embodiments, domain adaptation techniques may be used to train a machine learning model (e.g., an autoencoder 704). A domain as used herein may refer to a drawing, a feature space, or a setting for presenting data. The domain adaptation techniques used herein may refer to a machine learning model (e.g., an autoencoder) or a statistical model that can convert input data from a source domain to a target domain. The source domain and the target domain may share common data features, but have different distributions or representations of common data features. In some embodiments, the domain adaptation techniques may include cycle-consistent domain adaptation techniques. For example, a cycle-consistent domain adaptation technique may convert a sample image in a full-color space (e.g., in a real-world color space) to the same image in a grayscale color space (e.g., from the perspective of a SEM), where the image of the sample is the input data, the source domain is a full-color space, and the target domain is a grayscale color space. The cycle consistency used herein may refer to the characteristics of the domain adaptation technique, that is, the domain adaptation technique can convert data bidirectionally and indistinguishably between the source domain and the target domain. For example, a cycle-consistent domain adaptation technique (e.g., an autoencoder) can acquire first data (e.g., a first image of a sample) in a source domain (e.g., in a full color space) and output second data (e.g., a second image of the same or similar sample) in a target domain (e.g., in a grayscale color space), and can also receive the second data in the source domain and output third data (e.g., a third image of the same or similar sample), where the third data is indistinguishable from the first data. By applying the cycle-consistent domain adaptation technique to a simulated SEM inspection image with a clear appearance, image features associated with the object (e.g., brightness, contrast, etc.) can be changed, such as by including a stronger and asymmetric edge blurring effect, to convert the simulated SEM image with a clear appearance into a SEM image with a more realistic appearance (e.g., more similar to a measured SEM inspection image). Similarly, by applying the cycle-consistent domain adaptation technique to the converted more realistic SEM image, a simulated SEM inspection image with a clear appearance can be reproduced.
[0083] In some embodiments, the inspection image set described herein may include a first simulated inspection image, a second simulated inspection image, a third simulated inspection image, and a fourth simulated inspection image. The first simulated inspection image and the second simulated inspection image may have the same pattern features and different charging characteristics (e.g., scanning direction). The third simulated inspection image and the fourth simulated inspection image may have different pattern features. In some embodiments, in addition to different pattern features, the third simulated inspection image and the fourth simulated inspection image may have the same or different charging characteristics (e.g., scanning direction). In order to train a machine learning model, in response to acquiring the first simulated inspection image and the second simulated inspection image, the encoder of the autoencoder may be applied to the first simulated inspection image to generate a first code set, and may be applied to the second simulated inspection image to generate a second code set. Then, in response to acquiring the third simulated inspection image and the fourth simulated inspection image, the encoder may be applied to the third simulated inspection image to generate a third code set, and applied to the fourth simulated inspection image to generate a fourth code set. Afterwards, the autoencoder may be trained based on the first code set, the second code set, the third code set, and the fourth code set.
[0084] In some embodiments, the first code set may include a first code representing a first pattern feature of a first simulated inspection image. The second code set may include a second code representing a second pattern feature of a second simulated inspection image. The third code set may include a third code representing a first charged particle dose associated with the third simulated inspection image. The fourth code set may include a fourth code representing a second charged particle dose associated with a fourth simulated inspection image. In this case, in order to train the autoencoder based on the first code set, the second code set, the third code set, and the fourth code set, the first code and the second code may be exchanged to generate a first updated code set and a second updated code set, wherein the first updated code set includes the second code and the second updated code set includes the first code. Then, the third code may be set to a first random value to generate a third updated code set, and the fourth code may be set to a second random value to generate a fourth updated code set. Thereafter, the autoencoder may be trained based on the first updated code set, the second updated code set, the third updated code set, and the fourth updated code set.
[0085] In some embodiments, in order to train an autoencoder based on a first updated set of codes, a second updated set of codes, a third updated set of codes, and a fourth updated set of codes, a loss function may be determined based on the first updated set of codes and the second updated set of codes. Then, the decoder of the autoencoder may be applied to the third updated set of codes to generate a first intermediate output image, and to the fourth updated set of codes to generate a second intermediate output image. The encoder may be applied to the first intermediate output image to generate a fifth set of codes, and to the second intermediate output image to generate a sixth set of codes. The fifth set of codes may include a fifth code representing a third charged particle dose associated with the first intermediate output image. The sixth set of codes may include a sixth code representing a fourth charged particle dose associated with the second intermediate output image. Then, the loss function is updated according to a first difference and a second difference, wherein the first difference is between the value of the third code and the value of the fifth code, and the second difference is between the value of the fourth code and the value of the sixth code. Thereafter, the autoencoder is trained using the updated loss function.
[0086] For example, Figure 8 It is shown that some embodiments of the present disclosure are consistent with the training Figure 7 Schematic diagram of an example process 800 of an autoencoder 704. Figure 8 As shown, the autoencoder 704 includes an encoder 706 and a decoder 710. During the training phase, in response to acquiring a first simulated inspection image 802, the encoder 706 may be applied to the first simulated inspection image 802 to generate a first code set, the first code set including a code 712 representing a pattern feature (e.g., a pattern represented by a black circular hole in the first simulated inspection image 802), a code 714 representing a scanning direction (e.g., a right direction), and a code 716 representing a dose of charged particles incident on a sample corresponding to the first simulated inspection image 802 during scanning. In response to acquiring a second simulated inspection image 804, the encoder 706 may also be applied to the second simulated inspection image 804 to generate a second code set, the second code set including a code 713 representing a pattern feature (e.g., a pattern represented by a black circular hole in the second simulated inspection image 804), a code 715 representing a scanning direction (e.g., a downward direction), and a code 717 representing a dose of charged particles incident on a sample corresponding to the second simulated inspection image 804 during scanning. The first simulated inspection image 802 and the second simulated inspection image 804 may be imaged using Monte Carlo-based techniques described herein (e.g., by comparing Figure 4 402) and physically based models (e.g., by Figure 4 The first simulated inspection image 802 and the second simulated inspection image 804 include charging artifacts (represented by white shading on the right side of the pattern and at the bottom of the pattern, respectively). Figure 8 As shown, the first simulated inspection image 802 and the second simulated inspection image 804 have the same pattern features (for example, both are represented by black circular holes) and different scanning directions. The scanning direction of the first simulated inspection image 802 can be rightward, and the scanning direction of the second simulated inspection image 804 can be downward.
[0087] For example, Fig. 9 It is a diagram showing a method for training consistent with some embodiments of the present disclosure. Figure 7 Schematic diagram of an example process 900 for an autoencoder 704. In some embodiments, process 900 can be performed in conjunction with process 800 for training the autoencoder 704.
[0088] like Fig. 9 As shown, the autoencoder 704 includes an encoder 706 and a decoder 710. During the training phase, in response to acquiring the third simulated inspection image 902, the encoder 706 may be applied to the third simulated inspection image 902 to generate a third code set, the third code set including a code 912 representing a pattern feature (e.g., a pattern represented by a black circular hole in the third simulated inspection image 902), a code 914 representing a scanning direction (e.g., a right direction), and a code 916 representing a charged particle dose incident on a sample corresponding to the third simulated inspection image 902 during scanning. In response to acquiring the fourth simulated inspection image 904, the encoder 706 may also be applied to the fourth simulated inspection image 904 to generate a fourth code set, the fourth code set including a code 913 representing a pattern feature (e.g., a pattern represented by a black circular hole in the fourth simulated inspection image 904), a code 915 representing a scanning direction (e.g., a downward direction), and a code 917 representing a charged particle dose incident on a sample corresponding to the fourth simulated inspection image 904 during scanning. The third simulated inspection image 902 and the fourth simulated inspection image 904 may be imaged using the Monte Carlo-based techniques described herein (e.g., by comparing Figure 4 402) and physically based models (e.g., by Figure 4 The third simulated inspection image 902 and the fourth simulated inspection image 904 include charging artifacts (represented by white shading on the left and right sides of the pattern, respectively). Fig. 9As shown, the third simulated inspection image 902 and the fourth simulated inspection image 904 have different pattern features and different scanning directions. The characteristic pattern of the third simulated inspection image 902 is represented by a black circular hole, and the characteristic pattern of the fourth simulated inspection image 904 is represented by a horizontal or vertical black bar. The scanning direction of the third simulated inspection image 902 can be a left direction, and the scanning direction of the fourth simulated inspection image 904 can be a right direction. It should be noted that the scanning directions of the third simulated inspection image 902 and the fourth simulated inspection image 904 can be the same or different.
[0089] refer to Figure 8-Figure 9 , the auto encoder 704 can be trained based on the first code set, the second code set, the third code set, and the fourth code set. Figure 8 As shown, code 712 and code 713 can be exchanged to generate a first updated code set and a second updated code set, wherein the first updated code set includes code 713, code 714, and code 716, and the second updated code set includes code 712, code 715, and code 717. Fig. 9 As shown, code 916 and code 917 may be set to have random values. As an example, the random values may be selected from random values 910 (e.g., random values generated using a Gaussian random number generator). For example, code 916 may be set to have a first random value selected from random values 910, and code 917 may be set to have a second random value selected from random values 910.
[0090] refer to Figure 8-Figure 9 , the auto encoder 704 may be trained based on the first updated code set, the second updated code set, the third updated code set, and the fourth updated code set. Figure 8 , after exchanging code 712 and code 713 , a loss function may be determined based on the first updated set of codes and the second updated set of codes.
[0091] refer to Fig. 9, after setting the code 916 and the code 917 to random values, the decoder 710 may be applied to a third updated code set (which includes the code 912, the code 914, and the code 916 having the first random value) to generate the first intermediate output image 906. The decoder 710 may be applied to a fourth updated code set (which includes the code 913, the code 915, and the code 917 having the second random value) to generate the second intermediate output image 908. Then, the encoder 706 may be applied to the first intermediate output image 906 to generate the fifth code set, and to the second intermediate output image 908 to generate the sixth code set. The fifth code set may include a code 918 representing a pattern feature, a code 920 representing a scanning direction, and a code 922 representing a dose of charged particles incident on a sample corresponding to the first intermediate output image 906. The encoder 706 may also be applied to the second intermediate output image 908 to generate the sixth code set. The sixth code set may include a code 919 indicating a pattern feature, a code 921 indicating a scanning direction, and a code 923 indicating a dose of charged particles incident on a sample corresponding to the second intermediate output image 908 .
[0092] In generating and Fig. 9 After the associated fifth code set and sixth code set, the first difference value may be updated based on a determination that the first difference value exceeds a first threshold value (e.g., 0, 0.01, 0.2, or any value) and a determination that the second difference value exceeds a second threshold value (e.g., 0, 0.01, 0.2, or any value). Figure 8 The first difference may be between the value of code 922 and the value of code 916 having the first random value. The second difference may be between the value of code 923 and the value of code 917 having the second random value. The first threshold may be the same as or different from the second random value. Thereafter, the updated loss function may be used to train the autoencoder 704. For example, if the updated loss function outputs a loss value that satisfies a condition (e.g., greater than or equal to the threshold, or less than or equal to the threshold), one or more parameters of at least one of the encoder 706 or the decoder 710 may be updated, and a new simulated inspection image may be input into the updated autoencoder 704 again to compare with the loss function. Figure 8-Figure 9A new intermediate output image is generated in a similar manner to the related description. When the loss function outputs a loss value that does not meet the condition, it can be considered that the training process of the autoencoder 704 (e.g., including process 800 and process 900) has been completed. By executing the training process 800 and process 900 described herein, the autoencoder 704 can separate the code (e.g., code 712 and code 713) representing the pattern feature from the code (e.g., code 714, code 715, code 716, and code 717) representing other features of the simulated inspection image (e.g., the first simulated inspection image 802 and the second simulated inspection image 804), and can further manipulate the code (e.g., code 916 and code 917) representing the charged particle dose of the simulated inspection image (e.g., the third simulated inspection image 902 and the fourth simulated inspection image 904) to generate a corresponding intermediate output image (e.g., the first intermediate output image 906 and the second intermediate output image 908) independent of the input simulated inspection image. Such manipulation can be performed without affecting other features of the input simulated inspection image (e.g., features representing pattern features or scanning directions).
[0093] After completing the training process described in connection with process 800 and process 900 , the trained autoencoder 704 may be used to apply to actual inspection images to reduce charging artifacts therein, such as according to process 700 described herein.
[0094] For example, Fig.10 1 is a flow chart illustrating an example method 1000 for reducing charging artifacts in an inspection image consistent with some embodiments of the present disclosure. The method 1000 may be performed by a controller that may be coupled to a charged particle beam tool (e.g., the charged particle beam inspection system 100) or a beam tool. For example, the controller may be Figure 2 The controller 109 in FIG. 100 can be programmed to implement the method 1000 .
[0095] At step 1002, the controller may acquire a set of inspection images. Each inspection image in the set of inspection images may include charging artifacts. In some embodiments, the set of inspection images may be measured inspection images, and the controller may acquire the set of inspection images by performing multiple scans on a test sample. Each of the multiple scans may use different acquisition settings. The acquisition settings may include at least one of the following: beam current, scan direction, or landing energy of the beam.
[0096] In some embodiments, the inspection image set may be a simulated inspection image. To obtain the inspection image set, the controller may generate a simulated inspection image set (e.g., Figure 4In some embodiments, the controller may generate the set of simulated inspection images as the inspection image set, wherein each simulated inspection image in the set of simulated inspection images may include charging artifacts.
[0097] In some embodiments, each inspection image in the inspection image set does not include charging artifacts. In this case, the controller can be configured to generate a charging artifact by applying a physics-based model (e.g., Figure 4 The physics-based model 404A) is applied to the simulated inspection image set to generate the inspection image set. In some embodiments, the controller can use a Monte Carlo-based technique to generate the simulated inspection image set.
[0098] At step 1004, the controller may use the inspection image set as input to train a machine learning model. The machine learning model may output a decoupled feature set for the inspection image set. In some embodiments, the machine learning model may include an autoencoder (e.g., in combination with Figure 7-Figure 9 The decoupled feature set may include a code set of the autoencoder (e.g., in combination with Figure 7-Figure 9 Codes 712-717 described).
[0099] In some embodiments, the decoupled feature set may include at least one of the following: a feature representing a scanning direction, a feature representing a pattern, or a feature representing a charged particle dose. For example, when the machine learning model may include an autoencoder, the decoupled feature set may include a code set of the autoencoder, and the code set may include at least one of the following: a code representing a scanning direction (e.g., Figure 7-Figure 9 A code 714 or code 715 describing the associated pattern), a code representing a pattern feature (e.g., Figure 7-Figure 9 712 or 713) or a code representing a charged particle dose (e.g., Figure 7-Figure 9 Code 716 or code 717 of the associated description).
[0100] In some embodiments, the inspection image set may include a first simulated inspection image (e.g., Figure 8 802), a second simulated inspection image (eg, Figure 8 ), a third simulated inspection image (eg, Fig. 9 902) and a fourth simulated inspection image (eg, Fig. 9The first simulated inspection image and the second simulated inspection image may have the same pattern features and different scanning directions. The third simulated inspection image and the fourth simulated inspection image may have different pattern features. In order to train the machine learning model, in response to acquiring the first simulated inspection image and the second simulated inspection image, the controller may transmit the encoder of the autoencoder (e.g., Figure 8 The encoder 706 described in connection with the present invention is applied to the first simulated inspection image to generate a first code set (e.g., including Figure 8 and applied to a second simulated inspection image to generate a second code set (e.g., including codes 712, 714, and 716 associated with the description of Figure 8 In response to acquiring the third simulation inspection image and the fourth simulation inspection image, the controller may turn the encoder (eg, Fig. 9 The encoder 706 described in connection with the present invention is applied to the third simulated inspection image to generate a third code set (e.g., including Fig. 9 and applying the code 912, code 914, and code 916 described in association with the fourth simulated inspection image to generate a fourth code set (eg, including ... Fig. 9 The controller may then train the autoencoder based on the first code set, the second code set, the third code set, and the fourth code set.
[0101] In some embodiments, the first code set may include a first code representing a first pattern feature of a first simulated inspection image (e.g., Figure 8 The second code set may include a second code representing a second pattern feature of the second simulated inspection image (e.g., Figure 8 The third code set may include a third code representing a first charged particle dose associated with the first simulated inspection image (e.g., Fig. 9 The fourth code set may include a fourth code representing a second charged particle dose associated with the second simulated inspection image (e.g., Fig. 9 To train the autoencoder based on the first code set, the second code set, the third code set, and the fourth code set, the controller may swap the first code set and the second code set to generate a code including the second code (e.g., Figure 8 The first updated code set of code 713) and the first updated code (eg, Figure 8 For example, refer to Figure 8, the first updated code set may include code 713, code 714, and code 716, and the second updated code set may include code 712, code 715, and code 717. Then, the controller may set the third code to a first random value (e.g., from Fig. 9 The random value 910 is selected to generate a third updated code set, and the fourth code is set to a second random value (e.g., from Fig. 9 The controller may then train the auto encoder based on the first updated code set, the second updated code set, the third updated code set, and the fourth updated code set.
[0102] In some embodiments, to train the autoencoder based on the first updated code set, the second updated code set, the third updated code set, and the fourth updated code set, the controller may determine a loss function based on the first updated code set and the second updated code set. The controller may then train the autoencoder's decoder (e.g., Figure 7-Figure 9 The decoder 710 described in association therewith) is applied to the third updated code set to generate a first intermediate output image (e.g., Fig. 9 906) and applied to a fourth updated set of codes to generate a second intermediate output image (eg, Fig. 9 The controller may also apply the encoder to the first intermediate output image to generate a fifth code set (e.g., including Fig. 9 918, code 920, and code 922 in ), and applied to the second intermediate output image to generate a sixth code set (e.g., including Fig. 9 The fifth code set may include a fifth code representing a third charged particle dose associated with the first intermediate output image (e.g., Fig. 9 922 in the code), the sixth code set may include a sixth code representing a fourth charged particle dose associated with the second intermediate output image (e.g., Fig. 9 The controller may also update the loss function based on a determination that the first difference exceeds the first threshold and a determination that the second difference exceeds the second threshold, wherein the first difference may be between the value of the third code (e.g., code 916) and the value of the fifth code (e.g., code 922), and the second difference may be between the value of the fourth code (e.g., code 917) and the value of the sixth code (e.g., code 923). Thereafter, the controller may train the autoencoder using the updated loss function.
[0103] Consistent with some embodiments of the present disclosure, in addition to steps 1002-1004, the controller may also apply the trained machine learning model to the inspection image (e.g., Figure 7 inspection image 702) to generate an output inspection image (e.g., Figure 7 In some embodiments, the output inspection image may include a pattern with peripheral edge blur (e.g., the peripheral edge blur described in association with output image 720).
[0104] In some embodiments, when the machine learning model includes an autoencoder (e.g., in combination with Figure 7-Figure 9 When the decoupled feature set is used to generate an autoencoder 704 described above, the decoupled feature set may include a code set of the autoencoder, and the code set may include at least one of the following: a code indicating a scanning direction, a code indicating a pattern feature, or a code indicating a charged particle dose. To generate an output inspection image, the controller may use an encoder of the trained autoencoder (e.g., Figure 7 The encoder 706 described in the associated description is applied to the inspection image (e.g., Figure 7 702) to generate a code set (e.g., Figure 7 The controller may then send a code representing a charged particle dose (e.g., Figure 7 Code 716) is set to zero value (for example, Figure 7 Thereafter, the controller may transfer the decoder of the trained autoencoder (e.g., Figure 7 The decoder 710 described in the associated code is applied to the code set to generate an output inspection image (e.g., Figure 7 output image 720), wherein the code set may include codes representing changes in charged particle dose.
[0105] A non-transitory computer-readable medium may be provided that stores a processor (e.g., Figure 1 109) to perform image processing (such as Fig.10 Method 1000), data processing, database management, graphic display, operation of image inspection apparatus or other imaging equipment, detection of defects on a sample, etc. Common forms of non-transitory media include, for example, floppy disks, flexible disks, hard disks, solid-state drives, magnetic tapes or any other magnetic data storage media, CD-ROMs, any other optical data storage media, any physical media with a pattern of holes, RAM, PROM and EPROM, FLASH-EPROM or any other flash memory, NVRAM, cache, registers, any other memory chip or cartridge memory, and network versions thereof.
[0106] This embodiment can be further described in the following terms:
[0107] 1. A system comprising:
[0108] an image inspection device configured to scan a sample and generate an inspection image of an integrated circuit manufactured on the sample; and
[0109] A controller comprising a circuit system configured to:
[0110] Generate a set of simulated inspection images, wherein each of the simulated inspection images does not include a charge
[0111] Artifacts; and
[0112] generating an inspection image set by applying a physics-based model to the simulated inspection image set;
[0113] training a machine learning model using the inspection image set as input, wherein the machine learning model outputs a disentangled feature set of the inspection image set; and
[0114] The trained machine learning model is applied to the inspection image to generate an output inspection image, wherein the output inspection image includes fewer charging artifacts than the inspection image.
[0115] 2. A system comprising:
[0116] an image inspection device configured to scan a sample and generate an inspection image of an integrated circuit manufactured on the sample; and
[0117] A controller comprising a circuit system configured to:
[0118] acquiring an inspection image set, wherein each inspection image in the inspection image set includes a charging artifact;
[0119] as well as
[0120] A machine learning model is trained using the inspection image set as input, wherein the machine learning model outputs a disentangled feature set of the inspection image set.
[0121] 3. The system of clause 2, wherein the set of inspection images are measured inspection images, and wherein the controller comprises circuitry further configured to:
[0122] The inspection image set is acquired by performing multiple scans on the test sample, wherein each scan of the multiple scans is configured to use different acquisition settings, and the acquisition settings include at least one of the following: beam current, scanning direction, or landing energy of the beam.
[0123] 4. The system of clause 2, wherein the set of inspection images are simulated inspection images, and wherein the controller comprises circuitry further configured to:
[0124] generating a set of simulated inspection images, wherein each simulated inspection image in the set of simulated inspection images does not include charging artifacts; and
[0125] The inspection image set is generated by applying a physics-based model to the simulated inspection image set.
[0126] 5. The system of clause 4, wherein the controller comprises a circuit system further configured to generate the set of simulated inspection images using a Monte Carlo-based technique.
[0127] 6. The system of clause 2, wherein the set of inspection images are simulated inspection images, and wherein the controller comprises circuitry further configured to:
[0128] A simulated inspection image set is generated as the inspection image set, wherein each simulated inspection image in the simulated inspection image set includes a charging artifact.
[0129] 7. The system of clause 2, wherein the set of decoupled features comprises at least one of: a feature representing a scanning direction, a feature representing a pattern, or a feature representing a dose of charged particles.
[0130] 8. The system of clause 2, wherein the controller comprises circuitry further configured to:
[0131] The trained machine learning model is applied to the inspection image to generate an output inspection image, wherein the output inspection image includes fewer charging artifacts than the inspection image.
[0132] 9. The system of clause 8, wherein the output inspection image comprises a pattern having a surrounding edge blur.
[0133] 10. A system according to clause 8, wherein the machine learning model includes an autoencoder, the decoupled feature set includes a code set of the autoencoder, and the code set includes at least one of the following: a code representing a scanning direction, a code representing a feature of a pattern, or a code representing a dose of charged particles.
[0134] 11. The system of clause 10, wherein the controller comprises circuitry further configured to:
[0135] applying the trained encoder of the autoencoder to the inspection image to generate the code set;
[0136] setting the code representing the dose of the charged particles to a value of zero; and
[0137] A decoder of the trained autoencoder is applied to the code set to generate the output inspection image, wherein the code set includes codes representing changes in the dose of the charged particles.
[0138] 12. A system according to clause 2, wherein the machine learning model includes an autoencoder and the decoupled feature set includes a code set of the autoencoder.
[0139] 13. The system of clause 12, wherein the set of inspection images includes a first simulated inspection image, a second simulated inspection image, a third simulated inspection image, and a fourth simulated inspection image, wherein the first simulated inspection image and the second simulated inspection image have the same pattern features and different scanning directions, wherein the third simulated inspection image and the fourth simulated inspection image have different pattern features, and wherein the controller includes a circuit system further configured to:
[0140] In response to acquiring the first simulated inspection image and the second simulated inspection image, applying an encoder of the autoencoder to the first simulated inspection image to generate a first code set and to the second simulated inspection image to generate a second code set;
[0141] In response to acquiring the third simulated inspection image and the fourth simulated inspection image, applying the encoder to the third simulated inspection image to generate a third code set and to the fourth simulated inspection image to generate a fourth code set; and
[0142] The autoencoder is trained based on the first code set, the second code set, the third code set, and the fourth code set.
[0143] 14. The system of clause 13, wherein the first code set includes a first code representing a first pattern feature of the first simulated inspection image, the second code set includes a second code representing a second pattern feature of the second simulated inspection image, the third code set includes a third code representing a first charged particle dose associated with the third simulated inspection image, and the fourth code set includes a fourth code representing a second charged particle dose associated with the fourth simulated inspection image, and wherein the controller includes circuitry that is further configured to:
[0144] exchanging the first code and the second code to generate a first updated code set including the second code and a second updated code set including the first code;
[0145] setting the third code to a first random value to generate a third updated set of codes, and setting the fourth code to a second random value to generate a fourth updated set of codes;
[0146] The autoencoder is trained based on the first updated set of codes, the second updated set of codes, the third updated set of codes, and the fourth updated set of codes.
[0147] 15. The system of clause 14, wherein the controller comprises circuitry further configured to:
[0148] determining a loss function based on the first updated set of codes and the second updated set of codes;
[0149] applying a decoder of the autoencoder to the third updated set of codes to generate a first intermediate output image, and to the fourth updated set of codes to generate a second intermediate output image;
[0150] applying the encoder to the first intermediate output image to generate a fifth set of codes and to the second intermediate output image to generate a sixth set of codes, wherein the fifth set of codes includes a fifth code representing a third charged particle dose associated with the first intermediate output image and the sixth set of codes includes a sixth code representing a fourth charged particle dose associated with the second intermediate output image;
[0151] updating the loss function based on a determination that a first difference exceeds a first threshold and a determination that a second difference exceeds a second threshold, wherein the first difference is between a value of the third code and a value of the fifth code, and the second difference is between a value of the fourth code and a value of the sixth code; and
[0152] The autoencoder is trained using the updated loss function.
[0153] 16. A non-transitory computer readable medium storing a set of instructions executable by at least one processor of a device to cause the device to perform a method comprising:
[0154] generating a set of simulated inspection images, wherein each simulated inspection image in the set of simulated inspection images does not include charging artifacts; and
[0155] generating an inspection image set by applying a physics-based model to the simulated inspection image set;
[0156] training a machine learning model using the inspection image set as input, wherein the machine learning model outputs a disentangled feature set of the inspection image set; and
[0157] The trained machine learning model is applied to an inspection image to generate an output inspection image, wherein the output inspection image includes fewer charging artifacts than the inspection image.
[0158] 17. A non-transitory computer readable medium storing a set of instructions executable by at least one processor of a device to cause the device to perform a method comprising:
[0159] acquiring a set of inspection images, wherein each inspection image in the set of inspection images includes a charging artifact; and
[0160] A machine learning model is trained using the inspection image set as input, wherein the machine learning model outputs a disentangled feature set of the inspection image set.
[0161] 18. The non-transitory computer-readable medium of clause 17, wherein the inspection image set is a measured inspection image, and wherein acquiring the inspection image set comprises:
[0162] The inspection image set is acquired by performing a plurality of scans on the test sample, wherein each scan of the plurality of scans is configured to use a different acquisition setting, and the acquisition setting includes at least one of the following: beam current, scanning direction, or landing energy of the beam.
[0163] 19. The non-transitory computer-readable medium of clause 17, wherein the set of inspection images are simulated inspection images, and wherein acquiring the set of inspection images comprises:
[0164] generating a set of simulated inspection images, wherein each simulated inspection image in the set of simulated inspection images does not include charging artifacts; and
[0165] The inspection image set is generated by applying a physics-based model to the simulated inspection image set.
[0166] 20. The non-transitory computer-readable medium of clause 19, wherein the method further comprises generating the set of simulated inspection images using a Monte Carlo based technique.
[0167] 21. The non-transitory computer-readable medium of clause 17, wherein the set of inspection images are simulated inspection images, and wherein acquiring the set of inspection images comprises:
[0168] A simulated inspection image set is generated as the inspection image set, wherein each simulated inspection image in the simulated inspection image set includes a charging artifact.
[0169] 22. The non-transitory computer-readable medium of any of clauses 17-21, wherein the set of decoupled features comprises at least one of: a feature representing a scan direction, a feature representing a pattern, or a feature representing a charged particle dose.
[0170] 23. The non-transitory computer-readable medium of any of clauses 17-22, wherein the method further comprises:
[0171] The trained machine learning model is applied to an inspection image to generate an output inspection image, wherein the output inspection image includes fewer charging artifacts than the inspection image.
[0172] 24. The non-transitory computer-readable medium of clause 23, wherein the output inspection image comprises a pattern having a surrounding edge blur.
[0173] 25. A non-transitory computer-readable medium according to any one of clauses 23-24, wherein the machine learning model includes an autoencoder, the decoupled feature set includes a code set of the autoencoder, and the code set includes at least one of the following: a code representing a scanning direction, a code representing a pattern feature, or a code representing a charged particle dose.
[0174] 26. The non-transitory computer-readable medium of clause 25, wherein applying the trained machine learning model to the inspection image to generate the output inspection image comprises:
[0175] applying the trained encoder of the autoencoder to the inspection image to generate the code set;
[0176] setting a code representing the charged particle dose to a value of zero; and
[0177] A decoder of the trained autoencoder is applied to the code set to generate the output inspection image, wherein the code set includes codes representing changes in the charged particle dose.
[0178] 27. The non-transitory computer-readable medium of any of clauses 17-24, wherein the machine learning model comprises an autoencoder and the set of decoupled features comprises a set of codes of the autoencoder.
[0179] 28. The non-transitory computer-readable medium of clause 27, wherein the set of inspection images comprises a first simulated inspection image, a second simulated inspection image, a third simulated inspection image, and a fourth simulated inspection image, wherein the first simulated inspection image and the second simulated inspection image have the same pattern features and different scanning directions, wherein the third simulated inspection image and the fourth simulated inspection image have different pattern features, and wherein training the machine learning model comprises:
[0180] In response to acquiring the first simulated inspection image and the second simulated inspection image, applying an encoder of the autoencoder to the first simulated inspection image to generate a first code set and to the second simulated inspection image to generate a second code set;
[0181] In response to acquiring the third simulated inspection image and the fourth simulated inspection image, applying the encoder to the third simulated inspection image to generate a third code set and to the fourth simulated inspection image to generate the fourth code set; and
[0182] The autoencoder is trained based on the first code set, the second code set, the third code set, and the fourth code set.
[0183] 29. The non-transitory computer-readable medium of clause 28, wherein the first code set includes a first code representing a first pattern feature of the first simulated inspection image, the second code set includes a second code representing a second pattern feature of the second simulated inspection image, the third code set includes a third code representing a first charged particle dose associated with the third simulated inspection image, and the fourth code set includes a fourth code representing a second charged particle dose associated with the fourth simulated inspection image, and wherein training the autoencoder based on the first code set, the second code set, the third code set, and the fourth code set includes:
[0184] exchanging the first code and the second code to generate a first updated code set including the second code and a second updated code set including the first code;
[0185] setting the third code to a first random value to generate a third updated set of codes, and setting the fourth code to a second random value to generate a fourth updated set of codes;
[0186] The autoencoder is trained based on the first updated set of codes, the second updated set of codes, the third updated set of codes, and the fourth updated set of codes.
[0187] 30. The non-transitory computer-readable medium of clause 29, wherein training the autoencoder based on the first updated set of codes, the second updated set of codes, the third updated set of codes, and the fourth updated set of codes comprises:
[0188] determining a loss function based on the first updated set of codes and the second updated set of codes;
[0189] applying a decoder of the autoencoder to the third updated set of codes to generate a first intermediate output image and to the fourth updated set of codes to generate a second intermediate output image;
[0190] applying the encoder to the first intermediate output image to generate a fifth set of codes and to the second intermediate output image to generate a sixth set of codes, wherein the fifth set of codes includes a fifth code representing a third charged particle dose associated with the first intermediate output image and the sixth set of codes includes a sixth code representing a fourth charged particle dose associated with the second intermediate output image;
[0191] updating the loss function based on a determination that a first difference exceeds a first threshold and a determination that a second difference exceeds a second threshold, wherein the first difference is between a value of the third code and a value of the fifth code, and the second difference is between a value of the fourth code and a value of the sixth code; and
[0192] The autoencoder is trained using the updated loss function.
[0193] 31. A computer implemented method for reducing charging artifacts in an inspection image, the computer implemented method comprising:
[0194] generating a set of simulated inspection images, wherein each simulated inspection image in the set of simulated inspection images does not include charging artifacts; and
[0195] generating an inspection image set by applying a physics-based model to the simulated inspection image set;
[0196] training a machine learning model using the inspection image set as input, wherein the machine learning model outputs a disentangled feature set of the inspection image set; and
[0197] The trained machine learning model is applied to the inspection image to generate an output inspection image, wherein the output inspection image contains fewer charging artifacts than the inspection image.
[0198] 32. A computer implemented method for reducing charging artifacts in an inspection image, the computer implemented method comprising:
[0199] acquiring a set of inspection images, wherein each inspection image in the set of inspection images includes a charging artifact; and
[0200] A machine learning model is trained using the inspection image set as input, wherein the machine learning model outputs a disentangled feature set of the inspection image set.
[0201] 33. The computer-implemented method of clause 32, wherein the set of inspection images are measured inspection images, and wherein acquiring the set of inspection images comprises:
[0202] The inspection image set is acquired by performing multiple scans on the test sample, wherein each scan in the multiple scans is configured to use different acquisition settings, and the acquisition settings include at least one of the following: beam current, scanning direction, or landing energy of the beam.
[0203] 34. The computer-implemented method of clause 32, wherein the set of inspection images are simulated inspection images, and wherein acquiring the set of inspection images comprises:
[0204] generating a set of simulated inspection images, wherein each simulated inspection image in the set of simulated inspection images does not include charging artifacts; and
[0205] The inspection image set is generated by applying a physics-based model to the simulated inspection image set.
[0206] 35. The computer-implemented method of clause 34, wherein the computer-implemented method further comprises generating the set of simulated inspection images using a Monte Carlo based technique.
[0207] 36. The computer-implemented method of any of clauses 32-35, wherein the set of inspection images are simulated inspection images, and wherein acquiring the set of inspection images comprises:
[0208] A simulated inspection image set is generated as the inspection image set, wherein each simulated inspection image in the simulated inspection image set includes a charging artifact.
[0209] 37. A computer-implemented method according to any of clauses 32-36, wherein the set of decoupled features comprises at least one of: a feature representing a scan direction, a feature representing a pattern, or a feature representing a charged particle dose.
[0210] 38. A computer-implemented method according to any one of clauses 32 to 37, further comprising:
[0211] The trained machine learning model is applied to the inspection image to generate an output inspection image, wherein the output inspection image includes fewer charging artifacts than the inspection image.
[0212] 39. The computer-implemented method of clause 38, wherein the output inspection image comprises a pattern having a surrounding edge blur.
[0213] 40. A computer-implemented method according to any one of clauses 38 to 39, wherein the machine learning model includes an autoencoder, the decoupled feature set includes a code set of the autoencoder, and the code set includes at least one of the following: a code representing a scanning direction, a code representing a pattern feature, or a code representing a charged particle dose.
[0214] 41. The computer-implemented method of clause 40, wherein applying the trained machine learning model to the inspection image to generate the output inspection image comprises:
[0215] applying the trained encoder of the autoencoder to the inspection image to generate the code set;
[0216] setting the code representing the charged particle dose to a value of zero; and
[0217] A decoder of the trained autoencoder is applied to the code set to generate the output inspection image, wherein the code set includes codes representing changes in the charged particle dose.
[0218] 42. A computer-implemented method according to any of clauses 32-39, wherein the machine learning model comprises an autoencoder and the set of disentangled features comprises a set of codes of the autoencoder.
[0219] 43. The computer-implemented method of clause 42, wherein the set of inspection images includes a first simulated inspection image, a second simulated inspection image, a third simulated inspection image, and a fourth simulated inspection image, wherein the first simulated inspection image and the second simulated inspection image have the same pattern features and different scanning directions, wherein the third simulated inspection image and the fourth simulated inspection image have different pattern features, and wherein training the machine learning model comprises:
[0220] In response to acquiring the first simulated inspection image and the second simulated inspection image, applying an encoder of the autoencoder to the first simulated inspection image to generate a first code set and to the second simulated inspection image to generate a second code set;
[0221] In response to acquiring the third simulated inspection image and the fourth simulated inspection image, applying the encoder to the third simulated inspection image to generate a third code set and to the fourth simulated inspection image to generate a fourth code set; and
[0222] The autoencoder is trained based on the first code set, the second code set, the third code set, and the fourth code set.
[0223] 44. A computer-implemented method according to clause 43, wherein the first code set includes a first code representing a first pattern feature of the first simulated inspection image, the second code set includes a second code representing a second pattern feature of the second simulated inspection image, the third code set includes a third code representing a first charged particle dose associated with the third simulated inspection image, and the fourth code set includes a fourth code representing a second charged particle dose associated with the fourth simulated inspection image, and wherein training the autoencoder based on the first code set, the second code set, the third code set, and the fourth code set includes:
[0224] exchanging the first code and the second code to generate a first updated code set including the second code and a second updated code set including the first code;
[0225] setting the third code to a first random value to generate a third updated set of codes, and setting the fourth code to a second random value to generate a fourth updated set of codes;
[0226] The autoencoder is trained based on the first updated set of codes, the second updated set of codes, the third updated set of codes, and the fourth updated set of codes.
[0227] 45. The computer-implemented method of clause 44, wherein training the autoencoder based on the first updated set of codes, the second updated set of codes, the third updated set of codes, and the fourth updated set of codes comprises:
[0228] determining a loss function based on the first updated set of codes and the second updated set of codes;
[0229] applying a decoder of the autoencoder to the third updated set of codes to generate a first intermediate output image and to the fourth updated set of codes to generate a second intermediate output image;
[0230] applying the encoder to the first intermediate output image to generate a fifth set of codes and to the second intermediate output image to generate a sixth set of codes, wherein the fifth set of codes includes a fifth code representing a third charged particle dose associated with the first intermediate output image and the sixth set of codes includes a sixth code representing a fourth charged particle dose associated with the second intermediate output image;
[0231] updating the loss function based on a determination that a first difference exceeds a first threshold and a determination that a second difference exceeds a second threshold, wherein the first difference is between a value of the third code and a value of the fifth code, and the second difference is between a value of the fourth code and a value of the sixth code; and
[0232] The autoencoder is trained using the updated loss function.
[0233] The block diagram in the figure shows the possible architecture, function and operation of the system, method and computer hardware or software product according to various example embodiments of the present disclosure. In this regard, each box in the flow chart or block diagram can represent a part of a module, segment or code, which includes one or more executable instructions for implementing a specified logical function. It should be understood that in some alternative implementations, the functions indicated in the box may not occur in the order shown in the figure. For example, two boxes displayed in succession can be executed or implemented substantially at the same time, or sometimes two boxes can be executed in reverse order, depending on the functions involved. Some boxes can also be omitted. It should also be understood that each box in the block diagram and the combination of boxes can be implemented by a special hardware system that performs a specified function or action, or by a combination of special hardware and computer instructions.
[0234] It should be understood that the embodiments of the present disclosure are not limited to the exact constructions described above and shown in the drawings, and that various modifications and changes may be made without departing from the scope thereof.
Claims
1. A system comprising: an image inspection device configured to scan a sample and generate an inspection image of an integrated circuit fabricated on the sample; as well as A controller comprising a circuit system configured to: generating a set of simulated inspection images, wherein each of the set of simulated inspection images does not include charging artifacts; as well as generating an inspection image set by applying a physics-based model to the simulated inspection image set; training a machine learning model using the inspection image set as input, wherein the machine learning model outputs a disentangled feature set of the inspection image set; as well as The trained machine learning model is applied to the inspection image to generate an output inspection image, wherein the output inspection image includes fewer charging artifacts than the inspection image.
2. A system comprising: an image inspection device configured to scan a sample and generate an inspection image of an integrated circuit fabricated on the sample; as well as A controller comprising a circuit system configured to: acquiring a set of inspection images, wherein each inspection image in the set of inspection images includes a charging artifact; and A machine learning model is trained using the inspection image set as input, wherein the machine learning model outputs a disentangled feature set of the inspection image set.
3. The system of claim 2, wherein the set of inspection images are measured inspection images, and wherein the controller includes circuitry further configured to: The inspection image set is acquired by performing multiple scans on the test sample, wherein each scan of the multiple scans is configured to use different acquisition settings, and the acquisition settings include at least one of the following: beam current, scanning direction, or landing energy of the beam.
4. The system of claim 2, wherein the set of inspection images are simulated inspection images, and wherein the controller comprises circuitry further configured to: generating a set of simulated inspection images, wherein each simulated inspection image in the set of simulated inspection images does not include charging artifacts; and The inspection image set is generated by applying a physics-based model to the simulated inspection image set.
5. The system of claim 4, wherein the controller includes circuitry further configured to generate the set of simulated inspection images using a Monte Carlo based technique.
6. The system of claim 2, wherein the set of inspection images are simulated inspection images, and wherein the controller comprises circuitry further configured to: A simulated inspection image set is generated as the inspection image set, wherein each simulated inspection image in the simulated inspection image set includes a charging artifact. 7 . The system of claim 2 , wherein the decoupled feature set comprises at least one of: a feature representing a scanning direction, a feature representing a pattern, or a feature representing a dose of charged particles.
8. The system of claim 2, wherein the controller comprises circuitry further configured to: The trained machine learning model is applied to the inspection image to generate an output inspection image, wherein the output inspection image includes fewer charging artifacts than the inspection image.
9. The system of claim 8, wherein the output inspection image comprises a pattern having a surrounding edge blur.
10. The system of claim 8, wherein the machine learning model comprises an autoencoder, the decoupled feature set comprises a code set of the autoencoder, and the code set comprises at least one of: a code representing a scanning direction, a code representing a feature of a pattern, or a code representing a dose of charged particles.
11. The system of claim 10, wherein the controller comprises circuitry further configured to: applying the trained encoder of the autoencoder to the inspection image to generate the code set; setting the code representing the dose of the charged particles to a value of zero; and A decoder of the trained autoencoder is applied to the code set to generate the output inspection image, wherein the code set includes codes representing changes in the dose of the charged particles.
12. The system of claim 2, wherein the machine learning model comprises an autoencoder and the set of disentangled features comprises a code set of the autoencoder.
13. The system of claim 12, wherein the inspection image set comprises a first simulated inspection image, a second simulated inspection image, a third simulated inspection image, and a fourth simulated inspection image, wherein the first simulated inspection image and the second simulated inspection image have the same pattern features and different scanning directions, wherein the third simulated inspection image and the fourth simulated inspection image have different pattern features, and wherein the controller comprises a circuit system further configured to: In response to acquiring the first simulated inspection image and the second simulated inspection image, applying an encoder of the autoencoder to the first simulated inspection image to generate a first code set and to the second simulated inspection image to generate a second code set; In response to acquiring the third simulated inspection image and the fourth simulated inspection image, applying the encoder to the third simulated inspection image to generate a third code set and to the fourth simulated inspection image to generate a fourth code set; as well as The autoencoder is trained based on the first code set, the second code set, the third code set, and the fourth code set.
14. The system of claim 13, wherein the first code set includes a first code representing a first pattern feature of the first simulated inspection image, the second code set includes a second code representing a second pattern feature of the second simulated inspection image, the third code set includes a third code representing a first charged particle dose associated with the third simulated inspection image, and the fourth code set includes a fourth code representing a second charged particle dose associated with the fourth simulated inspection image, and wherein the controller includes circuitry that is further configured to: exchanging the first code and the second code to generate a first updated code set including the second code and a second updated code set including the first code; setting the third code to a first random value to generate a third updated set of codes, and setting the fourth code to a second random value to generate a fourth updated set of codes; The autoencoder is trained based on the first updated set of codes, the second updated set of codes, the third updated set of codes, and the fourth updated set of codes.
15. The system of claim 14, wherein the controller comprises circuitry further configured to: determining a loss function based on the first updated set of codes and the second updated set of codes; applying a decoder of the autoencoder to the third updated set of codes to generate a first intermediate output image, and to the fourth updated set of codes to generate a second intermediate output image; applying the encoder to the first intermediate output image to generate a fifth set of codes and to the second intermediate output image to generate a sixth set of codes, wherein the fifth set of codes includes a fifth code representing a third charged particle dose associated with the first intermediate output image and the sixth set of codes includes a sixth code representing a fourth charged particle dose associated with the second intermediate output image; updating the loss function based on a determination that a first difference exceeds a first threshold and a determination that a second difference exceeds a second threshold, wherein the first difference is between a value of the third code and a value of the fifth code, and the second difference is between a value of the fourth code and a value of the sixth code; and The autoencoder is trained using the updated loss function.