A new Incremental Placement Algorithm and its application to CongestionAware Divisor Extraction - PowerPoint PPT Presentation

1 / 39
About This Presentation
Title:

A new Incremental Placement Algorithm and its application to CongestionAware Divisor Extraction

Description:

Two different back-ends. Only layout-aware step i.e. layout-aware only locally. Both earlier and later steps do not use any layout information ... – PowerPoint PPT presentation

Number of Views:23
Avg rating:3.0/5.0
Slides: 40
Provided by: www2I
Category:

less

Transcript and Presenter's Notes

Title: A new Incremental Placement Algorithm and its application to CongestionAware Divisor Extraction


1
A new Incremental Placement Algorithm and its
application toCongestion-Aware Divisor Extraction
  • Satrajit Chatterjee (satrajit_at_cs.berkeley.edu)
  • Robert Brayton (brayton_at_eecs.berkeley.edu)

ICCAD / Nov 9th 2004
2
Outline
  • Motivation
  • General Approaches
  • Layout-Aware Decomposition
  • Example
  • Algorithm
  • Experimental Results
  • Conclusions

3
The Problem Wires
  • Timing Closure
  • Wire delays are a significant fraction of the
    total circuit delay
  • Routing Difficulty
  • Designs are increasing in wiring complexity
  • Wire not scaling as much as logic
  • Tighter timing constraints on routes
  • Because delays from wires are significant

4
The Problem Flow
5
Approaches to Placement-Aware Synthesis
2
1
  • Maintaining point placement through-out the flow
  • Pedram and Bhat 91
  • Gosti et al. 01
  • Kutzschebauch
  • and Stok 02

Structural (graph) properties of netlists Kudva
et al. 02
Empirical study
Timing Closure
Congestion
6
Approaches to Placement-Aware Synthesis
2
1
  • Maintaining point placement through-out the flow
  • Pedram and Bhat 91
  • Gosti et al. 01
  • Kutzschebauch
  • and Stok 02

Structural (graph) properties of netlists Kudva
et al. 02
Empirical study
This Work
Timing Closure
Focus Improving routability Approach Maintain
point-placement of netlist during decomposition
(All other logic optimization and mapping is not
layout aware)
7
Approaches to Placement-Aware Synthesis
2
1
  • Maintaining point placement through-out the flow
  • Pedram and Bhat 91
  • Gosti et al. 01
  • Kutzschebauch
  • and Stok 02

Structural (graph) properties of netlists Kudva
et al. 02
Empirical study
We look at common divisor extraction since that
leads to large changes in the netlist
This Work
Timing Closure
Focus Improving routability Approach Maintain
point-placement of netlist during decomposition
(All other logic optimization and mapping is not
layout aware)
8
Conventional Extraction A Review
The Fast-extract algorithm
  • Make a list of candidate divisors
  • While good divisors exist
  • Pick the divisor with highest literal-gain
  • Perform division
  • Update gains of all affected divisors

No looking at wires
literal-gain reduction in num of literals if
divisor is used
Example



9
Layout-Aware Extraction
  • Associate a point placement (x, y) with each node
    of the netlist

Use this to estimate wire-lengths using HPWL model
Use wire-length estimates to drive extraction
10
An Example
  • Same literal savings, but for wire-length A is
    better than B

A
B
Some divisors are better for wire-length than
others i.e. have better wire-gain than
others So in this example, wire-gain(t) gt
wire-gain(u)
11
Cost Function
  • gain(d) kwire-gain(d) (1 k)literal-gain(d)

conventional literal savings
new wire-length savings
  • When k 0 it is the same as conventional
    extraction
  • When k 1 it is completely wire-length driven

12
Computing the wire-gain
  • Wire-gain of a divisor depends on where it is
    placed

a
a
tx
tx
tab
c
bcy
c
bcy
tab
tc
tc
b
b
We place the new divisor optimally where the
increase in the total HPWL is minimum
13
Division Illustrated
Expand
divisor d
Shrink
wire-gain(d) total wirelength before shrink
total wirelength after expand
Reduction in wirelength if d is used
To maximize wire-gain, we want to minimize
expansion of bounding boxes
14
Problem Abstraction
Where to place P so that expansion is minimum?
P(x,y)
15
Problem is Separable
  • The semi-perimeter of each rectangle is the sum
    of the vertical component and the horizontal
    component.
  • If the y-coordinate of P is changed, the
    horizontal components of cost doesnt change.

cost (x, y) costx(x) costy(y)
Can minimize costx(x) and costy(y) independently
16
Some analysis ..
  • .. that we shall skip and explain the algorithm
    directly with an example

17
An example
y-coordinate
What is the y-coordinate that minimizes the
vertical expansion of the rectangles?
18
The Algorithm
y-coordinate
1
2
3
4
5
(12, 12) is optimal region
6
7
8
9
10
11
12
Step 1 Sort edges in order of increasing
y-coordinate Step 2 Compute the median points
that is region of optimality
19
The Algorithm
y-coordinate
1
2
3
4
5
Subtract bottom edges above median
-4
-4
12
6
7
8
9
Add top edges below median
18
10
22
11
12
Optimal Cost
Step 3 Total cost of expansion is just sum of
y-coordinates with suitable signs!
20
Layout-aware Extraction Algorithm
  • Place given netlist
  • Make a list of candidate divisors
  • For each candidate divisor d compute optimum
    location and
  • gain(d) kwire-gain(d) (1
    k)literal-gain(d)
  • While good divisors exist
  • Pick the divisor with highest gain
  • Perform division
  • Update gains of all affected divisors
  • Every 500 iterations re-place the current
    netlist and update gains

21
Experimental Flow
Technology Mapping for Area in SIS
Technology Independent
sweep eliminate simplify eliminate sweep eliminate
5 simplify fx / lx-0.5 / lx-1.0 sweep eliminate s
weep mfs w 22
Two different back-ends
Congestion Driven Placement
Wire-length Driven Placement
Global Routing
Measure Congestion
22
Experimental Flow

Technology Mapping for Area in SIS
  • Only layout-aware step i.e. layout-aware only
    locally
  • Both earlier and later steps do not use any
    layout information
  • So the final placement step regenerates the
    placement information from scratch

Technology Independent
sweep eliminate simplify eliminate sweep eliminate
5 simplify sweep eliminate sweep mfs w 22
Two different back-ends
Congestion Driven Placement
Wire-length Driven Placement
lx-0.5 means k 0.5
fx / lx-0.5 / lx-1.0
gain(d) kwire-gain(d) (1
k)literal-gain(d)
Global Routing
Measure Congestion
23
Experimental Flow
Technology Mapping for Area in SIS
Technology Independent
sweep eliminate simplify eliminate sweep eliminate
5 simplify fx / lx-0.5 / lx-1.0 sweep eliminate s
weep mfs w 22
Two different back-ends
Congestion Driven Placement
Wire-length Driven Placement
Global Routing
Measure Congestion
24
Results Congestion Driven Placement
  • Measure of congestion is the percentage of
    over-capacity cells during routing
  • Wirelength doesnt go down much since placement
    is congestion-driven
  • Area goes down slightly (even assuming constant
    whitespace)

25
Results Wire-length Driven Placement
  • Measure of congestion is the maximum number of
    nets crossing a cell edge
  • Wirelength doesnt go down much in lx-1.0 because
    of placer instability
  • Area goes down slightly (even assuming constant
    whitespace)

26
Variation in k
Vary k to get different netlists
gain(d) kwire-gain(d) (1
k)literal-gain(d)
Measure number of literals
27
Variation in k
  • Even in purely wire-length driven mode, literals
    does not increase much
  • Usually literals decreases (compared to purely
    literal-driven approach) but not always
  • Doesnt look like it is due to scheduling
    randomization

28
Variation in k
40
Congestion
6
Number of literals
Two netlists with approximately same size, but
one has about 40 less congestion than the other
Connection with structural metrics like adhesion?
29
Conclusions
  • Layout-aware decomposition at the technology
    independent level can significantly reduce
    congestion
  • About 20 reduction on average is seen for
    percentage of over capacity global router cells
  • No area penalty (usually even fewer literals)
  • Only one step in the technology independent flow
    was layout-aware yet it worked
  • Need to explore connection with structural metrics

30
The End
31
Additional Slides
32
COG and optimal location can be very different
33
Development of the Algorithm
34
Some Results
  • Separability
  • The semi-perimeter of each rectangle is the sum
    of the vertical component and the horizontal
    component.
  • If the y-coordinate of P is changed, the
    horizontal components of cost doesnt change.

cost (x, y) costx(x) costy(y)
35
Some Results
  • Convexity of costx(x)
  • Sum of piece-wise linear convex functions
  • Contiguous optimum region
  • Optima occur on projections of the edges


Costx

x
36
Some Results
  • Claim Number of rectangles entirely on one side
    of the optimum region equals number of rectangles
    entirely on the other side.
  • Proof Suppose not. Then by moving from the
    optimum region towards the side with more
    rectangles we can reduce the cost. Contradiction.

37
Some Results
  • Claim If Yy1, .. y2m is the ordered list of
    projections then (ym, ym1) are the y-coordinates
    of the endpoints of the optimum region.
  • Proof
  • Every rectangle lies either entirely above,
    entirely below or straddles the optimum region.
  • Number above Number below.
  • Every straddler contributes one coordinate to
    above and below

Looking at costy(y)
y1
y1
..
y6
(This proof assumes that all the projected points
are distinct, but can be easily extended to the
general case.)
38
Algorithm
  • Determining optimum region easy
  • Compute the median of the projections of the
    edges
  • How to find cost of optimum region?

Inside the optimum region Nabove Nbelow, so
39
Algorithm Y-Optimum Region
Input List L of tuples (y, t) Projection of
horizontal edges indicating begin whether
top or bottom edge i 1, cost 0 m
length(L) / 2 for each (y, t) in L in order
do if (i m and t bottom) then cost
cost y else if (i m 1 and t top)
then cost cost y end if if (i m)
then yopt y else if (i m 1) then
yopt y end if i i 1 end for return
((yopt, yopt), cost) end
Write a Comment
User Comments (0)
About PowerShow.com