Claims
- 1. A method of modifying an integrated circuit design to facilitate placement of circuit elements within one or more regions called bins on an integrated circuit design layout, comprising the steps of:performing an initial placement of integrated circuit elements within bins on the design layout; calculating congestion of the initial placement; and subject to limits on the increase in area of integrated circuit elements within a bin, performing logic modifications within selected bins of the integrated circuit design to allow congestion of the placement to be improved.
- 2. The method of claim 1, comprising the further step of performing placement refinement in an attempt to improve congestion by taking advantage of the logic modifications.
- 3. The method of claim 2, comprising the further steps of:tracking logic modifications to determine which logic modifications resulted in placement modifications during placement refinement; and undoing logic modifications that did not result in placement modifications.
- 4. The method of claim 2, comprising the further step of modifying logic within the integrated circuit design to improve timing performance of the integrated circuit design subject to limits on the increase in area of integrated circuit elements within a bin.
- 5. The method of claim 4, wherein modifying logic to improve timing performance comprises speeding up part of the circuit to improve timing slack in that part of the circuit.
- 6. The method of claim 2, comprising the further steps of:calculating congestion of the placement following placement refinement; and depending on the degree to which congestion has been improved, repeating said steps of modifying logic and performing placement refinement.
- 7. The method of claim 2, wherein modifying logic comprises replacing an original set of gates in the circuit with a different set of gates that is logically equivalent to the original set of gates.
- 8. The method of claim 7, wherein the different set of gates results in a lower ratio of number of pins to routable area in at least one bin.
- 9. The method of claim 7, wherein modifying logic comprises replacing a single gate having a plural number N of fanouts with a plurality of gates each having fewer than N fanouts.
- 10. The method of claim 7, wherein modifying logic comprises inserting buffers within a fanout tree of a gate.
- 11. The method of claim 7, wherein modifying logic comprises replacing a single gate having a plural number N of fanins with a plurality of gates each having fewer than N fanins.
- 12. A method of modifying an integrated circuit design to facilitate placement of circuit elements within one or more regions called bins on an integrated circuit design layout, comprising the steps of:performing an initial placement of integrated circuit elements within bins on the design layout, connections between the integrated circuit elements being represented as nets within a netlist describing the integrated circuit design; calculating congestion of the initial placement; and subject to limits on the increase in area of integrated circuit elements within a bin, performing logic modifications within selected bins of the integrated circuit design; wherein the logic modifications improve timing of selected nets belonging to the selected bins, reducing constraints on a subsequent placement step.
- 13. The method of claim 12, comprising the further step of performing placement refinement in an attempt to improve congestion by taking advantage of the logic modifications.
- 14. The method of claim 13, comprising the further steps of:tracking logic modifications to determine which logic modifications resulted in placement modifications during placement refinement; and undoing logic modifications that did not result in placement modifications.
- 15. A computer-readable medium including instructions for modifying an integrated circuit design to facilitate placement of circuit elements within one or more regions called bins on an integrated circuit design layout, including instructions for:performing an initial placement of integrated circuit elements within bins on the design layout; calculating congestion of the initial placement; and subject to limits on the increase in area of integrated circuit elements within a bin, performing logic modifications within selected bins of the integrated circuit design to allow congestion of the placement to be improved.
- 16. A computer-readable medium including instructions for modifying an integrated circuit design to facilitate placement of circuit elements within one or more regions called bins on an integrated circuit design layout, including instructions for:performing an initial placement of integrated circuit elements within bins on the design layout, connections between the integrated circuit elements being represented as nets within a netlist describing the integrated circuit design; calculating congestion of the initial placement; and subject to limits on the increase in area of integrated circuit elements within a bin, performing logic modifications within selected bins of the integrated circuit design; wherein the logic modifications improve timing of selected nets belonging to the selected bins, reducing constraints on a subsequent placement step.
- 17. Apparatus for modifying an integrated circuit design to facilitate placement of circuit elements within one or more regions called bins on an integrated circuit design layout, comprising:means for performing an initial placement of integrated circuit elements within bins on the design layout; means for calculating congestion of the initial placement; and means for, subject to limits on the increase in area of integrated circuit elements within a bin, performing logic modifications within selected bins of the integrated circuit design to allow congestion of the placement to be improved.
- 18. Apparatus for modifying an integrated circuit design to facilitate placement of circuit elements within one or more regions called bins on an integrated circuit design layout, comprising:means for performing an initial placement of integrated circuit elements within bins on the design layout, connections between the integrated circuit elements being represented as nets within a netlist describing the integrated circuit design; means for calculating congestion of the initial placement; and means, subject to limits on the increase in area of integrated circuit elements within a bin, performing logic modifications within selected bins of the integrated circuit design; wherein the logic modifications improve timing of selected nets belonging to the selected bins, reducing constraints on a subsequent placement step.
Parent Case Info
This application is related by subject matter to U.S. Application Ser. No. 09/097,299 entitled METHOD FOR DESIGN OPTIMIZATION USING LOGICAL AND PHYSICAL INFORMATION, filed on even date herewith and incorporated herein by reference.
US Referenced Citations (5)