1 / 14

Provably Good Global Buffering Using an Available Buffer Block Plan

Provably Good Global Buffering Using an Available Buffer Block Plan. F. F. Dragan (Kent) A. B. Kahng (UCLA) I. Mandoiu (Gatech) S. Muddu (Silicon graphics) A. Zelikovsky (GSU). Outline. Global routing via buffer blocks Global buffering problem Integer multicommodity flow formulation (MCF)

salim
Download Presentation

Provably Good Global Buffering Using an Available Buffer Block Plan

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. Provably Good Global Buffering Using an Available Buffer Block Plan F. F. Dragan (Kent) A. B. Kahng (UCLA) I. Mandoiu (Gatech) S. Muddu (Silicon graphics) A. Zelikovsky (GSU)

  2. Outline • Global routing via buffer blocks • Global buffering problem • Integer multicommodity flow formulation (MCF) • Approximation of node-capacitated MCF • Rounding fractional MCF • Implemented heuristics • Experimental results • Extensions & Conclusions

  3. Global routing via buffer blocks • (V)DSM  buffering all global nets • Block methodology  buffers outside blocks • Buffer blocks use less routing/area resources (RAR) • RAR(2-buffer block) =   RAR(buffer) •   0.8 for high-end designs • Buffer block planning: • Given circuit block placement and global netlist • Plan shape/location of buffer blocks minimally impacting existing floorplan

  4. BB BB Global buffering problem

  5. Global buffering problem • Given • planar region with rectangular obstacles containing buffer blocks with given capacity • set of 2-pin nets (s(k),t(k)), each net has • non-negative importance (criticality) coefficient • parity requirement = parity on # buffers b/w source and sink • maximum # buffers b/w source and sink • Route given nets maximizing total importance s.t. • distances b/w repeaters (pins) are in given interval [L,U] • # buffers for any net satisfy given constraints • # of nets passing through buffer block  capacity

  6. BB BB Global buffering problem

  7. Integer MCF formulation • Graph G=(V,E), V=pins+BB’s, E = legal edges • P(k) = set of legal (s(k),t(k)) paths • P = union P(k) • q(p,v)= 0 if v p; = 1 if v  p; = 2 if loop vv  p maximize  { f(p) | pP} subject to  { q(p,v)  f(p) | pP} c(v) v V f(p)  {0,1} pP

  8. Approximation of node-capacitated MCF • Garg/Konemann & Fleisher •  -MCF algorithm • w(v) = , f(k,v) = 0 for all v in V and k = 1,…,K • For i = 1 to N do • for k = 1,…,K do • find shortest path p in P(k) • while w(p) < min{ 1, (1+2)^i} do • f= f+1 • for all v in p f(k, v) = f(k,v)+1 (+2 if v is loop in p) • find p shortest path in P(k) • output f/N and f(k,v)/Nfor all v in V and k = 1,…,K •  -MCF algorithm is (1+ 8)-approximation

  9. Rounding fractional MCF • Raghavan-Thompson: random walk from source • probability of choosing an arc/node proport. node flow • Probability of routing net proportional net flow • Algorithm • decrease flow by (1-) • route nets with randomized rounding • With high probability no node capacity violations

  10. Greedy deletion/addition • Greedy addition routing • if there exists (s(i)-t(i))-path satisfying constraints • find shortest path • decrement capacity of all nodes on path • if capacity of node = 0, then delete it from graph • Greedy deletion = opposite to addition

  11. Implemented heuristics • -MCF algorithm with greedy enhancement • solve fractional MCF with  approximation • round fractional solution via random walks • apply greedy deletion/addition to get feasible solution • 1-shot heuristic • assign weight w=1 to each BB • repeat until total overused capacity does not decrease • for each pair find shortest path • for each BB r increase weight by wc(r) / C(r) • apply greedy deletion/addition to get feasible solution

  12. Experimental results # nets Greedy 1-shot -MCF =0.16 =0.02 4212 4101 4207 4212 4212 3962 2148 2179 2325 2347 4191 2216 2236 2378 2394 4212 2223 2232 2378 2392 • Catching fully routable instances • Reduce manual work when unroutable

  13. Extensions/Conclusions • Enhancing with edge capacities = channel capacity • Multi-pin nets => Steiner trees in dags • approximate directed Steiner trees • rounding of trees: reduction to random walks • Combining with compaction • increasing/decreasing capacities • sum-capacity constraints • Covering LP approximation improves drastically many routing parameters

  14. BB BB BB BB Combining with compaction

More Related