Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 ER UCLA ISPD: Sonoma County, CA, April, 2001 An Exact Algorithm for Coupling-Free Routing Ryan Kastner, Elaheh Bozorgzadeh,Majid Sarrafzadeh.

Similar presentations


Presentation on theme: "1 ER UCLA ISPD: Sonoma County, CA, April, 2001 An Exact Algorithm for Coupling-Free Routing Ryan Kastner, Elaheh Bozorgzadeh,Majid Sarrafzadeh."— Presentation transcript:

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

2 2 ER Group @ UCLA ISPD: Sonoma County, CA, April, 2001OutlineOutline Basic definitions Coupling-Free Routing Coupling-Free Routing Decision Problem (CFRDP) Implication graph Maximum Coupling-Free Layout (MAX-CFL) Conclusion Basic definitions Coupling-Free Routing Coupling-Free Routing Decision Problem (CFRDP) Implication graph Maximum Coupling-Free Layout (MAX-CFL) Conclusion

3 3 ER Group @ UCLA ISPD: Sonoma County, CA, April, 2001CouplingCoupling Definition - capacitance between adjacent wires Deep submicron trends: Interconnect has more dominant role Scale wire height at slow rate compared to width 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 4 ER Group @ UCLA ISPD: Sonoma County, CA, April, 2001 Simplify definition of coupling Pair-wise boolean relationship between any 2 nets Easy to generalize to non-boolean, makes algorithm more complex 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 distance l Two wires couple if distance l Two wires couple if C c (i,j) > threshold Two wires couple if C c (i,j) > threshold

5 5 ER Group @ UCLA ISPD: Sonoma County, CA, April, 2001 Coupling-Free Routing (CFR) Given a set of nets S={N i ={(x 1i,y 1i ),(x 2i,y 2i )} | 1  i  n} S is coupling-free if there is a single bend layout for every net such that no two routes couple Given a set of nets S={N i ={(x 1i,y 1i ),(x 2i,y 2i )} | 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 6 ER Group @ UCLA ISPD: Sonoma County, CA, April, 2001 Benefits 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 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 nets CFR critical nets Detailed/Single Layer routing

7 7 ER Group @ UCLA ISPD: Sonoma County, CA, April, 2001 CFR 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 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 8 ER Group @ UCLA ISPD: Sonoma County, CA, April, 2001 CFRDP 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) 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 overview transform to 2SAT Solved in time O(n) Solving CFRDP takes time O(n 2 ) O(n 2)

9 9 ER Group @ UCLA ISPD: Sonoma County, CA, April, 2001 CFRDP 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 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 = u A Net B = u B Net C = u C

10 10 ER Group @ UCLA ISPD: Sonoma County, CA, April, 2001 Forcing interactions In order to avoid coupling, a routing of a net forces another net into a particular route Net 1 Net 2 To avoid coupling Net 2 must be lower-L To avoid coupling Net 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 An lower-L routing of Net 1 forces a lower-L routing of Net 2 û A  û B

11 11 ER Group @ UCLA ISPD: Sonoma County, CA, April, 2001 Forcing interactions There are 10 possible forcing interactions between Net A (solid - u A ) and Net B (dotted - u B ) Each interaction can be encoded into clauses in 2SAT There are 10 possible forcing interactions between Net A (solid - u A ) and Net B (dotted - u B ) Each interaction can be encoded into clauses in 2SAT 1) No interaction, no clauses 2) Unroutable, return FALSE 3) (u A,,u B ) 4) (u A,,û B ) 5) (û A,,u B ) 6) (û A,,û B ) 7) (u A,,û B ), (û A,,u B ) 8) (u A,,û B ), (û A,,û B ) 9) (u A,,u B ), (û A,,u B ) 10) (u A,,u B ), (û A,,û B ) 1) No interaction, no clauses 2) Unroutable, return FALSE 3) (u A,,u B ) 4) (u A,,û B ) 5) (û A,,u B ) 6) (û A,,û B ) 7) (u A,,û B ), (û A,,u B ) 8) (u A,,û B ), (û A,,û B ) 9) (u A,,u B ), (û A,,u B ) 10) (u A,,u B ), (û A,,û B )

12 12 ER Group @ UCLA ISPD: Sonoma County, CA, April, 2001 Implication 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 ) 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 A Net B Net C Net D C C B B A A D D

13 13 ER Group @ UCLA ISPD: Sonoma County, CA, April, 2001 Property - 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 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 has out degree = 2 Every other vertex has out degree = 1 C C B B A A D D Net A Net B Net C Net D

14 14 ER Group @ UCLA ISPD: Sonoma County, CA, April, 2001 Property - Indirect Forcing A routing may force other routes indirectly Route 1 Route 2 Route 3 Route 4 Route 1directly forces Route 2 Route 2 directly forces Route 3 Route 3 directly forces Route 4 Route 1directly forces Route 2 Route 2 directly forces Route 3 Route 3 directly forces Route 4 Route 1 indirectly forces Routes 3 and 4

15 15 ER Group @ UCLA ISPD: Sonoma County, CA, April, 2001 Property - 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 A Net B Net C Net D

16 16 ER Group @ UCLA ISPD: Sonoma County, CA, April, 2001 MAX-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? 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 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 We developed three algorithms Greedy Direct Forcing Implication Algorithms try to maximize number of nets routed and/or criticality of routed netsAlgorithmsAlgorithms Presented at ASIC’00

18 18 ER Group @ UCLA ISPD: Sonoma County, CA, April, 2001 Implication Algorithm 1 Given a set of nets N 2 Create an implication graph G(V,E) 3 R  NULL 4 for each vertex v  V 5do r.net  route(v) 6 r.num_forcing  Forcings(route(v)) 7 R  R U r 8 Sort R by function(direct forcings, indirect forcings) 9 for each routing r  R 10do if r.net is unrouted and r is routable 11then route r 1 Given a set of nets N 2 Create an implication graph G(V,E) 3 R  NULL 4 for each vertex v  V 5do r.net  route(v) 6 r.num_forcing  Forcings(route(v)) 7 R  R U r 8 Sort R by function(direct forcings, indirect forcings) 9 for each routing r  R 10do if r.net is unrouted and r is routable 11then route r Running time is O(n 3 )

19 19 ER Group @ UCLA ISPD: Sonoma County, CA, April, 2001BenchmarksBenchmarks

20 20 ER Group @ UCLA ISPD: Sonoma County, CA, April, 2001 Experimental Flow ResultsResults Select x most critical nets x = {25,50,75, …, 250} Benchmark: {fract,biomed, ibm01,etc.} Perform MAX-CFL algorithm greedy, direct forcing, implication algorithms Statistics: {criticality, % routed}

21 21 ER Group @ UCLA ISPD: Sonoma County, CA, April, 2001ConclusionConclusion 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 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


Download ppt "1 ER UCLA ISPD: Sonoma County, CA, April, 2001 An Exact Algorithm for Coupling-Free Routing Ryan Kastner, Elaheh Bozorgzadeh,Majid Sarrafzadeh."

Similar presentations


Ads by Google