Method and system for detailed placement of layout objects in a standard-cell layout design
Claim Score by NHIP
Abstract
A method and system for detailed placement of layout objects in a standard-cell layout design are disclosed. Layout objects comprise cells and etch dummies. The method includes a programming based technique to calculate layout object perturbation distances for the layout objects. The method includes adjusting the layout objects with their corresponding layout object perturbation distances. This leads to improved photolithographic characteristics such as reduced Critical Dimension (CD) errors and forbidden pitches in the standard-cell layout.

Term
Term ended
Projected expiry passed 20 July 2026, 0.2 years ago.
- Priority and filed
- Published
- Projected expiry
- Today
49 claims: 3 independent, 46 dependent
- 1Broadest claimClaim Score 70, broad(NHIP)A method for detailed placement of at least one layout object in standard-cell layout design, the method comprising:calculating a layout object perturbation distance of the at least one layout object, wherein the layout object perturbation distance reduces critical dimension (CD) errors in the at least one layout object;and adjusting the at least one layout object by the layout object perturbation distance.
- 21A system for detailed placement of at least one layout object in a standard-cell layout design, the system comprising:a placement perturbation module for calculating a layout object perturbation distance of the at least one layout object to reduce critical dimension (CD) errors;and a standard-cell layout generator module for adjusting the at least one layout object by the layout object perturbation distance.
- 36A computer program product for use with a computer, the computer program product comprising a computer usable medium having a computer readable program code embodied therein for detailed placement of at least one layout object in standard-cell layout design, the computer program code performing the steps of:calculating a layout object perturbation distance of the at least one layout object, wherein the layout object perturbation distance reduces critical dimension (CD) errors in the at least one layout object;and adjusting the at least one layout object by the layout object perturbation distance.
Independent claims3
64 paragraphs in 4 sections, as filed
BACKGROUND OF THE INVENTION
00011. Field of the Invention
0002This invention relates generally to standard-cell layout designs, and more particularly, to a dynamic system and method for adjustment of the placement of layout objects, such as the cells and etch dummies used with standard-cell layout designs.
00032. Description of the Related Art
0004The feature size of modern standard cell-based layout designs of integrated circuits has reached nanometer scale. For example, the feature size of leading optical lithographic processes is significantly smaller than that of the wavelength of the light used, resulting in a “sub-wavelength lithography” regime. This requires advanced photomasks that embody one or more resolution enhancement techniques (RETs) such as optical proximity correction (OPC), phase shift masks (PSM), off-axis illumination (OAI), and the insertion of sub-resolution assist features (SRAFs). These techniques achieve enhanced critical dimension (CD) control in photo and etch processes. Further, the resolution of the lithographic process is also improved.
0005A standard-cell layout comprises a plurality of features. This plurality of features can include a plurality of polysilicon lines, active-layer shapes and added features. The plurality of polysilicon lines and active-layer shapes form a plurality of cells in the standard-cell layout. A polysilicon line can be a gate polysilicon shape, a field polysilicon shape and a wiring polysilicon shape. A gate polysilicon shape is formed with an overlapping of a polysilicon line and an active-layer shape. Extra added features include SRAFs and etch dummies. SRAFs typically are scattering bars which are extremely narrow lines, placed adjacent to primary patterns, that do not actually print on the wafer but affect the pattern of light passing through a photo mask on which they are printed. Traditionally, the features are arranged in a horizontal plane in a plurality of rows. The features are oriented vertically in the plurality of rows. A center-to-center distance between two features is termed as a pitch.
0006With OAI, the illumination is made to fall on the mask at an oblique angle. This angle is chosen to enhance the photolithographic characteristics of the most common pitches in the standard-cell layout. When off-axis illumination is optimized for one pitch (usually the minimum or the most commonly used pitch in the design), there will always be other pitches for which angle of illumination and angle of diffraction together lead to a poor lithographic response and hence a small depth of focus/process window. These pitches are known as forbidden pitches as it is best to avoid them in the layout. Typically they are defined as pitches for which CD has more than 10% error at the worst-case defocus. Avoiding forbidden pitches is a major task involved in designing a standard-cell layout.
0007SRAFs, as noted above, are dummy geometries that are inserted as a part of an RET flow, to make the isolated pitches “appear” dense, thereby improving the printability of the otherwise forbidden pitches. The correct placement of SRAFs is a major concern involved in the RET of layouts. Incorrect placement of SRAFs can result in unwanted printing of SRAFs on the wafer. It is necessary to maintain a certain minimum spacing between SRAFs and polysilicon shapes as well as between pairs of SRAFs. At the same time, large spacing can make the SRAFs less effective in helping with printability.
0008Another method of enhancing CD control during photolithography and the etching process is to insert etch dummies during the preparation of standard-cell layouts. In etch processes, different consumptions of etchants with different pattern density lead to etch skew between dense and isolated patterns. Typically, all available etchants in areas with low density are consumed rapidly, and thus the etch rate drops off significantly. To reduce this etch skew, etch dummies are inserted adjacent to the primary pattern with specific spacing. Furthermore, etch dummies are placed outside of active-layer regions. Therefore, etch dummies require correct placement to make printability of resist and etch processes better. However, the insertion of etch dummies and SRAFs together requires precise spacing. Examples of such spacing include the spacing between etch dummies, between polysilicon shapes and SRAFs, and between active-layer shapes and etch dummies. Incorrect etch dummy placement does not allow SRAF insertion in forbidden pitches even when there is enough space to insert multiple SRAFs before etch dummy insertion. Thus, forbidden pitches, resist CD and etch CD degradations occur due to incorrect spacing between various features in a standard-cell layout, including cells, etch dummies, and SRAFs.
0009There are a number of methods for the reduction of forbidden pitches and resolution enhancement. Some of these techniques are based on the control of certain optical conditions, such as a numerical aperture (NA) and an illuminator aperture shape for OAI. Neglecting SRAFs during layout preparation requires precise sizing of SRAFs and the proper adjustment of the exposure dose. This results in an increase in the complexity of mask inspection, and possibly to CD degradation.
0010Therefore, there is a need for a method and system that can place layout objects and SRAFs correctly in a standard-cell layout to reduce forbidden pitches. The method and system should result in enhanced CD control in photo and etch processes. Furthermore, the running time of an OPC should not increase substantially.
SUMMARY OF THE INVENTION
0011An object of the invention is to place one or more layout objects correctly within a given standard-cell layout, to reduce forbidden pitches.
0012Another object of the invention is to enhance critical dimension (CD) control in photo and etch processes.
0013Yet another object of the invention is to introduce additional sub-resolution assist features (SRAFs) and etch dummies in a standard-cell layout, to reduce the CD skew of photo and etch processes and achieve an improvement in wafer printability.
0014The present invention provides a method and system for the detailed placement of a layout object in a standard-cell layout design. The layout object is either a cell, an etch dummy, or an SRAF. The method calculates the layout object perturbation distance of the layout object, and adjusts the location of the layout object according to the calculated layout object perturbation distance.
0015The system includes a placement perturbation module and a standard-cell layout generator. The placement perturbation module calculates the layout perturbation distance of the layout object to reduce CD errors. The standard-cell layout generator module adjusts the locations of the layout objects by means of the layout perturbation module.
BRIEF DESCRIPTION OF THE DRAWINGS
0016So that the above-recited features of the present invention can be understood in detail, a more particular description of the invention, briefly summarized above, may be had by reference to various embodiments, some of which are illustrated in the appended drawings. It is to be noted, however, that the appended drawings illustrate only typical embodiments of this invention and are therefore not to be considered limiting of its scope, for the invention may admit to other equally effective embodiments.
0017<figref idref="DRAWINGS">FIG. 1</figref> is a schematic diagram illustrating exemplary elements of a standard-cell layout.
0018<figref idref="DRAWINGS">FIG. 2</figref> is a schematic diagram illustrating the interaction between the polysilicon shapes of the horizontally adjacent cells in a standard-cell layout.
0019<figref idref="DRAWINGS">FIG. 3</figref> is a schematic diagram illustrating the interaction between the polysilicon shapes of the vertically adjacent cells in a standard-cell layout.
0020<figref idref="DRAWINGS">FIG. 4</figref> is a schematic diagram illustrating overlap between polysilicon shapes in adjacent cells.
0021<figref idref="DRAWINGS">FIG. 5</figref> is a flowchart illustrating a method for detailed placement of a layout object in a standard-cell layout design, in accordance with an embodiment of the present invention.
0022<figref idref="DRAWINGS">FIG. 6</figref> is a schematic diagram illustrating the interaction between polysilicon shapes and etch dummies in a row in a standard-cell layout.
0023<figref idref="DRAWINGS">FIG. 7</figref> is a schematic diagram illustrating overlap between an etch dummy and a polysilicon shape.
0024<figref idref="DRAWINGS">FIG. 8</figref> is a schematic diagram illustrating an exemplary sub-resolution assist feature (SRAF)-aware etch dummy insertion technique, in accordance with an embodiment of the present invention.
0025<figref idref="DRAWINGS">FIG. 9</figref> is a block diagram of a system for the detailed placement of layout objects in a standard-cell layout design, in accordance with an embodiment of the present invention.
0026<figref idref="DRAWINGS">FIG. 10</figref> is a graph illustrating exemplary values for assist-correct spacings.
DETAILED DESCRIPTION OF THE INVENTION
0027Various embodiments of the present invention relate to a method and system for detailed placement of layout objects in a standard-cell layout design. A standard-cell layout generated in accordance with various embodiments of the present invention can be used to prepare a photolithography mask that offers improved lithographic characteristics. The lithographic mask can then be used to manufacture an integrated circuit. Layout objects are design objects that need to be positioned in a standard-cell layout design according to specific rules. Layout objects include traditional design objects such as cells. Typically, placement of a cell is chosen by a physical design tool. Exemplary physical design tools include Astro™ from Synopsys and SOC Encounter™ from Cadence. Each cell can further include a plurality of polysilicon shapes and their active-layer shapes. Each of the plurality of polysilicon shapes can include a plurality of gate polysilicon shapes (that is to say, transistor gates) and field polysilicon shapes. Layout objects can also include etch dummies. Etch dummies are added into the standard-cell layout design to reduce the CD skew between the photo and etch processes. Typically, placement of etch dummies is chosen by Resolution Enhancement Technique (RET) tools. Exemplary RET tools include Calibre™ from Mentor Graphics and Proteus™ from Synopsys. Traditionally, etch dummies are placed after the placement of cells. Further, sub-resolution assist features (SRAFs) are also inserted in the standard-cell layout, usually after the placement of etch dummies. SRAFs enhance the printability of isolated patterns onto the wafer. The placement of SRAFs in the standard-cell layout involves possible spacing constraints. Incorrect placement of SRAFs can result in the occurrence of forbidden pitches in the standard-cell layout, as well as unwanted printing of SRAFs on the wafer. Forbidden pitches are those pitches for which the process window of Critical Dimension (CD) is too small.
0028Inserting etch dummies with SRAFs necessitates additional spacing constraints. Examples of additional spacing constraints include spacing between active-layer shapes, between polysilicon shapes, and between polysilicon shapes and etch dummies. These additional spacing constraints can be different for the SRAFs and etch dummies.
0029<figref idref="DRAWINGS">FIG. 1</figref> is a schematic diagram illustrating exemplary elements of a standard-cell layout. The standard-cell layout includes a plurality of layout objects and sub-resolution assist features (SRAFs). The plurality of layout objects and SRAFs are placed in the same plane as shown in <figref idref="DRAWINGS">FIG. 1</figref>. Examples of layout objects include, but are not limited to, cells and etch dummies. In an embodiment of the present invention, the cells are arranged in a plurality of rows in the standard-cell layout. The exemplary standard-cell layout shown in <figref idref="DRAWINGS">FIG. 1</figref> includes a cell <b>102</b>, a cell <b>104</b>, an etch dummy <b>106</b>, an SRAF <b>108</b>, and an SRAF <b>110</b>. It will be apparent to those skilled in the art that the standard-cell layout can also include other similar components, as shown in <figref idref="DRAWINGS">FIG. 1</figref>. Cells in a standard-cell layout can include polysilicon and active-layer shapes. Polysilicon shapes further include gate polysilicon shapes (polysilicon over active-layer shape) and field polysilicon shapes or wiring polysilicon shapes. For example, as shown in <figref idref="DRAWINGS">FIG. 1</figref>, cell <b>102</b> includes a gate polysilicon shape <b>112</b>, a field polysilicon shape <b>114</b>, an active-layer shape <b>116</b>, and other polysilicon and active-layer shapes. Similarly, cell <b>104</b> includes a gate polysilicon shape <b>118</b>, a field polysilicon shape <b>120</b>, an active-layer shape <b>122</b>, and other polysilicon shapes and active-layer shapes.
0030<figref idref="DRAWINGS">FIG. 2</figref> is a schematic diagram illustrating the interaction between the polysilicon shapes of horizontally adjacent cells in a standard-cell layout. Cell <b>102</b> and cell <b>104</b> are in a cell row. In <figref idref="DRAWINGS">FIG. 2</figref>, the horizontal interactions of the polysilicon shapes of the adjacent cells are shown in one cell row. A section separated by lines (in dashes) represents the interaction between the polysilicon shapes. In a generalized way, C<sub>a,j </sub>represents the a<sup>th </sup>cell in the j<sup>th </sup>row. Similarly, C<sub>a−1,j </sub>represents the (a−1)<sup>th </sup>cell in the j<sup>th </sup>row. In an embodiment of the present invention, only polysilicon shapes with lengths that exceed the minimum length of the SRAFs are considered. Typically, a polysilicon shape that is shorter than the minimum length of the SRAFs has a negligible impact on the photolithographic characteristics of the standard-cell layout. Each cell has an outline boundary enclosing all the polysilicon shapes. The polysilicon shapes can be grouped according to their proximity to the cell's left and right outline. Therefore, there are two groups of polysilicon shapes in a cell when a row is considered. These groups are referred to as a left polysilicon shape group and a right polysilicon shape group. The polysilicon shape of the left polysilicon shape group of a cell can overlap another polysilicon shape of the right polysilicon shape group of an adjacent cell. In <figref idref="DRAWINGS">FIG. 2</figref>, LP<sub>a,j </sub>represents the left polysilicon shape group and RP<sub>a,j </sub>the right polysilicon shape group of the a<sup>th </sup>cell in the j<sup>th </sup>row. In cell <b>102</b>, the polysilicon shape formed by gate polysilicon shape <b>112</b> and field polysilicon shape <b>114</b> is a subset of RP<sub>a−1,j</sub>. Similarly, in cell <b>104</b>, the polysilicon shape formed by gate polysilicon shape <b>118</b> and field polysilicon shape <b>120</b> is a subset of LP<sub>a,j</sub>. In general, when there are ‘N’ polysilicon shapes in the set RP<sub>a−1,j </sub>where N≧1, any k<sup>th </sup>polysilicon shape of the set RP<sub>a−1,j </sub>can be represented as RP<sub>a−1,j</sub><sup>k</sup>. Similarly, when there are M polysilicon shapes in the set LP<sub>a,j </sub>and where M≧1, any g<sup>th </sup>polysilicon shape of the set LP<sub>a,j </sub>can be represented as LP<sub>a,j</sub><sup>g</sup>. The distance between the right outline of the cell C<sub>a−1,j </sub>and RP<sub>a−1,j</sub><sup>k</sup>, can be represented by S<sub>a−1,j</sub><sup>RP</sup><sup><sup2>k</sup2></sup>. Similarly, the distance between the left outline of the cell C<sub>a,j </sub>and LP<sub>a,j</sub><sup>g </sup>can be represented by S<sub>a,j</sub><sup>LP</sup><sup><sup2>g</sup2></sup>. Let W<sub>a </sub>denote the width of the cell C<sub>a,j </sub>and W<sub>a−1 </sub>the width of the cell C<sub>a−1,j</sub>. Further, let X<sub>a </sub>and X<sub>a−1 </sub>denote the leftmost placement coordinate of the cell C<sub>a,j </sub>and C<sub>a−1,j</sub>, respectively, corresponding to an origin. For the purpose of this description, co-ordinates increase from the left to the right and from the bottom to the top in <figref idref="DRAWINGS">FIG. 2</figref>.
0031<figref idref="DRAWINGS">FIG. 3</figref> is a schematic diagram illustrating the interaction between the polysilicon shapes of the vertically adjacent cells in a standard-cell layout. This schematic diagram represents the vertical interaction of the polysilicon shapes of the different cell rows. In <figref idref="DRAWINGS">FIG. 3</figref>, cell <b>104</b>, along with cells <b>302</b>, and <b>304</b> are shown. Cells <b>302</b> and <b>304</b> lie in the same plane as cell <b>104</b>, as shown in <figref idref="DRAWINGS">FIG. 1</figref>. Cell <b>104</b> includes a field polysilicon shape <b>306</b> and a field polysilicon shape <b>308</b>. Cell <b>302</b> includes a field polysilicon shape <b>310</b>. Cells <b>302</b> and <b>304</b> belong to the same row and cell <b>104</b> (as shown in <figref idref="DRAWINGS">FIG. 1</figref>) is in a vertically adjacent row of the same layer. For the purpose of this description, only two rows and three cells are shown in the standard-cell layout. It will be apparent to a person skilled in the art that the standard-cell layout can include many other rows. In the arrangement shown in <figref idref="DRAWINGS">FIG. 3</figref>, there is an interaction between the field polysilicon shapes in adjacent cell rows, since typically, gate polysilicon shapes are placed vertically in the standard-cell layout (the standard cell placement rows oriented horizontally in the plane of <figref idref="DRAWINGS">FIG. 3</figref>). Let cell <b>104</b> be the a<sup>th </sup>cell in a row j of the standard-cell layout. The cell can then be represented as C<sub>a,j</sub>. Similarly, let cells <b>302</b> and <b>304</b> be the h<sup>th </sup>and g<sup>th </sup>cells in an adjacent row, j−1. Then cells <b>302</b> and <b>304</b> can be represented as C<sub>h,j−1 </sub>and C<sub>g,j−1</sub>. The field (or gate) polysilicon shapes are grouped according to their proximity to a top outline of a cell and a bottom outline of the cell, when the cells in adjacent rows are being considered. These groups are referred to as a top field polysilicon shape group and a bottom field polysilicon shape group. For example, field polysilicon shapes <b>306</b> and <b>308</b> form the bottom field polysilicon shape group for cell <b>104</b>. Similarly, field polysilicon shapes <b>310</b> and <b>312</b> form the top field polysilicon shape groups of cells <b>302</b> and <b>304</b>, respectively. Let FB<sub>a,j</sub><sup>k </sup>represent the k<sup>th </sup>field polysilicon shape of a bottom field polysilicon shape group of cell C<sub>a,j</sub>, and FT<sub>h,j−1</sub><sup>g </sup>denote the g<sup>th </sup>field polysilicon shape of a top field polysilicon shape group of cell C<sub>h,j−1</sub>. Further, let S<sub>a,j</sub><sup>FB</sup><sup><sup2>k</sup2></sup>, denote the spacing between the bottom outline of the cell C<sub>a,j </sub>and the bottom of the k<sup>th </sup>field polysilicon shape of the bottom field polysilicon shape group of the cell C<sub>a,j</sub>. Similarly, lets <smallcaps>S</smallcaps><sub>h,j−1</sub><sup>FT</sup><sup><sup2>g </sup2></sup>denote the spacing between the top outline of the cell C<sub>h,j−1 </sub>and the top of the g<sup>th </sup>field polysilicon shape of the top field polysilicon shape group of the cell C<sub>h,j−1</sub>.
0032<figref idref="DRAWINGS">FIG. 4</figref> is a schematic diagram illustrating overlap between the polysilicon shapes in adjacent cells. This schematic diagram represents the overlap between the polysilicon shapes in conjunction with <figref idref="DRAWINGS">FIG. 2</figref>. <figref idref="DRAWINGS">FIG. 4</figref> shows the polysilicon shape formed by gate polysilicon shape <b>112</b> and field polysilicon shape <b>114</b>, and another polysilicon shape formed by gate polysilicon shape <b>118</b> and field polysilicon shape <b>120</b>. Let O<sub>gg </sub>denote the length of the overlap between gate polysilicon shape <b>112</b> and gate polysilicon shape <b>118</b>. Further, let O<sub>gf </sub>denote the length of the overlap between gate polysilicon shape <b>112</b> and field polysilicon shape <b>120</b>. As shown in <figref idref="DRAWINGS">FIG. 4</figref>, O<sub>gf </sub>has two components on either side of O<sub>gg </sub>which are summed to give the value of O<sub>gf</sub>. Similarly, let O<sub>ff </sub>denote the length of the overlap between field polysilicon shape <b>114</b> and field polysilicon shape <b>120</b>. As shown in <figref idref="DRAWINGS">FIG. 4</figref>, O<sub>ff </sub>has two components on either side of O<sub>gf </sub>which are summed to give the value of O<sub>ff</sub>. To enhance CD control and reduce forbidden pitches in the standard-cell layout described in conjunction with <figref idref="DRAWINGS">FIGS. 2, 3</figref> and <b>4</b>, a detailed placement of layout objects is required.
0033<figref idref="DRAWINGS">FIG. 5</figref> is flowchart depicting a method for detailed placement of a layout object in a standard-cell layout design, in accordance with an embodiment of the present invention. At step <b>502</b>, a layout object perturbation distance, that is, the change in spacing of a layout object is calculated. If the layout object is a cell, its layout object perturbation distance is calculated along with an overall layout perturbation distance for a set of cells. In an embodiment of the present invention, the set of cells comprises all the cells in the cell row. The overall layout perturbation distance between a set of cells is a summation of the layout perturbation distance of each of the set of cells. The calculation of the layout perturbation distance given above can be based on the calculation of a cost function. The cost function quantifies the cost of placing a cell at a particular placement site in the cell row. In order to reduce CD degradation, the cost function has to be minimized. The cost function of a set of cells is minimized to determine the layout object perturbation distance of each cell. For example, a particular layout object perturbation distance may result in the removal of forbidden pitches from a cell, but may lead to excessive overlap between polysilicon shapes of cells in adjacent rows. This layout object perturbation distance would then reduce the lithographic characteristics of the standard-cell layout. Minimizing the cost function ensures that the layout object perturbation distances for all cells are such that the overall lithographic characteristics of the standard-cell layout are improved. At step <b>504</b>, the layout object is adjusted according to the layout object perturbation distance.
0034When the method illustrated in <figref idref="DRAWINGS">FIG. 5</figref> is followed for each cell in a set of cells in a standard-cell layout, the spacing between the cells is adjusted such that forbidden pitches are reduced. Therefore, a dynamic programming-based approach for the detailed placement of layout objects is followed, to ensure assist-feature correction. In an embodiment of the present invention, the forbidden pitches include horizontal (H) forbidden pitches and vertical (V) forbidden pitches. H-forbidden pitches occur between the cells in a row and V-forbidden pitches between the cells of vertically adjacent rows. The vertical and horizontal pitches occur in the same plane. Cells are adjusted such that spacings between the cells are one of a set of assist-correct spacings (AF). Assist-correct spacings are the required spacings between two layout shapes which allow for inserting a sufficient number of SRAFs to attain a threshold level of printing quality/process window. AF includes a plurality of assist-correct spacings or AF=AF<sub>1 </sub>. . . AF<sub>m</sub>. Let AF<sub>I</sub>, denote the I<sup>th </sup>member of the set AF, where AF<sub>m</sub>>AF<sub>I</sub>>AF<sub>1 </sub>and m>I>1. If the spacing between the polysilicon shapes is equal to an assist-correct spacing, then the required number of sub-resolution assist features (SRAFs) can be inserted between the cells. A perturbation of spacing (δ<sub>a,j</sub>) is calculated for assist-correct placement, where δ<sub>a,j </sub>represents the spacing perturbation of cell C<sub>a,j</sub>. At the same time, in an embodiment of the present invention, an overall layout perturbation distance for the cell row, is also calculated and minimized. The assist-feature correction problem can be represented as: <br />Minimize Σ|δ<sub>a,j</sub>|
0035As shown in <figref idref="DRAWINGS">FIG. 2</figref>, the polysilicon shape formed by gate polysilicon shape <b>112</b> and field polysilicon shape <b>114</b> and the polysilicon shape formed by gate polysilicon shape <b>118</b> and field polysilicon shape <b>120</b> overlap horizontally in a cell row. To make the spacing between these two polysilicon shapes into an assist-correct spacing, the following criteria should be satisfied: <maths id="MATH-US-00001" num="1"><math overflow="scroll"><mrow><mrow><mrow><mo>(</mo><mrow><msub><mi>δ</mi><mrow><mi>a</mi><mo>,</mo><mi>j</mi></mrow></msub><mo>+</mo><msub><mi>x</mi><mrow><mi>a</mi><mo>,</mo><mi>j</mi></mrow></msub><mo>+</mo><msubsup><mi>S</mi><mrow><mi>a</mi><mo>,</mo><mi>j</mi></mrow><msup><mi>LP</mi><mi>g</mi></msup></msubsup></mrow><mo>)</mo></mrow><mo>-</mo><mrow><mo>(</mo><mrow><msub><mi>δ</mi><mrow><mrow><mi>a</mi><mo>-</mo><mn>1</mn></mrow><mo>,</mo><mi>j</mi></mrow></msub><mo>+</mo><msub><mi>x</mi><mrow><mrow><mi>a</mi><mo>-</mo><mn>1</mn></mrow><mo>,</mo><mi>j</mi></mrow></msub><mo>+</mo><msub><mi>w</mi><mrow><mrow><mi>a</mi><mo>-</mo><mn>1</mn></mrow><mo>,</mo><mi>j</mi></mrow></msub><mo>-</mo><msubsup><mi>S</mi><mrow><mrow><mi>a</mi><mo>-</mo><mn>1</mn></mrow><mo>,</mo><mi>j</mi></mrow><msup><mi>RP</mi><mi>k</mi></msup></msubsup></mrow><mo>)</mo></mrow></mrow><mo>∈</mo><mi>AF</mi></mrow></math></maths><br /> Similarly, in <figref idref="DRAWINGS">FIG. 3</figref>, field polysilicon shapes <b>306</b> and <b>310</b> and field polysilicon shapes <b>308</b> and <b>312</b> overlap each other vertically. To make the spacing between field polysilicon shapes <b>306</b> and <b>310</b> into an assist-correct spacing, the following criteria should be satisfied: <maths id="MATH-US-00002" num="2"><math overflow="scroll"><mrow><mrow><msubsup><mi>S</mi><mrow><mi>a</mi><mo>,</mo><mi>j</mi></mrow><msup><mi>FB</mi><mi>k</mi></msup></msubsup><mo>+</mo><msubsup><mi>S</mi><mrow><mi>h</mi><mo>,</mo><mrow><mi>j</mi><mo>-</mo><mn>1</mn></mrow></mrow><msup><mi>FT</mi><mi>g</mi></msup></msubsup></mrow><mo>∈</mo><mi>AF</mi></mrow></math></maths>
0036In another embodiment of the present invention, the above-mentioned problem is solved by calculating a cost function by considering a set of cells, where cost (a, b) is the cost of placing a cell ‘a’ at a placement site number ‘b’. In any standard cell layout, there is a plurality of placement sites where a layout object can be placed. The numbering of placement sites is indexed from left to right, corresponding to an origin. In an embodiment of the present invention, there are two types of cost functions that are determined: H cost (a, b), which is the cost penalty of placing a cell ‘a’ at placement site number ‘b’ in the same row, and is associated with its neighbor cell C<sub>a−1 </sub>in the same row. The cost penalty has two components: (1) printability or CD error cost and (2) perturbation cost. The first penalty comes from SRAFs and Etch dummy correctness. The second comes from other design concerns such as timing, routability and the like. In general, the less the location of a cell is perturbed, the better, as it was placed at a given location by a placement tool to improve certain design metrics such as timing, wirelength, etc. Similarly, V cost (a, b) is the cost of placing the cell ‘a’ at a placement site number ‘b’ in the same row, and is associated with its vertical field polysilicon shape interactions with adjacent cells in adjacent rows. The dynamic programming-based approach for assist-feature correction takes the first cell in a cell row and calculates the cost function of the first cell. Subsequently, the next cell adjacent to the first cell is taken, and the cost function for this cell is calculated in a recursive fashion. In this way, the cost functions of each cell in the cell row are calculated.
0037Therefore, the assist-feature correction problem can be solved by using the following cost function: <maths id="MATH-US-00003" num="3"><math overflow="scroll"><mtable><mtr><mtd><mrow><mrow><mi>Cost</mi><mo></mo><mstyle><mtext> </mtext></mstyle><mo></mo><mrow><mo>(</mo><mrow><mn>1</mn><mo>,</mo><mi>b</mi></mrow><mo>)</mo></mrow></mrow><mo>=</mo><mi /><mo></mo><mrow><mo></mo><mrow><msub><mi>x</mi><mn>1</mn></msub><mo>-</mo><mi>b</mi></mrow><mo></mo></mrow></mrow></mtd></mtr><mtr><mtd><mrow><mrow><mi>Cost</mi><mo></mo><mstyle><mtext> </mtext></mstyle><mo></mo><mrow><mo>(</mo><mrow><mi>a</mi><mo>,</mo><mi>b</mi></mrow><mo>)</mo></mrow></mrow><mo>=</mo><mi /><mo></mo><mrow><mrow><mrow><mi>λ</mi><mo></mo><mrow><mo>(</mo><mi>a</mi><mo>)</mo></mrow></mrow><mo></mo><mrow><mo></mo><mrow><msub><mi>x</mi><mi>a</mi></msub><mo>-</mo><mi>b</mi></mrow><mo></mo></mrow></mrow><mo>+</mo><msubsup><mi>Min</mi><mrow><mi>i</mi><mo>=</mo><mrow><msub><mi>x</mi><mrow><mi>a</mi><mo>-</mo><mn>1</mn></mrow></msub><mo>-</mo><mi>srch</mi></mrow></mrow><mrow><msub><mi>x</mi><mrow><mi>a</mi><mo>-</mo><mn>1</mn></mrow></msub><mo>+</mo><mi>srch</mi></mrow></msubsup></mrow></mrow></mtd></mtr><mtr><mtd><mrow><mi /><mo></mo><mrow><mo>{</mo><mtable><mtr><mtd><mrow><mrow><mi>Cost</mi><mo></mo><mstyle><mtext> </mtext></mstyle><mo></mo><mrow><mo>(</mo><mrow><mrow><mi>a</mi><mo>-</mo><mn>1</mn></mrow><mo>,</mo><mi>i</mi></mrow><mo>)</mo></mrow></mrow><mo>+</mo><mrow><mi>α</mi><mo></mo><mstyle><mtext> </mtext></mstyle><mo></mo><mi>H</mi><mo></mo><mstyle><mtext> </mtext></mstyle><mo></mo><mi>cost</mi><mo></mo><mstyle><mtext> </mtext></mstyle><mo></mo><mrow><mo>(</mo><mrow><mi>a</mi><mo>,</mo><mi>b</mi><mo>,</mo><mrow><mi>a</mi><mo>-</mo><mn>1</mn></mrow><mo>,</mo><mi>i</mi></mrow><mo>)</mo></mrow></mrow><mo>+</mo></mrow></mtd></mtr><mtr><mtd><mrow><mi>β</mi><mo></mo><mstyle><mtext> </mtext></mstyle><mo></mo><mi>V</mi><mo></mo><mstyle><mtext> </mtext></mstyle><mo></mo><mi>cost</mi><mo></mo><mstyle><mtext> </mtext></mstyle><mo></mo><mrow><mo>(</mo><mrow><mi>a</mi><mo>,</mo><mi>b</mi></mrow><mo>)</mo></mrow></mrow></mtd></mtr></mtable><mo>}</mo></mrow></mrow></mtd></mtr></mtable></math></maths><br /> where α and β are the relative importance of H cost and V cost. H cost is related to the overlap between the gate polysilicon shapes and the printability of a polysilicon shape, which directly affects the device performance. Typically V cost influences only the field poly-silicon geometries and so it is less important. Thus, in an embodiment of the present invention, H cost has more weight (α>β) than V cost. In other situations it can have increased importance due to, for example, constraints of the lithographic equipment which may be better at printing vertical shapes than horizontal ones. λ is a term that is associated with the relative importance of preserving the initial location of a cell in the standard cell layout. Therefore, λ(a) |x<sub>a</sub>−b| is a measure of the cost required to changing the position of the cell. For example, if there are numerous critical timing paths that pass through a particular cell, the placement of the cell should not be changed. Hence, the value of λ should be kept high. In an embodiment of the invention, λ is kept directly proportional to the number of critical timing paths that pass through a cell.
0038In another embodiment of the invention, the maximum perturbation of a cell is also limited. Let SRCH denote the number of neighboring placement sites by which a cell can be adjusted. The range of the cell C<sub>a,j </sub>in which it can be adjusted is the range of placement site (X<sub>a−1</sub>−SRCH, X<sub>a−1</sub>+SRCH). This restricts the perturbation of a cell to a maximum of ±SRCH placement sites from its initial location, to limit the maximum perturbation of any cell and also reduce the runtime of the algorithm.
0039The following is an exemplary pseudo code for calculating the H cost:
0000Input:
0000<ul id="ul0001" list-style="none"><li id="ul0001-0001" num="0040"> C<sub>ff </sub>is a user-defined weight for overlapping field polysilicon shapes; </li><li id="ul0001-0002" num="0041"> C<sub>gg </sub>is a user-defined weight for overlapping gate polysilicon shapes; </li><li id="ul0001-0003" num="0042"> C<sub>gf </sub>is a user-defined weight for overlapping gate polysilicon shapes and field polysilicon shapes; </li><li id="ul0001-0004" num="0043"> b is a left coordinate of cell C<sub>a,j</sub>; </li><li id="ul0001-0005" num="0044"> i is a left coordinate of cell C<sub>a−1,j</sub>; </li><li id="ul0001-0006" num="0045"> w<sub>a </sub>is the width of cell C<sub>a,j</sub>; </li><li id="ul0001-0007" num="0046"> w<sub>a−1 </sub>is the width of cell C<sub>a−1,j</sub>; </li><li id="ul0001-0008" num="0047"> Hspace (k, g) is the horizontal spacing between RP<sub>a−1,j</sub><sup>k </sup>and LP<sub>a,j</sub><sup>g</sup>; </li><li id="ul0001-0009" num="0048"> O<sub>gg </sub>(k, g) is the length of the overlap between polysilicon gates of RP<sub>a−1,j</sub><sup>k </sup>and LP<sub>a,j</sub><sup>g</sup>; </li><li id="ul0001-0010" num="0049"> O<sub>gf</sub>(k, g) is the length of the overlap between a gate polysilicon shape and a field polysilicon shape of RP<sub>a−1,j</sub><sup>k </sup>and LP<sub>a,j</sub><sup>g</sup>; </li><li id="ul0001-0011" num="0050"> O<sub>ff</sub>(k, g) is the length of the overlap between field polysilicon shapes of RP<sub>a−1,j</sub><sup>k </sup>and LP<sub>a,j</sub><sup>g</sup>; and </li><li id="ul0001-0012" num="0051"> Slope (j) is the degradation of CD with respect to pitch, when the spacing between the two polysilicon shapes is between AF<sub>I</sub>, and AF<sub>I+1</sub>, that is, the ratio ΔCD/Δspacing. <br /> Output: <br /> Value of H cost (a, b, a−1, i) </li></ul>
0052Algorithm: <tables id="TABLE-US-00001" num="1"><table frame="none" colsep="0" rowsep="0"><tgroup align="left" colsep="0" rowsep="0" cols="1"><colspec colname="1" colwidth="217PT" align="left" /><thead><row><entry /></row><row><entry namest="1" nameend="1" align="center" rowsep="1" /></row></thead><tbody valign="top"><row><entry>01. Case a =1: H cost (1, b) = 0</entry></row><row><entry>02. Case a>1 Do</entry></row><row><entry>03. N: = cardinality of set RP<sub>a−1,j </sub>right polysilicon shape group of cell</entry></row><row><entry>C<sub>a−1,j</sub></entry></row><row><entry>04. M: = cardinality of set LP<sub>a,j </sub>left polysilicon shape group of cell C<sub>a,j</sub></entry></row><row><entry>05. For (k = 1; k = N; k = k + 1){</entry></row><row><entry>06. For (g = 1; g = M; g = g + 1){</entry></row><row><entry>/* Calculate overlap weight between RP<sub>a−1,j</sub><sup>k </sup>and LP<sub>a,j</sub><sup>g </sup>*/</entry></row><row><entry>07. Weight (k, g) = slope (j)*(Hspace (K, g) − AF<sub>l</sub>)*(C<sub>ff</sub>O<sub>ff</sub>(k, g) +</entry></row><row><entry>C<sub>gf</sub>O<sub>gf</sub>(k, g) + C<sub>gg</sub>O<sub>gg</sub>(k, g))</entry></row><row><entry>08. H cost (a, b, a−1, i) = H cost (a, b, a−1, i) + weight (k, g)</entry></row><row><entry>}}</entry></row><row><entry namest="1" nameend="1" align="center" rowsep="1" /></row></tbody></tgroup></table></tables><br /> The term slope (j)*(Hspace (k, g)−AF<sub>I</sub>) is a measure of the variation of CD between the polysilicon shapes. The term (C<sub>ff</sub>O<sub>ff</sub>(k, g)+C<sub>gf</sub>O<sub>gf</sub>(k, g)+C<sub>gg</sub>O<sub>gg</sub>(k, g)) is a first overlapping factor that accounts for a gate polysilicon shape-to-polysilicon gate overlap, a gate polysilicon shape-to-field polysilicon shape overlap, and a field polysilicon shape-to-field polysilicon shape overlap. C<sub>ff</sub>, C<sub>gf</sub>, and C<sub>gg </sub>are used to weigh the overlap based on the printability of the gate polysilicon shapes and field polysilicon shapes. <br /> Similarly, the following is an exemplary pseudo code for calculating the V cost (a, b): <br /> Input: <ul id="ul0002" list-style="none"><li id="ul0002-0001" num="0053"> C<sub>ff </sub>is a user-defined weight for overlapping field polysilicon shapes. </li><li id="ul0002-0002" num="0054"> b is a left coordinate of cell C<sub>a,j</sub>. </li><li id="ul0002-0003" num="0055"> Vspace is the vertical spacing between FT<sub>h,j−1</sub><sup>g </sup>and FB<sub>a,j</sub><sup>k</sup>. </li><li id="ul0002-0004" num="0056"> O<sub>ff</sub>(k, g) is the length of the overlap between field polysilicon shapes of FT<sub>h,j−1</sub><sup>g </sup>and FB<sub>a,j</sub><sup>k</sup>. <br /> Output: <br /> Value of V Cost (a, b) </li></ul>
0057Algorithm: <tables id="TABLE-US-00002" num="2"><table frame="none" colsep="0" rowsep="0"><tgroup align="left" colsep="0" rowsep="0" cols="1"><colspec colname="1" colwidth="217PT" align="left" /><thead><row><entry /></row><row><entry namest="1" nameend="1" align="center" rowsep="1" /></row></thead><tbody valign="top"><row><entry>01. Case j = 1:V cost(a, b) = 0</entry></row><row><entry>02. Case j > 1 Do</entry></row><row><entry>03. Determine M: = the number of field polysilicon shapes in the bottom</entry></row><row><entry>field polysilicon shape group of cell C<sub>a,j</sub></entry></row><row><entry>04. Determine N: = number of field polysilicon shapes in the top field</entry></row><row><entry>polysilicon shape group of cell C<sub>a,j.</sub></entry></row><row><entry>05. Determine L: leftmost cell overlapping C<sub>a,j </sub>in row j</entry></row><row><entry>06. Determine R: rightmost cell overlapping C<sub>a,j </sub>in row j</entry></row><row><entry>07. For (k = 1; k = M; k = k + 1) {</entry></row><row><entry>08. For (h = L; h = R; h = h + 1){</entry></row><row><entry>09. For (g = 1; g = N; g = g + 1){</entry></row><row><entry>10. Vspace (a, b, g, h, k) = S<sub>a,j</sub><sup>FB</sup><sup><sup2>k </sup2></sup>+ S<sub>h,j−1</sub><sup>FT</sup><sup><sup2>g</sup2></sup></entry></row><row><entry>11. weight (k, g) = slope (j)*(Vspace (a, b, g, h, k) −</entry></row><row><entry> AF<sub>l</sub>)*(C<sub>ff</sub>O<sub>ff</sub>(k, g))</entry></row><row><entry> Where AF<sub>l</sub>≦ Vspace (a, b, g, h, k) ≦ AF<sub>l+1</sub></entry></row><row><entry>12. V cost (a, b) = V cost (a, b) + weight (k, g)</entry></row><row><entry>}}}</entry></row><row><entry namest="1" nameend="1" align="center" rowsep="1" /></row></tbody></tgroup></table></tables>
0058<figref idref="DRAWINGS">FIG. 6</figref> is a schematic diagram illustrating the interaction of the polysilicon shapes and etch dummies in a row in a standard-cell layout. Etch dummies are added in the layout to reduce the etch skew between the photo and etch processes in a standard-cell layout design. These etch dummies are placed outside the active-layer shapes. However, the insertion of etch dummies conflicts with the insertion of SRAFs in the standard-cell layout as their particular spacing requirement within the standard cell layout. Typically, two etch dummies are considered sufficient between two polysilicon shapes. In <figref idref="DRAWINGS">FIG. 6</figref>, a cell <b>602</b>, a cell <b>604</b>, an etch dummy <b>606</b>, an etch dummy <b>608</b>, and an etch dummy <b>610</b> are shown. Cell <b>602</b> and cell <b>604</b> are in one cell row. For the purpose of this description, only cells <b>602</b> and <b>604</b> are shown, but it will be apparent to those skilled in the art that the cell row can also include other cells. In <figref idref="DRAWINGS">FIG. 6</figref>, horizontal interaction between the polysilicon shapes of adjacent cells and etch dummies are shown in a row. A section marked by lines (in dashes) represents the interaction between the polysilicon shapes and etch dummies. Cell <b>602</b> includes a polysilicon shape, shown by a combination of a gate polysilicon shape <b>612</b> and a field polysilicon shape <b>614</b> and an active-layer shape <b>616</b>. Similarly, cell <b>604</b> includes a polysilicon shape, shown by a combination of a gate polysilicon shape <b>618</b> and a field polysilicon shape <b>620</b> and an active-layer shape <b>622</b>. Let <smallcaps>S</smallcaps><sub>a−1,j</sub><sup>RP</sup><sup><sup2>i </sup2></sup>denote the spacing between the right outline of the cell C<sub>a−1,j </sub>and the i<sup>th </sup>polysilicon shape of the right polysilicon shape group of cell C<sub>a,j</sub>. Similarly, let <smallcaps>S</smallcaps><sub>a,j</sub><sup>LP</sup><sup><sup2>i</sup2></sup>denote the spacing between the left outline of the cell C<sub>a,j </sub>and the i<sup>th </sup>polysilicon shape of the left polysilicon shape group of cell C<sub>a,j</sub>. Let <smallcaps>S</smallcaps><sub>a−1,j</sub><sup>RA</sup><sup><sup2>i </sup2></sup>denote the spacing between the right outline of the cell C<sub>a−1,j </sub>and the i<sup>th </sup>active-layer shape of the cell C<sub>a−1,j</sub>, where the active-layer shape belongs to the right polysilicon shape group. Similarly, let <smallcaps>S</smallcaps><sub>a,j</sub><sup>LA</sup><sup><sup2>i </sup2></sup>denote the spacing between the left outline of the cell C<sub>a,j </sub>and the i<sup>th </sup>active-layer shape of the cell C<sub>a,j</sub>, where the active-layer shape belongs to the left polysilicon shape group. Further, let <smallcaps>S</smallcaps><sub>a−1,j</sub><sup>RE</sup><sup><sup2>i </sup2></sup>denote the spacing between etch dummy <b>606</b> and the active-layer shape of the i<sup>th </sup>cell of cell C<sub>a−1,j</sub>, where the active-layer shape belongs to the right polysilicon shape group. Similarly, let <smallcaps>S</smallcaps><sub>a,j</sub><sup>LE</sup><sup><sup2>i </sup2></sup>denote the spacing between etch dummy <b>606</b> and the active-layer shape of i<sup>th </sup>cell of cell C<sub>a,j</sub>, where the active-layer shape belongs to the left polysilicon shape group. Let ES denote the spacing between the active-layer shapes of the adjacent cell in the i<sup>th </sup>cell row. Further, x<sub>a </sub>and x<sub>a−1 </sub>denote the left coordinates of the cell C<sub>a,j </sub>and C<sub>a−1,j </sub>respectively and w<sub>a−1 </sub>denote the width of the cell C<sub>a−1,j</sub>.
0059<figref idref="DRAWINGS">FIG. 7</figref> is a schematic diagram illustrating overlap between an etch dummy and adjacent polysilicon shapes. <figref idref="DRAWINGS">FIG. 7</figref> illustrates an overlap between a polysilicon shape formed by gate polysilicon shape <b>612</b> and field polysilicon shape <b>614</b>, and etch dummy <b>606</b>, as described in conjunction with <figref idref="DRAWINGS">FIG. 6</figref>. Let O<sub>ge </sub>denote the length of the overlap between gate polysilicon shape <b>612</b> and etch dummy <b>606</b>. Similarly, let O<sub>fe </sub>denote the length of the overlap between field polysilicon shape <b>614</b> and etch dummy <b>606</b>. As shown in <figref idref="DRAWINGS">FIG. 7</figref>, O<sub>fe </sub>has two components on either side of O<sub>ge </sub>that are summed to calculate the value of O<sub>fe</sub>. To enhance CD control and reduce forbidden pitches in the standard-cell layout, described in conjunction with <figref idref="DRAWINGS">FIGS. 6 and 7</figref>, a detailed placement of layout objects is required.
0060When the method illustrated in <figref idref="DRAWINGS">FIG. 5</figref> is followed for each cell in a set of cells in standard-cell layout while accounting for etch dummies, the spacing between the cells is adjusted such that forbidden pitches, e.g. the pitch between poly shapes, which can be shapes in a cell or the etch dummy itself, are reduced. The method accounts for both assist-correct spacing and etch dummy-correct spacing. This combined method is referred to as etch dummy correction. This method considers the following spacing: <ul id="ul0003" list-style="none"><li id="ul0003-0001" num="0061"> ES: spacing between the active-layer shapes of adjacent cells in a cell row; </li><li id="ul0003-0002" num="0062"> ED<b>1</b>: required spacing between the active-layer shapes of adjacent cells, to insert one etch dummy; </li><li id="ul0003-0003" num="0063"> ED<b>2</b>: required spacing between the active-layer shapes of adjacent cells to insert two etch dummies; </li><li id="ul0003-0004" num="0064"> DDS: an etch dummy to dummy space in the event of there being two etch dummies; </li><li id="ul0003-0005" num="0065"> EW: the width of the etch dummy; </li><li id="ul0003-0006" num="0066"> DAS: etch dummy to active-layer-shape spacing; </li><li id="ul0003-0007" num="0067"> EDS: a set of etch-correct spacings; </li><li id="ul0003-0008" num="0068"> A set of assist-correct spacings AF: AF=AF<sub>1 </sub>. . . AF<sub>m</sub>. <br /> In an embodiment of the present invention, an etch-correct spacing (EDS) is chosen such that the maximum resist-etch skew is less than the, for example, 10 percent of the minimum line width. The minimum line width can be taken as the width of a pattern of the minimum width in the standard cell layout. In this combined method, a layout perturbation distance is calculated to make the spacing between the polysilicon shapes and that between a polysilicon shape and etch dummy <b>606</b> an assist-correct spacing. Further, the spacing between the active-layer shape <b>616</b> and the etch dummy <b>606</b> is made into an etch-correct spacing. The layout object perturbation distance, or the perturbation of spacing required to adjust the spacing between adjacent cells for the cell C<sub>a,j </sub>can be denoted by δ<sub>a,j</sub>. Therefore, the etch dummy correction problem can be represented as: <br /> Minimize Σ|δ<sub>a,j</sub>| such that <maths id="MATH-US-00004" num="4"><math overflow="scroll"><mrow><mrow><mi>If</mi><mo></mo><mstyle><mtext> </mtext></mstyle><mo></mo><mrow><mo>(</mo><mrow><mi>ES</mi><mo><</mo><mrow><mi>ED</mi><mo></mo><mstyle><mtext> </mtext></mstyle><mo></mo><mn>1</mn></mrow></mrow><mo>)</mo></mrow></mrow><mo>,</mo><mrow><mrow><mrow><mo>(</mo><mrow><msub><mi>δ</mi><mrow><mi>a</mi><mo>,</mo><mi>j</mi></mrow></msub><mo>+</mo><msub><mi>x</mi><mi>a</mi></msub><mo>+</mo><msubsup><mi>S</mi><mrow><mi>a</mi><mo>,</mo><mi>j</mi></mrow><msup><mi>LP</mi><mi>i</mi></msup></msubsup></mrow><mo>)</mo></mrow><mo>-</mo><mrow><mo>(</mo><mrow><msub><mi>δ</mi><mrow><mrow><mi>a</mi><mo>-</mo><mn>1</mn></mrow><mo>,</mo><mi>j</mi></mrow></msub><mo>+</mo><msub><mi>x</mi><mrow><mi>a</mi><mo>-</mo><mn>1</mn></mrow></msub><mo>+</mo><msub><mi>w</mi><mrow><mi>a</mi><mo>-</mo><mn>1</mn></mrow></msub><mo>-</mo><msubsup><mi>S</mi><mrow><mrow><mi>a</mi><mo>-</mo><mn>1</mn></mrow><mo>,</mo><mi>j</mi></mrow><msup><mi>RP</mi><mi>i</mi></msup></msubsup></mrow><mo>)</mo></mrow></mrow><mo>∈</mo><mi>AF</mi></mrow></mrow></math></maths></li><li id="ul0003-0009" num="0069"> The expression given above ensures that the spacing between the polysilicon shapes is an assist-correct spacing. <maths id="MATH-US-00005" num="5"><math overflow="scroll"><mrow><mrow><mrow><mo>(</mo><mrow><msub><mi>δ</mi><mrow><mi>a</mi><mo>,</mo><mi>j</mi></mrow></msub><mo>+</mo><msub><mi>x</mi><mi>a</mi></msub><mo>+</mo><msubsup><mi>S</mi><mrow><mi>a</mi><mo>,</mo><mi>j</mi></mrow><msup><mi>LA</mi><mi>i</mi></msup></msubsup></mrow><mo>)</mo></mrow><mo>-</mo><mrow><mo>(</mo><mrow><msub><mi>δ</mi><mrow><mrow><mi>a</mi><mo>-</mo><mn>1</mn></mrow><mo>,</mo><mi>j</mi></mrow></msub><mo>+</mo><msub><mi>x</mi><mrow><mi>a</mi><mo>-</mo><mn>1</mn></mrow></msub><mo>+</mo><msub><mi>w</mi><mrow><mi>a</mi><mo>-</mo><mn>1</mn></mrow></msub><mo>-</mo><msubsup><mi>S</mi><mrow><mrow><mi>a</mi><mo>-</mo><mn>1</mn></mrow><mo>,</mo><mi>j</mi></mrow><msup><mi>RA</mi><mi>i</mi></msup></msubsup></mrow><mo>)</mo></mrow></mrow><mo>∈</mo><mi>EDS</mi></mrow></math></maths></li><li id="ul0003-0010" num="0070"> The expression given above ensures that the spacing between the active-layer shapes of adjacent cells is an etch-correct spacing <br />where −SRCH≦δ<sub>a−1,j </sub>and δ<sub>a,j</sub>≦SRCH,<br /> otherwise, <maths id="MATH-US-00006" num="6"><math overflow="scroll"><mrow><mrow><msubsup><mi>S</mi><mrow><mrow><mi>a</mi><mo>-</mo><mn>1</mn></mrow><mo>,</mo><mi>j</mi></mrow><msup><mi>RP</mi><mi>i</mi></msup></msubsup><mo>-</mo><msubsup><mi>S</mi><mrow><mrow><mi>a</mi><mo>-</mo><mn>1</mn></mrow><mo>,</mo><mi>j</mi></mrow><msup><mi>RA</mi><mi>i</mi></msup></msubsup><mo>+</mo><msubsup><mi>S</mi><mrow><mrow><mi>a</mi><mo>-</mo><mn>1</mn></mrow><mo>,</mo><mi>j</mi></mrow><msup><mi>RE</mi><mi>i</mi></msup></msubsup><mo>+</mo><mrow><msub><mi>δ</mi><mrow><mrow><mi>a</mi><mo>-</mo><mn>1</mn></mrow><mo>,</mo><mi>j</mi></mrow></msub><mo></mo><mstyle><mtext> </mtext></mstyle><mo></mo><mi>and</mi><mo></mo><mstyle><mtext> </mtext></mstyle><mo></mo><msubsup><mi>S</mi><mrow><mi>a</mi><mo>,</mo><mi>j</mi></mrow><msup><mi>LP</mi><mi>i</mi></msup></msubsup></mrow><mo>-</mo><msubsup><mi>S</mi><mrow><mi>a</mi><mo>,</mo><mi>j</mi></mrow><msup><mi>LA</mi><mi>i</mi></msup></msubsup><mo>-</mo><msubsup><mi>S</mi><mrow><mi>a</mi><mo>,</mo><mi>j</mi></mrow><msup><mi>LE</mi><mi>i</mi></msup></msubsup><mo>+</mo><msub><mi>δ</mi><mrow><mi>a</mi><mo>,</mo><mi>j</mi></mrow></msub></mrow><mo>∈</mo><mi>AF</mi></mrow></math></maths></li><li id="ul0003-0011" num="0071"> The expression given above ensures that the spacing between the polysilicon shapes and etch dummy is an assist-correct spacing. <maths id="MATH-US-00007" num="7"><math overflow="scroll"><mrow><mrow><msubsup><mi>S</mi><mrow><mrow><mi>a</mi><mo>-</mo><mn>1</mn></mrow><mo>,</mo><mi>j</mi></mrow><msup><mi>RE</mi><mi>i</mi></msup></msubsup><mo>+</mo><mrow><msub><mi>δ</mi><mrow><mrow><mi>a</mi><mo>-</mo><mn>1</mn></mrow><mo>,</mo><mi>j</mi></mrow></msub><mo></mo><mstyle><mtext> </mtext></mstyle><mo></mo><mi>and</mi><mo></mo><mstyle><mtext> </mtext></mstyle><mo></mo><msubsup><mi>S</mi><mrow><mi>a</mi><mo>,</mo><mi>j</mi></mrow><msup><mi>LE</mi><mi>i</mi></msup></msubsup></mrow><mo>+</mo><msub><mi>δ</mi><mrow><mi>a</mi><mo>,</mo><mi>j</mi></mrow></msub></mrow><mo>∈</mo><mi>EDS</mi></mrow></math></maths></li><li id="ul0003-0012" num="0072"> The expression given above ensures that the spacing between the active-layer shape and etch dummy <b>606</b> is an etch-correct spacing <br />where −SRCH≦δ<sub>a−1,j </sub>and δ<sub>a,j</sub>≦SRCH</li></ul>
0073In an embodiment of the present invention, the method solves the above-mentioned problem by calculating a cost function and minimizing it by considering a set of cells. Cost (a, b) is the cost of placing a cell ‘a’ at a placement site number ‘b’. In an embodiment of the present invention, two cost functions are determined: the AFCost (a, b), which is the cost of placing a cell C<sub>a,j </sub>at a placement site number ‘b’ and is associated with its neighbor cell C<sub>a−1,j</sub>, and EDCost (a, b), which is the cost of placing the cell C<sub>a,j </sub>at a placement site number ‘b’ and is associated with the etch dummies adjacent to the cell C<sub>a,j</sub>. Etch dummy correction takes the first cell in a cell row and calculates the cost function of the first cell. Subsequently, the next cell is taken and the cost function of this cell is calculated. In this way, the cost function of each cell in the cell row is calculated. An overall cost function is calculated by adding up all the cost functions in the cell row.
0074The cost function is calculated by the following dynamic programming recurrence: <maths id="MATH-US-00008" num="8"><math overflow="scroll"><mtable><mtr><mtd><mrow><mrow><mi>Cost</mi><mo></mo><mstyle><mtext> </mtext></mstyle><mo></mo><mrow><mo>(</mo><mrow><mn>1</mn><mo>,</mo><mi>b</mi></mrow><mo>)</mo></mrow></mrow><mo>=</mo><mi /><mo></mo><mrow><mo></mo><mrow><msub><mi>x</mi><mn>1</mn></msub><mo>-</mo><mi>b</mi></mrow><mo></mo></mrow></mrow></mtd></mtr><mtr><mtd><mrow><mrow><mi>Cost</mi><mo></mo><mstyle><mtext> </mtext></mstyle><mo></mo><mrow><mo>(</mo><mrow><mi>a</mi><mo>,</mo><mi>b</mi></mrow><mo>)</mo></mrow></mrow><mo>=</mo><mi /><mo></mo><mrow><mrow><mrow><mi>λ</mi><mo></mo><mrow><mo>(</mo><mi>a</mi><mo>)</mo></mrow></mrow><mo></mo><mrow><mo></mo><mrow><msub><mi>x</mi><mi>a</mi></msub><mo>-</mo><mi>b</mi></mrow><mo></mo></mrow></mrow><mo>+</mo><msubsup><mi>Min</mi><mrow><mi>i</mi><mo>=</mo><mrow><msub><mi>x</mi><mrow><mi>a</mi><mo>-</mo><mn>1</mn></mrow></msub><mo>-</mo><mi>srch</mi></mrow></mrow><mrow><msub><mi>x</mi><mrow><mi>a</mi><mo>-</mo><mn>1</mn></mrow></msub><mo>+</mo><mi>srch</mi></mrow></msubsup></mrow></mrow></mtd></mtr><mtr><mtd><mrow><mi /><mo></mo><mrow><mo>{</mo><mtable><mtr><mtd><mrow><mrow><mi>Cost</mi><mo></mo><mstyle><mtext> </mtext></mstyle><mo></mo><mrow><mo>(</mo><mrow><mrow><mi>a</mi><mo>-</mo><mn>1</mn></mrow><mo>,</mo><mi>i</mi></mrow><mo>)</mo></mrow></mrow><mo>+</mo><mrow><msub><mi>W</mi><mn>1</mn></msub><mo></mo><mi>AFCost</mi><mo></mo><mstyle><mtext> </mtext></mstyle><mo></mo><mrow><mo>(</mo><mrow><mi>a</mi><mo>,</mo><mi>b</mi><mo>,</mo><mrow><mi>a</mi><mo>-</mo><mn>1</mn></mrow><mo>,</mo><mi>i</mi></mrow><mo>)</mo></mrow></mrow><mo>+</mo></mrow></mtd></mtr><mtr><mtd><mrow><msub><mi>W</mi><mn>1</mn></msub><mo></mo><mi>EDCost</mi><mo></mo><mstyle><mtext> </mtext></mstyle><mo></mo><mrow><mo>(</mo><mrow><mi>a</mi><mo>,</mo><mi>b</mi><mo>,</mo><mrow><mi>a</mi><mo>-</mo><mn>1</mn></mrow><mo>,</mo><mi>i</mi></mrow><mo>)</mo></mrow></mrow></mtd></mtr></mtable><mo>}</mo></mrow></mrow></mtd></mtr></mtable></math></maths><br /> where W<sub>1 </sub>and W<sub>2 </sub>are user-defined weights for the AFCost (a, b, a−1, i) and the EDCost (a, b, a−1, I). The value of W<b>1</b> and W<b>2</b> is considered, based on the manufacturing process. The AF cost is associated with the correctness of the assist-feature and is more important if the etch process is better controlled and has less through-pitch variation than the lithography process. Conversely, the EDCost is associated with etch dummy correction and it is more important if the lithographic process window is large. In an embodiment of the present invention, the maximum perturbation of a cell is also restricted. For example, let SRCH denote the number of neighboring placement sites by which a cell can be adjusted. The range of the cell C<sub>a,j </sub>in which it can be adjusted is the range of placement site (X<sub>a−1</sub>−SRCH, X<sub>a−1</sub>+SRCH).
0075The following pseudo code can be used to calculate the AFCost (a, b, a−1, i) and EDCost (a, b, a−1, i):
0000Input:
0000<ul id="ul0004" list-style="none"><li id="ul0004-0001" num="0076"> C<sub>ff </sub>is a user-defined weight for overlapping field polysilicon shapes; </li><li id="ul0004-0002" num="0077"> C<sub>gg </sub>is a user-defined weight for overlapping gate polysilicon shapes; </li><li id="ul0004-0003" num="0078"> C<sub>gf </sub>is a user-defined weight for overlapping between the gate polysilicon shape and the field polysilicon shape; </li><li id="ul0004-0004" num="0079"> C<sub>ge </sub>is a user-defined weight for overlapping between the gate polysilicon shape to the etch dummy; </li><li id="ul0004-0005" num="0080"> C<sub>fg </sub>is a user-defined weight for overlapping between the field polysilicon shape to the etch dummy; </li><li id="ul0004-0006" num="0081"> b is a left coordinate of cell C<sub>a,j</sub>; </li><li id="ul0004-0007" num="0082"> i is a left coordinate of cell C<sub>a−1,j</sub>; </li><li id="ul0004-0008" num="0083"> w<sub>a </sub>is the width of cell C<sub>a,j</sub>; </li><li id="ul0004-0009" num="0084"> w<sub>a </sub>is the width of cell C<sub>a−1,j</sub>; </li><li id="ul0004-0010" num="0085"> AFspace (h, k) is the horizontal spacing between <smallcaps>RP</smallcaps><sub>a−1,j</sub><sup>h </sup>and <smallcaps>LP</smallcaps><sub>a,j</sub><sup>k</sup>; </li><li id="ul0004-0011" num="0086"> ESspace (h, k) is the horizontal spacing between <smallcaps>RA</smallcaps><sub>a−1</sub><sup>h</sup>,j and <smallcaps>LA</smallcaps><sub>a,j</sub><sup>k</sup>; </li><li id="ul0004-0012" num="0087"> AFslope (j) is the delta-resist CD difference over the delta pitch between AF<sub>j </sub>and AF<sub>j+1</sub>; </li><li id="ul0004-0013" num="0088"> EDslope (j) is the delta-resist CD difference over the polysilicon shape and the etch dummy space; </li><li id="ul0004-0014" num="0089"> DS<sub>I </sub>and DS<sub>r </sub>are the left and right spacing between the etch dummies to active-layer shapes in the left and right cells C<sub>a−1,j </sub>and C<sub>a,j </sub>respectively; </li><li id="ul0004-0015" num="0090"> O<sub>gg</sub>, O<sub>gf</sub>, Off corresponds to the length of the overlap between polysilicon gate-to-gate, the gate polysilicon shape-to-field polysilicon shape, and the field polysilicon shape-to field polysilicon shape, respectively; and </li><li id="ul0004-0016" num="0091"> O<sub>ge</sub>, O<sub>fe </sub>corresponds to the length of the overlap between the gate polysilicon shape-to-etch dummy and the field polysilicon shape-to-etch dummy respectively. <br /> Output: <br /> Value of AFCost (a, b, a−1, i) and EDCost (a, b, a−1, i) </li></ul>
0092Algorithm: <tables id="TABLE-US-00003" num="3"><table frame="none" colsep="0" rowsep="0" pgwide="1"><tgroup align="left" colsep="0" rowsep="0" cols="1"><colspec colname="1" colwidth="259PT" align="left" /><thead><row><entry /></row><row><entry namest="1" nameend="1" align="center" rowsep="1" /></row></thead><tbody valign="top"><row><entry>01. Case a =1: AFCost (1, b) and EDCost (1, b) = 0</entry></row><row><entry>02. Case a>1 Do</entry></row><row><entry>03. Determine J: = cardinality of set RP<sub>a−1 </sub>right polysilicon shape group of cell C<sub>a−1,j</sub></entry></row><row><entry>04. L: = cardinality of set LP<sub>a, </sub>left polysilicon shape group of cell C<sub>a,j</sub></entry></row><row><entry>/* calculate overlap weight between RP<sub>h</sub><sup>a−1 </sup>and LP<sub>k</sub><sup>a </sup>*/</entry></row><row><entry>05. For (h = 1; h = J; h = h + 1){</entry></row><row><entry>06. For (k = 1; k = L; k = k + 1){</entry></row><row><entry>07. If (AFspace (k, g) < ED<sub>1</sub>){</entry></row><row><entry>08. AFweight (h, k) =AFslope (j)*(AFspace (h, k) − AF<sub>j</sub>)*(C<sub>ff</sub>O<sub>ff</sub>(h, k) + C<sub>gf</sub>O<sub>gf</sub>(h, k) +</entry></row><row><entry>C<sub>gg</sub>O<sub>gg </sub>(h, k)); where AF<sub>j+1 </sub>> AFspace (h, k) ≧ AF<sub>j</sub></entry></row><row><entry>09. EDweight (h, k) = EDslope (AFspace (h, k))*(C<sub>ge</sub>O<sub>ge</sub>(h, k) + C<sub>fe</sub>O<sub>fe</sub>(h, k));</entry></row><row><entry> }</entry></row><row><entry>10. Else {</entry></row><row><entry>11. Fweight (h, k) = AFslope (j)*(AW<sub>l</sub>(h, k) + DS<sub>l</sub>(h, k) − AF<sub>j</sub>)*(C<sub>ge</sub>O<sub>ge</sub>(h, k) +</entry></row><row><entry> C<sub>fe</sub>O<sub>fe</sub>(h, k))</entry></row><row><entry>12. AFweight (h, k) = AFslope (j)*(AW<sub>r</sub>(h, k) + DS<sub>r</sub>(h, k) − AF<sub>j</sub>)*(C<sub>ge</sub>O<sub>ge</sub>(h, k) +</entry></row><row><entry> C<sub>fe</sub>O<sub>fe</sub>(h, k))</entry></row><row><entry>13. EDweight (h, k) = (EDslope (AW<sub>l</sub>(h, k) + DS<sub>l</sub>(h, k)) + EDslope (AW<sub>r</sub>(h, k) +</entry></row><row><entry> DS<sub>r</sub>(h, k)))*(C<sub>ge</sub>O<sub>ge</sub>(h, k) + C<sub>fe</sub>O<sub>fe</sub>(h, k))}</entry></row><row><entry>14. AF cost (a, b, a−1, i) = AF cost (a, b, a−1, i) + AFweight (h, k)</entry></row><row><entry>15. ED cost (a, b, a−1, i) = ED cost (a, b, a−1, i) + AFweight (h, k)</entry></row><row><entry> }</entry></row><row><entry> }</entry></row><row><entry namest="1" nameend="1" align="center" rowsep="1" /></row></tbody></tgroup></table></tables><br /> The terms AFslope (j)*(AFspace (h, k)−AF<sub>j</sub>) and EDslope (AFspace (h, k)) are a measure of the variation of CD between the polysilicon shapes and the etch dummies. The term (C<sub>ff</sub>O<sub>ff</sub>(h, k)+C<sub>gf</sub>O<sub>gf</sub>(h, k)+C<sub>gg</sub>O<sub>gg</sub>(h, k)) is a first overlapping factor that accounts for a field polysilicon shape-to-field polysilicon shape overlap, a gate polysilicon shape-to-field polysilicon shape overlap, and a gate polysilicon shape-to-gate polysilicon shape overlap. C<sub>ff</sub>, C<sub>gf</sub>, and C<sub>gg </sub>are used to weigh the overlap based on the printability of the gate polysilicon shapes and field polysilicon shapes. The term (C<sub>ge</sub>O<sub>ge</sub>(h, k)+C<sub>fe</sub>O<sub>fe</sub>(h, k)) is a second overlapping factor that accounts for a gate polysilicon shape-to-etch dummy overlap, and a field polysilicon shape-to-etch dummy overlap. C<sub>ge </sub>and C<sub>fe </sub>are used to weigh the overlap based on the printability of the polysilicon shapes and the etch dummy.
0093The above-given method can be used to adjust the spacing between the cells of a standard-cell layout, such that etch dummies can be inserted and the number of forbidden pitches is reduced. The method can be utilized to create a modified standard-cell layout from a standard-cell layout obtained from an Electronic Design Automation (EDA) tool. In another embodiment, the above-given method can be embodied in an EDA tool such that the standard-cell layout generated by the EDA tool has improved photolithographic characteristics.
0094<figref idref="DRAWINGS">FIG. 8</figref> is a schematic diagram illustrating an exemplary sub-resolution assist feature (SRAF)-aware etch dummy insertion technique, in accordance with an embodiment of the present invention. In <figref idref="DRAWINGS">FIG. 8</figref>, a cell <b>802</b>, a cell <b>804</b>, an etch dummy <b>806</b>, an SRAF <b>808</b>, and an SRAF <b>810</b> are shown. Cell <b>802</b> includes a polysilicon shape <b>812</b> and an active-layer shape <b>814</b>. Similarly, cell <b>804</b> includes a polysilicon shape <b>816</b> and an active-layer shape <b>818</b>. Etch dummy <b>806</b> is to be inserted between polysilicon shapes <b>812</b> and should be placed outside the active-layer shapes of the polysilicon shapes. Typically, a maximum of two etch dummies are required to reduce the CD skew in the photo and etch processes. However, for the purpose of this description, only one etch dummy is shown in <figref idref="DRAWINGS">FIG. 8</figref>. Let DAS denote the spacing required between etch dummy <b>806</b> and active-layer shapes <b>814</b> and <b>818</b>. Similarly, let DDS denote the spacing required between the two etch dummies if two dummies are to be inserted. Further, let EW denote the width of etch dummy <b>806</b>. Let ED<b>1</b> and ED<b>2</b> denote the spacing required for the insertion of one etch dummy and two etch dummies, respectively. Typically, etch dummies are inserted such that they are distributed evenly in the space between the active-layer shapes. Therefore, ED<b>1</b> is equal to 2*DAS+EW. Similarly, ED<b>2</b> is equal to 2*DAS+2*EW+DDS. In other words, the first etch dummy is inserted in the center of the spacing between the two active-layer shapes belonging to different cells in a cell row. Similarly, the second etch dummy can be placed according to the available DAS. However, the spacing between the etch dummies inserted according to this method can be inappropriate for the insertion of SRAFs. In accordance with various embodiments of the present invention, the spacing between the polysilicon shape and the etch dummy is adjusted to convert it to an assist-correct spacing selected from AF.
0095When the method described in <figref idref="DRAWINGS">FIG. 5</figref> is followed for etch dummy <b>806</b> in the standard-cell layout, etch dummy <b>806</b> can be adjusted to make the spacing between polysilicon shapes <b>812</b> and <b>816</b> and etch dummy <b>806</b> into an assist-correct spacing, to accommodate SRAFs such as SRAFs <b>808</b>, and <b>810</b>. This method is referred to as SRAF-aware etch dummy insertion. In <figref idref="DRAWINGS">FIG. 8</figref>, let AW<sub>I </sub>denote the width of active-layer shape <b>814</b>, which is outside polysilicon shape <b>812</b> and towards the right outline of cell <b>802</b>. Similarly, let AW<sub>r </sub>denote the width of active-layer shape <b>818</b>, which is outside polysilicon shape <b>816</b> and towards the left outline of cell <b>802</b>. Let AS<sub>I </sub>denote a perturbation of spacing required to make the spacing between polysilicon shape <b>812</b> and etch dummy <b>806</b> an assist-correct spacing. Similarly, let AS<sub>r </sub>denote a perturbation of spacing required to make the spacing between polysilicon shape <b>816</b> and etch dummy <b>806</b> an assist-correct spacing. The values of AS<sub>I </sub>and AS<sub>r </sub>are calculated as follows: <br />Minimize index value of <i>j </i>and <i>k </i>in <i>AF </i>such that <i>AS</i><sub>I</sub><i>=AF</i><sub>j</sub>−(<i>AW</i><sub>I</sub><i>+DAS</i>), and <i>AS</i><sub>r</sub><i>=AF</i><sub>k</sub>−(<i>AW</i><sub>r</sub><i>+DAS</i>); and (<i>AS</i><sub>I</sub><i>+AS</i><sub>r</sub>)≦(<i>ES−ED</i><sub>1</sub>)
0096The above-given method calculates the minimum extra spaces required (AS<sub>I </sub>and AS<sub>r</sub>) to make the spacing into an assist-correct spacing. The minimum index assist-correct value is taken to adjust the extra spaces of AS<sub>I </sub>and AS<sub>r </sub>in the available spacing (ES−ED<b>1</b>). Etch dummy <b>806</b> is adjusted according to AS<sub>I </sub>and AS<sub>r </sub>from its initial position, to make the spacing between the polysilicon shape and the etch dummy an assist-correct and etch-correct spacing.
0097<figref idref="DRAWINGS">FIG. 9</figref> is a block diagram of a system for the detailed perturbed placement of layout objects in a standard-cell layout design, in accordance with an embodiment of the present invention. In <figref idref="DRAWINGS">FIG. 9</figref>, a primary layout pattern <b>902</b>, a placement perturbation module <b>904</b>, a standard-cell layout generator <b>906</b>, and a modified layout pattern <b>908</b> are shown. Primary layout pattern <b>902</b> includes a plurality of layout objects and the SRAFs of the standard-cell layout. It will be apparent to those skilled in the art that the primary layout pattern <b>902</b> could also include other necessary features. Placement perturbation module <b>904</b> takes primary layout pattern <b>902</b> of the standard-cell layout as an input. Primary layout pattern <b>902</b> can include forbidden pitches. Further, it can have critical dimension (CD) errors between its layout objects. The occurrence of forbidden pitches and CD errors can be due to the incorrect placement of layout objects in primary layout pattern <b>902</b>. Placement perturbation module <b>904</b> calculates the placement perturbation distance between the plurality of layout objects in the primary layout pattern <b>902</b>, and the layout pattern is thereafter modified. In an embodiment of the invention, the system further includes a cost minimizer. The cost minimizer determines a placement site in the standard-cell layout at which the cost of placing the cell is minimum. The cost minimizer minimizes the cost based on the variation of CD between polysilicon shapes and etch dummies, the first overlapping factor, and the second overlapping factor. The algorithms used by cost minimizer are described in conjunction with <figref idref="DRAWINGS">FIG. 5</figref>. In accordance with another embodiment of the invention, the system can also include a memory that can store the set of assist-correct spacings that are required as an input for the algorithms. The memory can also store other inputs required for the algorithm. The placement perturbation distance between the plurality of layout objects is given to the standard-cell layout generator module <b>906</b>. Standard-cell layout generator module <b>906</b> adjusts each of the plurality of layout objects according to their placement perturbation distance. Modified layout pattern <b>908</b> of the standard-cell layout is obtained after the adjustment of the plurality of layout objects. Modified layout pattern <b>908</b> has a reduced number of CD errors and fewer forbidden pitches, as compared to primary layout pattern <b>902</b>.
0098<figref idref="DRAWINGS">FIG. 10</figref> is a graph illustrating exemplary values for set of assist-correct spacings (AF) between poly shapes in different cells or between etch dummies and poly shapes in a cell. The graph representatively illustrates the variation of critical dimension (CD) with pitch. As seen in the graph, with certain pitches the corresponding value of CD is allowed. These pitches are marked by arrows and can be selected to form part of AF. For other pitches, the values of CDs fall below the required thresholds. These pitches are termed as forbidden pitches. As the pitch is increased, the value of CDs enters the forbidden region. However, as soon as the pitch increases an SRAF can be inserted (denoted by No. of SRAF=1) which causes the CD to return to the allowed region. Such values of pitch for which the CD returns to the allowed region can also be selected to form a part of AF. A similar pattern is repeated till more SRAFs cannot be added, leading to the saw-tooth pattern as seen in <figref idref="DRAWINGS">FIG. 10</figref>. The slopes of the sections of the graph that represent reduction in CD are used to calculate the variation of CD with pitch, as required in the algorithms described in conjunction with <figref idref="DRAWINGS">FIG. 5</figref>.
0099Various embodiments of the present invention offer the following advantages. Standard-cell layouts prepared in accordance with various embodiments of the present invention have improved photolithography characteristics. Errors in CD and the number of forbidden pitches are reduced. This is because an increased number of etch dummies and SRAFs can be inserted in the standard-cell layout. Further, the value of SRCH can be selected such that the run-times of the algorithms in accordance with various embodiments of the present invention do not increase the time for preparing the standard-cell layout substantially. The values of various input constants, such as α and β, can be selected to achieve a balance between the number of remaining horizontal and vertical forbidden pitches.
0100The system for detailed placement of layout objects in a standard-cell layout design, as described in the present invention, or any of its components, may be embodied in the form of a computer system. Typical examples of a computer system includes a general-purpose computer, a programmed microprocessor, a micro-controller, a peripheral integrated circuit element, and other devices or arrangements of devices that are capable of implementing the steps that constitute the method of the present invention.
0101The computer system comprises a computer, an input device, a display unit and the Internet. Computer comprises a microprocessor. Microprocessor is connected to a communication bus. Computer also includes a memory. Memory may include Random Access Memory (RAM) and Read Only Memory (ROM). Computer system further comprises storage device. It can be a hard disk drive or a removable storage drive such as a floppy disk drive, optical disk drive and the like. Storage device can also be other similar means for loading computer programs or other instructions into the computer system.
0102The computer system executes a set of instructions that are stored in one or more storage elements, in order to process input data. The storage elements may also hold data or other information as desired. The storage element may be in the form of an information source or a physical memory element present in the processing machine. Exemplary storage elements include hard disk, DRAM, SRAM and EPROM. The storage element may also be external to the computer system, and connected to or inserted into the computer for download at or prior to the time of use. Exemplary of such external computer program products are computer readable storage mediums such as CD-ROMS, Flash chips, floppy disks, and the like.
0103The set of instructions may include various commands that instruct the processing machine to perform specific tasks such as the steps that constitute the method of the present invention. The set of instructions may be in the form of a software program. The software may be in various forms such as system software or application software. Further, the software might be in the form of a collection of separate programs, a program module with a larger program or a portion of a program module. The software might also include modular programming in the form of object-oriented programming. The software program containing the set of instructions can be embedded in a computer program product for use with a computer, the computer program product comprising a computer usable medium having a computer readable program code embodied therein. The processing of input data by the processing machine may be in response to user commands, or in response to results of previous processing or in response to a request made by another processing machine.
0104While the foregoing is directed to embodiments of the present invention, other and further embodiments of the invention may be devised without departing from the basic scope thereof, and the scope thereof is determined by the claims that follow. Additional discussion regarding placement perturbation between cells and features are discussed in the following articles written by the inventors, the content of those articles incorporated herein by reference: Gupta P., Kahng A. B. and Park C.-H “Detailed Placement for Improved Depth of Focus and CD Control”, Proc. Asia and South Pacific Design Automation Conf., published on or about Jan. 18, 2005, pp. 343-348, and Gupta P., Kahng, A. B. and Park C.-H, “Enhanced Resist and Etch CD Control by Design Perturbation”, Proc 25<sup>th </sup>BACUS Symposium on Photomask Technology and Management, October 2005 (not yet published).
Contents4
19 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9 Sheet 10 Sheet 11 Sheet 12 Sheet 13 Sheet 14 Sheet 15 Sheet 16 Sheet 17 Sheet 18 Sheet 19
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| US2015199464A1 | Cited by | United States of America | Pre-grant |
| US8977993B2 | Cited by | United States of America | Applicant |
| US7735042B2 | Cited by | United States of America | Search report |
| US7937301B2 | Cited by | United States of America | Search report |
| US2010164614A1 | Cited by | United States of America | Pre-grant |
| US10216890B2 | Cited by | United States of America | Applicant |
| US9852253B2 | Cited by | United States of America | Search report |
| US2011140278A1 | Cited by | United States of America | Pre-grant |
| US8473876B2 | Cited by | United States of America | Search report |
| US8867023B2 | Cited by | United States of America | Search report |
| US2016085898A1 | Cited by | United States of America | Pre-grant |
| US8359558B2 | Cited by | United States of America | Applicant |
| US2007038973A1 | Cited by | United States of America | Pre-grant |
| US7421678B2 | Cited by | United States of America | Search report |
| CN110234202A | Cited by | China | Search report |
| EP4184377A4 | Cited by | European Patent Office (EPO) | Search report |
| US2010088160A1 | Cited by | United States of America | Pre-grant |
| US2009049420A1 | Cited by | United States of America | Pre-grant |
| US7932566B2 | Cited by | United States of America | Applicant |
| US2008052653A1 | Cited by | United States of America | Pre-grant |
| US7657865B2 | Cited by | United States of America | Search report |
| US7873929B2 | Cited by | United States of America | Search report |
| US2012081689A1 | Cited by | United States of America | Pre-grant |
| US2006206854A1 | Cited by | United States of America | Pre-grant |
| US2014215417A1 | Cited by | United States of America | Pre-grant |
| US2011231811A1 | Cited by | United States of America | Pre-grant |
| US9170482B2 | Cited by | United States of America | Search report |
| US7761840B2 | Cited by | United States of America | Applicant |
| US2008151210A1 | Cited by | United States of America | Pre-grant |
| US2009037851A1 | Cited by | United States of America | Pre-grant |
| US7721246B2 | Cited by | United States of America | Search report |
| US2008066041A1 | Cited by | United States of America | Pre-grant |
| US8543958B2 | Cited by | United States of America | Applicant |
| US2012201447A1 | Cited by | United States of America | Pre-grant |
| US12164852B2 | Cited by | United States of America | Search report |
| US2008068393A1 | Cited by | United States of America | Pre-grant |
| US2008070131A1 | Cited by | United States of America | Pre-grant |
| US10846454B2 | Cited by | United States of America | Applicant |
| US2022147686A1 | Cited by | United States of America | Search report |
| US10860773B2 | Cited by | United States of America | Applicant |
| US8085386B2 | Cited by | United States of America | Search report |
| US8122386B2 | Cited by | United States of America | Search report |
| US9576098B2 | Cited by | United States of America | Applicant |
| US2005132306A1 | Cites | United States of America | Pre-grant |
| US2005251771A1 | Cites | United States of America | Pre-grant |
| US2005268256A1 | Cites | United States of America | Pre-grant |
| US2006147815A1 | Cites | United States of America | Pre-grant |
| US2006206854A1 | Cites | United States of America | Pre-grant |
| US2007038973A1 | Cites | United States of America | Pre-grant |
| US2007074145A1 | Cites | United States of America | Pre-grant |
| US2007209029A1 | Cites | United States of America | Pre-grant |
| US2008163141A1 | Cites | United States of America | Pre-grant |
| US6421820B1 | Cites | United States of America | Pre-grant |
| US7132203B2 | Cites | United States of America | Pre-grant |
| US7155689B2 | Cites | United States of America | Pre-grant |
| US7227183B2 | Cites | United States of America | Pre-grant |
| US7231628B2 | Cites | United States of America | Pre-grant |
| US7252909B2 | Cites | United States of America | Pre-grant |
| US7302651B2 | Cites | United States of America | Pre-grant |
| US7353492B2 | Cites | United States of America | Pre-grant |
| US7484197B2 | Cites | United States of America | Pre-grant |
2 members in 1 office
Priority claims2
| Document | Office | Kind | Date |
|---|---|---|---|
| 33160506 | United States of America | A | |
| US20060331605 | – | – | – |
Members2
| Document | Office | Kind | |
|---|---|---|---|
| US2007168898A1 | United States of America | A1 | |
| US7640522B2 | United States of America | B2 |
47 transactions on the USPTO file
Allowed after 1 non-final rejection, 1 final rejection and 1 RCE.
- Non-final rejections
- 1
- Final rejections
- 1
- RCEs
- 1
- Appeals
- 0
Over time
Point at a mark for the transactionTransactions
| Event | Code | |
|---|---|---|
| Expire PatentEXP. | EXP. | |
| Maintenance Fee Reminder MailedREM. | REM. | |
| Entity status set to undiscounted (initial default setting or status change)BIG. | BIG. | |
| Recordation of Patent Grant MailedPGM/ | PGM/ | |
| Patent Issue Date Used in PTA CalculationAllowedPTAC | PTAC | |
| Issue Notification MailedAllowedWPIR | WPIR | |
| Dispatch to FDCD1935 | D1935 | |
| Application Is Considered Ready for IssuePILS | PILS | |
| Mail Response to 312 Amendment (PTO-271)MN271 | MN271 | |
| Response to Amendment under Rule 312N271 | N271 | |
| Amendment after Notice of Allowance (Rule 312)AllowedA.NA | A.NA | |
| Issue Fee Payment VerifiedN084 | N084 | |
| Issue Fee Payment ReceivedIFEE | IFEE | |
| Mail Examiner's AmendmentMEX.A | MEX.A | |
| Mail Notice of AllowanceAllowedMN/=. | MN/=. | |
| Notice of Allowance Data Verification CompletedAllowedN/=. | N/=. | |
| Examiner's Amendment CommunicationEX.A | EX.A | |
| Examiner Interview Summary Record (PTOL - 413)EXIN | EXIN | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Disposal for a RCE / CPA / R129AbandonedABN9 | ABN9 | |
| Request for Continued Examination (RCE)RCEX | RCEX | |
| Request for Extension of Time - GrantedXT/G | XT/G | |
| Workflow - Request for RCE - BeginBRCE | BRCE | |
| Change in Power of Attorney (May Include Associate POA)PA.. | PA.. | |
| Correspondence Address ChangeC.AD | C.AD | |
| Mail Final Rejection (PTOL - 326)Final rejectionMCTFR | MCTFR | |
| Final RejectionFinal rejectionCTFR | CTFR | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Response after Non-Final ActionA... | A... | |
| Request for Extension of Time - GrantedXT/G | XT/G | |
| Mail Non-Final RejectionNon-final rejectionMCTNF | MCTNF | |
| Non-Final RejectionNon-final rejectionCTNF | CTNF | |
| PG-Pub Issue NotificationPG-ISSUE | PG-ISSUE | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Transfer Inquiry to GAUTI1050 | TI1050 | |
| IFW TSS Processing by Tech Center CompleteTSSCOMP | TSSCOMP | |
| Transfer Inquiry to GAUTI1050 | TI1050 | |
| Application Dispatched from OIPEOIPE | OIPE | |
| Application Is Now CompleteCOMP | COMP | |
| Cleared by OIPE CSRL194 | L194 | |
| IFW Scan & PACR Auto Security ReviewSCAN | SCAN | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Information Disclosure Statement (IDS) FiledM844 | M844 | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| Initial Exam Team nnIEXX | IEXX |
6 recorded assignments at the USPTO, latest first
- Now
Now: Held by
BARINGS FINANCE LLC - 2023-04-21
Patent security agreement
Security interest- From
- RPX CORPORATION
- To
- BARINGS FINANCE LLC, AS COLLATERAL AGENT
Recorded 2023-04-21, Signed 2021-07-06
- 2021-06-07
Assignment of assignors interest.
- From
- TELA INNOVATIONS, INC.
- To
- RPX CORPORATION
Recorded 2021-06-07, Signed 2021-06-04
- 2021-04-12
Release by secured party.
Release- From
- SILICON VALLEY BANK
- To
- BLAZE DFM INC.
Recorded 2021-04-12, Signed 2009-02-20
- 2009-03-12
Assignment of assignors interest.
Ownership change- From
- BLAZE DFM INC
- To
- TELA INNOVATIONS INC
Recorded 2009-03-12, Signed 2009-03-12
- 2008-07-29
Security agreement
Security interest- From
- BLAZE DFM INC
- To
- SILICON VALLEY BANK
Recorded 2008-07-29, Signed 2008-07-28
- 2006-01-14
Assignment of assignors interest.
Ownership change- From
- PARK CHUL-HONGKAHNG ANDREW BGUPTA PUNEET
- To
- BLAZE DFM INC
Recorded 2006-01-14, Signed 2006-01-13
17 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| AssignmentAS | AS | |
| Lapsed due to failure to pay maintenance feeLapsedFP | FP | |
| Lapse for failure to pay maintenance feesLapsedPATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITYLAPS | LAPS | |
| Information on status: patent discontinuationPATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362STCH | STCH | |
| Fee payment procedureMAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITYFEPP | FEPP | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| Fee paymentFPAY | FPAY | |
| Fee payment procedurePAT HOLDER NO LONGER CLAIMS SMALL ENTITY STATUS, ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: STOL); ENTITY STATUS OF PATENT OWNER: LARGE ENTITYFEPP | FEPP | |
| Fee paymentFPAY | FPAY | |
| Information on status: patent grantGrantedPATENTED CASESTCF | STCF | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS |
Numbers
- Publication
- 20070168898
- Publication, DOCDB
- 2007168898
- Publication, EPODOC
- US2007168898
- Application
- 11331605
- Application, DOCDB
- 33160506
- Application, EPODOC
- US20060331605
Titles
- English
- Method and system for detailed placement of layout objects in a standard-cell layout design
Patent term adjustment
- A delay
- +370 daysthe office missed an examination deadline
- Applicant delay
- −183 days
- Net adjustment
- 187 days
Classification
- CPC, 1
- G06F30/39
- IPC, 1
- G06F17 50
- USPC, 3
- 716122000
- 716123000
- 716132000