13.07.2015 Views

Buffering in the Layout Environment - Computer Engineering ...

Buffering in the Layout Environment - Computer Engineering ...

Buffering in the Layout Environment - Computer Engineering ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

(a)(b)Figure 28.15: Given a fixed topology, one can segment wires uniformly via ei<strong>the</strong>r (a) coarse or (b)f<strong>in</strong>er spac<strong>in</strong>g. [18] uses asymmetric segment<strong>in</strong>g (c) based on <strong>the</strong> design characteristics.(c)uniform segment<strong>in</strong>g for a Ste<strong>in</strong>er tree with three s<strong>in</strong>ks and a s<strong>in</strong>gle blockage. For <strong>the</strong>se regionsfor which buffer <strong>in</strong>sertion is forbidden, one simply avoids <strong>in</strong>sert<strong>in</strong>g buffer candidate locations ontop of <strong>the</strong> blockage. In (b), one can f<strong>in</strong>d <strong>the</strong> same uniform segment<strong>in</strong>g scheme, but with f<strong>in</strong>erspac<strong>in</strong>g. The additional buffer <strong>in</strong>sertion locations could potentially improve <strong>the</strong> tim<strong>in</strong>g for <strong>the</strong>buffered net, for additional runtime cost. In (c), one can use roughly <strong>the</strong> same number of buffer<strong>in</strong>sertion candidates as <strong>in</strong> uniform segment<strong>in</strong>g, but spac<strong>in</strong>g <strong>the</strong>m asymmetrically. The purpose isnot to improve tim<strong>in</strong>g performance, but ra<strong>the</strong>r to bias van G<strong>in</strong>neken style algorithm to <strong>in</strong>sert buffers<strong>in</strong> regions of <strong>the</strong> design that are more favorable, such as areas with lower congestion cost.In order to accomplish this buffer candidate selection, [18] applies a l<strong>in</strong>ear time and l<strong>in</strong>earmemory shortest path algorithm. The algorithm constructs a directed acyclic graph (DAG) over<strong>the</strong> set of potential candidate locations and chooses a subset by construct<strong>in</strong>g a shortest path via atopological sort.Let L be <strong>the</strong> maximum allowable tiles <strong>in</strong> <strong>the</strong> tile graph (described <strong>in</strong> Section 4.1) between consecutivebuffers which could be determ<strong>in</strong>ed by a maximum allowable slew constra<strong>in</strong>t. If buffers areplaced at a distance greater than L tiles away, <strong>the</strong>n an electrical violation results or performance issignificantly sacrificed. Based on L, edges are created by connect<strong>in</strong>g <strong>the</strong> tiles which are no greaterthan L tiles away from each o<strong>the</strong>r. The edge represents a pair of consecutive buffer candidates on<strong>the</strong> fixed rout<strong>in</strong>g tree.Moreover, we def<strong>in</strong>e S to be <strong>the</strong> desired number of tiles between consecutive buffer <strong>in</strong>sertion21

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!