Claims
- 1. A method of placing a plurality of single transistors for synthesizing a plurality of rows of transistors, each row having a row width, in a layout of a circuit using a simulated annealing algorithm, comprising:A) determining an initial placement of transistors; B) selecting a move of transistors to modify said initial placement of transistors of the layout; C) evaluating said move of transistors based, at least in part on a measure of channel routing density wherein the measure of channel routing density includes determining a maximum column density of a set of columns of transistors of the layout where the set of columns includes less than all columns of the layout, and wherein the measure of channel routing density is an incremental channel routing density that is a function of the previously determined channel routing density of the layout and of the maximum column density; D) selectively performing the move of transistors in response to said step of evaluating; E) selectively adjusting a simulated temperature of a simulated model of the circuit; F) selectively freezing the simulated model depending on the value of said simulated temperature; and G) selecting at least one new move of transistors and repeating steps (C), (D), (E), (F) and (G) until the simulated model is frozen, wherein the at least one new move changes a row width of one of the plurality of rows of transistors.
- 2. The method in claim 1 wherein the set of columns of the layout correspond to columns of the layout affected by the selected move of transistors.
- 3. The method in claim 1 which further comprises:H) reading a folded transistor level netlist before selecting the at least one new move of transistors in step (G).
- 4. A method of manufacturing integrated circuits utilizing the method in claim 2 which further comprises:H) generating a transistor placement file after the simulated model of the circuit is frozen; I) generating a mask from the transistor placement file; and J) etching a semiconductor wafer utilizing the mask.
- 5. The method in claim 1 wherein the selected move is from a legal placement of transistors to an illegal placement of transistors.
- 6. The method in claim 1 whereinthe evaluating utilizes an incremental computation and evaluation time is linearly dependent upon size of a move window.
- 7. The method in claim 1 further comprising:maintaining a first column routing density vector that contains a number of times that each column routing density occurs in the simulated model, and determining channel routing density based at least in part on said first column routing density.
- 8. The method in claim 7 wherein:maintaining a second column routing density vector that is utilized in determining the changes to the channel routing density result.
- 9. A method of placing a plurality of single transistors for synthesizing a plurality of rows of transistors in a layout of a circuit, the method comprising the steps of:determining a column density count for a designated portion of the layout, the column density count containing a plurality of elements, each of the plurality of elements representing a total number of column density items for the designated portion of the layout that have a common column density value; determining a channel routing density for the layout based on the column density count; and determining transistor placements using a simulated annealing algorithm that uses the channel routing density as part of a layout cost function.
- 10. A method of placing a plurality of transistors for synthesizing a layout of a circuit comprising:providing a prior transistor placement of the layout having a plurality of rows and columns; determining a prior channel routing density corresponding to said prior transistor placement of the layout; determining a modified transistor placement of the layout; determining a set of column density measurements for a set of columns of the modified transistor placement of the layout where the set of columns includes less than all columns of the layout; evaluating the modified transistor placement in relation to the prior transistor placement based on an incremental channel routing density as a layout cost metric; wherein the incremental channel routing density is a function of the previously determined prior channel routing density of the layout and is a function of the set of column density measurements.
- 11. A method of placing a plurality of single transistors for synthesizing a layout of a circuit, the layout including an initial placement of a plurality of rows and columns of transistors, the initial placement having a first column density vector, the method comprising:selecting a move of transistors that modifies the initial placement; evaluating the selected move of transistors based on a measure of channel routing density; performing the selected move of the transistors, the layout having a second column density vector after the selected move is performed; adjusting a simulated temperature of a simulated model of the layout; and determining whether the simulated model is frozen; wherein the first column density vector and the second column density vector are used to determine the channel routing density.
- 12. The method of claim 11 wherein a count density vector is used to determine the channel density, the count density vector containing a plurality of elements, each element representing a total number of items within the first column density vector that has a particular column density value.
- 13. A method of placing a plurality of transistors for synthesizing a layout of a circuit comprising:determining an initial transistor placement; defining a channel routing density value, based upon a first column density vector, as a layout cost metric; moving the transistors individually to modify the initial transistor placement; and determining changes between the first column density vector and a second column density vector after moving the transistors to incrementally compute a new channel routing density, the new channel routing density utilized in determining whether the move of transistors is acceptable.
- 14. A semiconductor device comprising:a plurality of automatically placed single transistors in a layout having a plurality of rows and columns; wherein the plurality of single transistors are located in the layout according to an incremental channel density metric that is a function of a set of column density measurements for a set of columns of the layout where the set of columns includes less than all columns of the layout, the set of column density measurements generated during a plurality of transistor moves during synthesis of the semiconductor device.
- 15. The semiconductor device of claim 14 wherein the set of columns corresponds to a set of transistors that were moved from an initial placement of the transistors, the set of transistors including less than all of the plurality of single transistors.
- 16. The semiconductor device of claim 14 wherein a column density count is used to determine the incremental channel density.
- 17. The semiconductor device of claim 16, wherein a second column density count is used to deter the incremental channel density.
CROSS REFERENCE TO RELATED APPLICATIONS
This application is related to our commonly assigned copending United States patent applications entitled:
“METHOD AND APPARATUS FOR FORMING REDUNDANT VIAS BETWEEN CONDUCTIVE LAYERS OF AN INTEGRATED CIRCUIT” by Gabriel Bracha et. al., U.S. Pat. No. 5,798,937 issued on Aug. 25, 1998.
“METHOD AND APPARATUS FOR DESIGNING AN INTEGRATED CIRCUIT” by Larry G. Jones et al., U.S. Pat. No. 5,666,288 issued Sep. 9, 1997.
“APPARATUS AND METHOD FOR AUTOMATICALLY PLACING TIES AND CONNECTION ELEMENTS WITHIN AN INTEGRATED CIRCUIT” by Mohan Guruswamy et al., U.S. Pat. No. 5,901,065 issued May 9, 1999.
“APPARATUS AND METHOD FOR THE AUTOMATIC DETERMINATION OF A STANDARD LIBRARY HEIGHT WITHIN AN INTEGRATED CIRCUIT DESIGN” by Robert Maziasz et al., U.S. Pat. No. 5,737,236 issued Apr. 7, 1998.
“AUTOMATIC SYNTHESIS OF STANDARD CELL LAYOUTS” by Mohan Guruswamy et. al., U.S. Pat. No. 5,984,510 issued Nov. 16, 1999.
“AUTOMATIC LAYOUT SUBSTRATE AND WELL TIE STYLE SELECTION” by Mohan Guruswamy et. al., U.S. Pat. No. 6,006,024 issued Dec. 21, 1999.
“AUTOMATIC LAYOUT STANDARD CELL ROUTING” by Srilata Raman et. al., U.S. Pat. No. 5,987,086 issued Nov. 6, 1999.
“SEMICONDUCTOR DEVICE USING DIODE PLACE-HOLDERS AND METHOD OF MANUFACTURE THEREOF” by Daniel R. Cronin, U.S. Pat. No. 5,966,517 issued Oct. 12, 1999.
US Referenced Citations (23)
Non-Patent Literature Citations (10)
Entry |
R.L.Maziasz and J.P.Hayes, Layout Minimization of CMOS Cells,Boston,Kluwer Academic Publishers, 1992. |
D.Hill, “Sc2: A hybrid automatic layout system,” ICCAD-85, pp. 172-174. |
A.Stauffer and R.Nair,“Optimal CMOS cell transistor placement: a relaxation approach,” ICCAD-88, pp. 364-367. |
G.Lakhani and S.Rao.,“A multiple row-based layout generator for CMOS cells,” ISCAS-90, pp. 1697-1700. |
Q.Wu and T.Sloane,“CMOS leaf-cell design using simulated annealing,”Midwest Symposium on Circuits and Systems, 1992, pp. 1516-1519. |
B.Basaran and Rob Rutenbar, “Efficient area minimization for dynamic CMOS circuits,” 1996 Physical Design Workshop, pp. 150-153. |
Christie et al “Simulated Isobaric Annealing,” IEEE, pp. 1683-1686, Apr. 1995.* |
Brouwer et al “A Parallel Simulated Annealing Algorithm for Channel Routing on a Hypercube Multiprocessor,” IEEE, pp. 4-7, 1988.* |
Wern-Jieh Sun et al., “Efficient and Effective Placement for Very Large Circuits”, 1995 IEEE Transactions on Computer and Systems, vol. 14, No. 3, Mar. 1995, pp. 349-359. |
Chao Chi Tong et al., “Routing in a Three-Dimensional Chip”, IEEE Transactions on Computers, vol. 44, No. 1, Jan. 1995, pp. 106-117. |