global routing global routing global routing global
play

Global routing Global routing Global routing Global routing Bill - PowerPoint PPT Presentation

Global routing Global routing Global routing Global routing Bill Swartz Bill Swartz InternetCAD.com InternetCAD.com InternetCAD.com InternetCAD.com Disclaimer Disclaimer Disclaimer Disclaimer Paper written in 5 days Paper written


  1. Global routing Global routing Global routing Global routing Bill Swartz Bill Swartz InternetCAD.com InternetCAD.com InternetCAD.com InternetCAD.com

  2. Disclaimer Disclaimer Disclaimer Disclaimer � Paper written in 5 days Paper written in 5 days � Please forgive any errors, typos, Please forgive any errors, typos, omissions and possible legal omissions and possible legal omissions, and possible legal omissions, and possible legal transgressions transgressions InternetCAD.com, Inc. 2008 InternetCAD.com, Inc. 2008

  3. Backgro nd Backgro nd Background Background � TimberWolf Systems / InternetCAD.com TimberWolf Systems / InternetCAD.com f f formed in 1994. formed in 1994. d i d i 1994 1994 � Concentrated on producing high quality Concentrated on producing high quality Concentrated on producing high quality Concentrated on producing high quality results for small chips and block designs. results for small chips and block designs. � Claim to fame: 486, Pentium series, Alpha, Claim to fame: 486, Pentium series, Alpha, and Centrino and Centrino and Centrino and Centrino InternetCAD.com, Inc. 2008 InternetCAD.com, Inc. 2008

  4. B t B t But… But… � One company no longer uses the product One company no longer uses the product and one no longer exists… and one no longer exists… d d l l i t i t � Business is now predominantly DRAM Business is now predominantly DRAM Business is now predominantly DRAM. Business is now predominantly DRAM. � Wrote grouter (2D) and igrouter (3D). Wrote grouter (2D) and igrouter (3D). � Helped write TimberWolfGR and SGGR. H l H l Helped write TimberWolfGR and SGGR. d d it it Ti Ti b b W lfGR W lfGR d SGGR d SGGR InternetCAD.com, Inc. 2008 InternetCAD.com, Inc. 2008

  5. O tline Outline Outline O tline � Introduction Introduction � � Applications Applications A A li li i i � � Previous work / state � Previous work / state Previous work / state-of Previous work / state-of of-the art of-the art the art the art � � � � Advanced objectives and requirements Advanced objectives and requirements j j q q � Alternative methodologies Alternative methodologies � � Itools global router Itools global router � � Summary � Summary Summary Summary � � InternetCAD.com, Inc. InternetCAD.com, Inc. 2008 2008

  6. Ph sical Design Stages Ph sical Design Stages Physical Design Stages Physical Design Stages InternetCAD.com, Inc. 2008 InternetCAD.com, Inc. 2008

  7. Global ro ting definition Global routing definition Global ro ting definition Global routing definition Assign net segments to physical regions. Assign net segments to physical regions. Assign net segments to physical regions. Assign net segments to physical regions. � � Model regions as a graph. Model regions as a graph. Nets are embedded into graph Nets are embedded into graph g g p p � Minimize the total overflow on all global edges Minimize the total overflow on all global edges � Global Bins Global Bins Cells From Pan M, Chu C. Global Edges Global Edges (a) (b) InternetCAD.com, Inc. 2008 InternetCAD.com, Inc. 2008

  8. Cost function Cost function Cost function Cost function ∑ ∑ W W ( ( n n ) ) ∈ N n = 1 ≤ ≤ subject b 0 0 , 1 b b B B P c InternetCAD.com, Inc. 2008 InternetCAD.com, Inc. 2008

  9. Global ro ting diffic lt Global ro ting diffic lt Global routing difficulty Global routing difficulty � Easiest of three primary subtasks Easiest of three primary subtasks � � Fast F Fast � � Detail router can ignore global routing to � Detail router can ignore global routing to Detail router can ignore global routing to Detail router can ignore global routing to � � complete design complete design � � Global routing is not necessary for Global routing is not necessary for sufficiently small designs sufficiently small designs sufficiently small designs sufficiently small designs � Negotiated detail router (Pathfinder) + A* Negotiated detail router (Pathfinder) + A* g g ( ( ) ) � search performs poor man's global routing search performs poor man's global routing InternetCAD.com, Inc. 2008 InternetCAD.com, Inc. 2008

  10. Global and Detail Router Global and Detail Router Programs Programs � Combination of base, meta, and hierarchical Combination of base, meta, and hierarchical algorithms algorithms algorithms. algorithms. � Base : how to route a single net or net segment Base : how to route a single net or net segment � Maze, pattern, line search, gridded, etc. Maze, pattern, line search, gridded, etc. � Meta : how to route a set of nets Meta : how to route a set of nets Meta : how to route a set of nets Meta : how to route a set of nets � Ripup and Reroute, Pathfinder, Graph Ripup and Reroute, Pathfinder, Graph- -Based, Based, Lagrange Relaxation Linear Programming Network Lagrange Relaxation Linear Programming Network Lagrange Relaxation, Linear Programming, Network Lagrange Relaxation, Linear Programming, Network Flows, etc. Flows, etc. � Hierarchical : how to route a set of regions Hi Hierarchical : how to route a set of regions Hi hi hi l l h h t t t t t t f f i i � Multilevel, channel Multilevel, channel- -based methods, wire ordering based methods, wire ordering (Groeneveld) (Groeneveld) InternetCAD.com, Inc. InternetCAD.com, Inc. 2008 2008

  11. Detail Ro ting Meta Algorithms Detail Routing Meta Algorithms Detail Routing Meta Algorithms Detail Ro ting Meta Algorithms � Now appear in global routers Now appear in global routers � Ripup and Reroute � Ripup and Reroute Ripup and Reroute Ripup and Reroute � Graph Graph- p -based Conflict Removal based Conflict Removal � Congestion Negotiation (Pathfinder) Congestion Negotiation (Pathfinder) InternetCAD.com, Inc. 2008 InternetCAD.com, Inc. 2008

  12. The problem The problem The problem The problem Shaded area keepouts; pins blue; fly-lines denote net connections p p y Single routing layer From Tatsuo Ohtsuki, “Layout Design and Verification” 1986 , y g InternetCAD.com, Inc. 2008 InternetCAD.com, Inc. 2008

  13. Net 1 is blocked Net 1 is blocked Net 1 is blocked Net 1 is blocked R Route net 2 first t t 2 fi t InternetCAD.com, Inc. 2008 InternetCAD.com, Inc. 2008

  14. Net Net 2 is blocked Net Net 2 2 is blocked is blocked is blocked O d Ordering nets won’t solve problem i t ’t l bl InternetCAD.com, Inc. 2008 InternetCAD.com, Inc. 2008

  15. Rip p and Rero te Rip p and Rero te Ripup and Reroute Ripup and Reroute � Ripup and reroute net segments Ripup and reroute net segments - - not the not the entire net! entire net! ti ti t! t! � Ripup of entire net does not work Ripup of entire net does not work Ripup of entire net does not work. Ripup of entire net does not work. InternetCAD.com, Inc. 2008 InternetCAD.com, Inc. 2008

  16. Rip p/Rero te Net 2 is blocked Rip p/Rero te Net 2 is blocked Ripup/Reroute: Net 2 is blocked Ripup/Reroute: Net 2 is blocked Initial state Recursion depth 0 Recursion depth 0 InternetCAD.com, Inc. 2008 InternetCAD.com, Inc. 2008

  17. Rip p/Rero te Ro te net 2 Rip p/Rero te Ro te net 2 Ripup/Reroute: Route net 2 Ripup/Reroute: Route net 2 R Route borrowing net 1’s segment t b i t 1’ t Recursion depth 1 InternetCAD.com, Inc. 2008 InternetCAD.com, Inc. 2008

  18. Ripup/Reroute: Ripup net 1 Ripup/Reroute: Ripup net 1 p p p p p p p p segment segment Remove net 1 segments Recursion depth 0 Recursion depth 0 InternetCAD.com, Inc. 2008 InternetCAD.com, Inc. 2008

  19. Rip p/Rero te Ro te net 2 Rip p/Rero te Ro te net 2 Ripup/Reroute: Route net 2 Ripup/Reroute: Route net 2 But we fail to route 1 Recursion depth 0 InternetCAD.com, Inc. 2008 InternetCAD.com, Inc. 2008

  20. Rip p/Rero te Backtrack Rip p/Rero te Backtrack Ripup/Reroute: Backtrack Ripup/Reroute: Backtrack Back at start Recursion depth 0 Recursion depth 0 InternetCAD.com, Inc. 2008 InternetCAD.com, Inc. 2008

  21. Rip p/Rero te Ro te net 2 Ripup/Reroute: Route net 2 Ripup/Reroute: Route net 2 Rip p/Rero te Ro te net 2 Block previous failure and route borrowing from net 1 Bl k i f il d t b i f t 1 Recursion depth 1 Recursion depth 1 InternetCAD.com, Inc. 2008 InternetCAD.com, Inc. 2008

  22. Ripup/Reroute: Ripup net Ripup/Reroute: Ripup net1 p p p p p p p p 1 segment segment Prepare to route net 2 Recursion depth 0 InternetCAD.com, Inc. 2008 InternetCAD.com, Inc. 2008

  23. Ripup/Reroute: Ripup of segment Ripup/Reroute: Ripup of segment p p p p p p p p g g of net 2 to route net 1 of net 2 to route net 1 Routing succeeds for net 2 Recursion depth 0 Recursion depth 0 InternetCAD.com, Inc. 2008 InternetCAD.com, Inc. 2008

  24. Ripup/Reroute: Routing Ripup/Reroute: Routing p p p p g g complete complete Routing succeeds for net 1 Recursion depth 0 InternetCAD.com, Inc. 2008 InternetCAD.com, Inc. 2008

  25. Graph Graph based Graph Graph-based : Initial conflicts based based : Initial conflicts Initial conflicts Initial conflicts Conflicts shown in orange InternetCAD.com, Inc. 2008 InternetCAD.com, Inc. 2008

  26. Graph Graph- p -based: Alternative route based: Alternative route for net for net 1 1 InternetCAD.com, Inc. 2008 InternetCAD.com, Inc. 2008

Recommend


More recommend