Sliding

advertisement
A Study on Unroutable
Placement Recognition
ISPD 2014
Wen-Hao Liu1,2, Tzu-Kai Chien2,
and Ting-Chi Wang2
1Cadence
Design Systems
2National Tsing Hua University, Taiwan
ISPD, 03/31/2014
Outline

Introduction

Unroutable Region Recognition

Window-based Layout Scanning

Window Dimension Determination

Lower Bound of Total Overflow Identification

Experimental Results

Conclusions
ISPD, 03/31/2014
2
Motivation


Routing is difficult and time-consuming
Placement
Routing
hours
days
Routability estimation is critical
This placement is
routable or not?
ISPD, 03/31/2014
3
Motivation

If we can know a placement is unroutable earlier, we
can avoid wasting time on routing the design.

Recently, many routability estimation works are
published, but no one can guarantee a design must be
unroutable
Get an feasible
routing result
Impossible
ISPD, 03/31/2014
4
Objective
• ISPD11, DAC12, and ICCAD12 placement contests release
many placement results to public domain
• For some hard-to-route placements, no global router has
been able to obtain overflow-free routing results so far
• This work attempts to recognize these placements are
routable or not to global routers
ISPD, 03/31/2014
5
Global Routing Model
• A placement will be modeled into a 3D grid graph
• The goal of global routing is to identify global
routing paths to connect each pin of each net
• The objective of global routing is to minimize
overflows and wirelength
3D graph
2
P1
0 P2
3
2D graph
P3
2D routing result
P3
P1
Graph
Compaction
5
P2
ISPD, 03/31/2014
P3
P1
Global
Routing
P2
6
Outline

Introduction

Unroutable Region Recognition

Window-based Layout Scanning

Window Dimension Determination

Lower Bound of Total Overflow Identification

Experimental Results

Conclusions
ISPD, 03/31/2014
7
Unroutable Region
• If any unroutable region exist, the placement must
have no overflow-free routing result
• Given a region R
• S(R) – the set of the
outgoing nets of R
• c(R) – total capacity of the
bridge edges of R
• If |S(R)|>c(R), R is
unroutable because
overflow must happen
ISPD, 03/31/2014
Outgoing net
Intra net
bridge edge
8
Window-based Layout Scanning

We propose a window-based layout scanning algorithm to
find out unroutable regions

This method can find out every region whose dimensions
are not larger than the sliding window

How to decide the window dimension is critical
R1
R5
R3
W=3
R6
R7
R8
H=3
R4
R2
R9
ISPD, 03/31/2014
9
Sliding Window Scanning
• Use a sliding window to scan the entire layout
….
• Explore every possible rectangular region at the bottomleft corner in the sliding window
ISPD, 03/31/2014
10
Fast Unroutable Region Determination
• If |S(R)|>c(R), we can recognize that R is
unroutable. However, how to obtain |S(R)| and c(R)
faster is an issue
• A lookup table is built so that querying c(R) can be
done in a constant time
• S(R3) = S(R1)∪S(R2)−I(R3), where R3 comprises R1
and R2, I(R3) is the set of intra nets in R3
R3
R1
R2
Intra net
ISPD, 03/31/2014
11
Building S(R)
• We explore each rectangular region in a particular order
• When a region is processed, its sub-regions are
processed already
• Thus, the outgoing net set of a region can be obtained by
merging the outgoing net set of its sub-regions
ISPD, 03/31/2014
12
Outline

Introduction

Unroutable Region Recognition

Window-based Layout Scanning

Window Dimension Determination

Lower Bound of Total Overflow Identification

Experimental Results

Conclusions
ISPD, 03/31/2014
13
Window Dimension Determination
• Different widths and heights of a sliding window will largely
impact the recognition rate of unroutable regions
• We propose a two-stage method to decide a width w and a
height h for the sliding window such that w x h ≦ Amax
• Region sampling, and then dimension selection
Unroutable regions
Sliding windows whose areas
are not larger than 9
2
3
4
4
3
2
ISPD, 03/31/2014
Best Dimension
14
Region Sampling
• The goal of this stage is to identify a set of sampling
regions with higher weights
• The weight of a region is the ratio of |S(R)| to c(R)
• Sampling process
• Select n regions whose size is 1x1 with the highest weights
• Expand each selected region iteratively until any extension would
make its area exceed Amax
• Insert the final expanded region and the regions whose weights are
larger than 1 into the sampling region set
0.3
0.9
1.2
ISPD, 03/31/2014
0.8
15
Width and Height Selection
• The goal of the next stage is to decide the window’s
dimension such that the total weight of the sampling
regions covered by the sliding window is maximized
and w x h ≦ Amax
• We present a dynamic programming algorithm to solve
this problem
Amax <= 30
Our
Algorithm
6
5
ISPD, 03/31/2014
16
Outline

Introduction

Unroutable Region Recognition

Window-based Layout Scanning

Window Dimension Determination

Lower Bound of Total Overflow (LBTO) Identification

Experimental Results

Conclusions
ISPD, 03/31/2014
17
LBTO Identification
• The intrinsic overflow of unroutable region R is |S(R)| – c(R)
• If every unroutable region is independent, we can add up
the intrinsic overflow of every region to obtain the LBTO
• If more than one region shares a bridge edge, we only
count the intrinsic overflow of one of the regions
R1
R3
R4
R2
R5
ISPD, 03/31/2014
18
LBTO Identification
• Build a conflict graph, a conflict edge between vi and vj
means that Ri and Rj share at least a bridge edge
• The weight of vi denotes the intrinsic overflow of Ri
• Solve the maximum-weight independent set problem on
the conflict graph to identify LBTO
v1 v
3
v2
v4
v8
ISPD, 03/31/2014
v5
v7
v6 v9
19
Outline

Introduction

Unroutable Region Recognition

Window-based Layout Scanning

Window Dimension Determination

Lower Bound of Total Overflow Identification

Experimental Results

Conclusions
ISPD, 03/31/2014
20
Unroutable Placement Recognition

Select 23 hard-to-route placements from ISPD08
global routing and ISPD11 placement contests

So far no global router can obtain overflow-free routing
results for these hard-to-route testcases
Win’s W x H
5x5
15 x 15
30 x 30
50 x 50
100 x 100
#Uroutable
placements
3
11
13
15
16
#Unroutable
regions
0.2 x 104
2.5 x 104
11.9 x 104
30.3 x 104
137.1 x 104
Time* (sec)
5.62
90
638
3014
25374
*running with 16 threads on 2.4GHz Intel Xeon-based Linux server with 96GB memory
ISPD, 03/31/2014
21
Window Dimension Determination
• We manually set different widths and heights for the
sliding window such that its area is 900 to see the
difference of recognition rates
• Then, we use the proposed method to automatically
determine the window dimension to compare with the
manual method
Window’s
WxH
15 x 60
20 x 45
30 x 30
45 x 20
60 x 15
Auto.
#Uroutable
placements
11
12
13
12
11
13
#Unroutable
regions
13 x 104
6.5 x 104
3.7 x 104
14.8 x 104
14.6 x 104 11.9 x 104
ISPD, 03/31/2014
22
LBTO Identification
• Use NCTUgr to route unroutable placements to see the
gap between the total overflow identified by NCTUgr and
the lower bound of total overflow (LBTO) identified by this
work
The placements with
small total overflow gap
The placements with
large total overflow gap
ISPD, 03/31/2014
23
Outline

Introduction

Unroutable Region Recognition

Window-based Layout Scanning

Window Dimension Determination

Lower Bound of Total Overflow Identification

Experimental Results

Conclusions
ISPD, 03/31/2014
24
Conclusions

We propose a window-based layout scanning algorithm
to recognize unroutable regions

The proposed two-stage method can identify a good
window dimension for the sliding window


Region sampling

Window dimension selection
This work uses a maximum-weight independent set
algorithm to identify the lower bound of total overflow
for unroutable layouts
ISPD, 03/31/2014
25
ISPD, 03/31/2014
26
Solving MWIS Problem
• We adopt a heuristic algorithm to solve MWIS problem
• Sort nodes based on the following scoring function in
a nonincreasing order
s (vi )  w (vi )   
 ( v i , v j ) CG
w (v j )
(α is set to 0.1 )
• Select each unmarked node one-by-one and mark its
neighbors.
• If a node is marked, it will not be selected.
• If more powerful MWIS algorithm is adopted, tighter
LBTO can be obtained
ISPD, 03/31/2014
27
Download