an exact algorithm for coupling-free routing
DESCRIPTION
An Exact Algorithm for Coupling-Free Routing. Ryan Kastner, Elaheh Bozorgzadeh,Majid Sarrafzadeh {kastner,elib,majid}@cs.ucla.edu. Embedded and Reconfigurable Systems Group Computer Science Department UCLA Los Angeles, CA 90095. Outline. Basic definitions Coupling-Free Routing - PowerPoint PPT PresentationTRANSCRIPT
1
ER Group @ UCLA
ISPD: Sonoma County, CA, April, 2001
An Exact Algorithm for An Exact Algorithm for Coupling-Free RoutingCoupling-Free Routing
Ryan Kastner, Elaheh Bozorgzadeh,Majid Sarrafzadeh{kastner,elib,majid}@cs.ucla.edu
Embedded and Reconfigurable Systems GroupEmbedded and Reconfigurable Systems GroupComputer Science DepartmentComputer Science Department
UCLAUCLALos Angeles, CA 90095Los Angeles, CA 90095
2
ER Group @ UCLA
ISPD: Sonoma County, CA, April, 2001
OutlineOutline Basic definitions Coupling-Free Routing Coupling-Free Routing Decision Problem (CFRDP) Implication graph Maximum Coupling-Free Layout (MAX-CFL) Conclusion
3
ER Group @ UCLA
ISPD: Sonoma County, CA, April, 2001
CouplingCoupling Definition - capacitance between adjacent wires Deep submicron trends:
Interconnect has more dominant role Scale wire height at slow rate compared to width
smaller device sizes
Coupling can account for up to 70% of interconnect capacitance even in .25 micron designs
4
ER Group @ UCLA
ISPD: Sonoma County, CA, April, 2001
Simplify definition of couplingSimplify definition of coupling Pair-wise boolean relationship between any 2 nets Easy to generalize to non-boolean, makes algorithm
more complex
distance < d
length > l
Two wires couple if Two wires couple if distance < d and length > ldistance < d and length > l
ij
jiij
ijijc
dwwd
lf(i,j)C
21
1
Two wires couple if Two wires couple if CCcc(i,j) > threshold(i,j) > threshold
5
ER Group @ UCLA
ISPD: Sonoma County, CA, April, 2001
Coupling-Free Routing (CFR)Coupling-Free Routing (CFR) Given a set of nets S={Ni={(x1i,y1i),(x2i,y2i)} | 1 i n} S is coupling-free if there is a single bend layout for
every net such that no two routes couple
Coupled layout Coupling-free layout
6
ER Group @ UCLA
ISPD: Sonoma County, CA, April, 2001
Benefits of CFRBenefits of CFR Smaller interconnect delay
One bend routing insures minimum wirelength Only one via Coupling between nets minimized
Aids in wire planning Speeds up routing process See “Predictable Routing”, ICCAD’00
Maze Route remaining netsMaze Route remaining nets
CFR critical netsCFR critical nets
Detailed/Single Layer routingDetailed/Single Layer routing
7
ER Group @ UCLA
ISPD: Sonoma County, CA, April, 2001
CFR in Global RoutingCFR in Global Routing Coupling at global routing is hard to determine
Routes are not exact, makes it difficult to know adjacency relations of nets
Detailed router will often make local changes
Global routing allows global changes, it is very hard to make global changes at the detailed stage
Coupling-avoidance in congested areas very important
A coupling-free global layout will produce a coupling-free detailed layout
8
ER Group @ UCLA
ISPD: Sonoma County, CA, April, 2001
CFRDP definitionCFRDP definition Given a set of two-terminal nets. Is there a single bend
routing for every net such that no two routings couple? We solve via a transformation to the 2-satisfiability
problem (2SAT)
CFRDP
CFRDP algorithm overviewCFRDP algorithm overview
transform to 2SAT
Solved in time O(n)
Solving CFRDP takes time O(n2)
O(n2)
9
ER Group @ UCLA
ISPD: Sonoma County, CA, April, 2001
CFRDP to 2SATCFRDP to 2SAT Assign a boolean variable to every net A variable is true (false) if it is routed in upper-L (lower-
L) The clauses are formed based on forcing interactions
between the nets
Net A
Net B Net C
Net A = uA
Net B = uB
Net C = uC
10
ER Group @ UCLA
ISPD: Sonoma County, CA, April, 2001
Forcing interactionsForcing interactions In order to avoid coupling, a routing of a net forces
another net into a particular route
Net 1
Net 2 To avoid couplingNet 2 must be lower-L
Net 1
Net 2
An lower-L routing of Net 1 forces a lower-L routing of Net 2ûA ûB
11
ER Group @ UCLA
ISPD: Sonoma County, CA, April, 2001
Forcing interactionsForcing interactions There are 10 possible forcing interactions between Net A (solid -
uA) and Net B (dotted - uB) Each interaction can be encoded into clauses in 2SAT
1) No interaction, no clauses2) Unroutable, return FALSE3) (uA,,uB)
4) (uA,,ûB)
5) (ûA,,uB)
6) (ûA,,ûB)
7) (uA,,ûB), (ûA,,uB)
8) (uA,,ûB), (ûA,,ûB)
9) (uA,,uB), (ûA,,uB)
10) (uA,,uB), (ûA,,ûB)
12
ER Group @ UCLA
ISPD: Sonoma County, CA, April, 2001
Implication GraphImplication Graph Given a set of nets N Implication graph is a directed graph G(V,E) The vertices are the routes of the nets The edges are defined by the forcing
If Route A forces Route B, then there is an edge from Vertex A to Vertex B
Implication graph is constructed in time O(|N|2)
Net ANet A
Net BNet B
Net CNet C
Net DNet DC
C
B
B
A
A
D
D
13
ER Group @ UCLA
ISPD: Sonoma County, CA, April, 2001
Property - Direct ForcingProperty - Direct Forcing Edges formed according to (direct) forcings Therefore, the out degree of the Vertex A is the number
of routes forced by Route A
C has out degree = 2
Every other vertex has out degree = 1
C
C
B
B
A
A
D
DNet ANet A
Net BNet B
Net CNet C
Net DNet D
14
ER Group @ UCLA
ISPD: Sonoma County, CA, April, 2001
Property - Indirect ForcingProperty - Indirect Forcing A routing may force other routes indirectly
Route 1Route 2 Route 3
Route 4
Route 1directly forces Route 2Route 2 directly forces Route 3Route 3 directly forces Route 4
Route 1 indirectly forces Routes 3 and 4
15
ER Group @ UCLA
ISPD: Sonoma County, CA, April, 2001
Property - Indirect forcingProperty - Indirect forcing The number of indirect forcings of Route A is the
number of vertices reachable from vertex A minus the out degree of vertex A
Modified DFS algorithm can be used to determine indirect forcings
C
C
B
B
A
A
D
D
A indirectly forces 2 routes (B, D)
Net ANet A
Net BNet B
Net CNet C
Net DNet D
16
ER Group @ UCLA
ISPD: Sonoma County, CA, April, 2001
MAX-CFL DefinitionMAX-CFL Definition
Given a set of two-terminal nets S and a positive integer K < |S|. Is there a single bend routing for at least K nets such that no two routings couple?
Additional routing constraints can easily be added Routed nets must be planar Routed nets must be routed on two layers
MAX-CFL for planar layouts is NP-Complete General MAX-CFL NP-Complete?
17
ER Group @ UCLA
ISPD: Sonoma County, CA, April, 2001
We developed three algorithms Greedy Direct Forcing Implication
Algorithms try to maximize number of nets routed and/or criticality of routed nets
AlgorithmsAlgorithms
Presented at ASIC’00Presented at ASIC’00
18
ER Group @ UCLA
ISPD: Sonoma County, CA, April, 2001
Implication AlgorithmImplication Algorithm1 Given a set of nets N2 Create an implication graph G(V,E)3 R NULL4 for each vertex v V5 do r.net route(v)6 r.num_forcing Forcings(route(v))7 R R U r8 Sort R by function(direct forcings, indirect forcings)9 for each routing r R10 do if r.net is unrouted and r is routable11 then route r
Running time is O(n3)
19
ER Group @ UCLA
ISPD: Sonoma County, CA, April, 2001
BenchmarksBenchmarksData file Num Cells Num Nets Num Pins MCNC Benchmarksprimary1 833 1156 3303primary2 3014 3671 12914avqs 21584 30038 84081biomed 6417 7052 22253struct 1888 1920 5407 ISPD98 Benchmarksibm01 12036 13056 45815ibm05 28146 29647 127509ibm10 68685 29647 127509ibm15 161187 186991 716206ibm18 210341 202192 819969
20
ER Group @ UCLA
ISPD: Sonoma County, CA, April, 2001
Experimental FlowExperimental Flow
Algorithm l crit l root l crit l̂ 2 crit % routedgreedy 1.186 1.478 1.898 30.28%direct 1 1 1 35.30%imp(.5) 1.078 1.116 1.156 35.45%imp(1) 1.062 1.169 1.296 31.79%imp(2) 1.078 1.116 1.156 35.45%imp(5) 1.078 1.116 1.156 35.45%imp(10) 1.078 1.116 1.156 35.45%imp(infty) 1 1 1 31.79%
ResultsResults
Selectx mostcritical
nets
x = {25,50,75, … , 250}
Benchmark:{fract,biomed,
ibm01,etc.}
PerformMAX-CFLalgorithm
greedy, direct forcing, implication algorithms
Statistics:{criticality, % routed}
21
ER Group @ UCLA
ISPD: Sonoma County, CA, April, 2001
ConclusionConclusion Coupling-free routing useful for many routing algorithms
Detailed routing Global routing Single layer routing
Benefits of CFR Smaller interconnect delay Aides wire planning Speeds up routing process
Implication algorithm maximizes routes placed Greedy algorithm maximizes criticality placed Open problems – extending to consider weighted edges