1 / 18

Multi-Commodity Flow Based Routing

Multi-Commodity Flow Based Routing. Set up ILP formulation for MCF routing Capacity of each edge in G is 2 Each edge in G becomes a pair of bi-directional arcs in F n 1 = { a,l }, n 2 = { i,c }, n 3 = { d,f }, n 4 = { k,d }, n 5 = { g,h }, n 6 = { b,k }. Flow Network.

hlong
Download Presentation

Multi-Commodity Flow Based Routing

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Multi-Commodity Flow Based Routing • Set up ILP formulation for MCF routing • Capacity of each edge in G is 2 • Each edge in G becomes a pair of bi-directional arcs in F • n1 = {a,l}, n2 = {i,c}, n3 = {d,f}, n4 = {k,d}, n5 = {g,h}, n6 = {b,k} Practical Problems in VLSI Physical Design

  2. Flow Network • Each arc has a cost based on its length • Let xek denote a binary variable for arc e w.r.t. net k • xek= 1means net k uses arc e in its route • Total number of x-variables: 16 × 2 × 6 = 192 Practical Problems in VLSI Physical Design

  3. ILP Objective Function • Minimize Practical Problems in VLSI Physical Design

  4. ILP Demand Constraint • Utilize demand constant • zvk= 1 means node v is the source of net k (= −1 if sink) • Total number of z-constants: 12 × 6 = 72 Practical Problems in VLSI Physical Design

  5. ILP Demand Constraint (cont) • Node a: source of net n1 Practical Problems in VLSI Physical Design

  6. ILP Demand Constraint (cont) • Node b: source of net n6 Practical Problems in VLSI Physical Design

  7. ILP Capacity Constraint • Each edge in the routing graph allows 2 nets Practical Problems in VLSI Physical Design

  8. ILP Solutions • Min-cost: 108 (= sum of WL), 22 non-zero variable Practical Problems in VLSI Physical Design

  9. ILP-based MCF Routing Solution • Net 6 is non-optimal • Due to congestion Practical Problems in VLSI Physical Design

  10. Drawback of ILP-based Method • ILP is non-scalable • Runtime quickly increases with bigger problem instances • Shragowitz and Keel presented a heuristic instead • Called MM (MiniMax) heuristic [1987] • Repeatedly perform shortest path computation and rip-up-and-reroute Practical Problems in VLSI Physical Design

  11. MM Heuristic • Initial set up: shortest path computation • Ignore capacity, some paths are not unique Practical Problems in VLSI Physical Design

  12. First Iteration of MM Heuristic • Step 1 • Capacity of channel c(e,f) and c(d,i) is violated • Max overflow M1 = 3 − 2 = 1 > 0, so we proceed • Notation: channel c(e,f) represents arc pair (e,f) and (f,e) Practical Problems in VLSI Physical Design

  13. First Iteration of MM Heuristic (cont) • Step 2 • Set of channels with overflow of M1: J1 = {c(d,i), c(e,f)} • Set of channels with overflow of M1 and M1− 1 : J10 = {c(a,d), c(e,h), c(i,j), c(j,k), c(d,i), c(e,f)} • Step 3 • Cost of J10 = {c(a,d), c(e,h), c(i,j), c(j,k), c(d,i), c(e,f)} is ∞ Practical Problems in VLSI Physical Design

  14. First Iteration of MM Heuristic (cont) • Step 4 • Set of nets using channels in J1: K1 = {n1, n2, n3, n4, n5, n6} • Set of nets using channels in J10: K10 = K1 Practical Problems in VLSI Physical Design

  15. First Iteration of MM Heuristic (cont) • Step 5 • Compute shortest paths for nets in K1 using new cost (= Step 3) • n1 & n6 have non-infinity cost, so we proceed Practical Problems in VLSI Physical Design

  16. First Iteration of MM Heuristic (cont) • Step 6 • Net with minimum wirelength increase between n1 & n6: k0 = n1 Practical Problems in VLSI Physical Design

  17. First Iteration of MM Heuristic (cont) • Step 7 • Use new routing for n1 • Wirelength didn’t change, but congestion improved Practical Problems in VLSI Physical Design

  18. Second Iteration of MM Heuristic • Details in the book • Use new routing for n3 • Wirelength increased (due to detour in n3), but congestion improved Practical Problems in VLSI Physical Design

More Related