EP1023639A1 - Procede et dispositif servant a maintenir une hierarchie de donnees dans un systeme de description de masque - Google Patents

Procede et dispositif servant a maintenir une hierarchie de donnees dans un systeme de description de masque

Info

Publication number
EP1023639A1
EP1023639A1 EP98947103A EP98947103A EP1023639A1 EP 1023639 A1 EP1023639 A1 EP 1023639A1 EP 98947103 A EP98947103 A EP 98947103A EP 98947103 A EP98947103 A EP 98947103A EP 1023639 A1 EP1023639 A1 EP 1023639A1
Authority
EP
European Patent Office
Prior art keywords
layout
cell
data
integrated circuit
cells
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.)
Withdrawn
Application number
EP98947103A
Other languages
German (de)
English (en)
Other versions
EP1023639A4 (fr
Inventor
Fang-Cheng Chang
Yao-Ting Wang
Yagyensh C. Pati
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.)
Synopsys Inc
Original Assignee
Numerical Technologies Inc
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
Priority claimed from US08/931,921 external-priority patent/US5858580A/en
Priority claimed from US09/130,996 external-priority patent/US6757645B2/en
Priority claimed from US09/154,397 external-priority patent/US6453452B1/en
Priority claimed from US09/153,783 external-priority patent/US6470489B1/en
Application filed by Numerical Technologies Inc filed Critical Numerical Technologies Inc
Priority claimed from PCT/US1998/019438 external-priority patent/WO1999014636A1/fr
Publication of EP1023639A1 publication Critical patent/EP1023639A1/fr
Publication of EP1023639A4 publication Critical patent/EP1023639A4/fr
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03FPHOTOMECHANICAL PRODUCTION OF TEXTURED OR PATTERNED SURFACES, e.g. FOR PRINTING, FOR PROCESSING OF SEMICONDUCTOR DEVICES; MATERIALS THEREFOR; ORIGINALS THEREFOR; APPARATUS SPECIALLY ADAPTED THEREFOR
    • G03F1/00Originals for photomechanical production of textured or patterned surfaces, e.g., masks, photo-masks, reticles; Mask blanks or pellicles therefor; Containers specially adapted therefor; Preparation thereof
    • G03F1/36Masks having proximity correction features; Preparation thereof, e.g. optical proximity correction [OPC] design processes
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03FPHOTOMECHANICAL PRODUCTION OF TEXTURED OR PATTERNED SURFACES, e.g. FOR PRINTING, FOR PROCESSING OF SEMICONDUCTOR DEVICES; MATERIALS THEREFOR; ORIGINALS THEREFOR; APPARATUS SPECIALLY ADAPTED THEREFOR
    • G03F7/00Photomechanical, e.g. photolithographic, production of textured or patterned surfaces, e.g. printing surfaces; Materials therefor, e.g. comprising photoresists; Apparatus specially adapted therefor
    • G03F7/70Microphotolithographic exposure; Apparatus therefor
    • G03F7/70058Mask illumination systems
    • G03F7/70091Illumination settings, i.e. intensity distribution in the pupil plane or angular distribution in the field plane; On-axis or off-axis settings, e.g. annular, dipole or quadrupole settings; Partial coherence control, i.e. sigma or numerical aperture [NA]
    • G03F7/70116Off-axis setting using a programmable means, e.g. liquid crystal display [LCD], digital micromirror device [DMD] or pupil facets
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L27/00Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate
    • H01L27/02Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers
    • H01L27/0203Particular design considerations for integrated circuits
    • H01L27/0207Geometrical layout of the components, e.g. computer aided design; custom LSI, semi-custom LSI, standard cell technique

Definitions

  • This invention relates to the field of integrated circuit manufacturing.
  • the invention relates to concepts and implementation techniques for the quick and efficient design, correction and verification of masks utilized in the manufacture of integrated circuits.
  • IC integrated circuit
  • CAD computer aided design
  • the software programs employed by these CAD systems are usually structured to function under a set of predetermined design rules in order to produce a functional circuit. Often, these rules are determined by certain processing and design limitations. For example, design rules may define the space tolerance between devices or interconnect lines so as to ensure that the devices or lines do not interact with one another in any unwanted manner. Design rule limitations are frequently referred to as critical dimensions. A critical dimension of a circuit is commonly defined as the smallest width of a line or the smallest space between two lines. Consequently, the critical dimension determines the overall size and density of the IC. In present IC technology, the smallest critical dimension for state-of-the-art circuits is approximately 0.25 microns for line widths and spacings.
  • Optical lithography is a well known process for transferring geometric shapes onto the surface of a silicon wafer.
  • the optical lithography process generally begins with the formation of a photoresist layer on the top surface of a semiconductor wafer.
  • the light is focused to generate a reduced mask image on the wafer typically using an optical lens system which contains one or several lenses, filters, and or mirrors.
  • This light passes through the clear regions of the mask to expose the underlying photoresist layer, and is blocked by the opaque regions of the mask, leaving that underlying portion of the photoresist layer unexposed.
  • the exposed photoresist layer is then developed, typically through chemical removal of the exposed/non- exposed regions of the photoresist layer.
  • the end result is a semiconductor wafer coated with a photoresist layer exhibiting a desired pattern which defines the geometries, features, lines and shapes of that layer. This pattern can then be used for etching underlying regions of the wafer.
  • the resolution value of the exposure tool used in optical lithography also places limits on the designers of integrated circuit layouts.
  • the resolution for an exposure tool is defined as the minimum feature that the exposure tool can repeatedly expose onto the wafer.
  • the resolution for most advanced optical exposure tools is around 0.25 micron.
  • the critical dimensions of the layout become smaller and approach the resolution value of the lithography equipment, the consistency between the mask and the actual layout pattern developed in the photoresist is significantly reduced.
  • differences in pattern development of circuit features depends upon the proximity of the features to one another.
  • a memory array may be described as having a given cell repeated for a certain number of rows and columns.
  • the next lower level in the hierarchy might describe the basic memory cell, comprised of subcells A and B.
  • the most primitive subcells contain geometric primitives-rectangles and polygons.
  • the hierarchical data In order to generate a physical mask, the hierarchical data must first be flattened, enumerating every geometric instance described in the hierarchy. Flattening of the hierarchy typically results in several orders of magnitude increase in the size of data storage required to represent the pattern.
  • these operations require some sort of flattening of the original design data in order to be performed ⁇ resulting in an earlier than desired flattening of the design data.
  • These operations include the performance of logical operations, the generation of optical proximity corrections, the generation of phase shifting masks, and the design rule checking of masks that have undergone these operations. For instance, since the physical mask making process may introduce known distortions in the mask that are dependent upon the particular EB machine being used, mask makers may use logical operations such as AND or NOT operations between design layers to generate new mask layers which compensate for these known distortions. Further, mask designers may generate sub-resolution optical proximity correction features for a mask to compensate for the proximity effects which occur when very closely spaced pattern features are lithographically transferred to a resist layer on a wafer.
  • a computer program product which includes a first program data.
  • the first program data includes hierarchically configured correction data corresponding to the hierarchically described layout such that if the first program data were applied to the flattened layout an output comprising data representative of the result of performing the operation on the layout would be generated.
  • the first program data is further characterized in that it comprises a plurality of delta planes that correspond to the plurality of cells.
  • the delta plane of a particular cell comprises data representative of the difference between a correction plane of the particular cell and the delta planes corresponding to the children cells of the particular cell.
  • the correction plane for each cell of the plurality of cells comprises data that would generate an output representative of the result of performing the operation on the cell if the correction plane were applied to the flattened cell data.
  • the delta plane for each cell in the hierarchically described integrated circuit layout accounts for interaction between each of the cell's child cells and interaction between the cell's primitive geometry and each of the cell's child cells.
  • the first program data may comprise a set of arithmetically or logically described delta planes. Still further, the first program data may be described by a GDS-II data file.
  • the present invention as summarized above with respect to a first program data may be alternatively characterized as a method of performing an operation on a hierarchically described integrated circuit layout.
  • the method includes, in one embodiment, providing a hierarchically described layout as a first input wherein the layout comprises a plurality of cells, and providing a particular set of operating criteria as a second input.
  • the method also includes performing a layout operation in accordance with the particular set of operating criteria on the layout and generating a first program data comprising hierarchically configured correction data corresponding to the hierarchically described layout.
  • the first program data is generated in response to the layout operation such that if the first program data were applied to the flattened layout an output comprising data representative of the result of performing the operation on the layout would be generated.
  • the first program data comprises a plurality of delta planes that correspond to the plurality of cells.
  • the delta plane of a particular cell comprises data representative of the difference between a correction plane of the particular cell and the delta planes corresponding to the children cells of the particular cell.
  • the correction plane for each cell of the plurality of cells comprises data that would generate an output representative of the result of performing the operation on the cell if the correction plane were applied to the flattened cell data.
  • the delta plane for each cell in the hierarchically described integrated circuit layout accounts for interaction between each of the cell's child cells and interaction between the cell's primitive geometry and each of the cell's child cells.
  • the step of generating the first program data further comprises compiling and linking the hierarchically described layout.
  • compiling comprises generating a first correction layer for each cell in response to the particular set of operating criteria.
  • Linking comprises modifying the correction layer of each cell in response to the particular set of operating criteria to generate the delta plane for each cell.
  • the delta plane of each cell accounts for interaction between each of the cell's child cells and interaction between the cell's primitive geometry and each of the cell's child cells.
  • the sum of the cell's delta plane and the delta planes of the cell's child cells comprises a correction plane of the cell.
  • the correction plane for each cell in the plurality of cells comprises data that would generate an output data representative of the result of performing the operation on the cell if the correction plane were applied to the flattened cell data.
  • compiling and linking each comprise a depth-wise traversing of the integrated circuit layout.
  • linking and compiling may further comprise determining whether each cell has been previously defined and generating a first correction layer and delta plane comprising data indicative of a location of a first instance of a cell definition for each cell which has been previously defined.
  • a still further embodiment of the method includes combining the first program data with the data describing the integrated circuit layout to produce a second program data that describes a first corrected layout.
  • the second program data is then provided to a design rule checker apparatus, and the design rule checker apparatus is operated to determine whether the first corrected layout falls within a set of integrated circuit design rules.
  • Another embodiment of the invention is characterized as a photolithography mask produced in accordance with the method steps summarized above.
  • the method steps of the above embodiments may in one instance be performed by a computer running a program of instructions which implements these steps wherein the program is stored on any appropriate computer storage media such as a hard disk or server.
  • the present invention as summarized above with respect to a first program data and a method may also be alternatively characterized as an apparatus for performing an operation on a hierarchically described integrated circuit layout.
  • the apparatus includes, in one embodiment, a resource for receiving hierarchically described layout as a first input wherein the layout comprises a plurality of cells, and a resource for receiving a particular set of operating criteria as a second input.
  • the apparatus also includes an operation engine which performs a layout operation in accordance with the particular set of operating criteria on the hierarchically described layout, and a hierarchy preserver which generates a first program data comprising hierarchically configured correction data corresponding to the hierarchically described layout.
  • the first program data is generated in response to the layout operation such that if the first program data were applied to the flattened layout an output comprising data representative of the result of performing the mask operation on the layout would be generated.
  • the first program data comprises a plurality of delta planes that correspond to the plurality of cells.
  • the delta plane of a particular cell comprises data representative of the difference between a correction plane of the particular cell and the delta planes corresponding to the children cells of the particular cell.
  • the correction plane for each cell of the plurality of cells comprises data that would generate an output representative of the result of performing the operation on the cell if the correction plane were applied to the flattened cell data.
  • the delta plane for each cell in the hierarchically described integrated circuit layout accounts for interaction between each of the cell's child cells and interaction between the cell's primitive geometry and each of the cell's child cells.
  • the apparatus may also include a compiler and a linker.
  • the compiler generates a first correction layer for each cell in response to the particular set of operating criteria.
  • the linker modifies the correction layer of each cell in response to the particular set of operating criteria to generate the delta plane for each cell.
  • the delta plane of each cell accounts for interaction between each of the cell's child cells and interaction between the cell's primitive geometry and each of the cell's child cells.
  • the sum of the cell's delta plane and the delta planes of the cell's child cells comprises a correction plane of the cell.
  • the correction plane for each cell in the plurality of cells comprises data that would generate an output data representative of the result of performing the operation on the cell if the correction plane were applied to the flattened cell data.
  • the compiler and the linker each perform a depth-wise traversing of the integrated circuit layout to generate the correction planes and delta planes respectively.
  • a still further embodiment of the apparatus includes a resource for combining the first program data with the data describing the integrated circuit layout to produce a second program data that describes a first corrected layout.
  • a design rule checker is provided give an indication as to whether the first corrected layout falls within a set of integrated circuit design rules.
  • the compiler and the linker may operate to determine whether each cell has been previously defined and to generate a first correction layer and delta plane comprising data indicative of a location of a first instance of a cell definition for each cell which has been previously defined.
  • the apparatus of the above embodiments may in one instance be characterized as a computer program product comprising a computer readable medium having a computer readable program code embodied therein for causing a computer to perform an operation on a hierarchically described integrated circuit layout such that the original hierarchy of the layout is maintained.
  • the delta planes of the first program data may include either arithmetically or logically described data.
  • the operation performed on the layout may include any logical or arithmetic operation including for instance.
  • OPC corrections and logical operations such as AND, NOT, OR, NOR and NAND.
  • the first program data may be in any hierarchical data format such as GDS-II
  • the computer readable media may include any suitable media for the storage of either data files or program files such as a hard disk drive or a server.
  • Fig. 1 illustrates a simple integrated circuit design layout and a hierarchical tree representation of the layout.
  • Fig. 2 illustrates a system level depiction of one embodiment of the invention.
  • Fig. 3 illustrates a simple representation of a typical hierarchical data file that would be output from the system of Fig. 2.
  • Fig. 4 illustrates in flowchart form, a method of performing a logical or arithmetic operation on a hierarchical integrated circuit design in which the hierarchical structure of the design layout is maintained according to one embodiment of the invention.
  • Fig. 5 illustrates how the method of Fig. 4 would provide for a logical NOT operation on one of the parent cells of Fig. 1 according to one embodiment of the invention.
  • Fig. 6 illustrates how the method of Fig. 4 would generate the delta plane of one of the parent cells of Fig. 1 for a logical NOT operation according to one embodiment of the invention.
  • Fig. 7 illustrates examples of optical proximity corrections that can be made to design layouts.
  • Fig. 8 is a depiction of a system for providing OPC correction to a design layout in accordance with one embodiment of the invention.
  • Fig. 9 illustrates how one embodiment of the system of Fig. 8 would provide for OPC correction of the primitive geometries of one of the cells of
  • Figs. 10(a)-(b) illustrate how the method of Fig. 4 would generate a correction layer for overlap areas within one of the parent cells of Fig. 1 for an OPC operation according to one embodiment of the invention.
  • Fig. 1 1 illustrates how the method of Fig. 4 would generate the delta plane of one of the parent cells of Fig. 1 for an OPC operation according to one embodiment of the invention.
  • Fig. 12 illustrates a further method for providing OPC correction to an integrated circuit design layout using one embodiment of the present invention.
  • Fig. 13 illustrates an example screen snapshot of an input design layout from a computer system executing one embodiment of the invention to provide OPC correction of the input design layout.
  • Fig. 14 illustrates an example screen snapshot of the final output from a computer system executing one embodiment of the invention to provide OPC correction to the input design of Fig. 13.
  • Fig. 15 illustrates a zoomed in example screen snapshot of the final output of Fig. 14.
  • Fig. 16 illustrates an example screen snapshot of a -1 OPC correction layer from a computer system executing one embodiment of the invention to provide OPC correction.
  • Fig. 17 illustrates an example screen snapshot of a +1 OPC correction layer from a computer system executing one embodiment of the invention to provide OPC correction.
  • Fig. 18 illustrates an example screen snapshot of a -2 OPC correction layer from a computer system executing one embodiment of the invention to provide OPC correction.
  • Fig. 19 illustrates an example screen snapshot of an individual cell that has been OPC corrected by a computer system executing one embodiment of the invention.
  • These operations include the performance of logical operations, the generation of optical proximity corrections, the generation of phase shifting masks, and the design rule checking of masks that have undergone these operations.
  • these operations require some sort of flattening of the original design data in order to be performed — resulting in an earlier than desired flattening of the design data. This earh' flattening of data results in large increases in required data storage and a corresponding slow down in the performance of these operations.
  • existing verification systems typically require the same input data hierarchies, operations which modify a design in a non-hierarchical manner make it difficult if not impossible to perform the important step of verifying these modified designs.
  • the present invention solves the above problems by providing for the performance of operations on an input hierarchical IC design such that the original true hierarchy of the design is maintained.
  • Various embodiments of the invention include computer systems for verifying and correcting masks for use in integrated circuit manufacturing, and for performance of logical operations on design layouts. These embodiments receive hierarchical mask definition data defining the look of a particular mask. These embodiments then generate an output set of data. In one embodiment, this output data includes OPC corrected mask definitions.
  • Other embodiments of the invention include actual masks generated using systems that perform OPC correction or mask verification techniques.
  • Still other embodiments of the invention include computer readable media (e.g., hard disks, CDs. and other computer program storage tools) having computer programs that implement the OPC correction or mask verification techniques.
  • one embodiment of the invention utilizes a hierarchy preserver to receive a hierarchical definition of a layout and to generate one or more additional data layers that hierarchically include correction information provided by an engine which performs the operation on the design layout. These additional layers are then stored such that they are associated with each node in the hierarchic definition of that layer.
  • a correction plane is associated with any node (cell) in the hierarchy such that, by applying the correction plane to the flattened node, the output is the corrected design for that node.
  • a delta plane is essentially the difference between a node's correction plane and the sum of all its immediate children's delta planes.
  • the correction plane of a cell is equal to the delta plane for that cell plus the delta planes of the immediate child cells of that cell. Since the leaf cells of the hierarchy have no child cells, the correction plane for any leaf cell is equal to the delta plane of that leaf cell. In this manner, in one instance of the invention, the correction plane for each cell need not be stored since the overall correction to the layout can be provided by only storing the delta plane for each cell in the hierarchy.
  • a delta algorithm computes the delta/additional information by considering only the children cell overlaps and the overlap between the parent ' s geometry and child cells. Only these areas are considered because only the overlaps would contribute to the additional correction change needed for the parent cell.
  • the overlap area is not limited to purely geometry overlap, but also includes proximity overlap. By employing a more general definition, all proximity effects / corrections can be taken into account.
  • the output of the delta algorithm for a cell will be now called its delta plane.
  • the leaves of the hierarchical tree thus have delta planes equal to their correction planes.
  • the correction planes for all leaves can be generated by providing the flattened data describing the geometry primitives for each leaf to an operation engine which performs the desired operation on the provided flattened data.
  • the correction plane for this parent cell equals to the sum of its children's delta planes (and as described above their would be no additional delta plane information to be stored for this parent cell).
  • the overlap area is flattened, and an intermediate correction plane for the flattened overlap area is generated. Subsequently, this intermediate correction area is used to subtract the sum of all correction planes of its children, and the difference is the delta plane which is stored hierarchically to correspond to the cell being linked.
  • the current GDS-II, and most other design database formats describing a full layout, include placing different mask and chip levels on separate layers.
  • What is being introduced in various embodiments of the invention is a twist on the layer concept—that an arithmetic layer capable of both logical (e.g., XOR, AND) and arithmetic operations can be based upon.
  • a correction layer representing a particular OPC feature can be based on an arithmetic layer such that for example, "-1" means a negative serif, a "+1” means a positive serif, and "-2" means end-butting where the overlap is infinitesimal in one direction.
  • all correction layers are arithmetically generated using an algorithm to compute the incremental or differential corrections throughout the structure.
  • These delta planes, or arithmetic layers are exposed in the database format as distinct layers (e.g., +1. -1 , -2, etc. mapping to layers 1, 2. and 3). This allows the final correction layer for a parent cell to equal to the parent cell ' s delta plane and the incremental sum of all the delta planes of the parent cell ' s children and grandchildren and great-grandchildren, and so on. from the leaves " compile-time correction layer.
  • Hierarchical data management is also possible in the generation of corrections in an alternate embodiment of the invention in which the delta algorithm or arithmetic layers discussed above are not used.
  • this alternate embodiment instead of taking and storing the difference between the correction layers of a parent cell and its children cells, a logical operation can be used to compare the correction between the parent and its children, and the "logical" instead of "arithmetic" difference is then stored at the parent cell.
  • the present invention provides a method and apparatus for data hierarchy maintenance in a system for mask description.
  • Fig. 1 illustrates a simple integrated circuit design layout 100 and a hierarchical tree representation of the layout 1 10.
  • the circuit layout 100 comprises a final cell A which comprises Parent Cells B, C, and D.
  • Parent Cell C comprises identical cells Gl , G2, G3,
  • Parent Cell D comprises cell H and identical cells II and 12.
  • Parent cell B comprises identical Parent Cells El and E2, and identical Parent cells FI and F2.
  • Parent Cell El comprises Leaf cells Jl and Kl which comprise the primitive geometric structures illustrated in Fig. 1.
  • Parent Cell E2 comprises Leaf cells J2 and K2 which comprise the same primitive geometric structures as cells Jl and Kl .
  • Parent Cell FI comprises Leaf cells Ll and Ml which comprise the primitive geometric structures illustrated in Fig. 1.
  • Parent Cell F2 comprises Leaf cells L2 and M2 which comprise the same primitive geometric structures as cells Jl and Kl .
  • the hierarchical tree layout 110 illustrates the aforementioned cells in a tree format with the leaf cells at the bottom of the tree and with the final cell A at the top of the tree.
  • Each of the leaf cells is also sometimes referred to herein as a leaf node or a child cell, while each of the cells above the leaf nodes is sometimes referred to herein as a parent cell or simply a node.
  • the integrated circuit design layout 100 of Fig. 1 is provided as a reference IC design with respect to which the embodiments of the present invention are described below.
  • the simple IC illustrated in Fig. 1 is used for example only, as the embodiments of the invention described below are capable of being applied to any IC which is described in a hierarchical format.
  • Fig. 2 illustrates in block diagram form a system incorporating one embodiment of the present invention.
  • the system described is one in which a logical or arithmetic operation can be performed on a hierarchically described input IC design such that the resultant modified IC design retains the original true hierarchy of the input design.
  • the basic elements of one embodiment of the system comprise a hierarchy preserver 210 and an operation engine 240.
  • the hierarchy preserver 210 comprises a compiler 220 and a linker 230.
  • the hierarchy preserver 210 of the system accepts hierarchical design data 205 which describes an integrated circuit design 200 as an input.
  • the hierarchy preserver 210 accepts hierarchical design data 205 in a GDS-II format. In other embodiments, the hierarchy preserver 210 accepts hierarchical design data 205 described in any hierarchical file format.
  • the compiler 220 of the hierarchy preserver 210 acts in conjunction with the operation engine 240 to provide a correction data layer for the geometry primitives at each node of the design data 205.
  • the generated correction data layers are representative of the changes to be made to the geometry primitives at each node in accordance with the operation being performed by the operation engine 240 as will be described more fully below.
  • the operation engine 240 performs a logical operation such as AND or NOT on the input design data 205.
  • the operation engine 240 performs optical proximity corrections on the input design data 205.
  • the operation engine 240 performs design rule checking of the input design data 205.
  • the linker 230 acts in conjunction with the operation engine 240 to generate a delta plane for each node of the design.
  • the delta plane for each cell is generated such that it is equal to the difference between the correction data layer information for the particular cell and the sum of all the correction data layers of the particular cell's children cells.
  • the delta plane for each cell is generated by a delta algorithm processed by the linker 230 which computes the delta/additional information by only considering overlaps within each cell.
  • these overlaps consist of the overlaps between a cell's children cells and any overlaps between a parent cell's own primitive geometry and that of it's children cells.
  • these overlap areas are not limited to purely geometry overlap, but also include proximity overlap. The process by which the linker 230 generates a delta plane for each node of the input design 205 will be described more fully below.
  • the hierarchy preserver 210 After the linker 230 has generated the delta planes, the hierarchy preserver 210 generates output data 250 which represents the input design 205 modified in accordance with the operation performed by the operation engine 240, where the output data 250 retains the original true hierarchy of the input design data 205.
  • This output data 250 comprises the original unaltered hierarchical design data 205, and a hierarchical correction data file 260.
  • the hierarchical correction data file 260 comprises the delta plane data for each node of the design data 205 such that when the design data 205 and the correction data 260 are combined a modified design is produced which represents the operation performed on the original design data 205 by the operation engine 240.
  • the hierarchical output data 250 can then be used for a number of purposes. First, it could be provided to the hierarchy preserver 210 on line 262 in order for a new logical or arithmetic operation to be performed on the output data 250. Further, since it is in hierarchical form, it can be provided to a conventional design rule checker 270 which accepts hierarchical data, in order that the new modified output design can be checked to verify that it meets the design rules for the particular integrated circuit being designed.
  • the output data 250 can be used in mask production 265 by combining the design data 205 with the correction data 260 to construct a final data layout 275, flattening this combined data layout 280, and providing this flattened data to an electron beam machine to generate the actual physical mask which embodies the modified design data 285.
  • the generation of correction data layers and delta planes for each of the nodes of the design data 205 will now be developed further.
  • one embodiment of the compiler 220 accesses the design data using a depth wise traverse in which each branch of the final parent cell is accessed in order, and in which each branch is accessed from its leaf nodes upwards.
  • Fig. 1 one embodiment of the compiler 220 accesses the design data using a depth wise traverse in which each branch of the final parent cell is accessed in order, and in which each branch is accessed from its leaf nodes upwards.
  • this embodiment of the compiler 220 would access the nodes of the integrated circuit layout 100 in the following order: J1, K1, E1, L1, M1, FI, L2, M2, F2, J2, K2, E2, B, Gl, G2, G3, G4, G5, G6, C, H, II, 12, D, and A.
  • the amount of data storage is decreased by the hierarchy preserver 210 which solves the aforementioned equation for ⁇ J, and stores the value of ⁇ J as the correction layer for cell J. This process is repeated for every cell in the design until the entire tree is traversed.
  • the design data 205 is then linked by the linker 230 in the following manner.
  • the tree is again traversed in the manner described above, and for each cell the overlap area is found and flattened.
  • the flattened overlap area is then input to the operation engine 240 which in turn operates on the data and returns it to the hierarchy preserver 210.
  • the linker 230 utilizes the return data from the operation engine 240 to produce an intermediate correction layer which is used by the linker 230 to generate a delta plane for each cell.
  • the generation of the delta plane will be more fully described below with respect to Figs. 6 and 10.
  • the delta plane for each cell of the design is then stored in a hierarchical format corresponding to that of the input design data 205 in hierarchical correction data file
  • the hierarchy preserver 210 may comprise a computer system executing program code stored on computer readable media that performs the functions of the compiler 220 and the linker 230.
  • the operation engine 240 may also comprise a computer system executing program code stored on computer readable media.
  • the hierarchy preserver 210 and the operation engine 240 comprise a single computer system executing a program code stored on computer readable media which performs the functions of the compiler 220 , linker 230, and operation engine 240 together.
  • the hierarchy preserver 210 and the operation engine 240 comprise either a single computer system executing two or more different program codes or multiple separate computer systems executing two or more different program codes, one code for the functions of the hierarchy preserver 210, and a separate code for the functions of the operation engine 240.
  • the hierarchy preserver 210 may selectively provide data to the operation engine 240 through an API.
  • the hierarchy preserver 210 of the present invention can be modified to communicate and operate with currently existing operation engines 240 to provide the advantages of hierarchical data output.
  • the computer readable media referred to above may comprise any computer storage tools including but not limited to hard disks, CDs, floppy disks, and server memory.
  • the computer systems executing the program code may, in the case of both the operation engine 240 and the hierarchy preserver 210. comprise any suitable computer system including a desktop computer running a Windows NT operating system or a Sun Solaris workstation for instance.
  • Hierarchical data file of correction data 320 represents a simplified version of the correction data that would be generated if the system of Fig. 2 were applied to operate on the simplified integrated circuit layout 100 of Fig. 1.
  • hierarchical design data 205 is provided to hierarchy preserver 210 which operates in conjunction with operation engine 240 to provide hierarchical correction data 260.
  • a simplified hierarchical data file of the design layout 310 is shown to illustrate the minimal effect the present invention has on the increase in data upon the performance of an operation.
  • the hierarchical data file of correction data 320 is able to be stored in a structure which corresponds one to one with the input data file 310. This facilitates quick combination of the two data files 310 and 320 in order to perform other functions on the overall modified design such as mask production and design rule checking.
  • the hierarchy preserver 210 determines whether or not that cell is identical to a cell that has already been traversed. If this is the case, then the hierarchy preserver does not take the processing time to directly determine a delta plane for that cell. Instead, the hierarchy preserver maintains the true hierarchy by providing a pointer to that cell's first instance of being defined. For instance, this is illustrated by the hierarchical data file of correction data 320 by cells FI and F2 which are identical cell's as shown in Fig. 1. As described earlier, in one embodiment of the invention, the hierarchy preserver 210 traverses the design data 205 in a depth wise manner from the leaf nodes to the final parent cell. In this manner.
  • FI would be traversed before F2, and thus correction data ⁇ F1 would be generated and stored for this cell as indicated in file 320 by label 325.
  • cell F2 is traversed however, only a pointer to the correction data for FI is stored and no direct correction data is processed for F2. This is indicated by label 330. In this manner, both processing time and data volume are decreased.
  • Fig. 4 illustrates in flowchart form, a method of performing a logical or arithmetic operation on a hierarchical integrated circuit design in which the hierarchical structure of the design layout is maintained according to one embodiment of the invention. At its simplest level the method comprises a compiling process followed by a linking process.
  • a hierarchical design data layout is provided at block 400 and the design tree is accessed at block 410 in the manner previously described with respect to Figs. 2 and 3.
  • the compile process begins at block 415 wherein the hierarchical data for the first cell in the tree is obtained.
  • it is determined whether or not the cell has been previously defined If it has been previously defined, the obtained cell is associated with the previously defined correction data at block 427, and the next cell in the tree is obtained at block 415. If the cell has not been previously defined, the flattened primitive structure data of the cell is obtained at block 430 and provided to block 435 where an arithmetic or logical operation is performed on the flattened primitive data.
  • the modified flattened primitive data is then provided to block 440, and this data is then processed at block 445 to separate the desired correction data as described earlier with respect to ⁇ J of Fig. 2. '
  • the separated correction data is then stored in a hierarchical fashion corresponding to the original design data at block 450.
  • the linking process begins in the same manner as the compile process with the accessing of the design tree at block 460.
  • the process continues at block 465 wherein the hierarchical data for the first cell in the tree is obtained.
  • it is determined whether or not the cell has been previously defined If it has been previously defined, the obtained cell is associated with the previously defined correction data at block 427, and the next cell in the tree is obtained at block 465. If the cell has not been previously defined, the overlaps of the cell are determined at block 475 as discussed earlier with respect to Fig. 2. These overlap areas are then flattened at block 480 and the flattened data is provided to block 435 where the arithmetic or logical operation is performed on the flattened data as discussed previously.
  • a delta plane for the cell is generated which is then stored in a hierarchical data format at block 490.
  • the delta plane is the only data which needs to be kept for each cell in the tree. For, as discussed above, given a parent cell and its child cells, the difference between the correction information for the parent cell and the sum of all of its children's correction data is equal to the delta plane. Thus, it follows then that the leaves of the hierarchical tree have delta planes equal to their correction planes determined at compilation. At block 495 it is determined whether or not all the cells in the tree have been traversed.
  • Fig. 5 illustrates how a specific embodiment of the present invention would perform a logical operation upon Parent cell FI of Fig.1.
  • the desired output is illustrated in Fig. 5 as Fl(NOT). To perform this operation directly would entail performing a NOT operation on the flattened data representing Leaf Ll and a NOT operation on the flattened data representing Ml using the operation engine 240 of Fig. 2 in the manner described above with respect to block 435 of Fig. 4.
  • the hierarchical design data 205 which in this simple example consists of the data representing
  • Parent cell FI is provided to the compiler 220 of hierarchy preserver 210.
  • the compiler 220 provides the flattened data representing leaf Ll to the operation engine 240 which in this case performs a logical NOT operation on the supplied data and returns flattened data representative of the NOT of leaf L 1.
  • the compiler 220 then generates the correction data for Ll and stores this data in hierarchical correction data file 260. The same process is then repeated for leaf Ml .
  • compilation of Parent FI results in the generation of no correction data for F 1.
  • the linker 230 operates to generate a delta plane 520 for Parent cell FI during the linking stage as described more fully below with respect to Fig. 6.
  • the delta plane 520 is generated such that, when summed with Ll(NOT) and Ml (NOT), the correct desired result Fl(NOT) is obtained as shown in Fig. 5.
  • This delta plane data is then stored hierarchically in hierarchical correction data file 260 such that it is associated with parent cell FI .
  • This example is solely for illustration of the use of one embodiment of the present invention in the performance of a particular logical operation on a sample IC layout. As such, it is clear that this embodiment of the present invention could be used to perform any logical operation on any IC layout described in a hierarchical manner.
  • Fig. 6 illustrates heuristically how the delta plane 520 of Fig. 5 would be generated according to one embodiment of the present invention.
  • the hierarchy preserver 210 operates during linking of Parent FI to find the overlap areas within the parent cell and flatten these areas 600, which generates overlap area 640.
  • This flattened data for overlap area 640 is then provided to operation engine 240 at block 610, and the NOT of the overlap 650 is generated by the operation engine 240.
  • the logical NOT operation is then performed on the parent FI to generate Fl(NOT) in a flattened form at block 620.
  • the delta plane 520 is generated by taking the difference between the NOT of the overlap area 650 and flattened Fl(NOT), and storing this delta data in hierarchical correction data file 260.
  • Optical Proximity Correction OPC
  • Fig. 7 illustrates examples of optical proximity corrections that can be made to design layouts.
  • the additional features that are added to the original mask when OPC is utilized are typically sub-lithographic (i.e. have dimensions less than the resolution of the exposure tool) and thus do not transfer to the resist layer. Instead, they interact with the original pattern so as to improve the final transferred pattern and compensate for proximity effects.
  • a desired pattern 710 may appear as actual pattern 720 when lithographically transferred without compensation for proximity effects.
  • positive serifs 732 and negative serifs 734 may be added to the desired pattern 710 to form the mask 730 needed to compensate for proximity effects.
  • the effects of proximity distortions on a typical desired transistor gate pattern 740 are shown by actual transferred pattern 750 and 752.
  • OPC corrections represented by hammerheads 762, assist bars 764 and bias bars 766 are added to the original desired mask pattern, the original desired shape will be more accurately transferred.
  • the hammerhead shapes 762 are designed to eliminate the effect of line end shortening to ensure that the polysilicon portion of the gate extends beyond the active region 742.
  • the assist bars 764 are designed to compensate for the isolated gate effect which tends to decrease the width of the transferred gate pattern.
  • the bias bars 766 are designed to eliminate the effect of densely packed gates which is shown by the additional transferred pattern 752.
  • OPC products utilize a rule-based algorithm to generate proximity corrections for a given geometry.
  • the design layout is analyzed for predetermined layout patterns and one of the aforementioned types of OPC features are generated for that area of the design layout.
  • previous OPC products are not capable of retaining the true hierarchical data structure of the original design layout.
  • FIG. 8 An embodiment of the present invention which is capable of providing for the generation of OPC corrections for an IC design layout while retaining the true hierarchical data structure of the original design layout is described below with respect to Fig. 8.
  • This description includes by reference the above discussions of Figs. 2 and 4, as the system of Fig. 8 is a specific embodiment of the system and method described in these Figs, respectively.
  • an integrated circuit chip design 800 is represented by hierarchical design data 810, which in one embodiment is in a GDS-II data format.
  • the design data 810 is provided as an input to a computer system running an OPC algorithm 840 which incorporates one embodiment of the present invention.
  • the computer system 840 operates to produce hierarchical correction data 845 in the manner described previously with respect to Figs. 2 and 4.
  • the computer system 840 comprises both the hierarchy preserver 210 and the operation engine 240 of Fig. 2, where the operation engine 240 of computer system 840 is a specifically defined OPC operation engine 240 that operates on the input design data 810 to provide for optical proximity corrections.
  • the operation engine 240 of computer system 840 is a specifically defined OPC operation engine 240 that operates on the input design data 810 to provide for optical proximity corrections.
  • the output hierarchical correction data 845 can be provided to a conventional design rule checker 850 along with the original design data 810 to design rule check the OPC corrected design.
  • the output could be used in the production of a lithography mask by combining the design data 810 with the correction data 845 as shown at block 860. This combined data can then be flattened and written to an EB machine as shown at block 865 in order for the EB machine to operate to produce the mask 870.
  • the computer system 840 executes a computer program code stored on computer readable media that performs the functions of the compiler 220, the linker 230, and the OPC operation engine 240.
  • the computer system 840 comprises either a single computer system executing two or more different program codes or multiple separate computer systems executing two or more different program codes, one program code for the functions of the hierarchy preserver 210, and a separate program code for the functions of the OPC operation engine 240.
  • the hierarchy preserver 210 may selectively provide data to the OPC operation engine 240 through an API.
  • the hierarchy preserver 210 of the present invention can be modified to communicate and operate with currently existing OPC operation engines 240 to provide the advantages of hierarchical data output.
  • the computer readable media referred to above may comprise any computer storage tools including but not limited to hard disks, CDs, floppy disks, and server memory.
  • the computer systems executing the program code may, in the case of both the OPC operation engine 240 and the hierarchy preserver 210, comprise any suitable computer system including a desktop computer running a Windows NT operating system or a Sun Solaris workstation for instance.
  • the OPC engine 240 is a rule-based OPC engine capable of generating OPC features in a manner that is controllable by the user of the system. For instance, the user can define the correction rules to be applied, and the size of the features to be applied to the design layout. Further, in one embodiment of the system, the location and size of bias lines 766 can be dependent upon the size and pitch of the IC pattern features being corrected, and/or restricted to being used only in critical areas of the design such as transistor gate regions.
  • the OPC engine 240 is capable of applying assist features 764 either in a localized manner to critical areas such as transistor gates or to the entire IC design globally. Still further, in another embodiment, the OPC engine can selectively place correction features in critical areas while not placing those correction features in areas that do not require them for accurate circuit performance. In one instance of this embodiment, the OPC engine can restrict the placing of biasing and assist features to transistor gates, while leaving the non-critical interconnect regions of the polysilicon gate layer uncorrected. In another instance, the OPC engine distinguishes critical transistor gate line-ends and applies hammerhead corrections to these areas to alleviate line-end shortening.
  • the OPC operation engine is capable of providing for OPC correction of Phase Shifting Masks such as those disclosed in the United States patent application entitled. "Phase Shifting Circuit Manufacture Method and Apparatus" having serial number 08/931 ,921 , filed September 17,
  • Fig. 9 illustrates how one embodiment of the system of Fig. 8 provides for OPC correction of the primitive geometries of leaf cells Jl and Kl of Fig. 1. Shown are uncorrected leaf cells Jl and Kl of Parent cell El .
  • the flattened primitive geometry data of Jl is provided to the hierarchy preserver 210. and the compiler 220 operates with the OPC engine 240 to provide a correction plane ⁇ J1 in the manner discussed previously with respect to Fig. 2.
  • the OPC engine has decided based on its rule definitions that the primitive geometry of Jl requires positive serifs 905 in order to provide the proper result when the mask is produced and used to expose a wafer.
  • correction plane ⁇ K1 again comprising positive serifs 905.
  • Each of these cells is then linked by the linker 230 as discussed previously to generate delta planes for each cell. Since these cells are leaf nodes and have no overlap areas, their respective delta planes are equal to their compiled correction planes. Also illustrated are corrected leaf cells 910 and 920 which represent Jl + ⁇ J1, and Kl + ⁇ K1 respectively.
  • Figs. 10(a)-(b) illustrate how the method of Fig. 4 would generate an intermediate correction layer for overlap areas within Parent cell El of Fig. 1 for an OPC operation according to one embodiment of the invention.
  • Fig. 10(b) illustrates the overlap area 1000 between corrected leaf cell Jl 910 and the corrected leaf cell Kl 920. As discussed above with respect to Figs. 2 and 4, during the linking process for cell El, this overlap area is determined and the data corresponding to this area is flattened. The flattened overlap area is then provided to the OPC operation engine 240 which operates on the data to provide an intermediate correction plane 1020. Note that in the case described here where the primitive structures overlap a discrete amount, negative serifs 1010 are provided for the intermediate correction plane.
  • FIG. 10(b) an alternate parent El is illustrated in which the corrected leaf cells Kl and K2 shown as 910b and 920b respectively.
  • This situation illustrates an infinitesimal overlap between the two corrected primitive geometries.
  • an intermediate correction plane 1020b is provided for these infinitesimal overlap situations such that a -2 layer is provided to compensate for end butting effects.
  • Fig. 11 illustrates how the method of Fig. 4 would generate the delta plane of parent cell El of Fig. 1 for an OPC operation according to one embodiment of the invention.
  • the overlap areas within El are determined and the area data is flattened. This is illustrated as overlap area 1000.
  • an intermediate correction plane 1020 for this overlap area 1000 is generated as described above with respect to Fig. 10(a).
  • the correction planes 910 and 920 of all the children cells of El are summed to generate summed children correction data 1 140.
  • the last step as described by block 1 130 is to generate the delta plane 1 150 for cell El and store this data hierarchically. This is accomplished in one embodiment by subtracting the summed children correction data 1 140 from the intermediate correction plane 1020 to obtain the delta plane 1150.
  • the final correction plane 1 160 for cell El which as defined earlier represents the total of the corrections needed to be applied to the cell's design data in order to properly apply the particular operation, which here is OPC, to the cell.
  • the correction plane 1160 comprises the El's delta plane summed with the correction planes 910 and 920 of its children Jl and Kl respectively.
  • Fig. 12 illustrates a further method for providing OPC correction to a design layout using one embodiment of the present invention.
  • an integrated circuit design layout is first provided.
  • the hierarchically formatted design data corresponding to this design layout is then provided to a system which performs a rule based OPC correction on the design data in accordance with the system of Fig. 8 as shown at block 1205.
  • the system of Fig. 8 generates an output of hierarchical correction data as described above, and this correction data is combined with the original design data to generate a hierarchically described rule-based OPC corrected design data as shown at block 1210.
  • Using this corrected design data a simulated image of the mask which this corrected design data would produce is generated at block 1215.
  • This simulation can be generated utilizing a Hopkins equation based simulation device such as that described generally in the United States provisional patent application entitled. "Mask Verification, Correction, and Design Rule Checking” having serial number 60/059.306, filed September 17, 1997, and invented by Fang-Cheng Chang, Yao-Ting Wang and Yagyensh C. Pati, United States patent application entitled, "Mask Verification, Correction, and Design Rule Checking", filed September 16, 1998, and invented by Fang-Cheng Chang,
  • the simulated image of the corrected mask is then compared to the desired design image at block 1220 to determine whether or not the initial rule based OPC correction was sufficient to correct the design to within a set of user defined design parameters as shown at block 1225.
  • Methods for performing this comparison are disclosed in the aforementioned United States provisional patent application entitled, "Mask Verification, Correction, and Design Rule Checking.” If the result of the comparison is that the design parameters have been achieved, the corrected design data can then be input to a design rule checker which analyzes the corrected design for any violations of the established design rules for the particular integrated circuit design as shown at block 1235. If the corrected design is within design rules, the corrected design data can then be flattened and a mask can be produced using an EB machine as shown at block 1245.
  • the simulated image of the model based OPC corrected design must be manipulated into a format that is acceptable by a conventional design rule checker.
  • One way of doing this is to generate a Manhattan geometry representation of the simulated image based on an edge checking technique as described more fully in the aforementioned and incorporated United States provisional patent application entitled, "Mask Verification, Correction, and Design Rule Checking" and the United States utility patent application of the same name. This whole process can be continued until a corrected design is produced which meets both the user defined design parameters and the circuit specific design rules.
  • the model based OPC algorithm is capable of responding to user defined input.
  • the user can control the complexity level of the corrections he wants to be applied in order to control data volume and overall process speed.
  • the user can control the size of correction features to be applied by the model based algorithm.
  • the user can define the correction criteria to be applied by the algorithm.
  • FIG. 13 illustrates an example screen snapshot of the input design layout which is to be OPC corrected.
  • the user interface 1300 of the design program comprises a design window 1330 in which is illustrated a portion of the IC design layout to be corrected.
  • the design layout includes a diffusion layer 1390 and a layer of polysilicon structures such as primitive structures 1320.
  • a cell 1310 similar to the sample parent cells El and FI of Fig. 1, is also depicted in design window 1330.
  • Fig. 14 illustrates an example screen snapshot of the final output from a computer system executing one embodiment of the invention to provide OPC correction to the input design of Fig. 13.
  • the design window 1330 of user interface 1300 shows a cell 1310 comprising primitive structures 1320 which have been OPC corrected.
  • the cell 1310 comprises OPC features such as hammerheads 1410, assist lines 1420, bias lines 1430, positive serifs 1440, and negative serifs 1450.
  • the output depicted in Fig. 14 is representative of all of the corrections which would have to be made to compensate for all OPC effects on the entire design. Thus, these corrections represent the final linked output of this embodiment of the present invention in which all overlaps between cells in the hierarchy have been resolved and compensated for.
  • the OPC features depicted in Fig. 14 are shown in greater detail in Fig. 15 which is a zoomed in example screen snapshot of Fig. 14.
  • Fig. 16 illustrates an example screen snapshot of a -1 OPC correction layer from a computer system executing one embodiment of the invention to provide OPC correction.
  • This layer contains corrections to cell 1310 including assist lines 1420, bias lines 1430, and negative serifs 1450.
  • Fig. 17 illustrates an example screen snapshot of a +1 OPC correction layer from a computer system executing one embodiment of the invention to provide OPC correction.
  • This layer contains corrections to cell 1310 including hammerheads 1410, assist lines 1420, and positive serifs 1440.
  • Fig. 18 illustrates an example screen snapshot of a -2 OPC correction layer from a computer system executing one embodiment of the invention to provide OPC correction.
  • This layer contains corrections to cell 1310 including end butting correction feature 1810.
  • Fig. 19 illustrates an example screen snapshot of an individual cell 1310 that has been OPC corrected by a computer system executing one embodiment of the invention.
  • the design window 1330 illustrates a cell 1310 to which its linked correction layer has been applied.
  • the corrections applied to the cell 1310 include hammerheads 1410, assist lines 1420, positive serifs 1440, and negative serifs 1450. Note that the corrections to cell 1310 are different than those illustrated in Fig. 14 because Fig. 14 is a representation of all the corrections to the entire design ⁇ while Fig. 19 only illustrates those corrections necessary to correct cell 1310 individually. In other words, the corrections illustrated in Fig. 19 do not take into account the interactions of cell 1310 with other cells adjacent to it.

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • General Engineering & Computer Science (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

Procédé et dispositif servant à exécuter une opération sur des agencements (800) de circuits intégrés décrits de façon hiérarchique, de façon à maintenir la hiérarchie originale de l'agencement. Ce procédé consiste à créer un agencement (810) décrit de façon hiérarchique en tant que première entrée, ainsi qu'un ensemble particulier de critères opérationnels (840) correspondant à l'opération à exécuter en tant que deuxième entrée. On exécute l'opération de masque, qui peut inclure des opérations, telles que la correction de proximité optique (OPC) et des opérations logiques, telles que NON ou OU (240), sur l'agencement en fonction de l'ensemble particulier de critères opérationnels. On produit des premières données de programme comprenant des données de correction configurées de façon hiérarchique et correspondant à l'agencement décrit hiérarchiquement, en réponse à l'opération d'agencement, de sorte qu'on générerait une sortie comprenant des données représentant le résultat de l'exécution de l'opération sur l'agencement, si on appliquait ces premières données (860) de programme à l'agencement aplani (865). Simultanément au maintien de ces premières données de programme dans un véritable format hiérarchique, il est possible de traiter les agencements sur lesquels on a effectué des opérations d'après ce procédé, par l'intermédiaire de vérificateurs classiques (850) de règles de conception. De plus, il est possible d'appliquer ce procédé à tous types d'agencements, y compris des agencements présentant des champs clairs et sombres ou des déphasages.
EP98947103A 1997-09-17 1998-09-17 Procede et dispositif servant a maintenir une hierarchie de donnees dans un systeme de description de masque Withdrawn EP1023639A4 (fr)

Applications Claiming Priority (12)

Application Number Priority Date Filing Date Title
US5930697P 1997-09-17 1997-09-17
US08/931,921 US5858580A (en) 1997-09-17 1997-09-17 Phase shifting circuit manufacture method and apparatus
US59306P 1997-09-17
US931921 1997-09-17
US6954997P 1997-12-12 1997-12-12
US69549P 1997-12-12
US09/130,996 US6757645B2 (en) 1997-09-17 1998-08-07 Visual inspection and verification system
US130996 1998-08-07
US09/154,397 US6453452B1 (en) 1997-12-12 1998-09-16 Method and apparatus for data hierarchy maintenance in a system for mask description
US09/153,783 US6470489B1 (en) 1997-09-17 1998-09-16 Design rule checking system and method
PCT/US1998/019438 WO1999014636A1 (fr) 1997-09-17 1998-09-17 Procede et dispositif servant a maintenir une hierarchie de donnees dans un systeme de description de masque
2003-06-19

Publications (2)

Publication Number Publication Date
EP1023639A1 true EP1023639A1 (fr) 2000-08-02
EP1023639A4 EP1023639A4 (fr) 2009-04-29

Family

ID=27556793

Family Applications (2)

Application Number Title Priority Date Filing Date
EP98947103A Withdrawn EP1023639A4 (fr) 1997-09-17 1998-09-17 Procede et dispositif servant a maintenir une hierarchie de donnees dans un systeme de description de masque
EP98951922A Withdrawn EP1023641A4 (fr) 1997-09-17 1998-09-17 Procede et systeme de controle de regles de conception

Family Applications After (1)

Application Number Title Priority Date Filing Date
EP98951922A Withdrawn EP1023641A4 (fr) 1997-09-17 1998-09-17 Procede et systeme de controle de regles de conception

Country Status (5)

Country Link
EP (2) EP1023639A4 (fr)
JP (2) JP2003526110A (fr)
KR (2) KR20010024117A (fr)
AU (3) AU9775198A (fr)
WO (1) WO1999014638A1 (fr)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6453452B1 (en) 1997-12-12 2002-09-17 Numerical Technologies, Inc. Method and apparatus for data hierarchy maintenance in a system for mask description
JP2004503879A (ja) 2000-06-13 2004-02-05 メンター グラフィックス コーポレイション 集積化検証および製造適応ツール
US7412676B2 (en) 2000-06-13 2008-08-12 Nicolas B Cobb Integrated OPC verification tool
US6425113B1 (en) 2000-06-13 2002-07-23 Leigh C. Anderson Integrated verification and manufacturability tool
US6978436B2 (en) 2000-07-05 2005-12-20 Synopsys, Inc. Design data format and hierarchy management for phase processing
US6430737B1 (en) * 2000-07-10 2002-08-06 Mentor Graphics Corp. Convergence technique for model-based optical and process correction
JP2002122977A (ja) * 2000-10-17 2002-04-26 Sony Corp フォトマスクの作成法、フォトマスク、並びに露光方法
KR100649969B1 (ko) * 2000-12-26 2006-11-27 주식회사 하이닉스반도체 마스크 제작방법
US6395438B1 (en) 2001-01-08 2002-05-28 International Business Machines Corporation Method of etch bias proximity correction
US6505327B2 (en) 2001-04-13 2003-01-07 Numerical Technologies, Inc. Generating an instance-based representation of a design hierarchy
JP3572053B2 (ja) * 2001-05-31 2004-09-29 株式会社東芝 露光マスクの製造方法、マスク基板情報生成方法、半導体装置の製造方法およびサーバー
US6721928B2 (en) 2001-07-26 2004-04-13 Numerical Technologies, Inc. Verification utilizing instance-based hierarchy management
US6560766B2 (en) 2001-07-26 2003-05-06 Numerical Technologies, Inc. Method and apparatus for analyzing a layout using an instance-based representation
US6735752B2 (en) 2001-09-10 2004-05-11 Numerical Technologies, Inc. Modifying a hierarchical representation of a circuit to process features created by interactions between cells
US6738958B2 (en) 2001-09-10 2004-05-18 Numerical Technologies, Inc. Modifying a hierarchical representation of a circuit to process composite gates
US6880135B2 (en) 2001-11-07 2005-04-12 Synopsys, Inc. Method of incorporating lens aberration information into various process flows
US7085698B2 (en) 2001-12-18 2006-08-01 Synopsys, Inc. Method for providing flexible and dynamic reporting capability using simulation tools
US7159197B2 (en) 2001-12-31 2007-01-02 Synopsys, Inc. Shape-based geometry engine to perform smoothing and other layout beautification operations
JP4138318B2 (ja) * 2002-01-08 2008-08-27 株式会社ルネサステクノロジ リソグラフィプロセスマージン評価装置、リソグラフィプロセスマージン評価方法およびリソグラフィプロセスマージン評価プログラム
US7293249B2 (en) 2002-01-31 2007-11-06 Juan Andres Torres Robles Contrast based resolution enhancement for photolithographic processing
US7386433B2 (en) 2002-03-15 2008-06-10 Synopsys, Inc. Using a suggested solution to speed up a process for simulating and correcting an integrated circuit layout
US6944844B2 (en) 2002-04-03 2005-09-13 Synopsys, Inc. System and method to determine impact of line end shortening
US6931613B2 (en) 2002-06-24 2005-08-16 Thomas H. Kauth Hierarchical feature extraction for electrical interaction calculations
US6687895B2 (en) 2002-07-03 2004-02-03 Numerical Technologies Inc. Method and apparatus for reducing optical proximity correction output file size
US7069534B2 (en) 2003-12-17 2006-06-27 Sahouria Emile Y Mask creation with hierarchy management using cover cells
US7861207B2 (en) 2004-02-25 2010-12-28 Mentor Graphics Corporation Fragmentation point and simulation site adjustment for resolution enhancement techniques
US7448012B1 (en) 2004-04-21 2008-11-04 Qi-De Qian Methods and system for improving integrated circuit layout
EP1747520B1 (fr) 2004-05-07 2018-10-24 Mentor Graphics Corporation Procede de conception d'un agencement de circuit integre et bandes de variation de procede
US7240305B2 (en) 2004-06-02 2007-07-03 Lippincott George P OPC conflict identification and edge priority system
JP4266189B2 (ja) 2004-07-09 2009-05-20 株式会社東芝 半導体集積回路パターンの検証方法、フォトマスクの作成方法、半導体集積回路装置の製造方法、及び半導体集積回路パターンの検証方法を実現するためのプログラム
JP4904034B2 (ja) * 2004-09-14 2012-03-28 ケーエルエー−テンカー コーポレイション レチクル・レイアウト・データを評価するための方法、システム及び搬送媒体
US7617473B2 (en) * 2005-01-21 2009-11-10 International Business Machines Corporation Differential alternating phase shift mask optimization
US7506285B2 (en) 2006-02-17 2009-03-17 Mohamed Al-Imam Multi-dimensional analysis for predicting RET model accuracy
US7739650B2 (en) 2007-02-09 2010-06-15 Juan Andres Torres Robles Pre-bias optical proximity correction
EP2153376B1 (fr) 2007-05-23 2011-10-19 Nxp B.V. Detection sensible de fenetre de traitement et correction de problemes d'impression lithographique au niveau de masque
US7805699B2 (en) 2007-10-11 2010-09-28 Mentor Graphics Corporation Shape-based photolithographic model calibration
JP5100405B2 (ja) * 2008-01-16 2012-12-19 株式会社東芝 データベースの作成方法およびデータベース装置
US7975244B2 (en) 2008-01-24 2011-07-05 International Business Machines Corporation Methodology and system for determining numerical errors in pixel-based imaging simulation in designing lithographic masks
US10008422B2 (en) * 2015-08-17 2018-06-26 Qoniac Gmbh Method for assessing the usability of an exposed and developed semiconductor wafer

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0608657A1 (fr) * 1993-01-29 1994-08-03 International Business Machines Corporation Appareil et procédé de traitement de données de forme pour la correction de l'effet de proximity
US5553274A (en) * 1995-04-17 1996-09-03 International Business Machines Corporation Vertex minimization in a smart optical proximity correction system
JPH08272075A (ja) * 1995-03-06 1996-10-18 Lsi Logic Corp マクロセルライブラリ上での光学近接修正のためのシステム及び方法
DE19818440A1 (de) * 1998-04-24 1999-10-28 Applied Integrated Systems & S Verfahren zur Erzeugung von Daten für die Herstellung einer durch Entwurfsdaten definierten Struktur

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2291219B (en) * 1994-07-05 1998-07-01 Nec Corp Photo-mask fabrication and use
JPH08297692A (ja) * 1994-09-16 1996-11-12 Mitsubishi Electric Corp 光近接補正装置及び方法並びにパタン形成方法
JP3409493B2 (ja) * 1995-03-13 2003-05-26 ソニー株式会社 マスクパターンの補正方法および補正装置
JP2917879B2 (ja) * 1995-10-31 1999-07-12 日本電気株式会社 フォトマスク及びその製造方法
US5705301A (en) * 1996-02-27 1998-01-06 Lsi Logic Corporation Performing optical proximity correction with the aid of design rule checkers
US5801954A (en) * 1996-04-24 1998-09-01 Micron Technology, Inc. Process for designing and checking a mask layout
US5707765A (en) * 1996-05-28 1998-01-13 Microunity Systems Engineering, Inc. Photolithography mask using serifs and method thereof

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0608657A1 (fr) * 1993-01-29 1994-08-03 International Business Machines Corporation Appareil et procédé de traitement de données de forme pour la correction de l'effet de proximity
JPH08272075A (ja) * 1995-03-06 1996-10-18 Lsi Logic Corp マクロセルライブラリ上での光学近接修正のためのシステム及び方法
US5553274A (en) * 1995-04-17 1996-09-03 International Business Machines Corporation Vertex minimization in a smart optical proximity correction system
DE19818440A1 (de) * 1998-04-24 1999-10-28 Applied Integrated Systems & S Verfahren zur Erzeugung von Daten für die Herstellung einer durch Entwurfsdaten definierten Struktur

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
HARAFUJI K ET AL: "A NOVEL HIERARCHICAL APPROACH FOR PROXIMITY EFFECT CORRECTION IN ELECTRON BEAM LITHOGRAPHY" IEEE TRANSACTIONS ON COMPUTER AIDED DESIGN OF INTEGRATEDCIRCUITS AND SYSTEMS, IEEE SERVICE CENTER, PISCATAWAY, NJ, US, vol. 12, no. 10, 1 October 1993 (1993-10-01), pages 1508-1514, XP000452154 ISSN: 0278-0070 *
See also references of WO9914636A1 *

Also Published As

Publication number Publication date
KR20010024113A (ko) 2001-03-26
KR20010024117A (ko) 2001-03-26
EP1023641A4 (fr) 2009-04-22
JP2003523545A (ja) 2003-08-05
AU9775198A (en) 1999-04-05
JP4624550B2 (ja) 2011-02-02
EP1023639A4 (fr) 2009-04-29
AU9396198A (en) 1999-04-05
JP2003526110A (ja) 2003-09-02
EP1023641A1 (fr) 2000-08-02
AU9396098A (en) 1999-04-05
WO1999014638A1 (fr) 1999-03-25

Similar Documents

Publication Publication Date Title
US6453452B1 (en) Method and apparatus for data hierarchy maintenance in a system for mask description
US6370679B1 (en) Data hierarchy layout correction and verification method and apparatus
EP1023640B1 (fr) Procede et dispositif servant a verifier et a corriger un agencement de hierarchie de donnees
JP4624550B2 (ja) マスク記述のためのシステムにおけるデータ階層維持の方法及び装置
US6470489B1 (en) Design rule checking system and method
WO1999014636A1 (fr) Procede et dispositif servant a maintenir une hierarchie de donnees dans un systeme de description de masque
JP3934719B2 (ja) 光近接効果補正方法
US7401319B2 (en) Method and system for reticle-wide hierarchy management for representational and computational reuse in integrated circuit layout design
US5682323A (en) System and method for performing optical proximity correction on macrocell libraries
US7657864B2 (en) System and method for integrated circuit device design and manufacture using optical rule checking to screen resolution enhancement techniques
US7412676B2 (en) Integrated OPC verification tool
US7945871B2 (en) Integrated OPC verification tool
US20020144230A1 (en) System and method for correcting design rule violations in a mask layout file
US6782524B2 (en) Photomask and integrated circuit manufactured by automatically correcting design rule violations in a mask layout file
JP2004503879A (ja) 集積化検証および製造適応ツール
JP2008310353A (ja) 光近接効果補正方法と装置、光近接効果検証方法と装置、露光用マスクの製造方法、更に光近接効果補正プログラムと光近接効果検証プログラム
US20050005256A1 (en) Photomask and integrated circuit manufactured by automatically correcting design rule violations in a mask layout file
CN110968981A (zh) 集成电路布局图生成方法和系统
KR102379425B1 (ko) 스태거드 게이트-스터브-사이즈 프로파일을 갖는 반도체 디바이스 및 그 제조 방법
JP4074329B2 (ja) 光近接効果補正方法
JP2000066370A (ja) マスクパターン作成方法および装置
JP2007279758A (ja) 光近接効果補正方法
JP2000138159A (ja) マスクパターン作成方法および装置
JP2006039594A (ja) 光近接効果補正方法

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20000403

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): DE FR GB IT

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: NUMERICAL TECHNOLOGIES, INC.

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: SYNOPSYS MERGER HOLDINGS LLC

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: SYNOPSYS, INC.

A4 Supplementary search report drawn up and despatched

Effective date: 20090401

17Q First examination report despatched

Effective date: 20090925

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20150609