Monte-Carlo Methods for Chemical-Mechanical Planarization on
Multiple-Layer and Dual-Material Models
Monte-Carlo Methods for Chemical-Mechanical Planarization on
Multiple-Layer and Dual-Material Models
Supported by Cadence Design Systems, Inc.,NSF, the Packard Foundation, and
State of Georgia’s Yamacraw Initiative
Y. ChenY. Chen,, A. B. Kahng, G. Robins, A. ZelikovskyA. B. Kahng, G. Robins, A. Zelikovsky
(UCLA, UCSD, UVA and GSU)(UCLA, UCSD, UVA and GSU)
http://vlsicad.ucsd.eduhttp://vlsicad.ucsd.edu
OutlineOutline
Layout Density Control for CMP
Our Contributions
STI Dual-Material Dummy Fill
Multiple-layer Oxide CMP Dummy Fill
Summary and Future Research
CMP and Interlevel Dielectric ThicknessCMP and Interlevel Dielectric Thickness
Chemical-Mechanical Planarization (CMP) = wafer surface planarization
Uneven features cause polishing pad to deform
Dummyfeatures ILD thickness
Interlevel-dielectric (ILD) thickness feature density Insert dummy features to decrease variation
ILD thicknessFeatures
Layout Density ModelLayout Density Model Effective Density Model
window density weighted sum of tiles' feature area
weights decrease from center tile to neighboring tiles
Filling ProblemFilling Problem
Given rule-correct layout in n n region
upper bound U on tile density
Fill layout subject to the given constraints
Min-Var objective
minimize density variation subject to upper bound
Min-Fill objective
minimize total amount of filling subject to fixed density variation
LP and Monte-Carlo MethodsLP and Monte-Carlo Methods
Single-layer fill problem linear programming problem
impractical runtime for large layouts
essential rounding error for small tiles
Monte-Carlo method (accurate and efficient) calculate priority of each tile according to its effective
density higher priority of a tile higher probability to be filled pick the tile for next filling randomly if the tile is overfilled, lock all neighboring tiles update priorities of all neighboring tiles
OutlineOutline
Layout Density Control for CMP
Our Contributions new Monte-Carlo methods for STI Min-Var and Min-Fill
objectives LP formulations for a new multiple-layer fill objective new Monte-Carlo methods for multiple-layer fill problem
STI Dual-Material Dummy Fill
Multiple-layer Oxide CMP Dummy Fill
Summary and Future Research
Our ContributionsOur Contributions
Fill problem in STI dual-material CMP
new Monte-Carlo methods for STI Min-Var objective
new Monte-Carlo/Greedy methods with removal phase
for STI Min-Fill objective
Fill problem in Multiple-layer oxide CMP
a LP formulation for a new multiple-layer fill objective
new Monte-Carlo methods
OutlineOutline
Layout Density Control for CMP
STI Dual-Material Dummy Fill
new Monte-Carlo methods for Min-Varr and Min-Fill
objectives
Multiple-layer Oxide CMP Dummy Fill
Summary and Future Research
Shallow Trench Isolation ProcessShallow Trench Isolation Process
Nitride
Silicon
nitride deposition on silicon
Oxide
oxide deposition
Uniformity requirement on CMP in STI
under polish
over polish
etch shallow trenches through nitride silicon
remove excess oxide and partially nitride by CMP
nitride stripping
height difference height difference HH
STI CMP ModelSTI CMP Model
STI post-CMP variation can be controlled by changing the feature density distribution using dummy features insertion
Compressible pad model polishing occurs on both up and down areas after
some step height
Dual-Material polish model two different materials are for top and bottom
surfaces
STI Fill ProblemSTI Fill Problem
Non-linear programming problem
Min-Var objective: minimize max height variation
Previous method (Motorola) dummy feature is added at the location having the
smallest effective density terminates when there is no feasible fill position left
Min-Fill objective: minimize total number of inserted fill, while keeping the given lower bound
Previous method (Motorola) adds dummy features greedily concludes once the given bound for ΔΗ is satisfied
Drawbacks of previous work can not guarantee to find a global minimum since it
is deterministic for Min-Fill, simple termination when the bound is
first met is not sufficient to yield optimal/sub-optimal solutions.
Monte-Carlo Methods for STI Min-VarMonte-Carlo Methods for STI Min-Var
Monte-Carlo method calculate priority of tile(i,j) as H - H (i, j, i’, j’) pick the tile for next filling randomly if the tile is overfilled, lock all neighboring tiles update tile priority
Iterated Monte-Carlo method repeat forever run Min-Var Monte-Carlo with max height difference H exit if no change in minimum height difference delete as much as possible pre-inserted dummy
features while keeping min height difference M
MC/Greedy methods for STI Min-FillMC/Greedy methods for STI Min-Fill
Find a solution with Min-Var objective to satisfy the given lower bound
Modify the solution with respect to Min-Fill objective
Algorithm
Run Min-Var Monte-Carlo / Greedy algorithm
Compute removal priority of each tile
WHILE there exist an unlocked tile DO Choose unlock tile Tij randomly according to priority Delete a dummy feature from Tij
Update the tile’s priority
STI Fill ResultsSTI Fill Results
Methods (Greedy, MC, IGreedy ad IMC) for STI Fill under Min-Var objective
testcase Orig H H CPU H CPU H CPU H CPU
L1/32/4 695.2 305.3 3.2 335 3.2 304.5 3.5 290.2 3.4 L1/32/8 999.6 426.1 3.8 325.8 3.4 407.4 7.1 307.2 4.2 L2/28/4 801.8 487.9 5.1 374 5.2 487.9 5.7 348 5.6 L2/28/8 1124.6 569.8 5.7 536.1 5.2 546.3 10.1 482.7 6.6 L3/28/4 1095.2 577.8 8.5 563.2 8.3 577.8 8.9 563.2 9.1
Igreedy IMCGreedy MC
Methods(GreedyI, MCI, GreedyII and MCII) for STI Fill under Min-Fill objective
testcase Orig H final H Area CPU Area CPU Area CPU Area CPUL1/32/4 695.2 395.1 10336 3.1 12003 3.1 8962 3.2 9141 3.2 L1/32/8 999.6 462.7 22091 3.9 20679 3.4 15615 3.6 14754 3.4 L2/28/4 801.8 526.2 7491 4.8 15164 4.9 7593 5.1 6543 5.1 L2/28/8 1124.6 639.8 16808 5.7 26114 5.5 8367 5.9 7142 5.5 L3/28/4 1095.2 563.2 24274 8.2 27114 8 16628 8.6 16142 8.5
MCIIGreedyI MCI GreedyII
OutlineOutline
Layout Density Control for CMP
Our Contributions
STI Dual-Material Dummy Fill
Multiple-layer Oxide CMP Dummy Fill LP formulations for a new multiple-layer fill objective new Monte-Carlo methods
Summary and Future Research
Multiple-Layer Oxide CMPMultiple-Layer Oxide CMP
Each layer except the bottom one can’t assume a perfect flat starting surface
Layer 0
Layer 1
Multiple-layer density model
^ : fast Fourier transform operator
:effective local density
: step height
: local density for layer k
Multiple-Layer Oxide Fill ObjectivesMultiple-Layer Oxide Fill Objectives
LP formulation Min M Subject to:
(Min-Var objective) minimize
sum of density variations on all layers can not guarantee the Min-Var objective on each layer A bad polishing result on intermediate layer may cause problems on
upper layers
maximum density variation across all layers
Multiple-Layer Monte-Carlo ApproachMultiple-Layer Monte-Carlo Approach
Tile stack column of tiles having the same positions on all layers
Effective density of tile stack sum of effective densities of all tiles in tile stack
layer 3
layer 2
layer 1
tiles on each layertile stack
Multiple-Layer Monte-Carlo ApproachMultiple-Layer Monte-Carlo Approach
Compute slack area and cumulative effective density for each tile stack
Calculate priority of each tile stack according to its cumulative effective density
WHILE ( sum of priorities > 0 ) DO randomly select a tile stack according to its priority from its bottom layer to top layer, check whether it is
feasible to insert a dummy feature in update slack area and priority of the tile stack if no slack area left, lock the tile stack
Multiple-Layer Fill ResultsMultiple-Layer Fill Results
Performance of LP0, LP1, Greedy, MC, IGreedy and IMC for Min-Var-Sum
testcase SumVar CPU SumVar CPU SumVar CPU SumVar CPU SumVar CPU
L4/16/8 0.6626 33.1 0.642 36.3 0.6285 36.6 0.6285 37.7 0.6285 33.9 L4/16/5 0.5435 30.7 0.5541 32.2 0.5535 33 0.5535 31.1 0.5535 30.5 L4/8/8 0.9031 140.1 0.7794 48.1 0.7766 36.2 0.7762 74.7 0.7762 34.5 L4/8/5 0.8351 33.4 0.7882 35.4 0.7804 32.7 0.7804 39.1 0.7804 30.7 L5/8/8 2.2118 8093 2.0526 102.8 2.0913 65.4 2.0526 111.7 2.0716 67.6 L5/8/5 1.3494 8879 1.345 65 1.3943 54.2 1.3252 79.6 1.3476 59.3
IMCLP0 Greedy MC IGreedy
testcase MaxDen CPU MaxDen CPU MaxDen CPU MaxDen CPU MaxDen CPU
L4/16/8 0.4696 34.8 0.4459 36.3 0.4454 36.6 0.4454 37.7 0.4454 33.9 L4/16/5 0.3638 36.5 0.3638 30.2 0.3635 33 0.3635 31.1 0.3635 32.5 L4/8/8 0.6255 120.8 0.5437 48.1 0.541 36.2 0.5406 74.7 0.5406 34.5 L4/8/5 0.5897 33.2 0.5576 35.4 0.5497 32.7 0.5497 39.1 0.5497 30.7 L5/8/8 1.2174 761.3 1.1081 102.8 1.1089 65.4 1.1081 111.7 1.1081 67.6 L5/8/5 0.6886 524 0.6857 65 0.705 54.2 0.6698 79.6 0.6746 59.3
IMCLP1 Greedy MC IGreedy
OutlineOutline
Layout Density Control for CMP
Multiple-layer Oxide CMP Dummy Fill
STI Dual-Material Dummy Fill
Summary and Future Research
Summary and Future ResearchSummary and Future Research
STI fill problem Monte-Carlo methods for STI Min-Var Monte-Carlo / Greedy methods for STI Min-Fill
Multiple-layer fill problem LP formulation for a new Min-Var objective efficient multiple-layer Monte-Carlo approaches
Ongoing research further study of multiple-layer fill objectives more powerful Monte-Carlo methods for multiple-
layer fill problem CMP simulation tool
Thank you!Thank you!