Hierarchical clustering of Fourier transform-based layout patterns

By grouping IC patterns using hierarchical clustering in the frequency domain, the method enhances inspection efficiency and accuracy, addressing the challenges of complex IC feature analysis in manufacturing processes.

JP2026108643APending Publication Date: 2026-06-30ASML NETHERLANDS BV

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
ASML NETHERLANDS BV
Filing Date
2026-02-27
Publication Date
2026-06-30

Smart Images

  • Figure 2026108643000001_ABST
    Figure 2026108643000001_ABST
Patent Text Reader

Abstract

The present invention provides an apparatus, system, and method for grouping multiple patterns extracted from image data. [Solution] A method for grouping patterns includes receiving image data containing multiple patterns representing features formed on a portion of a wafer, separating the multiple patterns after Fourier transform into multiple sets of patterns, and performing hierarchical clustering on each set of patterns in order to obtain multiple subsets of patterns by recursively evaluating features related to the similarity between patterns within each set of patterns.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001]

[0001] Embodiments provided herein relate to systems and methods for clustering reference data (e.g., layout patterns, GDS patterns) of integrated circuit layouts to facilitate mask inspection or wafer inspection. [Background technology]

[0002]

[0002] In the manufacturing process of integrated circuits (ICs), unfinished or completed circuit components are inspected to ensure that they are manufactured according to the design and free from defects. Inspection systems using charged particle (e.g., electron) beam microscopes or optical microscopes, such as scanning electron microscopes (SEMs), may be used. As the physical size of IC components continues to shrink, the accuracy and yield in defect detection become increasingly important.

[0003]

[0003] Charged particle (e.g., electron) beam microscopes, such as scanning electron microscopes (SEM) or transmission electron microscopes (TEM), can serve as practical tools for inspecting IC components. Limit dimensions of patterns or structures measured from SEM or TEM images can be used to detect defects in the manufactured IC. For example, misalignment between patterns or variations in edge arrangement can be useful not only in controlling the manufacturing process but also in determining defects. [Overview of the Initiative]

[0004]

[0004] Embodiments of the present disclosure provide apparatus, systems and methods for grouping reference data.

[0005]

[0005] In some embodiments, a method is provided for grouping multiple patterns extracted from image data. This method includes receiving image data containing multiple patterns representing features formed on a portion of a wafer; separating the multiple patterns after Fourier transform into multiple sets of patterns; and performing hierarchical clustering on each set of patterns to obtain multiple subsets of patterns by recursively evaluating features relating to the similarity between patterns within each set of patterns.

[0006]

[0006] In some embodiments, a system is provided for grouping multiple patterns extracted from image data. The system includes a controller including a circuit configuration, which is configured to: receive image data including multiple patterns representing features formed on a portion of a wafer; separate the multiple patterns after Fourier transform into multiple sets of patterns; and perform hierarchical clustering on each set of patterns to obtain multiple subsets of patterns by recursively evaluating features relating to the similarity between patterns within each set of patterns.

[0007]

[0007] In some embodiments, a non-temporary computer-readable medium is provided that stores a set of instructions executable by at least one processor of the system for causing the system to perform a method of grouping a plurality of patterns extracted from image data. The method includes receiving image data containing a plurality of patterns representing features formed on a portion of a wafer; separating the plurality of patterns after Fourier transform into a plurality of sets of patterns; and performing hierarchical clustering on the patterns of each set to obtain a plurality of subsets of patterns by recursively evaluating features relating to the similarity between patterns within each set of patterns.

[0008]

[0008] In some embodiments, a method for grouping multiple patterns is provided. This method includes receiving image data containing multiple patterns representing features formed on a portion of a wafer; performing hierarchical clustering on multiple frequency domain features converted from each of the multiple patterns, wherein the hierarchical clustering includes receiving a user selection of parameters; and recursively evaluating, based on the parameters, whether to continue segmenting corresponding sets of patterns at each hierarchical level, thereby recursively segmenting the multiple frequency domain features.

[0009]

[0009] In some embodiments, a system is provided for grouping multiple patterns extracted from image data. The system includes a controller including a circuit configuration configured to cause the system to receive image data including multiple patterns representing features formed on a portion of a wafer, and to perform hierarchical clustering of multiple frequency domain features converted from each of the multiple patterns; performing hierarchical clustering includes receiving a user selection of parameters, and recursively partitioning the multiple frequency domain features by recursively evaluating, based on the parameters, whether to continue partitioning corresponding sets of patterns at each hierarchical level.

[0010]

[0010] In some embodiments, a non-temporary computer-readable medium is provided that stores a set of instructions executable by at least one processor of the system for causing the system to perform a method of grouping a plurality of patterns extracted from image data. The method includes receiving image data containing a plurality of patterns representing features formed on a portion of a wafer; performing hierarchical clustering on a plurality of frequency domain features converted from each of the plurality of patterns, the hierarchical clustering including receiving a user selection of parameters; and recursively segmenting the plurality of frequency domain features by recursively evaluating, based on the parameters, whether to continue segmenting corresponding sets of patterns at each hierarchical level.

[0011]

[0011] Other advantages of embodiments of the present disclosure will become apparent from the following description, which is made in relation to the accompanying drawings, which describe some embodiments of the present invention by means of illustrations and examples. [Brief explanation of the drawing]

[0012] [Figure 1]

[0012] A schematic diagram is shown illustrating an exemplary electron beam inspection (EBI) system consistent with some embodiments of the present disclosure. [Figure 2]

[0013] A schematic diagram is shown illustrating an exemplary electron beam tool that may be part of an electron beam inspection system consistent with several embodiments of the present disclosure. [Figure 3]

[0014] A block diagram of an exemplary system for processing reference data consistent with several embodiments of this disclosure is shown. [Figure 4A]

[0015] This disclosure illustrates an exemplary process for first-level grouping of patterns contained within reference data consistent with several embodiments of this disclosure. [Figure 4B]

[0016] An exemplary process for clustering patterns included in reference data that conforms to some embodiments of the present disclosure is shown. [Figure 4C]

[0017] An exemplary process for second-level grouping of patterns included in reference data that conforms to some embodiments of the present disclosure is shown. [Figure 4D]

[0018] An exemplary diagram showing comparison of two patterns during a clustering or grouping process that conforms to some embodiments of the present disclosure is shown. [Figure 5A]

[0019] An exemplary process for performing Fourier transform on a plurality of patterns in reference data that conforms to some embodiments of the present disclosure is shown. [Figure 5B]

[0020] An exemplary process for converting a Fourier transform-based reference image that conforms to some embodiments of the present disclosure into a vector is shown. [Figure 5C]

[0021] A diagram showing an exemplary hierarchical clustering process for classifying Fourier transform-based features that conforms to some embodiments of the present disclosure is shown. [Figure 6A]

[0022] A diagram showing an agglomeration test that conforms to some embodiments of the present disclosure is shown. [Figure 6B]

[0023] A diagram showing a continuation of recursive partitioning that conforms to some embodiments of the present disclosure is shown. [Figure 6C]

[0024] A diagram showing a stop of recursive partitioning that conforms to some embodiments of the present disclosure is shown. [Figure 7]

[0025] A process flowchart representing an exemplary method for processing reference data that conforms to some embodiments of the present disclosure. [Figure 8]

[0026] A process flowchart representing an exemplary method for processing reference data that conforms to some embodiments of the present disclosure.

Best Mode for Carrying Out the Invention

[0013]

[0027] Hereinafter, exemplary embodiments are described in detail. Examples of these embodiments are shown in the accompanying drawings. The following description refers to the accompanying drawings, and the same numbers in different drawings represent the same or similar elements unless otherwise noted. The embodiments described in the following description of exemplary embodiments are not representative of all embodiments. Rather, they are merely examples of apparatus and methods that correspond to aspects related to the disclosed embodiments enumerated in the accompanying claims. For example, some embodiments are described in the context of utilizing electron beams, but this disclosure is not limited in that way. Other types of charged particle beams can be applied similarly. Furthermore, other imaging systems such as optical imaging, photodetection, and X-ray detection can be used.

[0014]

[0028] Electronic devices consist of circuits formed on a piece of silicon called a substrate. Numerous circuits can be formed together on the same silicon piece, and these are called integrated circuits or ICs. The dimensions of these circuits have been dramatically reduced to accommodate a large number of circuits on a substrate. For example, an IC chip in a smartphone can be as small as a thumbnail, yet it can contain over 2 billion transistors, each transistor being less than 1 / 1000th the size of a human hair.

[0015]

[0029] Manufacturing these extremely small ICs is a complex, time-consuming, and expensive process, often involving hundreds of individual steps. An error in just one step (e.g., in design or patterning) can result in a defect in the finished IC, rendering it unusable. Therefore, one of the goals of the manufacturing process is to avoid such defects and maximize the number of functional ICs produced in the process, i.e., to improve the overall yield of the process.

[0016]

[0030] One component that improves yield is monitoring the chip fabrication process to ensure that a sufficient number of functional integrated circuits are manufactured. 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 electron microscope (SEM). Using an SEM, it is possible to image these very small structures—in short, to take "photographs" of them. Using these images, it is possible to determine whether the structures were formed properly and whether they were formed in the correct locations. If there are defects in the structures, the process can be adjusted to reduce the likelihood of the defects recurring. Defects can be generated during various stages of semiconductor processing. Hot spots are areas that are likely to have defects after lithography patterning or etching. Therefore, it is important to identify and reduce hot spots early in the design phase or to identify defects as quickly, accurately, and efficiently as possible.

[0017]

[0031] During the wafer inspection process, areas of interest on the wafer can be determined. In some embodiments, areas of interest may include patterns having various shapes (such as polygons, squares, or other regular or irregular shapes suitable for inspection). Various systems and processes for inspection may face challenges arising from the complexity of analyzing the vast number of features on an integrated circuit (IC) and the vast amount of data from SEM images of the IC or the IC. For example, the pattern grouping or clustering process can be time-consuming. Furthermore, the parameters for grouping or clustering (such as the number of groups, or how similar the patterns are within each group) are predefined and fixed. The user does not need to control how many groups the patterns can be classified into or the degree of similarity between patterns within a group.

[0018]

[0032] Some of the embodiments disclosed provide systems and methods to address some or all of the drawbacks disclosed herein. In this disclosure, IC data or reference data (also known as reference image data, design data, standard data, or layout information), such as graphic database system (GDS) data files, can be processed to group or cluster patterns having similar characteristics. In some embodiments, similar patterns can be grouped or clustered so that inspection can be performed on a representative pattern of each group to improve inspection efficiency. In some embodiments, similar patterns are grouped based on geometric characteristics. In some embodiments, similar patterns are processed to obtain high-dimensional vectors in the frequency domain, and the vectors are processed by using hierarchical clustering to divide the entire dataset into multiple groups. Thus, hotspot analysis or wafer inspection can be performed with improved efficiency and accuracy. Furthermore, the user can adjust one or more parameters to customize the hierarchical clustering.

[0019]

[0033] The relative dimensions of components in the drawings may be exaggerated for ease of understanding. In the following description of the drawings, the same or similar reference numbers refer to the same or similar components or entities, and only the differences with respect to individual embodiments are described. As used herein, unless otherwise specified, the term “or” encompasses all possible combinations unless impractical. For example, if it is stated that a component may include A or B, then unless otherwise specified or impractical, the component may include A, or B, or A and B. As a second example, if it is stated that a component may include A, B, or C, then unless otherwise specified or impractical, 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.

[0020]

[0034] Figure 1 shows an exemplary electron beam inspection (EBI) system 100 consistent with several embodiments of the present disclosure. The EBI system 100 can be used for imaging. As shown in Figure 1, the EBI system 100 includes a main chamber 101, a loading / locking chamber 102, an electron beam tool 104, and an instrument front-end module (EFEM) 106. The electron beam tool 104 is located inside 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 wafer FOUPs (front opening unified pods) containing wafers to be inspected (e.g., semiconductor wafers, or wafers made of other materials) or samples (wafers and samples can be used interchangeably). A “lot” is a group of wafers that can be loaded for processing as a batch.

[0021]

[0035] One or more robotic arms (not shown) within the EFEM 106 can transport a wafer to the loading / locking chamber 102. The loading / locking chamber 102 is connected to a loading / locking vacuum pump system (not shown), which removes gas molecules from within the loading / locking chamber 102 to reach a first pressure lower than atmospheric pressure. After reaching the first pressure, one or more robotic arms (not shown) can transport the wafer from the loading / locking 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 from within the main chamber 101 to reach a second pressure lower than the first pressure. After reaching the second pressure, the wafer is subjected to inspection by an electron beam tool 104. The electron beam tool 104 may be a single-beam system or a multi-beam system. It is understood that the systems and methods disclosed herein are applicable to both single-beam and multi-beam systems.

[0022]

[0036] The controller 109 is electronically connected to the electron beam tool 104. The controller 109 may be a computer configured to perform various controls of the EBI system 100. The controller 109 may also include processing circuits configured to perform various signal and image processing functions. In some embodiments, the controller 109 may be separate from and independent of the EBI system 100. For example, the controller 109 may be a computer that is communicatively coupled to the EBI system 100. In some embodiments, the controller 109 is shown in Figure 1 as being outside the structure including the main chamber 101, load / lock chamber 102, and EFEM 106, but it is recognized that the controller 109 may be part of the structure.

[0023]

[0037] In some embodiments, the controller 109 may include one or more processors 142. A processor may be a general-purpose or specific electronic device capable of manipulating or processing information. For example, a processor may include any number of central processing units (i.e., "CPUs"), graphics processing units (i.e., "GPUs"), optical processors, programmable logic control units, microcontrollers, microprocessors, digital signal processors, IP (intellectual property) cores, programmable logic arrays (PLAs), programmable array logic (PALs), general-purpose array logic (GALs), complex programmable logic devices (CPLDs), field-programmable gate arrays (FPGAs), systems-on-a-chip (SoCs), application-specific integrated circuits (ASICs), and any kind of circuitry capable of data processing. A processor may also be a virtual processor, including one or more processors distributed across multiple machines or devices connected via a network.

[0024]

[0038] In some embodiments, the controller 109 may further include one or more memories 144. The memories may be general-purpose or specific electronic devices capable of storing code and data accessible by the processor (e.g., via a bus). For example, the memories may include any number of random-access memories (RAM), read-only memories (ROM), optical disks, magnetic disks, hard drives, solid-state drives, flash drives, security digital (SD) cards, memory sticks, compact flash (CF) cards, or any combination of any type of storage device. The code may include an operating system (OS) and one or more application programs (i.e., "apps") for a particular task. The memories may also be virtual memories, including one or more memories distributed across multiple machines or devices connected via a network.

[0025]

[0039] Referring here to Figure 2, Figure 2 is a schematic diagram showing an exemplary electron beam tool 104, which includes a multibeam inspection tool that is part of the EBI system 100 of Figure 1, consistent with several embodiments of the present disclosure. The multibeam electron beam tool 104 (also referred to herein as apparatus 104) includes an electron source 201, a Coulomb aperture plate (or "Gun aperture plate") 271, a focusing lens 210, a radiation source conversion unit 220, a primary projection system 230, a motorized stage 209, and a sample holder 207 supported by the motorized stage 209 to hold a wafer 208 to be inspected. The multibeam electron beam tool 104 may further include a secondary projection system 250 and an electron detection device 240. The primary projection system 230 may include an objective lens 231. The electron detection device 240 may include a plurality of detection elements 241, 242, and 243. A beam separator 233 and a deflection scanning unit 232 may be located inside the primary projection system 230.

[0026]

[0040] The electron source 201, Coulomb aperture plate 271, focusing lens 210, radiation source conversion unit 220, beam separator 233, deflection scanning unit 232, and primary projection system 230 can be aligned with the primary optical axis 204 of the device 104. The secondary projection system 250 and electron detection device 240 can be aligned with the secondary optical axis 251 of the device 104.

[0027]

[0041] The electron source 201 may include a cathode (not shown) and an extractor or anode (not shown), and during operation, the electron source 201 is configured to emit primary electrons from the cathode, which are extracted or accelerated by the extractor and / or anode to form a primary electron beam 202, which forms a (virtual or real) primary beam crossover 203. The primary electron beam 202 can be visualized as being emitted from the primary beam crossover 203.

[0028]

[0042] The radiation source conversion unit 220 may include an image forming element array (not shown), an aberration compensator array (not shown), a beam limiting aperture array (not shown), and a pre-bending micro-deflector array (not shown). In some embodiments, the pre-bending micro-deflector array deflects a plurality of primary beamlets 211, 212, 213 of the primary electron beam 202 so that they are incident perpendicular to the beam limiting aperture array, the image forming element array, and the aberration compensator array. In some embodiments, the focusing lens 210 is designed to focus the primary electron beam 202 into a parallel beam and cause it to be incident perpendicular to the radiation source conversion unit 220. The image forming element array may include a plurality of micro-deflectors or microlenses to affect the plurality of primary beamlets 211, 212, 213 of the primary electron beam 202 and may form a plurality of (virtual or real) parallel images of the primary beam crossover 203, one for each of the primary beamlets 211, 212, and 213. In some embodiments, the aberration compensator array may include a field curvature compensator array (not shown) and an astigmatism compensator array (not shown). The field curvature compensator array may include a plurality of microlenses to compensate for the field curvature of the primary beamlets 211, 212, and 213. The astigmatism compensator array may include a plurality of microastigmatism correctors to compensate for the astigmatism of the primary beamlets 211, 212, and 213. A beam limiting aperture array may be configured to limit the diameter of the individual primary beamlets 211, 212, and 213. Figure 2 shows three primary beamlets 211, 212, and 213 as an example, and it will be understood that the source conversion unit 220 may be configured to form any number of primary beamlets. The controller 109 may be connected to various parts of the EBI system 100 in Figure 1, such as the source conversion unit 220, the electron detection device 240, the primary projection system 230, or the motorized stage 209. In some embodiments, the controller 109 may perform various image and signal processing functions, as will be described in more detail below.The controller 109 may also generate various control signals to control the operation of one or more components of the charged particle beam inspection system.

[0029]

[0043] The focusing lens 210 is configured to focus the primary electron beam 202. The focusing lens 210 can be further configured to adjust the currents of the primary beamlets 211, 212, and 213 downstream of the radiation source conversion unit 220 by changing the focusing force of the focusing lens 210. Alternatively, the current can be changed by changing the size of the radius of the beam limiting aperture within the beam limiting aperture array corresponding to each primary beamlet. The current can be changed by changing both the size of the radius of the beam limiting aperture and the focusing force of the focusing lens 210. The focusing lens 210 may be an adjustable focusing lens, which can be configured such that the position of the first principle plane is movable. The adjustable focusing lens may be configured to be magnetic, as a result, the off-axis beamlets 212 and 213 may irradiate the radiation source conversion unit 220 with a rotation angle. The rotation angle changes with the focusing force or the position of the first principle plane of the adjustable focusing lens. The focusing lens 210 may be a rotation-preventing focusing lens that can be configured to keep its rotation angle constant while the focusing force of the focusing lens 210 is changing. In some embodiments, the focusing lens 210 may be an adjustable rotation-preventing focusing lens in which the rotation angle does not change when the focusing force and the position of the first principal plane change.

[0030]

[0044] The objective lens 231 may be configured to focus the beamlets 211, 212, and 213 onto the wafer 208 for inspection, and in the present embodiment, three probe spots 221, 222, and 223 may be formed on the surface of the wafer 208. The Coulomb aperture plate 271 is configured to reduce the Coulomb effect by blocking peripheral electrons of the primary electron beam 202 during operation. The Coulomb effect can enlarge the size of each of the probe spots 221, 222, and 223 of the primary beamlets 211, 212, and 213, and thus reduce the inspection resolution.

[0031]

[0045] The beam separator 233 may be, for example, a Wien filter including an electrostatic deflector that generates an electrostatic dipole field and a magnetic dipole field (not shown in Figure 2). When in operation, the beam separator 233 can be configured to exert an electrostatic force on the individual electrons of the primary beamlets 211, 212, and 213 by the electrostatic dipole field. The electrostatic force is equal in magnitude to the magnetic force exerted on the individual electrons by the magnetic dipole field of the beam separator 233, but in the opposite direction. Thus, the primary beamlets 211, 212, and 213 can pass through the beam separator 233 at least substantially straight with at least substantially zero deflection angle.

[0032]

[0046] During operation, the deflection scanning unit 232 is configured to deflect the primary beamlets 211, 212, and 213 to scan probe spots 221, 222, and 223 across individual scan areas within sections of the wafer surface 208. In response to the incidence of the primary beamlets 211, 212, and 213 or probe spots 221, 222, and 223 on the wafer 208, electrons emerge from the wafer 208, generating three secondary electron beams 261, 262, and 263. Each of the secondary electron beams 261, 262, and 263 typically contains secondary electrons (with electron energies of 50 eV or less) and backscattered electrons (with electron energies between 50 eV and the landing energies of the primary beamlets 211, 212, and 213). The beam separator 233 is configured to deflect the secondary electron beams 261, 262, and 263 toward the secondary projection system 250. Subsequently, the secondary projection system 250 focuses the secondary electron beams 261, 262, and 263 toward the detection elements 241, 242, and 243 of the electron detection device 240. The detection elements 241, 242, and 243 are configured to detect the corresponding secondary electron beams 261, 262, and 263 and generate corresponding signals that are transmitted to the controller 109 or a signal processing system (not shown) to construct an image of the corresponding scan area of ​​the wafer 208, for example.

[0033]

[0047] In some embodiments, detection elements 241, 242, and 243 detect the corresponding secondary electron beams 261, 262, and 263, respectively, and generate corresponding intensity signal outputs (not shown) toward an image processing system (e.g., controller 109). In some embodiments, each detection element 241, 242, and 243 may include one or more pixels. The intensity signal output of a detection element may be the sum of the signals generated by all pixels within the detection element.

[0034]

[0048] As shown in Figure 2, the wafer inspection system 199 (or "System 199") may be provided by or communicatively coupled to the radiation source conversion unit 220. For example, System 199 may include an inspection image acquirer 200, storage 130, reference data acquirer 160 (or "Reference Data Acquisition 160"), and controller 109, all communicatively coupled to one another. In some embodiments, the inspection image acquirer 200, storage 130, or reference data acquirer 160 may include components that can be incorporated as modules of the controller 109 or System 199, or that can be implemented within the controller 109 or System 199. In some embodiments, System 199 or controller 109 may acquire and analyze reference data (e.g., GDS data) of the IC layout on the wafer, as disclosed herein. In some embodiments, System 199 or controller 109 may control the inspection process performed by a charged particle multibeam system (e.g., System 104) based on the processed reference data, as disclosed herein.

[0035]

[0049] The inspection image acquisition device 200 may include one or more processors. For example, the inspection image acquisition device 200 may include a computer, server, mainframe host, terminal, personal computer, any type of mobile computing device, etc., or a combination thereof. The inspection image acquisition device 200 may be communicably coupled to the electronic detection device 240 of the apparatus 104 via a medium such as a conductor, optical fiber cable, portable storage medium, IR, Bluetooth®, the Internet, wireless network, wireless radio, or a combination thereof. The inspection image acquisition device 200 may receive signals from the electronic detection device 240 and construct an image. Thus, the inspection image acquisition device 200 may acquire an image of the wafer 208. The inspection image acquisition device 200 may also perform various post-processing functions such as generating contours and superimposing indicators on the acquired image. The inspection image acquisition device 200 may be configured to adjust the brightness and contrast of the acquired image.

[0036]

[0050] In some embodiments, the image acquisition unit 200 may acquire image data of a wafer based on an imaging signal received from an electronic detection device 240. The imaging signal may correspond to a scanning operation for imaging charged particles. The acquired image data may correspond to a single image containing one or more areas that may contain various features of wafer 208 (e.g., repeating cell patterns or cell edges as disclosed herein). The acquired image data may be stored in storage 130. The single image may be a source image that can be divided into multiple regions. Each of these regions may contain one imaging area that contains a pattern or feature of wafer 208. The acquired image data may correspond to multiple images of one or more areas of wafer 208 that are sampled multiple times over a time series. The multiple images may be stored in storage 130. In some embodiments, the controller 109 may be configured to perform the image processing steps disclosed herein on inspection image data associated with multiple images of one or more areas of wafer 208.

[0037]

[0051] In some embodiments, the controller 109 may include a measurement circuit (e.g., an analog-to-digital converter) to acquire the distribution of detected secondary electrons. The electron distribution data collected during the detection time window can be used in combination with the corresponding scan data of the primary beamlets 211, 212, and 213 incident on the wafer surface to reconstruct an image of the wafer structure under inspection. The reconstructed image can be used to reveal various features of the internal or external structure of the wafer 208, thereby revealing any defects that may be present in the wafer.

[0038]

[0052] The reference data acquirer 160 may include one or more processors. For example, the reference data acquirer 160 may include a computer, server, mainframe host, terminal, personal computer, any type of mobile computing device, etc., or a combination thereof. The reference data acquirer 160 may be communicably coupled to storage 130, or other types of internal or external storage (e.g., design database) configured to store reference data (e.g., GDS data or design data) used for designing and inspecting integrated circuit layouts on a wafer. The reference data acquirer 160 may acquire reference data via a medium such as a conductor, fiber optic cable, portable storage medium, IR, Bluetooth®, the Internet, wireless network, wireless radio, or a combination thereof. The reference data may be associated with the design of the IC layout on the wafer. The reference data may be acquired via software simulation, or via geometric design and Boolean operations. In some embodiments, the reference data may be stored in a data structure such as a GDS data file or in any preferred data format.

[0039]

[0053] In some embodiments, the controller 109 may analyze reference data acquired by the reference data acquirer 160. For example, as disclosed herein, the controller 109 may process the GDS data file to identify repeating patterns corresponding to cell arrays and cell edges, respectively. Based on the processed GDS data file, the controller 109 may also generate control signals to control the operation of the radiation source conversion unit 220 or other components of the electron beam tool 104 to inspect several areas of the wafer 208 using predetermined parameters. For example, control signals generated by the controller 109 may be used to control the primary beamlets 211, 212, 213 to scan probe spots 221, 222, 223 across several scanning areas on the wafer 208 (such as areas corresponding to identified cell arrays or cell edges).

[0040]

[0054] The storage 130 may be a storage medium such as a hard disk, random access memory (RAM), cloud storage, or other types of computer-readable memory. The storage 130 may be coupled to the inspection image acquisition device 200 and used to store scanned raw image data as original images and post-processed images. The storage 130 may also be coupled to the reference data acquisition device 160 and used to store reference data and post-processed reference data.

[0041]

[0055] In some embodiments, the controller 109 may control the motorized stage 209 to move the wafer 208 during inspection. In some embodiments, the controller 109 may enable the motorized stage 209 to continuously move the wafer 208 in one direction at a constant speed. In other embodiments, the controller 109 may enable the motorized stage 209 to change the moving speed of the wafer 208 over time according to the steps of the scanning process.

[0042]

[0056] As shown in Figure 2, the controller 109 can be electronically connected to the electron beam tool 104. As disclosed herein, the controller 109 may be a computer configured to perform various controls of the electron beam tool 104. In some embodiments, the inspection image acquirer 200, the reference data acquirer 160, the storage 130, and the controller 109 can be integrated as a single control unit.

[0043]

[0057] Figure 2 shows that the electron beam tool 104 uses three primary electron beams, but it is recognized that the electron beam tool 104 may have any preferred number of primary electron beams. This disclosure does not limit the number of primary electron beams used within the electron beam tool 104. Compared to a single-charged particle beam imaging system ("single-beam system"), a multi-beam system ("multi-beam system") may be designed to optimize throughput for different scanning modes. Embodiments of this disclosure provide a multi-beam system that has the ability to optimize throughput in different scanning modes by using beam arrays with different geometries and adapting to different throughput and resolution requirements.

[0044]

[0058] Figure 3 is a block diagram of an exemplary system 300 for processing reference data (e.g., GDS data) consistent with some embodiments of the present disclosure. In some embodiments, the system 300 includes a reference data acquirer 305, a first-level grouping component 310, a clustering component 320, a second-level grouping component 340, and an output component 345 for outputting classes of patterns (e.g., clusters, groups, tuples, or subsets). In some embodiments, the clustering component 320 further includes a Fourier transform component 325, a recursive partitioning component 330, and a cohesiveness test component 335. In some embodiments, the reference data analysis may include a first-level grouping process performed by the first-level grouping component 310, a clustering process performed by the clustering component 320, and a subsequent second-level grouping process performed by the second-level grouping component 340. In some embodiments, the first-level grouping or second-level grouping process may be optional for processing the reference data.

[0045]

[0059] It is understood that System 300 may include one or more components or modules integrated as part of a charged particle beam inspection system (e.g., electron beam inspection system 100 in Figure 1). System 300 may also include one or more components or modules separate from and communicatively coupled to the charged particle beam inspection system. System 300 may include one or more processors and storage memories. For example, System 300 may include a computer, server, mainframe host, terminal, personal computer, any kind of mobile computing device, etc., or a combination thereof. In some embodiments, System 300 may include one or more components (e.g., software modules, hardware modules, or a combination thereof) that can be implemented within Controller 109 or System 199 as disclosed herein.

[0046]

[0060] As shown in Figure 3, in some embodiments, the system 300 may include a reference data acquirer 305. The reference data acquirer 305 may be configured to acquire reference data processed by the system 300 (including, for example, multiple patterns as shown in Figures 4A-4D, 5A, and 5C). The multiple patterns in the acquired reference data may correspond to patterns on a mask used to partition a portion of a wafer (e.g., a die) or patterns printed on a portion of a wafer (e.g., a die) via a lithography process. In some embodiments, the reference data acquirer 305 may be substantially similar to the reference data acquirer 160 in Figure 2. In some embodiments, the reference data acquirer 305 may differ from the reference data acquirer 160. For example, the reference data acquirer 305 may be contained within or implemented in a computing device separate from the charged particle beam inspection system.

[0047]

[0061] In some embodiments, the reference data disclosed herein may be in the Graphics Database System (GDS) format, Graphics Database System II (GDSII) format, Open Artwork System Interchange Standard (OASIS) format, Caltech Intermediate Format (CIF), etc. In some embodiments, the reference data may include an IC design layout on wafer 208 under inspection. The IC design layout may be based on a pattern layout for constructing the wafer. The IC design layout may correspond to one or more photolithography masks, or to reticles used to transfer features from the photolithography masks or reticles to the wafer. In some embodiments, the reference data in GDS or OASIS may include, among other things, feature information stored in a binary file format representing planar geometric shapes, text, and other information related to the wafer design layout.

[0048]

[0062] In some embodiments, reference data, such as GDS data files, may correspond to a design architecture formed on multiple hierarchical layers on a wafer. The reference data may be presented as an image file and may include characteristic information (e.g., shape, dimensions, etc.) of various patterns on various layers formed on the wafer. For example, the reference data may include information associated with various structures, devices, and systems fabricated on the wafer (including, but not limited to, substrates, doped regions, polygate layers, resistive layers, dielectric layers, metal layers, transistors, processors, memories, metal connections, contacts, vias, systems on a chip (SoCs), networks on a chip (NoCs), or other suitable structures). The reference data may further include IC layout designs for memory blocks, logic blocks, and interconnect wiring.

[0049]

[0063] In some embodiments, the system 300 may include a first-level grouping component 310 configured to process reference data acquired from a reference data acquirer 305. In some embodiments, the first-level grouping component 310 may analyze and group one or more patterns (e.g., by pattern type, shape, number, density, etc.). For example, the first-level grouping component 310 may compare multiple patterns in the reference data to classify (e.g., categorize) identical patterns within the same group (e.g., class, category, bin, etc.) (e.g., as shown in Figure 4A). The first-level grouping component 310 may compare geometric shapes and features between patterns within one or more pairs from the reference data. In some embodiments, the first-level grouping component 310 may be configured to perform one or more steps as disclosed with reference to Figure 7. In some embodiments, the first-level grouping component 310 may be part of a charged particle beam inspection system (e.g., including one or more components or modules that may be implemented in a controller 109 or system 199). In some embodiments, the first level grouping component 310 may be contained within a computing device that is separate from and communicatively coupled to the charged particle beam inspection system.

[0050]

[0064] In some embodiments, the system 300 may include a clustering component 320 configured to apply one or more clustering algorithms, as disclosed herein, for clustering patterns from reference data. The clustering component 320 may apply the clustering algorithm to grouped patterns obtained from a first-level grouping component 310 (e.g., representative patterns as shown in Figure 4B) or to patterns in reference data obtained by a reference data acquirer 305. In some embodiments, as shown in Figure 4B, the clustering component 320 may use a DBSCAN algorithm to analyze whether the similarity between two or more patterns exceeds a predetermined threshold in order to determine whether patterns should be merged into the same cluster.

[0051]

[0065] In some embodiments, a Fourier transform component (e.g., a Fourier transform component 325 that clusters component 320) may perform a Fourier transform (e.g., a 1D or 2D Fourier transform, also called a Fourier transform) on multiple patterns to plot an image in the frequency domain. For example, as shown in Figure 5A, patterns 502 and 504 may be transformed into Fourier transform base images (e.g., Fourier domain images, or frequency domain images) 512 and 514. In some embodiments, a Fourier transform component (e.g., a Fourier transform component 325) may transform the Fourier transform base images into higher-dimensional vectors. For example, as shown in Figure 5B, the Fourier transform base image 522 may be transformed into a vector 526. In some embodiments, the Fourier transform component 325 may further determine the distance (e.g., Euclidean distance) between feature points in the Fourier transform base vectors and the cluster centroids. This distance may be used to evaluate the similarity between patterns, as shown in Figures 5A-5C and 6A-6C.

[0052]

[0066] In some embodiments, a recursive partitioning component 330 that clusters component 320 may perform a hierarchical clustering process (e.g., process 540) for partitioning Fourier transform-based features (e.g., images or vectors as disclosed herein) in the frequency domain to obtain multiple clusters. In some embodiments, as shown in Figure 5C, the recursive partitioning component 330 uses a clustering algorithm for recursive partitioning (such as a k-means clustering algorithm or any other suitable clustering algorithm). For example, the recursive partitioning component 330 may first partition a pattern into a certain number of groups (or subsets). Within each group, the recursive partitioning component 330 further performs recursive partitioning until a condition or threshold for stopping recursive partitioning is met.

[0053]

[0067] In some embodiments, the cohesion test component 335, which clusters component 320, may determine a condition or threshold used to stop recursive segmentation. This condition or threshold may be associated with a similarity threshold, the maximum level of the hierarchy in the hierarchical clustering process, or the minimum number of vectors contained within a subset, before further segmentation. In some embodiments, the cohesion test component 335 may use cohesion tests. For example, as shown in Figure 6A, the cohesion tests may include a chi-squared distribution cohesion test or a deformation cohesion test used to determine the radius of the test circle. As shown in Figures 6B-6C, the test circle may be used to evaluate whether there are enough data points within the test circle to stop recursive segmentation. In some embodiments, the user may adjust the radius to customize the size of the test circle to directly or indirectly tune one or more parameters used in the recursive segmentation process. The cohesiveness test component 335 can further determine the degree of cohesiveness (e.g., the ratio of the number of data points inside the test circle to the total number of data points) and compare the degree of cohesiveness with a threshold to determine whether to stop or continue recursive segmentation (e.g., Figures 6B-6C).

[0054]

[0068] In some embodiments, the clustering component 320 may be configured to perform one or more steps as disclosed with reference to Figure 7. In some embodiments, the clustering component 320 may be part of a charged particle beam inspection system (for example, including one or more components or modules that may be implemented within a controller 109 or system 199). In some embodiments, the clustering component 320 may be contained within a computing device that is separate from and communicably coupled to the charged particle beam inspection system.

[0055]

[0069] In some embodiments, the system 300 may include a second-level grouping component 340 configured to further process the grouped patterns obtained from the clustering component 320. The second-level grouping component 340 may analyze the patterns within and between each group or cluster of patterns for further merging or splitting based on pattern similarity (e.g., Figure 4C). In some embodiments, the similarity standard may be customized by the user. In some embodiments, the second-level grouping component 340 may be configured to perform one or more steps as disclosed with reference to Figure 7. In some embodiments, the second-level grouping component 340 may be part of the charged particle beam inspection system (e.g., including one or more components or modules that may be implemented in the controller 109 or system 199). In some embodiments, the second-level grouping component 340 may be contained within a computing device separate from and communicably coupled to the charged particle beam inspection system.

[0056]

[0070] In some embodiments, the system 300 may output a set of patterns or clusters used during inspection by using an indicator, such as coordinates on a wafer or die. In some embodiments, the output component 345 may be part of the charged particle beam inspection system (e.g., including one or more components or modules that can be implemented in the controller 109 or system 199). In some embodiments, the output component 345 may be contained within a computing device that is separate from and communicably coupled to the charged particle beam inspection system.

[0057]

[0071] Figure 4A is an exemplary process of performing a first-level grouping process 400 on multiple patterns 402 in reference data (corresponding to, for example, portions of a GDS image) to obtain multiple representative patterns 404 consistent with several embodiments of the present disclosure. In some embodiments, the multiple patterns 402 correspond to patterns on a mask used to partition portions of a wafer (e.g., a die). In some embodiments, the multiple patterns 402 correspond to patterns printed onto portions of a wafer (e.g., a die) via a lithography process.

[0058]

[0072] In some embodiments, the first-level grouping process 400 is performed based on a comparison of the geometric shapes of multiple patterns 402. For example, each pair of patterns within the multiple patterns 402 is compared, and based on this comparison, the multiple patterns 402 are separated into multiple groups. In some embodiments, as a result of the first grouping process 400, the patterns within a group are geometrically identical to one another and are placed in a single bin. In some embodiments, each representative pattern 404 represents the identical pattern in the corresponding group obtained from the first-level grouping process.

[0059]

[0073] Figure 4B is an exemplary process of performing a clustering process 420 on grouping results obtained from a first grouping process 400, as shown in Figure 4A, which is consistent with some embodiments of the present disclosure. In some embodiments, the clustering process 420 is performed on the grouped patterns in reference data, represented by representative patterns 404 for each group. In some embodiments, the patterns of two bins obtained from the process in Figure 4A are compared, and their similarity can be quantified and calculated using any suitable clustering algorithm. For example, the clustering process 420 may use the density-based spatial clustering of applications with noise (DBSCAN) algorithm. In some embodiments, if the similarity between two representative patterns is above a predetermined threshold, the two bins (e.g., as shown in a new group (or bin) 422 or 424) are merged. Otherwise, the group represented by representative pattern 426 remains unmerged. In some embodiments, the clustering process 420 is performed until all bins have been evaluated.

[0060]

[0074] Figure 4C is an exemplary process of performing a second-level grouping process 440 on clustering results obtained from a clustering process 420, as shown in Figure 4B, which is consistent with some embodiments of this disclosure. In some embodiments, the patterns from each bin obtained in process 420 in Figure 4B are further analyzed to obtain patterns of various classes (e.g., classes 442, 444, 446, and 448 in Figure 4C). In some embodiments, patterns that are more similar to each other are classified into classes, while patterns that are less similar to each other are further divided into various classes (e.g., bin 422 divided into classes 442 and 444). In some embodiments, the similarity standard for classifying patterns in process 440 can be customized by the user. The second-level grouping process may use a different standard than the first-level grouping process for comparing similarity between patterns. For example, in first-level grouping, identical patterns are placed in the same group (or bin), while in second-level grouping, sufficiently similar patterns (e.g., with a difference below a certain threshold) are placed in the same group. In some embodiments, the standards used to compare patterns during first-level or second-level grouping may be associated with the geometric shape, size, feature type, density, distance between feature points, etc., of the patterns. In some embodiments, patterns may be compared in pairs during second-level or first-level grouping.

[0061]

[0075] Next, Figure 4D is a diagram illustrating an example of comparing two patterns during a grouping or clustering process, as shown in Figures 4A-4C, which correspond to some embodiments of the present disclosure. In some embodiments, the geometric shapes of a pair of patterns (e.g., patterns 462, 464) are compared during the clustering process 420 by using a preferred clustering algorithm, such as the DBSCAN algorithm, as disclosed herein. In some embodiments, any two patterns from a total number (e.g., n) of patterns are compared, so this process is n 2This may require multiple comparisons, which is a time-consuming process. Furthermore, as shown in Figure 4D, two pattern images 462 and 464 are superimposed to measure the difference between the images. However, this superimposition may overlook the possibility that two identical patterns may appear different due to misalignment or rotation relative to each other. As a result, different bins or classes may contain overlapping patterns, leading to further increased inspection time and wasted resources.

[0062]

[0076] Figures 5A-5C and 6A-6B illustrate exemplary hierarchical clustering processes based on Fourier transform-based reference data consistent with some embodiments of the present disclosure. Figure 5A illustrates exemplary process 500 in which a Fourier transform is performed on multiple patterns (e.g., corresponding to portions of a GDS image) in reference data consistent with some embodiments of the present disclosure. These patterns may be obtained from grouped patterns from a first-level grouping component 310 or from reference data from a reference data acquirer 305. In some embodiments, a Fourier transform component 325 may apply a 2D Fourier transform to the patterns (e.g., patterns 502, 504) to draw the image in the frequency domain, as shown in images 512, 514.

[0063]

[0077] In some embodiments, the distance between feature points in Fourier transform-based reference data in the frequency domain can be determined. For example, the Euclidean distance between two feature points between images 512, 514 and the cluster centroid can be determined. This distance can be used to determine the similarity between vectors corresponding to two patterns 512, 514, as disclosed herein.

[0064]

[0078] Figure 5B shows an exemplary process 520 for transforming a Fourier transform-based reference image (e.g., Fourier transform-based image 522) into a vector, consistent with some embodiments of the present disclosure. In some embodiments, the pixels of image 522 are analyzed to obtain the pixel value of each pixel, for example, as shown in Figure 524. Then, based on this pixel information, image 522 is extended into a higher-dimensional vector 526 in the frequency domain. This distance may be calculated based on the Fourier transform-based vector.

[0065]

[0079] Figure 5C shows a diagram illustrating an exemplary hierarchical clustering process 540 for partitioning Fourier transform-based features in the frequency domain to obtain multiple clusters consistent with several embodiments of the present disclosure. In some embodiments, the recursive partitioning component 330 uses a clustering algorithm, such as a k-means clustering algorithm, or another preferred clustering algorithm, to recursively partition the multiple Fourier transform-based features into multiple clusters. In some embodiments, the distance between a vector and a cluster centroid is compared to a predetermined threshold to determine whether the vector is included in this cluster. Vectors that are sufficiently close to the cluster centroid (e.g., have a distance within the predetermined threshold) are included in the corresponding cluster. In some embodiments, the clustering algorithm uses a predetermined number of clusters (e.g., a fixed number of clusters) when partitioning the Fourier transform-based features. In some embodiments, the hierarchical clustering process 540 does not set a predetermined or fixed number of clusters. Rather, the process 540 uses a condition or threshold to stop the recursive partitioning, such as a stopdivide function.

[0066]

[0080] In some embodiments, with respect to the hierarchical clustering process disclosed herein, the recursive partitioning component 330 first partitions the entire dataset into a plurality of subsets. In some embodiments, the first level of partitioning may use a preferred clustering algorithm, such as a k-means algorithm, to partition the entire dataset into a certain number of subsets (e.g., two or more subsets) based on the similarity of the Fourier-transformed feature vectors (e.g., or distance to the cluster centroid). For example, as shown in Figure 5C, the original dataset 540 may first be partitioned into subset 542 and another subset 550 by using a k-means algorithm, where the Fourier-transformed features in each subset are at a distance close to the cluster centroid. Next, the recursive partitioning component 330 recursively partitions each subset (e.g., subset 550) into a plurality of subsets at the next level (e.g., subsets 552, 554). When a condition or threshold for stopping the recursive partitioning is met (e.g., with respect to subset 542), the recursive partitioning is stopped. Subsets 552 and 554 are further subdivided, respectively, until a condition or threshold for stopping recursive subdivision is met.

[0067]

[0081] In some embodiments, this condition or threshold may be associated with a similarity threshold used to compare with the similarity of Fourier-transformed feature vectors within a subset to determine whether recursive partitioning should be stopped. In some embodiments, this condition or threshold may be associated with the maximum level of the hierarchy in a hierarchical clustering process. For example, recursive partitioning stops when the level of a subset reaches the maximum level (or deepest level) of the threshold. In some embodiments, this condition or threshold may be associated with the minimum number of vectors contained within a subset before further partitioning. For example, recursive partitioning stops within a subset if the number of vectors in that subset is less than a minimum threshold.

[0068]

[0082] In some embodiments, the agglomeration test component 335 of FIG. 3 may use the agglomeration test within the StopDivide function. For example, the agglomeration test can be used to measure how vectors integrate or how cohesive data points are within a subset. In some embodiments, as shown in FIG. 6A, the agglomeration test may include a chi-square distribution agglomeration test based on the assumption that the components of all dimensions of the vectors within a cluster or subset follow a normal distribution (or another suitable distribution function). Each data point in FIG. 6A represents a feature vector in the frequency domain corresponding to a Fourier transform-based feature image. In some embodiments, given a cluster data set V, a cluster centroid c v can be determined, and an average distance r v (e.g., a mean distance) of the data set V can be determined based on the respective distances between the vectors within the cluster and the cluster centroid c v . Next, based on a known distribution function (e.g., a normal distribution or another function fitting the data set), a radius r 90 (e.g., as an example, a radius of a test circle using a 90 percent condition) of the test circle using r t can be calculated, where r 90 corresponds to the expected value that 90% of the data points of the cluster are contained within a circle centered at c 90 with a radius of r v . Next, as disclosed in FIGS. 6B-6C below, an agglomeration degree (e.g., the ratio of the actual number of data points contained within a test circle (e.g., centered at c 90 with a radius r t of r v ) to the total number of data points in the data set V) can be calculated. This ratio is compared with a predetermined threshold (e.g., 90%) to determine whether such a data set is sufficiently cohesive and whether to stop or continue the recursive partitioning.

[0069]

[0083] In some embodiments, the chi-squared distribution cohesion test may work better with clusters containing a large number of data points. Furthermore, the chi-squared distribution cohesion test considers the distance between vectors and cluster centroids, but does not necessarily consider the distance between vectors. For example, if the vectors within a cluster follow a normal distribution but have a variance greater than an acceptable threshold (e.g., the distance between vectors is not close enough, or the patterns are not actually similar enough), the chi-squared cohesion test may not effectively identify such problems. The chi-squared cohesion test may erroneously stop recursive segmentation, resulting in poor clustering quality.

[0070]

[0084] In some embodiments, as also shown in Figure 6A, the cohesiveness test may include a deformation cohesiveness test to address the above problem. For example, the deformation cohesiveness test uses the fixed radius (e.g., r) used in the chi-squared distribution cohesiveness test. t '=θr t Instead of the calculated radius (e.g., the r disclosed herein), 90 User-customizable radius (r) for defining the test circle based on a user selection coefficient (θ) between 0.1 and 1.0 to adjust (etc.). t ') provides. For example, the user provides the radius r of the test circle. t A coefficient θ (such as 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, or 1.0 in decimal) can be selected or entered to adjust the value to be larger or smaller, where the test circle is used to determine whether there are enough data points within the test circle to stop the recursive compartmentalization (e.g., whether the dataset V is sufficiently cohesive according to the distribution function), as disclosed below. The deformed cohesiveness test may provide user flexibility and convenience to customize one or more parameters (e.g., how similar the vectors are within a cluster) used to determine when the recursive compartmentalization process should be stopped. In some embodiments, the user may also select what the maximum value of the vectors they want to include within a cluster is.

[0071]

[0085] After determining the radius defining the test circle, cohesion is determined and compared to a threshold to determine whether recursive segmentation should be stopped. In some embodiments, cohesion is the ratio of the number of data points (e.g., corresponding to Fourier transform-based feature vectors) within the test circle to the total number of data points (e.g., vectors) within a subset (e.g., a cluster). In some embodiments, the threshold may be a predetermined value such as 90%, 85%, or 80%. The threshold is determined by the test radius (e.g., r 90 It can correspond to 90%. The threshold may also be selected or adjusted by the user or pre-set by the system.

[0072]

[0086] In some embodiments, as shown in Figure 6B, if the degree of cohesion does not exceed a certain threshold (for example, if there are insufficient data points, the radius r t If it exists within the test circle defined by , the recursive partitioning of the current cluster (or current subset) continues. As shown in Figure 6C, in some embodiments, the recursive partitioning stops if the cohesion is greater than a certain threshold (e.g., 90 percent: indicating that the majority of data points representing the feature vector are close enough to the cluster centroid).

[0073]

[0087] In some embodiments, the hierarchical clustering process disclosed in Figures 5A-5C and 6A-6B may be performed independently of or in combination with other grouping (such as first-level grouping or second-level grouping as disclosed in Figures 4A and 4C) or clustering processes.

[0074]

[0088] As disclosed herein, the recursive partitioning used in the clustering algorithm does not require comparing each pair and every pair of data points. Instead, the hierarchical clustering process first partitions the entire dataset into multiple subsets. Then, each subset is recursively partitioned into subsets at subsequent levels until a condition for stopping the recursive partitioning is met. Thus, the hierarchical clustering process may not take much time. For example, the N of comparisons performed in Figure 4D 2 In comparison to time, the time complexity of the hierarchical clustering process disclosed herein is Nlog(N).

[0075]

[0089] Furthermore, clustering algorithms that can consider orientation deviations (translational shifts or rotations, etc.) between patterns when comparing vectors are based on properties such as distance associated with Fourier transform-based features (e.g., images or vectors) in the frequency domain. Therefore, the division of the same pattern into various clusters can be avoided, and thus the clustering process can be more accurate and efficient.

[0076]

[0090] In addition, users can control or customize the clustering process by adjusting or selecting parameters used to evaluate whether recursive partitioning should be stopped (e.g., the radius for defining the test circle). Indirectly or directly through the effect of the radius, users can customize one or more parameters associated with recursive partitioning (e.g., how similar patterns can be within a cluster, the maximum number of vectors contained within a cluster, the maximum value of a cluster, or the maximum level of the partitioning hierarchy, etc.). As disclosed herein, users can conveniently select the radius of the test circle to tune one or more of these parameters of the recursive partitioning process.

[0077]

[0091] Figure 7 is a process flowchart representing an exemplary method 700 for processing reference data (e.g., grouping patterns extracted from reference data) that is consistent with some embodiments of the present disclosure. In some embodiments, one or more steps are performed by one or more components of the apparatus 300 in Figure 3, the controller 109 or system 199 in Figure 2, or the system 100 in Figure 1. In some embodiments, method 700 is performed on multiple patterns on a mask to pattern a portion of a wafer (e.g., a die). In some embodiments, method 700 may also be performed on multiple patterns printed (e.g., via lithography) on a portion of a wafer (e.g., a die).

[0078]

[0092] As shown in Figure 7, in step 710, image data containing multiple patterns (such as reference image data) is received. For example, the image data may be acquired by the reference data acquirer 305 in Figure 3 or the reference data acquirer 160 in Figure 2. The reference data may be acquired from the storage 130 in Figure 2 or from another suitable IC layout design database. The image data may be in any suitable data format as disclosed herein (such as a GDS data file corresponding to an IC design architecture formed on multiple hierarchical layers on a wafer (e.g., wafer 208)). The image data may include patterns on a mask used to form features on at least a portion of the wafer (such as a die). The image may also include patterns acquired from inspections performed on features printed on the wafer.

[0079]

[0093] In some embodiments, the Fourier transform component 325 may perform a Fourier transform on multiple patterns (e.g., patterns 502, 504 in Figure 5A) to obtain multiple Fourier transform base images in the frequency domain (e.g., images 512, 514 in Figure 5A). In some embodiments, the Fourier transform component 325 may further transform the Fourier transform base images into higher-dimensional vectors, as shown in Figure 5B. Similarity between patterns may be evaluated to group the patterns. In some embodiments, distances may be calculated with respect to each vector corresponding to the Fourier-transformed pattern, and this distance may be the Euclidean distance between each vector and the cluster centroid. In some embodiments, data points representing vectors that are sufficiently close to the cluster centroid may be contained within the same cluster.

[0080]

[0094] In step 720, the multiple patterns are separated into multiple sets of patterns (e.g., subsets 542 and 550 in Figure 5C) after undergoing Fourier transform and vectorization. In some embodiments, the Fourier-transformed base images are separated using a k-means algorithm, where the Fourier-transformed features within each subset are at a distance close to the cluster centroid.

[0081]

[0095] In step 730, the recursive segmentation component 330 performs hierarchical clustering on each set of patterns to obtain multiple subsets of patterns by recursively evaluating the features associated with each set of patterns. In some embodiments, as shown in Figure 5C, the segmentation component 330 performs recursive segmentation on each set of patterns based on the results of recursively evaluating the features at each hierarchical level. Features may relate to the similarity between patterns in each set of patterns (such as cohesion, which is determined based on how similar the patterns within each set of patterns are).

[0082]

[0096] In some embodiments, the cohesion test component 335 may perform a cohesion test to evaluate features, as shown in Figures 6A–6C. The cohesion test component 335 may determine the degree of cohesion of each set of patterns. For example, the degree of cohesion may be determined as the ratio of the number of data points inside the test circle to the total number of data points (e.g., Figure 6A). The degree of cohesion may be compared to a threshold to determine whether to stop or continue recursive segmentation (e.g., Figures 6B–6C). For example, if the degree of cohesion (e.g., the ratio) is determined to be less than a predetermined threshold, as shown in Figure 6B, recursive segmentation of the current cluster (or current subset) continues. If the degree of cohesion is determined to be greater than a predetermined threshold, as shown in Figure 6C, recursive segmentation of the current cluster (or current subset) stops.

[0083]

[0097] In some embodiments, the radius of the test circle (r 90 These can be determined by using the chi-square cohesion test, as shown in Figure 6A. In some embodiments, the radius of the test circle (user-customizable radius) can be determined by using the deformation cohesion test, as shown in Figure 6A.

[0084]

[0098] In some embodiments, via deformation cohesiveness testing, the user may adjust the radius of the test circle to be larger or smaller. As disclosed herein, the user may be provided with optional selectors for selecting or adjusting other parameters used to determine when the recursive compartmentalization process should be stopped. Such parameters include, but are not limited to, the size of the radius, how similar the vectors are within a cluster, the maximum number of vectors contained within a cluster, the maximum level of the recursive compartmentalization hierarchy, or the minimum number of vectors contained within a subset before further compartmentalization. In some embodiments, the processes and algorithms disclosed herein for grouping reference data may also be used to analyze and group inspection image data after scanning the wafer surface.

[0085]

[0099] Figure 8 is a process flowchart representing an exemplary method 800 for processing reference data (e.g., image data including grouped patterns extracted from reference data) consistent with some embodiments of the present disclosure. In some embodiments, one or more steps are performed by one or more components of the apparatus 300 in Figure 3, the controller 109 or system 199 in Figure 2, or the system 100 in Figure 1. In some embodiments, method 800 is performed on multiple patterns on a mask to pattern a portion of a wafer (e.g., a die). In some embodiments, method 800 may also be performed on multiple patterns printed (e.g., via lithography) on a portion of a wafer (e.g., a die).

[0086]

[0100] As shown in Figure 8, in step 810, image data containing multiple patterns (such as reference image data) is received. For example, the image data may be acquired by the reference data acquirer 305 in Figure 3 or the reference data acquirer 160 in Figure 2. The reference data may be acquired from the storage 130 in Figure 2 or from another suitable IC layout design database. The image data may be in any suitable data format as disclosed herein (such as a GDS data file corresponding to an IC design architecture formed on multiple hierarchical layers on a wafer (e.g., wafer 208)). The image data may include patterns on a mask used to form features on at least a portion of the wafer, such as a die. The image may also include patterns acquired from inspections performed on features printed on the wafer.

[0087]

[0101] In some embodiments, the Fourier transform component 325 may perform a Fourier transform on multiple patterns (e.g., patterns 502, 504 in Figure 5A) to obtain multiple frequency-domain features (e.g., Fourier transform-based images (e.g., images 512, 514 in Figure 5A) or high-dimensional vectors as shown in Figure 5B). Similarity between patterns may be evaluated to group the patterns. In some embodiments, distances may be calculated with respect to each vector corresponding to the Fourier-transformed pattern, and this distance may be the Euclidean distance between each vector and the cluster centroid. In some embodiments, data points representing vectors sufficiently close to the cluster centroid may be included in the same cluster. In some embodiments, multiple frequency-domain features are separated into multiple sets of first-level patterns (e.g., subsets 542, 550 in Figure 5C). In some embodiments, frequency-domain features such as Fourier-transform-based images are separated by using a k-means algorithm, where the Fourier-transformed features in each subset have a distance close to the cluster centroid.

[0088]

[0102] In step 820, the recursive segmentation component 330 performs hierarchical clustering on multiple frequency domain features, each transformed from a multiple pattern. In some embodiments, the recursive segmentation component 330 recursively segmentes the multiple frequency domain features. In some embodiments, user selection of parameters is received. The parameters may relate to the evaluation of multiple patterns during recursive segmentation. For example, as disclosed herein, the user may adjust the radius of the test circle to be larger or smaller via a deformation cohesiveness test. The user may be provided with optional selectors for selecting or adjusting one or more parameters used to determine whether the recursive segmentation process should continue.

[0089]

[0103] In some embodiments, as shown in Figure 5C, the segmentation component 330 performs recursive segmentation on each set of patterns based on the results of recursively evaluating features at each hierarchical level. Features may relate to the similarity between patterns in each set of patterns (such as cohesion, which is determined based on how similar the patterns within each set of patterns are).

[0090]

[0104] In some embodiments, as shown in Figures 6A-6C, the cohesiveness test component 335 can determine the degree of cohesiveness of a set of patterns. For example, the degree of cohesiveness can be determined as the ratio of the number of data points inside the test circle to the total number of data points (e.g., Figure 6A). The degree of cohesiveness can be compared to a threshold to determine whether to stop or continue recursive segmentation (e.g., Figures 6B-6C). In some embodiments, the radius of the test circle (r 90 These can be determined by using the chi-squared cohesion test, as shown in Figure 6A. In some embodiments, the radius of the test circle can be determined by using the deformation cohesion test, as shown in Figure 6A, where the radius is a user-customizable radius.

[0091]

[0105] A non-temporary computer-readable medium may be provided in which the processor of the controller (e.g., controller 109 in Figure 1-2) stores commands for performing, among other things, image inspection, image acquisition, stage positioning, beam focusing, electric field adjustment, beam bending, focusing lens adjustment, activation of charged particle sources, beam deflection, and commands for processing reference data as described above with respect to method 700. General forms of non-temporary media include, for example, floppy disks, flexible disks, hard disks, solid-state drives, magnetic tapes, or any other magnetic data storage media, compact disk read-only memory (CD-ROM), any other optical data storage media, any physical media having a pattern of holes, random access memory (RAM), programmable ROM (PROM), and erasable programmable ROM (EPROM), FLASH-EPROM or any other flash memory, non-volatile random access memory (NVRAM), caches, registers, any other memory chips or cartridges and their networked versions.

[0092]

[0106] Embodiments can be further described by using the following clauses: 1. A method for grouping multiple patterns extracted from image data, comprising: receiving image data containing multiple patterns representing features formed on a portion of a wafer; separating the multiple patterns after Fourier transform into multiple sets of patterns; and performing hierarchical clustering on each set of patterns to obtain multiple subsets of patterns by recursively evaluating features relating to the similarity between patterns within each set of patterns. 2. The method according to Clause 1, further comprising performing a Fourier transform on multiple patterns to obtain multiple Fourier transform-based images in the frequency domain, and obtaining multiple vectors based on each of the multiple Fourier transform-based images. 3. The method of Clause 2, further comprising evaluating the similarity of multiple patterns based on distance features of multiple vectors. 4. The method according to any one of clauses 1 to 3, wherein the multiple patterns after the Fourier transform are separated into multiple sets of patterns by using a k-means algorithm based on distance features. 5. Hierarchical clustering is: the method described in any one of clauses 1 to 4, which includes recursively classifying each set of patterns based on the results of recursively evaluating features at each hierarchical level. 6. A method according to any one of clauses 1 to 5, further comprising performing a cohesion test for evaluating features, the method further comprising evaluating the degree of cohesion of each set of patterns to obtain an evaluation result, and determining, in accordance with the evaluation result, whether recursive segmentation should be paused. 7. The method according to Clause 6, further comprising receiving user input indicating parameters associated with evaluating cohesion. 8. Image data is in the format of any one of the following clauses, 1 to 7: Graphic Database System (GDS) format, Graphic Database System II (GDSII) format, Open Artwork System Interchange Standard (OASIS) format, or Caltech Intermediate Format (CIF). 9. A system for grouping multiple patterns extracted from image data, comprising a circuit configuration configured to cause the system to: receive image data containing multiple patterns representing features formed on a portion of a wafer; separate the multiple patterns after Fourier transform into multiple sets of patterns; and perform hierarchical clustering on each set of patterns in order to obtain multiple subsets of patterns by recursively evaluating features related to the similarity between patterns within each set of patterns. 10. The circuit configuration is further configured to cause the system to: perform a Fourier transform on multiple patterns to obtain multiple Fourier transform-based images in the frequency domain, and to obtain multiple vectors based on each of the multiple Fourier transform-based images, as described in Clause 9. 11. The system described in Clause 10, wherein the circuit configuration is further configured to cause the system to evaluate the similarity of multiple patterns based on distance features of multiple vectors. 12. A system described in any one of clauses 9 to 11, wherein the multiple patterns after the Fourier transform are separated into multiple sets of patterns by using a k-means algorithm based on distance features. 13. Hierarchical clustering is: a system described in any one of clauses 9 to 12, which includes recursively classifying each set of patterns based on the results of recursively evaluating features at each hierarchical level. 14. The circuit configuration is further configured to cause the system to perform cohesion tests for evaluating features, the cohesion tests comprising: evaluating the degree of cohesion of each set of patterns to obtain evaluation results; and determining, according to the evaluation results, whether recursive segmentation should be paused, as described in any one of Clauses 9 to 13. 15. The system as described in Clause 14, wherein the circuit configuration is further configured to receive user inputs that indicate parameters associated with evaluating the cohesion of the system. 16. Image data in the Graphic Database System (GDS) format, Graphic Database System II (GDSII) format, Open Artwork System Exchange Standard (OASIS) format, or Caltech Intermediate Format (CIF), as specified in any one of Clauses 9 to 15. 17. A non-temporary computer-readable medium storing a set of instructions executable by at least one processor of a system for causing the system to perform a method for grouping multiple patterns extracted from image data, the method comprising: receiving image data containing multiple patterns representing features formed on a portion of a wafer; separating the multiple patterns after a Fourier transform into multiple sets of patterns; and performing hierarchical clustering on each set of patterns to obtain multiple subsets of patterns by recursively evaluating features relating to the similarity between patterns within each set of patterns. 18. A set of instructions executable by at least one processor of a computing device, causing the computing device to further: perform a Fourier transform on multiple patterns to obtain multiple Fourier transform-based images in the frequency domain, and obtain multiple vectors based on each of the multiple Fourier transform-based images, in a non-temporary computer-readable medium as described in Clause 17. 19. A set of instructions executable by at least one processor of a computing device, causing the computing device to further: evaluate the similarity of multiple patterns based on distance features of multiple vectors, in a non-temporary computer-readable medium as described in Clause 18. 20. Non-temporal computer-readable media as described in any one of clauses 17-19, wherein the multiple patterns after the Fourier transform are separated into multiple sets of patterns by using a k-means algorithm based on distance features. 21. Hierarchical clustering is: a non-temporary computer-readable medium as described in any one of clauses 17 to 20, which includes recursively classifying each set of patterns based on the results of recursively evaluating features at each hierarchical level. 22. A set of instructions executable by at least one processor of the computing device further includes: performing a cohesiveness test to evaluate features, the cohesiveness test including: evaluating the degree of cohesiveness of patterns in each set to obtain an evaluation result; and determining, according to the evaluation result, whether recursive segmentation should be paused, as described in any one of Clauses 17 to 21. 23. A set of instructions executable by at least one processor of a computing device, which causes the computing device to further: receive user input indicating parameters associated with evaluating cohesion, in a non-temporary computer-readable medium as described in Clause 22. 24. Image data in Graphic Database System (GDS) format, Graphic Database System II (GDSII) format, Open Artwork System Interchange Standard (OASIS) format, or Caltech Intermediate Format (CIF), on non-temporary computer-readable media as described in any one of Clauses 17 to 23. 25. A method for grouping multiple patterns, the method comprising: receiving image data comprising: multiple patterns representing features formed on a portion of a wafer; performing hierarchical clustering on multiple frequency domain features converted from each of the multiple patterns, the hierarchical clustering comprising: receiving user selection of parameters; and recursively partitioning the multiple frequency domain features by recursively evaluating, based on the parameters, whether to continue partitioning corresponding pairs of patterns at each hierarchical level. 26. To evaluate whether it is appropriate to continue classifying a set of patterns at a corresponding hierarchical level: the method of Clause 25, which includes evaluating the similarity of patterns within a set of patterns. 27. The method according to any one of the clauses 25 to 26, further comprising: receiving a user selection of the radius of a test circle; determining the cohesion of a set of patterns, wherein the cohesion is related to the number of data points corresponding to the patterns contained within the test circle; and determining whether to continue classifying the set of patterns based on a comparison of the cohesion with a predetermined threshold. 28. The method according to any one of the clauses 25 to 27, wherein, prior to performing hierarchical clustering, the method further includes: converting multiple patterns into multiple frequency domain features; and separating multiple frequency domain features into multiple sets of first-level patterns. 29. A system for grouping multiple patterns, the system comprising: a controller including a circuit configuration configured to cause the system to: receive image data including multiple patterns representing features formed on a portion of a wafer; and perform hierarchical clustering on multiple frequency domain features converted from each of the multiple patterns, wherein the hierarchical clustering includes: receiving user selection of parameters; and recursively partitioning the multiple frequency domain features by recursively evaluating, based on the parameters, whether to continue partitioning corresponding sets of patterns at each hierarchical level. 30. To evaluate whether it is appropriate to continue classifying a set of patterns at corresponding hierarchical levels is to use the system described in Clause 29, which includes evaluating the similarity of patterns within a set of patterns. 31. The system according to any one of clauses 29 to 30, wherein the circuit configuration is further configured to cause the system to: receive a user selection of the radius of a test circle; determine the cohesion of a set of patterns, the cohesion relating to the number of data points corresponding to the patterns contained within the test circle; and determine whether to continue classifying the set of patterns based on a comparison of the cohesion with a predetermined threshold. 32. The system described in any one of clauses 29 to 31, wherein the circuit configuration is further configured to cause the system to: convert multiple patterns into multiple frequency domain features before performing hierarchical clustering; and separate multiple frequency domain features into multiple sets of first-level patterns. 33. A non-temporary computer-readable medium storing a set of instructions executable by at least one processor of a system for causing the system to perform a method for grouping multiple patterns, the method comprising: receiving image data comprising multiple patterns representing features formed on a portion of a wafer; performing hierarchical clustering on multiple frequency domain features converted from each of the multiple patterns, the hierarchical clustering comprising: receiving user selection of parameters; and recursively partitioning the multiple frequency domain features by recursively evaluating, based on the parameters, whether to continue partitioning corresponding sets of patterns at each hierarchical level. Non-temporary computer-readable media. 34. To evaluate whether it is appropriate to continue classifying a set of patterns at a corresponding hierarchical level: the non-temporary computer-readable media described in Clause 33, including the evaluation of the similarity of patterns within a set of patterns. 35. A set of instructions executable by at least one processor of a computing device, which causes the computing device to further: receive a user selection of the radius of a test circle; determine the cohesion of a set of patterns, the cohesion relating to the number of data points corresponding to the patterns contained within the test circle; and determine whether to continue segmenting the set of patterns based on a comparison of the cohesion with a predetermined threshold, as described in any one of clauses 33 to 34. 36. A set of instructions executable by at least one processor of the computing device before hierarchical clustering, causing the computing device to further: transform multiple patterns into multiple frequency domain features; and separate multiple frequency domain features into multiple sets of first-level patterns, as described in any one of clauses 33 to 35.

[0093]

[0107] It should be understood that the embodiments of this disclosure are not limited to those described above and illustrated in the accompanying drawings, and that various modifications and changes can be made without departing from the scope of the invention. Although this disclosure has been described in relation to various embodiments, other embodiments of the invention will be obvious to those skilled in the art from the discussion herein and the practice of the invention disclosed herein. It is intended that this specification and examples are illustrative only, and that the true scope and spirit of the invention are indicated by the following claims.

[0094]

[0108] The above description is intended to be illustrative and not limiting. It will therefore be apparent to those skilled in the art that modifications may be made as described without departing from the claims set forth below.

Claims

1. A system for grouping multiple patterns extracted from image data, wherein the system includes a controller including a circuit configuration, and the circuit configuration includes: Receiving the image data, which includes the plurality of patterns representing features formed on a portion of a wafer; Separating the multiple patterns after the Fourier transform into multiple sets of patterns; and A system configured to perform hierarchical clustering on each set of patterns in order to obtain multiple subsets of patterns by recursively evaluating features related to the similarity between patterns within each set of patterns.

2. The aforementioned circuit configuration further includes in the system: Performing a Fourier transform on the aforementioned multiple patterns in order to obtain multiple Fourier transform-based images in the frequency domain; and The system according to claim 1, configured to obtain multiple vectors based on each of the multiple Fourier transform-based images.

3. The aforementioned circuit configuration further includes in the system: The system according to claim 2, configured to evaluate the similarity of the plurality of patterns based on the distance features of the plurality of vectors.

4. The system according to claim 1, wherein the multiple patterns after the Fourier transform are separated into multiple sets of patterns by using a k-means algorithm based on distance features.

5. Performing the aforementioned hierarchical clustering means: The system according to claim 1, further comprising recursively classifying each set of patterns based on the results of recursively evaluating the features at each hierarchical level.

6. The aforementioned circuit configuration further includes in the system: The system is configured to perform an agglomeration test to evaluate the aforementioned feature, and the agglomeration test is: To obtain evaluation results, evaluate the degree of cohesion of the patterns in each of the aforementioned sets; and The system according to claim 1, further comprising determining whether recursive segmentation should be temporarily suspended according to the evaluation result.

7. The aforementioned circuit configuration further includes in the system: The system according to claim 6, configured to receive user input indicating parameters associated with evaluating the degree of cohesion.

8. The system according to claim 1, wherein the image data is in the Graphic Database System (GDS) format, Graphic Database System II (GDSII) format, Open Artwork System Exchange Standard (OASIS) format, or Caltech Intermediate Format (CIF).

9. A non-temporary computer-readable medium storing a set of instructions executable by at least one processor of the system for causing the system to perform a method of grouping multiple patterns extracted from image data, wherein the method is: Receiving the image data, which includes the plurality of patterns representing features formed on a portion of a wafer; Separating the multiple patterns after the Fourier transform into multiple sets of patterns; and A non-temporary computer-readable medium, comprising performing hierarchical clustering on each set of patterns to obtain multiple subsets of patterns by recursively evaluating features relating to the similarity between patterns within each set of patterns.

10. The set of instructions that can be executed by at least one processor of the computing device further: Performing a Fourier transform on the aforementioned multiple patterns in order to obtain multiple Fourier transform-based images in the frequency domain; and A non-temporary computer-readable medium according to claim 9, which causes the acquisition of multiple vectors based on each of the multiple Fourier transform-based images.

11. The set of instructions that can be executed by the at least one processor of the computing device may further be given to the computing device: A non-temporary computer-readable medium according to claim 10, which enables the evaluation of the similarity of the plurality of patterns based on the distance features of the plurality of vectors.

12. The non-temporary computer-readable medium according to claim 9, wherein the multiple patterns after the Fourier transform are separated into multiple sets of patterns by using a k-means algorithm based on distance features.

13. Performing the aforementioned hierarchical clustering means: A non-temporary computer-readable medium according to claim 9, comprising recursively classifying each set of patterns based on the results of recursively evaluating the features at each hierarchical level.

14. The set of instructions that can be executed by at least one processor of the computing device further: To evaluate the aforementioned feature, an agglomeration test is performed, and the agglomeration test is: To obtain evaluation results, evaluate the degree of cohesion of the patterns in each of the aforementioned sets; and A non-temporary computer-readable medium according to claim 9, comprising determining whether recursive segmentation should be temporarily suspended according to the evaluation result.

15. The set of instructions that can be executed by the at least one processor of the computing device may further be given to the computing device: A non-temporary computer-readable medium according to claim 14, which is configured to receive user input indicating parameters associated with evaluating the degree of cohesion.