new graph bipartizations for double-exposure, bright field alternating phase-shift mask layout

47
New Graph Bipartizations for New Graph Bipartizations for Double-Exposure, Double-Exposure, Bright Field Alternating Phase- Bright Field Alternating Phase- Shift Mask Layout Shift Mask Layout Andrew B. Kahng (UCSD) Andrew B. Kahng (UCSD) Shailesh Vaya (UCLA) Shailesh Vaya (UCLA) Alex Zelikovsky (GSU) Alex Zelikovsky (GSU)

Upload: darice

Post on 21-Feb-2016

35 views

Category:

Documents


0 download

DESCRIPTION

New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout. Andrew B. Kahng (UCSD) Shailesh Vaya (UCLA) Alex Zelikovsky (GSU). Outline. Subwavelength lithography Alternating PSM Phase assignment problem Minimum perturbation problem - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

New Graph Bipartizations for Double-Exposure,New Graph Bipartizations for Double-Exposure,

Bright Field Alternating Phase-Shift Mask LayoutBright Field Alternating Phase-Shift Mask Layout

Andrew B. Kahng (UCSD)Andrew B. Kahng (UCSD)

Shailesh Vaya (UCLA)Shailesh Vaya (UCLA)

Alex Zelikovsky (GSU)Alex Zelikovsky (GSU)

Page 2: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

2ASPDAC’2001

OutlineOutline Subwavelength lithographySubwavelength lithography Alternating PSMAlternating PSM Phase assignment problem Phase assignment problem Minimum perturbation problemMinimum perturbation problem Bipartizing feature graphBipartizing feature graph

Fast algorithm for edge-deletion Fast algorithm for edge-deletion Approximation algorithm node-deletionApproximation algorithm node-deletion

Experimental resultsExperimental results ConclusionsConclusions

Page 3: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

3ASPDAC’2001

Subwavelength Gap since .35 mSubwavelength Optical LithographySubwavelength Optical Lithography

Numerical Technologies, Inc.

Page 4: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

4ASPDAC’2001

Alternating PSM for Subwavelength TechnologyAlternating PSM for Subwavelength Technology

conventional maskglass Chrome

0 Electric field at mask

0 Intensity at wafer

phase shifting mask

Phase shifter

Page 5: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

5ASPDAC’2001

Double-Exposure Bright-Field PSMDouble-Exposure Bright-Field PSM

0

180180 + =

Page 6: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

6ASPDAC’2001

The Phase Assignment ProblemThe Phase Assignment Problem

Assign 0, 180 phase regions such that critical features Assign 0, 180 phase regions such that critical features with width < B are induced by adjacent phase regions with width < B are induced by adjacent phase regions with opposite phaseswith opposite phases

0 180

<B

shifters

Page 7: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

7ASPDAC’2001

Phase Assignment for Bright-Field PSMPhase Assignment for Bright-Field PSM

PROPER Phase Assignment:PROPER Phase Assignment:OppositeOpposite phases for opposite shifters phases for opposite shifters Same Same phase for overlapping shiftersphase for overlapping shifters

Overlapping shifters

Page 8: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

8ASPDAC’2001

Key: Global 2-ColorabilityKey: Global 2-Colorability

?180 0

0180 180

180

Odd cycle of “phase implications” Odd cycle of “phase implications” layout cannot be layout cannot be manufacturedmanufacturedlayout verification becomes a global, not local, issuelayout verification becomes a global, not local, issue

Page 9: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

9ASPDAC’2001

F4

F2

F3

F1

Critical features: F1,F2,F3,F4

Page 10: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

10ASPDAC’2001

F4

F2

F3

F1

Opposite-Phase Shifters (0,180)

Page 11: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

11ASPDAC’2001

F4

F2

F3

F1

S1

S2

S3

S5

S4

S6

S7S8

Shifters: S1-S8

PROPER Phase Assignment:Opposite phases for opposite shifters Same phase for overlapping shifters

Page 12: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

12ASPDAC’2001

F4

F2

F3

F1

S1

S2

S3

S5

S4

S6

S7S8

Phase Conflict

Proper Phase Assignment is IMPOSSIBLE

Phase ConflictPhase Conflict

Page 13: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

13ASPDAC’2001

F4

F2

F3

F1

S1

S2

S3

S5

S4

S6

S7S8

Phase Conflictfeature shiftingto remove overlap

Conflict Resolution: Shifting Conflict Resolution: Shifting

Page 14: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

14ASPDAC’2001

F4

F2

F1

S1

S2

S3 S4

S7S8

Phase Conflictfeature widening to turnconflict into non-conflict

Conflict Resolution: WideningConflict Resolution: Widening

F3

Page 15: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

15ASPDAC’2001

Minimum Perturbation Problem Minimum Perturbation Problem

Layout modificationsLayout modificationsfeature shiftingfeature shiftingfeature widening feature widening

area increase, slowing downarea increase, slowing down

manual fixing, design cost increase manual fixing, design cost increase

Minimum Perturbation ProblemMinimum Perturbation Problem

Find min # of layout modifications leading to Find min # of layout modifications leading to proper phase assignmentproper phase assignment

Page 16: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

16ASPDAC’2001

Feature GraphFeature Graph

Feature Graph:Black - feature nodesBlue - shifter overlapPink - extra nodes to distinguish opposite shifters

Page 17: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

17ASPDAC’2001

Odd Cycles in Feature GraphOdd Cycles in Feature Graph

Feature graph has ODD CYCLE

Proper Phase Assignment IMPOSSIBLE

Page 18: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

18ASPDAC’2001

Shifting in Feature Graph IShifting in Feature Graph I

feature shifting = delete EDGEof feature graph

Page 19: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

19ASPDAC’2001

Shifting in Feature Graph IIShifting in Feature Graph II

feature shifting =delete BLUE NODEof feature graph

Page 20: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

20ASPDAC’2001

Widening in Feature GraphWidening in Feature Graph

feature widening = delete BLACK NODEof feature graph

Page 21: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

21ASPDAC’2001

Graph BipartizationGraph Bipartization

Proper phase assignment Proper phase assignment Feature graphFeature graph bipartitebipartite

Minimum Perturbation Problem Minimum Perturbation Problem

Graph Bipartization ProblemGraph Bipartization ProblemLayout modifications Layout modifications Graph modificationsGraph modifications

feature shiftingfeature shifting edge edge deletiondeletion

feature widening feature widening node deletionnode deletion

both typesboth types with weightswith weights node-weighted deletion node-weighted deletion

Page 22: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

22ASPDAC’2001

Edge-Deletion Graph BipartizationEdge-Deletion Graph Bipartization

In general graphs In general graphs NP-hardNP-hardConstant-factor approximation Constant-factor approximation

In planar graphs In planar graphs T-join problem T-join problem can be solved efficiently:can be solved efficiently:reduction to min-weight matching O(nreduction to min-weight matching O(n33) (Hadlock) ) (Hadlock) LP-based solution (Barahona) O(nLP-based solution (Barahona) O(n3/23/2logn)logn)

no known implementation no known implementation fast reduction to matching via gadgets O(fast reduction to matching via gadgets O(nn3/23/2 log n) log n)

Page 23: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

23ASPDAC’2001

The T-join ProblemThe T-join Problem

How to delete How to delete minimum-costminimum-cost set of edges from set of edges from conflict graph G to eliminate odd cycles? conflict graph G to eliminate odd cycles?

Construct geometric dual graph D=dual(G)Construct geometric dual graph D=dual(G)Find odd-degree vertices T in DFind odd-degree vertices T in DSolve the Solve the T-join problemT-join problem in Din D::

find min-weight edge set J in D such thatfind min-weight edge set J in D such thatall T-vertices has all T-vertices has odd odd degreedegreeall other vertices have all other vertices have even even degreedegree

Solution J corresponds to desired min-cost edge Solution J corresponds to desired min-cost edge set in conflict graph Gset in conflict graph G

Page 24: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

24ASPDAC’2001

T-join Problem: Reduction to MatchingT-join Problem: Reduction to Matching

Desirable properties of reduction to matching:Desirable properties of reduction to matching:exact (i.e., optimal)exact (i.e., optimal)not much memory (say 2-3Xmore) not much memory (say 2-3Xmore) results in a very fast solutionresults in a very fast solution

Solution: Solution: gadgetsgadgetsreplace each edge/vertex with gadgets s.t.replace each edge/vertex with gadgets s.t. matching all vertices in gadgeted graph matching all vertices in gadgeted graph T-join in original graphT-join in original graph

Page 25: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

25ASPDAC’2001

T-join Problem: Reduction to MatchingT-join Problem: Reduction to Matching replace each vertex with a chain of trianglesreplace each vertex with a chain of trianglesone more edge for T-verticesone more edge for T-vertices in graph D: m = #edges, n = #vertices, t = #Tin graph D: m = #edges, n = #vertices, t = #T in gadgeted graph: 4m-2n-t vertices, 7m-5n-t edgesin gadgeted graph: 4m-2n-t vertices, 7m-5n-t edgescost of red edges = original dual edge costs cost cost of red edges = original dual edge costs cost

of (black) edges in triangles = 0of (black) edges in triangles = 0

vertex in T

vertex T

Page 26: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

26ASPDAC’2001

Example of Gadgeted GraphExample of Gadgeted Graph

Dual Graph

Gadgeted graph

black + red edges ==min-cost perfect matching

Page 27: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

27ASPDAC’2001

Node-Deletion Graph BipartizationNode-Deletion Graph Bipartization

Difficult for general graphsDifficult for general graphsMAX SNP-hard MAX SNP-hard no very good approximation no very good approximation

For planar graphs For planar graphs Primal-dual algorithm (GW98)Primal-dual algorithm (GW98)

takes in account weights (to distinguish two modification types)

simple for implementation provably good: 9/4 approximationquadratic runtime

Greedy Vertex Cover AlgorithmGreedy Vertex Cover Algorithm

Page 28: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

28ASPDAC’2001

Primal-Dual Approximation Algorithm (GW)Primal-Dual Approximation Algorithm (GW)

Input:Input: Planar graph (with node weights) Planar graph (with node weights) Output:Output: Bipartite subgraph Bipartite subgraph

For each face F: age(F) 0 While there are odd faces do

for each odd face F: age(F) age(F)+1delete v with max weight (v) = sum of ages of faces with v

for new face F: age(F) 0 In reverse order of node deletions do

bring node v back

if an odd face appears, then delete v permanently

Page 29: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

29ASPDAC’2001

0

0

0

0

0

00

00 0

0

0 0

0

1

2

1

2

0

02

23 1

3

1 3

1

1

2

1

2

0

02

23 1

3

1 3

1

Example of GW AlgorithmExample of GW Algorithm

Page 30: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

30ASPDAC’2001

Example of GW AlgorithmExample of GW Algorithm

1

2

1

2

0

02

2

13

1 3

1

Page 31: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

31ASPDAC’2001

Example of GW AlgorithmExample of GW Algorithm

1

2

1

2

0

02

2

13

1 3

1

Page 32: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

32ASPDAC’2001

Example of GW AlgorithmExample of GW Algorithm

2

4

2

4

0

14

4

25

2 5

2

Page 33: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

33ASPDAC’2001

Example of GW AlgorithmExample of GW Algorithm

2

4

2

4

0

14

4

25

2 5

2

Page 34: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

34ASPDAC’2001

Example of GW AlgorithmExample of GW Algorithm

2

4

2

4

0

14

4

2

2 5

2

Page 35: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

35ASPDAC’2001

Example of GW AlgorithmExample of GW Algorithm

3

6

3

5

0

16

5

2

2 5

2

Page 36: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

36ASPDAC’2001

Example of GW AlgorithmExample of GW Algorithm

3

6

3

5

0

16

5

2

2 5

2

Page 37: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

37ASPDAC’2001

Example of GW AlgorithmExample of GW Algorithm

3

6

3

5

0

1

5

2

2 5

2

Page 38: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

38ASPDAC’2001

Greedy Vertex Cover Algorithm (GVC)Greedy Vertex Cover Algorithm (GVC) Input:Input: Planar graph (with node weights) Planar graph (with node weights) Output:Output: Bipartite subgraph Bipartite subgraph

Color all nodes into 2 colors using BFS node traversal Find the set T of all violating edges (endpoints of the same color)

Greedily cover with vertices violating edges:

Wile there are violating edges doDelete node incident to maximum # of violating edges

Page 39: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

39ASPDAC’2001

Experiment SettingExperiment Setting

Compact layouts Compact layouts aggressivelyaggressively::design rule = between features should be design rule = between features should be single single shiftershifter

Determine shifter overlapsDetermine shifter overlaps

Find minimum # of modifications Find minimum # of modifications to resolve all phase conflictsto resolve all phase conflicts

Two industrial benchmarks: Metal LayersTwo industrial benchmarks: Metal Layers# wires = # wires = 8622 (L1) and 8622 (L1) and 4539 (L2)4539 (L2)# overlaps = # overlaps = 7805 (L1) and 7805 (L1) and 5439 (L2)5439 (L2)

Page 40: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

40ASPDAC’2001

Experimental ResultsExperimental Results

BenchmarkAlgorithm Cost Ratio L1 L2

GVC 1.5 430 371 GW 1.5 267 225GVC 2.0 461 408

GW 2.0 306 263 GVC 3.0 475 438 GW 3.0 344 307

Edge-deletion 314 234

Cost Ratio = cost of feature wideningcost of feature shifting

GW algorithm is 2 times better than Greedy Vertex Cover Algorithm Exact edge-deletion algorithm is better than GW for cost ratio > 2Exact edge-deletion algorithm is better than GW for cost ratio > 2

Runtime:Runtime: GVC is linear and very fastGVC is linear and very fast Exact edge-deletion is 2x faster than GW for benchmarksExact edge-deletion is 2x faster than GW for benchmarks

Page 41: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

41ASPDAC’2001

Conclusions/Future WorkConclusions/Future WorkContributionsContributions

first formulation of the minimum perturbation problem for first formulation of the minimum perturbation problem for bright-field Alternating PSM technologybright-field Alternating PSM technology

unified approach for feature widening and shiftingunified approach for feature widening and shiftingoptimal solution for feature shifting and approximate optimal solution for feature shifting and approximate

solution when feature when both modifications are allowedsolution when feature when both modifications are allowed

Future work: develop a model for PSM in hierarchical Future work: develop a model for PSM in hierarchical designs:designs:standard cell overlappingstandard cell overlappingcomposability of standard cellscomposability of standard cellsmultiple PSM-aware versions of master cellsmultiple PSM-aware versions of master cells

Page 42: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

EXTRA SLIDESEXTRA SLIDES

Page 43: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

43ASPDAC’2001

Standard-Cell PSM Standard-Cell PSM

Hierarchical layout vs flat layoutHierarchical layout vs flat layout Free composability of standard cellsFree composability of standard cells Cells may overlap: unique master cell causes area loss Cells may overlap: unique master cell causes area loss Multiple PSM-aware versions of master cellMultiple PSM-aware versions of master cell Version-composability matrixVersion-composability matrix

Page 44: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

44ASPDAC’2001

Taxonomy of ComposabilityTaxonomy of Composability

(Same)(Same) Same rowSame row composability: any cell can be placed composability: any cell can be placed immediately adjacent to any otherimmediately adjacent to any other

(Adj)(Adj) Adjacent rowAdjacent row composability: any two cells from composability: any two cells from adjacent rows are freely combined adjacent rows are freely combined

Four cases of cell libraries Four cases of cell libraries G=guaranteed composability, NG=not guaranteedG=guaranteed composability, NG=not guaranteedAdj-G/Same-G = free composabilityAdj-G/Same-G = free composabilityAdj-G/Same-NG Adj-G/Same-NG Adj-NG/Same-G Adj-NG/Same-G Adj-NG/Same-NGAdj-NG/Same-NG

Page 45: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

45ASPDAC’2001

Taxonomy of ComposabilityTaxonomy of Composability

VDD

VDD

GND

VDD

VDD

GND

VDD

VDD

GND

Adj-G/Same-NG

Adj-NG/Same-G

Adj-NG/Same-NG

Page 46: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

46ASPDAC’2001

Adj-G/Same-NGAdj-G/Same-NG

GIVEN: GIVEN: order of cells in a row order of cells in a row

version compatibility matrix version compatibility matrix

FIND: FIND: version assignment version assignment such that versions of adjacent cells are compatiblesuch that versions of adjacent cells are compatible (BFS) traversal of DAG(BFS) traversal of DAG

nodes = versionsnodes = versionsarcs = compatibilityarcs = compatibility

Page 47: New Graph Bipartizations for Double-Exposure, Bright Field Alternating Phase-Shift Mask Layout

47ASPDAC’2001

Adj-G/Same-NGAdj-G/Same-NG

GIVEN: GIVEN: order of cells in a row (or “optimal” placement)order of cells in a row (or “optimal” placement)

version compatibility weighted matrix (weight = #extra sites)version compatibility weighted matrix (weight = #extra sites)

FIND: FIND: version assignment minimizing version assignment minimizing either total # of extra sites either total # of extra sites or total/max displacement from optimal placementor total/max displacement from optimal placement Dynamic Programming O(kV), k=max displacementDynamic Programming O(kV), k=max displacement

Restricted DP Restricted DP