Multilayer Global Routing Considering Via and Wire Capacities
Multi-layer Global Routing Considering Via and Wire Capacities Chin-Hsiung Hsu, Huang-Yu Chen, and Yao-Wen Chang National Taiwan University, Taiwan 1
Outline Problem Formulation Via Capacity Routing Flow Aerial. Monotonic Routing Techniques Experimental Results Conclusions Escaping-Point Routing Multi-Source Multi-Sink Monotonic Routing 2
Outline Problem Formulation Via Capacity Routing Flow Aerial. Monotonic Routing Techniques Experimental Results Conclusions Escaping-Point Routing Multi-Source Multi-Sink Monotonic Routing 3
Problem Formulation ․Prioritized objectives of global routing: 1. minimize the total wire and via overflow 2. minimize the maximum overflow 3. minimize the weighted total wirelength n WL is weighted by CPU time Tile Boundary y Tile z x Global Tile Node Global Edge 4
Motivation ․Common pitfall of ISPD global routing contests ¾ Via usage in congested tiles is in excess Estimated Demand Tile Wire Lower-bound Demand Resources Stacked Via Unstacked Via adaptec 1 adaptec 3 adaptec 5 newblue 2 adaptec 4 adaptec 2 5
Stacked Vias in 3 D Global Routing ․The metrics of ISPD global routing contest are oversimplified ․ 3 D global routing should consider via usage, especially stacked vias ․Stacked vias pass through at least one metal layer and occupy extra resources Stacked Via Unstacked Via Horizontal Cross-Tile Wire Vertical Cross-Tile Wire Remaining Position for Stacked Vias 6
Dynamic Via Capacity ․Via capacity on a global tile (Cv ): ¾ ¾ ¾ Obstacles and in-tile wires should be considered Cv = remaining_area / via_area = (At – Ao – Ai – Aw) / via_area Via capacity changes dynamically because # of crosstile wires may change during rerouting At: area of tile Ao: area of obstacles Ai: area of in-tile wires Aw: area of cross-tile wires Remaining area for Stacked Vias 7
Outline Problem Formulation Via Capacity Routing Flow Aerial. Monotonic Routing Techniques Experimental Results Conclusions Escaping-Point Routing Multi-Source Multi-Sink Monotonic Routing 8
Routing Flow Initial Routing MST Net Decomposition Least-Flexibility-First Routing 2 D Monotonic Routing 2 D Rerouting (Wire Overflow) Negotiation-Based Rip-Up and Rerouting Aerial-Monotonic Routing Escaping-Point Routing A*-Search Routing Via-Overflow-Aware Layer Assignment 3 D Rerouting (Via Overflow) 9
Via-Overflow-Aware Layer Assignment ․Layer assignment is performed for subnets in the non-decreasing order of their wirelength ¾ Least-flexibility subnets first ․Cost function is prioritized by: 1. inducing wire overflow 2. inducing via overflow 3. using a via or a wire ․For inheriting 2 D routing results, we minimize via overflow without increasing wire overflow 10
Outline Problem Formulation Via Capacity Routing Flow Aerial. Monotonic Routing Techniques Experimental Results Conclusions Escaping-Point Routing Multi-Source Multi-Sink Monotonic Routing 11
Routing Paths ․General monotonic routing path: ¾ ¾ t No detour hard to avoid congested regions 3 D monotonic routing path is not practical because pins locate on the lowest layer and wires locate on upper layers s ․ 3 D aerial-monotonic routing path: ¾ ¾ In aerial view, it is monotonic In lateral view, it can detour ․Escaping-point routing path: ¾ ¾ t s Allowing detour easy to avoid congested regions It is composed of 2 monotonic routing paths Net Bounding Box 12
2 D (Planar) Routing Techniques ․Solution space and complexity comparisons O(V) gap O(V) O(Vlg. V) Increasing solution space L/Z Shaped Routing V: # of nodes in search space Monotonic Routing Fast Not allowing detour Escaping. Point Routing Fast Allowing detour Maze Routing Slow Allowing detour 13
3 D Routing Techniques ․Solution space and complexity comparisons O(V) O(Vlg. V) gap Increasing solution space 3 D L/Z Shaped Routing 3 D Aerial. Monotonic Routing Aerial Escaping -Point Routing 3 D Maze Routing 14
Topology-Restructuring Routing Techniques ․Solution space and complexity comparisons O(V) O(Vlg. V) Increasing solution space Multi-Source Multi-Sink Monotonic Routing gap Multi-Source Multi-Sink Escaping-Point Routing Multi-Source Multi-Sink Maze Routing Proposed by M. Pan and C. Chu in ASPDAC’ 07 15
Outline Problem Formulation Via Capacity Routing Flow Aerial. Monotonic Routing Techniques Experimental Results Conclusions Escaping-Point Routing Multi-Source Multi-Sink Monotonic Routing 16
Difficulty of Aerial-Monotonic Routing (AMR) ․ 2 D monotonic routing: ¾ ¾ Routing graph is directed acyclic Existing shortest path algorithm can find an optimal solution in linear time ․ 3 D aerial-monotonic routing: ¾ ¾ Routing graph contains cycles and is NOT directed acyclic Existing shortest path algorithm cannot find an optimal solution in linear time 17
Aerial-Monotonic Routing (AMR) ․Observation: aerial-monotonic routing path cannot go up and down in the same pile ․Use 3 D pile update to handle cycles in routing pile graph aerial view 18
Multi-Source Multi-Sink AMR (MSAMR) ․Aerial-monotonic propagation is based on topological relationship of source and target subtrees t t t’ t s’ t 1 s 1 Tt t 1 s 1 1 propagation Obstacle T t t 2 Ts s 1 Tt Box Covering Ts s 4 t 2 s 3 Ts t 3 s 1 s 2 t 2 s 1 2 propagations s Ts Ts 1 s 2 t 1 t 2 t 1 Tt t 4 + s 1 s 2 s 4 s 3 t 4 4 propagations Box Covering Tt Aerial-Monotonic Propagation 19
Two-phase Aerial-monotonic Routing (TAMR) ․Two-phase search: t t s s ․Finding escaping point: ¾ ¾ connect two sub-paths detour out of the net bounding box p t s 20
Optimality Algorithm AMR MSAMR TMSAMR Find an optimal solution? Yes Yes Run in O(V)? Yes Yes Can it be applied to 3 D? Yes Yes 21
Outline Problem Formulation Via Capacity Routing Flow Aerial. Monotonic Routing Techniques Experimental Results Conclusions Escaping-Point Routing Multi-Source Multi-Sink Monotonic Routing 22
Experimental Setting ․C++ programming language ․ 2. 0 GHz Intel Xeon Linux workstation ․ISPD’ 07 benchmarks Circuits Grids #Net #Pin adaptec 1 324 x 324 219794 824734 adaptec 2 424 x 424 260159 911964 adaptec 3 774 x 779 466295 1657913 adaptec 4 774 x 779 515304 1706575 adaptec 5 465 x 468 867441 2857283 newblue 1 399 x 399 331663 1060921 newblue 2 557 x 463213 1517918 newblue 3 973 x 1256 551667 1612116 23
Results on ISPD’ 07 Benchmarks ․NTUgr achieves the best overflow for newblue 3 circuit ․For overflow-free circuits, NTUgr achieves the best CPU time 40. 00 35. 00 1. 40 CPU Comparisons 1. 20 36. 06 30. 00 1. 00 25. 00 0. 80 20. 00 15. 00 1. 23 0. 98 1. 07 1. 01 1. 00 0. 60 15. 79 0. 40 10. 00 5. 00 0. 00 WL Comparisons 4. 67 FGR Archer Maize. Router 0. 20 4. 01 1. 00 NTHU- NTUgr Route (Ours) 0. 00 FGR Archer Maize. Router NTHURoute NTUgr (Ours) 24
Results on ISPD’ 07 Benchmarks Circuit OF FGR 1. 1 WL CPU adaptec 1 0 adaptec 2 0 adaptec 3 0 adaptec 4 0 adaptec 5 0 newblue 1 310 newblue 2 0 newblue 3 44854 Comp. * - (e 5) (min) OF Archer WL CPU (e 5) (min) Maize. Router WL CPU OF (e 5) (min) NTHU-Route WL CPU OF (e 5) (min) NTUgr (Ours) WL CPU OF (e 5) (min) 88 432 0 90 42 0 199 238 0 183 33 0 259 932 0 94 1441 682 132 10 0 173 1547 33394 113 244 222 334 116 167 199 87 0 23 0 51 0 12 0 248 0 50 1372 7 0 163 32234 100 143 0 100 91 0 210 158 0 191 26 0 303 4866 0 100 892 352 139 14 0 182 663 31800 91 90 0 92 14 0 205 59 0 188 8 0 265 250 0 91 42 62 136 3 0 168 319 31246 91 16 92 5 203 22 188 2 265 29 92 1047 133 3 239 374 0. 98 15. 79 1. 23 4. 67 1. 07 36. 06 1. 01 4. 01 1. 00 - - 25
Results Considering Via Capacity ․Dynamic via capacity: ¾ ¾ NTUgr achieves the best results Via capacity changes during rerouting ․Fixed via capacity: ¾ ¾ NTUgr achieves the best results For fair comparisons, assume that 86% (90% and 94%) capacity is used 2. 50 2. 00 Overflow Comparisons 2. 33 2. 14 1. 90 1. 50 1. 29 1. 00 0. 50 0. 00 10. 00 FGR Maize- Box. NTHU- NTUgr Router Route (Ours) 2. 0 Overflow Comparisons 86% 8. 73 8. 00 6. 00 4. 00 2. 00 0. 00 2. 68 FGR 3. 54 3. 58 1. 00 Maize- Box. NTHU- NTUgr Router Route (Ours) 2. 0 26
Results Considering Via Capacity FGR 1. 1 Circuit adaptec 1 OF VOF 0 0 adaptec 2 11900 adaptec 3 14 14 adaptec 4 0 0 adaptec 5 6864 newblue 1 385 151 newblue 2 5 5 Comp. * 2. 68 WL (e 5) 88 Maize. Router WL OF VOF (e 5) 0 0 100 Box. Router 2. 0 WL OF VOF (e 5) 0 0 92 NTHU-Route WL OF VOF (e 5) 0 0 91 NTUgr (Ours) WL OF VOF (e 5) 0 0 97 90 19097 100 16617 94 17179 92 8560 95 200 20 20 210 15 15 207 15 15 205 0 0 209 179 3 3 191 4 4 186 2 2 188 0 0 192 261 10430 303 8558 270 9129 265 4343 274 91 1639 267 100 510 116 93 504 152 91 147 85 100 129 13 13 135 11 11 136 0 0 138 1. 86 1. 00 8. 73 3. 08 1. 10 3. 54 1. 97 1. 04 3. 58 2. 24 1. 03 1. 00 1. 07 27
Outline Problem Formulation Via Capacity Routing Flow Aerial. Monotonic Routing Techniques Experimental Results Conclusions Escaping-Point Routing Multi-Source Multi-Sink Monotonic Routing 28
Conclusions ․Have developed an effective and efficient global router (NTUgr) considering via capacity ․Define practical routing paths and propose corresponding routing algorithms to find optimal solutions ¾ 3 D aerial-monotonic routing ¾ Escaping-point routing ¾ Multi-source multi-sink monotonic routing 29
Conclusions and Future Work ․A dummy fill algorithm considering both gradient minimization and coupling constraints ․Achieve more balanced metal density Thank You! distribution with fewer dummy features and an acceptable timing overhead Chin-Hsiung Hsu arious@eda. ee. ntu. edu. tw ․Future work: integration of gradient minimization and coupling constraints ¾ 30 Simultaneously minimize the gradient and the coupling capacitance
- Slides: 30