Gradient method of mask edge correction

Information

  • Patent Application
  • 20050138596
  • Publication Number
    20050138596
  • Date Filed
    December 18, 2003
    21 years ago
  • Date Published
    June 23, 2005
    19 years ago
Abstract
The present invention is directed to a method and apparatus for making mask edge corrections using a gradient method for high density chip designs. The present invention uses a newly defined cost function.
Description
FIELD OF THE INVENTION

The present invention generally relates to the field of integrated circuits, and particularly to a method and apparatus for making mask edge corrections using a gradient method.


BACKGROUND OF THE INVENTION

With the advance of technology in integrated circuits (ICs), the minimum feature sizes of ICs have been shrinking for years. Commensurate with this size reduction, various process limitations have made IC fabrication more difficult. One area of fabrication technology in which such limitations have appeared is photolithography. Photolithography involves selectively exposing regions of a resist coated silicon wafer to a radiation pattern, and then developing the exposed resist in order to selectively protect regions of wafer layers (e.g., regions of substrate, polysilicon, or dielectric).


An integral component of a photolithographic apparatus is a “reticle” or “mask” which includes a pattern corresponding to features at one layer in an IC design. Such a mask may typically include a transparent glass plate covered with a patterned light blocking material such as chromium. The mask may be placed between a radiation source producing radiation of a pre-selected wavelength and a focusing lens which may form part of a “stepper” apparatus. Placed beneath the stepper may be a resist covered silicon wafer. When the radiation from the radiation source is directed onto the mask, light may pass through the glass (regions not having chromium patterns) and project onto the resist covered silicon wafer. In this manner, an image of the mask may be transferred to the resist. The resist (sometimes referred to as a “photoresist”) is provided as a thin layer of radiation-sensitive material that is spin-coated over the entire silicon wafer surface.


As light passes through the mask, the light may be refracted and scattered by the chromium edges. This may cause the projected image to exhibit some rounding and other optical distortion. While such effects pose relatively little difficulty in layouts with large feature sizes (e.g., layouts with critical dimensions above about 1 micron), the effects may not be ignored in layouts having features smaller than about 1 micron. The problems become especially pronounced in IC designs having feature sizes near the wavelength of light used in the photolithographic process. Optical distortions commonly encountered in photolithography may include rounded corners, reduced feature widths, fusion of dense features, shifting of line segment positions, and the like. Unfortunately, any distorted illumination pattern may propagate to a developed resist pattern and ultimately to IC features such as polysilicon gate regions, vias in dielectrics, and the like. As a result, the IC performance may be degraded or the IC may become unusable.


To remedy this problem, a mask correction technique known as optical proximity correction (“OPC”) has been developed. OPC may involve adding regions to and/or subtracting regions from a mask design at locations chosen to overcome the distorting effects of diffraction and scattering. Manual OPC has been in existence for many years. Using manual OPC, an engineer may need to add regions using trial and error techniques until the desired pattern on the wafer is obtained. While manual OPC has been effective, as the dimensions of critical features shrink, it has become apparent that the manual approach is not time/cost effective. Therefore, a systematic way is needed to enable fast processing of large, complex chips. Generally speaking, there are currently two automated approaches to OPC: (1) rule-based OPC (use geometric rules to add corrections); and (2) model-based OPC (use lithography simulations to decide corrections). Rule-based OPC is an extension of the methods used for manual OPC. Through experiment or simulation, the corrections that should be applied in a given geometrical situation may be discovered. Then, a pattern recognition system may be used to apply the corrections wherever that geometrical situation occurs throughout the entire layout design. While rule-based OPC is fast and can be applied to an entire layout, rule-based OPC is not as accurate as desired because rule-based OPC is not directly based on lithography simulation. Model-based OPC is different from rule-based OPC in that simulation models are used to compute the wafer results and modify edges on the mask to improve the simulated wafer results. Model-based OPC may be capable of more general corrections, but may require longer OPC time since simulation is typically time-intensive. The use of lithography simulation has been traditionally for analysis of aerial images and cutlines. The aerial image has long been used as a first order approximation to the final etched features produced by photolithography. Presently the role of lithography simulation has been broadened to include use of simulation within mask design synthesis tools.


A high density chip design is a chip design that has a distance of less than 0.8λ among input design boundaries, where λ is the wavelength of the light source. Model-based OPC of such a design often leads to a chip design with even higher density, because the movement of fragmentation regions of the edge (edge correction) may be essential (typically in the range of 0.3-0.4λ). The light intensity (or intensity) information alone may be not enough for the OPC of a high density chip design, since for such a design there is no single-value conformity between the edge corrector value change and the position of the process light intensity contour relative to the mask edge. The intensity value at a certain point may depend on the set of edge correctors at the influence region surrounding this point. Thus, the movement of all these correctors need be coordinated.


Therefore, it would be desirable to provide a method and apparatus for making mask edge corrections using a gradient method for high density chip designs.


SUMMARY OF THE INVENTION

Accordingly, the present invention is directed to a method and apparatus for making mask edge corrections using a gradient method for high density chip designs. In an exemplary aspect of the present invention, a method for making mask edge corrections may include the following steps: (a) providing parameter initial values and calibration values; (b) performing coherent field calculation; (c) performing process intensity calculation; and (d) calculating a cost function, the cost function being defined as Φ=ΣiΦi2, wherein
Φi={(Jini-Cin0),ifJini<Cin0(Jouti-Cout0),ifJouti>Cout0and0,inothercasesfordarkbackground;Φi={(Jini-Cout0),ifJini>Cout0(Jouti-Cin0),ifJouti<Cin00,inothercasesforclearbackground;

where Jini and Jouti are process intensity values at points Pini and Pouti, respectively, and Cout0≦C0≦Cin0, C0 being a cutline of a process intensity or aerial image contour, and Cout0 and Cin0 being some cutlines of the process intensity, which characterize an intensity gradient near the aerial image contour.


It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention as claimed. The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate an embodiment of the invention and together with the general description, serve to explain the principles of the invention.




BRIEF DESCRIPTION OF THE DRAWINGS

The numerous advantages of the present invention may be better understood by those skilled in the art by reference to the accompanying figures in which:



FIG. 1 illustrates a flowchart showing an exemplary method for making mask edge corrections using a gradient method in accordance with the present invention; and



FIGS. 2-4 are illustrations useful in explaining the steps illustrated in FIG. 1.




DETAILED DESCRIPTION OF THE INVENTION

Reference will now be made in detail to the presently preferred embodiments of the invention, examples of which are illustrated in the accompanying drawings.


Referring first to FIG. 1, a flowchart showing an exemplary method or process 100 for making mask edge corrections using a gradient method in accordance with the present invention is shown. The process 100 may start with step 102 in which initial parameter values and calibration parameter values may be provided. The calibration parameter may include the model parameter such as stepper numerical aperture (NA), defocus def, source coherent degree, cutline of an intensity function, and the like. The initial values of the boundary edge regions may be set from the rools tables, calculated for the set of calibration parameters.


A coherent field calculation may be performed 104. For example, a coherent field may be calculated as:
E(x,y,xu,yu,a)=ξηH((ζ+σxu)2+(η+σyu)2)Fv{M·NAλξ,M·NAλη,a}exp{2πNAλ(x·ξ+y·η)},whereH(ρ)=cic(ρ)1-(M·NA)2·ρ21-NA2ρ24exp{2πdefλ1-NA2ρ2}

is the transmission function of the optical system for coherent source;
cic(ρ)={1ρ10ρ>1;

def is defocus; λ is the wavelength; σ is the coherent degree; and

Fv(x,y)=∫∫dxmdymU(xm,ym)exp{−t2π(xmx+ymy)}

is Fourier transform of the mask missing function.


A process intensity calculation may be performed 106. For example, the process intensity calculation may be performed as:
I(x,y,a)=1I0J(xu,yu)E(x,y,xu,yu,a)2xuyu

where I0 is open frame intensity; and

J(xm,ym)

is the intensity distribution at the source surface.


Next, a cost function (or error function) calculation may be performed 108. The present invention introduces a new cost function for OPC purposes. There may exist two curves: one is the contour of the ideal image, which is equal to the input boundary, and the other is the real process intensity contour C0 (some cut line of intensity function). Some control points may be defined at a boundary edge Di, i=0, 1, 2 . . . (see, e.g., FIG. 2A), and each of these control points may be moved perpendicular to the edge Di at a distance δ either inside the boundary or outside the boundary (see, e.g., FIG. 2B). Thus, two sets of points may be obtained: Pini (inside the boundary) and Pouti (outside the boundary). The present cost function may take the following form:
Φ=iΦi2whereΦi={(Jini-Cin0),ifJini<Cin0(Jouti-Cout0),ifJouti>Cout0and0,inothercasesfordarkbackground;Φi={(Jini-Cout0),ifJini>Cout0(Jouti-Cin0),ifJouti<Cin00,inothercasesforclearbackground;(*)

where Jini and Jouti are the process intensity values at the points Pini and Pouti, respectively, and Cout0≦C0≦Cin0, C0 being a cutline of the process intensity or aerial image contour, Cout0 and Cin0 being some cutlines of process intensity, which characterize the intensity gradient near the aerial image contour.


Those of ordinary skill in the art will understand that the present cost function differs from the generally used cost function, which is the 2-norm between the process intensity value and the desired intensity value at a finite number of sample points along the boundary edge (see, e.g., N. Cobb and A. Zakhor, “Fast, Low-Complexity Mask Design,” in Proceedings of the SPIE Symposium on Optical Microlithography, Santa Clara, Calif., February 1995, vol. 2440, pp. 313-327). The generally used cost function may not reflect the difference between contours because the same intensity difference may have the small difference between contours (when the intensity gradient is large), or large difference between contours (when the intensity gradient is small). For example, as shown in FIG. 3, Intensity 1 with the large intensity gradient and Intensity 2 with the small intensity gradient both have the same intensity value at the edge position. However, the difference Δt between contours for Intensity 1 is rather smaller than Δ2 for Intensity 2 while the differences between process intensity values are the same. Therefore, while the generally used cost function gives the same value for both Intensity 1 and Intensity 2, the present cost function gives for Intensity 1Φ=0, and for Intensity 2Φ=(Δ2)2. The value δ may be preferably chosen in conformity to the CD (critical dimension) tolerance for design correction.


For minimizing a digital solution of the cost function Φ{right arrow over ((a))}, one may build the consistent approximation for parameters vector {right arrow over (a)}:

{right arrow over (a)}[t+t]={right arrow over (a)}[t][t]{right arrow over (v)}[l],=0, 1, 2, . . .

which may coincide to the solution {right arrow over (a)}0 when l comes to infinity. For a method of quickest lowering i—component of vector {right arrow over (v)}[t] is the gradient component of function Φ({right arrow over (a)}). For the i-coordinate ai:
Vi[i]=aiΦ(a)|a=a[i](**)


The gradient component (**) may be calculated in step 110 when the cost function for the new {right arrow over (a)}[t+1] decreases. Additionally, the step 110 may be performed simultaneously with the step 106 (the intensity calculation process), using the coherent field values obtained in the step 104 for different light source points.


From the equation (*), one may see that the i-th gradient component for t-stage of iteration process may be represented as follows:
aiΦ(a)|a=a[i]=2j(Jj-Cj)Jjai|a=a[i]

where Jj={Jini or Joutj} is the process intensity value, corresponding to the j control point, and
Jjai

is the first derivative of the process intensity Jj for the parameter component ai.


According to the present correction procedure, the regions of boundary edges are moved only normal to the initial edge position. In such a cases, as shown in FIG. 4, each moving fragment i of the boundary edge may form a rectangular with a length Li and a height ai, where Li is the length of the i-th edge fragment.


When the size of such a rectangles is smaller than the optical resolution limit
λNA

(λ is the wavelength of the light source, and NA is the numerical aperture of the projection lens used in projecting the reticle image onto the wafer), the present invention uses the following expression for the first derivative of intensity for the parameter vector component ai:
Jjai|a=a[i]=aiJ(xj,yj)|a=a[i]=Li·K(xj-x0i,yj-yoi)·G(E(xj,yj,a[i]),xj-x0i,yj-yoi)whereK(x,y)=H(,η)-·2·π·NAλ(x+ηy)η(***)

is the function of the coherent impulse response of the optical system;
G(E(xj,yj,a[t],xj-x0i,yj-y0i)=ReJ(xu,yu)E(x,y,xu,yu,a[t])·e-1·2·π·NAλ(xu(x-x0)+yu(y-y0))dxudyt

is the field weight function for the parameter component ai;

    • x0i and y0i are the coordinates of the middle point of the i edge fragment, moved at the distance ai normal to the edge (see FIG. 4); and
    • E(x, y, xu, yu, {right arrow over (a)}[t]) is the process coherent field for the source point (xu, yu) and t-stage of the iteration process. This field may be used for the process intensity calculation in the step 106.


When the length Li of the rectangle is greater than optical resolution limit
λNA

(i.e., too long edge fragment), this fragment may be divided into parts with a length less than
λNA

but with the same height ai. The number of such parts is
Pi=[Li·NAλ]+1,where[Li·NAλ]

notes the whole part of the division. Thus, the formula for the intensity derivative may be rewritten as follows:
Jjai|a=a[t]=p=1PtLip·K(xj-x0ip,yj-y0ip)·G(E(xj,yj,a[t]),xj-x0ip,yj-y0ip)

where

    • X0ip and y0ip are coordinates of the middle point of the p-th part of the i-th edge fragment, moved at the distance ai along a direction normal to the edge; and Lip is the length of the p-th part of the i-th edge fragment.


After the cost function gradient calculation is performed in the step 110, the step of the next iteration λ[t] may be calculated 112. One may choose the largest component of the cost function gradient imax as the distance between ideal edge position and the process intensity contour C0. This distance may be measured from the middle point at the imax edge fragment.


Then, new parameter values may be calculated 114, and the process 100 may then return to the step 104 and perform (t+1)-th iteration for the parameter component {right arrow over (a)}[t+1].


After the step 108, if the cost function for the new {right arrow over (a)}[t+1] decreases, the process may proceed to the step 110.


After the step 108, if the cost function for the new {right arrow over (a)}[t+1] increases, the step of iteration may be decreased (preferably the step λ[t] is divided by two) 116. Then, when the new step of iteration is not less than a minimum step of iteration, the process 100 may proceed to the step 114 and repeat the (t+1)-th iteration; and when the new step of iteration is less than the minimum step of iteration, parameter values for the minimum cost function may be set 118, and the process 100 may then proceed to step 120 in which the iteration process is stopped.


After the step 108, if the cost function does not change, the process 100 may directly proceed to the step 120 in which the iteration process is stopped.


It is understood that FIGS. 2 through 4 is used to help explain the present method and not intended as a structural limitation to the present invention. Those of ordinary skill in the art will understand that the present invention may be applied to various segments of an IC boundary without departing from the scope and spirit of the present invention.


It is to be noted that the above described embodiments according to the present invention on may be conveniently implemented using conventional general purpose digital computers programmed according to the teachings of the present specification, as will be apparent to those skilled in the computer art. Appropriate software coding may readily be prepared by skilled programmers based on the teachings of the present disclosure, as will be apparent to those skilled in the software art.


It is to be understood that the present invention may be conveniently implemented in forms of software package. Such a software package may be a computer program product which employs a storage medium including stored computer code which is used to program a computer to perform the disclosed function and process of the present invention. The storage medium may include, but is not limited to, any type of conventional floppy disks, optical disks, CD-ROMS, magneto-optical disks, ROMs, RAMs, EPROMs, EEPROMs, magnetic or optical cards, or any other suitable media for storing electronic instructions.


It is understood that the specific order or hierarchy of steps in the processes disclosed is an example of exemplary approaches. Based upon design preferences, it is understood that the specific order or hierarchy of steps in the processes may be rearranged while remaining within the scope of the present invention. The accompanying method claims present elements of the various steps in a sample order, and are not meant to be limited to the specific order or hierarchy presented.


It is believed that the present invention and many of its attendant advantages will be understood by the foregoing description. It is also believed that it will be apparent that various changes may be made in the form, construction and arrangement of the components thereof without departing from the scope and spirit of the invention or without sacrificing all of its material advantages. The form herein before described being merely an explanatory embodiment thereof, it is the intention of the following claims to encompass and include such changes.

Claims
  • 1. A method for making mask edge corrections, comprising steps of: (a) providing initial parameter values and calibration parameter values; (b) performing coherent field calculation; (c) performing process intensity calculation; and (d) calculating a cost function, said cost function being defined as Φ=ΣiΦi2, wherein Φi={(Jini-Cin0),if⁢ ⁢Jini<Cin0(Jouti-Cout0),if⁢ ⁢Jouti>Cout0⁢ ⁢for⁢ ⁢dark⁢ ⁢background;and0,in⁢ ⁢other⁢ ⁢cases⁢⁢Φi={(Jini-Cout0),if⁢ ⁢Jini>Cout0(Jouti-Cin0),if⁢ ⁢Jouti<Cin0⁢ ⁢for⁢ ⁢clear⁢ ⁢background;0,in⁢ ⁢other⁢ ⁢caseswhere Jini and Jouti are process intensity values at points Pini and Pouti, respectively, and Cout0≦C0≦Cin0, C0 being a cutline of a process intensity or aerial image contour, and Cout0 and Cin0 being some cutlines of said process intensity, which characterize an intensity gradient near said aerial image contour.
  • 2. The method of claim 1, further comprising: when a current cost function is less than a previous cost function, calculating a gradient component of said current cost function for i-coordinate ai as Vi⁡[t]=∂∂ai⁢Φ⁡(a⇀)⁢|a⇀=a⇀[t].
  • 3. The method of claim 2, wherein i-th gradient component for l-stage of an iteration process is represented as follows:
  • 4. The method of claim 3, wherein when a size of a rectangle along a boundary edge is smaller than an optical resolution limit
  • 5. The method of claim 2, further comprising: when a length Li of a rectangle along an i-th edge fragment is greater than a optical resolution limit λNA,dividing said i-th edge fragment into Pi=[Li·NAλ]+1parts, each part with a length less than λNAand with a height ai, wherein said first derivative of said process intensity Jj for said parameter vector component ai is represented as follows: ∂Jj∂ai⁢|a⇀=a⇀[t]=⁢∑p=1Pt⁢ ⁢Lip·K⁢(xj-x0⁢ip,yj-y0⁢ip)·⁢G⁡(E⁡(xj,yj,a⇀[t]),xj-x0⁢ip,yj-y0⁢ip)wherein x0ip and y0ip are coordinates of a middle point of p-th part of said i-th edge fragment, moved at a distance ai along a direction normal to said i-th edge fragment; and Lip is a length of said p-th part of said i-th edge fragment.
  • 6. The method of claim 2, further comprising: calculating a step of iteration, calculating new parameter values and returning to said step (b).
  • 7. The method of claim 1, further comprising: stopping an iteration process when a current cost function is equal to a previous cost function.
  • 8. The method of claim 1, further comprising: decreasing a step of iteration when a current cost function is greater than a preceding cost function.
  • 9. An apparatus for making mask edge corrections, comprising: (a) means for providing initial parameter values and calibration parameter values; (b) means for performing coherent field calculation; (c) means for performing process intensity calculation; and (d) means for calculating a cost function, said cost function being defined as Φ=ΣiΦi2, wherein Φi={(Jini-Cin0),if⁢ ⁢Jini<Cin0(Jouti-Cout0),if⁢ ⁢Jouti>Cout0⁢ ⁢for⁢ ⁢dark⁢ ⁢background;and0,in⁢ ⁢other⁢ ⁢cases⁢⁢Φi={(Jini-Cout0),if⁢ ⁢Jini>Cout0(Jouti-Cin0),if⁢ ⁢Jouti<Cin0⁢ ⁢for⁢ ⁢clear⁢ ⁢background;0,in⁢ ⁢other⁢ ⁢caseswhere Jini and Jouti are process intensity values at points Pini and Pouti, respectively, and Cout0≦C0≦Cin0, C0 being a cutline of a process intensity or aerial image contour, and Cout0 and Cin0 being some cutlines of said process intensity, which characterize an intensity gradient near said aerial image contour.
  • 10. The apparatus of claim 9, further comprising: when a current cost function is less than a previous cost function, means for calculating a gradient component of said current cost function for i-coordinate ai as Vi⁡[t]=∂∂ai⁢ ⁢Φ⁡(a⇀)⁢|a⇀=a⇀[t].
  • 11. The apparatus of claim 10, wherein i-th gradient component for t-stage of an iteration process is represented as follows:
  • 12. The apparatus of claim 11, wherein when a size of a rectangle along a boundary edge is smaller than an optical resolution limit
  • 13. The apparatus of claim 10, further comprising: when a length Li of a rectangle along an i-th edge fragment is greater than a optical resolution limit λNA,means for dividing said i-th edge fragment into Pi=[Li·NAλ]+1parts, each part with a length less than λNAand with a height ai, wherein said first derivative of said process intensity Jj for said parameter vector component ai is represented as follows: ∂Jj∂ai⁢a→=a→[i]⁢=⁢∑p=1Pi⁢Lip·K⁡(xj-x0⁢ip,yj-y0⁢ip)·⁢G⁡(E⁡(xj,yj,a→[i]),xj-x0⁢ip,yj-y0⁢ip)wherein x0ip and y0ip are coordinates of a middle point of p-th part of said i-th edge fragment, moved at a distance ai along a direction normal to said i-th edge fragment; and Lip is a length of said p-th part of said i-th edge fragment.
  • 14. The apparatus of claim 10, further comprising: means for calculating a step of iteration, calculating new parameter values and returning to said step (b).
  • 15. The apparatus of claim 9, further comprising: means for stopping an iteration process when a current cost function is equal to a previous cost function.
  • 16. The apparatus of claim 9, further comprising: means for decreasing a step of iteration when a current cost function is greater than a preceding cost function.
  • 17. A computer-readable medium having computer-executable instructions for performing a method for making mask edge corrections, said method comprising steps of: (a) providing initial parameter values and calibration parameter values; (b) performing coherent field calculation; (c) performing process intensity calculation; and (d) calculating a cost function, said cost function being defined as Φ=ΣiΦi2, wherein Φi={(Jini-Cin0),⁢ if⁢ ⁢Jini<Cin0(Jouti-Cout0),if⁢ ⁢Jouti>Cin00,⁢ in⁢ ⁢other⁢ ⁢cases⁢ ⁢for⁢ ⁢dark⁢ ⁢background⁢ ; ⁢andΦi={(Jini-Cout0),if⁢ ⁢Jini>Cout0(Jouti-Cin0),if⁢ ⁢Jouti<Cin00,⁢ in⁢ ⁢other⁢ ⁢cases⁢ ⁢for⁢ ⁢clear⁢ ⁢background⁢ ;⁢ where Jini and Jouti are process intensity values at points Pini and Pouti, respectively, and Cout0≦C0≦Cin0, C0 being a cutline of a process intensity or aerial image contour, and Cout0 and Cin0 being some cutlines of said process intensity, which characterize an intensity gradient near said aerial image contour.
  • 18. The computer-readable medium of claim 17, wherein said method further comprising: when a current cost function is less than a previous cost function, calculating a gradient component of said current cost function for i-coordinate ai as Vi⁡[ι]=∂ ∂ai⁢Φ⁡(a→)a→=a→[i].
  • 19. The computer-readable medium of claim 18, wherein i-th gradient component for t-stage of an iteration process is represented as follows:
  • 20. The computer-readable medium of claim 19, wherein when a size of a rectangle along a boundary edge is smaller than an optical resolution limit
  • 21. The computer-readable medium of claim 18, wherein said method further comprising: when a length Li of a rectangle along an i-th edge fragment is greater than a optical resolution limit λNA,dividing said i-th edge fragment into Pi=[Li·NAλ]+1parts, each part with a length less than λNAand with a height ai, wherein said first derivative of said process intensity Jj for said parameter vector component ai is represented as follows: ∂Jj∂ai⁢❘a->=a->[t]=∑p=1Pt⁢ ⁢Lip·K⁡(xj-x0⁢ip,yj-y0⁢ip)·G⁡(E⁡(xj,yj,a->[t]),xj-x0⁢ip,yj-y0⁢ip)wherein x0ip and Y0ip are coordinates of a middle point of p-th part of said i-th edge fragment, moved at a distance ai along a direction normal to said i-th edge fragment; and Lip is a length of said p-th part of said i-th edge fragment.
  • 22. The computer-readable medium of claim 18, wherein said method further comprising: calculating a step of iteration, calculating new parameter values and returning to said step (b).
  • 23. The computer-readable medium of claim 17, wherein said method further comprising: stopping an iteration process when a current cost function is equal to a previous cost function.
  • 24. The computer-readable medium of claim 17, wherein said method further comprising: decreasing a step of iteration when a current cost function is greater than a preceding cost function.
CROSS-REFERENCE TO RELATED DOCUMENTS

The present application herein incorporates the following by reference in their entirety: (1) U.S. patent application Ser. No. 09/879, 664, entitled “Mask Correction for Photolithographic Processes”, filed Jun. 12, 2001; (2) N. Cobb and A. Zakhor, “Fast, Low-Complexity Mask Design,” in Proceedings of the SPIE Symposium on Optical Microlithography, Santa Clara, Calif., February 1995, vol. 2440, pp. 313-327; and (3) N. Cobb, “Fast Optical and Process Proximity Correction Algorithms for Integrated Circuit Manufacturing,” Ph.D. Thesis, Department of Electrical Engineering and Computer Sciences, University of California at Berkeley, May 1998.