Method and apparatus for considering diagonal wiring in placement
First Claim
1. For an electronic design automation application, a method of placing circuit modules in an integrated circuit (“
- IC”
) layout, wherein the IC layout has a number of circuit elements, a net having a set of circuit elements, the method comprising;
using a diagonal line to measure a placement metric;
wherein using the diagonal line to measure a placement metric comprises calculating an estimate of the length of interconnect lines necessary to connect the circuit elements of said net during a routing operation, wherein the calculation measures the length of at least one line that is at least partially diagonal.
2 Assignments
0 Petitions
Accused Products
Abstract
The invention is directed towards method and apparatus that consider diagonal wiring in placement. Some embodiments of the invention are placers that use diagonal lines in calculating the costs of potential placement configurations. For instance, some embodiments estimate the wirelength cost of a placement configuration by (1) identifying, for each net in a net list, a bounding box that encloses all the circuit elements of the net, (2) computing an attribute of each bounding box by using a line that can be completely or partially diagonal, and (3) computing the wirelength cost estimate based on the computed attributes. To estimate the wirelength cost of different placement configurations, other embodiments construct connection graphs that model the net interconnect topologies. These connection graphs can have edges that are completely or partially diagonal. Other embodiments use diagonal lines to measure congestion costs of potential placement configurations. For instance, some placers use diagonal lines as cut lines that divide the IC layout into regions. These placers then generate congestion-cost estimates by measuring the number of nets cut by the diagonal cut lines.
145 Citations
41 Claims
-
1. For an electronic design automation application, a method of placing circuit modules in an integrated circuit (“
- IC”
) layout, wherein the IC layout has a number of circuit elements, a net having a set of circuit elements, the method comprising;using a diagonal line to measure a placement metric; wherein using the diagonal line to measure a placement metric comprises calculating an estimate of the length of interconnect lines necessary to connect the circuit elements of said net during a routing operation, wherein the calculation measures the length of at least one line that is at least partially diagonal. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
- IC”
-
11. A method of placing circuit modules in an integrated circuit (“
- IC”
) layout, wherein said IC layout includes a net having a plurality of circuit elements, the method comprising;a) constructing a connection graph that connects the circuit elements of the net, said connection graph having edges, wherein at least one of the edges is at least partially diagonal; b) identifying a placement metric based on the connection graph; and c) using the placement metric to identify a placement of the circuit modules. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20, 22, 23, 24, 25)
- IC”
-
21. The method of clam 11, wherein the diagonal edge forms a 120°
- angle with respect to a side of the IC layout.
-
26. For an electronic design automation application, a method of placing circuit modules in an integrated circuit (“
- IC”
) layout, wherein said IC layout includes a plurality of nets each of which includes a plurality of circuit elements in the IC layout, wherein the EDA application includes a wiring model that defines different types of interconnect lines for connecting the circuit elements of the nets, said wiring model having diagonal lines, the method comprising;a) for each particular net, defining a minimum spanning tree that models the topology of interconnect lines for connecting the circuit elements of the particular net, said minimum spanning trees having edges, wherein at least one of the edges of at least one of the minimum spanning trees is at least partially diagonal; b) calculating the length of the edges of the minimum spanning trees; c) combining the length calculations to obtain an estimate of the total interconnect-line length needed for connecting the circuit elements of the nets during a routing operation; and d) using the combined length calculations to identify a placement of the circuit modules. - View Dependent Claims (27, 28)
- IC”
-
29. For an electronic design automation application, a method of placing circuit modules in an integrated circuit (“
- IC”
) layout, wherein said IC layout includes a plurality of nets each of which includes a plurality of circuit elements in the IC layout, wherein the EDA application includes a wiring model that defines different types of interconnect lines for connecting the circuit elements of the nets, said wiring model having diagonal lines, the method comprising;a) for each particular net, defining a Steiner tree that models the topology of interconnect lines for connecting the circuit elements of the particular net, said Steiner tree having edges, wherein at least one of the edges of at least one of the Steiner trees is at least partially diagonal; b) calculating the length of the Steiner trees; c) combining the length calculations to obtain an estimate of the total interconnect-line length needed for connecting the circuit elements of the nets during a routing operation; and d) using the combined length calculations to identify a placement of the circuit modules. - View Dependent Claims (30, 31, 32)
- IC”
-
33. A method of placing circuit modules in an integrated circuit (“
- IC”
) layout, wherein said IC layout includes a set of circuit elements, the method comprising;a) identifying a connection graph that connects the set of circuit elements, wherein said connection graph has a plurality of edges, wherein at least two of the edges are neither parallel nor orthogonal to each other; b) identifying a placement metric based on the connection graph; and c) using the placement metric to identify a placement of the circuit modules. - View Dependent Claims (34, 35, 36, 37, 40, 41)
- IC”
-
38. The method of clam 33, wherein the edges that are neither parallel nor orthogonal forms a 45°
- angle with respect to each other.
-
39. The method of clam 33, wherein the edges that are neither parallel nor orthogonal forms a 120°
- angle with respect to each other.
Specification