Download presentation
Presentation is loading. Please wait.
1
F.F. Dragan (Kent State) A.B. Kahng (UCSD) I. Mandoiu (Georgia Tech/UCLA) S. Muddu (Silicon Graphics) A. Zelikovsky (Georgia State) Provably Good Global Buffering Using an Available Buffer Block Plan
2
Global Buffering via Buffer Blocks VDSM buffer / inverter insertion for all global nets –50nm technology 10^6 buffers Buffer Block (BB) methodology –isolate buffer insertion from block implementations –improve routing area resources (RAR) utilization RAR(2k-buffer block) = RAR(k-buffer block) For high-end designs 1.6 Buffer block planning [Cong+99] [TangW00] –given block placement + nets –find shape and location of BBs Global buffering via BBs –given nets + BB locations and capacities –find buffered routing for each net
3
Global Buffering via Buffer Blocks
4
Global Buffering Problem Given: Pin & BB locations, BB capacities list of 2-pin nets, each net has upper-bound on #buffers parity requirement on #buffers [non-negative weight (criticality coefficient)] L/U bounds on wirelength b/w consecutive buffers/pins Find: buffered routing of a maximum [weighted] number of nets subject to the given constraints
5
Global Buffering Problem Given: Pin & BB locations, BB capacities list of 2-pin nets, each net has upper-bound on #buffers new parity requirement on #buffers new [non-negative weight (criticality coefficient)] new L/U bounds on wirelength b/w consecutive buffers/pins Find: buffered routing of a maximum [weighted] number of nets subject to the given constraints Previous work: 1 buffer per connection, no weights
6
Outline of Results Provably good algorithm for the Global Buffering Problem –integer node-capacitated multi-commodity flow (MCF) formulation –approximation algorithm for solving fractional relaxation –provably good randomized rounding based on [RaghavanT87] –allows tradeoff between run-time and solution quality Fast heuristic based on ideas from the approximation algorithm superior to simpler greedy approaches almost matches the provably good algorithm for loosely constrained instances
7
Integer Program Formulation
8
High-Level Approach Solve fractional relaxation + rounding –first introduced for global routing [RaghavanT87] –fractional relaxation = node-capacitated multi-commodity flow (MCF) can be solved exactly using Linear Programming (LP) techniques exact LP algorithms are not practical for large instances Key idea: approximate solution to the relaxation –we generalize edge-capacitated MCF approximation of [GargK98, F99] –[GargK98] successfully applied to global routing by [Albrecht00]
9
Approximating the Fractional MCF -MCF algorithm w(v) = , f = 0 For i = 1 to N do For k = 1, …, #nets do Find a shortest path p P for net k While w(p) < min{ 1, (1+2 )^I } do f(p)= f(p) + 1 For every v p do w(v) ( 1 + /c(v) ) * w(v) End For End While End For Output f/N Run time for -approximation =
10
Random walk algorithm [RaghavanT87] –probability of routing a net proportional to net’s flow –probability of choosing an arc proportional to fractional flow along arc –run time = O( #inserted buffers ) –To avoid BB overuse, scale-down fractional flow by 1- before rounding Rounding to an Integer Solution Modifications approximate MCF underestimates optimum few violations + unused BB capacity for large resolve capacity violations by greedily deleting paths greedily route remaining nets using unused BB capacity
11
Implemented Heuristics -MCF w/ greedy enhancement –solve fractional MCF with approximation –round fractional solution via random walks –apply greedy deletion/addition to get feasible solution Greedy –sequentially route nets along shortest available paths 1-shot integer MCF –assign weight w=1 to each BB –repeat until total overused capacity does not decrease for each net find shortest path for each BB r increase weight by factor (1 + usage(r) / cap(r)) – apply greedy deletion/addition to get feasible solution
12
Experimental Setup Test instances extracted from next-generation SGI microprocessor ~4,000 nets U=4,000 m, L=500-2,000 m 50 buffer blocks BB capacity –400 (fully routable instances) –50 (hard instances, 50-60% routable)
13
Fully Routable Instance (4212 nets)
14
Greedy1-Shot
15
Running Time vs. Solution Quality
16
~57% Routable Instance (4212 nets) Greedy1-Shot
17
Conclusions and Ongoing Work Provably good algorithm based on node- capacitated MCF approximation Extensions: –combine global buffering with BB planning combine with compaction
18
Combining with compaction
20
Sum-capacity constraints: cap(BB1) + cap(BB2) const.
21
Conclusions and Ongoing Work Provably good algorithm based on node- capacitated MCF approximation Extensions: –combine global buffering with BB planning combine with compaction –enforce channel capacity constraints –multi-terminal nets (ASPDAC-01)
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.