Claims
- 1. A method for allocating spare cells in an auto-place-route (APR) block, comprising:
calculating a total area of a list of functional cells and a list of spare cells to be included in the APR block; providing said list of functional cells and a boundary as input to an auto-placement tool to generate a layout of the APR block based thereon, wherein said list of functional cells excludes said list of spare cells, wherein said boundary has an area approximately equal to said total area of said list of functional cells and said list of spare cells; and substantially filling white space in said layout with spare cells from said list of spare cells.
- 2. The method of claim 1, wherein said white space comprises space within said boundary not occupied by said list of functional cells.
- 3. The method of claim 1, wherein said spare cells comprise cells whose inputs and outputs are not coupled to other cells in the APR block.
- 4. The method of claim 1, wherein said functional cells comprise cells whose inputs and outputs are coupled to other cells in the APR block.
- 5. The method of claim 1, wherein said functional cells comprise cells necessary for the APR block to perform its intended function.
- 6. The method of claim 1, wherein said boundary comprises a polygon.
- 7. The method of claim 6, wherein said providing said boundary to said auto-placement tool comprises providing coordinates of said polygon.
- 8. The method of claim 1, further comprising:
providing connectivity information for said list of functional cells as input to said auto-placement tool to generate said layout of the APR block based thereon, in addition to providing said list of functional cells and said boundary.
- 9. A method for placing cells within an auto-place-route (APR) block in an integrated circuit, the APR block design including a functional cell list specifying a plurality of functional cells to be included therein, each of the plurality of functional cells having an area and inputs and outputs, the APR block design also including connectivity information specifying how said inputs and outputs of said plurality of functional cells is to be connected, the method comprising:
determining a spare cell area; determining a boundary of the APR block having an area approximately equal to a sum of said spare cell area and the plurality of functional cell areas; providing to an APR software program the functional cell list, the connectivity information, and said boundary, wherein said APR program generates a layout of the APR block having empty space within said boundary; and placing spare cells into said empty space after said APR program generates said layout of the APR block.
- 10. The method of claim 9, wherein said functional cell list does not include said spare cells.
- 11. The method of claim 9, wherein said empty space has a total area approximately equal to said spare cell area.
- 12. The method of claim 9, wherein said placing said spare cells into said empty space comprises a human placing each of said spare cells into said empty space with the aid of a computer system.
- 13. The method of claim 9, wherein said placing said spare cells into said empty space comprises providing said layout and a list of desired spare cells to a computer program that automatically places said spare cells into said empty space.
- 14. The method of claim 9, wherein said placing spare cells into said empty space after said APR program generates said layout of the APR block comprises placing spare cells in substantially all of said empty space.
- 15. The method of claim 9, wherein said determining said spare cell area comprises:
determining a list of spare cells desired to be included in the APR block; and assigning said spare cell area to approximately a sum of areas of said list of spare cells.
- 16. The method of claim 9, wherein said determining said spare cell area comprises calculating said spare cell area as a percentage of a sum of said plurality of functional cell areas.
- 17. The method of claim 16, wherein said percentage is within a range of 5% to 15%.
- 18. The method of claim 9, wherein said determining said spare cell area comprises assigning said spare cell area to a predetermined value.
- 19. The method of claim 18, wherein said predetermined value is within a range of 300 square microns to 2,000 square microns.
- 20. The method of claim 9, wherein said determining said spare cell area comprises assigning said spare cell area to one of a plurality of predetermined values, wherein said plurality of predetermined values is associated with a corresponding plurality of area ranges, wherein said one of said plurality of predetermined values is selected based on which of said corresponding plurality of area ranges a sum of said plurality of functional cell areas falls within.
- 21. A method for placing cells within a functional block of an integrated circuit, comprising:
determining a list of cells to be included in the functional block, said list excluding spare cells; determining a boundary of the functional block, said boundary having an area which is a function of a sum of areas of said list of cells; generating a physical placement of said list of cells within said boundary, wherein said physical placement is generated by auto-placement software, said auto-placement software receiving a specification of said boundary and said list of cells; and placing spare cells into white space within said boundary after said generating said physical placement, wherein said white space is a result of said auto-placement software physical placement of said list of cells.
- 22. The method of claim 21, wherein said white space comprises unused spaces in said boundary.
- 23. The method of claim 21, wherein said list of cells comprises cells required for the functional block to perform its function.
- 24. The method of claim 21, wherein said spare cells placed into said white space comprise cells not connected to other cells in the functional block.
- 25. The method of claim 21, wherein the functional block has a physical hierarchy.
- 26. The method of claim 21, wherein said functional cells do not have a physical hierarchy.
- 27. The method of claim 21, wherein the functional block is defined by said list of cells to be included in the functional block excluding spare cells.
- 28. The method of claim 21, wherein said functional cells are defined by an unchanging physical boundary.
PRIORITY INFORMATION
[0001] This application claims priority based on U.S. Provisional Application Serial No. 60/390,026, filed Jun. 18, 2002, entitled SPARE CELL ALLOCATION METHOD FOR AUTO-PLACE-ROUTE BLOCKS.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60390026 |
Jun 2002 |
US |