1 Double-Patterning Aware DSA Template Guided Cut Redistribution for Advanced 1-D Gridded Designs Zhi-Wen Lin and Yao-Wen Chang National Taiwan University ISPD 2016
2 Outline Introduction Conclusions Contributions Algorithm Experimental Results Problem Formulation
3 Directed Self-Assembly Block Copolymer ․ The directed self-assembly (DSA) technology has emerged as a promising candidate for sub-10 nm designs [Xiao et al., SPIE’13] (a) (b) (c) (d) += Self-assembly block copolymer Topographical templates Smaller and denser patterns Template Feature
4 1-D Style Layout Design with DSA ․ DSA has applications in Contact hole patterning [Wong et al., SPIE’12] Cut printing of 1-D gridded designs [Ma et al., SPIE’14] ․ 1-D layouts are popular for their regularity [Lam et al., SPIE’11] ․ DSA can be used to pattern dense cuts in 1-D layouts Dummy wire (gap) DSA templates The resulting 1-D layout Real wire
5 Challenge of Cut Printing with DSA ․ The size of the feasible-template library is limited ․ Conflict cost: two close templates might interfere with each other [Ma et al., SPIE’14] # cut pairs with spacing conflicts should be minimized [Ma et al., SPIE’14] Complex template Poor printability
6 Cut Redistribution ․ Redistribute cuts to reduce conflict costs ․ Wire cost: the total length of extended real wires should be minimized considering the performance impact ․ Given a layout, minimize its conflict cost and wire cost DSA template guided cut redistribution problem (DSA-TCR) vs. Extended wire
7 Double Patterning ․ Double patterning can be adopted to further improve the image fidelity of templates in cut printing with DSA [Ma et al., SPIE’14] ․ Integrate DSA cut redistribution with double patterning Conflict costs and wire costs can be further reduced (a) Dense templates (b) Double patterning decomposition Mask 1 Mask 2 (c) Patterned cuts
8 Outline Introduction Conclusion Contributions Algorithm Experimental Results Problem Formulation
9 Main Contributions: Algorithms ․ A linear-time optimal algorithm for the special case with limited contiguous rows is identified Simultaneously minimize conflict costs and wire costs ․ A linear-time algorithm for decomposing a general problem into subproblems conforming to the special case With double patterning, a criterion for non-interfering subproblems is proposed Large distance No conflict Different mask No conflict Subproblems with contiguous rows Subproblem of special case
10 Main Contributions: Performance ․ The total wire cost of a derived template distribution is linear to the number of cuts ․ Experimental results show that our algorithm can resolve all conflicts, with smaller running times, compared with the related previous works
11 Outline Introduction Conclusion Contributions Algorithm Experimental Results Problem Formulation
12 Problem Formulation ․ Given A library of templates, design rules, a layout, and original distribution of cuts ․ Output A template distribution patterning required cuts A mask assignment of all derived templates ․ Objective An ordered optimization on the conflict cost first and then the wire cost Our algorithm can readily apply to the linear combination of conflict cost and wire cost
13 Outline Introduction Conclusion Contributions Algorithm Experimental Results Problem Formulation
14 Overall Flow ․ Propose an algorithm (DPDSA-Core), incorporating DSA with double patterning Divide a general problem into subproblems Subproblem candidate construction Solving every subproblem candidate Subproblem candidate selection Input Output
15 Subproblem Candidate Construction Subproblem candidate construction Solving every subproblem candidate Subproblem candidate selection Input Output
16 Special Case with Contiguous Rows No conflict Different mask No conflict
17 Solutions of Partitions ․ Subproblems with fewer rows can have less internal wire cost and conflict cost ․ Also consider the subproblems with fewer rows when a subproblem partition with fewer inter-costs exists ․ A linear-time partition algorithm is proposed Subproblem with fewer rows
18 Solving Subproblem Candidates Subproblem candidate construction Solving every subproblem candidate Subproblem candidate selection Input Output
19 Overview ․ Given a fixed r M, solve a subproblem optimally in linear time to the number of gaps in the subproblem ․ Find a path of gap solutions with minimized conflict costs and wire costs Template specifier Distribution specifier g2g2 g1g1 h t h,j d h,j … … … … … … h h+1h+2 … … … … v h,j v h+2,j v h+1,j v h,j+2 v h+2,j+2 v h+1,j+2 v h,j+1 v h+2,j+1 v h+1,j+1 Divide a sub-problem into multiple columns For every column, generate feasible gap solutions
20 Data Structure of Column Solutions ․ Template specifier specifies the topologies of cuts in the current column and restrict the templates next to it ․ To consider cut conflict completely, store the distribution of previous cuts in a column solution ․ For every column solution, find the best compatible previous column solution Horizontal column index Previous cut distribution Template specifier Distribution specifier t h,j d h,j
21 Column-wise Searching ․ Construct column solutions from left to right ․ For every pair of a column solution and its predecessor, evaluate the current conflict costs and wire costs ․ Then trace back according to predecessors for a path g2g2 g1g1 Add 1 conflict Add 1 grid wire cost Right cut of g 2 hasn’t addressed yet Predecessor Current solution
22 Reduced Column-Space ․ Prune redundant columns to speed up the process ․ For ever gap, calculate the remaining columns within it First, calculate the possible range for cuts Scan from left to right, and use the information of possible range to get the remaining columns ․ Restrict the complexity of the number of remaining columns and the total wire cost to be linear Thus the running time grows linearly Possible range Remaining columns
23 Subproblem Candidate Selection Subproblem candidate construction Solving every subproblem candidate Subproblem candidate selection Input Output
24 Overview of Partition Algorithm ․ Divide the whole layout into regions Subproblem candidate selection Region construction Region solution graph construction Optimal region solution path determination Template distribution construction R1R1 R0R0 R2R2 R1R1 R0R0 R2R2 v1v1 v2v2 v3v3 v4v4 v5v5
25 Region Solutions ․ Every region solution is a set of solved subproblems Subproblem candidate selection Region construction Region solution graph construction Optimal region solution path determination Template distribution construction R1R1 R2R R1R1 R2R2
26 Region Solution Graph ․ An edge exists between two region solutions when they share a subproblem Subproblem candidate selection Region construction Region solution graph construction Optimal region solution path determination Template distribution construction R2R2 R1R1 R2R2 R1R1 ․ Inter-subproblem conflicts can occur only between adjacent regions for the large enough height of regions
27 Partition from Region Solution ․ Get subproblems by selected region solutions ․ Construct the whole solution by selected subproblems Subproblem candidate selection Region solution graph construction Optimal region solution path determination Template distribution construction Region construction
28 Extension ․ A framework to relax the same-mask constraint in a row Input Output Terminal condition Double-patterning for templates DPDSA-Core for every conflicting component Not satisfied Satisfied Conflicting component selection and merging Connected component construction
29 Outline Introduction Conclusion Contributions Algorithm Experimental Results Problem Formulation
30 Experimental Setting ․ Platform: 2.13 GHz Linux workstation with 16 GB memory ․ Programming language: C++ ․ Resource of benchmarks: the authors of [Xiao et al., SPIE’13] ․ Compared with [Xiao et al., SPIE’13] [Ou et al., GLSVLSI’15] Extend these works by a general high-level framework [Badr et al., SPIE’15] for DSA-multiple patterning hybrid lithography The framework consists of the two stages GP-MP (GM) and MP- GP (MG) GP: group cuts into templates MP: Assign masks
31 Conflict Costs no conflict!! Number of cuts Initial conflict Conflict cost GP-MPMP-GP S13S15spS15SCS13S15spS15SCours Average
32 Wire Cost ․ Our wire cost is 6X smaller than S15sp with GP-MP ․ Except pure-ILP works, our wire costs are consistently smaller than others with the same numbers of conflicts Number of cuts Wire cost GP-MPMP-GP S13S15spS15SCS13S15spS15SCours Average Normalized average
33 Running Time ․ Our algorithm has better scalability than others Better scalability Number of cuts Running time (seconds) GP-MPMP-GP S13S15spS15SCS13S15spS15SCours Average Normalized average
34 Outline Introduction Conclusion Contributions Algorithm Experimental Results Problem Formulation
35 Conclusions ․ A linear-time optimal algorithm for the special case of DSA-TCR ․ A linear-time algorithm for decomposing general double patterning DSA-TCR problems and reduce inter- subproblem conflicts cost ․ Better experimental results compared with the previous work ․ Future Work Incorporate DSA with multiple patterning technology
36 Thank You!