Layout Decomposition for Quadruple Patterning Lithography and Beyond Bei Yu , David Z. Pan Department of Electrical & Computer Engineering University of Texas at Austin, TX USA 06/03/2014 Supported by IBM scholarship, NSF, NSFC, SRC 1 / 14
Quadruple Patterning Lithography (QPL) ◮ Natural extension of triple patterning lithography (TPL) ◮ But with one more mask Why QPL? ◮ Delay of EUVL ◮ CAD tools: need to be prepared ◮ Resolve native conflict from triple patterning mask 1 a b a b mask 2 mask 3 c d c d mask 4 (a) (b) 2 / 14
Problem Formulation Input: ◮ Input layout patterns ◮ Minimum coloring distance min s e1 e1 a1 a1 e b b b b b c c c c c a e2 e2 Stitch Candidate d a2 d a2 d d d Output: ◮ Decomposed layout ◮ Minimize the conflict number & the stitch number 3 / 14
Layout Decomposition – From Double To Quadruple Double Patterning Triple Patterning Quadruple Patterning ... Partition Heuristic ILP ILP Matching SDP Odd-Cycle Graph Method 4 / 14
SDP Formulation with NEW Color Representations z (0 , 0 , 1) ◮ Four unit vectors ◮ same color: � v i · � √ √ v j = 1 √ √ 6 3 , − 1 2 6 3 , − 1 2 ( 3 , − 3 ) ( − 3 , − 3 ) x ◮ different color: � v i · � v j = − 1 / 3 √ (0 , 2 3 , − 1 2 3 ) y Semidefinite Programming (SDP) Formulation � � � v i · � v i · � � v j − α v j min e ij ∈ CE e ij ∈ SE s.t . � v i · � v i = 1 , ∀ i ∈ V v j ≥ − 1 � v i · � 3 , ∀ e ij ∈ CE ◮ Greedy Mapping v.s. Backtrack Mapping 5 / 14
New Linear Color Assignment ◮ Linear runtime complexity: resolved one by one ◮ But, Any coloring order results in Local Optimality ◮ Example: order a-b-c-d-e c c c c d d d d a a b b a b a b e e e e (a) (b) Color-Friendly Rules: Half Pitch c c c d a d d b a b a b e e e (c) (d) 6 / 14
New Linear Color Assignment Peer Selection: ◮ Three orders would be processed simultaneously ◮ Best solution would be selected ◮ Still Linear runtime complexity Degree-Coloring 3Round-Coloring Sequence-Coloring 7 / 14
New Linear Color Assignment Peer Selection: Better results than any single order 8 / 14
New: 3-Cut Removal ◮ Reduce the problem size ◮ Example: color 0 color 1 color 2 color 3 component 1 component 1 component 1 a b c a b c a b c d e f d e f d e f component 2 component 2 component 2 rotated by 1 (a) (b) (c) GH-Tree to find 3-Cuts 9 / 14
Experimental Results – Quadruple Patterning Runtime Comparison: 100 80 Scaled Runtime 60 SDP+Backtrack SDP+Greedy Linear 40 20 7 2 4 0 5 8 0 0 5 8 2 8 1 3 8 5 5 0 7 4 1 8 5 8 4 9 5 8 0 2 9 0 3 9 6 5 3 2 5 4 , , , , 3 9 8 8 5 8 5 , , , , , , , , 4 4 8 1 1 2 3 5 6 7 1 3 3 3 1 C C C C C C C C C C S S S S S Linear algorithm achieves ◮ 500 × cf. SDP+Backtrack ◮ 60 × cf. SDP+Greedy 10 / 14
Experimental Results – Quadruple Patterning Conflict # Comparison: 1,000 SDP+Backtrack SDP+Greedy 100 Conflict # Linear 10 7 2 4 0 5 8 0 0 5 8 2 8 1 3 8 5 5 0 7 4 1 8 5 8 4 9 5 8 1 2 9 0 3 9 6 5 3 2 5 4 , , , , 3 9 8 8 5 8 5 , , , , , , , , 4 4 8 1 1 2 3 5 6 7 1 3 3 3 1 C C C C C C C C C C S S S S S Linear algorithm achieves: ◮ Similar conflict # cf. SDP+Backtrack ◮ 67% Conflict # reduction cf. SDP+Greedy 11 / 14
Extend Algorithms to General K-Patterning ◮ Semidefinite programming (SDP) ◮ Linear color assignment ◮ GH-Tree based graph division Results for Pentuple Patterning ( K = 5 ) SDP+Backtrack SDP+Greedy Linear Circuit cn# st# CPU(s) cn# st# CPU(s) cn# st# CPU(s) C6288 19 2 2.4 19 2 0.49 19 5 0.005 C7552 1 1 0.3 1 1 0.05 1 4 0.001 S38417 0 4 1.45 0 4 0.21 0 4 0.001 S35932 5 20 8.11 5 20 0.62 5 25 0.009 S38584 3 4 1.66 7 3 0.3 3 6 0.008 S15850 6 5 2.7 7 5 0.4 5 15 0.007 avg. 5.7 6.0 2.77 6.5 5.83 0.35 5.5 9.8 0.005 ratio 1.0 1.0 1.0 1.15 0.97 0.12 0.97 1.64 0.002 ◮ Linear color assignment: best conflict #, 500 × speed-up 12 / 14
Conclusions Double Patterning Triple Patterning Quadruple Patterning ... Partition Heuristic 3-Cut Removal ILP ILP Linear Matching SDP SDP Odd-Cycle Graph Method Graph Method ◮ First attempt for Quadrule Patterning and Beyond ◮ Generic & Robust to General Patterning ◮ Facilitaing the advancement of Multiple Patterning 13 / 14
Thank You ! 14 / 14
Recommend
More recommend