GREMA: Graph Reduction Based Efficient Mask Assignment for Double Patterning Technology Yue Xu,...

Preview:

Citation preview

GREMA: Graph Reduction Based Efficient MaskAssignment for Double Patterning Technology

Yue Xu , Chris Chu Iowa State University

Form ICCAD2009

Outline

•Introduction•Problem formulation•Candidate Stitch generation•Mask assignment

▫Initial Mask assignment▫Generate of Flipping Graph▫Simplification of Flipping Graph▫ILP Formulation for Max Cut Problem

•Experimental Results

Double Patterning5

AB

CD

E

Layout Decomposition

mindp

Mask 2Mask 1

Stitch

DPT decomposition methodology•1. model-based decomposition approach is

based on optical simulation => more accurate , but time-consuming

•2. rule-based approach slices and assigns patterns based on geometric relationship between patterns => efficiency

Outline

•Introduction•Problem formulation•Candidate Stitch generation•Mask assignment

▫Initial Mask assignment▫Generate of Flipping Graph▫Simplification of Flipping Graph▫ILP Formulation for Max Cut Problem

•Experimental Results

Problem formulation

•Given : circuit layout ,the minimum distance btw each patterns.

•Objective : minimize the patterns violating the minimum distance rule and the number of stitches

Overview( two stage approach )

Outline

•Introduction•Problem formulation•Candidate Stitch generation•Mask assignment

▫Initial Mask assignment▫Generate of Flipping Graph▫Simplification of Flipping Graph▫ILP Formulation for Max Cut Problem

•Experimental Results

Conflict Graph

A CB

L

Candidate Stitch generation

•The odd cycle in CG => infeasible•We can slice one node in the odd cycle <=

useful stitch•Some slicing may be unused. (i.e A -> B ->

L )•How to find a useful slicing node? => node

projection idea introduced in [11].•GREMA uses breadth first search (BFS) to

find odd cycles and choose all suitable candidate stitches.

Outline

•Introduction•Problem formulation•Candidate Stitch generation•Mask assignment

▫Initial Mask assignment▫Generate of Flipping Graph▫Simplification of Flipping Graph▫ILP Formulation for Max Cut Problem

•Experimental Results

Initial Mask assignment

•Cluster: conflict edge connected component.

•GREMA arbitrarily picks up a node in each cluster and denotes the node as cluster head.

•assign all of the cluster node to same partition.

Generate of Flipping Graph

•Abstract each cluster in DG into a single node.•Flipping of Ci and Cj : let the cluster heads of

Ci and Cj to be different partition (change which one?)

•Flipping gain▫Before flipping: Ns After flipping: Nd▫Flipping gain: Nd - Ns

Simplification of Flipping Graph•Case1: tree structure

Simplification of Flipping Graph

•Case 2: Serial Edge

Simplification of Flipping Graph

Simplification procedure

while( only exist two nodes or all of nodes have at least degree three )while( exist degree one node )detects all degree one node and remove itserial_edge_simplify()parellel_edge_simplify() while( exist degree one node )detects all degree one node and remove it

ILP_solve()

Example

ILP Formulation for Max Cut Problem

Outline

•Introduction•Problem formulation•Candidate Stitch generation•Mask assignment

▫Initial Mask assignment▫Generate of Flipping Graph▫Simplification of Flipping Graph▫ILP Formulation for Max Cut Problem

•Experimental Results

Experimental Result

These benchmarks use cells from Artisan 90nm libraries with 140*0.4nm minimum spacing and 100*0.4nm minimum line width.

Recommended