dummy fill optimization for enhanced manufacturability
play

Dummy Fill Optimization for Enhanced Manufacturability Yaoguang Wei - PowerPoint PPT Presentation

Dummy Fill Optimization for Enhanced Manufacturability Yaoguang Wei and Sachin S. Sapatnekar Department of Electrical and Computer Engineering University of Minnesota ISPD 2010 1 Outline Introduction Flow of the routing algorithm


  1. Dummy Fill Optimization for Enhanced Manufacturability Yaoguang Wei and Sachin S. Sapatnekar Department of Electrical and Computer Engineering University of Minnesota ISPD 2010 1

  2. Outline • Introduction • Flow of the routing algorithm • Cost functions • Experimental results • Conclusion 2

  3. Chemical mechanical polishing (CMP) • CMP: chemical and mechanical means to polish wafer CMP machine CMP process [http://www.ceramic.hanyang.ac.kr/paik/cmp.htm] 3 [http://strasbaugh.com/cm/Products/CMP/nTREPID% 20300mm% 20PRODUCTION% 20CMP .html]

  4. Variations caused by oxide CMP • Oxide CMP used to polish the interlayer dielectric (ILD) • Variation in the post-CMP ILD thickness Depth of focus variation, and finally lower the performance and yield [Tian, 2001] Metal e.g., CMP variation can lead to 30% delay variation [Mehrotra, 2000] • Oxide CMP model in [Ouma, 2002] – Post-CMP ILD thickness z ~ effective pattern density ρ = + ρ z c z 0 1 [Ouma, 2002] 4

  5. Effective pattern density (EPD) • Partition the layout to tiles • For each tile t ij – Initial pattern density (IPD) d ij : Density Discretized Gaussian function of metal in a tile + 2 2 1 i j = π − – Assume the die is periodically repeated, ( , ) exp( ) f i j 2 2 2 2 l l and then d ij is periodic. Weighting function with l = 5 – Effective pattern density (EPD) ρ ij : -3 -3 Weighted sum of d ij over a weighting x 10 x 10 window W ij with size 2 l +1 6 4 f(i,j) f(i 2 0 d ρ ij + + 5 i n 1 , j n 2 5 0 0 -5 -5 -5 -5 j j i i t ij W ij Die 1 Die 2 5

  6. Reduce CMP variation • Add dummy fill Reduce EPD variation, and ILD thickness variation [Tian, 2001] Minimize Dummy Increase routing cost dummy fill feature or coupling capacitance e.g., floating dummy fill may increase the coupling capacitance up to 90% [Kahng, 2006] • Dummy filling problem formulation – Insert minimal amount of dummy fill ( D ) to make ( ρ = EPD = effective pattern density) – D is a good metric • Use dummy filling algorithm in [Tian, 2001] • CMP-aware routing – Generate more uniform distribution of wires – Reduce variation and D 6

  7. Previous work and our contributions • Previous work of CMP-aware routing – No CMP model used • Control the maximal initial pattern density [Li, 2005] – The metrics used have limitations • Minimize the gradient of initial pattern density (IPD) [Chen, 2009] EPD = effective pattern density – Impact of routing on the neighboring regions not considered [Yao, 2007][Jia, 2008] • Our contributions – Use accurate CMP model and metric D ( D = amount of required dummy fill) – Optimize dummy fill directly 7

  8. Global routing model • Input – Information for nets/interconnects • Output – Paths on the global routing graph • Objective: minimize overflow, wire length and amount of dummy fill D Global routing graph 8

  9. Outline • Introduction • Flow of the routing algorithm • Cost functions • Experimental results • Conclusion 9

  10. Algorithm flow • Based on NTHU-Route 2.0 (NTHR) [Chang, 2008] Initial stage Initial stage Main stage with dummy fill cost Main stage function Refinement stage with dummy fill cost Refinement stage function EPD postprocessing: RRR the nets passing through tiles related to ρ H Layer assignment Layer assignment NTHR’s flow Our flow 10

  11. Outline • Introduction • Flow of the routing algorithm • Cost functions • Experimental results • Conclusion 11

  12. Big picture of cost function • Achievement of objectives dependent on cost functions Dummy fill Wirelength Overflow Objective : Cost Wirelength Via Congestion Dummy fill cost Φ e function: cost cost cost • Dummy fill cost Φ e – Efficient – Effective • Metric: D ( D = amount of dummy fill) – Linear programming used – Several minutes required to compute D 12

  13. Metric Γ : A surrogate for D • Metric Γ: ∑ Γ = ρ − ρ Γ approximate indicator ( ) U ij of amount of dummy fill ∈ t Q 1 ij ρ H Layout 1 Layout 2 ε ε ρ U = ρ H - ε ρ − ρ U ij … … … … ρ ij ( D = amount of dummy fill) Q 1 ( ρ = EPD = effective pattern density) 13

  14. Metric Γ : A surrogate for D • Theorem 1: , where c is constant ν : sum of pink bars Γ: sum of red bars μ : sum of golden bars ρ H ρ U = ρ H - ε … … … … Before dummy filling After dummy filling • μ+ν much smaller than Γ – e.g., for circuit newblue2, • Important conclusion: ( D = amount of dummy fill) 14

  15. A surrogate for Γ Γ still too complex to be used • The impact of routing on Γ and D • ( D = amount of dummy fill) • Theorem 2: v 2 v 2 edge e t e t e v 1 v 1 t e t e ∆Γ ≥ ∆ ρ H − | 1 | Q c ( c 1 = a constant) 1 ( ρ H = maximal effective pattern density) ( Q 1 = set of blue tiles) 15

  16. A surrogate for Γ ∆Γ ≥ ∆ ρ H − | 1 | • Q c After routing through edge e 1 ρ + ∆ ρ ρ H H H ρ + ∆ ρ ρ U U H ∆ ρ H … … … … Q 1 ( ρ = EPD = effective pattern density) ( D = amount of dummy fill) ( Q 1 = set of blue tiles) • | Q 1 | is about 85% of the total number of tiles D highly sensitive to the change in ρ H • ( ) • Minimizing ρ H is a good surrogate for minimizing D 16

  17. Cost function • Compute dummy fill cost Φ e – Purpose: constrain the increase of ρ H Tile t k • Cost component 0: penalty for direct increase of ρ H after routing through edge e Edge e Weighting window W e • Cost component 1: penalty for potential increase of ρ H after routing through a path 17

  18. Cost function • Cost component 2: penalty for routing through the edges in the tiles with large EPD 2 1.5 1. Small cost not to Ψ e e 1 affect other objectives too 0.5 0. much 0 0 0.2 0. 0.4 0. 0.6 0. 0.8 0. 1 ρ e / ρ H • Total dummy fill cost: • Integrate dummy fill cost function into the original router 18

  19. Outline • Introduction • Flow of the routing algorithm • Techniques to optimize dummy fill • Experimental results • Conclusion 19

  20. Experimental setup • Platform – A 64-bit Linux machine with an Intel Core(TM)2 Duo 3.00GHz CPU and 8GB memory • Major assumptions – 0.13um technology – Size of weighting window 1mm – The space between the dies on the wafer is negligible • ISPD 2007 benchmark • Comparison – NoCMP: the original NTHU router – MaxEPD: our algorithm – YaCMP: replacing the cost function we propose in MaxEPD by the cost function in [Yao, 2007] (our implementation) • Parameters tuned using newblue2 20

  21. Routing results • Overflow – Circuit newblue1 is difficult – Maximal overflow is 1 – The overflows can be eliminated in later stage with the reserved capacity Comparison of total overflow 16 Total overflow NoCMP 12 8 YaCMP 4 MaxEPD 0 Circuit 21

  22. Routing results • Wire lengths are similar Comparison of wire length Wire length (x 1.e5) 140 120 NoCMP 100 80 YaCMP 60 40 MaxEPD 20 0 Circuit 22

  23. Routing results • Variation in the post-CMP ILD thickness = z ⋅ ρ ran( ) ran( ) z with z 1 =7000 Å 1 Comparison of variation in post-CMP ILD thickness 3000 2400 NoCMP ran ( z ) ( Å ) 1800 YaCMP 1200 600 MaxEPD 0 Circuit Compared to NoCMP, reduced by 16.7% (max) and 11.1% (average); Compared to YaCMP, reduced by 13.5% (max) and 7.0% (average). 23

  24. Dummy fill results • Amount of dummy fill D – Computed using dummy filling algorithm in [Tian, 2001] Fill amount normalized to NoCMP 1.0 fillWL/minWL 0.8 YaCMP 0.6 0.4 MaxEPD 0.2 0.0 Circuit Compared to NoCMP, reduced by 41.5% (max) and 22.0% (average); Compared to YaCMP, reduced by 23.6% (max) and 14.1% (average). 24

  25. Routing results • Runtime Comparison of runtime normalized to NoCMP 10 8 YaCMP 2.59X 6 Ratio 4 MaxEPD 2 4.66X 0 Circuit • Runtime in absolute terms for MaxEPD – Less than 1 hour – Reasonable 25

  26. Conclusion • Develop a global routing algorithm optimizing the amount of dummy fill. • Minimizing maximal effective pattern density is a good surrogate for minimizing the amount of dummy fill. • Propose effective cost functions to perform dummy fill optimization. • Experimental results show that our algorithm can reduce the amount of dummy fill up to 41.5% with ~4x runtime overhead, compared with original router. 26

  27. Thank You! Any questions? 27

  28. Algorithm flow • Based on NTHU-Route 2.0 (NTHR) [Chang, 2008] Initial stage Initial stage Main stage with dummy fill cost Main stage function Refinement stage with dummy fill cost Refinement stage function EPD postprocessing: RRR the nets passing through tiles related to ρ H Layer assignment Layer assignment NTHR’s flow Our flow 28

  29. EPD postprocessing stage Find the tile t k with maximal EPD ρ H If ρ H cannot be decreased after trying all nets, this Find all the 2-pin nets passing through the stage stops. weighting window of tile t k Sort nets in nonincreasing order of the minimal distance of two pins to tile t k RRR the nets one by one to decrease ρ H No Yes Is ρ H decreased? 29

Recommend


More recommend