Transcript 1 - NTU EDA

Novel Wire Density Driven Full-Chip
Routing for CMP Variation Control
Huang-Yu Chen†, Szu-Jui Chou†,
Sheng-Lung Wang‡, and Yao-Wen Chang†
†National Taiwan University, Taiwan
‡Synopsys, Inc, Taiwan
Outline

CMP Introduction

Previous Work

Wire-Density Driven Two-Pass Top-Down Routing

Experimental Results

Conclusion
2
Outline

CMP Introduction

Previous Work

Wire-Density Driven Two-Pass Top-Down Routing

Experimental Results

Conclusion
3
Cu Damascene Process

The Cu metallization (Damascene) contains two main
steps: electroplating (ECP) and chemical-mechanical
polishing (CMP)



ECP: deposits Cu on the trenches
CMP: removes Cu that overfills the trenches
Great interconnect performance and systematic yield
loss are observed after CMP
Open trenches
ECP
CMP
4
CMP Process

CMP contains both chemical and mechanical parts


Chemically: abrasive slurry dissolves the wafer layer
Mechanically: a dynamic polishing head presses pad and wafer
Polishing head
Slurry
Polishing pad
Wafer
Schematic diagram of CMP polisher
5
Layout-Dependent Thickness Variations

Post-CMP topography strongly depends on underlying
layout pattern density
slurry
polishing pad
metal
dielectric
Oxide
Pre-CMP

Post-CMP
Uneven layout density leads to metal dishing and
dielectric erosion after CMP
dishing
erosion
dielectric
metal
6
Layout Pattern Density Control

Foundries have set density rules and filled dummy
features to improve CMP quality
wire
dummy

Disadvantages of dummy fills:
1. Changes coupling capacitance of interconnects
2. Leads to explosion of mask data, putting heavy burdens to
following time-consuming RETs

Routing considering uniform wire density helps control
the layout pattern density

Avoid aggressive post-routing dummy fills
7
Outline

CMP Introduction

Previous Work

Wire-Density Driven Two-Pass Top-Down Routing

Experimental Results

Conclusion
8
Minimum Pin Density Global Routing


Cho et al. [ICCAD’06] selected paths with minimum pin
density to reduce maximum wire density in global tiles
Paths with lower pin density tend to have lower wire
density and can get much benefit from optimization
p1
T
p1
S
p2
S
2 possible 1-bend ST paths
T
Select
p1 withdensity
lower
Path
a path
with lower
pin density
9
Wire Density-Driven Cost Function

Li et al. [TCAD’07] set the cost function of a global tile t
to guide a wire density-driven global router:
1

 [( ct /  )dt ]
cost(t )   2

1

ct
: capacity of t
dt

: demand of t
cost(t )
dt  (ct /  )
dt  (ct /  )
1
ct

dt
: parameter of target density (=4 for 25% target density)
10
Limitations


Both approaches only consider the wire density inside a
routing tile
It may incur larger inter-tile density difference
 results in irregular post-CMP thickness variations
Density = 0.4 Density = 0.1
Post-CMP Thickness
Need to minimize the density
difference among global tiles
11
Outline

CMP Introduction

Previous Work

Wire-Density Driven Two-Pass Top-Down Routing

Experimental Results

Conclusion
12
Multilevel Routing


A modern chip may contain billions of transistors and
millions of nets
Multilevel routing has been proposed to handle largescale designs
To-be-routed net
‧global routing
‧detailed routing
Already-routed net
‧failed nets rerouting
‧refinement
coarsening
uncoarsening
Λ-shaped multilevel routing
13
Two-Pass Top-Down Routing Framework
To-be-routed net
Already-routed net
G2
G2
uncoarsening
uncoarsening
G1
G1
G0
G0
high
low
Prerouting Stage
Voronoi-diagram
based density
critical area
analysis (CAA)
1st Pass Stage
Intermediate Stage
PlanarizationDensity-driven layer
aware top-down assignment and
global routing
Delaunay-triangulation
track assignment
2nd Pass Stage
Top-down
detailed routing
and refinement
14
Top-Down Routing Approach
1. Planarity is a long-range effect
2. Longer nets shall be planned first


greater impacts/determination for density
usually hard to predict paths
G2
G1
G0
3. Bottom-up routing easily falls into local optima

over density may occur among subregions
?
?
?
?
Bottom-up routing
Over density
among subregions
15
Density Analysis Prerouting
To-be-routed net
Already-routed net
G2
G2
uncoarsening
uncoarsening
G1
G1
G0
G0
high
low
Prerouting Stage
Voronoi-diagram
based density
critical area
analysis (CAA)
1st Pass Stage
Intermediate Stage
PlanarizationDensity-driven layer
aware top-down assignment and
global routing
Delaunay-triangulation
track assignment
2nd Pass Stage
Top-down
detailed routing
and refinement
16
Density Critical Area Analysis (CAA)


Performs density analysis to guide following routing
Given a routing instance, we predict density hot spots
based on the pin distribution by Voronoi diagrams
17
Voronoi Diagram

The Voronoi diagram of a point set decomposes space
into non-overlapping Voronoi cells

If a point q lies in the Voronoi cell of p, then q would be close to p
than other points
p
q
18
Observation of Voronoi Diagrams

Non-uniform distribution leads to large area variation
among Voronoi cells
Non-uniform distribution
Uniform distribution
19
Density Hot Spots Identification


If the Voronoi cell of a pin has more adjacent cells,
density hot spots may occur around it
Define pin density of a pin p as # of adjacent Voronoi
cells completely sitting inside a range from p
pin density = 3
p
20
Global Tile Predicted Density


Map pin density to global tiles to guide global routing
The predicted density of a global tile t:
= max{ pin density | pin locates within t }
1
2
2
1
2
1
2
2
0
3
1
0
1
0
1
3
2
1
1
1
Pin density
Predicted density of global tile
21
1st Pass Top-Down Global Routing
To-be-routed net
Already-routed net
G2
G2
uncoarsening
uncoarsening
G1
G1
G0
G0
high
low
Prerouting Stage
Voronoi-diagram
based density
critical area
analysis (CAA)
1st Pass Stage
Intermediate Stage
PlanarizationDensity-driven layer
aware top-down assignment and
global routing
Delaunay-triangulation
track assignment
2nd Pass Stage
Top-down
detailed routing
and refinement
22
Planarization-Aware Global Routing

Objectives:
1. Encourage each global tile to satisfy density upper- and
lower-bound rules
2. Minimize the density difference among global tiles
0.1
0.3
0.2
0.2
0.5
0.1
0.4
0.2
0.3
Density = 0.5 Density = 0.1
Wire density map
Density = 0.2
Post-CMP Thickness
23
Planarization-Aware Cost Function

Planarization-aware cost of global tile t with density dt:


 dt
dt  (2 1)   (dt  dt )2



if dt  upper bound
if lower bound  dt  upper bound
if dt  lower bound
: predicted density of t (prerouting density CAA)
  : positive penalty (> 0)
 : negative reward (< 0)
dt : average density of tiles around t
 : user-define parameter
24
Intermediate Layer/Track Assignment
To-be-routed net
Already-routed net
G2
G2
uncoarsening
uncoarsening
G1
G1
G0
G0
high
low
Prerouting Stage
Voronoi-diagram
based density
critical area
analysis (CAA)
1st Pass Stage
Intermediate Stage
PlanarizationDensity-driven layer
aware top-down assignment and
global routing
Delaunay-triangulation
track assignment
2nd Pass Stage
Top-down
detailed routing
and refinement
25
Density-Driven Layer Assignment


Goal: to evenly distribute segments to layers
Minimizes the panel density while balancing the local
density of each layer


local density: # of segments and obstacles in a column
panel density: maximum local density among all columns
s1
s4
s6
s2
s5
s3
Chip layout
(aerial view)
1
2
3
4
Column c1
Local density 1
Segment
o2
o1
c2
c3
c4
c5
c6
c7
c8
c9
2
3
2
2
2
3
2
4
Layer 1 obstacle
c10 c11
4
Layer 3 obstacle
2
26
Density-Driven Layer Partitioning

Builds horizontal constraint graph HCG(V,E)



Node: segment and obstacle
Cost of an edge (vi, vj): maximum local density of overlapping
columns between vi and vj
Partitions layer groups by max-cut, k-coloring algorithms
s1
s4
s6
s2
s5
s3
1
2
3
4
Column c1
Local density 1
s6
o2
c3
c4
c5
c6
c7
c8
c9
2
3
2
2
2
3
2
4
4
1
4
4
o1 3
c10 c11
1
1
4
c2
s2
3
2
4
o1
s1
3
3
3
4
3
s5
1
4
3
3
o2
s3
3
s4
2
27
Minimum-Impact Repair Procedure


For the fixed-layer obstacle which is not assigned to the
correct layer
Exchanges its layer with the layer of a connected
segment whose edge cost is the maximum
s6
s1
s2
s1
s2
1
1
1
1
2
1
4
o1 3
3
3
o2
s6
3
3
o2
o1 1
1
s3
3
4
1
3
s5
4
3
s4
3
s3
3
s5
3
s4
Exchange layer of obstacle O1 with that of S6
28
Density-Driven Layer Assignment Result
s1
s4
s6
s2
s5
s3
1
2
3
4
Segment
o2
o1
Column c1
Local density 1
c2
c3
c4
c5
c6
c7
c8
c9
2
3
2
2
2
3
2
4
s1
1
2
3
4
1
2
3
4
s3
o1
s2
mn
c1
c2
c3
c4
c5
c6
c7
c8
c9
ity
1
1
2
1
1
1
1
1
2
Layer 1
c10
c10 c11
4
Layer 3 obstacle
2
s6
o2
s4
Segment
s5
cColumn
c1 1 cobstacle
c3
11
2
Layer
2
0density
Local
Layer 1 obstacle
0
1
1
c4
c5
c6
c7
c8
c9
c10
c11
1
1
1
2
1
2
2
2
Layer 3
29
Density-Driven Track Assignment


Goal: to keep segments spatially separated in a panel
Uses good properties of Delaunay Triangulation (DT)


Represents each segment by three points, two end points and
one center point, and analyzes the DT
Non-uniform segment distribution  large area difference
among triangles in DT
Non-uniform distribution
Uniform distribution
30
Artificial Segment

Model the density distribution of each neighboring panel
into an artificial segment lying on the boundary


Au
Ab
u1
1
2
3
4
1
2
A
3
4
1
2
3
4
Length: the average occupied length per track
Center: the center of gravity of all segments and obstacles
u3
u2
u4
s1
s3
o1
s2
Au
1
2
A
3
4
b1
b3
b2
Segment
Ab
u1
1
2
3
4
1
2
3
4
Artificial segment
u3
u2
u4
su
s1
s3
o1
s2
b1
sb
b3
b2
Layer 1 obstacle
31
Delaunay-Triangulation Track Assignment

Define flexibility of a segment si,  ( si )  ti 


ti: number of assignable tracks for si
li: length of si
1
li

Insert segments in the non-decreasing order of flexibility
 Each segment is assigned to the track that minimizes the
area difference among all triangles of DT
s1
1
2
3
4
s2
s3
su
ξ(s1) = 4+1/2 = 4.5
o1
sb
ξ(s2) = 4+1/1 = 5
ξ(s3) = 3+1/8 = 3.125
32
A Density-Driven Track Assignment Example
1
2
3
4
s3
1
2
3
4
s3
ξ(s1) = 4.5
o1
o1
ξ(s1) = 4.5
s2
su
1
2
3
4
ξ(s2) = 4
Segment
s3
s1
Artificial segment
o1
s2
sb
Layer 1 obstacle
33
Outline

CMP Introduction

Previous Work

Wire-Density Driven Two-Pass Top-Down Routing

Experimental Results

Conclusion
34
Experimental Setting

C++ language with LEDA library on a 1.2 GHz Sun
Blade-2000 with 8GB memory

Compared our two-pass, top-down routing system (TTR)
with MROR [Li et al., TCAD’07]

Λ-shaped multilevel router considering balanced density
 Compared the density-CAA guided global routing of TTR
with CMP-aware minimum pin-density global routing
[Cho et al., ICCAD’06]

Minimum pin-density global routing + TTR detailed routing
35
Routing Benchmarks


Academic: eleven MCNC benchmarks
Industrial: five Faraday benchmarks
Circuit #Layer #Connection
#Pin
Mcc1
4
1693
3101
Mcc2
4
7541
25024
Struct
3
3551
5471
Primary1
3
2037
2941
DMA
6
36162
73982
Primary2
3
8197
11226
DSP1
6
63495
144872
S5378
3
3124
4818
DSP2
6
36686
144703
S9234
3
2774
4260
RISC1
6
95106
196677
RISC2
6
95099
196670
S13207
3
6995
10776
S15850
3
8321
12793
S38417
3
21035
32344
S38584
3
28177
42931
Circuit #Layer #Connection
#Pin
Faraday benchmarks
MCNC benchmarks
36
Comparison Metric

Comparison is based on the same metric used in the
work of MROR [TCAD’07]






#Netmax: maximum # of nets crossing a tile
#Netavg_h: average # of nets horizontally crossing a tile
#Netavg_v: average # of nets vertically crossing a tile
σh: standard deviation of # of nets horizontally crossing a tile
σv: standard deviation of # of nets vertically crossing a tile
Reflects the wire density distribution for a routing result
37
Experimental Results (MCNC)


All three routers achieved 100% routability
TTR reduced



#Netmax by 43% than TCAD’07 and 11% than ICCAD’06
#Netavg_v by 34% than TCAD’07 and 5% than ICCAD’06
#Netavg_h by 36% than TCAD’07 and 11% than ICCAD’06
MROR (TCAD'07)
Circuit
#Netmax #Netavg_v #Netavg_h
GR (ICCAD'06) + TTR framework
Time
(sec)
#Netmax #Netavg_v #Netavg_h
Time
(sec)
TTR (Ours)
#Netmax #Netavg_v #Netavg_h
Time
(sec)
Mcc1
45
9.9
11.3
77.4
41
10.3
11.1
36.1
30
10.3
11.0
33.4
Mcc2
96
18.7
20.9
2714.9
119
20.6
22.2
798.0
87
20.5
22.2
645.0
Struct
7
1.4
1.4
61.4
5
1.2
0.8
66.8
6
1.1
0.8
58.2
Primary1
15
0.7
0.6
69.1
12
0.8
0.7
27.0
6
0.7
0.3
24.3
Primary2
25
2.1
1.9
322.2
22
2.5
1.9
144.0
8
1.8
0.9
131.0
S5378
15
4.4
3.5
4.5
8
2.5
2.4
8.1
9
2.5
2.4
8.2
S9234
14
4.0
2.6
3.2
7
1.7
1.6
5.2
9
1.7
1.6
5.4
S13207
27
9.3
5.9
15.8
13
3.4
3.0
24.8
11
3.3
3.0
24.2
S15850
26
10.3
7.4
23.8
12
4.0
3.8
34.2
13
3.9
3.8
33.5
S38417
23
7.3
4.3
54.2
10
3.0
2.4
62.5
11
2.9
2.4
62.4
S38584
29
9.1
5.8
137.7
16
3.3
3.1
112.0
15
3.3
3.1
112.0
Comp.
1.00
1.00
1.00
1.00
0.68
0.71
0.75
1.01
0.57
0.66
0.64
0.98
38
Vertical Wire Crossing of S13207
30
25
MROR
[TCAD’07]
20
15
10
5
0
30
25
GR [ICCAD’06]
+TTR framework
20
15
10
5
0
30
25
TTR (Ours)
20
15
10
5
0
39
Experimental Results (Faraday)
MROR [TCAD’07] cannot run designs where pins are
distributed between layers 1 and 3
 TTR reduced




#Netmax by 25% than ICCAD’06
#Netavg_v by 2% than ICCAD’06
#Netavg_h by 2% than ICCAD’06
GR (ICCAD'06) + TTR framework
Circuit
DMA
Rout. #Netmax #Netavg_v #Netavg_h
σv
σh
TTR (Ours)
Time
(sec)
Rout. #Netmax #Netavg_v #Netavg_h
σv
σh
Time
(sec)
99.19%
14
3.14
2.77
1.70 1.77
48.8
99.29%
10
3.08
2.70
1.75
1.64
47.0
DSP1 99.11%
11
2.91
2.50
1.95 1.89
124.2
99.18%
10
2.85
2.44
2.24
1.95
117.3
DSP2 99.10%
14
2.78
2.78
1.71 1.92
87.2
99.06%
10
2.72
2.70
1.90
1.91
82.3
RISC1 99.16%
21
3.63
3.79
2.95 3.78
355.3
99.16%
17
3.59
3.73
3.08
3.29
333.4
RISC2 99.23%
21
3.64
3.70
2.55 3.08
297.4
99.19%
13
3.59
3.62
2.77
2.89
280.0
Comp. 99.16%
1.00
1.00
1.00
1.00 1.00
1.00
99.16%
0.75
0.98
0.98
1.08
0.95
0.95
40
Horizontal Wire Crossing of RISC1
GR [ICCAD’06]
+TTR detailed routing
TTR (Ours)
41
Outline

CMP Introduction

Previous Work

Wire-Density Driven Two-Pass Top-Down Routing

Experimental Results

Conclusion
42
Conclusion

Proposed a new full-chip density-driven routing system
for CMP variation control
1. Voronoi-diagram based density CAA prerouting
2. Planarization-aware top-down global routing
3. Density-driven layer assignment + Delaunay-triangulation
based track assignment
4. Top-down detailed routing

Reduced 43% and 11% maximum wire crossing on
density tiles and achieved more balanced wire
distribution than state-of-the-art previous works
43
Q&A
Thanks for your attention!
44