Title: NTUplace: A Partitioning Based Placement Algorithm for LargeScale Designs
1NTUplace A Partitioning Based Placement
Algorithm for Large-Scale Designs
- Tung-Chieh Chen1, Tien-Chang Hsu1, Zhe-Wei
Jiang1, and Yao-Wen Chang1,2 - Graduate Institute of Electronics Engineering1
- Department of Electrical Engineering2
- National Taiwan University
- Taipei, Taiwan
- April 6, 2005
2Outline
- Introduction
- Global placement
- HPWL modeling with min-cut
- Whitespace management
- Look-ahead partitioning
- Legalization
- Detailed placement
- Matching based detailed placement
- Results
3Introduction
- NTUplace is based on the min-cut partitioning
technique. - Algorithm
Wirelength modeling with
min-cut Whitespace management Look-ahead
partitioning
Global Placement
Legalization
Detailed Placement
Matching based detailed placement
4HPWL Modeling with Min-Cut
- The HPWL (half-perimeter wirelength) is exactly
modeled with the min-cut objective. - Finding the min-cut is equivalent to finding the
minimum HPWL. - The idea is similar to the Bounding Box aware
Terminal Propagation (BBTP) in the TheTo placer - Selvakkumaran and Karypis, Technical Report
04-040, Univ. of Minnesota. Oct. 2004. - They use 7 cases to discuss the HPWL modeling.
- We derive a unified method for the modeling.
- Our method can be applied to the diagonal-bin
repartitioning. - TheTo might need to consider tens of cases.
5Net-Weight Assignment (1/2)
- For each net, we compute three HPWL values.
- Consider the case for a net with 2 fixed pins and
2 movable cells, and the x-range of the 2 pins is
within that of the 2 cells and the center of the
left partition is closer to the x-range - w1 the wirelength when the 2 cells are at the
left side - w2 the wirelength when the 2 cells are at the
right side, - w12 the wirelength when the 2 cells are at
different sides. - Here, w12 gt w2 gt w1
X-range
2 cells are at the right side.
2 cells are at different side.
2 cells are at the left side.
6Net-Weight Assignment (2/2)
- Introduce a partitioning graph (hypergraph) and
two fixed nodes to represent the two sides. - Add two hyperedges into the graph.
- Since w2 gt w1, assign the weight of the hyperedge
e1 between the cells and the left fixed node be
(w2-w1). - Assign the weight of the hyperedge e2 between the
two cells be (w12-w2). - Partition the resulting hypergraph to decide the
cell/node partition.
7Three Possible Partitioning Results
Movable node
weight(e1) (w2-w1)
weight(e2) (w12-w2)
Left fixed node
Right fixed node
Movable node
1
3
2
8Relationship Between HPWL and Cutsize
1
2
3
ncut weight(e1) weight(e2) (w12-w2)
(w2-w1) (w12-w1)
ncut weight(e1) (w2-w1)
ncut 0
HPWL w1 w1 ncut
HPWL w12 w1 ncut
HPWL w2 w1 ncut
All three cases HPWL w1 ncut
9Relationship Between HPWL and Cutsize
- Theorem HPWL w1 ncut.
- Then, we have
- Finding the minimum HPWL is equivalent to
finding the min-cut.
(Constant)
10Whitespace Management (1/2)
- Traditional min-cut placers uniformly distribute
whitespace and tend to produce excessive
wirelength when the whitespace is large. - Adya, Markov, Villarrubia use filler (dummy)
cells to control the whitespace allocation
ICCAD-03. - Add dummy cells to increase the utilization.
Whitespace is distributed according to the dummy
cell locations. - However, their method tend to increase the number
of cells, leading to longer running time and
larger memory usage.
11Whitespace Management (2/2)
- We directly control the balance criteria during
partitioning using the available free space. - Relaxing the balance criteria leads to smaller
cutsize and thus smaller wirelength. - The balance criterion satisfies that the
utilization of each partition is less than or
equal to 1. - The criterion is fed into the partitioner to
allocate whitespace.
Uniform whitespace distribution
Left partition Utilization 1.0
Right partition Utilization 1.0
Block Area
Block Area
Left util. 1, right util. lt 1
Both util. lt 1
Left util. lt 1, right util. 1
12Look-Ahead Partitioning
- Simplify the idea in Cong et al., Fast
floorplanning by look-ahead enabled recursive
bipartitioning, ASPDAC-2005. - Use the first-fit bin-packing heuristic to check
if the subpartition can be legalized. - Increase the chance of legalizing macro blocks.
- If the subpartition cannot be legalized, we move
the cutline and redo the partitioning.
Re-partition
Legalization Fails
Legalization Succeeds
13Legalization
- Place all cells in the rows to obtain a feasible
solution. - Place cells into their nearest rows.
- Sort all standard cells according to their sizes,
from the largest to the smallest. - Assign the x-coordinates for all cells according
to the sorted order. If overlap occurs, we will
find a nearest empty slot to place the cell.
2
3
4
1
5
Place cells into nearest rows
Place cells one-by-one
14Detailed Placement
- Is based on cell location assignment (matching).
- Each cell has different costs atdifferent
locations. - Minimize total cost O(n3) time for n cells
- Is better than O(n!) time for a branch bound
(BB) detailed placer - Can use a much larger window (gt 64 cells)
1
2
3
A
B
C
15Old Results
- Old results in the ISPD-05 proceedings.
On a Pentium 4 3.2GHz PC
16New Results from the Enhanced Methods
- Enhance our placer with matching based detailed
placement and other schemes (e.g.,
repartitioning). - Improve the published HPWL by 10.
17- Thank you for your attention!