Determining a rounded profile for a lithography-related pattern
By converting the mask pattern into a one-dimensional representation and applying a filtering function for circularization, the problem of mismatched corners in the mask pattern is solved, improving the accuracy of lithography imaging and device performance.
Patent Information
- Application Number
- CN202210632761.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2021-06-07
- Filing Date
- 2022-06-06
- Publication Date
- 2026-02-13
- Estimated Expiration
- 2042-06-06
AI Technical Summary
Existing photolithography techniques have difficulty effectively rounding the corners of mask patterns, resulting in a mismatch between the pattern formed on the substrate and the design layout, which affects device performance.
By converting the contour representation of the mask pattern into a one-dimensional representation, applying a filtering function to update the contour point positions, distinguishing between inner and outer corners, and using different filters to smooth the corners, a rounded contour is generated.
This achieves continuous, smooth, and circular mask patterns, reducing the discrepancy between the pattern formed on the substrate and the design layout, and improving the accuracy of photolithography and device performance.
Smart Images

Figure CN115509084B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The description herein relates to a method or system for determining a rounded profile for any pattern related to photolithography, including mask patterns to be employed in semiconductor manufacturing. BACKGROUND
[0002] Lithographic projection apparatuses can be used, for example, in the manufacture of integrated circuits (ICs). In such cases, a patterning device (e.g., a mask) can contain or provide the desired circuit pattern (‘design layout’) corresponding to an individual layer of the IC, and this pattern can be transferred onto a target portion (e.g., including one or more dies) on a substrate (e.g., silicon wafer), which has been coated with a layer of radiation- sensitive material (‘resist’), by such means as by irradiating the target portion through the pattern on the patterning device. Typically, multiple substrates are included on a lot, and the circuit pattern is transferred successively to all of the target portions on the lot by the lithographic projection apparatus, one target portion at a time. In one type of lithographic projection apparatus, collectively referred to as a stepper, the circuit pattern on the entire patterning device is transferred to one target portion at a time; such a device is often called a stepper. In an alternative apparatus, commonly referred to as a
[0003] Before the circuit pattern is transferred from the patterning device to the substrate, the substrate can undergo a variety of processes such as priming, resist coating, and soft baking. After the exposure, the substrate can undergo additional processes such as post-exposure baking (PEB), development, hard baking, and measurement / inspection of the transferred circuit pattern. This array of processes is used as a basis to produce a single layer of the device (e.g., IC) on the substrate. The substrate can then undergo a variety of processes such as etching, ion implantation (doping), metallization, oxidation, chemical mechanical polishing, and so on, all intended to finish the single layer of the device. If multiple layers are desired, the whole process of transfer and etching is repeated for each layer. Finally, an individual device can be present in each target portion on the substrate. The devices can then be separated from the substrate, typically by sawing or dicing the substrate along lines, and then individual devices can be mounted onto a carrier, connected to pins, or the like.
[0004] As indicated, lithography is a central step in the manufacturing of ICs, in which patterns formed on substrates define the functional elements of said ICs, such as microprocessors, memory chips, etc. Similar lithographic techniques are also used in the formation of flat panel displays, micro-mechanical systems (MEMS) and other devices.
[0005] With the continuous progress in semiconductor manufacturing processes, the number of functional elements, such as transistors, per device has steadily increased while, at the same time, the size of the functional elements has continuously decreased over decades, following a trend commonly referred to as "Moore's law". At the current state of the art, layers of devices are manufactured using lithographic projection apparatuses that project a design layout, using illumination from a deep-ultraviolet illumination source, onto a substrate in order to form individual functional elements having dimensions that are well below 100 nm, i.e. less than half the wavelength of the radiation from the illumination source (e.g. a 193 nm illumination source).
[0006] Such processes typically employ a photoresist layer deposited on the substrate, patterned by the lithographic projection apparatus and then etched by a wet etching or a dry etching technique. The photoresist layer is exposed to the projection beam through a patterning device, and then either developed to create a positive photoresist pattern or alternatively, the unexposed parts of the photoresist are removed, for example by using an ashing process, to create a negative photoresist pattern. The pattern is then used to etch the substrate. The patterned photoresist can also be used as an etching mask in an etching process. The photoresist layer can be removed after the etching process, for example by using an ashing process. The lithographic projection apparatus can be used to etch the substrate directly, in which case the photoresist layer is not required. The lithographic projection apparatus can also be used to pattern other layers or materials, for example by deposition, e.g. CVD, ALD, PVD, or evaporation, followed by a lithographic process such as described above. The lithographic process can be used to form features of various shapes and dimensions on the substrate. SUMMARY
[0007] According to embodiments of the disclosure, a method for generating a rounded profile of a lithography mask pattern is provided. The method comprises converting a profile representation of a mask pattern into a one-dimensional representation, such as a first set of profile point positions in a first dimension and a second set of profile point positions in a second dimension different from the first dimension. A signal function is determined based on the first set of profile point positions and the second set of profile point positions, the signal function being indicative of different sections (e.g. edges, corners, etc.) of the profile representation. The first set of profile point positions is updated based on a first filter function and the signal function, and the second set of profile point positions is updated based on a second filter function and the signal function. A rounded profile of the profile representation of the mask pattern is generated based on the updated first set of profile point positions and the updated second set of profile point positions.
[0008] In embodiments, the updating involves: (i) generating a first set of weights corresponding to the first set of contour point positions by applying a first filter function to the signal function, and (ii) generating a second set of weights corresponding to the second set of contour point positions by applying a second filter to the signal function; and (i) updating the first set of contour point positions based on the first filter function and the first set of weights, and (ii) updating the second set of contour point positions based on the second filter function and the second set of weights.
[0009] According to embodiments, another method for determining a rounded profile of a lithography mask is provided. The method involves converting a profile representation of a mask pattern into a one-dimensional (ID) representation using a unit direction vector, and constraining the ID representation to satisfy a constraint that is proportional to the unit direction vector. In addition, a first function of the ID representation is determined by taking a gradient of the ID representation with respect to a first dimension; and a second function of the ID representation is determined by taking another gradient of the ID representation with respect to a second dimension, the first function and the second function satisfying the constraint. A first filtered function is generated by applying a first filter to the first function. A second filtered function is generated by applying a second filter to the second function. A rounded profile of the mask pattern is generated by combining the first filtered function and the second filtered function of the profile representation.
[0010] In embodiments, the method further comprises: distinguishing a first type of corner (e.g., an inside corner) in the profile representation from a second type of corner (e.g., an outside corner) in the profile representation; and defining the first filter function and / or the second filter function to include a filter function for the first type of corner and another filter function for the second type of corner. As an example, the distinction of the corners can be achieved by computing a sign function of the first function and the second function of the ID representation, where a positive value of the sign function indicates the first type of corner and a negative value of the sign function indicates the second type of corner. As another example, the distinction of the corners can be achieved based on a sine of the unit vector along the profile representation.
[0011] According to embodiments, a non-transitory computer readable medium for determining a mask rule check violation associated with a mask feature is provided, the non-transitory computer readable medium comprising instructions stored therein that, when executed by one or more processors, cause performance of operations comprising the steps of the methods herein. BRIEF DESCRIPTION OF DRAWINGS
[0012] Figure 1This is a block diagram of the various subsystems of a lithography system according to embodiments of the present disclosure.
[0013] Figure 2 Based on embodiments of this disclosure and Figure 1 The block diagram of the simulation model corresponding to the subsystem in the diagram.
[0014] Figure 3 This is a flowchart of a method for generating a rounded profile according to an embodiment of the present disclosure.
[0015] Figure 4A The figure illustrates an exemplary contour representation of a contour to be printed onto a substrate according to an embodiment of the present disclosure.
[0016] Figure 4B The figure illustrates an exemplary transformation of the contour representation to a set of contour point locations according to an embodiment of the present disclosure.
[0017] Figure 4C The figures illustrate embodiments according to the present disclosure. Figure 4A The rounded outline of the contour.
[0018] Figure 5A The figure illustrates an exemplary outline of a two-dimensional polygonal shape according to an embodiment of the present disclosure.
[0019] Figure 5B The figure illustrates a one-dimensional representation of the outline representation 500 according to an embodiment of the present disclosure.
[0020] Figure 5C The figure illustrates the use of an embodiment according to this disclosure. Figure 5B The signal generated is represented in one dimension.
[0021] Figure 5D The figure illustrates an embodiment of the present disclosure for use with Figure 5C An example of a one-dimensional representation of weights.
[0022] Figure 5E The figures illustrate embodiments according to the present disclosure. Figure 5B The updated one-dimensional representation of .
[0023] Figure 5F The figure illustrates an embodiment of the present disclosure from Figure 5E An example circularized contour is generated by the updated one-dimensional representation.
[0024] Figure 6 The figures illustrate different rounded profiles produced when the same or different filters are applied to the one-dimensional representation according to embodiments of the present disclosure.
[0025] Figure 7is a flowchart of another method for generating a rounded profile of a pattern according to embodiments of the present disclosure.
[0026] Figure 8A illustrates an exemplary profile representation according to embodiments of the present disclosure.
[0027] Figure 8B illustrates a one-dimensional representation of a profile according to embodiments of the present disclosure when the profile is unwound into a single dimension. Figure 8A
[0028] Figure 8C illustrates an exemplary component of a one-dimensional representation of Figure 8B according to embodiments of the present disclosure.
[0029] Figure 8D illustrates a filtered one-dimensional function of a one-dimensional representation of Figure 8B generated using filter FLT1 according to embodiments of the present disclosure.
[0030] Figure 8E illustrates a rounded profile generated from the filtered one-dimensional function of Figure 8D according to embodiments of the present disclosure.
[0031] Figure 9 illustrates that the rounded profile obtained according to the present disclosure is not affected by a rotation of the profile according to embodiments of the present disclosure.
[0032] Figure 10 is a flowchart illustrating aspects of an exemplary methodology of joint optimization / co-optimization according to embodiments of the present disclosure.
[0033] Figure 11 shows an embodiment of another optimization method according to embodiments of the present disclosure.
[0034] Figure 12A , Figure 12B and Figure 13 show exemplary flowcharts of various optimization processes according to embodiments of the present disclosure.
[0035] Figure 14 is a block diagram of an exemplary computer system according to embodiments of the present disclosure.
[0036] Figure 15 is a schematic illustration of a lithographic projection apparatus according to embodiments of the present disclosure.
[0037] Figure 16 is a schematic illustration of another lithographic projection apparatus according to embodiments of the present disclosure.
[0038] Figure 17 is a more detailed view of the apparatus in Figure 16 according to embodiments of the present disclosure.
[0039] Figure 18 is a more detailed view of the source collector module SO of the apparatus according to embodiments of the present disclosure. Figure 16 and Figure 17 of the apparatus. DETAILED DESCRIPTION
[0040] Although specific reference can be made in this text to the manufacture of ICs, it should be explicitly understood that the description herein has many other possible applications. For example, it can be employed in the manufacture of integrated optical systems, guidance and detection patterns for magnetic domain memories, liquid-crystal display panels, thin-film magnetic heads, etc. The skilled artisan will appreciate that, in the context of such alternative applications, any use of the terms "reticle", "wafer" or "die" in this text should be considered as interchangeable with the more general terms "mask", "substrate" and "target portion" respectively.
[0041] In the present document, the terms "radiation" and "beam" are used to encompass all types of electromagnetic radiation, including ultraviolet radiation (e.g. with a wavelength of 365, 248, 193, 157 or 126 nm) and EUV (extreme ultra-violet radiation, e.g. having a wavelength in the range of about 5-100 nm).
[0042] The terms "optimized" and "optimization" as used herein refer to or mean adjusting a lithographic projection apparatus, a lithographic process, etc. such that the result of the lithography and / or the process has more desirable characteristics, such as higher projection accuracy of a design layout on a substrate, a larger process window, etc. Thus, the terms "optimized" and "optimization" as used herein refer to or mean a process that identifies one or more values of one or more parameters that provide an improvement (e.g. a local optimization) in at least one relevant metric compared to an initial set of values for the one or more parameters. "Optimization" and other related terms should be interpreted accordingly. In embodiments, the optimization steps can be applied iteratively to provide further improvements in one or more metrics.
[0043] Further, the lithographic projection apparatus can be of a type having two or more substrate tables (e.g. two or more substrate tables, a substrate table and a measurement table, two or more pattern formation devices, etc.). In such "multiple stage" devices the multiple tables can be used in parallel, or preceding steps can be performed on a separate table while one or more other tables are used for exposure. For example, in US 5,969,441 a dual stage lithographic projection apparatus is described, in which two different patterns can be projected on two different substrate tables, which can be used for two different parts of a larger device. US 5,969,441 is incorporated by reference herein in its entirety.
[0044] The patterning apparatus described above includes or can form one or more design layouts. These design layouts can be generated using CAD (Computer-Aided Design) programs, a process often referred to as EDA (Electronic Design Automation). Most CAD programs follow a predetermined set of design rules to generate functional design layouts / patterning apparatuses. These rules are set through processing and design constraints. For example, design rules define spatial tolerances between circuit devices (such as gates, capacitors, etc.) or interconnects to ensure that the circuit devices or lines do not interact in undesirable ways. One or more of the design rule constraints can be referred to as “critical dimensions” (CDs). A 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, the CD determines the overall size and density of the designed circuit. Of course, one of the goals in integrated circuit manufacturing (via the patterning apparatus) is to faithfully reproduce the original circuit design on a substrate.
[0045] 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 the substrate; in this context, the term "optical valve" may also be used. Examples of such patterning apparatuses, besides classic masks (transmissive or reflective; binary, phase-shifting, hybrid, etc.), include:
[0046] - Programmable mirror arrays. An example of such a device is a matrix-addressable surface having a viscoelastic control layer and a reflective surface. The basic principle underlying such a 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 a suitable filter, the non-diffracted radiation can be filtered out from the reflected beam, leaving only the diffracted radiation; thus, the beam is patterned according to the addressing pattern of the matrix-addressable surface. Suitable electronics can be used to perform the desired matrix addressing. More information about such mirror arrays can be found, for example, from U.S. Patent Nos. 5,296,891 and 5,523,193, which are incorporated herein by reference.
[0047] - Programmable LCD array. An example of such a construction is given in U.S. Patent No. 5,229,872, which is incorporated herein by reference.
[0048] As a brief introduction, Figure 1An exemplary lithographic projection apparatus 10A is illustrated in FIG. 1. Major components are: a radiation source 12A, which can be an extreme ultra violet (EUV) source, or another type of source including a deep-ultraviolet (DUV) laser source (as discussed above, the lithographic projection apparatus itself need not have the radiation source); illumination optics which define a partial coherence (denoted as sigma) and can include optics 14A, 16Aa, and 16Ab that shape radiation from the source 12A; a patterning device 14A; and transmission optics 16Ac, which project an image of the patterning device pattern onto a substrate plane 22A. An adjustable filter or aperture 20A at a pupil plane of the projection optics can limit the range of angles of the beam that is incident on the substrate plane 22A, where the largest possible angle defines the numerical aperture NA = n sin(0max) of the projection optics, n being the refractive index of the medium between the substrate and the last element of the projection optics, and 0max being the largest angle of the beam exiting the projection optics that can still be incident on the substrate plane 22A. The radiation from the radiation source 12A can not necessarily be of a single wavelength. Instead, the radiation can be in a range of wavelengths. The range of different wavelengths can be characterized by a parameter called the "imaging bandwidth," "source bandwidth," or simply "bandwidth" (which are used interchangeably herein). A smaller bandwidth can reduce chromatic aberrations and associated focus errors in downstream components, including the source, the patterning device, and optics in the projection optics (e.g., optics 14A, 16Aa, and 16Ab). However, this does not necessarily lead to the rule that the bandwidth should never be enlarged.
[0049] In an optimization process of the system, a figure of merit of the system can be represented as a cost function. The optimization process reduces to a set of parameters (design variables) of the system that optimizes (e.g., minimizes or maximizes) the cost function. The cost function can have any suitable form depending on the goal of the optimization. For example, the cost function can be a weighted root mean square (RMS) of deviations of certain characteristics (estimation points) of the system from expected values (e.g., ideal values) of these characteristics; the cost function can also be a maximum of these deviations (i.e., the worst deviation). The term "estimation point" herein should be interpreted broadly to include any characteristic of the system. Due to practicality of implementation of the system, the design variables of the system can be limited to a finite range and / or be interdependent. In the case of a lithographic projection apparatus, these constraints are often associated with physical properties and characteristics of the hardware (such as tunable ranges) and / or patterning device manufacturability design rules, and estimation points can include physical points on a resist image on a substrate, as well as non-physical characteristics such as dose and focus.
[0050] In a lithographic projection apparatus, a source illuminates (i.e., provides radiation to) a patterning device, and a projection optics directs and shapes the illumination onto a substrate. Here, the term "projection optics" is broadly defined to include any optics that can change the wavefront of the radiation beam. For example, projection optics can include at least some of the components 14A, 16Aa, 16Ab, and 16Ac. A aerial image (AI) is the intensity distribution of the radiation at the level of the substrate. A resist layer on the substrate is exposed and the aerial image is transferred to the resist layer as a latent "resist image" (RI) therein. The resist image (RI) can be defined as the spatial distribution of solubility of the resist in the resist layer. The resist image can be calculated from the aerial image using a resist model, examples of which can be found in U.S. Patent Application Publication No. US 2009-0157360, the entire contents of which are hereby incorporated by reference. The resist model is related only to the properties of the resist layer (e.g., effects of chemical processes occurring during exposure, PEB, and development). The optical properties of the lithographic projection apparatus (e.g., properties of the source, the patterning device, and the projection optics) dictate the aerial image. Since the patterning device used in the lithographic projection apparatus can be changed, 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.
[0051] Figure 2 An exemplary flow diagram for simulating lithography for a lithographic projection apparatus is illustrated in FIG. 3. A source model 31 represents the optical characteristics of the source (including radiation intensity distribution, bandwidth, and / or phase distribution). A projection optics model 32 represents the optical characteristics of the projection optics (including changes to the radiation intensity distribution and / or phase distribution caused by the projection optics). A design layout model 35 represents the optical characteristics of a design layout (including changes to the radiation intensity distribution and / or phase distribution caused by a given design layout 33), which is a representation of an arrangement of features formed on or by a patterning device. An aerial image 36 can be simulated from the design layout model 35, the projection optics model 32, and the design layout model 35. A resist image 38 can be simulated from the aerial image 36 using a resist model 37. The simulation of lithography can, for example, predict profiles and CDs in the resist image.
[0052] More specifically, it is noted that the source model 31 can represent optical characteristics of the source, including but not limited to numerical aperture settings, illumination sigma (σ) settings, and any particular illumination shape (e.g., off-axis radiation sources such as annular, quadrupole, dipole, etc.). The projection optics model 32 can represent optical characteristics of the projection optics, including aberrations, distortions, one or more refractive indices, one or more physical sizes, one or more physical dimensions, etc. The design layout model 35 can represent one or more physical properties of a physical patterning device, such as described in U.S. Patent No. 7,587,704, the entirety of which is incorporated by reference herein. The purpose of the simulation is to accurately predict, for example, edge placement, aerial image intensity slope, and / or CD, which can then be compared to the intended design. The intended design is generally defined as the pre-OPC design layout, which can be provided in a standardized digital file format such as GDSII or OASIS, or another file format.
[0053] From this design layout, one or more portions, referred to as "segments," can be identified. In an embodiment, a set of segments is extracted, which represents complex patterns in the design layout (typically about 50 to 1000 segments, but any number of segments can be used). These patterns or segments represent smaller portions of the design (e.g., circuits, cells, or patterns), and more specifically, the segments typically represent smaller portions that require special attention and / or verification. In other words, a segment can be a portion of the design layout, or can resemble or have similar performance to a portion of the design layout, where one or more critical features are identified empirically (including segments provided by a customer), through repeated experimentation, or by running full-chip simulations. A segment can contain one or more test patterns or gauge patterns.
[0054] An initial larger set of segments can be provided a priori by a customer based on one or more known critical feature areas in the design layout that require specific image optimization. Alternatively, in another embodiment, an initial larger set of segments can be extracted from the entire design layout by using some automation, such as machine vision or a manual algorithm, that identifies the one or more critical feature areas.
[0055] In embodiments, the design layout or portions of the design layout are used to design masks to be used in the semiconductor manufacturing. Mask design includes determining mask features based on mask optimization simulation, and checking whether mask rule checks (MRCs) are satisfied. In embodiments, the mask design includes Manhattan-shaped mask features or curved mask features. It is desirable that the mask features satisfy mask rule checks associated with mask manufacturing processes. As the mask design techniques (e.g., optical proximity correction (OPC) techniques) are migrating from Manhattan shapes to curved shapes, current MRC engines can no longer consistently flag MRC violations and drive optimization. In embodiments, MRCs include one or more constraints related to geometric properties associated with mask features that can be manufactured. For example, the geometric properties include, but are not limited to, minimum CD of a mask feature, minimum curvature of a mask feature that can be manufactured, or minimum space between two features that can be manufactured.
[0056] In semiconductor chip or integrated circuit manufacturing, mask patterns are typically designed or optimized by computational lithography software (involving optical proximity effect correction) so that a desired pattern can be printed onto a substrate via photolithography. However, due to limitations of mask manufacturing equipment, a real manufactured mask is different from the designed mask. For example, a designed mask can include sharp corners, while in a manufactured mask, the corner regions can be rounded. Due to the highly non-linear nature of photolithographic imaging, such mask pattern differences are significantly magnified at the substrate. Thus, the differences caused by mask manufacturing should be considered in mask modeling and design.
[0057] As an example, a designed mask can include 90 degree sharp corners, while a real manufactured mask is smooth or has rounded corners. These differences are often referred to as "rounding effects" in mask manufacturing processes. To model the "rounding effects" caused by the mask manufacturing processes or any other sources, existing methods round the corners of a designed mask pattern using a certain curvature according to certain rules. The rules determine the degree of curvature applied to each corner. These methods typically work well on patterns with longer segments. However, as semiconductor nodes continue to shrink to features with single digit nanometer sizes, the mask patterns become more complex and contain smaller roughness and steps, which often require more complex rules to compensate for the rounding effects. One problem is that the mask pattern after rounding is not continuous with respect to small changes in the input mask pattern, resulting in model errors.
[0058] The present disclosure provides mechanisms for rounding a profile. Advantages of the present approach include, but are not limited to, obtaining a continuous mask pattern with small changes relative to an input pattern. The approach herein supports the case of a deformed profile (e.g., a deformed pattern) by applying the same or different filters to the x / y coordinates. The approach herein also supports the case of having different rounding behavior at inner and outer corners. In the approach herein, the filters can be calibrated based on a real mask profile (such as measured using a scanning electron microscope (SEM) or an optical inspection instrument). The profile is always smooth and is not limited to corners.
[0059] Figure 3 is a flowchart of an exemplary method of generating a rounded profile, such as a rounded profile of a target profile (e.g., a profile in a design layout), a mask pattern, or other lithography-related profile that is desired to be printed onto a substrate (e.g., a semiconductor chip) according to an embodiment. In an embodiment, the rounded profile can be used as an initial starting point for determining a mask design. In an embodiment, the target profile, mask profile, or other profile can be represented as a polygonal shape, such as in GDSII format. However, the present disclosure is not limited to rounded profiles of polygons. In an embodiment, the profile can be a two-dimensional (2D) representation that can be further converted into another representation (e.g., a one-dimensional representation). In some embodiments, filters can be applied to the converted representation to generate filtered one-dimensional representations. The filtered representations are combined to generate a rounded profile of the target profile. In an embodiment, the method 300 can be implemented as processes P302, P304, P306, P308, and P310, which are discussed in further detail below.
[0060] Process P302 involves converting a profile representation 301 (e.g., of a mask pattern, a target pattern, etc.) into a first set of profile point locations 303 in a first dimension and a second set of profile point locations 305 in a second dimension that is different from the first dimension. For example, the first set of profile point locations 303 can be x-coordinates of a Cartesian coordinate system and the second set of profile point locations 305 can be y-coordinates of the Cartesian coordinate system. One of ordinary skill in the art can appreciate that the present disclosure is not limited to any particular coordinate system.
[0061] In an embodiment, converting the profile representation 301 involves sampling a plurality of points on the profile representation 301. The plurality of points can be converted into the first set of profile point locations 303 in the first dimension; and the second set of profile point locations 305 in the second dimension. In an embodiment, the conversion of the profile representation 301 involves determining a first gradient based on the first set of profile point locations 303 in the first dimension, and a second gradient based on the second set of profile point locations 305 in the second dimension.
[0062] Figure 4A FIG. illustrates an exemplary profile representation of a profile 400 to be printed onto a substrate, according to embodiments of the present disclosure. In Figure 4A , the profile 400 is a two-dimensional representation of an L-shaped polygon having several corners. The profile 400 is represented as a polygon shape (e.g., GDSII format). In embodiments, the profile 400 includes an inner corner IC1 and outer corners OC1 and OC2. Assuming the profile 400 travels counterclockwise around the boundary of the polygon at a given corner (so that the interior of the polygon is always on the left), then a corner is called an outer corner if the traveler turns left, and an inner corner if the traveler turns right. In embodiments, the corners, edges, or both corners and edges of the profile 400 can be rounded. The rounding of the profile 400 can be performed using a process discussed below.
[0063] Figure 4B FIG. illustrates an exemplary conversion of the profile representation 400 to a set of profile point locations. In embodiments, a plurality of points can be sampled along the L-shaped polygon. For example, the plurality of points are illustrated by x, y coordinates (x0, y0), (x1, y1),..., (x n , y n ). In this example, the converted representation 410 of the profile 400 corresponds to the x coordinates and y coordinates of the profile 400. The conversion of the profile 400 starts at (x0, y0) and travels counterclockwise around the profile 400. Further, since the profile 400 is a closed curve, the converted representation is a function of a parameter s, where s represents the length along the boundary between two points in the plurality of points. In Figure 4B , the n number of sampling points in the first dimension can be represented as a set or group X = {x0, x1,..., x n-1 , x n} and the n number of sampling points in the second dimension can be represented as a set or group Y = {y0, y1,..., y n-1 , y n}. In another example, the conversion of the profile representation 400 can be represented as X = {x0 - x1, x1 - x2,..., x n-1 - x n , x n - x0} and Y = {y0 - y1, y1 - y2,..., y n-1 - y n , y n - y0}.
[0064] Thus, according to the present disclosure, the conversion of the contour representation is not limited to corners; rather, the entire contour or a portion of the contour can be converted into a set of contour point positions. Such conversion enables continuous and smooth rounding of the contour, rather than limiting the rounding to corners. Note that the current conversion to a coordinate-based representation of the original contour representation (e.g., 400) can not rely on a parametric representation. In a parametric representation, a parametric equation is used to define a curve or line as a function of some independent variable, referred to as a parameter, such as time, angle, or other user-defined parameter. In such a parametric representation, the degrees of freedom available for any modification are limited to these parameters. As such, any resulting rounding of the contour based on such a parametric representation would rely on the parameter values themselves. Changes in the parameter values would result in different rounding of the contour and thus different rounding effects. On the other hand, rounding of the contour according to the present disclosure is not limited to parameter values.
[0065] Process P304 involves determining a signal function 307 based on the first set of contour point positions 303 and the second set of contour point positions 305. In an embodiment, the signal function 307 is indicative of different sections (e.g., edges, inner corners, outer corners, etc.) of the contour representation 301. In an embodiment, determining the signal function 307 involves calculating a product of a first difference between two consecutive points in the first set of contour point positions 303 and a second difference between two consecutive points in the second set of contour point positions 305. The present disclosure is not limited to a calculation based on differences to produce the signal function. For example, other mathematical operations (such as differentiation, integration, summation, etc.) between the first set of contour point positions 303 and / or between the second set of contour point positions 305 can be used to calculate the signal function 307, where such operations reveal different types of corners.
[0066] In an embodiment, the signal function 307 can include a first function having a value greater than zero, the first function characterizing a first type of corner in the contour representation 301. The signal function 307 can also include a second function having a value less than zero, the second function characterizing a second type of corner in the contour representation 301. In an embodiment, the first function is indicative of an inner corner of the contour representation 301, and the second function is indicative of an outer corner within the contour representation 301, the inner corner or the outer corner characterizing a corner oriented within the contour representation 301. Examples of the signal function 307 are illustrated in Figure 5C , discussed later in the present disclosure Figure 5C .
[0067] As an example, the signal function 307 can be represented as S[n], which can be calculated using the following equation:
[0068] S[n] = (x[n] - x[n-1]) · (y[n] - y[n+1]) - (y[n] - y[n-1]) · (x[n] - x[n+1])
[0069] Based on the above calculations, the signal function S can be represented as a set or group S = {s0, s1,..., s n-1 , s n}. In embodiments, the signal function 307 can be further split into a first function, a second function, and / or a third function corresponding to the geometry of the contour 400. For example, the signal function 307 can be represented as follows:
[0070] S1: S > Q, indicating an inside corner of the contour representation
[0071] S2: S = 0, indicating an edge of the contour representation
[0072] S3: S < 0, indicating an outside corner of the contour representation
[0073] The corner locations represented by the S function are smoothed by applying one or more filters or smoothing functions. In some embodiments, the inside corners and outside corners are smoothed using the same smoothing function or filter. In some embodiments, the inside corners and the outside corners can be treated differently (e.g., by applying different filters). In some embodiments, the filter can vary with the corner angle.
[0074] The process P306 involves (i) generating a first set of weights corresponding to the first set of contour point locations 303 by applying a first filter function Fl to the signal function 307, and (ii) generating a second set of weights corresponding to the second set of contour point locations 305 by applying a second filter to the signal function 307. In embodiments, the first filter function Fl can include one or more filters, such as a Gaussian filter and / or a low-pass filter. In embodiments, applying the first filter function Fl involves applying a first filter (e.g., Gl) to the first function (e.g., Sl) of the signal function 307 to generate a first weight; and applying a second filter (e.g., G2) to the second function (e.g., S3) of the signal function 307 to generate a second weight. In embodiments, the second filter can be the same or different from the first filter. For example, a first set of weights WT1 (expressed as ) can be generated by applying a filter Gl to the signal function 307 having a value greater than zero. Similarly, a second set of weights WT2 (expressed as In the embodiment, the operator This indicates the summation operation between the signal function S(n) and the filter G. For example, the operator... It can be represented as ∑ n S n ·G i-n And it is applied at every point i = 0...n.
[0075] In an embodiment, a set of weights (e.g., WT1, WT2, WT3, and WT4) can be determined for different parts of the contour (e.g., inner corners or outer corners) by applying different filters to each of these parts. Examples of weights generated by applying filters are provided in... Figure 5D The diagram in the middle is discussed later.
[0076] Process P308 involves (i) updating the positions of the first set of contour points based on the first filter function and the signal function 307, and (ii) updating the positions of the second set of contour points based on the second filter function and the signal function 307. In an embodiment, (i) the positions of the first set of contour points 303 are updated based on the first filter function F1 (e.g., G1 and G2) and the first set of weights (e.g., WT1 and WT2), and (ii) the positions of the second set of contour points 305 are updated based on the second filter function F2 (e.g., G3 and G4) and the second set of weights (e.g., WT3 and WT4). The update process produces an updated first set of contour point positions 313 corresponding to the first set of contour point positions 303, and an updated second set of contour point positions 315 corresponding to the first set of contour point positions 305. In an embodiment, the update process may involve calculating a third set of contour points in the first dimension based on the first set of contour point positions 303, the first filter function F1, and the first set of weights. The update process may also involve calculating a fourth set of contour points in the second dimension based on the second set of contour point positions 305, the second filter function F2, and the second set of weights.
[0077] In one embodiment, the calculations performed in the first dimension involve applying the first filtering function F1 (e.g., G1 and G2) to the contour point at the first set of contour point positions 303 (e.g., x); and applying one weight from the first set of weights (e.g., WT1 and WT2) to the filtered contour point. In another embodiment, the calculations performed in the second dimension involve applying the second filtering function F2 (e.g., G3 and G4) to the contour point at the second set of contour point positions 305 (e.g., y); and applying one weight from the second set of weights (e.g., WT3 and WT4) to the filtered contour point.
[0078] For example, updating the first set of coordinate point locations X and the second set of coordinate point locations Y to coordinate X' and Y' can be achieved using the following equations. The updated contour points can be further used to construct the rounded contour.
[0079]
[0080]
[0081] According to the above equations, the calculations made in the first dimension can involve determining, at each point in the first set of contour points, whether the sum of the weights of the first set of weights at a particular point is equal to zero (e.g., WT1+WT2=0). In response to the sum not being zero (WT1+WT2≠0), a particular point of the first set of contour point locations 303 can be transformed by applying the first filter function Fl (e.g., Gl and G2) and taking a weighted average of the filtered points using the first set of weights (e.g., WT1 and WT2). In embodiments, in response to the sum being zero, the original coordinate point location X can not be transformed.
[0082] Similarly, the calculations made in the second dimension can involve determining, at each point in the second set of contour points, whether the sum of the weights of the second set of weights at a particular point is equal to zero (e.g., WT3+WT4=0). In response to the sum not being zero (WT3+WT4≠0), a particular point of the second set of contour point locations 305 can be transformed by applying the second filter function F2 (e.g., G3 and G4) and taking a weighted average of the filtered points using the second set of weights (e.g., WT3 and WT4). In embodiments, in response to the sum being zero, the original coordinate point location Y can not be transformed.
[0083] Process P310 involves generating a rounded contour 320 of the contour representation 301 from the updated first set of contour point locations 313 (e.g., X') and the updated second set of contour point locations 315 (e.g., Y'). In embodiments, the rounded contour 320 can be constructed by combining (e.g., plotting) the transformed first set of contour point locations and the updated second set of contour point locations to generate a set of two-dimensional contour points; and joining the set of two-dimensional contour points to generate the rounded contour 320 of the contour representation 301. In embodiments, joining the contour points involves joining adjacent points in the set of two-dimensional contour points by a linear function, a polynomial function, or a combination of a linear function and a polynomial function to generate a closed shape.
[0084] Figure 4C An exemplary rounded contour 420 from the target contour 400 is illustrated according to the above equations, where the first set of contour point locations X and the second set of contour point locations Y are transformed to X' and Y', respectively. Figure 4Bcorresponding to the coordinates x, y of the input contour 400. The resulting exemplary rounded contour 420 is generated using the method 300. As shown, using the method 300, rounding of the entire contour is achieved. In other words, the rounding is not limited to the corners of the input contour 400 (in the middle). As an example, the points 420 in the transformed coordinates X', Y' can be plotted in the same order as the original coordinates X, Y (in the middle) as (x'0, y'0), (x'1, y'1),... (x'N, y'N). Adjacent points in X', Y' are joined by a linear or polynomial curve to generate the rounded contour. For example, the curve can be a curve or straight line 421 drawn between two consecutive points. When all points (x'0, y'0), (x'1, y'1),... (x'N, y'N) are joined, a closed rounded contour 420 is obtained. Figure 4A Figure 4B As an example, the points 420 in the transformed coordinates X', Y' can be plotted in the same order as the original coordinates X, Y (in the middle) as (x'0, y'0), (x'1, y'1),... (x'N, y'N). Adjacent points in X', Y' are joined by a linear or polynomial curve to generate the rounded contour. For example, the curve can be a curve or straight line 421 drawn between two consecutive points. When all points (x'0, y'0), (x'1, y'1),... (x'N, y'N) are joined, a closed rounded contour 420 is obtained. n n n n
[0085] In embodiments, different rounding of the contour can be generated by varying the filter parameters. In embodiments, by adjusting the filter parameters, the entire contour can be rounded, the rounding can be limited to corners, etc. For example, the filter parameters (such as the sigma of a Gaussian filter) can be adjusted based on different process conditions, geometry of the pattern to be printed onto a substrate, settings of the lithography apparatus (e.g., aperture, dose, etc.), or other lithography-related parameters to determine a mask pattern that, when employed in lithography, results in a chip with fewer defects. In embodiments, the filter parameters can be calibrated based on contour data associated with a real mask. Such calibration allows the filter to achieve a more realistic rounding in the design layout.
[0086] Also with respect to Figure 5A to Figure 5F and Figure 6 An exemplary implementation of the method 300 is additionally illustrated. Figure 5A An exemplary contour representation 500 is illustrated, represented as a polygon shape in two dimensions. The contour has several corners and edges forming a closed shape. The contour representation 500 is transformed into a one-dimensional representation based on the x and y coordinates of the contour representation 500 (e.g., according to process P304 of method 300). For example, Figure 5B Fig. 1 illustrates a first one-dimensional representation 511 generated using the x- coordinates of the contour representation 500 and a second one-dimensional representation 512 generated using the y-coordinates of the contour representation 500. The indices indicate points along the contour representation 500. As can be seen, the first one-dimensional representation 511 and the second one-dimensional representation 512 can be considered as two orthogonal components of the two-dimensional representation. Splitting the two-dimensional contour representation 500 into two components allows to process these components independently from each other. Thus, a greater degree of control over the rounding of a two-dimensional shape can be obtained. It will be appreciated by the skilled person that the present disclosure is not limited to x-y coordinates and that other one-dimensional representations in a different coordinate system defined by a user can be used.
[0087] Figure 5C Fig. 1 illustrates a first one-dimensional representation 511 generated using the x- coordinates of the contour representation 500 and a second one-dimensional representation 512 generated using the y-coordinates of the contour representation 500. The indices indicate points along the contour representation 500. As can be seen, the first one-dimensional representation 511 and the second one-dimensional representation 512 can be considered as two orthogonal components of the two-dimensional representation. Splitting the two-dimensional contour representation 500 into two components allows to process these components independently from each other. Thus, a greater degree of control over the rounding of a two-dimensional shape can be obtained. It will be appreciated by the skilled person that the present disclosure is not limited to x-y coordinates and that other one-dimensional representations in a different coordinate system defined by a user can be used.
[0088] Figure 5DAn example of first weights 531 for the first one-dimensional representation 511 and second weights 532 for the second one-dimensional representation 512 is illustrated. The first weights 531 include values corresponding to different positions (indices) of the contour representation 500. When these values 531 are applied to the respective positions of the first one-dimensional representation in the first dimension of the contour representation 500, an updated one-dimensional representation is obtained. For example, the first weights 531 can be applied using the equation X' discussed above. Similarly, the second weights 532 include values corresponding to different positions (indices) of the contour representation 500. When these values 532 are applied to the respective positions of the second one-dimensional representation in the second dimension of the contour representation 500, an updated one-dimensional representation is obtained. For example, the second weights 532 can be applied using the equation Y' discussed above.
[0089] Figure 5E Updated one-dimensional representations 531 and 532 of the one-dimensional representations 511 and 512, respectively, are illustrated. In comparison, it can be seen that the updated one-dimensional representation 531 is a rounded version of the one-dimensional representation 511. Similarly, in comparison, it can be seen that the updated one-dimensional representation 532 is a rounded version of the one-dimensional representation 512. In addition, the updated one-dimensional representations are combined to produce the rounded contour.
[0090] Figure 5F An exemplary rounded contour 550 produced from the updated one-dimensional representations 531 and 532 is illustrated. As an example, the combination of the updated one-dimensional representations 531 and 532 involves plotting (e.g., similar to Figure 4C ) the updated coordinates represented by the values of the updated one-dimensional representations in two dimensions. Thus, a set or group of points in the form of updated coordinates is obtained. In addition, these points can be joined by straight or broken lines to produce a rounded contour shape. In Figure 5F , the rounded contour 550 (dashed line) is overlaid on the original contour representation 500 for comparison. As can be seen, different portions of the original contour 500 are rounded.
[0091] Figure 6 Different rounded contours produced when the same or different filters are applied to two one-dimensional representations (e.g., in the x-coordinate, and in the y-coordinate) are illustrated. The contour representation 600 has straight edges and several sharp corners (e.g., inside and outside corners). The contour rounding process of the method 300 can be applied as illustrated in Figure 5A to Figure 5F . In process P306 (e.g., as in Figure 5DIn the middle illustration, the same or different filters can be used to generate the weights and further update the one-dimensional representation. When the same filter is used for the one-dimensional representations in the first dimension (e.g., x) and the second dimension (e.g., y), a first rounded profile 603 is generated. When a first filter is used for the one-dimensional representation in the first dimension (e.g., x) and a second, different filter is used for the one-dimensional representation in the second dimension (e.g., y), a second rounded profile 605 is generated. Different filters can be generated, for example, by changing one or more filter parameters (e.g., sigma of a Gaussian function) or other things that characterize the filter. A comparison of profiles 603 and 605 shows different curvatures at the corners. Thus, in embodiments, by controlling the filter, the profile rounding can be controlled.
[0092] In embodiments, the filter can be developed or tuned based on calibration data obtained from a patterning substrate used in the patterning process, the target pattern, and a corresponding mask pattern. Since characteristics of the patterning process will be reflected in the patterning substrate, such characteristics can be incorporated into the filter parameters. For example, the target pattern can be rounded (according to the method 300) and compared to corresponding features of a mask pattern. Based on the comparison, one or more filter parameters or things can be modified to bring the rounded profile within a desired matching threshold relative to the mask pattern. In this way, the filter can be developed for a particular lithography apparatus and process. For example, a filter can be developed for an apparatus with a higher NA value. Further, for example, when particular patterning sub-processes (e.g., involving imaging, resist, etching, etc.) affect corners or other portions of the profile differently during the patterning process, the ability to apply different filters to different segments of the profile is advantageous.
[0093] Figure 7 is a flowchart of a method 700 for generating a rounded profile of a pattern according to another embodiment. In embodiments, the method 700 can be implemented as processes P702, P704, P706, and P708, which are discussed in further detail below. The method 700 also provides advantages similar to the method 300. For example, according to the method 700, a two-dimensional profile is decomposed into two one-dimensional components, and each of these one-dimensional components can be processed separately to generate the rounded profile. In such processing, different corners in the two-dimensional profile can be distinguished from one another and a different filter can be applied to different corners.
[0094] Process P702 involves converting the contour representation 701 into a one-dimensional (ID) representation 703 using unit direction vectors and constraining the ID representation 703 to satisfy a constraint that is approximately proportional to the unit direction (e.g., ). For example, the ID representation 703 can be multiplied by a constant. And when a filter is applied to the ID representation, the result can be divided by the same constant. In an embodiment, the constraint is a uniform constraint that indicates a closed path of the unit direction vectors. In an embodiment, the conversion of the contour representation 701 involves: selecting a starting point on the contour representation 701; and converting a closed shape (e.g., a partially closed or fully closed shape) of the contour representation 701 into a straight line by unfolding the contour representation from the starting point.
[0095] For example, Figure 8A FIG. illustrates a contour representation 800, and Figure 8B FIG. illustrates the ID representation when the contour 800 is unfolded into a single dimension “s”. In Figure 8A , a starting point (x0, y0) is selected, and a unit direction vector that indicates a direction of travel along the contour 800 is drawn along the contour. For example, a unit direction (0 + i) indicates an upward vertical direction, (1 + 0i) indicates a rightward horizontal direction, (0 - 1i) indicates a downward vertical direction, (-1 + 0i) indicates a leftward horizontal direction, and (0 - i) indicates a direction that is vertically upward toward the starting point. Thus, using the unit direction vectors, the entire contour can be traversed. In an embodiment, lengths or magnitudes of edges along corresponding unit directions can be used to unfold the contour 800 to produce the ID representation 810 (see Figure 8B ). For example, a, b, c, d, and e indicate lengths of sections of the contour representation 800. The contour representation 800 is illustrated as having a rectangular shape, however, the present disclosure is not limited to such a shape. As another example, the contour representation 800 can be a contour of a curved shape, and the unit direction vectors can be drawn along the contour at multiple points to produce the ID representation.
[0096] Process P704 involves: (i) determining a first function 703a of the ID representation 703 by taking a gradient of the ID representation 703 with respect to a first dimension (e.g., x) (e.g., ); and determining a second function 703b of the ID representation 703 by taking another gradient of the ID representation 703 with respect to a second dimension (e.g., y) (e.g., ). Each of the first function 703a and the second function 703b also satisfies a constraint that is proportional to the unit direction. In an embodiment, the constraint is represented by , The components 703a and 703b represented by the contour representation collectively satisfy Figure 8C Fig. 1 illustrates a first function 821 in the first dimension and a second function 822 in the second dimension.
[0097] In an embodiment, the process P704 can further involve distinguishing different segments (e.g., corners, edges) of the contour representation 701. In an embodiment, distinguishing these corners can be achieved by performing an operation on the first function 703a and the second function 703b. For example, computing the sign function of the first function 703a and the second function 703b of the one-dimensional representation 703 yields positive values indicating a first type of corner (e.g., an inside corner) and negative values indicating a second type of corner (e.g., an outside corner). In an embodiment, for example, for a curved contour, the sine of the unit function can be used to distinguish different types of corners. For example, sin(du) / ds can be computed to distinguish corners of a curved contour. In other words, the sine function is applied so that the unit vector is changed. Since is a unit vector, the change in is an angle. This method of distinguishing corners can be applied to any type of pattern, such as a Manhattan pattern or a curved pattern.
[0098] In an embodiment, determining the first function 703a of the one-dimensional representation 703 involves generating a first unit step function in the first dimension based on the lengths of segments of the contour representation 701 in the first and second dimensions, and in a direction of travel along the contour representation 701. See, for example, the first function 821 in Figure 8C In an embodiment, the first function 703a of the one-dimensional representation 703 can be determined by computing a cosine function along the contour representation 701 using the angles between edges in the contour representation 701.
[0099] In an embodiment, determining the second function 703b of the one-dimensional representation 703 involves generating a second unit step function in the second dimension based on the lengths of segments of the contour representation 701 in the first and second dimensions, and in a direction of travel along the contour representation 701. See, for example, the second function 822 in Figure 8C In an embodiment, the second function 703b of the one-dimensional representation 703 can be determined by computing a sine function along the contour representation 701 using the angles between edges in the contour representation 701.
[0100] Process P706 involves filtering a first function 703a with a first filter F1 to obtain a filtered function; and filtering a second function 703b with a second filter F2 to obtain another filtered function. For example, applying the filter includes performing a convolution operation. In an embodiment, process P706 involves generating a first filtered function by convolving the first function 703a with the first filter F1; and generating a second filtered function by convolving the second function 703b with the second filter F1. In an embodiment, the first filtered function can be generated by convolving the first function 703a with the first filter F1, thereby rounding at least a portion of the shape represented by the first function 703a. In an embodiment, the second filtered function can be generated by convolving the second function 703b with the second filter, thereby rounding at least a portion of the shape represented by the second function 703b.
[0101] Figure 8D The diagram illustrates when the first function 703a (e.g.) When the second function 703b is convolved with the filter FLT1, a first filtered function 831 is generated. As an example, the filter FLT1 can be a Gaussian filter or a low-pass filter. Similarly, when the second function 703b (e.g., ...) is convolved with the filter FLT1, a first filtered function 831 is generated. When convolved with the filter FLT1, a second filtered function 832 is generated. Figure 8D As shown, each of the filtered functions 831 and 832 is rounded relative to the pre-filtered functions 821 and 822, respectively. As mentioned above, this disclosure is not limited to using the same filter in the first and second dimensions. In embodiments, different filters may be applied to different segments of the contour representation 800. For example, in distinguishing different segments of the contour representation (e.g., the inner corner and the outer corner), a first filter may be applied to the inner corner and a second filter may be applied to the second corner. For clarity, in some embodiments, the inner and outer corners are not distinguished by applying different filters. However, different processing of the two components (e.g., x and y of the contour representation) may be advantageous, for example in EUV, because the x-axis and y-axis may be processed differently due to the oblique incidence of light on the substrate caused by the mirrors used in EUV. In embodiments, such different processing may not be caused by the mask manufacturing process. Thus, in embodiments, different processing of the two components (e.g., x and y) may advantageously compensate for inaccuracies in mask corner modeling.
[0102] In an embodiment, generating the first filtered function and the second filtered function involves constraining the generating step to satisfy a first condition that the absolute value of a unit vector that is convolved with the first filter function and the second filter function is one or another constraint. The first condition can be expressed as where * indicates a convolution operation, is a unit vector of the one-dimensional representation included in the first dimension and the second dimension, and f includes the first filter F1 and the second filter F2. In an embodiment, a filtered function can be normalized based on a convolution operation between the unit vector and a corresponding filter. For example, a filtered function can be expressed as
[0103] In an embodiment, generating the first filtered function and the second filtered function involves constraining the generating operation to satisfy a second condition that a steady state response to a unit step function is unity or one. The second condition can be expressed as where * indicates a convolution operation, is a unit vector of the one-dimensional representation included in the first dimension and the second dimension, and f includes the first filter F1 and the second filter F2.
[0104] In an embodiment, may represent one period of a complex periodic function. The filter f will be applied to a periodic function that is generated by repeating Thus, one period of the resulting periodic function will be used to generate a rounded pattern.
[0105] The process P708 involves generating a rounded profile 720 of the mask pattern by combining the first filtered function and the second filtered function of the profile representation 701. In an embodiment, the first filtered function can be generated using a filter function for a first type of corner (e.g., the inner corner) and another filter function for a second type of corner (e.g., the outer corner). In an embodiment, generating the rounded profile 720 involves integrating the first filtered function along the length of the one-dimensional representation 703, integrating the second filtered function along the length of the one-dimensional representation 703, and combining the integrated functions to generate the rounded profile 720.
[0106] Figure 8E illustrates the profile representation 800( Figure 8AThe rounded profile 840 can be generated by combining the first filtered function 831 with the second filtered function 832 over the length of the profile representation 800. While functions 831 and 832 are combined, it is ensured that the path following the unit direction vector (u, v) is followed (e.g., by using the same method 300 or 700 as described above). Figure 8A The rounded profile 840 can be generated by combining the first filtered function 831 with the second filtered function 832 over the length of the profile representation 800. While functions 831 and 832 are combined, it is ensured that the path following the unit direction vector (u, v) is followed (e.g., by using the same method 300 or 700 as described above).
[0107] In embodiments, the rounded profile can be centered with respect to the original profile representation 701. For example, the center of the rounded profile 720 and the center of the profile representation 701 are determined, and the center of the rounded profile 720 and the center of the profile representation 701 are aligned with each other. In embodiments, the center of the original profile and the center of the profile obtained after filtering can be centered at the same point.
[0108] Figure 9 It is illustrated that the rounded profile obtained according to the present disclosure can advantageously not be affected by a rotation of the profile. In a first example, a profile 901 can be used to generate a rounded profile 910 by applying the method 700. In a second example, the profile 901 can be rotated by an amount Θ in a counter-clockwise direction to obtain a rotated profile 901r. This rotated profile 901r can be used to generate another rounded profile 915 by applying the same method 700. When the rounded profile 901r is rotated back to the original position by rotating it in a clockwise direction by the same amount Θ, the rounded profile 920 is obtained. Comparing the rounded profiles 920 and 910 shows that these rounded profiles are identical or substantially identical.
[0109] The methods herein can also involve a process of generating a mask design based on the rounded profile of the profile representation. For example, the method 300 or 700 can be integrated into a mask design process (e.g., SMO, OPC, etc.) to generate a mask pattern corresponding to a design layout. Figure 10 to Figure 13 The method 300 or 700 can be integrated into a mask design process (e.g., SMO, OPC, etc.) to generate a mask pattern corresponding to a design layout.
[0110] In embodiments, generating the mask design involves: (al) accessing a design layout comprising a plurality of profile representations; (bl) generating a rounded profile for each profile representation of the plurality of profile representations using the method 300 or 700; (cl) generating a mask pattern corresponding to the design layout based on the rounded profiles (e.g., according to a mask design process such as SMO, OPC, etc.). Figure 2(a1) Using the circularized profile to simulate the patterning process to generate a simulated profile associated with a semiconductor chip; (d2) Using a mask associated with the design layout to obtain a printed profile of the patterned substrate; (e1) Determining whether the simulated profile and the printed profile are within a matching threshold; and (f1) In response to a mismatch between the simulated profile and the printed profile, adjusting the parameters of the one or more filters and repeating steps (a1) to (f1).
[0111] In embodiments, methods 300 and 700 can be further extended to determine whether a simulated profile of the substrate satisfies design constraints. In embodiments, the process involves: (a2) accessing a design layout comprising multiple profile representations; (b2) using method 300 or 700 to generate a rounded profile for each of the multiple profile representations; (c2) (e.g., according to...) Figure 10 to Figure 13 (a2) Using the rounded profile to simulate and optimize the proximity effect correction process to generate a simulated profile associated with the substrate; (d3) determining whether the simulated profile meets the design specifications; and (e2) in response to the simulated profile not meeting the design specifications, adjusting the design layout and repeating steps (a2) to (e2).
[0112] In embodiments, methods 300 and 700 can be further extended to determine whether a mask rule checking (MRC) condition is met. In embodiments, the process involves: (a3) accessing a design layout comprising multiple contour representations; (b3) using method 300 or 700 to generate a rounded contour for each of the multiple contour representations; (c3) (e.g., according to...) Figure 10 to Figure 13 (a) The method in the middle uses the rounded profile to simulate the optimization proximity effect correction process to generate a mask pattern; (d3) determines whether the mask pattern satisfies the mask rule check (MRC) condition; and (e3) in response to the mask pattern not satisfying the MRC, adjusts the design layout and repeats steps (a3) to (e3).
[0113] In embodiments, the methods discussed herein may be provided as one or more computer program products or non-transitory computer-readable media having instructions recorded thereon that, when executed by a computer, perform operations according to method 300 or 700 discussed above. For example, Figure 14 An exemplary computer system CS includes a non-transitory computer-readable medium (e.g., memory) comprising instructions that, when executed by one or more processors (e.g., 104), cause operations for determining a rounded contour. According to this disclosure, combinations and sub-combinations of the disclosed elements or components constitute separate embodiments.
[0114] With respect to Figure 10 to Figure 13 Examples of mask optimization processes including OPC processes are discussed in further detail. These mask optimization processes can be modified as discussed with respect to the method 900 to enable mask design. In embodiments, the mask optimization process involves computing a cost function as a function of parameters associated with the lithography process and mask. For example, the mask features can be represented as design variables as discussed herein. These design variables will be affected due to changes based on the MRC violations detected by the detector.
[0115] According to the present disclosure, disclosed elements or combinations and subcombinations of elements form individual embodiments. For example, a first combination includes obtaining a detector and determining MRC violations associated with mask features. The subcombination can include a detector in a particular closed shape and size based on the mask features, where an MRC violation occurs when a portion of the mask feature is within the detector. In another subcombination, the detector can be a circular or non-circular shape. In another example, the combination includes determining a mask design based on MRC violations identified by a detector. The detector has a non-circular shape that detects width, space, and / or curvature violations.
[0116] In a lithography process, as an example, a cost function can be represented as:
[0117]
[0118] where (z1, z2, …, z N ) are N design variables or values of the N design variables. f p (z1, z2, …, z N ) can be a function of the design variables (z1, z2, …, z N ), such as a difference between an actual value of a characteristic at an estimation point for a set of values of the design variables (z1, z2, …, z N ) and an expected value. w p is a weight constant associated with f p (z1, z2, …, z N ). Estimation points or patterns that are more important than others can be assigned a larger w p value. Patterns and / or estimation points that have a larger number of occurrences can also be assigned a larger w p value. Examples of the estimation points can be any physical point or pattern on the substrate, an arbitrary point on a virtual design layout or resist image or aerial image, or a combination thereof. CF(z1, z2, …, z N) can also be a function of the illumination source, a function of a variable that influences or is a function of a variable that influences the illumination source. Of course, CF(z1, z2,..., z N ) is not limited to the form in equation 1. CF(z1, z2,..., z N ) can take any other suitable form.
[0119] The cost function can represent any one or more suitable characteristics of the lithography projection apparatus, lithography process, or the substrate, such as focus, CD, image shift, image distortion, image rotation, stochastic variation, throughput, local CD variation, process window, or a combination thereof. In one embodiment, the design variables (z1, z2,..., z N ) include one or more selected from dose, global bias of the patterning device, and / or shape of the illumination. N ) includes a bandwidth of the source. Since the resist image often dictates the pattern on the substrate, the cost function can include a function representing one or more characteristics of the resist image. For example, the f p (z1, z2,..., z N ) can simply be a distance between a point in the resist image and an expected position of that point (i.e., an edge placement error EPE p (z1, z2,..., z N )). The design variables can include any adjustable parameters, such as adjustable parameters of the source (e.g., intensity and shape), adjustable parameters of the patterning device, adjustable parameters of the projection optics, dose, focus, and so on.
[0120] The lithography apparatus can include components collectively referred to as "wavefront manipulators" that can be used to adjust the wavefront and intensity distribution and / or phase shift of the beam of radiation. In embodiments, the lithography apparatus can adjust the wavefront and intensity distribution at any location along the optical path of the lithography projection apparatus, such as before the patterning device, near a pupil plane, near an image plane, and / or near a focal plane. The wavefront manipulators can be used to correct or compensate for certain distortions in the wavefront and intensity distribution and / or phase shift caused by, for example, the source, the patterning device, temperature variations in the lithography projection apparatus, thermal expansion of components of the lithography projection apparatus, and so on. Adjusting the wavefront and intensity distribution and / or phase shift can change the values of the estimate points and the cost function. Such changes can be simulated according to a model, or actually measured.
[0121] The design variables can have constraints, which can be expressed as (z1, z2,..., z N) e Z, where Z is a set of possible values for the design variables. One possible constraint on the design variables can be imposed by a desired throughput of the lithographic projection apparatus. Without such a constraint imposed by a desired throughput, the optimization can result in an impractical set of values for the design variables. For example, if dose is a design variable, without such a constraint the optimization can result in a dose value that makes the throughput economically impossible. However, the usefulness of a constraint should not be interpreted as necessity. For example, the throughput can be affected by a pupil fill ratio. For some illumination designs, a lower pupil fill ratio can discard radiation, resulting in a lower throughput. The throughput can also be affected by resist chemistry. A slower resist (e.g., a resist that requires a higher amount of radiation to be properly exposed) results in a lower throughput. In an embodiment, the constraint on the design variables is such that the design variables cannot have a value that changes any geometric characteristic of the patterning device, i.e., the pattern on the patterning device will remain unchanged during the optimization.
[0122] Thus, the optimization process is to find a set of values of one or more design variables of the optimization cost function under the constraint (z1, z2,..., zn) e Z, e.g., to find: N ) e Z, where Z is a set of possible values for the design variables. One possible constraint on the design variables can be imposed by a desired throughput of the lithographic projection apparatus. Without such a constraint imposed by a desired throughput, the optimization can result in an impractical set of values for the design variables. For example, if dose is a design variable, without such a constraint the optimization can result in a dose value that makes the throughput economically impossible. However, the usefulness of a constraint should not be interpreted as necessity. For example, the throughput can be affected by a pupil fill ratio. For some illumination designs, a lower pupil fill ratio can discard radiation, resulting in a lower throughput. The throughput can also be affected by resist chemistry. A slower resist (e.g., a resist that requires a higher amount of radiation to be properly exposed) results in a lower throughput. In an embodiment, the constraint on the design variables is such that the design variables cannot have a value that changes any geometric characteristic of the patterning device, i.e., the pattern on the patterning device will remain unchanged during the optimization.
[0123]
[0124] Figure 10A general method of optimization according to embodiments is illustrated in Figure 3. The method comprises a step S302 of defining a multivariate cost function of a plurality of design variables. The design variables can comprise any suitable combination of design variables selected from one or more characteristics of illumination (300A) (e.g. a pupil fill ratio, i.e. the percentage of the illumination’s radiation that passes through the pupil or aperture), one or more characteristics of the projection optics (300B) and / or one or more characteristics of the design layout (300C). For example, the design variables can comprise design variables representing one or more characteristics of illumination (300A) (e.g. that are or include a bandwidth) and one or more characteristics of the design layout (300C) (e.g. global bias) but not design variables representing one or more characteristics of the projection optics (300B), which results in illumination-patterning device (e.g. mask) optimization (“source-mask optimization” or SMO). Alternatively, the design variables can comprise design variables representing one or more characteristics of the illumination (300A) (optionally, polarization), one or more characteristics of the projection optics (300B) and one or more characteristics of the design layout (300C), which results in illumination-patterning device (e.g. mask)-projection system (e.g. lens) optimization (“source-mask-lens optimization” or SMLO). Alternatively the design variables can comprise design variables representing one or more characteristics of the illumination (300A) (e.g. that are or include the bandwidth), one or more non-geometric characteristics of the patterning device or one or more characteristics of the projection optics (300B) but not any geometric characteristics of the patterning device. In step S304, the design variables are adjusted simultaneously such that the cost function moves towards convergence. In embodiments, not all design variables can be adjusted simultaneously. Each design variable can also be adjusted individually. In step S306, it is determined whether a predetermined termination condition is met. The predetermined termination condition can comprise various possibilities, for example one or more selected from: the cost function is minimized or maximized according to the needs of the numerical technique used; the value of the cost function is equal to or crosses a threshold value; the value of the cost function reaches within a preset error limit; and / or a preset number of iterations is reached. If the condition in step S306 is met, the method ends. If the one or more conditions in step S306 are met, the steps S304 and S306 are iteratively repeated until a desired result is obtained. The optimization does not necessarily result in a single set of values for the one or more design variables, as there can be physical constraints resulting from factors such as pupil fill factor, resist chemistry, production volume, etc.The optimization can provide a plurality of sets of values for the one or more design variables and associated performance characteristics (e.g., the throughput) and allow a user of the lithographic apparatus to select one or more sets or collections.
[0125] Different subsets or groups of the design variables (e.g., one subset comprising characteristics of the illumination, one subset comprising characteristics of the patterning device, and one subset comprising characteristics of the projection optics) can be optimized alternately (referred to as alternating optimization) or simultaneously (referred to as simultaneous optimization). Thus, two subsets of design variables being "simultaneously" or "jointly" optimized means that the design variables of both subsets are allowed to change at the same time. As used herein, two subsets of design variables being "alternately" optimized means that the design variables of the first subset but not the second subset are allowed to change in the first optimization, and then the design variables of the second subset but not the first subset are allowed to change in the second optimization.
[0126] In Figure 10 all optimization of design variables is performed simultaneously. Such a flow can be referred to as a simultaneous flow or a joint optimization flow. Alternatively, optimization of all design variables is performed alternately, as illustrated in Figure 11 In such a flow, in each step some design variables are fixed while the other design variables are optimized to optimize a cost function; then in the next step a different set of variables is fixed while the other set of variables is optimized to minimize or maximize the cost function. These steps are performed alternately until a convergence or some termination condition is met. As Figure 11As shown in the non-limiting exemplary flowchart, first, a design layout is obtained (step S402), then, in step S404, the step of illumination optimization is performed, in which one or more design variables of the illumination (SO) (e.g., bandwidth) are optimized to minimize or maximize a cost function while other design variables are fixed. Next, in step S406, the step of projection optics optimization (LO) is performed, in which design variables of the projection optics are optimized to minimize or maximize a cost function while other design variables are fixed. These two steps are alternately performed until a certain termination condition is met in step S408. One or more various termination conditions can be used, such as the value of the cost function becomes equal to a threshold value, the value of the cost function crosses a threshold value, the value of the cost function reaches within a preset error limit, a preset number of iterations is reached, etc. It is noted that the SO-LO alternating optimization is used as an example of the alternative flow. As another example, a first illumination-patterning device co-optimization (SMO) or illumination-patterning device-projection optics co-optimization (SMLO) can be performed while not allowing the bandwidth to change, followed by a second SO or illumination-projection optics co-optimization (SLO) that allows the bandwidth to change. Finally, in step S410, the output of the optimization result is obtained, and the process stops.
[0127] The pattern selection algorithm, as discussed previously, can be integrated with the simultaneous or alternating optimization. For example, when the alternating optimization is employed, first, a full-chip SO can be performed, identifying one or more "hot spots" and / or "warm spots", followed by the LO. Numerous permutations and combinations of sub-optimizations are possible in order to achieve the desired optimization result, in view of the present disclosure.
[0128] Figure 12AAn exemplary optimization method is shown in which a cost function is minimized or maximized. In step S502, initial values of one or more design variables are obtained, including one or more associated tuning ranges if present. In step S504, a multivariate cost function is set up. In step S506, the cost function is expanded within a sufficiently small neighborhood around the starting values of the one or more design variables for the first iteration step (i = 0). In step S508, standard multivariate optimization techniques are applied to the cost function. It is noted that constraints, such as one or more tuning ranges, can be imposed during the optimization process in S508 or later in the optimization process. Step S520 indicates that each iteration is performed for one or more given test patterns (also referred to as "gauges") for the identified evaluation points that have been selected for optimization of the lithographic process. In step S510, the lithographic response is predicted. In step S512, the result of step S510 is compared to the desired or ideal lithographic response values obtained in step S522. If the termination condition is met in step S514, i.e. the optimization yields a lithographic response value sufficiently close to the desired value, then the final values of the design variables are output in step S518. The output step can also include outputting one or more other functions using the final values of the design variables, such as outputting a map of wavefront aberration adjustments at the pupil plane (or other plane), an optimized illumination map, and / or an optimized design layout, etc. If the termination condition is not met, then in step S516 the values of the one or more design variables are updated with the results of the i-th iteration, and the process returns to step S506. The process is set out in more detail below. Figure 12A
[0129] In the exemplary optimization process, no assumptions or approximations are made regarding the relationship between the design variables (z1, z2,..., z N ) and f p (z1, z2,..., z N ) other than that f p (z1, z2,..., z N ) is sufficiently smooth (e.g. a first derivative exists). An algorithm can be applied to find the algorithm such as a Gauss-Newton algorithm, a Levenberg-Marquardt algorithm, a Broyden-Fletcher-Goldfarb-Shanno algorithm, a gradient descent algorithm, a simulated annealing algorithm, an interior point algorithm, and a genetic algorithm.
[0130] Here, the Gauss-Newton algorithm is used as an example. The Gauss-Newton algorithm is an iterative method applicable to general nonlinear multivariable optimization problems. In the design variables (z1, z2, ..., z...),... N Take (z) 1i , z 2i , ..., z Ni In the i-th iteration of the value of ), the Gauss-Newton algorithm finds the value of (z). 1i , z 2i , ..., z Ni Linearization of f in the neighborhood of ) p (z1, z2, ..., z N ), and then calculate (z) 1i ,z2i,...,z Ni Given the neighborhood of CF(z1, z2, ..., z), N The minimum value of (z) 1(i+1) , z 2(i+1) , ..., z N(i+1) Design variables (z1, z2, ..., z) N In the (i+1)th iteration, take (z) 1(i+1) , z 2(i+1) , ..., z N(i+1) The value of ) is determined. This iteration continues until convergence (i.e., CF(z1, z2, ..., z) is achieved). N (The number of iterations will no longer decrease) or reach the preset number of iterations.
[0131] Specifically, in the i-th iteration, in (z 1i z2, ..., z Ni In the neighborhood of ),
[0132]
[0133] Under the approximation of Equation 3, the cost function becomes:
[0134]
[0135] Equation 4 is the design variables (z1, z2, ..., z...). N A quadratic function of . Except for the design variables (z1, z2, ..., z...). N Apart from that, each term is a constant.
[0136] If the design variables are (z1, z2, ..., z...) N If (z) is not under any constraints, then (z) 1(i+1) , z 2(i+1) , ..., z N(i+1) This can be derived by solving N linear equations:
[0137] Where gates = 1, 2, ... N.
[0138] If the design variables are (z1, z2, ..., z...) N In the case of J inequalities (e.g., (z1, z2, ..., z...), ... N Under the constraints of the tuning range of ) Where j = 1, 2, ... J; and under the constraints of K equations (e.g., the interdependencies between design variables). Where k = 1, 2, ... K, the optimization process becomes a classic quadratic programming problem, where A nj B j C nk D k It is a constant. Additional constraints can be imposed for each iteration. For example, a "damping factor" Δ can be introduced. D To limit (z) 1(i+1) , z 2(i+1) , ..., z N(i+1) ) and (z 1i , z 2i , ..., z Ni The difference between z and z makes the approximation of equation 3 hold. This constraint can be expressed as z ni -Δ D ≤z n ≤z ni +Δ D The method described, for example, in Jorge Nocedal and Stephen J. Wright's *Numerical Optimization* (2nd edition, Berlin-New York: Van den Berg, Cambridge University Press) can be used to derive (z). 1(i+1) , z 2(i+1) , ..., z N(i+1) ).
[0139] The substitution makes f p (z1, z2, ..., z N The optimization process minimizes the RMS of the evaluation points, reducing the magnitude of the maximum deviation (worst-case defect) to their expected value. In such a method, the cost function can alternatively be expressed as:
[0140]
[0141] Among them, CL p It is aimed at f p (z1, z2, ..., z NThe maximum allowable value of the cost function. This cost function represents the worst defect among the evaluation points. Optimization using this cost function minimizes the magnitude of the worst defect. Iterative greedy algorithms can be used for this optimization.
[0142] The cost function of Equation 5 can be approximated as:
[0143]
[0144] Where q is an even positive integer, such as at least 4 or at least 10. Equation 6 mimics the behavior of Equation 5, while allowing for analytical optimization and speeding up the optimization process by using methods such as the deepest descent method, the conjugate gradient method, etc.
[0145] Minimizing the size of the worst-case defect can also be related to f p (z1, z2, ..., z N A linearized combination of f. Specifically, as in Equation 3, the approximation of f. p (z1, z2, ..., z N Next, the constraint on the worst-case defect size is written as inequality E. Lp ≤f p (z1, z2, ..., z N )≤E Up , of which E Lp and E Up Is it specified f p (z1, z2, ..., z N The minimum and maximum allowable deviations are two constants. Substituting these into Equation 3, these constraints are transformed into the following equation: (where p = 1, ..., P),
[0146]
[0147] and
[0148]
[0149]
[0150] Because equation 3 is usually only in (z) 1i , z 2i , ..., z Ni It is valid in the neighborhood of ), so the desired constraint E cannot be achieved in such a neighborhood. Lp ≤f p (z1, z2, ..., z N )≤E Up In the case that (which can be determined by any conflict in the inequalities stated therein), the constant E can be relaxed. Lp and EUp The constraints can be achieved until. This optimization procedure minimizes (z1, z2,..., z N ), the worst defect size in the neighborhood of i. Then, each step progressively reduces the worst defect size, and each step is iteratively performed until certain termination conditions are met. This leads to an optimized reduction of the worst defect size.
[0151] Another way to minimize the worst defect is to adjust the weight w p at each iteration. For example, after the ith iteration, if the rth evaluation point is the worst defect, w r may be increased in the (i+1)th iteration, so that the reduction of the defect size of the evaluation point is given a higher priority.
[0152] Additionally, the cost functions in equation 4 and equation 5 can be modified by introducing a Lagrange multiplier to achieve a trade-off between the optimization of the RMS of the defect size and the optimization of the worst defect size, i.e.,
[0153]
[0154] where λ is a pre-set constant that specifies the trade-off between the optimization of the RMS of the defect size and the optimization of the worst defect size. Specifically, if λ = 0, the equation becomes equation 4, and only the RMS of the defect size is minimized; while if λ = 1, the equation becomes equation 5, and only the worst defect size is minimized; if 0 < λ < 1, both cases are considered in the optimization. Various methods can be used to solve this optimization. For example, similar to the method described previously, the weighting in each iteration can be adjusted. Alternatively, similar to minimizing the worst defect size from the inequality, the inequalities of equation 6' and 6" can be treated as constraints of the design variables during the solution of the quadratic programming problem. Then, the bound on the worst defect size can be incrementally relaxed, or the weight for the worst defect size can be incrementally increased, the cost function value for each achievable worst defect size is calculated, and the design variable value that minimizes the overall cost function is selected as the initial point for the next step. By iteratively doing this, the minimization of this new cost function can be achieved.
[0155] Optimizing a lithographic projection apparatus can extend the process window. A larger process window provides more flexibility in process design and chip design. The process window can be defined as a set of focal length, dose, chromatic aberration, laser bandwidth (e.g., E95 or (λmin to λmax) and fare specific to intensity values that e.g. cause a resist image to be within some limit of a design target for the resist image. It is noted that all methods discussed here can also be extended to a generalized process window definition that can be established by different or additional base parameters than exposure dose and defocus. These base parameters can include, but are not limited to, optical settings such as NA, sigma, aberrations, polarization or optical constants of the resist layer. For example, if the process window (PW) also includes different patterning device pattern aberrations (mask aberrations) as described earlier, the optimization includes minimization of a mask error enhancement factor (MEEF) defined as the ratio between a substrate edge placement error (EPE) and an induced patterning device pattern edge aberration. The process window defined by focal length and dose values is used in this disclosure only as an example.
[0156] A method according to an example is described below that maximizes the process window using e.g. dose and focal length as its parameters. In a first step, starting from a known condition (f0, ε0) in the process window (where f0 is the nominal focal length and ε0 is the nominal dose), one minimizes one of the cost functions below in a field (f0±Δf, ε0±Δε):
[0157]
[0158] or
[0159]
[0160] or
[0161]
[0162]
[0163] If the nominal focal length f0 and the nominal dose ε0 are allowed to shift, they can be optimized jointly with the design variables (z1, z2,..., z N In a next step, if a set of values for (z1, z2,..., z N , f, ε) can be found such that the cost function is within a preset limit, then (f0±Δf, ε0±Δε) is accepted as part of the process window.
[0164] If no shift in focal length and dose is allowed, the design variables (z1, z2,..., z N ) are optimized with the focal length and dose fixed at the nominal focal length f0and nominal dose ε0. In alternative embodiments, if a set of values of (z1, z2,..., z N ) can be found such that the cost function is within a preset limit, then (f0± Δf, ε0± Δε) is accepted as part of the process window.
[0165] The methods described herein in the foregoing can be used to minimize the respective cost functions of equation 7, 7' or 7". If the design variables represent one or more characteristics of the projection optics, such as Zernike coefficients, then minimizing the cost function of equation 7, 7' or 7" results in a process window maximization based on projection optics optimization (i.e. LO). If the design variables represent one or more characteristics of the illumination and patterning device in addition to characteristics of the projection optics, then minimizing the cost function of equation 7, 7' or 7" results in a process window maximization based on SMLO, as illustrated in Figure 10 If the design variables represent one or more characteristics of the source and patterning device, then minimizing the cost function of equation 7, 7' or 7" results in a process window maximization based on SMO. The cost function of equation 7, 7' or 7" can also include at least one f p (z1, z2,..., z N ), such as the f p (z1, z2,..., z N ) described herein, which is a function of the bandwidth. p (z1, z2,..., z N ).
[0166] Figure 13One particular example showing how a simultaneous SMLO process can use gradient-based optimization (e.g., quasi-Newton or Gauss-Newton methods) is shown. In step S702, starting values for one or more design variables are identified. A tuning range for each variable can also be identified. In step S704, a cost function is defined using the one or more design variables. In step S706, the cost function is expanded around the starting values for all evaluation points in the design layout. In step S708, a suitable optimization technique is applied to maximize or minimize the cost function. In optional step S710, full chip simulation is performed to cover all critical patterns in the full chip design layout. The desired lithographic response metrics (such as CD, EPE, or EPE and PPE) are obtained in step S714, and compared to the predicted values of those metrics in step S712. In step S716, the process window is determined. Steps S718, S720, and S722 are similar to corresponding steps S514, S516, and S518 as described with respect to Figure 12A
[0167] Figure 12B An exemplary method to optimize a cost function is shown, where the design variables (z1, z2,..., zn) include design variables that can only take discrete values. N
[0168] The method starts by defining pixel groups of the illumination and patterning device pattern tiles of the patterning device (step S802). Typically, a pixel group or a patterning device pattern tile can also be referred to as a division of a lithographic process constituent. In one exemplary method, the illumination is divided into 117 pixel groups, and 94 patterning device pattern tiles are defined for the patterning device (roughly as described above), resulting in a total of 211 divisions.
[0169] In step S804, a lithography model is selected as a basis for lithography simulation. The lithography simulation produces a calculated result or response for one or more lithography metrics. A particular lithography metric is defined as the performance metric to be optimized (step S806). In step S808, initial (pre-optimization) conditions for the illumination and the patterning device are set. The initial conditions include an initial state of the pixel groups for the illumination and the patterning device pattern tiles, so that the initial illumination shape and the initial patterning device pattern can be referenced. The initial conditions can also include patterning device pattern bias (sometimes also referred to as mask bias), NA, and / or focus ramp range (or focus ramping range). Although steps S802, S804, S806, and S808 are depicted as consecutive steps, it will be appreciated that in other embodiments these steps can be performed in other orders.
[0170] In step S810, the pixel groups and the patterning device pattern tiles are ordered. The pixel groups and the patterning device pattern tiles can be alternated in the ordering. Various ordering approaches can be used, including: consecutively (e.g., from pixel group 1 to pixel group 117 and from patterning device pattern tile 1 to patterning device pattern tile 94), randomly, according to the physical location of the pixel groups and patterning device pattern tiles (e.g., ordering pixel groups closer to the center of the illumination higher), and / or according to how changes to the pixel groups or patterning device pattern tiles affect the performance metric.
[0171] Once the pixel groups and the patterning device pattern tiles are ordered, the illumination and the patterning device are adjusted to improve the performance metric (step S812). In step S812, each of the pixel groups and the patterning device pattern tiles are analyzed in the order of the ordering to determine whether a change to the pixel group or the patterning device pattern tile will result in an improved performance metric. If it is determined that the performance metric will be improved, the pixel group or the patterning device pattern tile is changed accordingly, and the resulting improved performance metric and the modified illumination shape or the modified patterning device pattern are used as a baseline for comparison for subsequent analysis of lower ordered pixel groups and patterning device pattern tiles. In other words, the change that improves the performance metric is retained. As changes to the state of the pixel groups and the patterning device pattern tiles are made and retained, the initial illumination shape and the initial patterning device pattern are changed accordingly, so that the modified illumination shape and the modified patterning device pattern result from the optimization process in step S812.
[0172] In other approaches, patterning device polygon shape adjustment and paired polling of pixel groups and / or patterning device pattern tiles are also performed within the optimization process of S812.
[0173] In an embodiment, the alternating simultaneous optimization procedure can include varying the pixel group that is illuminated, and if an improvement in the performance metric is found, then the dose or intensity is stepped up and / or down to find further improvements. In another embodiment, the stepping up and / or down of the dose or intensity can be replaced by varying the offset of the patterning device pattern to find further improvements in the simultaneous optimization procedure.
[0174] In step S814, it is determined whether the performance metric has converged. For example, the performance metric can be considered to have converged if little or no improvement in the performance metric has been witnessed in the last few iterations of steps S810 and S812. If the performance metric has not converged, steps S810 and S812 are repeated in the next iteration, with the modified illumination shape and modified patterning device from the current iteration being used as the initial illumination shape and initial patterning device for the next iteration (step S816).
[0175] The optimization methods described above can be used to increase the throughput of a lithographic projection apparatus. For example, the cost function can include f p (z1, z2,..., z N ). In an embodiment, the optimization of such a cost function is subject to constraints or influenced by a measure of bandwidth or other metric.
[0176] Figure 14 To illustrate a block diagram of a computer system 100 that can assist in performing the optimization methods and processes 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. The 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 information and instructions to be executed by processor 104. Main memory 106 also can be used for storing temporary variables or other intermediate information during execution of instructions to be executed by processor 104. The 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, is provided and coupled to bus 102 for storing information and instructions.
[0177] 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, is 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
[0178] In accordance with one embodiment of the present application, portions of the optimization process 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.
[0179] 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, a FLASH-EPROM, any other memory chip or cartridge, a carrier wave
[0180] Various forms of computer readable media can be involved in carrying one or more sequences of one or more instructions to the processor 104 for execution. For example, the instructions can initially be carried on a magnetic disk of a remote computer. The remote computer can load the instructions into its dynamic memory and send the instructions over a telephone line using a modem. A modem local to the computer system 100 can receive the data on the telephone line and use an infra-red transmitter to convert the data to an infra-red signal. An infra-red detector coupled to the bus 102 can receive the data carried in the infra-red signal and place the data on the bus 102. The bus 102 carries the data to the main memory 106, from which the processor 104 retrieves and executes the instructions. The instructions received by the main memory 106 can optionally be stored on storage device 110 either before or after execution by the processor 104.
[0181] The computer system 100 can also include a communications interface 118 coupled to bus 102. Communications interface 118 provides a two-way data communication coupling to a network link 120 that is connected to a local network 122. For example, communications interface 118 can be an integrated services digital network (ISDN) card or a modem to provide a data communication connection to a corresponding type of telephone line. As another example, communications interface 118 can be a local area network (LAN) card to provide a data communication connection to a compatible LAN. Wireless links can also be implemented. In any such implementation, communications interface 118 sends and receives electrical, electromagnetic or optical signals that carry digital data streams representing various types of information.
[0182] Network link 120 typically provides data communication through one or more networks to other data devices. For example, network link 120 can provide a connection through local network 122 to a host computer 124 or to data equipment operated by an Internet Service Provider (ISP) 126. ISP 126 in turn provides data communication services through the world wide packet data communication network now commonly referred to as the "Internet" 128. Local network 122 and Internet 128 both use electrical, electromagnetic or optical signals that carry digital data streams. The signals through the various networks and the signals on network link 120 and through communications interface 118, which carry the digital data to and from computer system 100, are exemplary forms of carrier waves transporting the digital data.
[0183] The computer system 100 can send messages and receive data, including program code, through the one or more networks, network links 120, and communication interface 118. In the Internet example, a server 130 might transmit a requested code for an application program through the Internet 128, the ISP 126, the local network 122 and the communication interface 118. One such downloaded application can provide for illumination optimization, for example, of an embodiment. The received code can be executed by a processor 104 as it is received, and / or stored in storage device 110, or other non-volatile storage for later execution. In this manner, computer system 100 can obtain application code in the form of a carrier wave.
[0184] Figure 15 An exemplary lithographic projection apparatus of which the illumination can be optimized using the methods described herein is schematically depicted. The apparatus includes:
[0185] - an illumination system IL configured to condition a radiation beam B. In this particular case, the illumination system also includes a radiation source SO;
[0186] - a first object table (e.g., a patterning device table) MT provided with a patterning device holder for holding a patterning device MA (e.g., a mask) and connected to a first positioner for accurately positioning the patterning device in relation to an article PS;
[0187] - a second object table (substrate table) WT provided with a substrate holder for holding a substrate W (e.g., a resist-coated silicon wafer) and connected to a second positioner for accurately positioning the substrate in relation to the article PS;
[0188] - a projection system ("lens") PS (e.g., a refractive, catoptric, or catadioptric optical system) configured to image an irradiated portion of the patterning device MA onto a target portion C (e.g., including one or more dies) of the substrate W.
[0189] As depicted herein, the apparatus is of a transmissive type (i.e., has a transmissive patterning device). Generally, however, the apparatus can also be of a reflective type, e.g., (having a reflective patterning device). The apparatus can employ various kinds of patterning devices other than masks; examples include programmable mirror arrays or LCD matrices.
[0190] A source SO (e.g., a mercury lamp or excimer laser, LLP (laser produced plasma), EUV source) produces a beam of radiation. This beam is fed into the illumination system (illuminator) IL either directly or after having traversed adjustment means such as a beam expander Ex, for example. The illuminator IL can include an adjustment device AD for setting the outer and / or inner radial extent (commonly referred to as σouter and σinner, respectively) of the intensity distribution in the beam. In addition, the illuminator IL generally includes various other components, such as an integrator IN and a condenser CO. In this manner, the beam B impinging on the patterning device MA has a desired uniformity and intensity distribution in its cross-section.
[0191] With regard to Figure 15 It should be noted that the source SO can be within the housing of the lithographic projection apparatus (as is often the case when the source SO is a mercury lamp, for example), but that it can also be remote from the lithographic projection apparatus, the radiation beam of which source SO is fed into the apparatus (e.g., with the aid of suitable directing mirrors); this latter scenario is often the case when the source SO is an excimer laser (e.g., based on KrF, ArF or F2laser action).
[0192] The beam PB is subsequently intercepted by the patterning device MA held on the patterning device table MT. After having traversed the patterning device MA, the beam B passes through the lens PL which focuses the beam B onto a target portion C of the substrate W. By means of the second positioning device (and interferometer measurement device IF), it is possible to move the substrate table WT accurately for example in order to position different target portions C in the path of the beam PB. Similarly, the first positioning device can be used to accurately position the patterning device MA in the path of the beam B, e.g. after mechanical fetching of the patterning device MA from the patterning device library, or during a scan. Usually, the movement of the substrate table WT will be much less frequent than the movement of the patterning device table MT. Figure 15 The movement of the tables MT, WT can be realized with the aid of long-stroke modules (coarse positioning) and short-stroke modules (fine positioning), which are not explicitly depicted in the
[0193] The depicted tools can be used in two different modes:
[0194] - in a step mode, the patterning device table MT is held substantially still and an entire patterning device image is projected (i.e., in a single "flash") onto the target portion C. The substrate table WT is then displaced in the x- and / or y-direction so that a different target portion C can be irradiated by the beam PB;
[0195] - in a scanning mode, essentially the same situation applies, except that the given target portion C is not exposed in a single "flash". Rather, the patterning device table MT is moved with a speed v in the given direction (the so-called "scanning direction", for example the y direction) such that the projection beam B scans over the patterning device image; at the same time, the substrate table WT is moved simultaneously in the same or opposite direction with a speed V = Mv, where M is the magnification of the lens PL (typically M = 1 / 4 or = 1 / 5). In this way, a relatively large target portion C can be exposed without necessarily compromising the resolution.
[0196] Figure 16 Another exemplary lithographic projection apparatus 1000 is schematically depicted, the illumination of which can be optimized using the methods described herein.
[0197] The lithographic projection apparatus 1000 comprises:
[0198] - a source collector module SO;
[0199] - an illumination system (illuminator) IL configured to condition a radiation beam B (e.g., EUV radiation);
[0200] - a support structure (e.g., a patterning device table) MT constructed to support a patterning device (e.g., a mask or a reticle) MA and connected to a first positioner PM configured to accurately position the patterning device;
[0201] - a substrate table (e.g., a wafer table) WT constructed to hold a substrate (e.g., a resist-coated wafer) W, and connected to a second positioner PW configured to accurately position the substrate; and
[0202] - a projection system (e.g., a reflective projection system) PS configured to project a pattern imparted to the radiation beam B by patterning device MA onto a target portion C (e.g., comprising one or more dies) of the substrate W.
[0203] As shown here, the apparatus 1000 is reflective (e.g., employs a reflective patterning device). It should be noted that due to the high absorptivity of most materials at EUV wavelengths, the patterning device can have a multilayer reflector comprising, for example, 40 layers of molybdenum and silicon, alternatingly deposited. In one example, the multilayer reflector has a 40 layer pair of molybdenum and silicon, where each layer is a quarter wave thick. Even smaller wavelengths can be produced with X-ray lithography. Since most materials are absorptive at EUV and X-ray wavelengths, a thin piece of patterned absorptive material (e.g., a TaN absorber on top of the multilayer reflector) on the patterning device topography defines the areas where the features will (positive resist) or will not (negative resist) be printed to.
[0204] With reference to Figure 16 The illuminator IL receives a extreme ultraviolet radiation beam from the source collector module SO. Methods to produce EUV radiation include, but are not necessarily limited to, converting a first element (e.g., xenon, lithium or tin) into a plasma state at a resonance frequency of the first element using a second element (e.g., laser produced plasma ("LPP"), discharge produced plasma ("DPP"), or the like). In one such method (often termed LPP) a fuel (e.g., a droplet, stream, or cluster of material having a spectral line of the desired element) is irradiated by a laser beam to create the plasma. The source collector module SO can be part of an EUV radiation system including a laser for providing the laser beam used to Figure 16 irradiate the fuel (not shown in FIG. 1). The resulting plasma emits output radiation (e.g., EUV radiation) that is collected using a radiation collector, disposed in the source collector module. The laser and the source collector module can be separate entities, for example, when a CO2 laser is used to provide the laser beam to the fuel to form the plasma.
[0205] In such cases, the laser is not considered to form part of the lithographic apparatus and the radiation beam is passed from the laser to the source collector module with the aid of a beam delivery system comprising, for example, suitable directing mirrors and / or a beam expander. In cases where the source is a discharge produced plasma EUV generator, often termed a DPP source, the source can be an integral part of the source collector module.
[0206] The illuminator IL can comprise an adjuster for adjusting the angular intensity distribution of the radiation beam. Generally, at least the outer and / or inner radial extent of the intensity distribution in a pupil plane of the illuminator can be adjusted. In addition, the illuminator IL can comprise various other components, such as facetted field and pupil mirror devices. The illuminator can be used to adjust the angular range over which an intensity pattern is radiated from the lithographic apparatus.
[0207] The radiation beam B is incident on the pattern forming apparatus (e.g., a mask) MA held on a support structure (e.g., a pattern forming apparatus stage) MT, and a pattern is formed by the pattern forming apparatus. After being reflected by the pattern forming apparatus (e.g., the mask) MA, the radiation beam B is focused onto a target portion C of the substrate W by a projection system PS. With the aid of a second locator PW and a position sensor PS2 (e.g., an interferometer, a linear encoder, or a capacitive sensor), the substrate stage WT can be precisely moved, for example, to position different target portions C in the path of the radiation beam B. Similarly, the first locator PM and another position sensor PS1 can be used to accurately position the pattern forming apparatus (e.g., the mask) MA relative to the path of the radiation beam B. The pattern forming apparatus (e.g., the mask) MA and the substrate W can be aligned using pattern forming apparatus alignment marks M1, M2 and substrate alignment marks P1, P2.
[0208] The depicted device 1000 can be used in at least one of the following modes:
[0209] 1. In step mode, while projecting the entire pattern applied to the radiation beam onto the target portion C in one pass, the support structure (e.g., patterning apparatus stage) MT and the substrate stage WT are kept substantially stationary (i.e., single static exposure). Subsequently, the substrate stage WT is shifted in the X and / or Y directions so that different target portions C can be exposed.
[0210] 2. In scanning mode, while projecting the pattern applied to the radiation beam onto the target portion C, the support structure (e.g., patterning apparatus stage) MT and the substrate stage WT are scanned simultaneously (i.e., single dynamic exposure). The speed and direction of the substrate stage WT relative to the support structure (e.g., patterning apparatus stage) MT can be determined by the magnification (reduction) and image inversion characteristics of the projection system PS.
[0211] 3. In another mode, the support structure (e.g., the patterning stage) MT of the programmable patterning apparatus is kept substantially stationary, and the substrate stage WT is moved or scanned while the pattern imparted to the radiation beam is projected onto the target portion C. 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 successive 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.
[0212] Figure 17To show the apparatus 1000 in more detail, the apparatus includes a source collector module SO, an illumination system IL, and a projection system PS. The source collector module SO is constructed and arranged such that a vacuum environment can be maintained in an enclosing structure 220 of the source collector module SO. An EUV radiation-emitting plasma 210 can be formed by a discharge produced plasma source for generating EUV radiation. An EUV radiation-emitting plasma 210 can be produced by a gas or vapor, such as Xe gas, Li vapor or Sn vapor, in which a plasma 210 is created by an electrical discharge, wherein very hot plasma 210 is created which emits radiation in the EUV range of the electromagnetic spectrum. The very hot plasma 210 is created, for example, by a discharge between an anode and a cathode. For high efficiency of EUV radiation production, a partial pressure of Xe, Li, Sn vapor or any other suitable gas or vapor can be in the range of 10 Pa.
[0213] Radiation emitted by the hot plasma 210 passes from a source chamber 211 into a collector chamber 212 via an optional gas barrier or contaminant trap 230 (also referred to as contaminant barrier or foil trap in some instances) positioned in or behind an opening in the source chamber 211. The contaminant trap 230 can include a channel structure. The contaminant trap 230 can also include a gas barrier or a combination of a gas barrier and a channel structure. The contaminant trap or contaminant barrier 230 as further indicated herein at least includes a channel structure, as is known in the art.
[0214] The collector chamber 211 can include a radiation collector CO, which can 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 that traverses the collector CO can be reflected from a grating spectral filter 240 to be focused on a virtual source point IF along an optical axis indicated by dotted line "O". The virtual source point IF is typically 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 enclosing structure 220. The virtual source point IF is an image of the radiation-emitting plasma 210.
[0215] Subsequently, the radiation traverses an illumination system IL which can include a facetted field mirror device 22 and a facetted pupil mirror device 24 arranged to provide a desired angular distribution of the radiation beam 21, at the patterning device MA, as well as a desired uniformity of radiation intensity at the patterning device MA. Upon reflection of the beam of radiation 21 at the patterning device MA, held by the support structure MT, a patterned beam 26 is formed and the patterned beam 26 is imaged by the projection system PS via reflective elements 28, 30 onto a substrate W held by the substrate table WT.
[0216] More elements than shown can generally be present in the illumination optics unit IL and the projection system PS. Depending on the type of the lithography apparatus, a grating spectral filter 240 can be optionally present. Also, more mirrors than shown in the respective figures can be present, for example, in the projection system PS, there can be 1 to 6 additional reflective elements than the reflective elements shown in the figures. Figure 17
[0217] As Figure 17 The collector optics CO as illustrated in
[0218] Alternatively, the source collector module SO can be part of an LPP radiation system as Figure 18 illustrated in FIG. 2B. A laser LA is arranged to deposit laser energy into a fuel, such as xenon (Xe), tin (Sn) or lithium (Li), creating the highly ionized plasma 210 with electron temperatures of several 10eV. The energetic radiation generated during de-excitation and recombination of these ions is emitted from the plasma, collected by a near-normal incidence collector optic CO and focused into the opening 221 in the enclosing structure 220.
[0219] The concepts disclosed herein can be simulated or mathematically modeled for any general imaging system that images sub-wavelength features and can be used especially for emerging imaging technologies that are capable of producing shorter and shorter wavelengths. Emerging technologies that are already in use include EUV (Extreme Ultra Violet), DUV lithography that is capable of producing a wavelength of 193 nm by using an ArF laser and even a wavelength of 157 nm by using a Fluorine laser. Furthermore, EUV lithography is capable of producing wavelengths in the range of 5 nm to 20 nm by using a synchrotron or by shooting high energy electrons into a material (solid or plasma) in order to produce photons in that range.
[0220] Embodiments of the present disclosure can be further described by the following aspects.
[0221] 1. A non-transitory computer-readable medium configured to generate a rounded profile of a lithographic mask pattern, the non-transitory computer-readable medium comprising instructions stored therein that, when executed by one or more processors, cause operations comprising:
[0222] The outline representation of the mask pattern is converted into (i) the first set of outline point positions in the first dimension and (ii) the second set of outline point positions in a second dimension different from the first dimension;
[0223] A signal function is determined based on the positions of the first set of contour points and the positions of the second set of contour points, and the signal function indicates different segments represented by the contour.
[0224] (i) updating the positions of the first set of contour points based on the first filtering function and the signal function, and (ii) updating the positions of the second set of contour points based on the second filtering function and the signal function; and
[0225] The rounded contour of the mask pattern is generated based on the updated first set of contour point positions and the updated second set of contour point positions.
[0226] 2. The non-transitory computer-readable medium according to aspect 1, wherein the update includes:
[0227] (i) generating a first set of weights corresponding to the positions of the first set of contour points by applying a first filter function to the signal function; and (ii) generating a second set of weights corresponding to the positions of the second set of contour points by applying a second filter to the signal function; and
[0228] (i) Update the position of the first set of contour points based on the first filtering function and the first set of weights, and (ii) Update the position of the second set of contour points based on the second filtering function and the second set of weights.
[0229] 3. The non-transitory computer-readable medium according to any one of aspects 1 to 2, wherein converting the contour representation comprises:
[0230] Sample multiple points on the contour representation at specific intervals;
[0231] Convert the plurality of points into the positions of the first set of contour points in the first dimension;
[0232] as well as
[0233] The plurality of points are converted into the positions of the second set of contour points in the second dimension.
[0234] 4. The non-transitory computer-readable medium according to aspect 3, wherein converting the contour representation further includes:
[0235] The first gradient is determined based on the position of the first set of contour points in the first dimension;
[0236] and
[0237] determine a second gradient based on the second set of contour point positions in the second dimension.
[0238] 5. The non-transitory computer-readable medium of any of aspects 1 to 4, wherein determining the signal function comprises:
[0239] computing a product of a first difference between two consecutive points in the first set of contour point positions and a second difference between two consecutive points in the second set of contour point positions.
[0240] 6. The non-transitory computer-readable medium of aspect 5, wherein determining the signal function comprises:
[0241] determining a first function having a value greater than zero, the first function characterizing a first type of corner in the contour representation; and
[0242] determining a second function having a value less than zero, the second function characterizing a second type of corner in the contour representation.
[0243] 7. The non-transitory computer-readable medium of aspect 6, wherein the first function indicates an inside corner of the contour representation and the second function indicates an outside corner of the contour representation, the inside corner or the outside corner characterizing a corner orientation within the contour representation.
[0244] 8. The non-transitory computer-readable medium of aspect 7, wherein generating the first set of weights and the second set of weights comprises:
[0245] generating, in the first dimension, one subset of weights corresponding to the inside corner and another subset of weights corresponding to the outside corner; and
[0246] generating, in the second dimension, one subset of weights corresponding to the inside corner and another subset of weights corresponding to the outside corner.
[0247] 9. The non-transitory computer-readable medium of any of aspects 2 to 8, wherein updating the first set of contour point positions and the second set of contour point positions comprises:
[0248] computing, in the first dimension, a third set of contour points from the first set of contour point positions, the first filter function, and the first set of weights; and
[0249] computing, in the second dimension, a fourth set of contour points from the second set of contour point positions, the second filter function, and the second set of weights.
[0250] 10. The non-transitory computer-readable medium of aspect 9, wherein the calculations made in the first dimension include:
[0251] determining, at each point in the first set of contour points, whether a sum of the weights of the first set of weights at a particular point equals zero;
[0252] in response to the sum not being zero, transforming the particular point in the first set of contour point positions by applying the first filter function and using the first set of weights to perform a weighted average of the filtered points; and
[0253] in response to the sum being zero, not transforming the particular point in the first set of contour point positions.
[0254] 11. The non-transitory computer-readable medium of aspect 9, wherein the calculations made in the second dimension include:
[0255] determining, at each point in the second set of contour points, whether a sum of the weights of the second set of weights at a particular point equals zero;
[0256] in response to the sum not being zero, transforming the particular point in the second set of contour point positions by applying the second filter function and using the second set of weights to perform a weighted average of the filtered points; and
[0257] in response to the sum being zero, not transforming the particular point in the second set of contour point positions.
[0258] 12. The non-transitory computer-readable medium of any of aspects 1-11, wherein generating the rounded contour includes:
[0259] combining the transformed first set of contour point positions and the transformed second set of contour point positions to produce a set of two-dimensional contour points; and
[0260] joining the set of two-dimensional contour points to produce the rounded contour of the contour representation.
[0261] 13. The non-transitory computer-readable medium of any of aspects 1-12, wherein joining the contour points includes:
[0262] joining adjacent points in the set of two-dimensional contour points by a linear function, a polynomial function, or a combination of a linear function and a polynomial function to produce a closed contour.
[0263] 14. The non-transitory computer-readable medium of any of aspects 1-13, further comprising:
[0264] generating a mask design based on the rounded contour of the contour representation.
[0265] 15. The non-transitory computer readable medium of aspect 14, wherein generating the mask design comprises:
[0266] (a) accessing a design layout comprising a plurality of contour representations;
[0267] (b) generating a rounded contour for each of the plurality of contour representations by converting each contour representation to a one-dimensional representation, applying a filter to each of the one-dimensional representations, and combining the filtered one-dimensional contour representations;
[0268] (c) using the rounded contours to simulate a patterning process to generate a simulated contour associated with a semiconductor chip;
[0269] (d) obtaining a printed contour of a patterned substrate using a mask associated with the design layout;
[0270] (e) determining whether the simulated contour and the printed contour are within a matching threshold; and
[0271] (f) in response to the simulated contour not matching the printed contour, adjusting parameters or content of the first filter function, the second filter function, or both filter functions, and repeating steps (a) through (f).
[0272] 16. The non-transitory computer readable medium of aspect 14, further comprising:
[0273] (a) accessing a design layout comprising a plurality of contour representations;
[0274] (b) generating a rounded contour for each of the plurality of contour representations by converting each contour representation to a one-dimensional representation, applying a filter to each of the one-dimensional representations, and combining the filtered one-dimensional contour representations;
[0275] (c) using the rounded contours to simulate an optimization proximity effect correction process to generate a simulated contour associated with a substrate;
[0276] (d) determining whether the simulated contour satisfies a design specification; and
[0277] (e) in response to the simulated contour not satisfying the design specification, adjusting the design layout, and repeating steps (a) through (e).
[0278] 17. The non-transitory computer readable medium of any of aspects 1 through 16, further comprising:
[0279] (a) accessing a design layout comprising a plurality of contour representations;
[0280] (b) generating a rounded profile for each of the plurality of profile representations by converting each profile representation to a one-dimensional representation, applying a filter to each of the one-dimensional representations, and combining the filtered one-dimensional profile representations;
[0281] (c) using the rounded profile to simulate an optimization proximity effect correction process to generate a mask pattern;
[0282] (d) determining whether the mask pattern satisfies a mask rule check (MRC) condition; and
[0283] (e) in response to the mask pattern not satisfying the MRC, adjusting the design layout, and repeating steps (a) through (e).
[0284] 18. The non-transitory computer readable medium of any of aspects 1 through 17, wherein each of the first filter function and the second filter function comprises a Gaussian filter and / or a low pass filter.
[0285] 19. A non-transitory computer readable medium configured to determine a rounded profile of a photolithography mask, the non-transitory computer readable medium comprising instructions stored therein that, when executed by one or more processors, cause operations comprising:
[0286] converting a profile representation of a mask pattern to a one-dimensional (ID) representation using a unit direction vector and constraining the one-dimensional representation to satisfy a constraint proportional to the unit direction vector;
[0287] (i) determining a first function of the one-dimensional representation by taking a gradient of the one-dimensional representation with respect to a first dimension and determining a second function of the one-dimensional representation by taking another gradient of the one-dimensional representation with respect to a second dimension, the first function and the second function satisfying the constraint;
[0288] (i) generating a first filtered function by convolving the first function with a first filter and (ii) generating a second filtered function by convolving the second function with a second filter; and
[0289] generating a rounded profile of the mask pattern by combining the first filtered function and the second filtered function of the profile representation.
[0290] 20. The non-transitory computer readable medium of aspect 19, further comprising:
[0291] distinguishing a first type of corner in the profile representation from a second type of corner in the profile representation; and
[0292] defining the first filter function and / or the second filter function to include a filter function for a first type of corner and another filter function for a second type of corner.
[0293] 21. The non-transitory computer-readable medium of aspect 20, wherein differentiating the corners comprises:
[0294] computing a sign function of the first function and the second function of the one-dimensional representation, wherein a positive value of the sign function indicates the first type of corner and a negative value of the sign function indicates the second type of corner.
[0295] 22. The non-transitory computer-readable medium of aspect 20, wherein generating the rounded corners comprises:
[0296] generating the first filtered function using a filter function for a first type of corner and another filter function for a second type of corner.
[0297] 23. The non-transitory computer-readable medium of any of aspects 19-22, wherein converting the contour representation comprises:
[0298] selecting a starting point on the contour representation; and
[0299] converting a closed shape of the contour representation to a straight line by unrolling the contour representation from the starting point.
[0300] 24. The non-transitory computer-readable medium of any of aspects 19-23, wherein determining the first function of the one-dimensional representation comprises:
[0301] generating a first step function in the first dimension based on lengths of segments of the contour representation in the first dimension and the second dimension, and a direction of travel along the contour representation.
[0302] 25. The non-transitory computer-readable medium of any of aspects 19-24, wherein determining the second function of the one-dimensional representation comprises:
[0303] generating a second step function in the second dimension based on lengths of segments of the contour representation in the first dimension and the second dimension, and a direction of travel along the contour representation.
[0304] 26. The non-transitory computer-readable medium of any of aspects 19-25, wherein determining the first function of the one-dimensional representation comprises:
[0305] using angles between edges in the contour representation to compute a cosine function along the contour representation.
[0306] 27. The non-transitory computer-readable medium of any of aspects 19 to 26, wherein determining the second function of the one-dimensional representation comprises:
[0307] using angles between edges in the contour representation to compute a sine function along the contour representation.
[0308] 28. The non-transitory computer-readable medium of any of aspects 19 to 27, wherein generating the first filtered function comprises:
[0309] convolving the first function with the first filter such that at least a portion of a shape represented by the first function is rounded.
[0310] 29. The non-transitory computer-readable medium of any of aspects 19 to 28, wherein generating the first filtered function and the second filtered function comprises:
[0311] constraining the generating operation to satisfy a first condition that an absolute value of a unit vector convolved with the first filter function and the second filter function is one, denoted as where * denotes a convolution operation, is a unit vector of the one-dimensional representation included in the first dimension and the second dimension, and f includes the first filter function and the second filter function.
[0312] 30. The non-transitory computer-readable medium of aspect 29, wherein generating the first filtered function and the second filtered function comprises:
[0313] constraining the generating operation to satisfy a second condition that a steady state response to a unit step function is uniform or one, denoted as where * denotes a convolution operation, is a unit vector of the one-dimensional representation included in the first dimension and the second dimension, and f includes the first filter function and the second filter function
[0314] 31. The non-transitory computer-readable medium of any of aspects 19 to 30, wherein generating the second filtered function comprises:
[0315] convolving the second function with the second filter such that at least a portion of a shape represented by the second function is rounded.
[0316] 32. The non-transitory computer-readable medium of any of aspects 19-31, wherein generating the rounded profile comprises:
[0317] integrating the first filtered function along a length of the one-dimensional representation;
[0318] integrating the second filtered function along a length of the one-dimensional representation; and
[0319] combining the integrated functions to generate the rounded profile.
[0320] 33. The non-transitory computer-readable medium of any of aspects 19-32, wherein the constraint is a constraint indicative of a closed profile, and / or a uniform constraint.
[0321] 34. The non-transitory computer-readable medium of any of aspects 19-33, further comprising:
[0322] determining a center of the rounded profile, and a center of the profile representation; and
[0323] aligning the center of the rounded profile and the center of the profile representation.
[0324] 35. The non-transitory computer-readable medium of any of aspects 19-34, further comprising:
[0325] generating a mask design based on the rounded profile of the profile representation.
[0326] 36. The non-transitory computer-readable medium of aspect 35, wherein generating the mask design comprises:
[0327] (a) accessing a design layout comprising a plurality of profile representations;
[0328] (b) generating a rounded profile for each of the plurality of profile representations by converting each profile representation to a one-dimensional representation, applying a filter to each of the one-dimensional representations, and combining the filtered one-dimensional profile representations;
[0329] (c) simulating a patterning process using the rounded profile to generate a simulated profile associated with a semiconductor chip;
[0330] (d) obtaining a printed profile of a patterned substrate using a mask associated with the design layout;
[0331] (e) determining whether the simulated profile and the printed profile are within a matching threshold; and
[0332] (f) in response to the simulated profile not matching the printed profile, adjusting parameters or content of the one or more one-dimensional filters and repeating steps (a) through (f).
[0333] 37. The non-transitory computer readable medium of aspect 35, further comprising:
[0334] (a) accessing a design layout comprising a plurality of profile representations;
[0335] (b) generating a rounded profile for each of the plurality of profile representations by converting each profile representation to a one-dimensional representation, applying a filter to each of the one-dimensional representations, and combining the filtered one-dimensional profile representations;
[0336] (c) using the rounded profile to simulate an optimization proximity effect correction process to generate a simulated profile associated with a substrate;
[0337] (d) determining whether the simulated profile satisfies a design specification; and
[0338] (e) in response to the simulated profile not satisfying the design specification, adjusting the design layout and repeating steps (a) through (e).
[0339] 38. The non-transitory computer readable medium of any of aspects 19 through 37, further comprising:
[0340] (a) accessing a design layout comprising a plurality of profile representations;
[0341] (b) generating a rounded profile for each of the plurality of profile representations by converting each profile representation to a one-dimensional representation, applying a filter to each of the one-dimensional representations, and combining the filtered one-dimensional profile representations;
[0342] (c) using the rounded profile to simulate an optimization proximity effect correction process to generate a mask pattern;
[0343] (d) determining whether the mask pattern satisfies a mask rule check (MRC) condition; and
[0344] (e) in response to the mask pattern not satisfying the MRC, adjusting the design layout and repeating steps (a) through (e).
[0345] 39. A method for generating a rounded profile of a lithographic mask pattern, comprising:
[0346] converting a profile representation of a mask pattern to (i) a first set of profile point locations in a first dimension and (ii) a second set of profile point locations in a second dimension different from the first dimension;
[0347] determining a signal function based on the first set of contour point positions and the second set of contour point positions, the signal function being indicative of different sections of the contour representation;
[0348] (i) updating the first set of contour point positions based on a first filter function and the signal function, and (ii) updating the second set of contour point positions based on a second filter function and the signal function; and
[0349] generating a rounded contour of the contour representation of the mask pattern based on the updated first set of contour point positions and the updated second set of contour point positions.
[0350] 40. The non-transitory computer-readable medium of aspect 39, wherein updating comprises:
[0351] (i) generating a first set of weights corresponding to the first set of contour point positions by applying a first filter function to the signal function, and (ii) generating a second set of weights corresponding to the second set of contour point positions by applying a second filter to the signal function; and
[0352] (i) updating the first set of contour point positions based on the first filter function and the first set of weights, and (ii) updating the second set of contour point positions based on the second filter function and the second set of weights.
[0353] 41. The method of any of aspects 39-40, wherein transforming the contour representation comprises:
[0354] sampling a plurality of points on the contour representation at a particular interval;
[0355] transforming the plurality of points into the first set of contour point positions in the first dimension;
[0356] and
[0357] transforming the plurality of points into the second set of contour point positions in the second dimension.
[0358] 42. The method of aspect 41, wherein transforming the contour representation further comprises:
[0359] determining a first gradient based on the first set of contour point positions in the first dimension; and
[0360] determining a second gradient based on the second set of contour point positions in the second dimension.
[0361] 43. The method of any of aspects 39-42, wherein determining the signal function comprises:
[0362] computing a product of a first difference between two consecutive points in the first set of contour point positions and a second difference between two consecutive points in the second set of contour point positions.
[0363] 44. The method of clause 43, wherein determining the signal function comprises:
[0364] determining a first function having a value greater than zero, the first function characterizing a first type of corner in the contour representation; and
[0365] determining a second function having a value less than zero, the second function characterizing a second type of corner in the contour representation.
[0366] 45. The method of clause 44, wherein the first function indicates an inside corner of the contour representation and the second function indicates an outside corner of the contour representation, the inside corner or the outside corner characterizing a corner orientation within the contour representation.
[0367] 46. The method of clause 45, wherein generating the first set of weights and the second set of weights comprises:
[0368] generating, in the first dimension, one subset of weights corresponding to the inside corner and another subset of weights corresponding to the outside corner; and
[0369] generating, in the second dimension, one subset of weights corresponding to the inside corner and another subset of weights corresponding to the outside corner.
[0370] 47. The method of any one of clauses 40-46, wherein updating the first set of contour point positions and the second set of contour point positions comprises:
[0371] computing, in the first dimension, a third set of contour points from the first set of contour point positions, the first filter function, and the first set of weights; and
[0372] computing, in the second dimension, a fourth set of contour points from the second set of contour point positions, the second filter function, and the second set of weights.
[0373] 48. The method of clause 47, wherein the computing in the first dimension comprises:
[0374] determining, at each point in the first set of contour points, whether a sum of the weights of the first set of weights at the particular point equals zero;
[0375] in response to the sum not being zero, converting the particular point in the first set of contour point locations by applying the first filter function and weighted averaging of the filtered points using the first set of weights; and
[0376] in response to the sum being zero, not converting the particular point in the first set of contour point locations.
[0377] 49. The method of clause 48, wherein the calculations made in the second dimension include:
[0378] determining, at each point in the second set of contour points, whether a sum of the weights of the second set of weights at a particular point is equal to zero;
[0379] in response to the sum not being zero, converting the particular point in the second set of contour point locations by applying the second filter function and weighted averaging of the filtered points using the second set of weights; and
[0380] in response to the sum being zero, not converting the particular point in the second set of contour point locations.
[0381] 50. The method of any of clauses 39-49, wherein generating the rounded contour includes:
[0382] combining the converted first set of contour point locations and the converted second set of contour point locations to generate a set of two-dimensional contour points; and
[0383] joining the set of two-dimensional contour points to generate the rounded contour of the contour representation.
[0384] 51. The method of any of clauses 39-50, wherein joining the contour points includes:
[0385] joining adjacent points in the set of two-dimensional contour points by a linear function, a polynomial function, or a combination of a linear function and a polynomial function to generate a closed contour.
[0386] 52. The method of any of clauses 39-51, further comprising:
[0387] generating a mask design based on the rounded contour of the contour representation.
[0388] 53. The method of clause 52, wherein generating the mask design includes:
[0389] (a) accessing a design layout including a plurality of contour representations;
[0390] (b) generating a rounded profile for each of the plurality of profile representations by converting each profile representation to a one-dimensional representation, applying a filter to each of the one-dimensional representations, and combining the filtered one-dimensional profile representations;
[0391] (c) simulating a patterning process using the rounded profiles to generate simulated profiles associated with a semiconductor chip;
[0392] (d) obtaining printed profiles of a patterned substrate using a mask associated with the design layout;
[0393] (e) determining whether the simulated profiles and the printed profiles are within a matching threshold; and
[0394] (f) in response to the simulated profiles not matching the printed profiles, adjusting parameters or content of the first filter function, the second filter function, or both, and repeating steps (a) through (f).
[0395] 54. The method of aspect 52, further comprising:
[0396] (a) accessing a design layout comprising a plurality of profile representations;
[0397] (b) generating a rounded profile for each of the plurality of profile representations by converting each profile representation to a one-dimensional representation, applying a filter to each of the one-dimensional representations, and combining the filtered one-dimensional profile representations;
[0398] (c) simulating an optimized proximity effect correction process using the rounded profiles to generate simulated profiles associated with a substrate;
[0399] (d) determining whether the simulated profiles satisfy a design specification; and
[0400] (e) in response to the simulated profiles not satisfying the design specification, adjusting the design layout, and repeating steps (a) through (e).
[0401] 55. The method of any of aspects 39 through 54, further comprising:
[0402] (a) accessing a design layout comprising a plurality of profile representations;
[0403] (b) generating a rounded profile for each of the plurality of profile representations by converting each profile representation to a one-dimensional representation, applying a filter to each of the one-dimensional representations, and combining the filtered one-dimensional profile representations;
[0404] (c) simulating an optimized proximity effect correction process using the rounded profiles to generate a mask pattern;
[0405] (d) determining whether the mask pattern satisfies a mask rule check (MRC) condition; and
[0406] (e) responsive to the mask pattern not satisfying the MRC, adjusting the design layout, and repeating steps (a) through (e).
[0407] 56. The method of any of aspects 39 through 55, wherein each of the first filter function and the second filter function comprises a Gaussian filter and / or a low-pass filter.
[0408] 57. A method for determining a rounded profile of a photolithography mask, comprising:
[0409] converting a profile representation of a mask pattern into a one-dimensional (ID) representation using a unit direction vector, and constraining the ID representation to satisfy a constraint that is proportional to the unit direction vector;
[0410] (i) determining a first function of the ID representation by taking a gradient of the ID representation with respect to a first dimension, and (ii) determining a second function of the ID representation by taking another gradient of the ID representation with respect to a second dimension, the first function and the second function satisfying the constraint;
[0411] (i) producing a first filtered function by applying a first filter to the first function, and (ii) producing a second filtered function by applying a second filter to the second function; and
[0412] producing a rounded profile of the mask pattern by combining the first filtered function and the second filtered function of the profile representation.
[0413] 58. The method of aspect 57, further comprising:
[0414] distinguishing between a first type of corner in the profile representation and a second type of corner in the profile representation; and
[0415] defining the first filter function and / or the second filter function to include a filter function for the first type of corner and another filter function for the second type of corner.
[0416] 59. The method of aspect 58, wherein distinguishing between the corners comprises:
[0417] computing a sign function of the first function and the second function of the ID representation, wherein a positive value of the sign function indicates the first type of corner and a negative value of the sign function indicates the second type of corner.
[0418] 60. The method of aspect 58, wherein generating the rounded corner comprises:
[0419] generating the first filtered function using a filter function for a first type of corner and another filter function for a second type of corner.
[0420] 61. The method of any of aspects 57 to 60, wherein converting the contour representation comprises:
[0421] selecting a starting point on the contour representation; and
[0422] converting a closed shape of the contour representation to a straight line by unrolling the contour representation from the starting point.
[0423] 62. The method of any of aspects 57 to 61, wherein determining the first function of the one-dimensional representation comprises:
[0424] generating a first step function in the first dimension based on lengths of segments of the contour representation in the first and second dimensions and a direction of travel along the contour representation.
[0425] 63. The method of any of aspects 57 to 62, wherein determining the second function of the one-dimensional representation comprises:
[0426] generating a second step function in the second dimension based on lengths of segments of the contour representation in the first and second dimensions and a direction of travel along the contour representation.
[0427] 64. The method of any of aspects 57 to 63, wherein determining the first function of the one-dimensional representation comprises:
[0428] using angles between edges in the contour representation to calculate a cosine function along the contour representation.
[0429] 65. The method of any of aspects 57 to 64, wherein determining the second function of the one-dimensional representation comprises:
[0430] using angles between edges in the contour representation to calculate a sine function along the contour representation.
[0431] 66. The method of any of aspects 57 to 65, wherein generating the first filtered function comprises:
[0432] convolving the first function with the first filter such that at least a portion of a shape represented by the first function is rounded.
[0433] 67. The method of any one of clauses 57-66, wherein generating the first filter function and the second filter function comprises:
[0434] constraining the generating operation to satisfy a first condition that an absolute value of a unit vector that is convolved with the first filter function and the second filter function is unity, denoted as where * indicates a convolution operation, is a unit vector of the one-dimensional representation included in the first dimension and the second dimension, and f comprises the first filter function and the second filter function.
[0435] 68. The method of clause 67, wherein generating the first filtered function and the second filtered function comprises:
[0436] constraining the generating operation to satisfy a second condition that a steady state response to a unit step function is unity or one, denoted as where * indicates a convolution operation, is a unit vector of the one-dimensional representation included in the first dimension and the second dimension, and f comprises the first filter function and the second filter function.
[0437] 69. The method of any one of clauses 57-68, wherein generating the second filtered function comprises:
[0438] convolving the second function with the second filter such that at least a portion of a shape represented by the second function is rounded.
[0439] 70. The method of any one of clauses 57-69, wherein generating the rounded profile comprises:
[0440] integrating the first filtered function along a length of the one-dimensional representation;
[0441] integrating the second filtered function along a length of the one-dimensional representation; and
[0442] combining the integrated functions to generate the rounded profile.
[0443] 71. The method of any one of clauses 57-70, wherein the constraint is a constraint that indicates a closed profile, and / or a unity constraint.
[0444] 72. The method of any one of clauses 57-71, further comprising:
[0445] determining a center of the rounded profile and a center of the profile representation; and
[0446] aligning the center of the rounded profile and the center of the profile representation.
[0447] 73. The method of any of clauses 57-72, further comprising:
[0448] generating a mask design based on the rounded profile of the profile representation.
[0449] 74. The method of clause 73, wherein generating the mask design comprises:
[0450] (a) accessing a design layout comprising a plurality of profile representations;
[0451] (b) generating a rounded profile for each of the plurality of profile representations by converting each profile representation to a one-dimensional representation, applying a filter to each of the one-dimensional representations, and combining the filtered one-dimensional profile representations;
[0452] (c) using the rounded profile to simulate a patterning process to generate a simulated profile associated with a semiconductor chip;
[0453] (d) obtaining a printed profile of a patterned substrate using a mask associated with the design layout;
[0454] (e) determining whether the simulated profile and the printed profile are within a matching threshold; and
[0455] (f) in response to the simulated profile not matching the printed profile, adjusting a parameter or content of the one or more one-dimensional filters and repeating steps (a)-(f).
[0456] 75. The method of clause 73, further comprising:
[0457] (a) accessing a design layout comprising a plurality of profile representations;
[0458] (b) generating a rounded profile for each of the plurality of profile representations by converting each profile representation to a one-dimensional representation, applying a filter to each of the one-dimensional representations, and combining the filtered one-dimensional profile representations;
[0459] (c) using the rounded profile to simulate an optimization proximity effect correction process to generate a simulated profile associated with a substrate;
[0460] (d) determining whether the simulated profile satisfies a design specification; and
[0461] (e) in response to the simulated contours not satisfying the design specification, adjusting the design layout, and repeating steps (a) through (e).
[0462] 76. The method of any of aspects 57 to 75, further comprising:
[0463] (a) accessing a design layout comprising a plurality of contour representations;
[0464] (b) generating a rounded contour for each of the plurality of contour representations by converting each contour representation to a one-dimensional representation, applying a filter to each of the one-dimensional representations, and combining the filtered one-dimensional contour representations;
[0465] (c) using the rounded contours to simulate an optimization proximity effect correction process to generate a mask pattern;
[0466] (d) determining whether the mask pattern satisfies mask rule check (MRC) conditions; and
[0467] (e) in response to the mask pattern not satisfying the MRC, adjusting the design layout, and repeating steps (a) through (e).
[0468] While the concepts disclosed herein can be used for imaging on substrates such as silicon wafers, it should be understood that the disclosed concepts can be used with any type of lithographic imaging system, for example, a lithographic imaging system for imaging on substrates other than silicon wafers.
[0469] The above description is intended to be illustrative, and not restrictive. Those skilled in the art can appreciate modifications without departing from the scope of the claims as set forth below.
Claims
1. A non-transitory computer-readable medium configured to generate a circularized contour of a photolithographic mask pattern, the non-transitory computer-readable medium comprising instructions stored therein, the instructions causing operations including, when executed by one or more processors: The outline representation of the mask pattern is converted into (i) the first set of outline point positions in the first dimension and (ii) the second set of outline point positions in the second dimension, which is different from the first dimension; A signal function is determined based on the positions of the first set of contour points and the positions of the second set of contour points, and the signal function indicates different segments represented by the contour. (i) update the positions of the first set of contour points based on the first filtering function and the signal function, and (ii) update the positions of the second set of contour points based on the second filtering function and the signal function; as well as The rounded contour of the mask pattern is generated based on the updated first set of contour point positions and the updated second set of contour point positions.
2. The non-transitory computer-readable medium of claim 1, wherein, The updates include: (i) generating a first set of weights corresponding to the positions of the first set of contour points by applying a first filter function to the signal function; and (ii) generating a second set of weights corresponding to the positions of the second set of contour points by applying a second filter to the signal function; and (i) Update the position of the first set of contour points based on the first filtering function and the first set of weights, and (ii) Update the position of the second set of contour points based on the second filtering function and the second set of weights.
3. The non-transitory computer-readable medium of claim 1, wherein, Transforming the contour representation includes: Sample multiple points on the contour representation at specific intervals; Convert the plurality of points into the positions of the first set of contour points in the first dimension; and The plurality of points are converted into the positions of the second set of contour points in the second dimension.
4. The non-transitory computer-readable medium of claim 3, wherein, Transforming the contour representation further includes: The first gradient is determined based on the positions of the first set of contour points in the first dimension; and The second gradient is determined based on the positions of the second set of contour points in the second dimension.
5. The non-transitory computer-readable medium of claim 2, wherein, Determining the signal function includes: Calculate the product of the first difference between two consecutive points in the first set of contour point positions and the second difference between two consecutive points in the second set of contour point positions.
6. The non-transitory computer-readable medium of claim 5, wherein, Determining the signal function includes: Determine a first function with a value greater than zero, the first function representing a corner of a first type in the contour representation; and A second function is determined, having a value less than zero, wherein the second function characterizes a second type of corner in the contour representation.
7. The non-transitory computer-readable medium of claim 6, wherein, The first function indicates an inner corner of the contour representation, and the second function indicates an outer corner within the contour representation, wherein the inner or outer corner represents the corner orientation within the contour representation.
8. The non-transitory computer-readable medium of claim 7, wherein, The generation of the first set of weights and the second set of weights includes: In the first dimension, generate a subgroup of weights corresponding to the inner corner and another subgroup of weights corresponding to the outer corner; and In the second dimension, a subgroup of weights corresponding to the inner corner and another subgroup of weights corresponding to the outer corner are generated.
9. The non-transitory computer-readable medium of claim 2, wherein, updating the first set of contour point positions and the second set of contour point positions comprises: computing a third set of contour points in the first dimension from the first set of contour point positions, the first filter function, and the first set of weights; and computing a fourth set of contour points in the second dimension from the second set of contour point positions, the second filter function, and the second set of weights.
10. The non-transitory computer-readable medium of claim 9, wherein, the computation performed in the first dimension comprises: determining, at each point in the first set of contour points, whether a sum of the weights of the first set of weights at a particular point is equal to zero; in response to the sum not being zero, transforming the particular point in the first set of contour point positions by applying the first filter function and taking a weighted average of the filtered points using the first set of weights; and in response to the sum being zero, not transforming the particular point in the first set of contour point positions, and wherein the computation performed in the second dimension comprises: determining, at each point in the second set of contour points, whether a sum of the weights of the second set of weights at a particular point is equal to zero; in response to the sum not being zero, transforming the particular point in the second set of contour point positions by applying the second filter function and taking a weighted average of the filtered points using the second set of weights; and in response to the sum being zero, not transforming the particular point in the second set of contour point positions.
11. The non-transitory computer-readable medium of claim 1, wherein, generating the rounded contour comprises: combining the transformed first set of contour point positions and the transformed second set of contour point positions to generate a set of two-dimensional contour points; and joining the set of two-dimensional contour points to generate the rounded contour of the contour representation.
12. The non-transitory computer-readable medium of claim 11, wherein, joining contour points comprises: joining adjacent points in the set of two-dimensional contour points by a linear function, a polynomial function, or a combination of a linear function and a polynomial function to generate a closed contour.
13. The non-transitory computer-readable medium of claim 1, further comprising: generating a mask design based on the rounded contour of the contour representation, wherein generating the mask design comprises using the rounded contour to simulate a patterning process.
14. The non-transitory computer-readable medium of claim 1, further comprising: (a) accessing a design layout comprising a plurality of contour representations; (b) generating a rounded contour for each contour representation in the plurality of contour representations by converting each contour representation to a one-dimensional representation, applying a filter to each of the one-dimensional representations, and combining the filtered one-dimensional contour representations; (c) using the rounded contour to simulate an optimization proximity effect correction process to generate a mask pattern; (d) determining whether the mask pattern satisfies a mask rule check (MRC) condition; and (e) in response to the mask pattern not satisfying the MRC, adjusting the design layout, and repeating steps (a) through (e).
15. The non-transitory computer-readable medium of claim 1, wherein, each of the first filter function and the second filter function comprises a Gaussian filter and / or a low-pass filter.
Citation Information
Patent Citations
Methods and system for lithography process window simulation
US20090157360A1
Exposure device including an electrically aligned electronic mask for micropatterning
US5229872A
Illumination device
US5296891A
Method and apparatus for patterning and imaging member
US5523193A
Two-dimensionally balanced positioning device with two object holders, and lithographic device provided with such a positioning device
US5969441A