Double-Patterning Aware DSA Template Guided Cut Redistribution For Advanced 1-D Gridded Designs
Double-Patterning Aware DSA Template Guided Cut Redistribution For Advanced 1-D Gridded Designs
1
Outline
Introduction
Contributions
Problem Formulation
Algorithm
Experimental Results
Conclusions
2
Directed Self-Assembly Block Copolymer
․ The directed self-assembly (DSA) technology has
emerged as a promising candidate for sub-10 nm
designs
Self-assembly
+ Topographical
= Smaller and
block copolymer templates denser patterns
Template
Feature
3
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
Complex template
Poor printability
5
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)
Extended wire
vs.
6
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]
7
Outline
Introduction
Contributions
Problem Formulation
Algorithm
Experimental Results
Conclusion
8
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 Subproblem
of special case
Different mask
No conflict Large distance
No conflict
Subproblems with contiguous rows
9
Main Contributions: Performance
․ The total wire cost of a derived template distribution is
linear to the number of cuts
10
Outline
Introduction
Contributions
Problem Formulation
Algorithm
Experimental Results
Conclusion
11
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
12
Outline
Introduction
Contributions
Problem Formulation
Algorithm
Experimental Results
Conclusion
13
Overall Flow
․ Propose an algorithm (DPDSA-Core), incorporating
DSA with double patterning
Divide a general problem into subproblems
Input
Output
14
Subproblem Candidate Construction
Input
Output
15
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
Different mask
No conflict No conflict
16
Solutions of Partitions
․ Subproblems with fewer rows can have less internal
wire cost and conflict cost
Subproblem with
fewer rows
17
Solving Subproblem Candidates
Input
Output
18
Overview
․ Given a fixed rM, solve a subproblem optimally in linear
time to the number of gaps in the subproblem
…
…
Divide a sub-problem
vh,j vh+1,j vh+2,j into multiple columns
vh,j+1 vh+1,j+1 vh+2,j+1
vh,j+2 vh+1,j+2 vh+2,j+2
…
…
For every column,
h h+1 h+2 generate feasible
gap solutions
g1 Distribution Template
g2 specifier dh,j specifier th,j
h
․ Find a path of gap solutions with minimized conflict
costs and wire costs
19
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
Distribution Template
specifier dh,j specifier th,j
Previous Horizontal
cut column
distribution index
․ For every column solution, find the best compatible
previous column solution
20
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
Add 1 conflict Add 1 grid wire cost
g1
g2 Right cut of g2 hasn’t
addressed yet
Predecessor Current solution
․ Then trace back according to predecessors for a path
21
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
Remaining
Possible range columns
․ Restrict the complexity of the number of remaining
columns and the total wire cost to be linear
Thus the running time grows linearly
22
Subproblem Candidate Selection
Input
Output
23
Overview of Partition Algorithm
․ Divide the whole layout into regions
Subproblem candidate selection
Region construction R0
R1
Region solution R2
graph construction
R0
Optimal region solution
path determination
R1
Template distribution
construction R2
v1 v2 v3 v4 v5
24
Region Solutions
․ Every region solution is a set of solved subproblems
Subproblem candidate selection
Region construction
R1 1
Region solution
graph construction R2 2
25
Region Solution Graph
․ An edge exists between two region solutions when
they share a subproblem
Region solution R2
graph construction
Template distribution R2
construction
Region solution 2 2 2
graph construction
Template distribution
construction 4 4 4
5 5 5
27
Extension
․ A framework to relax the same-mask constraint in a row
Input
Output
Double-patterning for templates
28
Outline
Introduction
Contributions
Problem Formulation
Algorithm
Experimental Results
Conclusion
29
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
30
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
Conflict cost
Number Initial
GP-MP MP-GP
of cuts conflict
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
no conflict!!
31
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
Wire cost
Number of
GP-MP MP-GP
cuts
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
27.55 6.07 0.00 5.96 10.81 1.07 0.66 0.95 1.00
average
32
Running Time
․ Our algorithm has better scalability than others
33
Outline
Introduction
Contributions
Problem Formulation
Algorithm
Experimental Results
Conclusion
34
Conclusions
․ A linear-time optimal algorithm for the special case of
DSA-TCR
․ Future Work
Incorporate DSA with multiple patterning technology
35
Thank You!
36