← Back to Patent Explorer
US5682322A Expired / Lapsed US ⏱️ 0.0 years remaining

Optimization processing for integrated circuit physical design automation system using chaotic fitness improvement method

Assignee: Bell Semiconductor LLC
•
Filing: 1994-04-19
•
Granted: 1997-10-28
•
Expires: 2014-04-19
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract The fitness of a cell placement for an integrated circuit chip is optimized by relocating at least some of cells to new locations that provide lower interconnect congestion. For each cell, the centroid of the net of cells to which the cell is connected is computed. The cell is then moved toward the centroid by a distance that is equal to the distance from the current position of the cell to the centroid multiplied by a "chaos" factor lambda . The value of lambda is selected such that the cell relocation operations will cause the placement to converge toward an optimal configuration without chaotic diversion, but with a sufficiently high chaotic element to prevent the optimization operation from becoming stuck at local fitness maxima. The new cell locations can be modified to include the effects of cells in other locations, such as by incorporating a function of cell density gradient or force direction into the computation. This spreads out clumps of cells so that the density of cells is more uniform throughout the placement. The attraction between cells in the nets is balanced against repulsion caused by a high local cell density, providing an optimized tradeoff of wirelength, feasibility and congestion.

Inventors

  • 👤 Douglas B. Boyle
  • 👤 James S. Koford
  • 👤 Ranko Scepanovic
  • 👤 Edwin R. Jones
  • 👤 Michael D. Rostoker

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-30 21:41
CPC Classifications
G; G06; G06F; G06F30/00; G06F30/30; G06F30/39; G06F30/392

Claims Analysis

Total Claims: 37
Claim 1
Independent Claim 85 words
A method of relocating a cell in a cell placement for an integrated circuit chip, comprising the step of: (a) computing a centroid as a first predetermined function of relationships between said cell and other associated cells on the chip; (b) computing a first length from a current location of said cell to said centroid; (c) computing a second length as a second predetermined function of said first length; and (d) moving said cell from said current location toward said centroid by said second length.
Claim 2
Independent Claim 85 words
A method of relocating a cell in a cell placement for an integrated circuit chip, comprising the step of: (a) computing a centroid as a first predetermined function of relationships between said cell and other associated cells on the chip; (b) computing a first length from a current location of said cell to said centroid; (c) computing a second length as a second predetermined function of said first length; and (d) moving said cell from said current location toward said centroid by said second length.
Claim 3
Dependent Claim 23 words
A method as in claim 1, in which step (a) comprises computing said centroid as a center of gravity of said associated cells.
Claim 4
Dependent Claim 22 words
A method as in claim 1, in which step (c) comprises computing said second length as being proportional to said first length.
Claim 5
Dependent Claim 26 words
A method as in claim 1, in which step (c) comprises computing said second length as being between approximately 0.5 to 1.5 times said first length.
Claim 6
Dependent Claim 64 words
A method as in claim 1, further comprising the steps of: (e) computing a density gradient of cells in locations that are proximate to said cell, said density gradient having a magnitude and a decreasing density direction; and (f) moving said cell from said current position in said decreasing density direction by a third distance that is a third predetermined function of said magnitude.
Claim 7
Dependent Claim 27 words
A method as in claim 5, in which said magnitude for each location in step (e) is equal to a number of cells in said location respectively.
Claim 8
Dependent Claim 16 words
A method as in claim 5, in which said third length is proportional to said magnitude.
Claim 9
Dependent Claim 73 words
A method as in claim 1, further comprising the steps of: (e) computing a net force on said cell as a third predetermined function of lengths from said cell to cells in locations that are proximate to said cell, said net force having a magnitude and a direction; and (f) moving said cell from said current position in said direction by a third length that is a fourth predetermined function of said magnitude.
Claim 10
Dependent Claim 16 words
A method as in claim 8, in which said third length is proportional to said magnitude.
Claim 11
Dependent Claim 29 words
A method as in claim 8, in which said magnitude decreases as said lengths from said cell to said cells in locations that are proximate to said cell increase.
Claim 12
Dependent Claim 70 words
A method as in claim 1, further comprising the steps of: (e) computing a net force on said cell as a third predetermined function of distances from said cell to all other cells of said placement, said net force having a magnitude and a direction; and (f) moving said cell from said current position in said direction by a third length that is a fourth predetermined function of said magnitude.
Claim 13
Dependent Claim 17 words
A method as in claim 11, in which said third length distance is proportional to said magnitude.
Claim 14
Dependent Claim 26 words
A method as in claim 11, in which said magnitude decreases as said distances from said cell to said all other cells of said placement increase.
Claim 15
Dependent Claim 22 words
A method as in claim 1, further comprising the step of repeating steps (a) through (d) until a predetermined criteria is achieved.
Claim 16
Dependent Claim 25 words
A method as in claim 1 wherein said second predetermined function comprises a chaotic function preventing entrapment of the method at a local fitness optima.
Claim 17
Independent Claim 92 words
A method of increasing the fitness of a cell placement for an integrated circuit chip, comprising the steps of: (a) computing centroids for a plurality of cells in said placement as a first predetermined function of relationships between said cells and other associated cells on the chip; (b) computing first lengths from current locations of said cells to said centroids respectively; (c) computing second lengths as a second predetermined function of said first lengths respectively; and (d) moving said cells from said current locations toward said centroids by said second lengths respectively.
Claim 18
Independent Claim 92 words
A method of increasing the fitness of a cell placement for an integrated circuit chip, comprising the steps of: (a) computing centroids for a plurality of cells in said placement as a first predetermined function of relationships between said cells and other associated cells on the chip; (b) computing first lengths from current locations of said cells to said centroids respectively; (c) computing second lengths as a second predetermined function of said first lengths respectively; and (d) moving said cells from said current locations toward said centroids by said second lengths respectively.
Claim 19
Dependent Claim 30 words
A method as in claim 19, in which step (e) comprises distributing said cells into locations that are substantially closest to locations that said cells occupied after performing step (d).
Claim 20
Dependent Claim 17 words
A method as in claim 16, in which step (a) comprises selecting said plurality of cells randomly.
Claim 21
Dependent Claim 21 words
A method as in claim 16, in which step (a) comprises selecting said plurality in accordance with a predetermined fitness criterion.
Claim 22
Dependent Claim 20 words
A method as in claim 16, in which step (a) comprises selecting said plurality of cells in a predetermined order.
Claim 23
Dependent Claim 30 words
A method as in claim 16, in which step (a) comprises selecting said plurality of cells in accordance with said locations of cells to which said cells are connected respectively.
Claim 24
Dependent Claim 20 words
A method as in claim 16, in which steps (a) to (d) are performed sequentially on said plurality of cells.
Claim 25
Dependent Claim 21 words
A method as in claim 16, in which steps (a) to (d) are performed in parallel on said plurality of cells.
Claim 26
Dependent Claim 35 words
A method as in claim 16, further comprising the steps, performed after step (d), of: (e) selecting a new plurality of cells; and (f) repeating steps (a) to (d) for said new plurality of cells.
Claim 27
Dependent Claim 26 words
A method as in claim 24, further comprising the step, performed after step (f), of: (g) repeating steps (e) and (f) a predetermined number of times.
Claim 28
Dependent Claim 37 words
A method as in claim 24, further comprising the steps, performed after step (f), of: (g) measuring said fitness of said placement; and (h) repeating steps (e) and (f) if said fitness is below a predetermined value.
Claim 29
Dependent Claim 22 words
A method as in claim 26, in which step (g) comprises measuring said fitness as a predetermined function of cell interconnect congestion.
Claim 30
Dependent Claim 40 words
A method as in claim 24, further comprising the steps, performed after step (f), of: (g) measuring said fitness of said placement; and (h) repeating steps (e) and (f) if said fitness has changed by more than a predetermined value.
Claim 31
Dependent Claim 55 words
A method as in claim 16, in which: steps (a) and (d) allow more than one cell to be moved to a single location, and allow locations to have no cells thereat; and the method further comprises the step, performed after step (d) of: (e) distributing all cells of said placement into said locations respectively.
Claim 32
Independent Claim 95 words
A method of relocating an entity in a permutation of a predetermined number of entities that are arranged in a pattern of locations respectively, comprising the steps of: (a) computing a centroid as a first predetermined function of relationships between said entity and other associated entities in a predetermined manner; (b) computing a first length from a current location of said entity to said centroid; (c) computing a second length as a second predetermined function of said first length; and (d) moving said entity from said current location toward said centroid by said second length.
Claim 33
Independent Claim 95 words
A method of relocating an entity in a permutation of a predetermined number of entities that are arranged in a pattern of locations respectively, comprising the steps of: (a) computing a centroid as a first predetermined function of relationships between said entity and other associated entities in a predetermined manner; (b) computing a first length from a current location of said entity to said centroid; (c) computing a second length as a second predetermined function of said first length; and (d) moving said entity from said current location toward said centroid by said second length.
Claim 34
Dependent Claim 23 words
A method as in claim 30, in which step (a) comprises computing said centroid as a center of gravity of said associated entities.
Claim 35
Dependent Claim 22 words
A method as in claim 30, in which step (c) comprises computing said second length as being proportional to said first distance.
Claim 36
Dependent Claim 22 words
A method as in claim 30, further comprising the step of repeating steps (a) through (d) until a predetermined criteria is achieved.
Claim 37
Dependent Claim 25 words
A method as in claim 30 wherein said second predetermined function comprises a chaotic function preventing entrapment of the method at a local fitness optima.

References Cited (Backward Citations)

US4577276A Cited
US4630219A Cited
US4829446A Cited
US4815003A Cited
US5191542A Cited
US5309371A Cited
US5398195A Cited
US5465218A Cited
US5495419A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2000-10-27 2001-04-28 2001-10-28 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2004-10-27 2005-04-28 2005-10-28 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2008-10-27 2009-04-28 2009-10-28 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag