ntu_cocotier
1
Double-Patterning Aware DSA TemplateGuided Cut Redistribution for Advanced1-D Gridded Designs
NTU_logo
新首頁
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 hasemerged as a promising candidate for sub-10 nmdesigns
[Xiao et al., SPIE’13]
(a)
(b)
(c)
(d)
+
=
Self-assemblyblock copolymer
Topographicaltemplates
Smaller anddenser 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 witheach other [Ma et al., SPIE’14]
 # cut pairs with spacing conflicts should be minimized
poorLithography.png
[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 shouldbe 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 improvethe 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 withlimited contiguous rows is identified
Simultaneously minimize conflict costs and wire costs
A linear-time algorithm for decomposing a generalproblem into subproblems conforming to the special case
With double patterning, a criterion for non-interferingsubproblems 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 islinear to the number of cuts
Experimental results show that our algorithm can resolveall conflicts, with smaller running times, compared withthe 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 originaldistribution 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 thewire cost
Our algorithm can readily apply to the linear combination ofconflict cost and wire cost
寬左斜對角線
寬左斜對角線
寬左斜對角線
寬左斜對角線
大方格
大方格
大方格
大方格
大方格
13
Outline
Introduction
Conclusion
Contributions
Algorithm
Experimental Results
Problem Formulation
14
Overall Flow
Propose an algorithm (DPDSA-Core), incorporatingDSA 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
Construct subproblems conforming to a special case to reduce conflicts between two adjacent subproblems
Each subproblem consists of contiguous rows with # rows  ≤𝑟 𝑀  
Note that  𝑟 𝑀 +1≥ the minimum spacing
Templates in a subproblem are patterned by the same mask
Adjacent subproblems are patterned by different masks
寬左斜對角線
寬左斜對角線
寬左斜對角線
寬左斜對角線
大方格
大方格
大方格
大方格
大方格
 𝑟 𝑀 +1
No conflict
Different mask
No conflict
17
Solutions of Partitions
Subproblems with fewer rows can have less internalwire cost and conflict cost
Also consider the subproblems with fewer rows when asubproblem partition with fewer inter-costs exists
A linear-time partition algorithm is proposed
寬左斜對角線
寬左斜對角線
寬左斜對角線
寬左斜對角線
大方格
大方格
大方格
大方格
大方格
Subproblem withfewer rows
18
Solving Subproblem Candidates
Subproblem candidate construction
Solving every subproblem candidate
Subproblem candidate selection
Input
Output
19
Overview
Given a fixed rM, solve a subproblem optimally in lineartime to the number of gaps in the subproblem
Find a path of gap solutions with minimized conflictcosts and wire costs
Templatespecifier
Distributionspecifier
g2
g1
h
th,j
dh,j
h
h+1
h+2
vh,j
vh+2,j
vh+1,j
vh,j+2
vh+2,j+2
vh+1,j+2
vh,j+1
vh+2,j+1
vh+1,j+1
Divide a sub-probleminto multiple columns
For every column,generate feasiblegap solutions
20
Data Structure of Column Solutions
Template specifier specifies the topologies of cuts inthe current column and restrict the templates next to it
To consider cut conflict completely, store thedistribution of previous cuts in a column solution
For every column solution, find the best compatibleprevious column solution
Horizontalcolumnindex
Previouscutdistribution
Templatespecifier
Distributionspecifier
th,j
dh,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
寬左斜對角線
寬左斜對角線
g2
g1
Add 1 conflict
Add 1 grid wire cost
Right cut of g2 hasn’taddressed 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 possiblerange to get the remaining columns
Restrict the complexity of the number of remainingcolumns and the total wire cost to be linear
Thus the running time grows linearly
Possible range
Remainingcolumns
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 distributionconstruction
R1
R0
R2
R1
R0
R2
v1
v2
v3
v4
v5
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 distributionconstruction
R1
R2
寬左斜對角線
寬左斜對角線大方格
大方格
2
1
2
1
R1
R2
26
Region Solution Graph
An edge exists between two region solutions whenthey share a subproblem
Subproblem candidate selection
Region construction
Region solution
graph construction
Optimal region solution
path determination
Template distributionconstruction
R2
R1
R2
R1
Inter-subproblem conflicts can occur only betweenadjacent 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
3
2
1
5
4
3
2
1
5
3
2
1
5
4
4
Subproblem candidate selection
Region solution
graph construction
Optimal region solution
path determination
Template distributionconstruction
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 everyconflicting component
Not satisfied
Satisfied
Conflicting componentselection and merging
Connected componentconstruction
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
Our algorithm can resolve all conflicts 
[Xiao et al., SPIE’13]: S13
[Ou et al., SPIE’15]: S15 (ILP-based algorithm), S15sp (ILP-based speed-up heuristic), SC (set-cover-based algorithm)
“-”: running time ≥ an hour
no conflict!!
Numberof cuts
Initialconflict
Conflict cost
GP-MP
MP-GP
S13
S15sp
S15
SC
S13
S15sp
S15
SC
ours
50
12
0
0
0
0
0
0
0
1
0
100
46
0
0
0
0
0
1
0
0
0
200
83
0
0
0
0
3
0
0
4
0
500
223
0
0
 -
0
4
0
0
5
0
1000
421
2
0
 -
1
7
3
0
8
0
2000
855
0
0
 -
2
17
2
0
11
0
Average
0.33
0
-
0.50
5.17
1.00
0
4.83
0
32
Wire Cost
Our wire cost is 6X smaller than S15sp with GP-MP
Except pure-ILP works, our wire costs are consistentlysmaller than others with the same numbers of conflicts
Number ofcuts
Wire cost
GP-MP
MP-GP
S13
S15sp
S15
SC
S13
S15sp
S15
SC
ours
50
48
8
6
3
13
1
1
0
1
100
109
29
24
30
48
5
2
6
6
200
272
58
48
63
150
27
11
23
10
500
665
153
 -
166
235
33
14
29
27
1000
1466
307
 -
289
542
48
32
45
49
2000
2647
593
 -
576
1055
89
65
76
96
Average
867.83
191.33
-
187.83
340.50
33.83
20.83
29.83
31.50
Normalized
average
27.55
6.07
0.00
5.96
10.81
1.07
0.66
0.95
1.00
33
Running Time
Our algorithm has better scalability than others
Betterscalability
Numberof cuts
Running time (seconds)
GP-MP
MP-GP
S13
S15sp
S15
SC
S13
S15sp
S15
SC
ours
50
0.01
0.09
0.22
0.01
0.01
0.08
0.04
0.01
0.01
100
0.02
0.45
9.78
0.03
0.02
0.16
0.07
0.03
0.02
200
0.04
0.53
609
0.09
0.04
0.33
0.45
0.07
0.03
500
0.12
1.95
 -
0.34
0.12
0.84
1.06
0.2
0.08
1000
0.31
3.33
 -
1.22
0.32
1.84
6.12
0.64
0.15
2000
0.91
7.99
 -
4.38
0.92
4.49
55.1
2.45
0.3
Average
0.24
2.39
-
1.01
0.24
1.29
10.47
0.57
0.10
Normalized
average
2.39
24.31
-
10.29
2.42
13.12
106.51
5.76
1.00
34
Outline
Introduction
Conclusion
Contributions
Algorithm
Experimental Results
Problem Formulation
35
Conclusions
A linear-time optimal algorithm for the special case ofDSA-TCR
A linear-time algorithm for decomposing general doublepatterning DSA-TCR problems and reduce inter-subproblem conflicts cost
Better experimental results compared with the previouswork
Future Work
Incorporate DSA with multiple patterning technology
36
 Thank You!