US20080247633A1 - System for generating a set of test patterns for an optical proximity correction algorithm - Google Patents

System for generating a set of test patterns for an optical proximity correction algorithm Download PDF

Info

Publication number
US20080247633A1
US20080247633A1 US12/117,934 US11793408A US2008247633A1 US 20080247633 A1 US20080247633 A1 US 20080247633A1 US 11793408 A US11793408 A US 11793408A US 2008247633 A1 US2008247633 A1 US 2008247633A1
Authority
US
United States
Prior art keywords
matrices
test
pattern
walsh
program product
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US12/117,934
Inventor
David L DeMaris
Mark A. Lavin
William C. Leipold
Daniel N. Maynard
Maharaj Mukherjee
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
GlobalFoundries Inc
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to US12/117,934 priority Critical patent/US20080247633A1/en
Publication of US20080247633A1 publication Critical patent/US20080247633A1/en
Assigned to GLOBALFOUNDRIES U.S. 2 LLC reassignment GLOBALFOUNDRIES U.S. 2 LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: INTERNATIONAL BUSINESS MACHINES CORPORATION
Assigned to GLOBALFOUNDRIES INC. reassignment GLOBALFOUNDRIES INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: GLOBALFOUNDRIES U.S. 2 LLC, GLOBALFOUNDRIES U.S. INC.
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/398Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/18Manufacturability analysis or optimisation for manufacturability
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Definitions

  • the present invention relates generally to VLSI design, and more particularly relates to a system for testing optical proximity correction algorithms for VLSI design.
  • Optical lithography for very large scale integrated (VLSI) circuits is implemented by exposing resist on wafers in a pattern defined by designed shapes on a mask.
  • the patterns produced on the wafer normally differ from those designed due to pattern dependent optical distortions when exposure wavelengths are greater than the feature line width.
  • a variety of resolution enhancement techniques, including optical proximity correction (OPC) algorithms have been devised to compensate for this effect.
  • OPC algorithms modify the designed layouts in ways so that the actual wafer layout more closely matches the original ideal layout.
  • OPC algorithms may work for most layouts, they may fail or produce faulty layouts for certain inputted patterns.
  • results can be modeled in software, and analyzed to determine if a faulty layout will occur.
  • results can be modeled in software, and analyzed to determine if a faulty layout will occur.
  • OPC algorithm a wide variety of patterns must be tested.
  • One problem that arises then is how to create an optimal set of patterns for this testing.
  • the present invention addresses the above-mentioned problems, as well as others, by providing a system, method and program product for generating an optimal set of patterns for testing an optical proximity correction algorithm.
  • the invention provides a method of synthesizing layout patterns, comprising the steps of: embodying Walsh patterns in a set of Walsh pattern matrices; processing at least one matrix from the set of Walsh pattern matrices to form a set of test matrices; and mapping the set of test matrices to a test pattern set.
  • the invention provides a system for generating a set of test patterns to test an optical proximity correction algorithm, comprising: a system that generates a set of Walsh pattern matrices; a system that processes groups of matrices from the set of Walsh pattern matrices to form a set of test matrices; and a system that maps the set of test matrices to a test pattern set.
  • the invention provides a program product stored on a recordable medium for generating a set of test patterns to test an optical proximity correction algorithm, the program product comprising: means for generating a set of Walsh pattern matrices; means for processing groups of matrices from the set of Walsh pattern matrices to form a set of test matrices; and means for mapping the set of test matrices to a test pattern set.
  • FIG. 1 shows an optical proximity correction algorithm testing system in accordance with the invention.
  • FIG. 2 depicts a test pattern generation system for the testing system of FIG. 1 in accordance with the invention.
  • FIG. 3 depicts a pair of tiles generated from two entries in a matrix in accordance with the invention.
  • FIG. 4 depicts an enhanced version of the tiles of FIG. 3 in accordance with the invention.
  • FIG. 5 depicts a second enhanced version of the tiles of FIG. 3 in accordance with the invention.
  • FIG. 6 depicts a further mapping enhancement in accordance with the invention.
  • OPC testing system 10 includes a test pattern generation system 12 that generates a pattern set 14 that will be used to test an OPC algorithm.
  • individual patterns 16 are inputted to an OPC modeling system 18 to generate a modeled output 20 .
  • Modeled output 20 describes, e.g., how the inputted pattern 16 would translate onto a wafer using a particular OPC algorithm.
  • a correction analysis system 22 can analyze the modeled output 20 to determine if the OPC algorithm will generate a faulty result for the inputted pattern.
  • OPC modeling system 18 and correction analysis system 22 form a correction process that verifies topological equivalence, e.g., ensuring that no shorts (reduced number of shapes) or opens (increased number of shapes) are created. It should be understood that the OPC testing system 10 shown in FIG. 1 is provided for illustrative purposes only, and that other systems that utilize the test pattern generation system 12 fall within the scope of the invention.
  • Test pattern generation system 12 includes a system for generating a set of two-dimensional (2D) Walsh pattern matrices 34 , a system for unioning Walsh pattern matrices 36 to generate a set of test matrices 37 , and a mapping system 38 that maps each test matrix into a test pattern 39 .
  • a pruning system 40 may be provided to eliminate (or include) test patterns based on some predetermined set of rules.
  • a multi-scale system 42 may likewise be included to further refine each generated test pattern 39 .
  • a typical computer system may include a memory, a processing unit, input/output devices (I/O) and a bus.
  • a database may also be provided for storage of data relative to processing tasks.
  • Memory may include a program product that, when executed by the processing unit, implements the various functional capabilities described in further detail below.
  • the computer memory and database may comprise any known type of data storage system and/or transmission media, including magnetic media, optical media, random access memory (RAM), read only memory (ROM), a data object, etc.
  • the computer memory and database may reside at a single physical location comprising one or more types of data storage, or be distributed across a plurality of physical systems.
  • the processing unit may likewise comprise a single processing unit, or a plurality of processing units distributed across one or more locations.
  • the system for generating a set of Walsh pattern matrices 34 may be implemented in any known fashion.
  • the set of Walsh pattern matrices embody a set of Walsh patterns, which are described, e.g., in Richmond, B. J. Optican, L. M., Podell, M. and Spitzer, H. “Temporal encoding of two-dimensional patterns by single units in primate inferior temporal cortex,” J. Neurophysiology 57:132-146, 1987.
  • the set of Walsh pattern matrices are generated from an mth order Hadamard matrix.
  • the order may be inputted as a size criteria 30 , which dictates the size of the Hadamard matrix, with a first order being 2 ⁇ 2, a second order being 4 ⁇ 4, a third order being 8 ⁇ 8 and so on.
  • a size criteria 30 which dictates the size of the Hadamard matrix, with a first order being 2 ⁇ 2, a second order being 4 ⁇ 4, a third order being 8 ⁇ 8 and so on.
  • Hadamard matrices which are known in the art and therefore not described in detail, are of the general format:
  • H (first order) [1 1]
  • H ( m order) [ H ( m ⁇ 1) H ( m ⁇ 1)]
  • the size criteria 30 may be selected based on any criteria, including available computational resources, etc.
  • the result is a set of n Walsh pattern matrices (WP 1 , WP 2 , . . . WPn). Once the set is established, the ⁇ 1's in each are replaced with 0's. Next, the set of n Walsh pattern matrices are submitted to the Boolean processing system 36 , which in turn generates a set of test matrices 37 .
  • Boolean processing system 36 “unions” different combinations or groups of matrices from the set of test matrices 37 using a logical “or” function.
  • the number of test matrices in the set 37 may be determined based on an inputted combining criteria k 32 , for instance using combinatorial indices for n choose k matrices.
  • any Boolean function e.g., and, nand, or, nor, xor, etc.
  • the selection of k can greatly depend on the available computational resources (e.g., processing time, storage, etc.) to create the resulting set of test matrices 37 .
  • the largest feasible k can be chosen and will provide the largest overall coverage of possible layouts.
  • the resulting set of test matrices 37 can then be used to build a collection of layout test cases for testing the correctness of layout enhancement software, including optical proximity correction software.
  • this method for a given number of tests, will effectively cover the space of possible patterns up to the resolution of the underlying Walsh pattern matrices.
  • Mapping system 38 then converts entries in each matrix to a grid of “tiles” with 1 indicating a level on (i.e., a feature), and 0 indicating a level off (i.e., no feature), where each tile comprises a minimum line width+minimum space.
  • This process is shown in FIG. 3 , in which a pair of tiles 50 (each having a value of 1 indicating a level on) are converted into a representation in which each has a minimum line width 52 and a minimum line space 54 .
  • Note that more complex rules/constraints could be added to the mapping process. While most current process technologies have utilized minimum space/width rules, some current and future technologies may have more complex rules which could be incorporated into this step.
  • the mapping step may therefore comprise any type of constraint mapping.
  • Mapping system 38 may further enhance the process by traversing the grid and looking for transitions from 0 to 1 and 1 to 0. As shown in FIG. 4 , if a 0 to 1 transition is found, 0.5*minimum space 56 is added to the shape. If a 1 to 0 transition is found, 0.5*minimum space 58 is subtracted from the shape, as for instance is shown in FIG. 5 .
  • This enhancement allows scaling the relationship between matrix cells and shapes to represent a larger area. For instance, with no adjustment, and 8 ⁇ 8 matrix could only represent 4 minimum width/space coordinates. By adjusting the shapes by ⁇ 0.5* min spacing, eight minimum width/space structures can be represented by the matrix, although there will be no structures wider than a minimum space.
  • This enhancement can be selectively implemented by mapping system 38 in order to produce greater than minimum size features. Another reason for the enhancement is that without subtraction, shapes that were diagonally coincident would have touching corners. Trimming the tiles back in the x direction ensures that this does not happen.
  • An alternative enhancement could be implemented using the following steps: First, generate a matrix as above, then generate a basic grid comprised of a minimum width +1.5*minimum space. Then, rather than subtract 0.5*minimum on each edge, generate additional shapes on each edge of each tile to fill extra 0.25 spacing. A resulting pattern that includes decoration 60 is shown in FIG. 6 .
  • a multi-scale system 42 may be included as a further enhancement.
  • This enhancement is intended to account for “region of influence effects,” i.e., to account for the fact that lithography and some algorithms (especially model based OPC algorithms) examine shapes over a relatively large window. This process may be implemented as follows:
  • the large grid size is set by lambda/NA, where lambda is the exposure wavelength and NA (numerical aperture).
  • Further enhancements may include rotating patterns by 45 degrees (in the shape domain, after mapping) and combining them with other generated patterns by unioning to create diagonal lines.
  • a pruning system 40 may be utilized to control the size of the pattern set 14 . This can be utilized to ensure that shapes are chosen which preferentially resemble a real layout, recognizing that not all shape combinations are equally likely. Pruning system 40 may include a corpus, or set of examples, of actual layout regions, and especially a subset of those that have been implicated in problems with correction algorithms. System 40 may choose or reject each generated pattern based on a search for the nearest neighbors in the general layout and the problem layout subset. The distance to the nearest neighbor in feature space can be computed, and a distance threshold can be chosen. This distance threshold might be set differently for a general and a problem corpus.
  • the pattern can be kept with a high probability. If the distance exceeds the threshold it can be kept with a low probability.
  • a methodology is described, e.g., in Watkins, D. Berndt, K. Aebischer, J. Fisher, and L. Johnson, “Breeding Software Test Cases for Complex Systems,” Proceedings of the 37th Hawaii International Conference on System Sciences (HICSS 37), Jan. 5-8, 2004 (http://csdl.computer.org/comp/proceedings/hicss/2004/2056/19205690303c.pdf).
  • systems, functions, mechanisms, methods, engines and modules described herein can be implemented in hardware, software, or a combination of hardware and software. They may be implemented by any type of computer system or other apparatus adapted for carrying out the methods described herein.
  • a typical combination of hardware and software could be a general-purpose computer system with a computer program that, when loaded and executed, controls the computer system such that it carries out the methods described herein.
  • a specific use computer containing specialized hardware for carrying out one or more of the functional tasks of the invention could be utilized.
  • part of all of the invention could be implemented in a distributed manner, e.g., over a network such as the Internet.
  • the present invention can also be embedded in a computer program product, which comprises all the features enabling the implementation of the methods and functions described herein, and which—when loaded in a computer system—is able to carry out these methods and functions.
  • Terms such as computer program, software program, program, program product, software, etc., in the present context mean any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function either directly or after either or both of the following: (a) conversion to another language, code or notation; and/or (b) reproduction in a different material form.
  • the disclosed systems and methods are generally directed to the testing of optical proximity correction or other resolution enhancement processes
  • the use of the pattern synthesis methodology taught herein is not limited to these problems.
  • the patterns may be used in conjunction with search techniques such as those disclosed in “System for Search and Analysis of Systematic Defects in Integrated Circuits,” filed on Oct. 30, 2003, Ser. No. 10/605,849, DeMaris et al, which is hereby incorporated by reference.
  • search techniques such as those disclosed in “System for Search and Analysis of Systematic Defects in Integrated Circuits,” filed on Oct. 30, 2003, Ser. No. 10/605,849, DeMaris et al, which is hereby incorporated by reference.
  • Disclosed therein is a technique for searching new designs for examples of the problem which may then be corrected by designers or automated processes.
  • the patterns may also be used to test for intrinsic process sensitivities, and to search new designs for instances of patterns which are so discovered.
  • the patterns found by synthesis and search may be corrected by designers or automated processes.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Preparing Plates And Mask In Photomechanical Process (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

A system of synthesizing layout patterns to test an optical proximity correction algorithm. The method comprises the steps of: embodying Walsh patterns in a set of Walsh pattern matrices; processing groups of matrices from the set of Walsh pattern matrices to form a set of test matrices; mapping the set of test matrices to a test pattern set.

Description

  • The current application is a continuation application of co-pending U.S. patent application Ser. No. 10/710,648, filed on Jul. 27, 2004, which is hereby incorporated by reference.
  • BACKGROUND OF THE INVENTION
  • 1. Technical Field
  • The present invention relates generally to VLSI design, and more particularly relates to a system for testing optical proximity correction algorithms for VLSI design.
  • 2. Related Art
  • Optical lithography for very large scale integrated (VLSI) circuits is implemented by exposing resist on wafers in a pattern defined by designed shapes on a mask. However, the patterns produced on the wafer normally differ from those designed due to pattern dependent optical distortions when exposure wavelengths are greater than the feature line width. A variety of resolution enhancement techniques, including optical proximity correction (OPC) algorithms, have been devised to compensate for this effect. These OPC algorithms modify the designed layouts in ways so that the actual wafer layout more closely matches the original ideal layout. However, while such OPC algorithms may work for most layouts, they may fail or produce faulty layouts for certain inputted patterns.
  • To determine whether or not an inputted pattern will cause a faulty result, results can be modeled in software, and analyzed to determine if a faulty layout will occur. However, in order to effectively test an OPC algorithm, a wide variety of patterns must be tested. One problem that arises then is how to create an optimal set of patterns for this testing.
  • Conventional approaches to test programs include either a collection of actual designs that are used as a test suite, or synthesizing pseudo-random layouts. For the latter technique, a small seed layout is constructed, and variations are produced by making random copies, translations and orientation changes. In both approaches, however, it is unknown how effectively the layout covers the space of possible shape interactions that may reveal flaws in the OPC algorithm. Accordingly, a need exists for efficiently generating a set of test patterns to test OPC algorithms.
  • SUMMARY OF THE INVENTION
  • The present invention addresses the above-mentioned problems, as well as others, by providing a system, method and program product for generating an optimal set of patterns for testing an optical proximity correction algorithm. In a first aspect, the invention provides a method of synthesizing layout patterns, comprising the steps of: embodying Walsh patterns in a set of Walsh pattern matrices; processing at least one matrix from the set of Walsh pattern matrices to form a set of test matrices; and mapping the set of test matrices to a test pattern set.
  • In a second aspect, the invention provides a system for generating a set of test patterns to test an optical proximity correction algorithm, comprising: a system that generates a set of Walsh pattern matrices; a system that processes groups of matrices from the set of Walsh pattern matrices to form a set of test matrices; and a system that maps the set of test matrices to a test pattern set.
  • In a third aspect, the invention provides a program product stored on a recordable medium for generating a set of test patterns to test an optical proximity correction algorithm, the program product comprising: means for generating a set of Walsh pattern matrices; means for processing groups of matrices from the set of Walsh pattern matrices to form a set of test matrices; and means for mapping the set of test matrices to a test pattern set.
  • The foregoing and other features of the invention will be apparent from the following more particular description of embodiments of the invention.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The embodiments of this invention will be described in detail, with reference to the following figures, wherein like designations denote like elements, and wherein:
  • FIG. 1 shows an optical proximity correction algorithm testing system in accordance with the invention.
  • FIG. 2 depicts a test pattern generation system for the testing system of FIG. 1 in accordance with the invention.
  • FIG. 3 depicts a pair of tiles generated from two entries in a matrix in accordance with the invention.
  • FIG. 4 depicts an enhanced version of the tiles of FIG. 3 in accordance with the invention.
  • FIG. 5 depicts a second enhanced version of the tiles of FIG. 3 in accordance with the invention.
  • FIG. 6 depicts a further mapping enhancement in accordance with the invention.
  • DETAILED DESCRIPTION OF THE INVENTION
  • Referring now FIG. 1, an illustrative optical proximity correction (OPC) testing system 10 is shown. OPC testing system 10 includes a test pattern generation system 12 that generates a pattern set 14 that will be used to test an OPC algorithm. To accomplish this testing, individual patterns 16 are inputted to an OPC modeling system 18 to generate a modeled output 20. Modeled output 20 describes, e.g., how the inputted pattern 16 would translate onto a wafer using a particular OPC algorithm. A correction analysis system 22 can analyze the modeled output 20 to determine if the OPC algorithm will generate a faulty result for the inputted pattern. Thus, OPC modeling system 18 and correction analysis system 22 form a correction process that verifies topological equivalence, e.g., ensuring that no shorts (reduced number of shapes) or opens (increased number of shapes) are created. It should be understood that the OPC testing system 10 shown in FIG. 1 is provided for illustrative purposes only, and that other systems that utilize the test pattern generation system 12 fall within the scope of the invention.
  • Referring now to FIG. 2, a more detailed overview of the test pattern generation system 12 is provided. Test pattern generation system 12 includes a system for generating a set of two-dimensional (2D) Walsh pattern matrices 34, a system for unioning Walsh pattern matrices 36 to generate a set of test matrices 37, and a mapping system 38 that maps each test matrix into a test pattern 39. A pruning system 40 may be provided to eliminate (or include) test patterns based on some predetermined set of rules. Furthermore, a multi-scale system 42 may likewise be included to further refine each generated test pattern 39.
  • Each of these systems, which are described in further detail below, may be implemented in hardware or software using any type of computer system (not shown). A typical computer system may include a memory, a processing unit, input/output devices (I/O) and a bus. A database may also be provided for storage of data relative to processing tasks. Memory may include a program product that, when executed by the processing unit, implements the various functional capabilities described in further detail below. The computer memory and database may comprise any known type of data storage system and/or transmission media, including magnetic media, optical media, random access memory (RAM), read only memory (ROM), a data object, etc. Moreover, the computer memory and database may reside at a single physical location comprising one or more types of data storage, or be distributed across a plurality of physical systems. The processing unit may likewise comprise a single processing unit, or a plurality of processing units distributed across one or more locations.
  • The system for generating a set of Walsh pattern matrices 34 may be implemented in any known fashion. The set of Walsh pattern matrices embody a set of Walsh patterns, which are described, e.g., in Richmond, B. J. Optican, L. M., Podell, M. and Spitzer, H. “Temporal encoding of two-dimensional patterns by single units in primate inferior temporal cortex,” J. Neurophysiology 57:132-146, 1987. In one illustrative embodiment, the set of Walsh pattern matrices are generated from an mth order Hadamard matrix. The order may be inputted as a size criteria 30, which dictates the size of the Hadamard matrix, with a first order being 2×2, a second order being 4×4, a third order being 8×8 and so on. Hadamard matrices, which are known in the art and therefore not described in detail, are of the general format:

  • H(first order)=[1 1] H(m order)=[H(m−1) H(m−1)]

  • [1−1] [H(m−1) H(m−1)]
  • The size criteria 30 may be selected based on any criteria, including available computational resources, etc.
  • Once an N×N Hadamard matrix is established, a set (of size N*N=n) of Walsh pattern matrices may be generated with the following pseudo code:
    • Let Hr=Rotate Hadamard matrix by −90
    • Let Hc=Rotate Hadamard matrix by +180
    • For each row in Hr
  • Copy row to each row r of new matrix Htemp
    • For each column c in Hc
  • Copy column to each column of new matrix Vtemp.
    • WPi=pointwise multiply(Htemp r,Vtemp c).
  • The result is a set of n Walsh pattern matrices (WP1, WP2, . . . WPn). Once the set is established, the −1's in each are replaced with 0's. Next, the set of n Walsh pattern matrices are submitted to the Boolean processing system 36, which in turn generates a set of test matrices 37. In one illustrative embodiment, Boolean processing system 36 “unions” different combinations or groups of matrices from the set of test matrices 37 using a logical “or” function. The number of test matrices in the set 37 may be determined based on an inputted combining criteria k 32, for instance using combinatorial indices for n choose k matrices. Thus, in this embodiment, k determines how many different ways a group (i.e., one or more) of k matrices can be selected from the set of n Walsh pattern matrices. Accordingly, for n=64 (i.e., an 8×8 hadamard matrix) and k=4,635,376 matrices will be generated. It should be understood that any Boolean function (e.g., and, nand, or, nor, xor, etc.) can be used to create the set of test matrices 37 from the set of Walsh pattern matrices.
  • The selection of k can greatly depend on the available computational resources (e.g., processing time, storage, etc.) to create the resulting set of test matrices 37. Depending on the resources, the largest feasible k can be chosen and will provide the largest overall coverage of possible layouts. The resulting set of test matrices 37 can then be used to build a collection of layout test cases for testing the correctness of layout enhancement software, including optical proximity correction software. Thus, this method, for a given number of tests, will effectively cover the space of possible patterns up to the resolution of the underlying Walsh pattern matrices.
  • Mapping system 38 then converts entries in each matrix to a grid of “tiles” with 1 indicating a level on (i.e., a feature), and 0 indicating a level off (i.e., no feature), where each tile comprises a minimum line width+minimum space. This process is shown in FIG. 3, in which a pair of tiles 50 (each having a value of 1 indicating a level on) are converted into a representation in which each has a minimum line width 52 and a minimum line space 54. Note that that more complex rules/constraints could be added to the mapping process. While most current process technologies have utilized minimum space/width rules, some current and future technologies may have more complex rules which could be incorporated into this step. The mapping step may therefore comprise any type of constraint mapping.
  • Mapping system 38 (FIG. 2) may further enhance the process by traversing the grid and looking for transitions from 0 to 1 and 1 to 0. As shown in FIG. 4, if a 0 to 1 transition is found, 0.5*minimum space 56 is added to the shape. If a 1 to 0 transition is found, 0.5*minimum space 58 is subtracted from the shape, as for instance is shown in FIG. 5. This enhancement allows scaling the relationship between matrix cells and shapes to represent a larger area. For instance, with no adjustment, and 8×8 matrix could only represent 4 minimum width/space coordinates. By adjusting the shapes by ±0.5* min spacing, eight minimum width/space structures can be represented by the matrix, although there will be no structures wider than a minimum space. This enhancement can be selectively implemented by mapping system 38 in order to produce greater than minimum size features. Another reason for the enhancement is that without subtraction, shapes that were diagonally coincident would have touching corners. Trimming the tiles back in the x direction ensures that this does not happen.
  • An alternative enhancement could be implemented using the following steps: First, generate a matrix as above, then generate a basic grid comprised of a minimum width +1.5*minimum space. Then, rather than subtract 0.5*minimum on each edge, generate additional shapes on each edge of each tile to fill extra 0.25 spacing. A resulting pattern that includes decoration 60 is shown in FIG. 6.
  • Furthermore, as noted above in FIG. 2, a multi-scale system 42 may be included as a further enhancement. This enhancement is intended to account for “region of influence effects,” i.e., to account for the fact that lithography and some algorithms (especially model based OPC algorithms) examine shapes over a relatively large window. This process may be implemented as follows:
  • 1. Create shapes by basic or enhanced method.
  • 2. Create a large grid A with a minimum allowable shape density after addition of manufacturing fill shapes. The large grid size is set by lambda/NA, where lambda is the exposure wavelength and NA (numerical aperture).
  • 3. Create a large grid B (size is the same as A) as with maximum allowable shape density, assuming tiling of minimum width and space shapes.
  • 4. Create large grids A′ and B′ with grids in the opposite orientation.
  • Further enhancements may include rotating patterns by 45 degrees (in the shape domain, after mapping) and combining them with other generated patterns by unioning to create diagonal lines.
  • Finally, a pruning system 40 (FIG. 2) may be utilized to control the size of the pattern set 14. This can be utilized to ensure that shapes are chosen which preferentially resemble a real layout, recognizing that not all shape combinations are equally likely. Pruning system 40 may include a corpus, or set of examples, of actual layout regions, and especially a subset of those that have been implicated in problems with correction algorithms. System 40 may choose or reject each generated pattern based on a search for the nearest neighbors in the general layout and the problem layout subset. The distance to the nearest neighbor in feature space can be computed, and a distance threshold can be chosen. This distance threshold might be set differently for a general and a problem corpus. If the distance is less than the threshold for the problem corpus, the pattern can be kept with a high probability. If the distance exceeds the threshold it can be kept with a low probability. Such a methodology is described, e.g., in Watkins, D. Berndt, K. Aebischer, J. Fisher, and L. Johnson, “Breeding Software Test Cases for Complex Systems,” Proceedings of the 37th Hawaii International Conference on System Sciences (HICSS 37), Jan. 5-8, 2004 (http://csdl.computer.org/comp/proceedings/hicss/2004/2056/09/205690303c.pdf).
  • It is understood that the systems, functions, mechanisms, methods, engines and modules described herein can be implemented in hardware, software, or a combination of hardware and software. They may be implemented by any type of computer system or other apparatus adapted for carrying out the methods described herein. A typical combination of hardware and software could be a general-purpose computer system with a computer program that, when loaded and executed, controls the computer system such that it carries out the methods described herein. Alternatively, a specific use computer, containing specialized hardware for carrying out one or more of the functional tasks of the invention could be utilized. In a further embodiment, part of all of the invention could be implemented in a distributed manner, e.g., over a network such as the Internet.
  • The present invention can also be embedded in a computer program product, which comprises all the features enabling the implementation of the methods and functions described herein, and which—when loaded in a computer system—is able to carry out these methods and functions. Terms such as computer program, software program, program, program product, software, etc., in the present context mean any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function either directly or after either or both of the following: (a) conversion to another language, code or notation; and/or (b) reproduction in a different material form.
  • The foregoing description of the invention has been presented for purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise form disclosed, and obviously, many modifications and variations are possible. Such modifications and variations that may be apparent to a person skilled in the art are intended to be included within the scope of this invention as defined by the accompanying claims.
  • For instance, while the disclosed systems and methods are generally directed to the testing of optical proximity correction or other resolution enhancement processes, the use of the pattern synthesis methodology taught herein is not limited to these problems. For example, in addition to problem discovery, the patterns may be used in conjunction with search techniques such as those disclosed in “System for Search and Analysis of Systematic Defects in Integrated Circuits,” filed on Oct. 30, 2003, Ser. No. 10/605,849, DeMaris et al, which is hereby incorporated by reference. Disclosed therein is a technique for searching new designs for examples of the problem which may then be corrected by designers or automated processes. The patterns may also be used to test for intrinsic process sensitivities, and to search new designs for instances of patterns which are so discovered. The patterns found by synthesis and search may be corrected by designers or automated processes.

Claims (9)

1. A system for generating a set of test patterns to test an optical proximity correction algorithm, comprising:
a system that generates a set of Walsh pattern matrices;
a system that processes groups of matrices from the set of Walsh pattern matrices to form a set of test matrices; and
a system that maps the set of test matrices to a test pattern set by mapping matrix entries to tiles in a minimum space, minimum width grid, wherein each tile is assigned a value of either level on or level off.
2. The system of claim 1, wherein the processing system determines a set of combinatorial indices for n choose k matrices, wherein n represents the number of matrices in the set of Walsh pattern matrices, and k is the number of matrices in each group of matrices.
3. The method of claim 1, wherein the mapping system adjusts spacing of tiles when a transition from on to off, or off to on, is detected.
4. The method of claim 1, further comprising a system for pruning the pattern set based on a predetermined set of rules.
3. A program product stored on a recordable medium for generating a set of test patterns to test an optical proximity correction algorithm, the program product comprising:
means for generating a set of Walsh pattern matrices;
means for processing groups of matrices from the set of Walsh pattern matrices to form a set of test matrices;
means for mapping the set of test matrices to a test pattern set by mapping matrix entries to tiles in a minimum space, minimum width grid, wherein each tile is assigned a value of either level on or level off.
4. The program product of claim 3, wherein the combining means determines a set of combinatorial indices for n choose k matrices, wherein n represents the number of matrices in the set of Walsh pattern matrices, and k is the number of matrices in each group of matrices.
5. The program product of claim 3, wherein the processing means processes matrices using a Boolean operation.
6. The program product of claim 3, wherein the mapping means adjusts spacing of tiles when a transition from on to off, or off to on, is detected.
7. The program product of claim 3, further comprising means for pruning the pattern set based on a predetermined set of rules.
US12/117,934 2004-07-27 2008-05-09 System for generating a set of test patterns for an optical proximity correction algorithm Abandoned US20080247633A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/117,934 US20080247633A1 (en) 2004-07-27 2008-05-09 System for generating a set of test patterns for an optical proximity correction algorithm

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/710,648 US7404174B2 (en) 2004-07-27 2004-07-27 method for generating a set of test patterns for an optical proximity correction algorithm
US12/117,934 US20080247633A1 (en) 2004-07-27 2008-05-09 System for generating a set of test patterns for an optical proximity correction algorithm

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US10/710,648 Continuation US7404174B2 (en) 2004-07-27 2004-07-27 method for generating a set of test patterns for an optical proximity correction algorithm

Publications (1)

Publication Number Publication Date
US20080247633A1 true US20080247633A1 (en) 2008-10-09

Family

ID=35732253

Family Applications (2)

Application Number Title Priority Date Filing Date
US10/710,648 Expired - Fee Related US7404174B2 (en) 2004-07-27 2004-07-27 method for generating a set of test patterns for an optical proximity correction algorithm
US12/117,934 Abandoned US20080247633A1 (en) 2004-07-27 2008-05-09 System for generating a set of test patterns for an optical proximity correction algorithm

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US10/710,648 Expired - Fee Related US7404174B2 (en) 2004-07-27 2004-07-27 method for generating a set of test patterns for an optical proximity correction algorithm

Country Status (1)

Country Link
US (2) US7404174B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060285739A1 (en) * 2005-06-09 2006-12-21 Shimon Maeda Evaluation pattern generating method and computer program product

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7254803B2 (en) * 2004-09-30 2007-08-07 Intel Corporation Test structures for feature fidelity improvement
US7584450B2 (en) * 2006-02-17 2009-09-01 Synopsys, Inc. Method and apparatus for using a database to quickly identify and correct a manufacturing problem area in a layout
US7472364B2 (en) * 2006-08-02 2008-12-30 International Business Machines Corporation Method of matching layout shapes patterns in an integrated circuit using walsh patterns
US8040573B2 (en) * 2006-08-14 2011-10-18 Asml Masktools B.V. Method, program product and apparatus for translating geometrical design rules into boundary conditions in the imaging space so as to define test patterns for use in optical model calibration
US7840890B2 (en) * 2007-02-26 2010-11-23 Emc Corporation Generation of randomly structured forms
US7895548B2 (en) * 2007-10-26 2011-02-22 Synopsys, Inc. Filler cells for design optimization in a place-and-route system
US9472423B2 (en) * 2007-10-30 2016-10-18 Synopsys, Inc. Method for suppressing lattice defects in a semiconductor substrate
US7900169B2 (en) * 2009-01-06 2011-03-01 International Business Machines Corporation OPC model calibration process
US10026589B1 (en) * 2013-11-27 2018-07-17 Multibeam Corporation Alignment and registration targets for charged particle beam substrate patterning and inspection
US9595419B1 (en) * 2013-11-27 2017-03-14 Multibeam Corporation Alignment and registration targets for multiple-column charged particle beam lithography and inspection

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6952818B2 (en) * 2001-11-26 2005-10-04 Kabushiki Kaisha Toshiba Method and system for optical proximity correction

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6952818B2 (en) * 2001-11-26 2005-10-04 Kabushiki Kaisha Toshiba Method and system for optical proximity correction

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060285739A1 (en) * 2005-06-09 2006-12-21 Shimon Maeda Evaluation pattern generating method and computer program product

Also Published As

Publication number Publication date
US20060023932A1 (en) 2006-02-02
US7404174B2 (en) 2008-07-22

Similar Documents

Publication Publication Date Title
US20080247633A1 (en) System for generating a set of test patterns for an optical proximity correction algorithm
US7523429B2 (en) System for designing integrated circuits with enhanced manufacturability
US10846454B2 (en) Integrated circuits having in-situ constraints
US7093228B2 (en) Method and system for classifying an integrated circuit for optical proximity correction
US7401319B2 (en) Method and system for reticle-wide hierarchy management for representational and computational reuse in integrated circuit layout design
US20100162194A1 (en) Method for Selectively Enlarging Via and Contact Sizes
US7558419B1 (en) System and method for detecting integrated circuit pattern defects
US20100122231A1 (en) Electrically-driven optical proximity correction to compensate for non-optical effects
KR100962859B1 (en) Selective Scaling of Integrated Circuits
US7568180B2 (en) Generalization of the photo process window and its application to OPC test pattern design
US12321682B2 (en) Post-routing congestion optimization
KR20110117404A (en) Manufacturing Method of Semiconductor Device Using Uniform Optical Proximity Effect Correction
US12039249B2 (en) System and method for diagnosing design rule check violations
US7082588B2 (en) Method and apparatus for designing integrated circuit layouts
WO2022093529A1 (en) Prediction and metrology of stochastic photoresist thickness defects
Esbensen A genetic algorithm for macro cell placement
CN113742795B (en) Method for authenticating a security level of a semiconductor memory in an integrated circuit
US7458060B2 (en) Yield-limiting design-rules-compliant pattern library generation and layout inspection
US9875334B2 (en) Generating manufacturable sub-resolution assist feature shapes from a usefulness map
US7254798B2 (en) Method and apparatus for designing integrated circuit layouts
Chen et al. Novel proximal group ADMM for placement considering fogging and proximity effects
US10254642B2 (en) Modifying design layer of integrated circuit (IC) using nested and non-nested fill objects
US8619236B2 (en) Determining lithographic set point using optical proximity correction verification simulation
JP2003520999A (en) Geometric aerial image simulation
US20250224666A1 (en) Method for optimizing optical proximity correction model and method for manufacturing semiconductor device including the same

Legal Events

Date Code Title Description
STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO PAY ISSUE FEE

AS Assignment

Owner name: GLOBALFOUNDRIES U.S. 2 LLC, NEW YORK

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:INTERNATIONAL BUSINESS MACHINES CORPORATION;REEL/FRAME:036550/0001

Effective date: 20150629

AS Assignment

Owner name: GLOBALFOUNDRIES INC., CAYMAN ISLANDS

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:GLOBALFOUNDRIES U.S. 2 LLC;GLOBALFOUNDRIES U.S. INC.;REEL/FRAME:036779/0001

Effective date: 20150910