Training method of mask pattern correction model and mask pattern correction method

By using the level set function and deep convolutional neural network training model to directly predict the mask pattern after OPC, the problem of large computational complexity in the existing technology is solved and efficient optical proximity effect correction is achieved.

CN114332057BActive Publication Date: 2025-09-23SHANGHAI INTEGRATED CIRCUIT EQUIPMENT & MATERIALS INDUSTRY INNOVATION CENTER CO LTD +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111678544.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-12-31
Publication Date
2025-09-23
Estimated Expiration
2041-12-31

AI Technical Summary

Technical Problem

Existing machine learning OPC methods require a large number of feature vectors for information encoding, resulting in low efficiency of optical proximity effect correction.

Method used

The level set function is used to represent the image of the mask pattern on a discrete grid. The deep convolutional neural network is trained to directly predict the mask pattern after OPC, reducing the amount of encoding calculations for the neighboring environment.

Benefits of technology

The efficiency of optical proximity effect correction is improved, the amount of calculation is reduced, and the speed and accuracy of mask pattern correction are improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114332057B_ABST
    Figure CN114332057B_ABST
Patent Text Reader

Abstract

The present application provides a training method for a mask pattern correction model and a mask pattern correction method. The method includes: obtaining a pre-OPC mask pattern and a post-OPC mask pattern; calculating a first level set function and a second level set function based on the pre-OPC mask pattern and the post-OPC mask pattern, respectively; and training the first level set function as the input of a neural network model and the second level set function as the output of the neural network model to obtain a mask pattern correction model. The method provided in the present application utilizes the first level set function and the second level set function to represent the images of the pre-OPC mask pattern and the post-OPC mask pattern on a discrete grid, eliminating the need to use a large number of feature vectors to encode the mask pattern's proximity, thereby improving the efficiency of OPC.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of semiconductors, and in particular to a training method for a mask pattern correction model and a mask pattern correction method. Background Art

[0002] Because the lithography machine is a low-pass filter from an information transmission perspective, the high-spatial frequency components of the mask pattern cannot pass through the lithography machine's projection optics to form the image in the photoresist on the wafer. This loss of high-spatial frequency components of the mask pattern inevitably leads to pattern distortion in the optical image in the photoresist on the wafer. To reduce this distortion, it is necessary to pre-correct the mask pattern using an iterative method using a lithography process model. This process of correcting the mask pattern is called optical proximity correction (OPC).

[0003] At present, the existing machine learning OPC method is based on a feedforward neural network. The key is to divide the OPC mask pattern into multiple small segments, encode the environmental information of the multiple small segments into feature vectors, and use the feedforward neural network to predict the OPC correction amount of a small segment of the mask pattern, thereby obtaining the mask pattern after OPC.

[0004] In existing machine learning OPC methods, in order to accurately and completely describe the neighboring environment of multiple small segments, a feature vector of about 70-80 elements is required for information encoding, which requires a large amount of calculation and leads to low OPC efficiency. Summary of the Invention

[0005] The present application provides a training method for a mask pattern correction model and a mask pattern correction method, which are used to solve the problem of low efficiency in optical proximity effect correction of mask patterns.

[0006] In a first aspect, the present application provides a method for training a mask pattern correction model, comprising:

[0007] Acquire a mask pattern before optical proximity correction (OPC) and a mask pattern after OPC;

[0008] Based on the mask pattern before OPC and the mask pattern after OPC, respectively, a first level set function and a second level set function are calculated, wherein the first level set function represents an image of the mask pattern before OPC on a discrete grid, and the second level set function represents an image of the mask pattern after OPC on a discrete grid;

[0009] The first level set function is used as the input of the neural network model, and the second level set function is used as the output of the neural network model for training to obtain a mask pattern correction model.

[0010] In a second aspect, the present application provides a mask pattern correction method, comprising:

[0011] Acquiring a mask pattern to be subjected to optical proximity correction (OPC);

[0012] According to the mask pattern before OPC, a first level set function is calculated, where the first level set function represents an image of the mask pattern before OPC on a discrete grid;

[0013] Inputting the first level set function into the mask pattern correction model and outputting a second level set function, wherein the second level set function represents an image of the mask pattern after OPC on a discrete grid;

[0014] The mask pattern after OPC is generated according to the second level set function.

[0015] In a third aspect, the present application provides a training device for a mask pattern correction model, comprising:

[0016] An acquisition module, configured to acquire a mask pattern before optical proximity correction (OPC) and a mask pattern after OPC;

[0017] a calculation module, configured to calculate a first level set function and a second level set function based on the mask pattern before OPC and the mask pattern after OPC, respectively, wherein the first level set function represents an image of the mask pattern before OPC on a discrete grid, and the second level set function represents an image of the mask pattern after OPC on a discrete grid;

[0018] Training module: used to train the first level set function as the input of the neural network model and the second level set function as the output of the neural network model to obtain a mask pattern correction model.

[0019] In a fourth aspect, the present application provides a mask pattern correction device, comprising:

[0020] Acquisition module: used to acquire the mask pattern to be subjected to optical proximity correction (OPC);

[0021] A calculation module is used to calculate a first level set function based on the mask pattern before OPC, where the first level set function represents an image of the mask pattern to be OPC on a discrete grid;

[0022] Input module: used to input the first level set function into the mask pattern correction model

[0023] Output module: used to output a second level set function, which represents the image of the mask pattern after OPC on the discrete grid;

[0024] The generating module is used to generate a mask pattern after OPC according to the second level set function.

[0025] In a fifth aspect, the present application provides a mask pattern correction device, comprising: a processor, a memory, wherein code is stored in the memory, and the processor runs the code stored in the memory to execute the mask pattern correction method as described in any one of the second aspects.

[0026] In a sixth aspect, the present application provides a computer-readable storage medium, in which computer-executable instructions are stored. When the computer-executable instructions are executed by a processor, they are used to implement the mask pattern correction method as described in any one of the second aspects.

[0027] In a seventh aspect, the present application provides a computer program product, comprising a computer program, which, when executed by a processor, implements the mask pattern correction method of any one of the second aspects.

[0028] The training method of the mask pattern correction model provided in the present application obtains the mask pattern before optical proximity effect correction (OPC) and the mask pattern after OPC, calculates the first level set function based on the mask pattern before OPC, and calculates the second level set function of the mask pattern after OPC based on the mask pattern after OPC. The first level set function is used as the input of the neural network model, and the second level set function is used as the output of the neural network model for training to obtain the mask pattern correction model. The mask pattern correction model can predict the second level set function after OPC, thereby obtaining the mask pattern after OPC. Since the method provided in the present application uses the first level set function to characterize the image of the mask pattern before OPC on a discrete grid, and the second level set function represents the image of the mask pattern after OPC on a discrete grid, there is no need to use a large number of feature vectors to encode the adjacent environment of the mask pattern, which reduces the amount of calculation and thus improves the efficiency of OPC. BRIEF DESCRIPTION OF THE DRAWINGS

[0029] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and, together with the description, serve to explain the principles of the present application.

[0030] Figure 1 Schematic diagram of optical proximity effect correction for the mask pattern provided in this application;

[0031] Figure 2 A schematic diagram of an application scenario of a mask pattern correction model provided in an embodiment of the present application;

[0032] Figure 3 A flowchart of a method for training a mask pattern correction model provided in an embodiment of the present application;

[0033] Figure 4 A flow chart of a method for calculating a level set function provided in an embodiment of the present application;

[0034] Figure 5 A flowchart of a mask pattern correction method provided in an embodiment of the present application;

[0035] Figure 6 A schematic diagram of a curved mask pattern provided in an embodiment of the present application;

[0036] Figure 7 A schematic diagram comparing the mask pattern after OPC obtained by using a mask pattern correction model and an existing OPC algorithm provided in an embodiment of the present application;

[0037] Figure 8 An error histogram of a training data set and the output of a mask pattern correction model provided in an embodiment of the present application;

[0038] Figure 9 An error histogram of a verification data set and the output result of the mask pattern correction model provided in an embodiment of the present application;

[0039] Figure 10 A schematic diagram of a training device for a mask pattern correction model provided in an embodiment of the present application Figure 1 one

[0040] Figure 11 A schematic diagram of a mask pattern correction device provided in an embodiment of the present application Figure 1 ;

[0041] Figure 12 A schematic diagram of a training device for a mask pattern correction model provided in an embodiment of the present application Figure 2 ;

[0042] Figure 13 A schematic diagram of a mask pattern correction device provided in an embodiment of the present application Figure 2 .

[0043] The above drawings illustrate specific embodiments of the present application, which will be described in more detail below. These drawings and the textual description are not intended to limit the scope of the present application in any way, but rather to illustrate the concepts of the present application to those skilled in the art by reference to specific embodiments. DETAILED DESCRIPTION

[0044] Exemplary embodiments will be described in detail herein, with examples illustrated in the accompanying drawings. In the following description, when referring to the drawings, identical numerals in different figures represent identical or similar elements, unless otherwise indicated. The embodiments described in the following exemplary embodiments are not intended to represent all embodiments consistent with the present application. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the present application, as detailed in the appended claims.

[0045] First, let’s explain the terms involved in this application:

[0046] Optical Proximity Correction (OPC): This refers to the distortion of the energy and phase distribution of the image intensity spectrum relative to the ideal image spectrum due to nonlinear spatial filtering in the partially coherent imaging process, which ultimately greatly reduces the imaging quality, thus inducing the optical proximity effect.

[0047] Signed distance function: refers to a function that determines the distance from a point to the boundary of a finite area in space and defines the sign of the distance at the same time.

[0048] In the photolithography process, the loss of high spatial frequency components of the photolithography target pattern will cause the optical pattern in the photoresist to be distorted, so the photolithography target pattern needs to be corrected. In addition to correcting the photolithography target pattern, the OPC process also adds sub-resolution auxiliary patterns near the photolithography target pattern to enhance the photolithography process window and perform optical proximity effect correction on the mask pattern. Figure 1 shown.

[0049] As the semiconductor industry evolves from one technology generation to the next, the number of geometric patterns per unit area increases dramatically, and the number of OPC iterations also increases significantly, resulting in a rapid increase in the computing resources and time required for OPC. To overcome these difficulties, the computational lithography industry is trying to use machine learning technology to solve the problem.

[0050] Currently, existing machine learning OPC methods are based on feedforward neural networks. The OPC mask pattern is segmented into multiple small segments. The environment near a specific small segment on the edge of the main target image is encoded into a feature vector. The feedforward neural network is then used to predict the OPC correction value for that segment, thereby obtaining the post-OPC mask pattern. However, the large number of feature vectors required for information encoding results in a high computational load, making optical proximity effect correction for the mask pattern inefficient.

[0051] Deep Convolutional Neural Networks (DCNNs) are extremely powerful machine learning architectures. However, because the spatial resolution of images is limited by the size of the image pixels, using DCNNs directly, image-based models alone cannot meet the accuracy requirements of machine learning OPC. To overcome this obstacle, level set functions can be used to represent geometric shapes, significantly improving the data resolution or accuracy of machine learning OPC. Furthermore, because the level set function itself is represented as an image on a discrete grid, DCNN structures can be used to learn and predict the level set function after OPC from the pre-OPC level set function.

[0052] Therefore, an embodiment of the present application provides a method for training a mask pattern correction model. The method obtains a mask pattern before and after optical proximity correction (OPC). A first level set function is calculated based on the mask pattern before and after OPC. A second level set function is calculated based on the mask pattern after and after OPC. The first level set function is used as the input of a neural network model, and the second level set function is used as the output of the neural network model for training to obtain a mask pattern correction model. Because the present application uses the first level set function to represent the image of the mask pattern before and after OPC on a discrete grid, and the second level set function to represent the image of the mask pattern after and after OPC on a discrete grid, there is no need to segment the mask pattern into multiple small segments and encode information about the neighboring environment of each small segment. This reduces the amount of computation and thus improves the efficiency of optical proximity correction for the mask pattern.

[0053] Figure 2 A schematic diagram of an application scenario of a mask pattern correction model provided in an embodiment of the present application is shown in FIG. Figure 2 As shown, a first level set function corresponding to the mask pattern before OPC is input into the mask pattern correction model, and the mask pattern correction model can output a second level set function, and the mask pattern after OPC can be obtained according to the second level set function.

[0054] The following specific embodiments describe in detail the technical solution of the present application and how the technical solution of the present application solves the above-mentioned technical problems. The following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be repeated in some embodiments. The embodiments of the present application will be described below in conjunction with the accompanying drawings.

[0055] Figure 3 This is a flow chart of a method for training a mask pattern correction model provided in an embodiment of the present application. The execution subject of this method can be a device for training the mask pattern correction model. The training device for the mask pattern correction model can be any device with data processing capabilities, such as a computer. The method in this embodiment can be implemented by software, hardware, or a combination of software and hardware. Figure 3 As shown, this method is as follows:

[0056] S301: Acquire a mask pattern before optical proximity correction (OPC) and a mask pattern after OPC.

[0057] The mask pattern can be a target pattern of photolithography, or a target pattern superimposed with a sub-resolution auxiliary pattern, wherein the target pattern is a pattern that can be presented in the photoresist during the photolithography process.

[0058] Sub-resolution auxiliary patterns are patterns whose imaging resolution is lower than the imaging resolution of the lithography system. For example, they can be lines parallel to the target pattern. In the lithography process, the process window for densely distributed patterns differs from that for sparsely distributed patterns, resulting in a smaller shared process window. Therefore, to reduce process variations caused by varying pattern density within the integrated circuit layout, sub-resolution auxiliary patterns can be inserted into the mask around the sparsely distributed target pattern to improve process window uniformity.

[0059] It should be noted that the role of the sub-resolution auxiliary pattern is to affect the light intensity distribution of the lithographic imaging of the nearby mask pattern. The sub-resolution auxiliary pattern will not form a lithographic pattern during exposure.

[0060] During the photolithography imaging process, the high spatial frequency components of the mask pattern cannot pass through the projection optics in the lithography machine, resulting in loss of these components and distortion of the photoresist pattern. Therefore, optical proximity correction (OPC) is necessary to correct the mask pattern and reduce the degree of distortion. The mask pattern that has not undergone optical proximity correction is referred to as the pre-OPC mask pattern, while the mask pattern that has undergone optical proximity correction is referred to as the post-OPC mask pattern.

[0061] S302: Based on the mask pattern before OPC and the mask pattern after OPC, a first level set function and a second level set function are calculated, respectively. The first level set function represents the image of the mask pattern before OPC on the discrete grid, and the second level set function represents the image of the mask pattern after OPC on the discrete grid.

[0062] A first level set function is calculated based on the pre-OPC mask pattern, and a second level set function is calculated based on the post-OPC mask pattern. Because the first level set function represents the image of the pre-OPC mask pattern on a discrete grid, and the second level set function represents the image of the post-OPC mask pattern on a discrete grid, there's no need to segment the mask pattern into multiple small segments. Instead, multiple feature vectors are used to encode the environments of the multiple small segments, reducing the amount of computation and improving the efficiency of optical proximity effect correction for the mask pattern.

[0063] Optionally, the first level set function and the second level set function are signed distance functions. The first level set function and the second level set function are respectively calculated based on the minimum distance between a grid point in the grid matrix and the edges of the mask pattern before and after OPC, and the positional relationship between the grid point and the mask pattern before and after OPC.

[0064] S303: Using the first level set function as the input of the neural network model and the second level set function as the output of the neural network model for training to obtain a mask pattern correction model.

[0065] Various neural network models can be used to train the training data set, such as a deep convolutional neural network model, a feedforward neural network model, etc., to obtain a mask pattern correction model.

[0066] Taking a deep convolutional neural network as an example, a deep convolutional neural network model generally includes an input layer, a convolution layer, a pooling layer, and an output layer. The first level set function can be trained using the deep convolutional neural network model with the above structure. Furthermore, during the training process, the first level set function can be divided into a training dataset and a validation dataset, wherein the training dataset is used for training and the validation dataset can be used to verify the obtained results. The division ratio of the training dataset and the validation dataset can be determined according to actual conditions, for example, it can be an 8:2 ratio.

[0067] The first level set function corresponding to the pre-OPC mask pattern is input into the mask pattern correction model, and the mask pattern correction model can output a second level set function corresponding to the post-OPC mask pattern, thereby obtaining the post-OPC mask pattern.

[0068] Since the sub-resolution auxiliary pattern remains unchanged after OPC, in one implementation scenario, the mask pattern is the target pattern, and the mask pattern correction model outputs a second level set function of the target pattern after OPC. The target pattern after OPC is then derived based on the second level set function. The target pattern after OPC needs to be combined with the sub-resolution auxiliary pattern to obtain a mask pattern that can be used for photolithography.

[0069] In another implementation scenario, the mask pattern is the target pattern superimposed on the sub-resolution auxiliary pattern. At this time, the second level set function output by the mask pattern correction model is the level set function of the target pattern superimposed on the sub-resolution auxiliary pattern. Therefore, the mask pattern obtained according to the second level set function is the target pattern after OPC superimposed on the sub-resolution auxiliary pattern.

[0070] An embodiment of the present application provides a method for training a mask pattern correction model, which obtains a mask pattern before optical proximity correction (OPC) and a mask pattern after OPC, and calculates a first level set function of the mask pattern before OPC and a second level set function of the mask pattern after OPC. The first level set function is used as the input of a neural network model, and the second level set function is used as the output of the neural network model for training to obtain a mask pattern correction model. The mask pattern correction model can output a second level set function corresponding to the mask pattern after OPC based on the level set function of the mask pattern before OPC, thereby obtaining the mask pattern after OPC. Since the mask pattern correction model training method provided by the present application uses the first level set function to represent the image of the mask pattern before OPC on a discrete grid, and the second level set function to represent the image of the mask pattern after OPC on a discrete grid, there is no need to use a large number of feature vectors to encode the mask pattern's proximity environment, which reduces the amount of calculation and improves the efficiency of OPC.

[0071] It should be noted that this application can also be applied to machine learning reverse lithography and machine learning manufacturability design, and this application does not limit this.

[0072] Based on the above embodiment, a specific embodiment is provided below to describe in detail the process of calculating the level set function.

[0073] Figure 4 A flow chart of a method for calculating a level set function provided in an embodiment of the present application is shown in FIG. Figure 4 As shown, the method provided in the embodiment of the present application may include:

[0074] S401: Acquire a first partial pattern of the mask pattern before OPC and a second partial pattern of the mask pattern after OPC, and calculate the center coordinates of the cropping windows of the first partial pattern and the second partial pattern respectively.

[0075] The cropping window is used to crop the mask pattern before OPC to obtain the first pattern portion, and to crop the mask pattern after OPC to obtain the second pattern portion. The size of the cropping window can be 4 μm*4 μm.

[0076] In one implementation scenario, the center coordinates of the clipping window may be set to (0, 0).

[0077] S402: Determine the vertex coordinates of the mask pattern before OPC by coordinate translation transformation based on the center coordinates of the cropping window of the first partial pattern, and determine the vertex coordinates of the mask pattern after OPC by coordinate translation transformation based on the center coordinates of the window of the second partial pattern.

[0078] Since the center coordinates of the cropping window of the first part of the pattern have changed, it is necessary to obtain the vertex coordinates of the mask pattern before OPC and the mask pattern after OPC through coordinate translation transformation, so as to determine the positions of the mask pattern before OPC and the mask pattern after OPC, so that the mask pattern can be mapped to the corresponding grid matrix.

[0079] S403: Constructing a first level set function based on the set first grid matrix, and constructing a second level set function based on the set second grid matrix.

[0080] The size of the grid matrix may be the product of the number of grids in the x and y directions and the grid size. The size of the grid matrix may also be calculated in other ways.

[0081] Generally, the size of each grid in the grid matrix can be set to one-third or one-quarter of the minimum width of the mask pattern or the minimum gap between mask patterns. For example, if the minimum width of the mask pattern or the minimum gap between mask patterns is 24nm, the side length of each grid in the grid matrix can be set to 8nm or 6nm.

[0082] S404: Mapping the pre-OPC mask pattern after coordinate translation transformation to a first grid matrix, and mapping the post-OPC mask pattern after coordinate translation transformation to a second grid matrix.

[0083] Optionally, the center of the mask pattern before OPC after coordinate translation transformation is coincided with the central grid of the first grid matrix and mapped to the first grid matrix; the first grid matrix includes a cropping window of the first partial pattern, and the size of the first grid matrix is ​​equal to or larger than the cropping window of the first partial pattern.

[0084] In one implementation scenario, the coordinates of the center grid in the first grid matrix can be set to (0,0), and the center coordinates of the cropping window of the first partial pattern can also be set to (0,0). At this time, the mask pattern before OPC is mapped to the first grid matrix.

[0085] It should be noted that the size of the first grid matrix can be equal to or larger than the cropping window of the first partial pattern. However, in practical applications, the size of the first grid matrix is ​​generally equal to or slightly larger than the cropping window of the first partial pattern. When the first grid matrix is ​​larger, the computational complexity also increases.

[0086] Similarly, the center of the mask pattern after OPC transformation through coordinate translation is coincided with the center of the second grid matrix and mapped to the second grid matrix. The size of the second grid matrix includes the cropping window of the second part of the pattern, and the size of the second grid matrix is ​​equal to or larger than the cropping window of the second part of the pattern.

[0087] S405: Identify a first grid point set in the first grid matrix that is closest to the edge of the mask pattern before OPC, and identify a second grid point set in the second grid matrix that is closest to the edge of the mask pattern after OPC.

[0088] Since the grid matrix contains multiple grid points, some grid points are far from the mask pattern, while some grid points are close to the mask pattern. The first grid point set is the set of grid points in the first grid matrix that are closest to the edge of the mask pattern before OPC. Similarly, the second grid point set is the set of grid points in the second grid matrix that are closest to the edge of the mask pattern after OPC.

[0089] S406: Calculate a first minimum distance between a grid point in the first grid point set and an edge of the mask pattern before OPC, and calculate a second minimum distance between a grid point in the second grid point set and an edge of the mask pattern after OPC.

[0090] The first minimum distance is the minimum distance between the grid points in the first grid point set and the edge of the mask pattern closest to the OPC. Alternatively, the distance from each grid point to the edge of the mask pattern closest to the OPC may be calculated to obtain the first minimum distance.

[0091] Likewise, the second minimum distance is the minimum distance between the grid points in the second grid point set and the edge of the mask pattern after OPC.

[0092] S407: Identify a first positional relationship between the grid points in the first grid point set and the mask pattern before OPC, and identify a second positional relationship between the grid points in the second grid point set and the mask pattern after OPC.

[0093] The positional relationship between the grid points and the mask pattern before OPC and the mask pattern after OPC can include three situations: the grid points are located inside the mask pattern before OPC or the mask pattern after OPC, the grid points are located on the mask pattern before OPC or the mask pattern after OPC, and the grid points are located outside the mask pattern before OPC or the mask pattern after OPC.

[0094] S408: Calculate a first level set function based on the first minimum distance and the first position relationship, and calculate a second level set function based on the second minimum distance and the second position relationship.

[0095] When the level set function is a signed distance function, the sign of the minimum distance can be determined based on the positional relationship. In one implementation scenario, the sign of the minimum distance can be set to negative when the grid point is located inside the pre-OPC mask pattern or the post-OPC mask pattern; the minimum distance can be set to 0 when the grid point is located on the pre-OPC mask pattern or the post-OPC mask pattern; and the sign of the minimum distance can be set to positive when the grid point is located outside the pre-OPC mask pattern or the post-OPC mask pattern.

[0096] After determining the sign of the first minimum distance based on the first positional relationship between the grid points in the first grid point set and the mask pattern before OPC, a first level set function can be calculated based on the first minimum distance. It will be appreciated that a second level set function can be calculated based on the second minimum distance and the second positional relationship. The first level set function represents the image of the mask pattern before OPC on the discrete grid, and the second level set function represents the image of the mask pattern after OPC on the discrete grid.

[0097] The embodiment of the present application provides a method for calculating a level set function, obtaining a first portion of a mask pattern before OPC and a second portion of a mask pattern after OPC, and calculating the center coordinates of the cropping windows of the first portion of the pattern and the second portion of the pattern respectively. According to the center coordinates of the cropping window of the first portion of the pattern, the vertex coordinates of the mask pattern before OPC are determined by coordinate translation transformation, and according to the window center coordinates of the second portion of the pattern, the vertex coordinates of the mask pattern after OPC are determined by coordinate translation transformation. A first grid matrix for constructing a first level set function is created, and the mask pattern before OPC after coordinate translation transformation is mapped to the first grid matrix. In the first grid matrix, a first grid point set closest to the edge of the mask pattern before OPC is identified, the first minimum distance between the grid points in the first grid point set and the edge of the mask pattern before OPC is calculated, the first minimum distance between the grid points in the first grid point set and the edge of the mask pattern before OPC is calculated, the first positional relationship between the grid points in the first grid point set and the mask pattern before OPC is identified, and the first level set function is obtained by calculation based on the first minimum distance and the first positional relationship. Similarly, a second grid matrix is ​​created for constructing a second level set function, and the post-OPC mask pattern, which has been transformed by coordinate translation, is mapped to the second grid matrix. A second set of grid points in the second grid matrix that are closest to the edge of the post-OPC mask pattern is identified, and the second minimum distance between the grid points in the second grid point set and the edge of the post-OPC mask pattern is calculated. A second positional relationship between the grid points in the second grid point set and the post-OPC mask pattern is identified, and a second level set function is calculated based on the second minimum distance and the second positional relationship. The first level set function is used to represent the image of the pre-OPC mask pattern on a discrete grid, and the second level set function is used to represent the image of the post-OPC mask pattern on a discrete grid. This eliminates the need to use a large number of feature vectors to encode the mask pattern's surroundings, resulting in a smaller amount of computation and higher efficiency.

[0098] Based on the above embodiments, an embodiment is provided to describe the process of the mask pattern correction method in detail.

[0099] Figure 5 This is a flowchart of a mask pattern correction method provided by an embodiment of the present application. The execution subject of this method can be a mask pattern correction device, which can be any device with data processing function, such as a computer. Figure 5 As shown, the method provided by this application is as follows:

[0100] S501: Acquire a mask pattern to be subjected to optical proximity correction (OPC).

[0101] The mask pattern can be either the target pattern or a sub-resolution auxiliary pattern superimposed on the target pattern. The target pattern is the pattern that needs to be present in the photoresist, while the sub-resolution auxiliary pattern is added to areas where the target pattern is sparse to improve process window uniformity. During the photolithography process, the loss of high spatial frequency components in the mask pattern can cause distortion in the optical pattern in the photoresist, necessitating correction of the mask pattern.

[0102] It should be noted that, since the mask pattern is divided into two cases during the training of the mask pattern correction model: the target pattern and the target pattern superimposed with a sub-resolution auxiliary pattern, the mask pattern obtained for optical proximity correction (OPC) needs to be the same as the mask pattern used during the training of the mask pattern correction model.

[0103] S502: Calculate and obtain a first level set function according to the mask pattern to be OPC-ed. The first level set function represents an image of the mask pattern to be OPC-ed on a discrete grid.

[0104] Before calculating the first level set function, the angle formed by the vertical lines and the horizontal lines in the mask pattern to be OPCed may be divided so that the corners of the vertical lines and the horizontal lines in the mask pattern become smooth.

[0105] The level set function represents an image on a discrete grid and can be a signed distance function.

[0106] S503: Input the first level set function to the mask pattern correction model, and output a second level set function, where the second level set function represents the image of the mask pattern after OPC on the discrete grid.

[0107] When the mask pattern correction model is trained, the first level set function is used as input and the second level set function is used as output. Therefore, the first level set function is input into the mask pattern correction model, and the mask pattern correction model can make a prediction, and its output result is the second level set function.

[0108] S504: Generate a mask pattern after OPC according to the second level set function.

[0109] Based on the second level set function, the second level set function is thresholded to obtain the post-OPC mask pattern, where the threshold is the distance from the grid point to the edge of the post-OPC mask pattern. In one implementation scenario, the threshold can be 0, even if the grid point is located on the edge of the post-OPC mask pattern, to obtain the post-OPC mask pattern.

[0110] Since the first level set function is calculated based on the mask pattern after angle segmentation, after the mask pattern correction model outputs the second level set function, the mask pattern after OPC obtained according to the second level set function has a higher degree of freedom. For example, the mask pattern after OPC can be a curved pattern, such as Figure 6 As shown, the photolithography process window can be increased by using a curved pattern photomask.

[0111] When the mask pattern is the target pattern, the post-OPC mask pattern obtained according to the second level set function is the post-OPC target pattern. To improve the uniformity of the photolithography process window, the post-OPC target pattern is superimposed with the sub-resolution auxiliary pattern to obtain the mask pattern for the photolithography process.

[0112] When the mask pattern is the target pattern superimposed on the sub-resolution auxiliary pattern, the mask pattern after OPC obtained according to the second level set function is the target pattern after OPC superimposed on the sub-resolution auxiliary pattern, and there is no need to combine the target pattern with the sub-resolution auxiliary pattern.

[0113] In order to verify whether the output results of the mask pattern correction model are accurate, the mask pattern correction model and the existing OPC algorithm are used to correct the optical proximity effect of the mask pattern. The mask patterns after OPC obtained by the two methods are shown in Figure 2. Figure 7 As shown, Figure 7 The solid line in the middle is the mask pattern after OPC obtained by the mask pattern correction model, and the dotted line is the mask pattern after OPC obtained by the existing OPC algorithm.

[0114] The accuracy of the mask pattern correction model is evaluated by calculating the error statistics of the OPC control points of each segment of the mask pattern. The OPC control points of each segment are generally the midpoints of each line segment after the mask pattern is divided into multiple small segments. The error histograms of the training dataset and the validation dataset are shown as follows: Figure 8 and Figure 9 As shown. Figure 8 As shown in , the probability that the error range between the training data set and the output of the mask pattern correction model is [-1nm, 1nm] exceeds 80%. Figure 9 As shown, the probability that the error range between the validation dataset and the output result of the mask pattern correction model is [-1nm, 1nm] is about 80%. Therefore, the output result of the mask pattern correction model is highly accurate, and the mask pattern correction model can be used to predict the mask pattern before OPC.

[0115] The present application provides a mask pattern correction method, which obtains a mask pattern to be subjected to optical proximity effect (OPC) and calculates a first level set function based on the mask pattern to be subjected to OPC. The first level set function is input into a mask pattern correction model, which can output a second level set function. The second level set function represents an image of the OPC mask pattern on a discrete grid. The mask pattern after OPC can be generated based on the second level set function. The output results of the mask pattern correction model are verified using a training data set and a validation data set. The results show that the output results of the mask pattern correction model are highly accurate and can be used to predict the mask pattern after OPC. The mask pattern correction method provided in the present application uses the first level set function to characterize the mask pattern before OPC, eliminating the need to segment the mask pattern and encode each segmented segment, thereby reducing the amount of computation and improving the efficiency of OPC.

[0116] Figure 10 A schematic diagram of a training device for a mask pattern correction model provided in an embodiment of the present application Figure 1 .like Figure 10 As shown, the mask pattern correction model training device 1000 provided in this embodiment may include an acquisition module 1001 , a calculation module 1002 and a training module 1003 .

[0117] An acquisition module 1001 is configured to acquire a mask pattern before optical proximity correction (OPC) and a mask pattern after OPC.

[0118] A calculation module 1002 is configured to calculate a first level set function and a second level set function based on the mask pattern before OPC and the mask pattern after OPC, respectively, wherein the first level set function represents an image of the mask pattern before OPC on a discrete grid, and the second level set function represents an image of the mask pattern after OPC on a discrete grid;

[0119] Training module 1003: used to train the first level set function as the input of the neural network model and the second level set function as the output of the neural network model to obtain a mask pattern correction model.

[0120] The device of this embodiment can be used to perform the following Figure 3 The implementation principles and technical effects of the method embodiments shown are similar and will not be described in detail here.

[0121] Figure 11 A schematic diagram of a mask pattern correction device provided in an embodiment of the present application Figure 1 .like Figure 11As shown, the mask pattern correction device 1100 provided in this embodiment may include an acquisition module 1101 , a calculation module 1102 , an input module 1103 , an output module 1104 and a generation module 1105 .

[0122] Acquisition module 1101: used to acquire a mask pattern to be subjected to optical proximity correction (OPC);

[0123] Calculation module 1102: configured to calculate a first level set function based on the mask pattern before OPC, where the first level set function represents an image of the mask pattern before OPC on a discrete grid;

[0124] Input module 1103: used to input the first level set function into the mask pattern correction model;

[0125] Output module 1104: configured to output a second level set function, where the second level set function represents an image of the mask pattern after OPC on a discrete grid;

[0126] The generating module 1105 is configured to generate a mask pattern after OPC according to the second level set function.

[0127] The device of this embodiment can be used to perform the following Figure 5 The implementation principles and technical effects of the method embodiments shown are similar and will not be described in detail here.

[0128] Figure 12 A schematic diagram of a training device for a mask pattern correction model provided in an embodiment of the present application Figure 2 .like Figure 12 As shown, an embodiment of the present application provides a training device 1200 for a mask pattern correction model, including a processor 1201 and a memory 1202 , wherein the processor 1201 and the memory 1202 are connected via a bus 1203 .

[0129] In a specific implementation process, the memory 1202 stores codes, and the processor 1201 runs the codes stored in the memory 1202 to execute the training method of the mask pattern correction model of the above method embodiment.

[0130] The specific implementation process of the processor 1201 can be found in the above method embodiment. Its implementation principle and technical effects are similar and will not be repeated here in this embodiment.

[0131] In the above Figure 12In the illustrated embodiment, it should be understood that processor 1201 may be a central processing unit (CPU), other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), etc. A general-purpose processor may be a microprocessor or any conventional processor. The steps of the method disclosed in the present invention may be directly executed by a hardware processor or by a combination of hardware and software modules within the processor.

[0132] The memory 1202 may include a high-speed RAM memory, and may also include a non-volatile storage NVM, such as at least one disk storage.

[0133] Bus 1203 can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus. Bus 1203 can be divided into an address bus, a data bus, a control bus, etc. For ease of illustration, bus 1203 in the drawings of this application is not limited to a single bus or a single type of bus.

[0134] The device of this embodiment can be used to perform the following Figure 3 The implementation principles and technical effects of the method embodiments shown are similar and will not be described in detail here.

[0135] Figure 13 A schematic diagram of a mask pattern correction device provided in an embodiment of the present application Figure 2 .like Figure 13 As shown, an embodiment of the present application provides a mask pattern correction device 1300 including a processor 1301 and a memory 1302 , wherein the processor 1301 and the memory 1302 are connected via a bus 1303 .

[0136] The device of this embodiment can be used to perform the following Figure 5 The implementation principles and technical effects of the method embodiments shown are similar and will not be described in detail here.

[0137] An embodiment of the present application provides a computer-readable storage medium, which stores computer-executable instructions. When the computer-executable instructions are executed by a processor, they are used to implement the training method of the mask pattern correction model of the above-mentioned method embodiment.

[0138] The computer-readable storage medium can be implemented by any type of volatile or non-volatile memory device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk. The computer-readable storage medium can be any available medium that can be accessed by a general-purpose or special-purpose computer.

[0139] An exemplary readable storage medium is coupled to a processor so that the processor can read information from the readable storage medium and write information to the readable storage medium. Of course, the readable storage medium can also be an integral part of the processor. The processor and the readable storage medium can be located in an application specific integrated circuit (ASIC). Of course, the processor and the readable storage medium can also exist in the device as discrete components.

[0140] An embodiment of the present application provides a computer-readable storage medium, in which computer-executable instructions are stored. When the computer-executable instructions are executed by a processor, they are used to implement the mask pattern correction method of the above method embodiment.

[0141] An embodiment of the present application provides a computer program product, including a computer program, which, when executed by a processor, implements the training method of the mask pattern correction model provided in any of the above-mentioned embodiments of the present application.

[0142] An embodiment of the present application provides a computer program product, including a computer program. When the computer program is executed by a processor, the mask pattern correction method provided by any embodiment of the present application is implemented.

[0143] Those skilled in the art will readily appreciate other embodiments of the present application after considering the specification and practicing the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of the present application that follow the general principles of the present application and include common knowledge or customary techniques in the art not disclosed herein. The description and examples are to be considered as exemplary only, and the true scope and spirit of the present application are indicated by the following claims.

[0144] It should be understood that the present application is not limited to the exact structure described above and shown in the drawings, and that various modifications and changes may be made without departing from the scope thereof. The scope of the present application is limited only by the appended claims.

Claims

1. A method for training a mask pattern correction model, characterized in that: include: Acquire a mask pattern before optical proximity correction (OPC) and a mask pattern after OPC; Calculating a first level set function and a second level set function based on the mask pattern before OPC and the mask pattern after OPC, respectively, wherein the first level set function represents an image of the mask pattern before OPC on a discrete grid, and the second level set function represents an image of the mask pattern after OPC on a discrete grid; Using the first level set function as an input of a neural network model and the second level set function as an output of the neural network model for training to obtain a mask pattern correction model; The calculating and obtaining a first level set function and a second level set function based on the mask pattern before OPC and the mask pattern after OPC respectively includes: Acquire a first partial pattern of the mask pattern before OPC and a second partial pattern of the mask pattern after OPC, and calculate the center coordinates of the cropping windows of the first partial pattern and the second partial pattern respectively; Determining the vertex coordinates of the mask pattern before OPC by coordinate translation transformation based on the center coordinates of the cropping window of the first partial pattern, and determining the vertex coordinates of the mask pattern after OPC by coordinate translation transformation based on the center coordinates of the window of the second partial pattern; The first level set function is constructed based on a set first grid matrix, and the second level set function is constructed based on a set second grid matrix; Mapping the pre-OPC mask pattern after coordinate translation transformation to the first grid matrix, and mapping the post-OPC mask pattern after coordinate translation transformation to the second grid matrix; Identifying, in the first grid matrix, a first set of grid points that are closest to an edge of the mask pattern before OPC, and identifying, in the second grid matrix, a second set of grid points that are closest to an edge of the mask pattern after OPC; Calculating a first minimum distance between a grid point in the first grid point set and an edge of the mask pattern before OPC, and calculating a second minimum distance between a grid point in the second grid point set and an edge of the mask pattern after OPC; Identifying a first positional relationship between grid points in the first grid point set and the mask pattern before OPC, and identifying a second positional relationship between grid points in the second grid point set and the mask pattern after OPC; The first level set function is obtained by calculation based on the first minimum distance and the first position relationship, and the second level set function is obtained by calculation based on the second minimum distance and the second position relationship.

2. The method according to claim 1, characterized in that Mapping the pre-OPC mask pattern after coordinate translation transformation to a first grid matrix, and mapping the post-OPC mask pattern after coordinate translation transformation to a second grid matrix, comprising: Aligning the center of the pre-OPC mask pattern after coordinate translation transformation with the center grid of the first grid matrix, and mapping the pattern to the first grid matrix; wherein the first grid matrix includes a clipping window of the first partial pattern, and a size of the first grid matrix is ​​equal to or larger than the clipping window of the first partial pattern; The center of the post-OPC mask pattern transformed by coordinate translation is aligned with the center of the second grid matrix and mapped to the second grid matrix, the size of the second grid matrix includes the cropping window of the second partial pattern, and the size of the second grid matrix is ​​equal to or larger than the cropping window of the second partial pattern.

3. The method according to claim 1, characterized in that The method uses the first level set function as the input of a neural network model and the second level set function as the output of the neural network model for training to obtain a mask pattern correction model, including: Dividing the first level set function into a training data set and a validation data set; The training data set is trained using a neural network to obtain the mask pattern correction model.

4. The method according to claim 1, wherein The first level set function and the second level set function are signed distance functions.

5. A mask pattern correction method, characterized in that: include: Acquiring a mask pattern to be subjected to optical proximity correction (OPC); Calculating a first level set function according to the mask pattern to be OPC-ed, where the first level set function represents an image of the mask pattern to be OPC-ed on a discrete grid; Inputting the first level set function into a mask pattern correction model and outputting a second level set function, wherein the second level set function represents an image of the mask pattern after OPC on a discrete grid, wherein the mask pattern correction model is trained using the mask pattern correction model training method according to any one of claims 1 to 4; The post-OPC mask pattern is generated according to the second level set function.

6. The method according to claim 5, characterized in that Generating the post-OPC mask pattern according to the second level set function includes: Based on the second level set function, the second level set function is thresholded to obtain the mask pattern after the OPC, and the threshold of the thresholding is the distance from a grid point to an edge of the mask pattern after the OPC.

7. A training device for a mask pattern correction model, characterized in that: include: An acquisition module, configured to acquire a mask pattern before optical proximity correction (OPC) and a mask pattern after OPC; a calculation module, configured to calculate a first level set function and a second level set function based on the pre-OPC mask pattern and the post-OPC mask pattern, respectively, wherein the first level set function represents an image of the pre-OPC mask pattern on a discrete grid, and the second level set function represents an image of the post-OPC mask pattern on a discrete grid; A training module is configured to use the first level set function as the input of a neural network model and the second level set function as the output of the neural network model for training to obtain a mask pattern correction model; The calculation module is specifically used to obtain the first partial pattern of the mask pattern before OPC and the second partial pattern of the mask pattern after OPC, and respectively calculate the center coordinates of the cropping windows of the first partial pattern and the second partial pattern; Determining the vertex coordinates of the mask pattern before OPC by coordinate translation transformation based on the center coordinates of the cropping window of the first partial pattern, and determining the vertex coordinates of the mask pattern after OPC by coordinate translation transformation based on the center coordinates of the window of the second partial pattern; The first level set function is constructed based on a set first grid matrix, and the second level set function is constructed based on a set second grid matrix; Mapping the pre-OPC mask pattern after coordinate translation transformation to the first grid matrix, and mapping the post-OPC mask pattern after coordinate translation transformation to the second grid matrix; Identifying, in the first grid matrix, a first set of grid points that are closest to an edge of the mask pattern before OPC, and identifying, in the second grid matrix, a second set of grid points that are closest to an edge of the mask pattern after OPC; Calculating a first minimum distance between a grid point in the first grid point set and an edge of the mask pattern before OPC, and calculating a second minimum distance between a grid point in the second grid point set and an edge of the mask pattern after OPC; Identifying a first positional relationship between grid points in the first grid point set and the mask pattern before OPC, and identifying a second positional relationship between grid points in the second grid point set and the mask pattern after OPC; The first level set function is obtained by calculation based on the first minimum distance and the first position relationship, and the second level set function is obtained by calculation based on the second minimum distance and the second position relationship.

8. A mask pattern correction device, characterized in that: include: Acquisition module: used to acquire the mask pattern to be subjected to optical proximity correction (OPC); A calculation module is configured to calculate a first level set function based on the mask pattern before OPC, wherein the first level set function represents an image of the mask pattern before OPC on a discrete grid; An input module: configured to input the first level set function into a mask pattern correction model, wherein the mask pattern correction model is trained using the mask pattern correction model training method according to any one of claims 1 to 4; Output module: used for outputting a second level set function, wherein the second level set function represents an image of the mask pattern after OPC on a discrete grid; A generating module is used to generate the mask pattern after OPC according to the second level set function.

9. A mask pattern correction device comprising: A processor and a memory, wherein the memory stores codes, and the processor runs the codes stored in the memory to execute the mask pattern correction method according to any one of claims 5 to 6.

10. A computer-readable storage medium, characterized in that The computer-readable storage medium stores computer-executable instructions, which are used to implement the mask pattern correction method according to any one of claims 5 to 6 when executed by a processor.

11. A computer program product, comprising a computer program, wherein when the computer program is executed by a processor, the mask pattern correction method according to any one of claims 5 to 6 is implemented.

Citation Information

Patent Citations

  • A noise image segmentation method based on improved energy functional model

    CN109523559A

  • Level set mask optimization method for distance regular level set and convolutional neural network

    CN113792866A