Training method for machine learning assisted optical proximity correction
By training optical proximity correction data using machine learning models, the problem of pattern deformation caused by optical proximity effect in photolithography was solved, achieving process window consistency and accuracy across the entire chip and improving the efficiency and reliability of the photolithography process.
Patent Information
- Application Number
- CN202210691732.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2018-08-31
- Filing Date
- 2018-09-05
- Publication Date
- 2025-12-05
- Estimated Expiration
- 2038-09-05
AI Technical Summary
Existing photolithography technology has difficulty effectively solving the pattern deformation problem caused by optical proximity effect when manufacturing micro-devices, especially in the case of small feature size and high feature density. Traditional optical proximity correction technology cannot guarantee the consistency and accuracy of the process window across the entire chip.
A machine learning model training method is adopted to predict and optimize optical proximity correction by training on optical proximity correction data. Combined with the placement of auxiliary features, the accuracy and consistency of the photolithography process are improved.
It achieves accuracy and consistency of optical proximity correction across the entire chip, improves the process window of the photolithography process, and ensures the reliability and efficiency of device manufacturing.
Smart Images

Figure CN115185163B_ABST
Abstract
Description
[0001] This application is a divisional application of patent application number 201880058150.4 entitled "Training method for machine learning assisted optical proximity correction" entered into Chinese national phase on 6 March 2020, having international filing date 5 September 2018 under international application number PCT / EP2018 / 073914. TECHNICAL FIELD
[0002] The description herein relates to lithographic apparatuses and processes, and more particularly to tools and methods for optical proximity correction of design layouts. BACKGROUND
[0003] A lithographic apparatus can be used, for example, in the manufacture of integrated circuits (IC), or other devices, such as semiconductor memories, flat panel displays, etc. In such a case, a patterning device (e.g., a mask) can include or provide a pattern corresponding to a single layer of an IC, or other device, and this pattern can be transferred onto a target portion (e.g., comprising one or more dies) on a substrate (e.g., silicon wafer), for example by irradiating the target portion with radiation through the patterned device onto a layer of radiation-sensitive material (e.g., resist) provided on the substrate. Generally, a single substrate includes a plurality of adjacent target portions that are transferred onto the substrate by the lithographic apparatus in succession, one target portion at a time. In one type of lithographic apparatus, collectively referred to as a stepper, the patterned device and the substrate are synchronized relative to one another in the direction of movement so that the pattern is transferred to a different target portion on the substrate each time the substrate is moved. In an alternative apparatus, commonly referred to as a
[0004] Before the device production process transfers the pattern from the patterning device to the substrate during device manufacturing, the substrate can undergo various device fabrication processes such as priming, resist coating, and softbaking. After the exposure, the substrate can undergo other device fabrication processes such as post-exposure bake (PEB), development, and hardbaking. This set of device fabrication processes can be used to create a layer of a device (e.g., an IC) on the substrate. The substrate can then undergo various device fabrication processes such as etching, ion implantation (doping), metallization, oxidation, chemical mechanical polishing, and so forth, all intended to ultimately finish the single layer of the device. If multiple layers are desired, the whole process or variations thereof can be repeated for each layer. Ultimately, a device will exist on each target portion of the substrate. If the device includes multiple devices, the devices can then be separated from each other by techniques such as dicing or sawing, thus forming multiple individual devices.
[0005] Thus, fabricating devices such as semiconductor devices typically involves using a plurality of fabrication processes to treat a substrate (e.g., a semiconductor wafer) to form various features and multiple layers of the device. These layers and features are typically made and treated using, e.g., deposition, lithography, etching, chemical-mechanical polishing, and ion implantation. Multiple devices can be fabricated on the substrate in a number of dies, which are then separated into individual devices. This device fabrication process can be considered a patterning process. A patterning process involves a patterning step such as optical and / or nanoimprint lithography using a lithographic apparatus to provide a pattern on a substrate, and typically but optionally involves one or more related pattern processing steps such as resist development by a development apparatus, baking the substrate using a bake tool, etching the pattern using an etch apparatus, etc. Also, the patterning process typically involves one or more metrology processes. SUMMARY
[0006] In an embodiment, a method is provided comprising: obtaining a set of training data comprising optical proximity corrections corresponding to spatially shifted versions of a training design pattern; and training, by a hardware computer system, a machine learning model using data about the spatially shifted versions of the training design pattern and data based on the optical proximity corrections for the spatially shifted versions of the training design pattern, the machine learning model configured to predict optical proximity corrections for design patterns.
[0007] In an embodiment, a method is provided that includes: obtaining one or more spatially shifted versions of a design pattern and a corresponding spatially shifted version of an optical proximity correction image for each of the one or more shifted design patterns; selecting, by a hardware computer system, one or more optical proximity correction images of the one or more shifted design patterns having a process window indicator that meets or exceeds a threshold; and training, by the hardware computer system, a machine learning model using training data that includes data about the one or more spatially shifted versions of the design pattern and data about the selected one or more optical proximity correction images.
[0008] In an embodiment, a method is provided that includes: obtaining a weighting function or data to assign different weights to a region of an optical proximity correction of a design pattern than to another region thereof; and training, by a hardware computer system, a machine learning model configured to predict an optical proximity correction for a design pattern by evaluating a predicted optical proximity correction of a design pattern by a machine learning model against a baseline optical proximity correction of the design pattern based on the weighting data.
[0009] In an embodiment, a method is provided that includes: obtaining a baseline optical proximity correction for a design pattern; generating, by a hardware computer system, a predicted optical proximity correction of the design pattern using a machine learning model; assigning, by the hardware computer system, a relatively high weight at a portion of the predicted optical proximity correction and / or the baseline optical proximity correction; and training, by the hardware computer system, the machine learning model using an objective function that evaluates the weighted predicted optical proximity correction and / or the baseline optical proximity correction.
[0010] In an embodiment, a method is provided that includes: applying, by a hardware computer system, a binarization function to image data of a predicted optical proximity correction of a design pattern and / or a baseline optical proximity correction of the design pattern to produce their respective binarized versions; and training, by the hardware computer system, a machine learning model configured to predict an optical proximity correction for a design pattern by evaluating the predicted optical proximity correction against the baseline optical proximity correction based on the binarized versions of the predicted optical proximity correction and / or the baseline optical proximity correction.
[0011] In an embodiment, a method is provided that includes: obtaining a reference optical proximity correction image for a design pattern; generating, by a hardware computer system, a predicted optical proximity correction image for the design pattern using a machine learning model; transforming, by the hardware computer system, the predicted optical proximity correction image and the reference optical proximity correction image into respective binary images using a binarization function; evaluating, by the hardware computer system, data of the binary image of the reference optical proximity correction image with respect to data of the binary image of the predicted optical proximity correction image; and adjusting, by the hardware computer system, parameters of the machine learning model based on the evaluation.
[0012] In an embodiment, a method is provided that includes: processing, by a hardware computer system, image data of a predicted optical proximity correction of a design pattern by a machine learning model and / or a reference optical proximity correction of the design pattern to identify edge locations of the optical proximity correction; and training, by the hardware computer system, a machine learning model configured to predict an optical proximity correction for a design pattern by evaluating the predicted optical proximity correction with respect to the reference optical proximity correction based on data from the identified edge locations.
[0013] In an embodiment, a method is provided that includes: obtaining a reference optical proximity correction image for a design pattern; generating, by a hardware computer system, a predicted optical proximity correction image for the design pattern using a machine learning model; identifying, by the hardware computer system, edge locations of features within the predicted optical proximity correction image and the reference optical proximity correction image; evaluating, by the hardware computer system, data at the identified edge locations of the reference optical proximity correction image with respect to data at the identified edge locations of the predicted optical proximity correction image; and adjusting, by the hardware computer system, parameters of the machine learning model based on the evaluation.
[0014] In an embodiment, a method is provided that includes: obtaining a spatially shifted version of an input design pattern; and training, by a hardware computer system, a machine learning model configured to predict an optical proximity correction for a design pattern using an objective function having a penalty term, the penalty term relating to a comparison between a value corresponding to a prediction by the machine learning model with respect to the input design pattern and a value corresponding to an inverse shift of a prediction by the machine learning model with respect to the shifted input design pattern, wherein the inverse shift is a spatial shift that is inverse to a spatial shift used to create the spatially shifted version of the input design pattern.
[0015] In an embodiment, there is provided a computer program product comprising a computer readable medium having instructions recorded thereon, the instructions, when executed by a computer, implementing the method described herein or any part thereof.
[0016] The foregoing illustrative implementations have been described in particular detail with specific reference to implementations. Those skilled in the art will appreciate that various modifications and changes can be made to such BRIEF DESCRIPTION OF DRAWINGS
[0017] The accompanying drawings, which are incorporated herein and constitute part of this specification, illustrate one or more implementations and together with the description, explain these implementations. The accompanying drawings and the description are not meant to be restrictive in nature. Some or all of the features can not be drawn to scale in the accompanying drawings for the sake of expediency, and such drawings are in fact intended as deceptively illustrative only. Wherever possible, like reference numbers have been used to refer to like elements or features.
[0018] Figure 1 is a block diagram of various subsystems of a lithography system according to an exemplary embodiment of the present disclosure.
[0019] Figure 2 An embodiment of a lithography cell or cluster according to an exemplary embodiment of the present disclosure is schematically depicted.
[0020] Figure 3 A method of placing auxiliary features (auxiliary features connected to primary features or independent auxiliary features) into a design layout according to an exemplary embodiment of the present disclosure is schematically depicted.
[0021] Figure 4A and Figure 4B Flowcharts for training a machine learning model and using a machine learning model according to exemplary embodiments of the present disclosure are schematically shown, respectively.
[0022] Figure 4C and Figure 4D More details of pixelation using edges of a design layout as references according to exemplary embodiments of the present disclosure are schematically shown.
[0023] Figure 4E A pixelated image of a feature that can be determined by using a reference aligned to each edge of the feature according to exemplary embodiments of the present disclosure is schematically shown.
[0024] Figure 5 is a flowchart of a method for training a machine learning model according to exemplary embodiments of the present disclosure.
[0025] Figure 6 is a flowchart of a method for using a machine learning model according to exemplary embodiments of the present disclosure. Figure 5a flowchart of a method of training a machine learning model.
[0026] Figure 7 is an example of a training machine learning model and a type of data used for the training according to example embodiments of the disclosure.
[0027] Figure 8 illustrates an example auxiliary feature map for training a machine learning model or predicted by a machine learning model according to example embodiments of the disclosure.
[0028] Figure 9A is a flowchart of a method of training a machine learning model according to example embodiments of the disclosure.
[0029] Figure 9B is a flowchart of adjusting one or more machine learning model parameters based on a cost function according to example embodiments of the disclosure.
[0030] Figure 10 illustrates example results of a mean squared error (MSE) based cost function according to example embodiments of the disclosure.
[0031] Figure 11 illustrates example results of a weighted mean squared error based cost function according to example embodiments of the disclosure.
[0032] Figure 12A illustrates example output of a binarization technique according to example embodiments of the disclosure.
[0033] Figure 12B illustrates example results of a binarization technique based cost function according to example embodiments of the disclosure.
[0034] Figure 13 illustrates example output of an edge pixel enhancement technique according to example embodiments of the disclosure.
[0035] Figure 14 illustrates example output of an edge point enhancement technique according to example embodiments of the disclosure.
[0036] Figure 15 illustrates example output of an edge placement error according to example embodiments of the disclosure.
[0037] Figure 16 illustrates an example starting block for a neural network according to example embodiments of the disclosure.
[0038] Figure 17 illustrates an example residual block for a neural network according to example embodiments of the disclosure.
[0039] Figure 18 FIG. 1 illustrates a schematic diagram of a lithographic projection apparatus according to an embodiment. Figure 3 FIG. 2 illustrates an example pattern formation device pattern produced by a trained example inverse process model according to an embodiment.
[0040] Figure 19 is a block diagram of an example computer system according to example embodiments of the present disclosure.
[0041] Figure 20 is a schematic diagram of a lithographic projection apparatus according to example embodiments of the present disclosure.
[0042] Figure 21 is a schematic diagram of another lithographic projection apparatus according to example embodiments of the present disclosure.
[0043] Figure 22 is a more detailed view of the apparatus in Figure 20 according to example embodiments of the present disclosure. DETAILED DESCRIPTION
[0044] The description set forth below in connection with the appended drawings is intended as a description of various embodiments of the disclosed subject matter and is not intended to represent the only embodiments in which the disclosed subject matter can be practiced. The description includes specific details for the purpose of providing a thorough understanding of various embodiments of the disclosed subject matter. However, it will be apparent to those skilled in the art that the disclosed subject matter can be practiced without these specific details. In some instances, well-known structures and components can be shown in block diagram form in order to avoid obscuring the concepts of the disclosed subject matter.
[0045] As semiconductor or other device manufacturing processes continue to advance, the size of features has been continually scaled down while the amount of features on a device (such as transistors) has been steadily increasing, following a trend often referred to as “Moore’s law”. At the current state of the art, layers of devices are manufactured using lithography apparatuses that project a design layout onto a substrate using illumination from a deep-ultraviolet (e.g. 193 nm) or extreme-ultraviolet (e.g. 13.52 nm) illumination source, creating individual features with dimensions well below 30 nm.
[0046] Such processes in which features having dimensions smaller than the classical resolution limit of a lithographic apparatus are printed are commonly referred to as "low-ki lithography", in which the resolution formula is CD = ki x lambda / NA, where lambda is the wavelength of radiation employed, NA is the numerical aperture of projection optics in the lithographic apparatus, CD is "critical dimension" (generally the smallest feature size printed, and potentially smaller than the size of the features on the patterning device), and ki is the empirical resolution factor. In general, the smaller ki the more difficult it becomes to reproduce the pattern on the substrate that resembles the shape and dimensions planned by a circuit designer in the design layout. To overcome these difficulties, sophisticated fine-tuning steps can be applied to the lithography apparatus and / or design layout. These include, for example, but not limited to, optimization of NA and optical coherence settings, custom illumination schemes, use of phase-shift patterning devices, optical proximity correction (OPC), or other methods generally bracketed by the term "resolution enhancement techniques" (RET).
[0047] As an example of RET, OPC addresses the fact that the final size and placement of the image of the design layout on the substrate will not be exactly the same as the size and placement of that design layout on the patterning device, or simply depend on the size and placement of that design layout on the patterning device. It should be noted that the terms "mask", "reticle", "patterning device" are used interchangeably herein. Also, the skilled person will recognize that the terms "mask", "patterning device" and "design layout" can be used interchangeably, since in the context of RET, a physical patterning process is not necessarily used, but a design layout can be used to represent a physical patterning process. For small feature sizes and high feature densities present on a design layout, the position of a particular edge of a given feature will be influenced to some extent by the presence or absence of other, neighboring features. These proximity effects arise from the coupling of the feature to its neighbors through the radiation or by diffraction and interference. Similarly, proximity effects can arise from diffusion and other chemical effects during the post-exposure bake (PEB), resist development, and etch typically following lithography.
[0048] To increase the chance that the projected image of the design layout is according to the requirements of the given target circuit design, complex numerical models of the design layout, corrections or pre-deformations can be used to predict and compensate for proximity effects. The paper "Full-Chip Lithography Simulation and Design Analysis - How OPC Is Changing IC Design" (C. Spence, Proc. SPIE, vol. 5751, pp. 1-14 (2005)) provides an overview of current "model-based" optical proximity correction processes. In a typical high-end design, almost every feature of the design layout has some modification in order to achieve a high fidelity of the projected image to the target design. These modifications can include shifts or biases of edge positions or line widths, as well as the application of "assist" features intended to aid the projection of other features.
[0049] One of the simplest forms of OPC is selective biasing. Given a CD versus pitch curve, it is possible to force all different pitches to produce the same CD, at least at the best focus and exposure, by changing the CD at the level of the patterning device, by changing the CD at the level of the patterning device. Thus, if a feature is printed too small at the substrate level, the feature at the level of the patterning device will be biased slightly larger than nominal, and vice versa. Since the pattern transfer process from the level of the patterning device to the substrate level is non-linear, the amount of bias is not simply the CD error measured at the best focus and exposure multiplied by the reduction ratio, but rather the appropriate bias can be determined using modeling and experimentation. Selective biasing is an incomplete solution to the problem of proximity effects, especially if it is applied only at nominal process conditions. Although in principle such a bias could be applied to give a uniform CD versus pitch curve at the best focus and exposure, once the exposure process is changed from nominal conditions, each biased pitch curve will respond differently, resulting in different process windows for different features. A process window is a range of values of two or more process parameters, such as focus and dose in the lithography apparatus, at which a feature is created accurately enough (e.g. the CD of the feature is within some range such as ±10% or ±5%). Thus, a "best" bias to give the same CD versus pitch can even negatively impact the overall process window, reducing (rather than enlarging) the range of focus and exposure at which all target features are printed on the substrate within a desired process tolerance.
[0050] Other more complex OPC techniques have been developed for applications beyond the one-dimensional biasing example above. Two-dimensional proximity effects are line end shortening. Line ends have a tendency to "pull back" from their desired end point locations as a function of exposure and focus. In many cases, the end of a long line end can be shortened to a degree that is several times greater than the corresponding line narrowing. If the line end does not completely span the underlying layer it is intended to cover, such as a polysilicon gate layer over a source drain region, this type of line end pullback can cause a serious malfunction of the device being manufactured. Since this type of pattern is extremely sensitive to focus and exposure, simply biasing the line end to be longer than the design length is not sufficient because the line will be too long at the best focus and exposure or under conditions of underexposure, causing a short when the elongated line end contacts a neighboring structure, or an unnecessarily large circuit size if more space is added between individual features in the circuit. Since one of the goals of integrated circuit design and manufacture is to maximize the number of functional elements while minimizing the area required per chip, adding excess spacing is an undesirable solution.
[0051] Two-dimensional OPC approaches can help solve the line end pullback problem. Extra structures, also called "assist features," such as "hammerhead lines" or "serifs," can be added to the line end to effectively anchor the line end in place and provide a reduced pullback over the process window. Even at the best focus and exposure, these extra structures are not resolved, but rather they alter the appearance of the main feature without being fully resolved themselves. "Main feature" as used herein means the feature intended to be printed on the substrate under some or all conditions in the process window. Assist features can take a more aggressive form than simple hammerhead lines added to the line end to the extent that the pattern on the patterning device is no longer simply the desired substrate pattern scaled by the reduction ratio. Assist features such as serifs can be applied to more than just reducing line end pullback. Internal or external serifs can be applied to any edge, especially two-dimensional edges, to reduce corner rounding or edge squeeze. With sufficient selective biasing and assist features of all sizes and polarities, the features on the patterning device bear an increasingly small resemblance to the desired final pattern at the substrate level. In general, the patterning device pattern becomes a pre-distorted version of the substrate level pattern, where the distortion is intended to offset or reverse the pattern distortion that will occur during the manufacturing process to produce a pattern on the substrate as close as possible to the pattern intended by the designer.
[0052] Another OPC technique involves the use of completely independent and indistinguishable auxiliary features instead of or in addition to those auxiliary features that are connected to the main features (e.g., wiring). The term "independent" here means that the edges of these auxiliary features are not connected to the edges of the main features. These independent auxiliary features are not intended or expected to be printed as features on the substrate, but rather are intended to modify the aerial image of the nearby main features to improve the printability and process latitude of the main features. These auxiliary features (often referred to as "scattering bars" or "SBARs") can include sub-resolution auxiliary features (SRAFs), which are features outside the edges of the main features, and sub-resolution inverse features (SRIFs), which are features taken inside the edges of the main features. The presence of SBARs adds yet another layer of complexity to the patterning device pattern. A simple example of the use of scattering bars is to draw a regular array of indistinguishable scattering bars on both sides of an isolated line feature, which has the effect from the aerial image point of view of making the isolated line appear more like a single line within a dense array of lines, resulting in a focus and exposure latitude of the process window closer to that of a dense pattern. The common process window between such decorated isolated features and a dense pattern will have a greater common latitude to focus and exposure variations than isolated features drawn without such decoration.
[0053] The auxiliary features can be viewed as a difference between the features on the patterning device and the features in the design layout. The terms "main feature" and "auxiliary feature" do not imply that a particular feature on the patterning device must be labeled as one or the other.
[0054] As a brief introduction, Figure 1 An exemplary lithographic projection apparatus 10A is illustrated. Major components include: illumination optics, which define partial coherence (indicated as sigma or standard deviation) and which can include optics 14A, 16Aa and 16Ab that shape radiation from the radiation source 12A, which can be a deep-ultraviolet quasimolecule laser source or other type of source including an extreme ultraviolet (EUV) source (as discussed herein, the lithographic projection apparatus itself need not have the radiation source), and optics 16Ac that project a pattern of a patterning device 18A onto a substrate plane 22A. An adjustable filter or stop 20A at the pupil plane of the projection optics can limit the range of angles of beams incident on the substrate plane 22A, with the largest possible angle defining the numerical aperture NA = sin (Θ max ).
[0055] In a lithographic projection apparatus, a projection optics directs and shapes the illumination from a source onto a substrate. The term "projection optics" is broadly defined herein to include any optics that can change the wavefront of a radiation beam. For example, projection optics can include at least some of the components 14A, 16Aa, 16Ab, and 16Ac. A spatial image (AI) is the intensity distribution of the radiation at the substrate level. A resist layer on the substrate is exposed and the spatial image is transferred to the resist layer as a latent "resist image" (RI) therein. The resist image (RI) can be defined as a spatial distribution of solubility of resist in the resist layer. A resist model can be used to calculate the resist image from the spatial image. The resist model is related only to properties of the resist layer (e.g., effects of chemical processes occurring during exposure, post-exposure bake (PEB), and development). The optical properties of the lithographic projection apparatus (e.g., properties of the illumination, the patterning device, and the projection optics) dictate the spatial image and can be defined in an optical model. Since the patterning device used in the lithographic projection apparatus can be varied, it is desirable to separate the optical properties of the patterning device from the optical properties of the rest of the lithographic projection apparatus (at least including the source and the projection optics). Details of techniques and models for transforming a design layout into various lithographic images (e.g., a spatial image, a resist image, etc.), using those techniques and models to apply OPC, and evaluating performance (e.g., in terms of process window) are described in U.S. Patent Application Publication Nos. US 2008-0301620, US 2007-0050749, US 2007-0031745, US 2008-0309897, US 2010-0162197, and US 2010-0180251, the disclosures of each of which are hereby incorporated by reference in their entirety.
[0056] As Figure 2As shown, the lithography apparatus LA can form part of a lithography cell LC (sometimes referred to as a litho cell or litho cluster), which also includes apparatus to perform one or more pre-exposure and post-exposure processes on the substrate. Conventionally, these include one or more spin coaters SC to deposit a coating of photoresist on the substrate, one or more developing baths DE to develop the exposed resist, one or more chill plates CH to cool the substrate and one or more baking plates BK to bake the substrate. The substrate is then transferred from the input / output station I / O1, I / O2 to the different process apparatus, and then to the load bed LB of the lithography apparatus. These apparatus are collectively referred to as a track, and are controlled by a track control unit TCU, which is itself controlled by a supervisory control system SCS that also controls the lithography apparatus via a lithography control unit LACU. Thus, the different apparatus can be operated to maximize throughput (e.g., the number of substrates processed per hour) and processing efficiency. The lithography cell LC can also include one or more etching devices to etch the substrate; and one or more measurement devices configured to measure parameters of the substrate. The measurement devices can include optical measurement devices, such as scatterometers, scanning electron microscopes, etc., configured to measure physical parameters of the substrate. The measurement devices can be incorporated into the lithography apparatus LA. Embodiments of the present disclosure can be implemented in, or with, the supervisory control system SCS or the lithography control unit LACU. For example, data from the supervisory control system SCS or the lithography control unit LACU can be used by embodiments of the present disclosure, and one or more signals from embodiments of the present disclosure can be provided to the supervisory control system SCS or the lithography control unit LACU.
[0057] Figure 3 A method of performing optical proximity correction in a design layout is schematically depicted. The design layout can be a design layout prior to applying RET or a design layout after applying RET. The design layout can be binary or continuous tone. In the present disclosure, the focus is on placing assist features (assist features connected to main features, or independent assist features) in a design layout as an example optical proximity correction to which the techniques herein can be applied. As will be appreciated, the techniques herein can be applied to alternative optical proximity corrections other than assist features (such as biasing, etc.), or to optical proximity corrections in addition to assist features (e.g., a combination of biasing and assist features).
[0058] The computational or empirical model 213 can be used to apply one or more optical proximity corrections (e.g., determine one or more characteristics, such as determine the existence, location, type, shape, etc. of one or more optical proximity corrections), such as one or more assist features. The model 213 can take into account one or more characteristics 211 of a device manufacturing process, also referred to as processing parameters, or one or more design layout parameters 212, or both. The one or more processing parameters 211 are one or more parameters associated with the device manufacturing process but not associated with the design layout. For example, the one or more processing parameters 211 can include characteristics of illumination (e.g., intensity, pupil profile, etc.), characteristics of the projection optics, dose, focus, characteristics of resist, characteristics of development of resist, characteristics of post-exposure bake of resist, or characteristics of etching. The one or more design layout parameters 212 can include one or more shapes, sizes, relative locations, or absolute locations of various features on a design layout, and can also include overlaps of features on different design layouts. In an empirical model, images (e.g., resist images, optical images, etch images) are not simulated; instead, the empirical model makes optical corrections (e.g., places assist features) based on correlations between inputs (e.g., one or more processing parameters 211 and / or design layout parameters 212) and optical proximity corrections. In a computational model, portions or characteristics of images are computed, and optical proximity corrections are applied based on the computed portions or characteristics of images.
[0059] An example of an empirical model is a machine learning model. Both unsupervised and supervised machine learning models can be used to make optical proximity corrections. Without limiting the scope of the present disclosure, the application of supervised machine learning algorithms is described below.
[0060] Supervised learning is a machine learning task of inferring a function from labeled training data. The training data includes a set of training examples. In supervised learning, each example is a pair with an input object (typically a vector) and a desired output value (also called a supervision signal). A supervised learning algorithm analyzes the training data and produces an inferred function which can be used to map new examples. In an embodiment, an optimal scenario would allow the algorithm to correctly determine the class label for a never-seen instance. This requires the learning algorithm to generalize / generalize from the training data to never-seen situations in a "reasonable" way.
[0061] Given a set of N training examples with form {(xi, yi), (x2, y2),..., (xN, yN)} such that xi is the feature vector of the i-th example and yi is the corresponding label, a supervised learning algorithm is a function h: X → Y, where X is the set of all possible input objects and Y is the set of all possible labels. N N i i is its label (i.e., class), the learning algorithm seeks a function g: X→ Y, where X is the input space and Y is the output space. A feature vector is an n-dimensional vector of numerical features representing some object. Many algorithms in machine learning require numerical representations of objects because these representations facilitate processing and statistical analysis. When representing images, the feature values can correspond to the pixels of the image, and when representing text, the feature values can be called frequencies of occurrence. The vector space associated with these vectors is often called the feature space. The function g is an element of some space of possible functions G, often called the hypothesis space. It is sometimes convenient to represent g using a scoring function to represent g, such that g is defined to return the y value that gives the highest score: g(x) = arg max y f(x, y), where F represents the space of scoring functions. Although G and F can be any space of functions, many learning algorithms are probabilistic models, in which g takes the form of a conditional probability model g(x) = P(y | x), or f takes the form of a joint probability model f(x, y) = P(x, y). For example, Naive Bayes and Linear Discriminant Analysis are joint probability models, while logistic regression is a conditional probability model.
[0062] There are two basic approaches to select f or g: empirical risk minimization and structural risk minimization. Empirical risk minimization seeks a function that fits the training data best. Structural risk minimization includes a penalty function that controls the bias / variance tradeoff.
[0063] In both cases, the training set is assumed to have independent and identically distributed samples of (x i ,y i ). To measure how well a function fits the training data, an objective function is often defined. For example, a cost or loss function In this case, for a training example (x i ,y i ), the loss of a prediction value is The risk R(g) of a function g is defined as the expected loss of g. This can be estimated from the training data as
[0064] Exemplary models of supervised learning include decision trees, ensembles (bagging, boosting, random forests), k-NN, linear regression, Naive Bayes, neural networks, logistic regression, Perceptron, support vector machines (SVM), relevance vector machines (RVM), and deep learning.
[0065] SVMs are an example of supervised learning models that analyze data and identify patterns and can be used for classification and regression analysis. Given a set of training examples, each marked as belonging to one of two categories, the SVM training algorithm builds a model that assigns new examples to one category or the other, such that it is a non-probabilistic binary linear classifier. The SVM model is a representation of the examples as points in a space, mapped so that the examples of separate categories are divided by a clear gap that is as wide as possible. New examples are then mapped into the same space and, based on which side of the gap they fall on, the category they belong to is predicted. In addition to performing a linear classification, SVMs can also perform non-linear classification efficiently using a so-called kernel method, implicitly mapping their inputs into high-dimensional feature spaces.
[0066] The kernel method involves a user-specified kernel, i.e., a similarity function over pairs of data points in the original representation. The name of the kernel method is due to the use of kernel functions, which enable them to operate in high-dimensional, implicit feature spaces without having to constantly compute the coordinates of the data in that space, but by simply computing the inner product between the images of all pairs of data in the feature space. The operations are often computationally less expensive than the explicit computation of the coordinates. This way is called the "kernel trick".
[0067] The effectiveness of SVMs depends on the choice of kernel, the parameters of the kernel, and the soft margin parameter C. A common choice is the Gaussian kernel, which has a single parameter γ. Often a grid search (also known as a "parameter sweep") is performed with a sequence of C and γ that grows exponentially, e.g. The best combination of C and γ is chosen by the grid search.
[0068] A grid search is an exhaustive search over a manually specified subset of the hyperparameter space of a learning algorithm. Grid search algorithms are guided by some performance metric, typically measured by cross-validation on a training set or evaluation on a hold-out validation set.
[0069] Each combination of parameters can be checked using cross-validation, and the parameters with the best cross-validation accuracy are chosen.
[0070] Cross-validation (sometimes referred to as rotation estimation) is a model validation technique for assessing how well the results of a statistical analysis will generalize or be generalized to an independent collection of data. It is primarily used in settings where the goal is prediction and one wishes to estimate the accuracy of the predictive model in practice. In a prediction problem, a model is often provided with a dataset of known data that the training is run on (training dataset), and a dataset of unknown data (or first seen data) that the model is tested against (test dataset). The goal of cross-validation is to define a collection of data (i.e., a validation dataset) that is used to "test" the model during the training phase, in order to limit problems such as overfitting, give insight into how the model will generalize / generalize to an independent collection of data (i.e., an unknown dataset, such as from a real problem), etc. One round of cross-validation involves splitting a sample of data into complementary subsets, performing analysis on one subset (referred to as the training set), and validating the analysis on the other subset (referred to as the validation set or test set). To reduce variability, multiple rounds of cross-validation are performed using different splits, and the validation results of the rounds are averaged.
[0071] The final model that can be used for testing and for classifying new data is then trained on the entire training set using the selected parameters.
[0072] Another example of supervised learning is regression. Regression infers a relationship between an outcome variable and a set of corresponding values of one or more predictor variables. Given the predictor variables, regression can estimate the conditional expectation of the outcome variable. The inferred relationship can be referred to as a regression function. The inferred relationship can be probabilistic.
[0073] Figure 4A and Figure 4B The flow of the method for training machine learning to place assist features (as an example of optical proximity correction) and using the trained machine learning model to place assist features (as an example of optical proximity correction) according to embodiments is schematically shown, respectively. Figure 4AA flow for training a machine learning model is schematically illustrated. One or more values of one or more characteristics 510 of a portion 505 of a design layout are obtained. The design layout can be a binary design layout, a continuous tone design layout (e.g., rendered or reproduced from a binary design layout), or a design layout having another suitable form. The one or more characteristics 510 can include geometric characteristics (e.g., absolute locations, relative locations, or shapes) of one or more patterns in the portion 505. The one or more characteristics 510 can include one or more statistical characteristics of one or more patterns in the portion 505. Examples of statistical characteristics of patterns in the portion 505 can include a mean or variance of geometric dimensions of one or more patterns. The one or more characteristics 510 can include a parameterization of the portion 505 (i.e., one or more values of a function of the portion 505), such as a projection onto certain basis functions. The one or more characteristics 510 can include an image (pixelated, binary Manhattan, binary curve, or continuous tone) or image data (e.g., pixel values with associated locations) derived from the portion 505. In general, image data can refer to any data associated with an image (e.g., pixel values, locations, intensities, RBG values, etc.).
[0074] In process 520, one or more characteristics 530 of an assist feature are determined based on the portion 505 or one or more characteristics 510 thereof using any suitable method. For example, the one or more characteristics 530 of the assist feature can be determined using the methods described in U.S. Patent No. 9,111,062 or the methods described in Y. Shen et al., “Level-Set-Based Inverse Lithography For Photomask Synthesis,” Optics Express, Vol. 17, pp. 23690-23701 (2009) (the disclosures of which are incorporated by reference herein in their entireties), and / or any other techniques described herein or in any document incorporated by reference herein. For example, the one or more characteristics 530 can include one or more geometric characteristics (e.g., absolute locations, relative locations, or shapes) of the assist feature, one or more statistical characteristics (such as a mean or variance of geometric dimensions of the assist feature) of the assist feature, or a parameterization of the assist feature (e.g., one or more values of a function of the assist feature, such as a projection onto certain basis functions) or an image or image data of the assist feature (e.g., pixelated, binary Manhattan, binary curve, or continuous tone images and / or pixel values with associated locations).
[0075] The values of the one or more properties 510 of the portion of the design layout and the values of the one or more properties 530 of the auxiliary features are included in training data 540 as samples. In embodiments, the one or more properties 510 are included in a feature vector (also referred to as an input vector) of the samples, and the one or more properties 530 are included in a label (also referred to as a supervisory signal or response vector) of the samples. In a procedure 550, a machine learning model 560 is trained using the training data 540. As described above, an objective function (e.g., a loss or cost function) can be used in the training.
[0076] Figure 4B A flow for placing one or more auxiliary features using the machine learning model 560 is schematically illustrated. A portion 533 of a design layout 534 or one or more properties 535 of the portion are obtained. The portion 533 and any other portion of the design layout 534 need not be part of the training data. The portion 533 can be a portion near an edge of the design layout 534. The one or more properties 535 can include one or more geometric properties (e.g., absolute positions, relative positions, or shapes) of one or more patterns in the portion 533. The one or more properties 535 can include one or more statistical properties of one or more patterns in the portion 533. The one or more properties 535 can include a parameterization of the portion 533, such as a projection on certain basis functions. The one or more properties 535 can include an image (pixelated, binary Manhattan, binary curve, or continuous tone) or image data (e.g., pixel values with associated positions) derived from the portion 533. For example, if the portion 533 is a portion near an edge of the design layout 534, the one or more properties 535 can be referenced with respect to the edge (e.g., a pixelated, binary Manhattan, binary curve, or grayscale image, or a projection onto a substrate, obtained by using the edge as a reference), whereby the one or more properties 535 do not change even if the edge moves with respect to a fixed reference in the design layout, as explained further below with reference to Figure 4C , Figure 4D and 4E .
[0077] In process 570, the portion 534 or the one or more characteristics 535 are provided as input into the machine learning model 560, and one or more characteristics 580 of one or more auxiliary features for the portion 533 are obtained as output from the machine learning model 560. The one or more characteristics 580 can include one or more geometric characteristics of an auxiliary feature (e.g., absolute position, relative position, or shape). The one or more characteristics 580 can include a parameterization of an auxiliary feature, such as a projection onto certain basis functions. The one or more characteristics 580 can include an image (pixelated, binary Manhattan, binary curve, or continuous tone) or image data (e.g., pixel values with associated positions) of an auxiliary feature. The one or more characteristics 580 of an auxiliary feature can be adjusted to avoid conflicts among them, e.g., using the methods described in U.S. Patent Application Publication No. US 2008 / 0301620, the disclosure of which is incorporated herein by reference in its entirety.
[0078] In optional process 590, the portion 533 of the design layout 534 and the auxiliary features are used to pattern a substrate in a lithographic process.
[0079] In process 570, the machine learning model 560 can optionally compute a confidence metric 585 that indicates the trustworthiness of the one or more characteristics 580. For example, when the one or more characteristics 580 include a binary image (e.g., a binary Manhattan image, a binary curve image) of an auxiliary feature, the confidence metric can be the probability of either tone of the binary image. Some machine learning models, such as Naive Bayes, logistic regression, and multilayer perceptron (when trained under an appropriate loss function) are naturally probabilistic. A probabilistic model outputs a probability distribution over a set of classes, rather than just outputting the most likely class that the input should belong to. Some other machine learning models, such as support vector machines, are not naturally probabilistic, but there are ways to turn them into probabilistic classifiers. Regression problems can be converted into a multiclass classification problem and then use probabilities as a metric, or use the bootstrap method to build many models and then compute the variance of the model predictions. A confidence metric (e.g., entropy, GINI index, etc.) can be computed based on the output of the machine learning model (e.g., a probability distribution over a set of classes).
[0080] Other forms of the confidence metric 585 can be possible. For example, for those parts of the design layout that are very different from the parts in the training data, the machine learning model has a relatively high chance of being problematic. The confidence metric 585 that measures the similarity between the parts of the input and the parts in the training data can be constructed in a suitable way. The maximum Euclidean distance between each of the parts in the input and the parts of the training data can be an example. In another example, the parts of the training data can be clustered into several groups, and the Euclidean distance of the image of the input to the center of each group can be used as the confidence metric 585.
[0081] If the confidence metric 585 fails to satisfy the condition (e.g., to indicate that the one or more characteristics 580 are not sufficiently trustworthy), the one or more characteristics 580 can be disregarded and a different method (e.g., the method described in U.S. Patent No. 9,111,062) can be used in optional process 586 to place assist features, or the machine learning model 560 can be retrained in optional process 587 (e.g., using the flow in Figure 4A
[0082] In combination with the parts 533 of the design layout, the assist features generated by the machine learning model 570 from the characteristics 580 can be used as initial conditions for another RET (such as OPC), illumination and patterning device pattern optimization (sometimes referred to as SMO), patterning device optimization (MO), or as initial conditions for a rigorous optimizer in order to speed up convergence. This is another use case.
[0083] Figure 4C 4D More details of pixelation are schematically shown. The pixelated image of a feature 600 can depend on the choice of reference. For example, as shown in Figure 4C The pixelated image of the feature 600 using the reference 601 is pixelated image 603, but the pixelated image of the same feature 600 using the reference 602 (which is merely shifted with respect to the reference 601) is pixelated image 604, which is different from the pixelated image 603. To avoid the dependence of pixelation on the choice of reference, a reference to, for example, an edge (e.g., the right edge here) of the feature 600 or a corner of the feature 600 can be used for pixelation of the feature 600. The reference can be different for different features.
[0084] Figure 4E The pixelated image 720 of the feature 700 is illustratively shown as being determined by using the reference 710 aligned to each of the edges of the feature 700. Each of the pixelated images 720 can be used as Figure 4B The one or more properties 580 (e.g., the shape 730 of the assist feature) of the assist feature are obtained for each edge as the property 535 in the flow. That is, a set of one or more properties 580 (e.g., the shape 730 of the assist feature) of the assist feature is obtained for each edge. The set of one or more properties 580 (e.g., the shape 730 of the assist feature) can be aligned to each other by using the feature 700 as a reference, and the set of one or more properties 580 are merged together as a merged set of one or more properties of the assist feature (e.g., the merged shape 740 of the assist feature). Conflicts in the merged set of one or more properties of the assist feature (e.g., removing overlap in the merged shape 740) can then be resolved. Although the pixelated image 720 is used here as an example of the one or more properties 535 obtained with respect to the edge, the one or more properties 535 with respect to the edge can be one or more other suitable properties, such as a binary, or gray scale image or a projection onto the substrate obtained by using the edge as a reference.
[0085] As mentioned above, optical proximity correction modifies the design layout (e.g., of an advanced logic device) with the purpose of, for example, providing a sufficient process window (PW) for forming the design layout on a substrate. For example, assist features (as an example of OPC), especially SRAFs, can modify the environment of isolated main features of the design layout in such a way that the isolated main features appear to be dense, which can enable scaling down such main features by providing a sufficient process window (PW). Thus, it is desirable to have a sufficient, accurate and invariant optical proximity correction throughout a full chip. However, the run time of the optical proximity correction should be fast so that the optical proximity correction can be applied to the full chip in a timely manner.
[0086] Among optical proximity correction techniques, model-based optical proximity correction approaches can deliver good accuracy and consistency but often at the expense of speed for larger process windows (PW). For example, SMO-MO is an optical proximity correction technique that can deliver larger process windows (PW). In embodiments, SMO-MO can use an SMO process to identify an optimal illumination and patterning device pattern (the optimization can be limited in terms of the type of OPC correction used, e.g., no helper features applied), and then the optimal illumination is used to further optimize the patterning device pattern in terms of optical proximity correction (e.g., helper features applied). In embodiments, SMO-MO uses a gradient-based iterative approach to optimize a continuous tone patterning device pattern such that an associated cost function is minimized / maximized. In each iteration, a gradient map of the patterning device pattern is computed and the gradient map is further used to guide the direction of the optimization (e.g., OPC such as placement of helper features applied). SMO-MO can be extremely accurate and can yield the largest process window; however, run time can be prohibitively high for full chip application.
[0087] Another model-based approach for optical proximity correction is the use of so-called SRAF guide maps (SGM) (see, e.g., U.S. Patent Application Publication No. US 2008-0301620, previously incorporated herein by reference), which is relatively fast compared to other approaches but can not deliver the best process window.
[0088] Other full chip optical proximity correction approaches are relatively fast compared to SMO-MO but each can have some drawbacks. For example, a rule-based optical proximity correction approach involves applying two-dimensional (2D) rules to apply optical proximity correction such as placement of helper features. However, determination and comprehensiveness of the rules can be difficult to implement and can not guarantee accuracy of the 2D rules for logic applications.
[0089] In the context of helper features, their placement typically should have a smaller accuracy than the size of the pixels used in image-based lithography simulation. For example, when the lithography simulation uses a pixel size of 20 nm, the bar placement accuracy needs to be 1 nm or even 0.1 nm. Alternatively or additionally, it is highly desirable for the placement of the helper features to be consistent and / or symmetric. Consistency refers to a repeating pattern in a patterning device pattern (e.g., a full chip patterning device pattern) with substantially similar helper feature placements. The helper feature placements should ideally have a symmetry that conforms to the pattern symmetry and the illumination distribution shape symmetry (e.g., symmetry with dipole or quadrupole illumination). However, existing techniques can not provide such accuracy, consistency, and / or symmetry at the full chip level.
[0090] Accordingly, in embodiments, and as already referenced above to some extent,Figure 3 As described in FIG. 4, the machine learning process can facilitate accurate and complete application of optical proximity correction (such as placement of assist features) and can do so in a fast manner for, e.g., full chip application.
[0091] While existing deep learning structures can be used for deep learning tasks such as image recognition, the machine learning techniques herein differ in many ways from such image recognition, including but not limited to: the input provided to the machine learning model for training and used by the trained machine learning model, the output from the machine learning model, the resolution desired, and / or the objective function used to train the machine learning model.
[0092] For example, to propagate the process window benefits of some of the techniques described above (such as SMO-MO) from the segment level (which refers to a portion of a full chip patterning pattern) to a full chip patterning device pattern, machine learning based optical proximity correction techniques are described herein that take data from these other techniques at, e.g., the segment level as training data to implement a prediction of optical proximity correction based on data about a patterning device pattern such as a full chip pattern through a machine learning model. According to embodiments, a machine learning model is trained using training data generated by SMO-MO and the trained model is then applied to a full chip layout for optical proximity correction application.
[0093] Figure 5 is an example flow of training a machine learning model to build a trained machine learning model according to example embodiments of the present disclosure. In Figure 5 In, training data 700 is provided. In embodiments, the training data can be generated or have been generated by using optical proximity correction techniques such as SMO-MO, rule based OPC methods, etc. Desirably, the training data is extremely accurate, consistent, and can achieve a large process window. In embodiments, training data 700 includes data 7000 about an input design pattern 7000 (e.g., a segment from a full chip pattern) and data 7005 about optical proximity correction of the associated input design pattern 7000. In embodiments, the data can be about one or more characteristics of the design pattern layout and / or about one or more characteristics of the optical proximity correction (e.g., assist features) as described above. In embodiments, data 7000 and / or data 7005 includes an image or pixel data of an image. In embodiments, data 7000 includes an image or pixel data of the design pattern (as illustrated in Figure 5 In, data 7005 includes a continuous transmission mask (CTM) map (as illustrated in Figure 5corresponding to each of the design patterns of data 7000 generated by using optical proximity correction techniques such as SMO-MO or inverse OPC processes. As will be appreciated, a continuous transmission mask map or its equivalent can be generated for a reflective patterning device such as a reflective mask used for EUV lithography and will be referred to herein as a continuous transmission mask map. In embodiments, 500 or more, 1000 or more, 1500 or more, 2000 or more, 2500 or more, 5000 or more, 10,000 or more, 100,000 or more, 1,000,000 or more combinations of data 7000 and data 7005 are provided as training data. In embodiments, the patterns corresponding to the combinations of data 7000 and data 7005 are samples from a full chip pattern. In embodiments, the samples are critical patterns, e.g., patterns known to have a higher than average probability of not being formed correctly. In embodiments, the patterns can be identified as representative by a user, e.g., by a chip manufacturer. In embodiments, pattern recognition techniques can be used to identify patterns in a full chip and identify occurrences of the patterns in the full chip in order to select at least one of each recurring occurrence and a sampling across non-recurring occurrences. In embodiments, machine learning techniques can be used to identify multiple clusters of similar patterns and a sample from at least each of the multiple clusters.
[0094] In training process S701, each of data 7000 is evaluated with data 7005 to progressively train the machine learning model such that the trained machine learning model can accurately predict the optical proximity correction (e.g., placement of assist features) corresponding to input data when input with new or previously used data 7000. That is, in embodiments, if input data 7000, the trained machine learning model can generate data similar to data 7005.
[0095] Training of the machine learning model can use a single training sample, several different training samples, or all available samples, and update the parameters of the model in an iterative manner based on an objective function. In embodiments, training using data 7000 and data 7500 will typically involve evaluation of an objective function, such as minimizing one or more cost functions, which will be discussed in further detail in this disclosure. For example, in a first instance of the training process, first data 7001 regarding a first design pattern is input to the machine learning model, which is capable of creating a prediction of optical proximity correction data corresponding to the first design pattern. However, that predicted data can be substantially different from corresponding first data 7006, which is considered a benchmark or is extremely accurate (e.g., "true"). In this case, an objective function that performs an evaluation of the prediction relative to the benchmark can be used to adjust one or more parameters of the machine learning model (e.g., change one or more coefficients in one or more formulas of the model, change one or more powers of one or more terms in one or more formulas of the model, add or remove one or more formulas, add or remove one or more terms in one or more formulas of the model, etc.) so that the machine learning model is capable of making a better prediction. For example, a loss / cost function of the machine learning model that minimizes the difference between the data 7001 and the corresponding data 7006 can be used to tune the machine learning model. As will be appreciated, in a second instance, second data 7002 regarding a second design pattern is input to the training process of the modified machine learning model, which is capable of predicting optical proximity correction data corresponding to the second design pattern. The prediction can also be different from corresponding second benchmark data 7007. Again, the objective function (e.g., based on an evaluation of the difference between the prediction and the benchmark data 7006) can be used to adjust the parameters of the machine learning model. Evaluation and adjustment of the machine learning model parameters can continue until the trained machine learning model (i.e., the machine learning model that has been progressively modified) produces an optical proximity correction prediction for input data corresponding to a given design pattern and that is the same as or substantially the same as actual or expected benchmark data for optical proximity correction of that given design pattern. Thus, in embodiments, the objective function can involve a regression type analysis and the machine learning model configuration can involve using regression techniques to track the parameters of the model to the data.
[0096] In embodiments, the machine learning training operates on a pixel basis. That is, in embodiments, the data 7000 includes pixelated images or data regarding the pixels of the images, and similarly, the data 7005 includes pixelated images or data regarding the pixels of the images. And thus, the cost function and training evaluates the pixel data such that the machine learning model predicts pixel data for optical proximity correction from pixel data of an input design pattern. In embodiments, pixel data refers to values regarding pixels within an image, where the values can be intensity, contrast, RBG values, a location within the image, or other pixel-related similar information.
[0097] Once the machine learning model is trained, the trained machine learning model can be used to predict optical proximity correction data for any design pattern, as Figure 6 illustrated in FIG. 8. In Figure 6 , the input data 80 to the trained machine learning model can be data regarding one or more design patterns, such as data 8001, 8002, and 8003 regarding respective design patterns (as illustrated). According to exemplary embodiments of the present disclosure, the trained machine learning model 705 produces predicted optical proximity correction data 805, such as data 8011, 8012, and 8013 corresponding to data 8001, 8002, and 8003, respectively. As will be appreciated, the optical proximity correction data 805 can be used for various purposes, including, for example, manufacturing masks having the patterns according to the optical proximity correction data for production, testing, etc., and / or further processing the patterns according to the optical proximity correction, such as applying additional RET / OPC techniques, including further processing using the same or different machine learning model. In embodiments, the ML predictions can also be used as initial conditions for other rigorous optimizers to speed up convergence.
[0098] Figure 7 is an example of training a machine learning model and associated data according to exemplary embodiments of the present disclosure. In Figure 7 , one or more segments, such as segments 9001, 9002, 9003, and 9004, can be samples from a full chip pattern 9000. In these examples, the segments correspond to contact hole arrangements. As can be seen in the full chip pattern 9000, there can be millions, if not billions, of patterns and thus represents an important problem to accurately, consistently, and quickly perform optical proximity correction on the full chip pattern. As described above, the samples can be based on, for example, heuristics of experienced chip designers, frequency or spectral analysis, machine learning based sampling, or combinations thereof.
[0099] In embodiments, the sample segments 9001-9004 can be rendered into processed input data 9011, 9012, 9013, and 9014 such as rendered segments 9011, 9012, 9013, and 9014. In embodiments, such rendering is not necessary. Here, the binary segments 9001, 9002, 9003, and 9004 are transformed into grayscale segments 9011, 9012, 9013, and 9014. Additional or alternative possibilities for rendering can include applying an initial RET to the segments, e.g., applying SMO, biasing one or more features in the segments, etc.
[0100] In addition, the training process obtains optical proximity correction data 9021, 9022, 9023, and 9024 corresponding to the sample segments, such as CTM maps 9021-9024 (as Figure 7 illustrated in FIG. 6B, where the light gray adjacent to dark features corresponds to auxiliary features such as SRAFs), corresponding to the sample segments 9001-9004, respectively. The data 9011-9014 and corresponding data 9021-9024 are then used to train the machine learning model 705.
[0101] In embodiments, the machine learning model can be specific to a particular patterning device pattern. In other words, the machine learning model can be retrained for different patterning device patterns. In some embodiments, one trained machine learning model can be used for several different patterning device patterns having similar segment patterns.
[0102] In embodiments, the machine learning model is specific to a particular device manufacturing process used for the patterning device pattern. For example, the device manufacturing process can be configured in terms of a type of illumination used, a type of resist used, certain projection system settings, etc. One or more of those device manufacturing process parameters can be used to generate “real” data, and thus the machine learning model can be specific to the particular configuration of the device manufacturing process. As will be appreciated, generating “real” data can involve simulation of perturbations to one or more of the process parameters, and thus the machine learning model can extend to variations of the particular configuration of the device manufacturing process. In embodiments, if the particular configuration of the device manufacturing process changes in terms of materials, a new machine learning model can need to be trained or a previously similar machine learning model can need to be retrained.
[0103] In Figure 8 FIG. 6B shows example input data 6000 of a design pattern according to example embodiments of the present disclosure (in this case, as Figure 8image of the design pattern illustrated in the middle), which can be input to the trained machine learning model 705 to produce the predicted optical proximity correction data 6005, in this case, the predicted image of the input design pattern with the applied RAF (as illustrated in the rightmost column of FIG. 6A). Figure 8 As illustrated in the middle, SRAFs are depicted as light gray adjacent to dark features). Alternatively or additionally, data 6000 can be input data used to train the machine learning model, and data 6005 corresponds to reference data for the design pattern of data 6000.
[0104] Now, additional techniques are described regarding methods for training the machine learning model and methods to improve the quality of the machine learning model. These techniques can be applied to any of the machine learning methods and flows described herein, and thus can be used to create new models or retrain existing models. Desirably, these additional techniques result in highly trained machine learning models that can provide accurate and consistent optical proximity correction (e.g., assist feature placement) predictions and / or are implemented at a relatively fast rate for, e.g., full chip application.
[0105] Figure 9A is a flowchart of a method for training a machine learning model according to example embodiments of the present disclosure. In this method, the training data is supplemented to achieve, e.g., improved accuracy and consistency of optical proximity correction. Reference grid dependence is important in computational lithography including optical proximity correction (e.g., assist feature placement) due to reference grid based simulations. This is described above, e.g., with respect to Figure 4A-Figure 4E Thus, in view of grid dependence, it is desirable to provide techniques to help reduce the effects of grid dependence and / or improve consistency. Thus, now described is a method that implements training data augmentation to, e.g., help improve consistency and reduce grid dependence, thus improving the process window of the output of the machine learning model in a desirable manner.
[0106] The process begins with data 5000 regarding a design pattern, which is input to train the machine learning model. In embodiments, where the machine learning model is being trained to place assist features, the design pattern is a target design pattern or a portion of a design pattern that does not include assist features. In embodiments, the design pattern can have been previously OPCed.
[0107] In a series of processes, the design pattern 5000 is transformed into an input image of the design pattern 5000 that has been optically proximity corrected for use in training the machine learning model. In process S501, the design pattern 5000 is shifted relative to the reference grid in a first direction (e.g., the X-axis) and / or a second direction (e.g., the Y-axis) by shifting the design pattern or by shifting the reference grid, for example, approximately... Figure 4C As illustrated in the figure. In process S501, the design pattern 5000 can be shifted one or more times to generate one or more shifted design patterns 5001. For example, the design pattern 5000 can be shifted in the X and / or Y directions in a series of pixels having a step size smaller than the pixel size (e.g., a shift of less than or equal to 20 nm (where the pixel size is greater than 20 nm), a shift of less than or equal to 10 nm (where the pixel size is greater than 10 nm), a shift of less than or equal to 5 nm (where the pixel size is greater than 5 nm), a shift of less than or equal to 1 nm (where the pixel size is greater than 1 nm)) to generate shifted design patterns 5001, wherein each pattern is located at a different sub-image (in different directions) relative to the reference grid of the pixel. For example, if the shift is considered as a shift between sub-pixels, then each pattern is located on a different sub-pixel grid. Thus, sub-pixels are obtained, for example, by dividing the pixel into smaller units depending on the pixel size. For example, for a pixel size of 10nm x 10nm, a 10x10 subpixel grid can be formed, where each subpixel is 1nm x 1nm in size. In this way, a 10x10 array of shifted design pattern 5001 can be generated.
[0108] In this embodiment, shifts are performed in both the X and Y directions. In this embodiment, the shift size in the X direction need not be the same as the shift size in the Y direction. Furthermore, different combinations of shift sizes can be used for different shifts in the same direction. For example, a first shift in either the X or Y direction could be 1 nm and a second shift in either the X or Y direction could be 2 nm.
[0109] In process S503, the shifted design patterns 5001 are processed with optical proximity correction using, for example, SMO-MO, inverse OPC (iOPC), or other optical proximity techniques to generate optical proximity corrected images 5003. In embodiments, the images 5003 can be CTM maps generated from each of the shifted design patterns 5001. In embodiments, the technique to generate the CTM maps determines optical proximity correction based on edge placement error (EPE) and involves multiple iterations until convergence. Thus, the CTM maps can be very accurate when processing time can be relatively long. Also thus, it can be suitable for using the CTM maps of the segments for training the machine learning model, but it is not so desirable to use the CTM maps for full chip OPC by using, for example, SMO-MO.
[0110] In process S505, the images 5003 are analyzed to determine and select one or more images 5005 having a higher than average process window. The process window can be determined using techniques and tools known in the art, such as ASML's Tachyon (meaning "superluminal particle") scheme and / or LMC products, and described in documents incorporated herein by reference. The higher than average process window can be the best process window of the images 5003. The higher than average process window can be a process window within 20% of the best process window. The quality of the process window can be assessed by using metrics representing the process window (e.g., areas under two or more process parameters where one or more pattern features meet a criterion). In embodiments, the metrics can be the size of a range (e.g., focus range for dose-focus process window) of one or more parameters of the process window where one or more pattern features meet a criterion.
[0111] In process S507, one or more orientation operations can be performed on the selected images 5005 to generate one or more oriented images 5007. For example, the selected images 5005 can be rotated (e.g., by an angle selected from 0 to 360°, a multiple of 45° or 90°), flipped (e.g., mirrored), or both rotated and flipped to generate one or more oriented images 5007. In embodiments, the type of orientation operation can be based on the symmetry of the shape of the illumination used in the lithography apparatus. For example, for ring-shaped illumination, both rotation and mirroring operations can be performed. For dipole-shaped illumination, only flipping operations can be performed. Furthermore, the angle of the orientation operation can depend on the symmetry of the illumination. For example, a dipole with a pole point aligned on the X-axis can be flipped or mirrored across the X and / or Y axis. As another example, a dipole with a pole point aligned on a 45° line with the X-axis can be flipped or mirrored across the line, or a line perpendicular to the line that runs through a central portion between the pole points of the dipole.
[0112] In process S509, the oriented image 5007 can be further shifted in the X and / or Y direction to produce image 5009 in a similar manner as discussed in process S501. In an embodiment, the same shifts applied in process S501 are applied to image 5007 to produce image 5009.
[0113] In another series of processes, the design pattern 5000 itself is transformed into input images of the design pattern 5000 that correspond to each of the images 5009 used in training the machine learning model. For example, each image in 5009 has a corresponding image in 5012 that results from the same operations. For example, if image A in 5009 results from a 90° rotation and a shift of dx and dy, then a similar rotation and shift operation is applied to the original input image of the design pattern to form image B. In process S511, the design pattern 5000 can optionally be rendered to produce a rendered design pattern 5011. For example, the rendered design pattern 5011 can be a gray scale image of the binary design pattern 500. In process S512, the pattern 5000 or pattern 5011 can be flipped and / or rotated similar to process S507, and shifted in the X and / or Y direction similar to process S509 to produce shifted input design patterns 5012. In an embodiment, the same shifts applied in process S501 are applied to pattern 5000 or pattern 5011 to produce pattern 5012. In an embodiment, the same flips and / or rotations applied in process S512 are applied to pattern 5000 or pattern 5011 to produce pattern 5012.
[0114] In process S520, the patterns 5012 and images 5009 (e.g., where there is an image pair between each of the patterns 5012 and each of the images 5009) are used to train the machine learning model and produce a trained machine learning model 5200. The training process can be iterative and can employ several training data points to build the trained machine learning model 5200. As will be appreciated, these techniques can be applied to various design patterns to provide multiple combinations of patterns 5012 and images 5009 for different input design patterns 5000. In an embodiment, as shown by the dashed lines, the patterns 5011 and images 5003 can be used to train the machine learning model and produce a trained machine learning model 5200. While the above discussion focuses on patterns and images, the manipulated data and resulting training data can be more general data, such as one or more features in the patterns 5012 and one or more features in the images 5009. Once trained with this data, the trained machine learning model 5200 can then be used to produce predicted optical proximity correction (e.g., assist feature placement) from any input design pattern, asFigure 6 illustrated in FIG. 1.
[0115] The machine learning model training process discussed herein involves evaluating one or more objective functions, e.g., minimizing one or more cost / loss functions between “true” data and data predicted by the machine learning model. Such objective functions can be based on evaluation of one or more certain metrics, such as error of difference between two data sets.
[0116] A preliminary discussion will now be made regarding Figure 9B Some of these other evaluation metrics are discussed. Figure 9B is a flowchart of a method of updating the machine learning model parameters based on the objective function. It can be implemented in conjunction with Figure 9A process S520 or as part of process S520. The process starts by obtaining a design pattern such as design pattern 5000. In process S541, the machine learning model produces predicted optical proximity correction data 5041 for design pattern 5000 (or e.g., pattern 5011 or 5012). In embodiments, the predicted data 5041 includes, e.g., a predicted CTM map or other image representing optical proximity correction (e.g., placement of assist features).
[0117] In process S551, reference data 5051 (e.g., produced using e.g., SMO-MO or iOPC techniques) for the design pattern 5000 is obtained. For example, this data can be data 7005 in Figure 5 Figure 7 data 9021-9024 in
[0118] In process S543 and / or process S553, the predicted data 5041 and / or the reference data 5051 are further processed to produce modified predicted data 5043 and / or modified reference data 5053, respectively. Some examples of the processing of process S543 and / or process S553 are further described below with respect to Figure 10 to Figure 15
[0119] In process S520, the baseline data 5051 or the modified baseline data 5053 (generally referred to as baseline data in the following paragraphs) can be evaluated using the predicted data 5041 or the modified predicted data 5043 (generally referred to as predicted data in the following paragraphs) as part of the objective function, through which the parameters of the machine learning model can be modified. For example, the objective function can be evaluated using the difference between the baseline data 5051 or the modified baseline data 5053 and the predicted data 5041 or the modified predicted data 5043. As will be understood, the baseline data 5051 can be evaluated using the predicted data 5041, or the baseline data 5051 can be evaluated using the modified predicted data 5043, or the modified baseline data 5053 can be evaluated using the predicted data 5041, or the modified baseline data 5053 can be evaluated using the modified predicted data 5043, using indicators, data, etc., as needed for evaluation. In one embodiment, a transformation can be performed on the reference data and the same transformation can be performed on the predicted data, and then the difference between the transformed reference data and the correspondingly transformed predicted data can be obtained.
[0120] In an embodiment, the mean squared error (MSE) or the average error of x degrees (MXE) (where x can be greater than 2) (e.g., 4-degree error means error to the fourth power) metric can be used in the objective function, which assigns equal importance (e.g., weights) to all data, such as all pixels of the baseline data and the data to be predicted. Thus, referencing Figure 10 , Figure 10 (and Figure 11 The diagram illustrates primary feature 1005 (e.g., contact hole) and auxiliary feature 1008. Figure 10 In this context, the difference between the baseline data 1000 and the data 1010 predicted by the machine learning model is calculated, for example, represented by the difference 1020. Figure 10 In this example, if the difference between the baseline and the predicted value is greater than zero, bright spots (e.g., pixels with a value of 1 or greater) appear in the image; conversely, when the difference is zero, dark spots (e.g., pixels with a value of 0) appear in the image. Therefore, the MSE or MXE metric can be used on the calculated difference, and this MSE or MXE metric can be evaluated in the cost or loss function to adjust the machine learning model parameters to minimize the MSE or MXE. For example, in Figure 10 In the example, the parameters of the machine learning model can be modified to make the difference image 1020 more similar to... Figure 10The reduced bright spots depicted in the figure result in areas that are almost entirely dark. This will indicate a strong match between the predicted data 1010 and the baseline data 1000. As will be discussed further, additional or alternative evaluation metrics can be beneficial and may produce better results from the trained model compared to those derived from MSE or MXE.
[0121] In an embodiment, the processing of the predicted data and the reference 5051 may involve assigning importance (e.g., weight) to data in the predicted data and / or reference data that is associated with a certain optical proximity correction, such importance (e.g., weight) is higher than the importance (e.g., weight) assigned to other data in the predicted data and / or reference data. For example, higher weight may be assigned to certain placed auxiliary features in the predicted data and / or reference data.
[0122] In the embodiment, reference Figure 11 The objective function evaluates a weighted error metric (e.g., weighted MSE / MXE), where different weights can be assigned to different data (e.g., pixels) in the predicted data and / or reference data. For example, relatively higher weights can be assigned to data associated with a region of optical proximity correction (e.g., an auxiliary feature), i.e., a region where a higher weighted optical proximity correction is located. In an embodiment, that region can be the region closest to the principal feature, which at least encompasses one or more optical proximity corrections (e.g., auxiliary features) closest to the principal feature. In another example, relatively higher weights can be assigned to portions (e.g., pixels) on the edges of optical proximity corrections. For example, the edges of a scattering strip can be weighted more than the interior of the strip (and optionally, other portions of the design pattern), i.e., given a higher weight. In another example, weights can be assigned based on a decay function, where the weight decreases as the distance from the principal feature increases. Thus, for example, pixels closer to the principal feature will have a greater weight than pixels farther away from the principal feature.
[0123] exist Figure 11 In this process, a difference 1120 is generated between the reference data 1100 and the predicted data 1110. In an embodiment, the reference data 1100 (e.g., using process S553), the predicted data 1110 (e.g., using process S543), and / or the difference 1120 are combined with weights 1130 based on a graph or mapping (e.g., edges with optical proximity correction), a function (e.g., the attenuation function described above), a dataset (e.g., the location of edges or regions of a design pattern), etc. Figure 11 In the example, the weights are multiplied by the difference of 1120. Furthermore, in... Figure 11In the example of FIG. 11B, the weight 1130 is in the form of a weight map that assigns a higher weight to pixels that are close to the primary feature (the bright spot in the image 1130) and a lower (e.g., progressively decreasing) weight to pixels that are further away from the primary feature, which is illustrated as the relatively darker shadow extending from the bright spot. In this example, the weight map 1130 assigns a relatively higher weight to the certain optical proximity correction 1009 compared to other areas, including areas with other optical proximity corrections 1008. Thus, in this case, the certain optical proximity correction (e.g., the ring of assist features) 1009 is prioritized over one or more other optical proximity corrections (e.g., one or more other rings of assist features) 1008. Figure 11 In this example of FIG. 11B, the weight map 1130 assigns a relatively higher weight to the certain optical proximity correction 1009 compared to other areas, including areas with other optical proximity corrections 1008. Thus, in this case, the certain optical proximity correction (e.g., the ring of assist features) 1009 is prioritized over one or more other optical proximity corrections (e.g., one or more other rings of assist features) 1008.
[0124] In embodiments, the processing of the predicted data and the reference data can involve transforming the predicted data in the form of an image or pixels and / or the reference data in the form of an image or pixels using a binarization function such as a logistic function, and the metric of the objective function uses the processed predicted and / or reference data. In embodiments, the binarization function can be any function that converts / translates an image into a semi-binary (i.e., pixels having values between 0 and 1) or binary image (i.e., pixels having values of 0 or 1) via a function transformation, where the function is, for example, a logistic function. In embodiments, when the binarization function is applied to an image, the semi-binary pixel values can be very close to 0 or 1 (e.g., within less than 10% of the extreme values 0 or 1). For example, pixel values very close to 0 can be 0, 0.01, 0.05, etc., and values very close to 1 can be 0.9, 0.95, 1, etc. Thus, the present disclosure is not limited to binary images only.
[0125] In embodiments, the logistic function can have the following form:
[0126]
[0127] where L is the maximum value of the curve, k is the slope or steepness of the curve, and x0is the threshold value (e.g., the midpoint of x). In embodiments, the logistic function is a sigmoid function (i.e., where k = l, x0= 0, L = l).
[0128] With reference to Figure 12AThe objective function can be based on metrics using a binarized version of the predicted and / or benchmark data, which is implemented using a logistic function. That is, in embodiments, a logistic function such as a sigmoid function is used to convert a grayscale image of the predicted and / or benchmark data into a binary image (e.g., process S543 and / or process S553 as applicable). For example, benchmark data image 1200 is converted to benchmark binary data image 1202, and predicted data image 1210 is converted to binary predicted data image 1212.
[0129] In this binarization technique, the location of the optical proximity correction (e.g., assist features) is more important than its intensity. In other words, the SRAF map (e.g., 1200 or 1210) serves as a guide for placing SRAF polygons around the main features. The SRAF polygons are placed based on the shape (e.g., peak) information of the SRAF map. Thus, even if the ML-predicted map (e.g., 1210) has lower intensity compared to the benchmark map (e.g., 1200), but the shape information is available, the same SRAF polygons (e.g., as available in the benchmark map) can be placed around the main features.
[0130] In embodiments, the binarization can be a one-step process (e.g., applying equation 1) or a two-step process (e.g., applying equation 1 and a binarization conversion based on another threshold). For example, in embodiments, to implement the binarization, a threshold can be assigned to the result of the transformation based on the logistic function. For example, in the case of a sigmoid function, the threshold can be approximately greater than.5, which indicates that after the sigmoid transformation, the resulting image has pixels with values approximately greater than 0.5 assigned a value of 1, and otherwise the pixel is assigned a value of 0. In the case of using a logistic function, a binarized “1” can be assigned to those input values whose logistic function value is greater than the logistic function value at X0, and a binarized “0” can be assigned to those input values whose logistic function value is less than the logistic value at X0.
[0131] In embodiments, with respect to binarization cost, different ways to convert a grayscale image to a binary or semi-binary image can be employed. For example, a fixed threshold, i.e., a step function, is used to binarize a grayscale image. Or a sigmoid function is used to convert a grayscale image to a semi-binary image. In embodiments, the binarization can be a one-step process, e.g., via a sigmoid transformation.
[0132] In embodiments, binarization can be used with any objective function metric such as MSE, MXE, RMS, etc. In embodiments, binarization can be used in conjunction with a conventional MSE / MXE cost function as a fine-tuning process to further improve a baseline model trained using the conventional MSE / MXE cost function.
[0133] Figure 12BThe results of using binarized reference and predicted data for a cost function are illustrated. The difference between binarized reference data 1250 and binarized predicted data 1255 is calculated. The result is difference 1260, as illustrated. Thus, based on the evaluation of the metric of the objective function using binarized reference data 1250 and binarized predicted data 1255, the machine learning model parameters can be modified. For example, in an embodiment, a cost or loss function using a metric such as RMS, MSE, or MXE can be reduced by adjusting one or more parameters of the machine learning model through a minimization process via the cost or loss function to reduce the difference 1260.
[0134] In an embodiment, the processing of the predicted data and reference data can involve identifying an edge of each of one or more optical proximity corrections that at least partially make up the image data of the reference and / or predicted data. Further, in an embodiment, one or more identified edges of the predicted and / or reference data can be assigned a higher importance (e.g., weight) than another portion of the optical proximity correction and / or other portions of the design pattern.
[0135] In an embodiment, with reference to FIG. 6, the predicted data 605 can be processed to identify one or more edges of one or more optical proximity corrections that at least partially make up the predicted data 605. In an embodiment, the identified one or more edges of the predicted data 605 can be assigned a higher importance (e.g., weight) than another portion of the optical proximity correction and / or other portions of the design pattern. Figure 13, the objective function can use edge pixel enhancement techniques in accordance with the present disclosure. In the edge pixel enhancement techniques, one or more major features and / or one or more OPC edge pixels are identified in order to, for example, effectively transform (e.g., using process S553 and / or S543) the original image 1300 into a modified image 1302 for training the machine learning model. In the edge pixel enhancement techniques, for each pixel within the original image 1300, if the pixel has a different sign (relative to a threshold, if the pixel intensity is in [0, 1], for example, a value of at least 0.5) relative to its four neighbors (up, down, left, right), the pixel is considered an edge pixel. In embodiments, the edge pixel identification involves evaluating a gradient relative to the pixels associated with the various neighboring directions. Once the edge pixels are identified, the importance applied to the edge pixels can be different than the importance applied to other portions of the image. For example, the major feature and / or OPC edge pixels can be applied a higher weight than their interior. In embodiments, the major feature and / or OPC edge pixels can be applied a higher weight than all other portions. The modified image 1302 and / or the weighted image 1302 can then be used with an evaluation metric (e.g., MSE, MXE, RMS, etc.) of the objective function as part of training the machine learning model. In embodiments, the spatial evaluation of the objective function is based only on edge pixel information. In embodiments, the edge pixel enhancement techniques can be used as a fine-tuning technique to further improve a baseline model trained using another (e.g., MSE / MXE) cost function.
[0136] In embodiments, the processing of the predicted data and the reference data can involve an enhancement of one or more major features and / or one or more OPC edge points in the image data that at least partially make up the reference and / or the predicted data. The image data with the enhanced edge points can then be used in evaluating the objective function of the machine learning model training method.
[0137] In embodiments, the reference Figure 14The objective function can use edge point enhancement techniques in accordance with the present disclosure. In edge point enhancement techniques, a contour is traced (or extracted) along the edge of one or more primary features and / or one or more optical proximity corrections from the reference map and / or predicted data. In an embodiment, a threshold can be used to trace the contour (e.g., a pixel value such as 0.5 between 0 and 1). The contour traces the edge points of the one or more primary features and / or one or more optical proximity corrections. The contour includes a number of points (also referred to as gauge points), each having an intensity value (e.g., between 0 and 1). These edge points act as gauges in the ML training process. In the training phase, the ML model predicts an image, and then determines the intensity value at the gauge point locations of the image. For example, an interpolation method can be used to determine the intensity value at the gauge locations. Then, the cost function is evaluated by comparing the predicted intensity value (of the predicted image) to the true value (i.e., the threshold value).
[0138] In an embodiment, the edge point enhancement techniques involve converting an image (e.g., a grayscale image) of the reference and / or predicted data into a contour (e.g., GDSII, OASIS, or other format) of the one or more primary features and / or one or more optical proximity corrections using any contour identification technique. For example, the contour identification technique can involve identifying edges and applying a threshold to identify the contour (e.g., evaluating grayscale values along a line perpendicular to the edge and stretching through the edge to identify locations where the grayscale value exceeds a certain threshold to identify them as contour locations). In an embodiment, the contour identification technique can evaluate the gradient at multiple points along the edge to obtain the contour. In an embodiment, the image can be upscaled to a finer pixel grid for purposes of contour identification. In an embodiment, the image can have binary pixels, e.g., a binarized version obtained using techniques as described herein. In an embodiment, one or more contours are gathered from the image data of the reference data and predicted data, and the one or more contours are used for objective function evaluation.
[0139] In the case where one or more contours are identified, a plurality of points (e.g., 2 or more, 5 or more, 10 or more, 20 or more, 40 or more, 50 or more, 100 or more, which can be so per contour or for the entire design pattern) can be selected from the one or more contours of the one or more primary features and / or the one or more optical proximity corrections, the contour points to be used as part of the objective function evaluation for the machine learning model training. That is, the machine learning training will be performed to fit the machine learning model well at those contour points where the known target image values equal the threshold value (i.e., the benchmark data and the predicted data should match well at those locations on the contour). Thus, by focusing on the evaluation of the contour points, higher importance is assigned to the edges of the optical proximity corrections, among others. For example, the focus (higher importance) can be placed on the SRAFs by selecting only SRAF edge points / pixels, the focus (higher importance) can be placed on the primary features by selecting only primary feature edge points / pixels, or a combination thereof. Thus, in embodiments, the spatial evaluation of the objective function is based only on the contour locations. Now, where applicable, one or more of the selected points can be off the reference pixel grid of the image (i.e., actually at sub-pixels), so a local interpolation function or operator can be used to calculate the image value corresponding to those one or more selected points by using the grid data from the image. Then, the image value at the selected points (whether calculated by interpolation or not) can be used in any evaluation metric (e.g., MSE, MXE, etc.) of the objective function for the training process of the machine learning model. In embodiments, by using the techniques described, for example, with respect to Figure 11 The selected edge points of the one or more optical proximity corrections can be assigned higher weight than other portions of the associated optical proximity corrections and / or other portions of the design pattern, in embodiments. In embodiments, the edge point enhancement technique can be used as a fine-tuning technique to further improve a baseline model trained using another (e.g., MSE / MXE) cost function. In embodiments, another metric (e.g., MSE, MXE) is combined with an edge point based metric (e.g., edge point MSE / MXE) into one objective function as a regularization.
[0140] The edge point enhancement technique involves tracing the contours of the features (e.g., primary features and SRAFs) from the image and using the contour points (i.e., points along the contours of the features) as training data (or training metrology points). For example, in image 1400, the contours of the features are traced and contour points are superimposed along the contours, as illustrated in image 1410 (or enlarged portion 1410A of 1410).
[0141] In embodiments, the contours from the ground truth and the predicted data can be used in the manner of edge placement error as a basis for generating data for evaluation of metrics of the machine learning model training process. That is, in embodiments, an edge placement error can be determined between the ground truth data contour and the predicted data contour, which can be used in evaluation metrics (e.g., MSE, MXE) of the objective function. Figure 15 A highly schematic example of such edge placement error for evaluation of an objective function of a machine learning process is illustrated in accordance with example embodiments. In Figure 15 In the example, a contour of a pattern 1500 from ground truth data (in this case, shown as a rectangular polygon for convenience, but can be very curved) and a contour of a pattern 1510 from predicted data (determined by a machine learning model) are depicted. In embodiments, the pattern 1500 and the pattern 1510 correspond to optical proximity correction (e.g., assist features). As shown, there is a shift, e.g., distances dl and d2, at certain portions of the edges of the pattern 1500 and the pattern 1510. In evaluating metrics of the objective function (e.g., in minimizing the MSE / MXE metric of a cost function), the objective function can be the distances dl and d2 (and other edge placement error distances) to effectively reduce at least one or more of the shifts (if not eliminate all of the shifts) by adjusting one or more machine learning model parameters.
[0142] In embodiments, the objective function of the machine learning model can have a penalty term to help improve the consistency and symmetry of the predictions by the machine learning model. In particular, a penalty term (in the form of D(f(S(I)), S -1 (f(S(I))) can be added to the objective function (and evaluated as part of the evaluation of the objective function) to help improve the consistency. In this example, the function f corresponds to a prediction of an input image I using the machine learning model. The image I is shifted by a shift function S from an initial position of the image I to produce a shifted image S(I). The shifted image S(I) can be input to the machine learning model to produce a predicted shifted input image f(S(I)). The predicted shifted input image f(S(I)) can then be inversely shifted (i.e., shifted back) by an inverse shift function S -1 (f(S(I))) to produce an inversely shifted predicted image S -1 (f(S(I))), thus effectively shifting the shifted image back to the initial position. Also, the input image I can be directly input to the machine learning model without shifting to produce a predicted image f(I). Then, the inversely shifted predicted image S -1(f(S(I))) and the predicted image f(I) can be evaluated using a comparison function D. For example, the function D can be a distance function to identify a distance between two predictions (e.g., to find a difference). In an embodiment, the penalty term D(f(I), S -1 (f(S(I))) is, for example, minimized towards zero to help improve consistency and symmetry. The shift function S is used as an example and does not limit the scope of the present disclosure. In an embodiment, other image operations, such as rotation, flipping, etc., can also be performed, alone or in combination. Thus, the shift function can include shifting, rotation, flipping, other operations, or combinations thereof.
[0143] In an embodiment, the various techniques described herein can be combined in any suitable combination and one or more aspects of a technique can be incorporated into or replace one or more aspects of another technique. For example, a particular objective function can incorporate a combination of metrics or use a combination of techniques described herein to generate data for evaluating the objective function. Or, as another example, multiple objective functions can be used incorporating different metrics or using data processed by different techniques for evaluating the objective functions.
[0144] Thus, the training process of the machine learning model and associated objective function techniques according to the present disclosure can have one or more advantages. As described above, one or more of the techniques described herein can enable more consistent predictions, enable improved accuracy, and / or enable faster optical proximity correction predictions for larger patterns. Additionally or alternatively, the machine learning training and use can advantageously use grayscale images as input and / or output. As ML input, grayscale representations can contain much more information than traditional binary representations, if given the same grid resolution. For example, as ML output, a CTM image used to train the machine learning model can include relatively more information than a binary pattern for a given grid resolution. Additionally or alternatively, when using model-based optical proximity correction techniques, such as super-velocity particle SMO or inverse OPC (iOPC), to generate benchmark data, the machine learning model can be optimized with data that can produce strong, if not optimal, process windows. As such, the trained machine learning model propagates the process window benefits of the model-based optical proximity correction techniques from a fragment level to a larger pattern, such as a full chip. Thus, for example, a trained machine learning model using one or more of the techniques described herein can utilize a relatively low runtime to enable full chip optical proximity correction and provide a relatively good process window.
[0145] Further, in embodiments, deep learning can be applied to optical proximity correction prediction (e.g., SRAF placement problem). Deep learning can, for example, 1) not require manual feature engineering, 2) be able to learn from large amounts of data, and / or 3) have high accuracy compared to traditional machine learning techniques.
[0146] In embodiments, the techniques herein can be seamlessly integrated into full chip OPC flow such as ASML eBeam OPC flow. For example, the predicted optical proximity correction map (e.g., assist feature map) can be used to apply optical proximity correction to the design pattern (e.g., SRAF extraction) and subjected to further OPC. In addition, user defined mask constraints can be applied to the application of optical proximity correction and / or printing check can be performed under process conditions (e.g., using ASML's LMC tool).
[0147] In embodiments, the machine learning techniques herein can be extended to other applications in OPC where image prediction is desired, for example, initialization of advanced inverse lithography engines.
[0148] For optical proximity correction prediction, it is desirable to use the target design pattern (which can be a fragment or full chip) to predict the (optimized) optical proximity correction for the target design pattern. However, there are many different options for the machine learning input and output. In embodiments, the target design pattern and the optical proximity correction design pattern can typically be in GDS (GDSII), OASIS or other similar format for e.g. manufacturing purposes, which means they are binary. For the machine learning process, an image can be used to predict the image of the optical proximity correction. Thus, in embodiments, the binary target design pattern in GDS (GDSII), OASIS or other similar format is converted to a pixelated image. In a first possible scenario, the target design pattern is converted to a binary pixelated image. In another possible scenario, the target design pattern is converted to a gray scale pixelated image. As mentioned above, it can be desirable to choose the latter option - the gray scale pixelated image. Reasons for choosing the latter option include, for example: 1) for the same given pixel size (image resolution), a gray scale image has much more information than a binary image due to the extra degree of freedom of "continuous" intensity depending on the number of gray scales. In other words, to keep the same amount of information as a binary pixelated image, a gray scale image can have a larger pixel size than a binary pixelated image and thus can speed up the computation; and / or 2) advanced mask optimization engines (e.g., SM0 or iOPC software tools, such as ASML's eBeam software) can provide a CTM image directly for a given target design pattern, which is in gray scale.
[0149] Accordingly, in embodiments, for the machine learning input image, the mask model can be used to reproduce the binary target design pattern into a gray scale target design pattern image. For the machine learning output image (including the reference data used for machine learning), a CTM image can be used, which can be generated by using a CTM generation software program used for machine learning model training.
[0150] However, there can be certain other possible schemes for the machine learning model input image. For example, the gray scale target design pattern image can be convolved with one or more optical kernels (e.g., one or more TCC kernels) to generate one or more additional signal images. In embodiments, a single gray scale target design pattern image can generate more than one signal image, as there can be multiple optical kernels (e.g., TCC kernels) in a model. In embodiments, all signal images can be used in the machine learning model training, or a series of one or more signal images can be used. As another example, the output image of the model-based SGM software engine can be used as the machine learning input image. In most cases, this image is closer to the CTM image than the gray scale target design pattern image created by the mask model.
[0151] The machine learning model then only needs to learn the difference (or error) between them, which can make the task easier. Therefore, in summary, for the machine learning input, there can be several possible schemes, including 1) a gray scale target design pattern image, 2) one or more signal images, and / or 3) an SGM. As machine learning can include several images with the same size as one input, one of them or a mix of them can be selected as the input for machine learning.
[0152] Several neural network architectures have been designed for deep learning tasks. As examples, for image recognition tasks, multiple architectures include, e.g., AlexNet (see, e.g., A. Krizhevsky et al., “ImageNet Classification with Deep Convolutional Neural Networks,” Advances in Neural Information Processing Systems 25 (NIPS 2012), which is incorporated by reference herein in its entirety), GoogLeNet (see, e.g., C. Szegedy et al., “Going Deeper with Convolutions,” 2015 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), which is incorporated by reference herein in its entirety), VGG (see, e.g., K. Simonyan et al., “Very Deep Convolutional Networks for Large-Scale Image Recognition,” International Conference on Learning Representations (2015), which is incorporated by reference herein in its entirety), and ResNet (see, e.g., K. He et al., “Deep Residual Learning for Image Recognition,” 2016 IEEE Conference on Computer Vision and Pattern Recognition, which is incorporated by reference herein in its entirety). Each of those designs has its own intuition and strengths. However, these are not necessarily directly applicable to design patterns for predicting optical proximity correction as described herein, as optical proximity correction prediction is significantly different from traditional deep learning tasks. For example, a typical image classification problem has fixed input and output size, while for optical proximity correction prediction, it is desirable to handle images of different sizes. As another example, pooling layers (stride larger than 1) are often used to provide dimensionality reduction and improve local invariance. However, this tends to be unavailable for optical proximity correction prediction, as input and output image pairs typically have the same size. Thus, in embodiments, new neural networks are described below as machine learning models for optical proximity correction prediction.
[0153] In this embodiment of the neural network, one or more building blocks are provided and then a deep network is constructed by stacking instances of one or more building blocks. There are several options for the one or more building blocks. A first type of building block is a convolutional layer as known in the art. Another type of building block is an inception block. An inception block consists of a max-pooling layer with a stride of 1 and two or more convolutional layers with different filter sizes. Figure 16 An example inception block is presented in Figure 16 In the block 1610 to 1650 and 1670 represent convolutional layers (e.g. 1x1 convolutions 1610, 1620, 1640, 1670, 3x3 convolutions 1630 and 5x5 convolutions 1650, but different arrangements can be provided). Also, block 1660 represents a pooling layer (e.g. 3x3 max-pooling), block 1680 represents concatenation or concatenation of output images from layers 1610, 1620, 1650 and 1670, and block 1600 generally refers to a previous layer such as another inception block. Another type of building block is a residual block. A residual block has two convolutional layers and an extra path to directly connect the input and output of the residual block. Figure 17 An example of a residual block is presented in
[0154] Figure 18 An example optical proximity correction 1810 resulting from the use of an example trained machine learning model 1802 (trained according to the method of the present disclosure Figure 5 and Figure 7 ML model 705, 5200 trained by the method of the present disclosure). As Figure 18As shown in FIG. 18, a design target or wafer target layout 1801 (e.g., including contact holes 1803 and 1805) can be provided as input to a convolutional neural network (CNN) 1802 (e.g., an example of trained model 705, 5200, etc.), resulting in a mask pattern 1810 (e.g., a curvilinear pattern) with optical proximity correction including helper features around features corresponding to 1805 and feature 1805. CNN 1802 includes several layers, each layer having unique weights, and / or using a bias determined based on, for example Figure 5 and Figure 7 a training process as previously discussed (e.g., RMS, MSE, MXE, etc.). The input (i.e., wafer target layout 1801) is a pixelated image, each pixel in the pixelated image can be modified according to convolution operations through each layer to produce an output (i.e., mask pattern 1810 with optical proximity correction at the last layer). Unlike, for example, an iterative process of a conventional OPC process, this production of mask pattern 1810 is a single step process.
[0155] In an embodiment, a method is provided comprising: obtaining a training data set comprising optical proximity corrections for spatially shifted versions of a training design pattern; and training, by a hardware computer system, a machine learning model using data about the spatially shifted versions of the training design pattern and data based on the optical proximity corrections for the spatially shifted versions of the training design pattern, the machine learning model configured to predict optical proximity corrections for design patterns. In an embodiment, the spatial shifts are smaller than a size of a pixel grid of the training design pattern. In an embodiment, the method comprises: obtaining a training data set comprising a plurality of spatially shifted versions of a training design pattern in different ways and corresponding optical proximity corrections for the spatially shifted versions of the training design pattern; and training the machine learning model using data about the plurality of spatially shifted versions of the training design pattern in different ways and the corresponding optical proximity corrections for the spatially shifted versions of the training design pattern. In an embodiment, the method further comprises: selecting, from the plurality of spatially shifted versions of the optical proximity corrections in different ways, one or more versions of the optical proximity corrections that exhibit higher than average process window in the optical proximity corrections than others of the optical proximity corrections within the training data set; and training the machine learning model using data based on the selected one or more of the optical proximity corrections. In an embodiment, the method comprises selecting, from the plurality of spatially shifted versions of the optical proximity corrections in different ways, the optical proximity correction that exhibits the best process window. In an embodiment, the method further comprises: performing one or more rotation operations, flip operations, or both on the selected optical proximity correction to obtain one or more reoriented versions of the selected optical proximity correction; and training the machine learning model using data based on the one or more reoriented versions of the selected optical proximity correction and corresponding one or more reoriented training design patterns. In an embodiment, the method further comprises: performing one or more spatial shifts on the selected optical proximity correction to obtain one or more spatially shifted versions of the selected optical proximity correction in different ways; and training the machine learning model using data based on the one or more spatially shifted versions of the selected optical proximity correction in different ways and corresponding one or more spatially shifted versions of the training design pattern in different ways. In an embodiment, obtaining and training are repeated for a plurality of different design patterns. In an embodiment, the optical proximity corrections comprise placing auxiliary features around primary features of a given design pattern and / or modifying the primary features of the given design pattern. In an embodiment, the optical proximity corrections are in the form of images and the training is based on the images or pixel data of the images.In embodiments, the image is a gray scale image reproduced from a target design pattern image, and / or a sub-resolution assist feature guide (SGM) map, and / or a signal image obtained by convolving an image of a target design pattern with an optical kernel, and / or a continuous transmission mask of an output image of a model-based SGM processing of the target design pattern.
[0156] In embodiments, a method is provided, comprising: obtaining one or more spatially shifted versions of a design pattern and corresponding spatially shifted versions of optical proximity correction images for each of the one or more shifted design patterns; selecting, by a hardware computer system, one or more optical proximity correction images of the one or more shifted design patterns having a process window indicator that meets or exceeds a threshold; and training, by the hardware computer system, a machine learning model using training data comprising data about the one or more spatially shifted versions of the design pattern and data about the selected one or more optical proximity correction images.
[0157] In embodiments, the method further comprises: re-orienting the selected one or more optical proximity correction images to produce one or more re-oriented optical proximity correction images; spatially shifting the one or more re-oriented optical proximity correction images to produce a plurality of differently shifted re-oriented optical proximity correction images; obtaining a plurality of differently shifted versions of the design pattern corresponding to the plurality of differently shifted re-oriented optical proximity correction images; and training the machine learning model using training data comprising data about the plurality of differently shifted re-oriented optical proximity correction images and data about the plurality of differently shifted versions of the design pattern. In embodiments, re-orienting comprises one or more selected from: a flipping operation, a rotation operation, and / or a mirroring operation, wherein the type of operation is based on an illumination shape of a lithography apparatus. In embodiments, the optical proximity correction images are continuous transmission mask images.
[0158] In embodiments, a method is provided, comprising: obtaining a weighting function or data to assign different weights to different regions of an optical proximity correction of a design pattern than to other regions thereof; and training, by a hardware computer system, a machine learning model configured to predict an optical proximity correction for a design pattern by evaluating a predicted optical proximity correction of the design pattern by the machine learning model based on the weighting data relative to a baseline optical proximity correction of the design pattern.
[0159] In embodiments, a weighting function or data is applied to the predicted optical proximity correction, the reference optical proximity correction, and / or a difference between the predicted optical proximity correction and the reference optical proximity correction. In embodiments, the weighting function or data assigns a higher weight to a region proximate a main feature of the design pattern than to a region outside of the region. In embodiments, the region encompasses optical proximity correction for a main feature but excludes additional optical proximity correction for the main feature. In embodiments, the weighting function or data assigns a higher weight to an edge of an optical proximity correction than to an interior of the optical proximity correction and / or another portion of the design pattern. In embodiments, the weighting function or data comprises a weighting function configured to cause the weight to decay as a function of distance from a main feature of the design pattern.
[0160] In embodiments, a method is provided comprising: obtaining a reference optical proximity correction for a design pattern; generating, by a hardware computer system, a predicted optical proximity correction for a design pattern using a machine learning model; assigning, by the hardware computer system, a relatively high weight at a portion of the predicted optical proximity correction and / or the reference optical proximity correction; and training, by the hardware computer system, the machine learning model using an objective function that evaluates the weighted predicted optical proximity correction and / or the reference optical proximity correction.
[0161] In embodiments, a relatively high weight is assigned at an edge of the optical proximity correction. In embodiments, a first optical proximity correction for a main feature of the design pattern is assigned a different weight than a second optical proximity correction for the main feature.
[0162] In embodiments, a method is provided comprising: applying, by a hardware computer system, a binarization function to image data of a predicted optical proximity correction of a design pattern and / or a reference optical proximity correction of the design pattern to produce their respective binarized versions; and training, by a hardware computer system, a machine learning model configured to predict an optical proximity correction for a design pattern by evaluating the predicted optical proximity correction relative to the reference optical proximity correction based on the binarized versions of the predicted optical proximity correction and / or the reference optical proximity correction.
[0163] In embodiments, the binarization function is a sigmoid function.
[0164] In an embodiment, a method is provided, comprising: obtaining a reference optical proximity correction image for a design pattern; generating, by a hardware computer system, a predicted optical proximity correction image for the design pattern using a machine learning model; transforming, by the hardware computer system, the predicted optical proximity correction image and the reference optical proximity correction image into respective binary images using a binarization function; evaluating, by the hardware computer system, data of the binary image of the reference optical proximity correction image with respect to data of the binary image of the predicted optical proximity correction image; and adjusting, by the hardware computer system, parameters of the machine learning model based on the evaluation.
[0165] In an embodiment, the binarization function is a sigmoid function.
[0166] In an embodiment, a method is provided, comprising: processing, by a hardware computer system, image data of a predicted optical proximity correction of a design pattern by a machine learning model and / or a reference optical proximity correction of the design pattern to identify edge locations of the optical proximity correction; and training, by the hardware computer system, a machine learning model configured to predict an optical proximity correction for a design pattern by evaluating the predicted optical proximity correction with respect to the reference optical proximity correction based on data from the identified edge locations.
[0167] In an embodiment, the identified edge locations are identified edge pixels. In an embodiment, the identified edge locations are locations on a contour taken of the optical proximity correction. In an embodiment, the data from the identified edge locations on the contour is obtained by interpolating data on a pixel grid from an image of the design pattern. In an embodiment, the method further comprises applying a weighting to the identified edge locations of the optical proximity correction that is different from other locations of the optical proximity correction. In an embodiment, evaluating the predicted optical proximity correction with respect to the reference optical proximity correction comprises: determining edge placement error values between the identified edge locations for the predicted optical proximity correction and the reference optical proximity correction; and training the machine learning model based on the edge placement error values.
[0168] In an embodiment, a method is provided, comprising: obtaining a reference optical proximity correction image for a design pattern; generating, by a hardware computer system, a predicted optical proximity correction image for the design pattern using a machine learning model; identifying, by the hardware computer system, edge locations of features within the predicted optical proximity correction image and the reference optical proximity correction image; evaluating, by the hardware computer system, data at the identified edge locations of the reference optical proximity correction image relative to data at the identified edge locations of the predicted optical proximity correction image; and adjusting, by the hardware computer system, parameters of the machine learning model based on the evaluation.
[0169] In an embodiment, the identifying comprises tracing contours of features of the reference optical proximity correction image and the predicted optical proximity correction image to edges.
[0170] In an embodiment, a method is provided, comprising: obtaining a spatially shifted version of an input design pattern; and training, by a hardware computer system, a machine learning model configured to predict optical proximity correction for a design pattern using an objective function having a penalty term, the penalty term relating to a comparison between a value corresponding to a prediction by the machine learning model relative to the input design pattern and a value corresponding to a de-shifted version of a prediction by the machine learning model relative to the spatially shifted input design pattern, wherein the de-shift is a spatial shift that is inverse to a spatial shift used to create the spatially shifted version of the input design pattern.
[0171] In an embodiment, the comparison comprises a distance function.
[0172] In an embodiment, the spatial shift relates to an operation comprising flipping and / or rotation.
[0173] Figure 19is a block diagram that illustrates a computer system 100 that can assist in implementing the methods and flows disclosed herein. The computer system 100 includes a bus 102 or other communication mechanism for communicating information, and a processor 104 (or multiple processors, 104 and 105) coupled with bus 102 for processing information. Computer system 100 also includes a main memory 106, such as a random access memory (RAM) or other dynamic storage device, coupled to bus 102 for storing or supplying information and instructions to be executed by processor 104. Main memory 106 can be used for storing or supplying temporary variables or other intermediate information during execution of instructions to be executed by processor 104. Computer system 100 further includes a read only memory (ROM) 108 or other static storage device coupled to bus 102 for storing static information and instructions for processor 104. A storage device 110, such as a magnetic disk or optical disk, can be provided and coupled to bus 102 for storing information and instructions.
[0174] Computer system 100 can be coupled via bus 102 to a display 112, such as a cathode ray tube (CRT) or flat panel or touch panel display for displaying information to a computer user. An input device 114, including alphanumeric and other keys, can be coupled to bus 102 for communicating information and command selections to processor 104. Another type of user input device is cursor control 116, such as a mouse, a trackball, or cursor direction keys for communicating direction information and command selections to processor 104 and for
[0175] According to an embodiment, portions of the processes described herein can be performed by computer system 100 in response to processor 104 executing one or more sequences of one or more instructions contained in main memory 106. Such instructions can be read into main memory 106 from another computer-readable medium, such as storage device 110. Execution of the sequences of instructions contained in main memory 106 causes processor 104 to perform the process steps described herein. One or more processors in a multi-processing arrangement can also be employed to execute the sequences of instructions contained in main memory 106. In alternative embodiments, hard-wired circuitry can be used in place of or in combination with software instructions. Thus, the description herein is not limited to any specific combination of hardware circuitry and software.
[0176] The term "computer-readable medium" as used herein refers to any medium that participates in providing instructions to processor 104 for execution. Such a medium can take many forms, including but not limited to, non-volatile media, volatile media, and transmission media. Non-volatile media includes, for example, optical or magnetic disks, such as storage device 110. Volatile media includes dynamic memory, such as main memory 106. Transmission media includes coaxial cables, copper wire and fiber optics, including the wires that comprise bus 102. Transmission media can also take the form of acoustic or light waves, such as those generated during radio frequency (RF) and infrared (IR) data communications. Common forms of computer-readable media include, for example, floppy disk, flexible disk, hard disk, magnetic tape, any other magnetic medium, CD-ROM, DVD, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, RAM, PROM, and EPROM, FLASH-EPROM, any other memory chip or cartridge, a carrier wave as described hereinafter, or any other medium from which a computer can read.
[0177] Various forms of computer-readable media can be involved in carrying one or more sequences of one or more instructions to processor 104 for execution. For example, the instructions can initially be carried on a magnetic disk or memory of a remote computer. Remote computer can load the instructions into its dynamic memory and send the instructions over a communication path. Computer system 100 can receive the data from the path and place the data on bus 102. Bus 102 carries the data to memory 106, from which processor 104 retrieves and executes the instructions. The instructions received by memory 106 can optionally be stored on storage device 110 either before or after execution by processor 104.
[0178] Computer system 100 can include a communication interface 118 coupled to bus 102. Communication interface 118 provides a two-way data communication coupling to a network link 120 that is connected to a network 122. For example, communication interface 118 can provide a wired or wireless data communication connection. In any such implementation, communication interface 118 sends and receives electrical, electromagnetic or optical signals that carry digital data streams representing various types of information.
[0179] Network link 120 typically provides data communication to other data devices via one or more networks. For example, network link 120 may provide a connection to host computer 124 or to data devices operated by Internet Service Provider (ISP) 126 via network 122. ISP 126, in turn, provides data communication services via a global packet data communication network now commonly referred to as the “Internet” 128. Both network 122 and Internet 128 use electrical, electromagnetic, or optical signals carrying digital data streams. Signals through various networks and signals on network link 120 and through communication interface 118 (which transmits digital data to and from computer system 100) are exemplary forms of carrier waves for conveying information.
[0180] Computer system 100 can send and receive messages, including program code, via a network, network link 120, and communication interface 118. In an Internet example, server 130 can transmit requested code for an application via the Internet 128, ISP 126, network 122, and communication interface 118. For example, a downloaded application could provide code implementing the methods described herein. The received code can be executed by processor 104 upon receipt or stored in storage device 110 or other non-volatile storage for later execution. In this way, computer system 100 can acquire application code in carrier-based form.
[0181] Figure 20 An exemplary photolithography projection apparatus is schematically depicted. The apparatus includes:
[0182] - An irradiation system IL is used to modulate the radiation beam B. In this specific case, the irradiation system also includes a radiation source SO;
[0183] - A first object stage (e.g., a mask stage) MT, having a pattern forming apparatus holder for holding a pattern forming apparatus MA (e.g., a mask) and connected to a first positioner PM for accurately positioning the pattern forming apparatus relative to an item PS;
[0184] - The second object stage (substrate stage) WT has a substrate holder for holding the substrate W (e.g., a silicon wafer coated with resist) and is connected to a second positioner PW for accurately positioning the substrate relative to the item PS;
[0185] - A projection system PS (e.g., a refractive, reflective, or reflective-refracting optical system) is used to image the irradiated portion of the pattern forming apparatus MA onto a target portion C (e.g., comprising one or more dies) of the substrate W.
[0186] As described in this disclosure, the device is of the transmissive type (i.e., having a transmissive mask). However, in general, it may also be of the reflective type (e.g., employing a reflective mask). Alternatively, the device may employ another class of pattern forming apparatus as an alternative to using a classic mask; examples include programmable mirror arrays or LCD matrices.
[0187] A source SO (e.g., a mercury lamp or excimer laser) generates a radiation beam. This beam is fed directly or after passing through an adjustment device such as a beam expander into an irradiation system (irradiator) IL. The irradiator IL may include an adjuster AD configured to set the outer radial range or inner radial range (typically referred to as σ-outer and σ-inner, respectively) of the intensity distribution in the beam. Additionally, the irradiator IL typically includes various other components, such as a beam accumulator IN and a condenser CO. Thus, the beam B irradiated onto the pattern forming apparatus MA has the desired uniformity and intensity distribution in its cross-section.
[0188] about Figure 20 It should be noted that although the source SO can be inside the housing of the photolithography projection device (e.g., this is often the case when the source SO is a mercury lamp), it can also be located away from the photolithography projection device, and the radiation beam it produces can be directed into the device (e.g., by means of a suitable directional mirror BD); the latter case is often the case when the source SO is an excimer laser (e.g., based on KrF, ArF or F2 laser action).
[0189] Beam B is then truncated by the pattern forming apparatus MA held on the pattern forming apparatus stage MT. Having passed through the pattern forming apparatus MA, beam B passes through the projection system PS, which focuses beam B onto the target portion C of the substrate W. The substrate stage WT can be accurately moved, for example, to position the different target portions C within the path of beam B, by means of a second positioner PW (and an interferometer IF). Similarly, a first positioner PM can be used to accurately position the pattern forming apparatus MA relative to the path of beam B, for example, after it has been mechanically retrieved from the pattern forming apparatus library or during scanning. Typically, this will be achieved by means of a method not in... Figure 20 The text clearly describes the long-stroke module (coarse positioning) and short-stroke module (fine positioning) to realize the movement of the object stage MT and WT.
[0190] The patterning apparatus (e.g., mask) MA and the substrate W can be aligned using patterning apparatus alignment marks M1, M2 and substrate alignment marks P1, P2. Although the illustrated substrate alignment marks occupy dedicated target portions, they can be located in the space between multiple target portions (these are known as scribing alignment marks). Similarly, when more than one die is disposed on the patterning apparatus (e.g., mask) MA, the patterning apparatus alignment marks can be located between the dies. Small alignment marks can also be included within the die within the device features where it is desirable for small alignment marks to be as small as possible and where imaging or process conditions different from adjacent features are not required.
[0191] Figure 21 Another exemplary photolithography projection apparatus 1000 is schematically depicted. The photolithography projection apparatus 1000 includes:
[0192] -Source collector module SO;
[0193] - Irradiation system (irradiator) IL, configured to modulate radiation beam B (e.g., EUV radiation);
[0194] - A support structure (e.g., a mask stage) MT is configured to support a pattern forming apparatus (e.g., a mask or a mask plate) MA and is connected to a first positioner PM configured to accurately position the pattern forming apparatus.
[0195] A substrate stage (e.g., a wafer stage) WT is configured to hold a substrate (e.g., a wafer coated with resist) W and is connected to a second positioner PW, the second positioner PW being configured to accurately position the substrate; and
[0196] - A projection system (e.g., a reflective projection system) PS, configured to project a pattern given by a radiation beam B by a pattern forming apparatus MA onto a target portion C (e.g., including one or more dies) of a substrate W.
[0197] As described herein, the device 1000 is reflective (e.g., employing a reflective mask). It should be noted that since most materials are absorbent in the EUV wavelength range, the patterning apparatus can have a multilayer reflector comprising, for example, multiple stacks of molybdenum and silicon. In one example, the multilayer reflector has 40 pairs of molybdenum and silicon layers. X-ray lithography can be used to produce even smaller wavelengths. Because most materials are absorbent at both EUV and X-ray wavelengths, the patterned sheets of absorbing material on the topography or topography of the patterning apparatus (e.g., a TaN absorber on top of a multilayer reflector) define where features will be printed (positive resist) or not printed (negative resist).
[0198] ReferenceFigure 21 The irradiator IL receives an extreme ultraviolet (EUV) radiation beam emitted from the source collector module SO. Methods for generating EUV radiation include, but are not limited to, converting a material into a plasma state, the material having at least one element (e.g., xenon, lithium, or tin) with one or more emission lines in the EUV range. In one such method, commonly referred to as laser-generated plasma (“LPP”), plasma can be generated by irradiating a fuel, such as a droplet, beam, or cluster of a material having a line-emitting element, with a laser beam. The source collector module SO may be a laser comprising a laser beam for providing excitation to the fuel. Figure 21 (Not shown) is part of an EUV radiation system. The resulting plasma emits output radiation, such as EUV radiation, which is collected by a radiation collector disposed within a source collector module. The laser and the source collector module can be separate entities, for example, when a CO2 laser is used to provide a laser beam for fuel excitation.
[0199] In these cases, the laser is not considered part of the lithography apparatus, and the radiation beam is delivered from the laser to the source collector module by means of a beam delivery system including, for example, suitable directional mirrors or beam expanders. In other cases, the source may be part of the source collector module, for example, when the source is a discharge-generated plasma EUV generator (commonly referred to as a DPP source).
[0200] The irradiator IL may include an adjuster configured to adjust the angular intensity distribution of the radiation beam. Generally, at least the outer radial range or inner radial range of the intensity distribution in the pupil plane of the irradiator (typically referred to as σ-outer and σ-inner, respectively) can be adjusted. Furthermore, the irradiator IL may include various other components, such as faceted field mirror devices and pupil mirror devices. The irradiator can be used to adjust the radiation beam to have a desired uniformity and intensity distribution in its cross-section.
[0201] The radiation beam B is incident on the pattern forming apparatus (e.g., mask) MA held on a support structure (e.g., mask stage) MT, and a pattern is formed by the pattern forming apparatus. After being reflected by the pattern forming apparatus (e.g., mask) MA, the radiation beam B passes through a projection system PS, which focuses the radiation beam onto a target portion C of the substrate W. The substrate stage WT can be accurately moved by means of a second positioning device PW and a position sensor PS2 (e.g., an interferometer, a linear encoder, or a capacitive sensor), for example, to position different target portions C in the path of the radiation beam B. Similarly, the first positioning device PM and another position sensor PS1 can be used to accurately position the pattern forming apparatus (e.g., mask) MA relative to the path of the radiation beam B. The pattern forming apparatus (e.g., mask) MA and the substrate W can be aligned using pattern forming apparatus alignment marks M1, M2 and substrate alignment marks P1, P2.
[0202] The described device can be used in at least one of the following modes:
[0203] 1. In step mode, while keeping the support structure (e.g., mask stage) MT and substrate stage WT essentially stationary, the entire pattern imparting the radiation beam is projected onto the target portion C in one go (i.e., a single static exposure). The substrate stage WT is then moved along the X or Y direction, allowing different target portions C to be exposed.
[0204] 2. In the scanning mode, while the support structure (e.g., mask stage) MT and the substrate stage WT are scanned synchronously along a given direction (the so-called "scanning direction"), a pattern imparting the radiation beam is projected onto the target portion C (i.e., a single dynamic exposure). The velocity and direction of the substrate stage WT relative to the support structure (e.g., mask stage) MT can be determined by the (reduced) magnification and image inversion characteristics of the projection system PS.
[0205] 3. In another mode, the support structure (e.g., mask stage) MT used to hold the programmable patterning apparatus essentially stationary, and the pattern imparted by the radiation beam is projected onto the target portion C while the substrate stage WT is moved or scanned. In this mode, a pulsed radiation source is typically used, and the programmable patterning apparatus is updated as needed after each movement of the substrate stage WT or between consecutive radiation pulses during scanning. This mode of operation can be readily applied to maskless lithography utilizing programmable patterning apparatuses (such as programmable mirror arrays of the type mentioned above).
[0206] Furthermore, lithography equipment can fall into the category of having two or more stages (e.g., two or more substrate stages, two or more patterning apparatus stages, or a substrate stage and a stage without a substrate). In such a "multi-platform" apparatus, additional stages can be used in parallel, or one or more other stages can be used for exposure while preparatory steps are performed on one or more stages.
[0207] Figure 22 The apparatus 1000 is shown in more detail, including a source collector module SO, an irradiation system IL, and a projection system PS. The source collector module SO is constructed and arranged to maintain a vacuum environment within its enclosure structure 220. A plasma 210 emitting EUV radiation can be formed by a discharge-generated plasma source. EUV radiation can be generated by a gas or vapor, such as xenon, lithium vapor, or tin vapor, which produces an extremely hot plasma 210 to emit radiation in the EUV range of the electromagnetic spectrum. The extremely hot plasma 210 is generated, for example, by a discharge that creates at least partially ionized plasma. For efficient radiation generation, Xe, Li, Sn vapor, or any other suitable gas or vapor, for example, at a partial pressure of 10 Pa, may be required. In an embodiment, an excited tin (Sn) plasma is provided to generate EUV radiation.
[0208] Radiation emitted by the thermal plasma 210 is transferred from the source chamber 211 to the collector chamber 212 via an optional gas barrier or contaminant trap 230 (also referred to in some cases as a contaminant barrier or foil trap) positioned in or behind an opening in the source chamber 211. The contaminant trap 230 may include a channel structure. The contaminant trap 230 may also include a gas barrier, or a combination of a gas barrier and a channel structure. As is known in the art, the contaminant trap or contaminant barrier 230 further illustrated herein includes at least a channel structure.
[0209] Collector chamber 211 may include a radiation collector CO, which may be a so-called grazing incidence collector. The radiation collector CO has an upstream radiation collector side 251 and a downstream radiation collector side 252. Radiation passing through the collector CO may be reflected by a grating spectral filter 240 and then focused along the optical axis 'O' indicated by the dotted line at a virtual source point IF. The virtual source point IF is commonly referred to as the intermediate focus, and the source collector module is arranged such that the intermediate focus IF is located at or near an opening 221 in the enclosure structure 220. The virtual source point IF is an image of the plasma 210 emitting radiation.
[0210] Subsequently, radiation passes through an illumination system IL, which may include a faceted field mirror assembly 22 and a faceted pupil mirror assembly 24, arranged to provide a radiation beam 21 with a desired angular distribution at the patterning apparatus MA and a radiation intensity with desired uniformity at the patterning apparatus MA. After the radiation beam 21 is reflected at the patterning apparatus MA held by the support structure MT, a patterned beam 26 is formed, and the patterned beam 26 is imaged onto the substrate W held by the substrate stage WT via a projection system PS through reflective elements 28 and 30.
[0211] The illumination optics unit IL and projection system PS can typically contain more elements than are shown. Depending on the type of lithography equipment, a grating spectral filter 240 may optionally be included. Furthermore, more mirrors than are shown in the figure may be present, for example, in the projection system PS, in addition to the mirrors shown in the figure. Figure 22 In addition to the elements shown, there are 1 to 6 additional reflective elements.
[0212] like Figure 22 The collector optics CO shown is depicted as a nested collector with grazing incidence reflectors 253, 254, and 255, and is only an example of a collector (or collector mirror). The grazing incidence reflectors 253, 254, and 255 are arranged to be axially symmetric about the optical axis O, and this type of collector optics CO is intended to be used in combination with a discharge-generated plasma source, often referred to as a DPP source. Alternatively, the source-collector module SO can be part of an LPP radiation system.
[0213] The term “projection system” as used herein should be interpreted broadly to include any type of projection system, including refractive optical systems, reflective optical systems, reflective-refractive optical systems, magnetic optical systems, electromagnetic optical systems, and electrostatic optical systems or any combination thereof, for example, suitable for the exposure radiation used or for other factors such as the use of immersion liquids or vacuum.
[0214] This embodiment can also be described using the following aspects:
[0215] 1. A method comprising:
[0216] Obtain a training dataset, the training dataset including optical proximity corrections corresponding to spatially shifted versions of the training design pattern; and
[0217] A machine learning model is trained by a hardware computer system using data about a spatially shifted version of the training design pattern and data based on optical proximity corrections for the spatially shifted version of the training design pattern, the machine learning model being configured to predict optical proximity corrections for the design pattern.
[0218] 2. The method according to aspect 1, wherein the spatial shift is smaller than the size of the pixel grid of the image of the training design pattern.
[0219] 3. The method according to aspect 1 or aspect 2 further includes:
[0220] Obtain a training data set including multiple spatially shifted versions of the training design pattern in different ways and corresponding optical proximity corrections for the spatially shifted versions of the training design pattern in different ways; and
[0221] The machine learning model is trained using data on multiple spatially shifted versions of the training design pattern and corresponding optical proximity corrections of these spatially shifted versions.
[0222] 4. The method according to aspect 3 further includes:
[0223] From a plurality of spatially shifted versions of optical proximity correction, at least one of which exhibits an optical proximity correction higher than the average process window compared to one or more other remaining versions of the optical proximity correction within the training dataset; and
[0224] The machine learning model is trained using data based on one or more optical proximity corrections selected from the optical proximity corrections.
[0225] 5. The method according to aspect 4, comprising selecting from a plurality of optical proximity corrections that are spatially shifted in different ways an optical proximity correction exhibits an optimal process window.
[0226] 6. The method according to aspect 4 or aspect 5 further includes:
[0227] Perform one or more rotation operations, flip operations, or both on the selected optical proximity correction to obtain one or more reoriented versions of the selected optical proximity correction; and
[0228] The machine learning model is trained using data based on one or more reoriented versions of the selected optical proximity correction and one or more corresponding reoriented training design patterns.
[0229] 7. The method according to any one of aspects 4-6, further comprising:
[0230] Perform one or more spatial shifts on the selected optical proximity correction to obtain one or more spatially shifted versions of the selected optical proximity correction in different ways; and
[0231] The machine learning model is trained using data based on one or more spatially shifted versions of the selected optical proximity correction and one or more spatially shifted versions of the corresponding training design pattern.
[0232] 8. The method according to any one of aspects 1-7, wherein the acquisition and training are repeated for multiple different design patterns.
[0233] 9. The method according to any one of aspects 1-8, wherein the optical proximity correction includes placing auxiliary features around the main features of a given design pattern and / or modifying the main features of the given design pattern.
[0234] 10. The method according to any one of aspects 1-9, wherein the optical proximity correction is in the form of an image, and the training is based on the image or pixel data of the image.
[0235] 11. The method according to aspect 10, wherein the image is
[0236] A grayscale image reproduced from the target design pattern image, and / or
[0237] Sub-resolution auxiliary feature guidance map (SGM), and / or
[0238] The signal image obtained by convolving the image of the target design pattern with an optical core, and / or
[0239] The continuous transmission mask of the output image of the model-based mask optimization processing of the target design pattern.
[0240] 12. A method comprising:
[0241] Obtain one or more spatially shifted versions of a design pattern and a corresponding optical proximity-corrected image for each of the one or more shifted design patterns;
[0242] The hardware computer system selects one or more optical proximity-corrected images of a design pattern that have one or more shifts that meet or exceed a threshold process window index; and
[0243] The machine learning model is trained by the hardware computer system using training data that includes data about one or more spatially shifted versions of the design pattern and data about one or more selected optical proximity-corrected images.
[0244] 13. The method according to aspect 12, further comprising:
[0245] Reorient one or more selected optical proximity corrected images to produce one or more reoriented optical proximity corrected images;
[0246] Spatially shift one or more optically proximity-corrected images that have been reoriented to produce multiple optically proximity-corrected images that have been shifted in different ways;
[0247] Obtain multiple shifted versions of a design pattern corresponding to one or more optical proximity-corrected images that have been reoriented and shifted in different ways; and
[0248] The machine learning model is trained using training data that includes data about one or more optical proximity-corrected images that have been reoriented in different ways and data about multiple versions of the design pattern that have been reoriented in different ways.
[0249] 14. The method according to aspect 13, wherein the reorientation includes one or more of the following: flipping operation, rotation operation, and / or mirroring operation, wherein the type of operation is based on the irradiation shape of the lithography apparatus.
[0250] 15. The method according to any one of aspects 12-14, wherein the optical proximity correction image is a continuous transmission mask image.
[0251] 16. A method comprising:
[0252] Obtain a weighting function or data to assign different weights to the optical proximity correction zones of the design pattern compared to other zones; and
[0253] The machine learning model is trained by a hardware computer system by evaluating the optical proximity correction of the design pattern predicted by the machine learning model based on a reference optical proximity correction of the design pattern with respect to weighted data. The machine learning model is configured to predict the optical proximity correction for the design pattern.
[0254] 17. The method according to aspect 16, wherein the weighting function or data is applied to the predicted optical proximity correction, the reference optical proximity correction, and / or the difference between the predicted optical proximity correction and the reference optical proximity correction.
[0255] 18. The method according to aspect 16 or aspect 17, wherein the weighting function or data assigns higher weights to areas adjacent to the main features of the design pattern than to areas outside the areas.
[0256] 19. The method according to aspect 18, wherein the region covers optical proximity correction for the principal feature, but excludes additional optical proximity correction for the principal feature.
[0257] 20. The method according to any one of aspects 16-19, wherein the weighting function or data assigns a higher weight to the edge of the optical proximity correction than to the interior of the optical proximity correction and / or another portion of the design pattern.
[0258] 21. The method according to any one of aspects 16-20, wherein the weighting function or data comprises a weighting function configured to cause the weights to decay as a weighting function based on the distance from the principal features of the design pattern.
[0259] 22. A method comprising:
[0260] Obtain a reference optical proximity correction for the design pattern;
[0261] The hardware computer system uses a machine learning model to generate a predicted optical proximity correction for the design pattern;
[0262] The hardware computer system assigns relatively high weights to a portion of the predicted optical proximity correction and / or the reference optical proximity correction; and
[0263] The machine learning model is trained by the hardware computer system using an objective function that evaluates the weighted predicted optical proximity correction and / or the baseline optical proximity correction.
[0264] 23. The method according to aspect 22, wherein a relatively high weight is assigned at the edge of the optical proximity correction.
[0265] 24. The method according to aspect 22 or aspect 23, wherein a weight different from that of a second optical proximity correction is assigned to a first optical proximity correction of the principal feature of the design pattern.
[0266] 25. A method comprising:
[0267] A hardware computer system applies a binarization function to image data of the design pattern, which is predicted by a machine learning model for optical proximity correction and / or a reference optical proximity correction of the design pattern, to produce their respective binarized versions; and
[0268] A machine learning model is trained by a hardware computer system to evaluate the predicted optical proximity correction relative to the reference optical proximity correction based on a binarized version of the predicted optical proximity correction and / or the reference optical proximity correction, the machine learning model being configured to predict the optical proximity correction for the design pattern.
[0269] 26. The method according to aspect 25, wherein the binarization function is an sigmoid function.
[0270] 27. A method comprising:
[0271] Obtain a reference optical proximity-corrected image for the design pattern;
[0272] A hardware computer system uses a machine learning model to generate a predicted optical proximity correction for the design pattern.
[0273] The hardware computer system uses a binarization function to transform the predicted optical proximity corrected image and the reference optical proximity corrected image into their respective binary images.
[0274] The hardware computer system evaluates the binary image data of the reference optical proximity corrected image relative to the binary image data of the predicted optical proximity corrected image; and
[0275] The hardware computer system adjusts the parameters of the machine learning model based on the evaluation.
[0276] 28. The method according to aspect 27, wherein the binarization function is an sigmoid function.
[0277] 29. A method comprising:
[0278] The hardware computer system processes image data of the design pattern, predicted by a machine learning model, with optical proximity correction and / or a reference optical proximity correction of the design pattern, to identify edge regions with optical proximity correction; and
[0279] A machine learning model is trained by a hardware computer system to evaluate the predicted optical proximity correction relative to the baseline optical proximity correction based on data from the identified edge regions. The machine learning model is configured to predict the optical proximity correction for the design pattern.
[0280] 30. The method according to aspect 29, wherein the identified edge portion is the identified edge pixel.
[0281] 31. The method according to aspect 29 or aspect 20, wherein the identified edge portion is a portion on the contour extracted for the optical proximity correction.
[0282] 32. According to the method of aspect 31, the data from the identified edge regions on the contour is obtained by interpolating data from the pixel grid of the optically proximity-corrected image.
[0283] 33. The method according to any one of aspects 29-32 further includes applying a weight to the identified edge portion of the optical proximity correction that is different from other portions of the optical proximity correction.
[0284] 34. The method according to any one of aspects 29-33, wherein evaluating the predicted optical proximity correction relative to the reference optical proximity correction comprises: determining an edge placement error value between the identified edge portions of the predicted optical proximity correction and the reference optical proximity correction; and training the machine learning model based on the edge placement error value.
[0285] 35. A method comprising:
[0286] Obtain a reference optical proximity-corrected image for the design pattern;
[0287] A hardware computer system uses a machine learning model to generate a predicted optical proximity correction for the design pattern.
[0288] The hardware computer system identifies the edge regions of features within the predicted optical proximity corrected image and the reference optical proximity corrected image;
[0289] The hardware computer system evaluates the data at the identified edge regions of the reference optical proximity-corrected image relative to the data at the identified edge regions of the predicted optical proximity-corrected image; and
[0290] The hardware computer system adjusts the parameters of the machine learning model based on the evaluation.
[0291] 36. The method according to aspect 35, wherein the identification includes tracing the contours of features of the reference optical proximity-corrected image and the predicted optical proximity-corrected image to the edges.
[0292] 37. A method comprising:
[0293] Obtain a spatially shifted version of the input design pattern; and
[0294] A machine learning model is trained by a hardware computer system using an objective function with a penalty term. The machine learning model is configured to predict optical proximity correction for a design pattern. The penalty term involves a comparison between a value corresponding to a prediction made by the machine learning model relative to an input design pattern and a value corresponding to an inverse-shifted version of a prediction made by the machine learning model relative to a shifted input design pattern, wherein the inverse shift is a spatial shift that is the opposite of the spatially shifted version used to create the input design pattern.
[0295] 38. The method according to aspect 37, wherein the comparison includes a distance function.
[0296] 39. The method according to any one of aspects 37-38, wherein the spatial displacement involves operations including flipping and / or rotation.
[0297] 40. A method comprising:
[0298] Input the design pattern into a machine learning model trained according to any one of aspects 1-39;
[0299] The prediction of optical proximity correction for the design pattern is calculated by a hardware computer system and through trained machine learning.
[0300] 41. The method according to any one of aspects 1-40, wherein the machine learning model comprises a neural network consisting of instances of one or more basic blocks, wherein the one or more basic blocks comprise convolutional layers, residual blocks, and / or start blocks.
[0301] 42. The method according to aspect 41, wherein the starting block consists of a maximum convergent layer with a stride of 1 and two or more convolutional layers with different filter sizes.
[0302] 43. The method according to aspect 41 or aspect 42, wherein the residual block has two convolutional layers and an additional path for directly connecting the input and output of the residual block.
[0303] 44. The method according to any one of aspects 41-43, wherein the neural network comprises only one or more instances selected from: the convolutional layer, the residual block, and / or the starting block.
[0304] 45. The method according to any one of aspects 41-44, wherein the neural network substantially involves only convolution and convergence operations.
[0305] 46. A computer program product comprising a computer-readable medium having instructions recorded thereon, the instructions, when executed by a computer, implementing the method of any one of aspects 1-45.
[0306] The concepts disclosed herein are applicable to any device manufacturing process involving lithography equipment and are particularly useful for emerging imaging techniques capable of producing wavelengths with increasingly smaller sizes. Emerging techniques already in use include deep ultraviolet (DUV) lithography, which can produce wavelengths of 193 nm using ArF lasers and even 157 nm using fluorine lasers. Furthermore, EUV lithography can produce wavelengths in the range of 5 to 20 nm.
[0307] While the concepts disclosed herein can be used for devices fabricated on substrates such as silicon wafers, it should be understood that the disclosed concepts can be used with any type of lithography imaging system, such as a lithography imaging system for imaging on substrates other than silicon wafers.
[0308] The patterning apparatus mentioned above includes or is capable of forming design layouts. These layouts can be generated using computer-aided design (CAD) programs. This process is often referred to as electronic design automation (EDA). Most CAD programs follow a predetermined set of design rules to produce functional design layouts / patterning apparatuses. These rules are set through processing and design constraints. For example, design rules define the space tolerances between circuit devices (such as gates, capacitors, etc.) or interconnects to ensure that circuit devices or lines do not interact with each other in undesirable ways. Design rule constraints are typically referred to as “critical dimensions” (CD). The critical dimension of a circuit can be defined as the minimum width of a line or via, or the minimum space between two lines or two vias. Therefore, CD determines the overall size and density of the designed circuit. Of course, one of the goals in integrated circuit manufacturing is to faithfully reproduce the original circuit design (via the patterning apparatus) on a substrate.
[0309] As used herein, the terms "mask" or "patterning apparatus" can be broadly interpreted to refer to a general patterning apparatus that can be used to impart a patterned cross-section to an incident radiation beam, the patterned cross-section corresponding to a pattern to be generated in a target portion of a substrate; the term "optical valve" can also be used in this context. Examples of other such patterning apparatuses besides classic masks (transmissive or reflective; binary, phase-shifting, hybrid, etc.) include:
[0310] Programmable mirror arrays. An example of such a device is a matrix-addressable surface with a viscoelastic control layer and a reflective surface. The basic principle underlying this device is that, for example, the addressed regions of the reflective surface reflect incident radiation as diffracted radiation, while the unaddressed regions reflect incident radiation as non-diffracted radiation. With the use of appropriate filters, the non-diffracted radiation can be filtered out from the reflected beam, leaving only the diffracted radiation; thus, the beam becomes patterned according to the addressing pattern of the matrix-addressable surface. The desired matrix addressing can be performed using appropriate electronics.
[0311] Programmable LCD array.
[0312] Although this document has specifically referenced the manufacture of ICs, it should be clearly understood that the description herein has many other possible applications. For example, it can be used in the manufacture of integrated optical systems, the guiding and detection of patterns in magnetic domain memory, liquid crystal display panels, thin-film magnetic heads, etc. Those skilled in the art will understand that in the context of such alternative applications, any use of the terms “mask,” “wafer,” or “die” herein can be considered interchangeable with the more general terms “mask,” “substrate,” or “target portion,” respectively.
[0313] Therefore, as mentioned, microlithography is a crucial step in manufacturing devices such as integrated circuits (ICs), where patterns formed on a substrate define the functional elements of the IC, such as microprocessors and memory chips. Similar lithography techniques are also used to form flat panel displays, microelectromechanical systems (MEMS), and other devices.
[0314] In this document, the terms “radiation” and “beam” are used to cover all types of electromagnetic radiation, including ultraviolet radiation (e.g., with wavelengths of 365 nm, 248 nm, 193 nm, 157 nm, or 126 nm) and extreme ultraviolet radiation (EUV, e.g., with wavelengths in the range of 5–20 nm).
[0315] As used herein, the terms “optimize” and “optimize” refer to or mean adjusting patterning process equipment, one or more steps of the patterning process, etc., to give the patterned results and / or processes more desirable characteristics, such as higher accuracy of transfer of the design layout on the substrate, a larger process window, etc. Therefore, as used herein, the terms “optimize” and “optimize” refer to or mean the process of identifying one or more values for one or more parameters that provide an improvement in at least one relevant metric compared to an initial set of one or more values for these parameters, such as local optimization. “Optimal” and other related terms should be interpreted accordingly. In embodiments, optimization steps may be applied iteratively to provide a further improvement in one or more metrics.
[0316] In the block diagrams, although the illustrated portions are depicted as discrete functional blocks, the embodiments are not limited to systems where the functionality described herein is organized as shown. The functionality provided by each of the components may be provided by software or hardware modules organized in a manner different from that depicted herein, such as being mixed, combined, copied, disassembled, distributed (e.g., within a data center or by region), or the software or hardware may be organized differently. The functionality described herein may be provided by one or more processors of one or more computers executing code stored on a tangible, non-transitory, machine-readable medium. In some cases, a third-party content delivery network may be a host transmitting some or all of the information over the network, in which case the information (e.g., content) is considered to be supplied or otherwise provided to a certain extent, and this information can be provided by sending instructions to retrieve it from the content delivery network.
[0317] Unless otherwise specifically stated, it is understood from this discussion that throughout the specification, discussions using terms such as “processing,” “computing,” “calculating,” and “determining” refer to the actions or processes of a particular device (such as a special purpose computer or similar special purpose electronic processing / computing device).
[0318] Readers should understand that this application describes several inventions. These inventions have not been separated into multiple independent patent applications, but rather grouped into a single document because their related subject matter is economically applicable in practice. However, the dissimilar advantages and aspects of these inventions should not be combined. In some cases, while embodiments address all the shortcomings mentioned herein, it should be understood that the inventions are independently useful, and some embodiments address only a subset of these problems or provide other unmentioned benefits that will be apparent to those skilled in the art upon review of this disclosure. Due to cost constraints, some inventions disclosed herein may not be claimed at present, and may be claimed in later applications (such as continuations or by amending the claims of this application). Similarly, due to space constraints, neither the "Abstract" nor the "Summary" section herein should be construed as containing a comprehensive enumeration of all such inventions or all aspects thereof.
[0319] It should be understood that the specification and drawings are not intended to limit this disclosure to the specific forms disclosed, but rather, the invention covers all modifications, equivalents and alternatives that fall within the spirit and scope of the invention as defined by the appended claims.
[0320] In view of this specification, those skilled in the art will understand modifications and alternative embodiments of various aspects of the invention. Therefore, this specification and drawings are to be interpreted only as illustrative and for the purpose of teaching those skilled in the art the general manner of carrying out the invention. It should be understood that the forms of the invention shown and described herein are to be considered as examples of embodiments. Elements and materials may be used in place of those illustrated and described herein, components and processes may be reversed or omitted, and certain features may be used independently, all of which will be clear to those skilled in the art upon obtaining the benefits of this specification. Changes may be made to the elements described herein without departing from the spirit and scope of the invention as set forth in the appended claims. The headings used herein are for organizational purposes only and are not intended to limit the scope of the specification.
[0321] As used throughout this application, the words “may” or “possibly” are used in a permissible sense (i.e., meaning potentially possible) rather than in a mandatory sense (i.e., meaning must). The words “include,” “including,” and “includes,” etc., mean including but not limited to. As used throughout this application, the singular forms “a,” “an,” and “the” include plural representations unless otherwise expressly stated. Thus, for example, references to “an element” and “aelement” include combinations of two or more elements, although other terms and phrases such as “one or more” are used for one or more elements. The term “or,” unless otherwise stated, is non-exclusive, i.e., encompassing both “and” and “or.” Terms describing conditional relationships, such as “in response to X, Y,” “when X, Y,” “if X, then Y,” “when X, Y,” etc., include causal relationships, where the premise is a necessary causal condition, the premise is a sufficient causal condition, or the premise is a contributing causal condition to the result. For example, “state X occurs when condition Y is acquired” is superior to “X occurs only when Y” and “X occurs when Y and Z.” Such conditional relationships are not limited to results obtained immediately after the premises are acquired, as some results may be delayed, and in conditional statements, premises are associated with their results, for example, premises are associated with the probability of the result occurring. A statement in which multiple attributes or functions are mapped to multiple objects (e.g., one or more processors performing steps A, B, C, and D) includes all such attributes or functions being mapped to all such objects and subsets of such attributes or functions being mapped to subsets of such attributes or functions (e.g., all processors each performing steps A and D, and processor 1 performing step A, processor 2 performing a portion of steps B and C, and processor 3 performing a portion of step C and step D), unless otherwise stated. Furthermore, unless otherwise stated, a statement that a value or action is “based on” another condition or value covers both instances where said condition or value is a unique factor and instances where said condition or value is one of multiple factors. Unless otherwise stated, a statement that “each” instance of a certain set has a certain attribute should not be read as excluding the possibility that some other identical or similar components in a larger set do not have that attribute; that is, each does not necessarily mean every or any one.
[0322] In the above description, any process, description, or block in the flowchart should be understood as representing a module, segment, or portion of code, which includes one or more executable instructions for implementing a specific logical function or step in the process, and alternative implementations are included within the scope of exemplary embodiments of the present invention, wherein functionality may depend on the functionality involved being performed in a manner not shown or discussed, including substantially simultaneously or in reverse order, as will be understood by those skilled in the art.
[0323] While certain embodiments have been described, these embodiments are presented by way of example only and are not intended to limit the scope of this disclosure. In fact, the novel methods, apparatuses, and systems described herein can be implemented in a variety of other forms; furthermore, various omissions, substitutions, and changes can be made to the forms of the methods, apparatuses, and systems described herein without departing from the spirit of this disclosure. The appended claims and their equivalents are intended to cover such forms or modifications that fall within the scope and spirit of this disclosure. For example, this technology can be configured for cloud computing, thereby enabling the collaborative sharing and processing of a single function across multiple devices via a network.
Claims
1. A method comprising: obtaining a weighting function or data to assign different weights to regions of a design pattern's optical proximity correction than to other regions thereof; and training, by a hardware computer system, a machine learning model configured to predict optical proximity correction for a design pattern, by evaluating a machine learning model's predicted optical proximity correction for a design pattern against a baseline optical proximity correction for the design pattern based on the weighting data.
2. The method of claim 1, wherein, applying the weighting function or data to the predicted optical proximity correction, the baseline optical proximity correction, and / or a difference between the predicted optical proximity correction and the baseline optical proximity correction.
3. The method of claim 1 or claim 2, wherein, The weighting function or data assigns a higher weight to regions adjacent to a main feature of the design pattern than to regions outside of the regions.
4. The method of claim 3, wherein, The regions encompass optical proximity correction for the main feature but exclude additional optical proximity correction for the main feature.
5. The method of claim 1, wherein, The weighting function or data assigns a higher weight to edges of the optical proximity correction than to an interior of the optical proximity correction and / or another portion of the design pattern.
6. The method of claim 1, wherein, The weighting function or data comprises a weighting function configured to cause the weights to decay as a function of distance from a main feature of the design pattern.
7. The method of claim 1, wherein, The optical proximity correction is an aerial image.
8. A method comprising: inputting a design pattern to a machine learning model trained according to the method of any of claims 1-7; computing, by a hardware computer system and by the trained machine learning, a prediction of optical proximity correction for the design pattern.
9. The method of any of claims 1-8, wherein the machine learning model comprises a neural network composed of instances of one or more building blocks, wherein the one or more building blocks comprise convolutional layers, residual blocks, and / or starting blocks.
10. The method of claim 9, wherein, The starting block is composed of a maximum one pooling layer with a stride of 1 and two or more convolutional layers with different filter sizes.
11. The method of claim 9, wherein, The residual block has two convolutional layers and an extra path to directly connect an input and an output of the residual block.
12. The method of claim 9, wherein, The neural network is composed of instances of only one or more selected from: the convolutional layers, the residual blocks, and / or the starting blocks.
13. The method of claim 9, wherein, The neural network involves substantially only convolutional operations and pooling operations.
14. A computer program product comprising a computer readable medium having instructions recorded thereon, the instructions when executed by a computer implementing the method of any of claims 1-13.
Citation Information
Patent Citations
System and method for creating a focus-exposure model of a lithography process
US20070031745A1
Method for identifying and using process window signature patterns for lithography process control
US20070050749A1
System and method for model-based sub-resolution assist feature generation
US20080301620A1
Multivariable solver for optical proximity correction
US20080309897A1
Method and system for lithography process-window-maximixing optical proximity correction
US20100162197A1