Patent US5801959A successfully refreshed from Google Patents.
US5801959A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Integrated circuit layout
Assignee: Silicon Valley Res Inc
•
Filing: 1996-09-12
•
Granted: 1998-09-01
•
Expires: 2016-09-12
Abstract
Abstract The invention quickly produces a dense layout for an integrated circuit that enables a smaller die to be used to implement the integrated circuit than would otherwise be the case, resulting in a desirable size reduction in the final packaged integrated circuit. The invention combines routing space estimation and adjustment (a technique similar to channel-based global routing) with area-based detailed routing, resulting in an approach that provides the benefits of both channel-based and area-based layout techniques while minimizing the disadvantages of those techniques.
Inventors
- 👤 Cheng-Liang Ding
- 👤 Jiabi J. Zhu
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-11-09 12:38
CPC Classifications
G; G06; G06F; G06F30/00; G06F30/30; G06F30/39; G06F30/394
Claims Analysis
Total Claims: 30
Claim 1
Independent Claim
215 words
A method for determining an integrated circuit layout on a surface of a semiconductor die, the integrated circuit including a plurality of components, at least two of the components including at least one pin, the type and structure of the components and the interconnections between pins of various components being predefined, the method comprising the steps of: determining a first component placement on the die surface, wherein: each component is represented as a block or one of a plurality of cells in a row of cells; a distance between adjacent cells within a row defines a cell spacing; and a region between defined locations of adjacent blocks and/or cell rows defines a channel having a channel height; and routing each interconnection, the step of routing further comprising the steps of: performing routing space estimation and adjustment to approximately define the routing demand, wherein, after the routing space estimation and adjustment step, the area of the die surface, each channel height and each cell spacing have a particular magnitude that together define a second component placement; and performing area-based detailed routing to exactly define the path of each interconnection, the magnitude of the die surface area after the detailed routing step remaining unchanged from the magnitude of the die surface area before the detailed routing step.
Claim 2
Independent Claim
215 words
A method for determining an integrated circuit layout on a surface of a semiconductor die, the integrated circuit including a plurality of components, at least two of the components including at least one pin, the type and structure of the components and the interconnections between pins of various components being predefined, the method comprising the steps of: determining a first component placement on the die surface, wherein: each component is represented as a block or one of a plurality of cells in a row of cells; a distance between adjacent cells within a row defines a cell spacing; and a region between defined locations of adjacent blocks and/or cell rows defines a channel having a channel height; and routing each interconnection, the step of routing further comprising the steps of: performing routing space estimation and adjustment to approximately define the routing demand, wherein, after the routing space estimation and adjustment step, the area of the die surface, each channel height and each cell spacing have a particular magnitude that together define a second component placement; and performing area-based detailed routing to exactly define the path of each interconnection, the magnitude of the die surface area after the detailed routing step remaining unchanged from the magnitude of the die surface area before the detailed routing step.
Claim 3
Dependent Claim
27 words
A method as in claim 1, wherein the step of performing routing space estimation and adjustment further comprises the step of adjusting one or more channel heights.
Claim 4
Dependent Claim
26 words
A method as in claim 1, wherein the step of performing routing space estimation and adjustment further comprises the step of performing gridded channel-based global routing.
Claim 5
Dependent Claim
26 words
A method as in claim 1, wherein the step of performing routing space estimation and adjustment further comprises the step of performing gridless channel-based global routing.
Claim 6
Dependent Claim
42 words
A method as in claim 1, wherein only the second component placement, interconnections between pins and the magnitude of the die surface area after the routing space estimation and adjustment step are supplied as input information for the area-based detailed routing step.
Claim 7
Dependent Claim
32 words
A method as in claim 1, wherein the approximate paths of the interconnections are supplied from the routing space estimation and adjustment step as input information for the area-based detailed routing step.
Claim 8
Dependent Claim
79 words
A method as in claim 1, further comprising, after the steps of performing routing space estimation and adjustment and area-based detailed routing, iteratively performing the steps of: changing the magnitude of the area of the die surface; and performing a subsequent area-based detailed routing to exactly define the path of each interconnection on the die surface, the results of the subsequent step of performing area-based detailed routing replacing the results of the previous step of performing area-based detailed routing.
Claim 9
Dependent Claim
26 words
A method as in claim 7, further comprising, before a subsequent step of performing area-based detailed routing, the step of changing one or more channel heights.
Claim 10
Dependent Claim
26 words
A method as in claim 8, further comprising, before a subsequent step of performing area-based detailed routing, the step of changing one or more cell spacings.
Claim 11
Dependent Claim
26 words
A method as in claim 7, further comprising, before a subsequent step of performing area-based detailed routing, the step of changing one or more cell spacings.
Claim 12
Dependent Claim
75 words
A method as in claim 1, further comprising, after the steps of performing routing space estimation and adjustment and area-based detailed routing, iteratively performing the steps of: changing one or more channel heights; and performing a subsequent area-based detailed routing to exactly define the path of each interconnection on the die surface, the results of the subsequent step of performing area-based detailed routing replacing the results of the previous step of performing area-based detailed routing.
Claim 13
Dependent Claim
26 words
A method as in claim 11, further comprising, before a subsequent step of performing area-based detailed routing, the step of changing one or more cell spacings.
Claim 14
Dependent Claim
75 words
A method as in claim 1, further comprising, after the steps of performing routing space estimation and adjustment and area-based detailed routing, iteratively performing the steps of: changing one or more cell spacings; and performing a subsequent area-based detailed routing to exactly define the path of each interconnection on the die surface, the results of the subsequent step of performing area-based detailed routing replacing the results of the previous step of performing area-based detailed routing.
Claim 15
Dependent Claim
51 words
A method as in claim 1, wherein the step of performing routing space estimation and adjustment further comprises the steps of: defining the location of one or more vertices for each channel; assigning each pin to a vertex; and routing each interconnection between the vertices associated with the pins being interconnected.
Claim 16
Dependent Claim
20 words
A method as in claim 14, wherein the step of routing each interconnection between the vertices further comprises maze routing.
Claim 17
Dependent Claim
20 words
A method as in claim 14, wherein the step of routing each interconnection between the vertices further comprises line-probe routing.
Claim 18
Dependent Claim
49 words
A method as in claim 1, wherein the step of performing routing space estimation and adjustment further comprises the steps of: dividing the die surface into a plurality of rectangles; assigning each pin to a rectangle; and routing each interconnection between the rectangles associated with the pins being interconnected.
Claim 19
Dependent Claim
20 words
A method as in claim 17, wherein the step of routing each interconnection between the rectangles further comprises maze routing.
Claim 20
Dependent Claim
77 words
A method as in claim 1, further comprising, after the step of performing routing space estimation and adjustment, the steps of: determining, for each component, whether the component is at a location that enables interconnection to be made to the pin or pins of the component; and for each component that is not at such a location, relocating the component to a location that enables interconnection to be made to the pin or pins of the component.
Claim 21
Dependent Claim
74 words
A method as in claim 19, wherein: the step of determining further comprises the steps of: defining a routing grid; and evaluating at least one pin of each component to determine whether the pin is located on an intersection of the routing grid; and the step of relocating further comprises the step of moving the component such that at least one pin of the component is located on an intersection of the routing grid.
Claim 22
Dependent Claim
74 words
A method as in claim 19, wherein: the step of determining further comprises the steps of: defining a routing grid and a placement grid; and evaluating a defined point of each component to determine whether the defined point is located on an intersection of the placement grid; and the step of relocating further comprises the step of moving the component such that the defined point is located on an intersection of the placement grid.
Claim 23
Dependent Claim
142 words
A method as in claim 19, further comprising, after the steps of performing routing space estimation and adjustment and area-based detailed routing, iteratively performing the steps of: changing the magnitude of the area of the die surface such that the component placement is changed; and determining, for each component, whether the component is at a location that enables interconnection to be made to the pin or pins of the component; for each component that is not at such a location, relocating the component to a location that enables interconnection to be made to the pin or pins of the component; and performing a subsequent area-based detailed routing to exactly define the path of each interconnection on the die surface, the results of the subsequent step of performing area-based detailed routing replacing the results of the previous step of performing area-based detailed routing.
Claim 24
Dependent Claim
88 words
A method as in claim 1, further comprising, after the step of performing routing space estimation and adjustment, the step of changing the magnitude of the die surface area, if necessary, to have a predetermined magnitude, the step of changing the magnitude of the die surface area further comprising the step of relocating each component so as to maintain the same proportional relationship between the magnitudes of the cell spacings and the channel heights before and after the step of changing the magnitude of the die surface area.
Claim 25
Dependent Claim
79 words
A method as in claim 23, further comprising, after the step of changing the magnitude of the die surface area, the steps of: determining, for each component, whether the component is at a location that enables interconnection to be made to the pin or pins of the component; and for each component that is not at such a location, relocating the component to a location that enables interconnection to be made to the pin or pins of the component.
Claim 26
Dependent Claim
38 words
A method as in claim 23, further comprising, after the step of changing the magnitude of the die surface area, the step of relocating each input cell or pin and output cell or pin to a predefined location.
Claim 27
Dependent Claim
86 words
A method as in claim 25, further comprising, after the step of relocating each input cell or pin and output cell or pin to a predefined location, the steps of: determining, for each component, whether the component is at a location that enables interconnection to be made to the pin or pins of the component; and for each component that is not at such a location, relocating the component to a location that enables interconnection to be made to the pin or pins of the component.
Claim 28
Dependent Claim
27 words
A method as in claim 1, wherein the step of performing routing space estimation and adjustment further comprises the step of adjusting one or more cell spacings.
Claim 29
Independent Claim
219 words
A system for determining an integrated circuit layout on a surface of a semiconductor die, the integrated circuit including a plurality of components, at least two of the components including at least one pin, the type and structure of the components and the interconnections between pins of various components being predefined, the system comprising: means for determining a first component placement on the die surface, wherein: each component is represented as a block or one of a plurality of cells in a row of cells; a distance between adjacent cells within a row defines a cell spacing; and a region between defined locations of adjacent blocks and/or cell rows defines a channel having a channel height; and means for routing each interconnection, the means for routing further comprising: means for performing routing space estimation and adjustment to approximately define the routing demand, the performance of routing space estimation and adjustment resulting in the determination of a particular magnitude for the area of the die surface, each channel height and each cell spacing that together define a second component placement; and means for performing area-based detailed routing to exactly define the path of each interconnection, the magnitude of the die surface area after the detailed routing remaining unchanged from the magnitude of the die surface area before the detailed routing.
Claim 30
Independent Claim
219 words
A system for determining an integrated circuit layout on a surface of a semiconductor die, the integrated circuit including a plurality of components, at least two of the components including at least one pin, the type and structure of the components and the interconnections between pins of various components being predefined, the system comprising: means for determining a first component placement on the die surface, wherein: each component is represented as a block or one of a plurality of cells in a row of cells; a distance between adjacent cells within a row defines a cell spacing; and a region between defined locations of adjacent blocks and/or cell rows defines a channel having a channel height; and means for routing each interconnection, the means for routing further comprising: means for performing routing space estimation and adjustment to approximately define the routing demand, the performance of routing space estimation and adjustment resulting in the determination of a particular magnitude for the area of the die surface, each channel height and each cell spacing that together define a second component placement; and means for performing area-based detailed routing to exactly define the path of each interconnection, the magnitude of the die surface area after the detailed routing remaining unchanged from the magnitude of the die surface area before the detailed routing.
References Cited (Backward Citations)
US4577276A
Cited
US4615011A
Cited
US4613941A
Cited
US4754408A
Cited
US4835705A
Cited
US4823276A
Cited
US4975854A
Cited
US4965739A
Cited
US4908772A
Cited
EP0294188A2
Cited
US4815003A
Cited
US4831725A
Cited
WO1991006061A1
Cited
US5072402A
Cited
US5309370A
Cited
US5363313A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2001-08-31 | 2002-03-02 | 2002-09-01 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2005-08-31 | 2006-03-02 | 2006-09-01 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2009-08-31 | 2010-03-02 | 2010-09-01 | $7700.00 | Window Closed / Lapsed |