an exact algorithm for coupling-free routing

21
1 ER Group @ UCLA ISPD: Sonoma County, CA, April, 2001 An Exact Algorithm for An Exact Algorithm for Coupling-Free Routing Coupling-Free Routing Ryan Kastner, Elaheh Bozorgzadeh,Majid Sarrafzadeh {kastner,elib,majid}@cs.ucla.edu Embedded and Reconfigurable Systems Embedded and Reconfigurable Systems Group Group Computer Science Department Computer Science Department UCLA UCLA Los Angeles, CA 90095 Los Angeles, CA 90095

Upload: axl

Post on 25-Feb-2016

49 views

Category:

Documents


1 download

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 Presentation

TRANSCRIPT

Page 1: An Exact Algorithm for Coupling-Free Routing

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

Page 2: An Exact Algorithm for Coupling-Free Routing

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

Page 3: An Exact Algorithm for Coupling-Free Routing

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

Page 4: An Exact Algorithm for Coupling-Free Routing

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

Page 5: An Exact Algorithm for Coupling-Free Routing

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

Page 6: An Exact Algorithm for Coupling-Free Routing

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

Page 7: An Exact Algorithm for Coupling-Free 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

Page 8: An Exact Algorithm for Coupling-Free Routing

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)

Page 9: An Exact Algorithm for Coupling-Free Routing

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

Page 10: An Exact Algorithm for Coupling-Free Routing

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

Page 11: An Exact Algorithm for Coupling-Free Routing

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)

Page 12: An Exact Algorithm for Coupling-Free Routing

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

Page 13: An Exact Algorithm for Coupling-Free Routing

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

Page 14: An Exact Algorithm for Coupling-Free Routing

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

Page 15: An Exact Algorithm for Coupling-Free Routing

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

Page 16: An Exact Algorithm for Coupling-Free Routing

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?

Page 17: An Exact Algorithm for Coupling-Free Routing

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

Page 18: An Exact Algorithm for Coupling-Free Routing

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)

Page 19: An Exact Algorithm for Coupling-Free Routing

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

Page 20: An Exact Algorithm for Coupling-Free Routing

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}

Page 21: An Exact Algorithm for Coupling-Free Routing

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