arxiv: v1 [cs.ar] 11 Feb 2014

Similar documents
Layout Decomposition for Triple Patterning Lithography

COMPLEXITY OF COUNTING PLANAR TILINGS BY TWO BARS

Constructive Geometric Constraint Solving

1 Introduction to Modulo 7 Arithmetic

CSC Design and Analysis of Algorithms. Example: Change-Making Problem

Paths. Connectivity. Euler and Hamilton Paths. Planar graphs.

, each of which is a tree, and whose roots r 1. , respectively, are children of r. Data Structures & File Management

Outline. 1 Introduction. 2 Min-Cost Spanning Trees. 4 Example

Planar Upward Drawings

An undirected graph G = (V, E) V a set of vertices E a set of unordered edges (v,w) where v, w in V

Layout Decomposition for Quadruple Patterning Lithography and Beyond

The University of Sydney MATH2969/2069. Graph Theory Tutorial 5 (Week 12) Solutions 2008

Cycles and Simple Cycles. Paths and Simple Paths. Trees. Problem: There is No Completely Standard Terminology!

Present state Next state Q + M N

(2) If we multiplied a row of B by λ, then the value is also multiplied by λ(here lambda could be 0). namely

Graph Isomorphism. Graphs - II. Cayley s Formula. Planar Graphs. Outline. Is K 5 planar? The number of labeled trees on n nodes is n n-2

12/3/12. Outline. Part 10. Graphs. Circuits. Euler paths/circuits. Euler s bridge problem (Bridges of Konigsberg Problem)

5/9/13. Part 10. Graphs. Outline. Circuits. Introduction Terminology Implementing Graphs

V={A,B,C,D,E} E={ (A,D),(A,E),(B,D), (B,E),(C,D),(C,E)}

Why the Junction Tree Algorithm? The Junction Tree Algorithm. Clique Potential Representation. Overview. Chris Williams 1.

Outline. Computer Science 331. Computation of Min-Cost Spanning Trees. Costs of Spanning Trees in Weighted Graphs

CSE 373: More on graphs; DFS and BFS. Michael Lee Wednesday, Feb 14, 2018

Exam 1 Solution. CS 542 Advanced Data Structures and Algorithms 2/14/2013

b. How many ternary words of length 23 with eight 0 s, nine 1 s and six 2 s?

V={A,B,C,D,E} E={ (A,D),(A,E),(B,D), (B,E),(C,D),(C,E)}

Outline. Binary Tree

Similarity Search. The Binary Branch Distance. Nikolaus Augsten.

Algorithmic and NP-Completeness Aspects of a Total Lict Domination Number of a Graph

0.1. Exercise 1: the distances between four points in a graph

CSE 373. Graphs 1: Concepts, Depth/Breadth-First Search reading: Weiss Ch. 9. slides created by Marty Stepp

Module graph.py. 1 Introduction. 2 Graph basics. 3 Module graph.py. 3.1 Objects. CS 231 Naomi Nishimura

Garnir Polynomial and their Properties

ECE COMBINATIONAL BUILDING BLOCKS - INVEST 13 DECODERS AND ENCODERS

A High-Performance Triple Patterning Layout Decomposer with Balanced Density

CS 241 Analysis of Algorithms

12. Traffic engineering

Graphs. Graphs. Graphs: Basic Terminology. Directed Graphs. Dr Papalaskari 1

Using the Printable Sticker Function. Using the Edit Screen. Computer. Tablet. ScanNCutCanvas

Designing A Concrete Arch Bridge

EE1000 Project 4 Digital Volt Meter

A 4-state solution to the Firing Squad Synchronization Problem based on hybrid rule 60 and 102 cellular automata

Math 61 : Discrete Structures Final Exam Instructor: Ciprian Manolescu. You have 180 minutes.

Seven-Segment Display Driver

CS 461, Lecture 17. Today s Outline. Example Run

Problem solving by search

Outline. Circuits. Euler paths/circuits 4/25/12. Part 10. Graphs. Euler s bridge problem (Bridges of Konigsberg Problem)

S i m p l i f y i n g A l g e b r a SIMPLIFYING ALGEBRA.

CS September 2018

Graphs. CSC 1300 Discrete Structures Villanova University. Villanova CSC Dr Papalaskari

ECE 407 Computer Aided Design for Electronic Systems. Circuit Modeling and Basic Graph Concepts/Algorithms. Instructor: Maria K. Michael.

# 1 ' 10 ' 100. Decimal point = 4 hundred. = 6 tens (or sixty) = 5 ones (or five) = 2 tenths. = 7 hundredths.

Announcements. Not graphs. These are Graphs. Applications of Graphs. Graph Definitions. Graphs & Graph Algorithms. A6 released today: Risk

Solutions to Homework 5

Section 10.4 Connectivity (up to paths and isomorphism, not including)

CS200: Graphs. Graphs. Directed Graphs. Graphs/Networks Around Us. What can this represent? Sometimes we want to represent directionality:

QUESTIONS BEGIN HERE!

Nefertiti. Echoes of. Regal components evoke visions of the past MULTIPLE STITCHES. designed by Helena Tang-Lim

OpenMx Matrices and Operators

learning objectives learn what graphs are in mathematical terms learn how to represent graphs in computers learn about typical graph algorithms

CSE 373: AVL trees. Warmup: Warmup. Interlude: Exploring the balance invariant. AVL Trees: Invariants. AVL tree invariants review

NP-Completeness. CS3230 (Algorithm) Traveling Salesperson Problem. What s the Big Deal? Given a Problem. What s the Big Deal? What s the Big Deal?

Solutions for HW11. Exercise 34. (a) Use the recurrence relation t(g) = t(g e) + t(g/e) to count the number of spanning trees of v 1

CS61B Lecture #33. Administrivia: Autograder will run this evening. Today s Readings: Graph Structures: DSIJ, Chapter 12

Register Allocation. How to assign variables to finitely many registers? What to do when it can t be done? How to do so efficiently?

New challenges on Independent Gate FinFET Transistor Network Generation

QUESTIONS BEGIN HERE!

Register Allocation. Register Allocation. Principle Phases. Principle Phases. Example: Build. Spills 11/14/2012

MAT3707. Tutorial letter 201/1/2017 DISCRETE MATHEMATICS: COMBINATORICS. Semester 1. Department of Mathematical Sciences MAT3707/201/1/2017

Trees as operads. Lecture A formalism of trees

(a) v 1. v a. v i. v s. (b)

Numbering Boundary Nodes

Graph Contraction and Connectivity

COMP108 Algorithmic Foundations

A Simple Code Generator. Code generation Algorithm. Register and Address Descriptors. Example 3/31/2008. Code Generation

Weighted graphs -- reminder. Data Structures LECTURE 15. Shortest paths algorithms. Example: weighted graph. Two basic properties of shortest paths

Page 1. Question 19.1b Electric Charge II Question 19.2a Conductors I. ConcepTest Clicker Questions Chapter 19. Physics, 4 th Edition James S.

16.unified Introduction to Computers and Programming. SOLUTIONS to Examination 4/30/04 9:05am - 10:00am

Properties of Hexagonal Tile local and XYZ-local Series

A PROPOSAL OF FE MODELING OF UNIDIRECTIONAL COMPOSITE CONSIDERING UNCERTAIN MICRO STRUCTURE

Integration Continued. Integration by Parts Solving Definite Integrals: Area Under a Curve Improper Integrals

Announcements. These are Graphs. This is not a Graph. Graph Definitions. Applications of Graphs. Graphs & Graph Algorithms

GREEDY TECHNIQUE. Greedy method vs. Dynamic programming method:

N=4 L=4. Our first non-linear data structure! A graph G consists of two sets G = {V, E} A set of V vertices, or nodes f

DETAIL B DETAIL A 7 8 APPLY PRODUCT ID LABEL SB838XXXX ADJ FOUR POST RACK SQUARE HOLE RAIL B REVISION

Greedy Algorithms, Activity Selection, Minimum Spanning Trees Scribes: Logan Short (2015), Virginia Date: May 18, 2016

arxiv: v1 [cs.ds] 20 Feb 2008

EXAMPLE 87.5" APPROVAL SHEET APPROVED BY /150HP DUAL VFD CONTROL ASSEMBLY CUSTOMER NAME: CAL POLY SLO FINISH: F 20

A Low Noise and Reliable CMOS I/O Buffer for Mixed Low Voltage Applications

Quartets and unrooted level-k networks

1. Determine whether or not the following binary relations are equivalence relations. Be sure to justify your answers.

CSE303 - Introduction to the Theory of Computing Sample Solutions for Exercises on Finite Automata

MULTIPLE-LEVEL LOGIC OPTIMIZATION II

Computational Biology, Phylogenetic Trees. Consensus methods

Jonathan Turner Exam 2-10/28/03

TOPIC 5: INTEGRATION

Steinberg s Conjecture is false

Analysis for Balloon Modeling Structure based on Graph Theory

Module 2 Motion Instructions

DUET WITH DIAMONDS COLOR SHIFTING BRACELET By Leslie Rogalski

Clustering for Processing Rate Optimization

Transcription:

Lyout Domposition or Tripl Pttrning Lithogrphy Bi Yu, Kun Yun, Boyng Zhng, Duo Ding, Dvi Z. Pn ECE Dpt. Univrsity o Txs t Austin, Austin, TX USA 7871 Cn Dsign Systms, In., Sn Jos, CA USA 9514 Emil: {i, pn}@r.utxs.u rxiv:140.459v1 [s.ar] 11 F 014 Astrt As imum tur siz n pith sping urthr rs, tripl pttrning lithogrphy (TPL) is possil 19nm xtnsion long th prigm o oul pttrning lithogrphy (DPL). Howvr, thr is vry littl stuy on TPL lyout omposition. In this ppr, w show tht TPL lyout omposition is mor iiult prolm thn tht or DPL. W thn propos gnrl intgr linr progrmg ormultion or TPL lyout omposition whih n simultnously imiz onlit n stith numrs. Sin ILP hs vry poor slility, w propos thr lrtion thniqus without sriiing solution qulity: inpnnt omponnt omputtion, lyout grph simpliition, n rig omputtion. For vry ns lyouts, vn with ths spup thniqus, ILP ormultion my still too slow. Thror, w propos novl vtor progrmg ormultion or TPL omposition, n solv it through tiv smiinit progrmg (SDP) pproximtion. Exprimntl rsults show tht th ILP with lrtion thniqus n ru 8% runtim ompr to th slin ILP. Using SDP s lgorithm, th runtim n urthr ru y 4% with som tro in th stith numr (ru y 7%) n th onlit (9% mor). Howvr, or vry ns lyouts, SDP s lgorithm n hiv 140 sp-up vn ompr with lrt ILP. 1. INTRODUCTION As imum tur siz urthr sls, th smionutor inustry is grtly hllng o pttrning su-nm hlpith u to th ly o vil nxt gnrtion lithogrphy suh s Extrm Ultr Violt (EUV). Doul pttrning lithogrphy (DPL) is wily rogniz s promising solution or nm, nm, n possily 16nm volum hip proution. As shown in Fig. 1, th ky hllng o DPL lis in th omposition pross y whih th originl lyout is ivi into two msks. Thn, thr r two xposur/thing stps, through whih th lyout n prou. Th vntg o this pproh is tht th tiv pith n oul, whih improvs th lithogrphy rsolution. During th omposition, whn th istn twn th two pttrns is lss thn imum olorl istn s, thy n to ssign to irnt msks to voi onlit. Somtims onlit n solv y splitting pttrn into two touhing prts, ll stiths. In Fig. 1(), polygon is split into two polygons 1 n in orr to rsolv th omposition onlits. Howvr th introu stiths l to yil loss u to ovrly rror [1]. Thror, two o th hllngs in lyout omposition r onlit n stith imiztion. Th prigm o oul pttrning my urthr xtn to tripl pttrning lithogrphy (TPL). Inustry hs lry xplor th tst-hip pttrns with tripl pttrning or vn () 1 Stith () 1 msk1 msk Fig. 1. In DPL, singl lyr is ompos into two msks n th pith n inrs tivly. () Conlits Fig.. () In DPL, vn stith insrtion n not voi ntiv onlit. () Th ntiv onlits n rsolv y TPL. qurupl pttrning []. By using TPL, w n hiv urthr tur-siz sling through pith-tripling. It shll not tht in DPL, vn with stith insrtion, thr my ntiv onlits []. Fig. () shows thrwy onlit yl twn turs, n, whr ny two o thm r within th s. As onsqun, thr is no hn to prou onlit-r solution using DPL omposition. Howvr, w n sily rsolv this prolm i th lyout is ompos into thr msks s shown in Fig. (). Yt this os not mn TPL lyout omposition prolm oms sir. Atully sin th turs n pk losr, th prolm turns out to mor iiult, s to shown in Stion. Muh prvious rsrh ouss on th oul pttrning lyout omposition prolm, whih is gnrlly rgr s two-oloring prolm on onlit grph. Intgr Linr Progrmg (ILP) is opt in [4][5] to imiz th stith numr n/or th onlit numr. Xu t l. [6] propos n iint grph rution-s lgorithm or stith imiztion, n Yng t l. [7] propos st -ut s pproh. A mthing s omposr is propos to imiz oth th onlit n th stith numrs [8]. To rsolv th ntiv onlit, svrl works introu lyout moiition to urthr imiz th onlit numr [9][10][11]. Howvr, lyout () ()

moiition my us nw prolms, i.., tig losur, hotspot. Until now, thr r vry w invstigtions on TPL lyout omposition. [1] proposs tripl pttrning oloring lgorithm, whih opts SAT Solvr. Howvr, thir work only ls with ontt rrys, not gnrl lyout struturs with wirs, ontts, n so on. Bsis, it os not involv ny stith imiztion. [1][14] propos sl-lign tripl pttrning (SATP) pross to xtn 19nm immrsion lithogrphy to hl-pith 15nm pttrning. But th SATP pross nnot insrt ny stith, whih woul grtly onstrin th possil lyout pttrns tht r omposl [15]. To our st knowlg, thr is no stuy so r on lyout omposition on TPL or gnrl lyout styls. In this ppr, w propos th irst systmti stuy on lyout omposition or tripl pttrning lithogrphy. W irst ormult gnrl ILP ormultion or TPL lyout omposition to simultnously imiz onlit n stith. To improv slility, w urthr propos thr lrtion thniqus without loss o solution qulity: lyout grph simpliition, inpnnt omponnt omputtion n rigs omputtion. A smiinit progrmg s pproximtion lgorithm is urthr propos to improv slility. Smiinit progrmg is n xtnsion o linr progrmg to pproximtly solv NP-hr prolms n it hs n sussully ppli to mny otoril prolms [16][17]. Our ontriutions o this ppr inlu: Gnrl ILP ormultion to simultnously imiz onlit n stith or TPL lyout omposition; Thr lrtion thniqus to improv ILP slility; A novl vtor progrmg ormultion or TPL omposition n its smiinit progrmg s pproximtion lgorithm whih n urthr l with vry ns lyouts whr vn lrt ILP oms too slow; Our xprimntl rsults r vry promising in trms o qulity o rsults n runtim tro. Th rst o th ppr is orgniz s ollows: in Stion, w isuss th prolm ormultion n thn nlyz prolm omplxity. Th si lgorithm n som lrtion thniqus r sri in stion. Stion 4 proposs smiinit progrmg s lgorithm to urthr lrt th si lgorithm. Stion 5 prsnts th xprimnt rsults, ollow y onlusion in Stion 6.. PROBLEM FORMULATION AND COMPLEXITY Som prliris on TPL r provi in this stion, inluing som initions n th prolm ormultion. W lso monstrt th omplxity o th prolm. A. Prolm Formultion Givn lyout whih is spii y turs in polygonl shps, lyout grph [4] n omposition grph [9] r onstrut. Dinition 1 (Lyout Grph): Th lyout grph (LG) is n unirt grph whos nos r th givn lyout s () () Fig.. Lyout grph onstrution n omposition grph onstrution () Input lyout rprsnting s irrgulr polygons. ()Corrsponing lyout grph, whr ll gs r onlit gs. ()Th no projtion. ()Corrsponing omposition grph, whr sh gs r stith gs. polygonl shps n whr n g xists i n only i th two polygonl shps r within imum oloring istn s o h othr. Fig. () givs n xmpl o n input lyout; th orrsponing lyout grph is shown in Fig. (). All th gs in lyout grph r ll Conlit Egs (CE). A onlit xists i n only i two nos r onnt y CE n r in th sm msk. In othr wors, h onlit g is onlit nit. Dinition (Domposition Grph): Givn lyout rprsnt y st o polygonl shps, th omposition grph (DG) is n unirt grph with singl st o nos V, n two sts o gs, CE n SE, whih ontin th onlit gs n stith gs, rsptivly. V hs on or mor nos or h polygonl shp n h no is ssoit with polygonl shp. An g is in CE i th two polygonl shps r within imum oloring istn s o h othr. An g is in SE i thr is stith twn th two nos whih r ssoit with th sm polygonl shp. On th lyout grph, th no projtion is irst prorm, whr projt sgmnts r highlight y ol lins in Fig. (). Bs on th projtion rsult, ll th lgl splitting lotions r omput. Thn th omposition grph is onstrut, s shown in Fig. (). Not tht th onlit gs r mrk s lk gs, whil stith gs r mrk s sh gs. Prolm 1 (TPL lyout omposition): Givn lyout whih is spii y turs in polygonl shps, th lyout grph n th omposition grph r onstrut. Our gol is to ssign ll th nos in th omposition grph to thr msks to imiz th stith numr n th onlit numr. () () 1 1

CE SE V r i x i ij s ij x i1, x i ij1, ij s ij1, s ij B. Prolm Complxity TABLE I NOTATION Nottion us in Mthmtil progrmg st o onlit gs st o stith gs. th st o polygns. th i th lyout polygons vril noting th oloring o r i 0-1 vril, ij = 1 whn onlit twn r i n r j 0-1 vril, s ij = 1 whn stith twn r i n r j Nottion us in ILP ormultion two 1-it 0-1 vrils to rprsnts olors two 1-it 0-1 vrils to tr ij two 1-it 0-1 vrils to tr s ij At irst gln, th lyout omposition is similr to grph oloring prolm. Howvr, sin stith gs r introu, th prolm to imiz onlit n stith is mor omplit. For oul pttrning s, iing whthr grph is -olorl is sy y tring i thr xists o yls. For onlit n stith imiztion, i omposition grph is plnr DPL lyout omposition n solv in polynomil tim [8]. In orr to solv th tripl pttrning issu, th prolm oms mor omplit. Lmm 1: Diing whthr plnr grph is -olorl is NP-omplt [18]. Lmm 1 n nturlly xtn to gnrl grph. Bs on Lmm 1, th mthoology in [1] is not suitl or TPL omposition: SAT solvr n only work or -olorl lyout grph, whih nnot hk in polynomil tim. Lmm : Coloring -olorl grph with 4 olors is NP-omplt [19]. -oloring prolm is to ssign th nos in on -olorl grph to olors. Sin oloring th grph with 4 olors nnot inish in polynomil tim, it n shown - oloring prolm is NP-hr. Bs on ov lmms, vn th omposition grph is plnr, w rh th ollowing thorm: Thorm 1: TPL lyout omposition prolm is NPhr. W n prov this thorm y ruing -Coloring prolm to th TPL omposition prolm. Du to pg limit, th til proo is skipp hr.. BASIC ALGORITHM In this stion, w will prsnt our si lgorithms, whih r s on th Intgr Linr Progrmg (ILP). Sin th tig omplxity or ILP is vry high, w propos thr lrtion thniqus to ivi th whol prolm into svrl smllr ons. Th ntir low is shown in Fig. 4. A. Mthmtil Formultion or TPL Domposition Th mthmtil ormultion or TPL lyout omposition is shown in (1). For onvnin, som nottions in mthmtil progrmg n ILP ormultion r list in Tl I. Th ojtiv is to simultnously imiz oth th onlit numr n th stith numr. Th prmtr α is usr-in prmtr or ssigning rltiv importn twn th onlit numr n th stith numr. ij CE ij + α ij SE s ij (1) s.t. ij = (x i == x j ) ij CE (1) s ij = x i x j ij SE (1) x i {0, 1, } i V (1) whr x i is vril or th thr olors o rtngls r i, ij is inry vril or onlit g ij CE n s ij is inry vril or stith g ij SE. Constrint (1) is us to vlut th onlit numr whn touh nos r i n r j r ssign irnt olors (msks). Constrint (1) is us to lult th stith numr. I no r i n no r j r ssign th sm olor (msk), stith s ij is introu. B. ILP Formultion or TPL Lyout Domposition W will now show how to ormult (1) with Intgr Linr Progrmg. Not tht qs. (1) n (1) n linriz only whn x i is 0-1 vril [4], whih nnot rprsnt thr irnt olors. To hnl this prolm, w rprsnt th olor o h no using two 1-it 0-1 vrils x i1 n x i. In orr to limit th numr o olors or h no to, or h pir (x i1, x i ) th vlu (1, 1) is not prmitt. In othr wors, only vlus (0, 0), (0, 1) n (1, 0) r llow. Thus, (1) n ormult s ollows: ij + α s ij () ij CE s.t. x i1 + x i 1 ij SE () x i1 + x j1 1 + ij1 ij CE () (1 x i1 ) + (1 x j1 ) 1 + ij1 ij CE () x i + x j 1 + ij ij CE () (1 x i ) + (1 x j ) 1 + ij ij CE () ij1 + ij 1 + ij ij CE () x i1 x j1 s ij1 ij SE (g) x j1 x i1 s ij1 ij SE (h) x i x j s ij ij SE (i) x j x i s ij ij SE (j) s ij s ij1, s ij s ij ij SE (k) Th ojtiv untion is th sm s tht in (1), whih imizs th wight summtion o th onlit numr n th stith numr. Constrint () is us to limit th numr o olors or h no to. Constrints () to () r quivlnt to onstrint (1), whr 0-1 vril ij1 monstrts whthr x i1 quls to x j1, n ij monstrts whthr x i quls to x j. 0-1 vril ij is tru only i two nos onnt y onlit g ij r in th sm olor,.g. oth ij1 n ij r tru.

Input Lyout Lyout Grph Constrution Inpnnt Componnt Computtion Lyout Grph Simpliition Fig. 4. Bsi Algorithms Flow Domposition Grph Constrution Brig Computtion ILP / Vtor Progrmg Output Msks Similrly, onstrints (g) to (k) r quivlnt to onstrint (1). 0-1 vril s ij1 monstrts whthr x i1 is irnt rom x j1, n s ij monstrts whthr x i is irnt rom x j. Stith s ij is tru i ithr s ij1 or s ij is tru. C. Alrtion Thniqus Sin ILP is n NP-hr prolm, its runtim inrss rmtilly with th siz o omposition grph. W propos thr lrtion thniqus to simpliy th lyout grph n th omposition grph in orr to ru th tim omplxity o ILP. As shown in Fig.4, our lrtion low onsists o thr stps: Inpnnt Componnt Computtion, Lyout Grph Simpliition n Brigs Computtion. 1) Inpnnt Componnt Computtion: W propos inpnnt omponnt omputtion on th omposition grph to ru th ILP prolm siz without losing optimlity. In lyout grph o rl sign, w osrv mny isolt lustrs. Thror, w n rk own th whol sign into svrl inpnnt omponnts, n pply si ILP ormultion or h on. Th ovrll solution n tkn s th union o ll th omponnts without ting th glol optimlity. Th runtim o ILP ormultion rss rmtilly with th rution o vrils n onstrints, n th oloring ssignmnt n tivly lrt. Inpnnt omponnt omputtion is wll-known thniqu whih hs n ppli in mny prvious stuis [4][5][7][9]. Algorithm 1 Lyout Grph Simpliition n Color Assignmnt Rquir: Lyout Grph G to simplii, stk S 1: whil n G s.t. gr(n) o : S.push(n); : G.lt(n); 4: n whil 5: Domposition grph onstrution. 6: TPL lyout omposition or nos not simplii. 7: whil!s.mpty() o 8: n = S.pop(); 9: G.(n); 10: Assign n lgl olor. 11: n whil () () Fig. 6. Brigs Computtion. () Atr rigs omputtion, ll g s rig. () In two su-grphs rry out ILP ormultion. () Rott olors in on su-grph to rig. ) Lyout Grph Simpliition: W n simpliy th lyout grph y rmoving ll nos with gr lss thn or qul to two. At th ginning, ll nos with gr lss thn or qul to two r tt n rmov tmporrily rom th lyout grph. This rmoving pross will ontinu until ll th nos r t lst gr-thr. Th lyout grph simpliition lgorithm is shown in Algorithm 1. I ll th nos in th lyout grph n push onto th stk, Algorithm 1 n solv TPL lyout omposition optimlly in linr tim. As n xmpl shown in Fig.5, vry no n push onto stk n inlly olor whn is popp o. Not tht vn whn som nos nnot simplii, lyout grph simpliition n ru prolm siz rmtilly. Aitionlly, w osrv tht this lgorithm n lso prtition th lyout grph into svrl su-grphs. ) Brigs Computtion: A rig o grph is n g whos rmovl isonnts th grph into two omponnts. I th two omponnts r inpnnt, rmoving th rig n ivi th whol ILP into two inpnnt ILP ormultions. Thorm : Prtitioning omposition grph y rmoving rigs os not introu nw stiths. An xmpl o th rigs omputtion is shown in Fig. 6. First o ll, onlit g is oun to rig. Rmoving th rig ivis th omposition grph into two sis. Atr ILP s olor ssignmnt, i no n no r ssign th sm olor, w n rott olors o ll nos in on su-grph. Similr mtho n opt whn rig is stith g. W opt n O( V + E ) lgorithm [0] to in rigs in omposition grph. Using ov thr lrtion thniqus, th ILP ormultion n still hiv optiml solutions. In othr wors, our lrtion lgorithms n kp optimlity. Du to pg limit, w skip th til isussion hr. 4. SDP BASED ALGORITHM Although th lrt lgorithms n simpliy th prolm siz in mny wys, ILP my still too slow or lrg prolms whih nnot simplii tivly. In this stion w provi n pproximtion lgorithm to otin mor rpi solutions. First, novl vtor progrmg or TPL lyout omposition is ormult. Thn w rlx th vtor ()

() () () () () () (g) (h) (i) (j) Fig. 5. This lyout n irtly ompos y lyout grph simpliition. () Input lyout. () Corrsponing lyout grph. ()()() Itrtivly rmov n push in nos with gs no mor thn. ()(g)(h)(i) Itrtivly pop up n rovr no, n ssign ny lgl olor. (j) Finl omposition rsult. 1 (-, ) (1, 0) w hv th ollowing proprty: { 1, vi = v v i v j = j v i v j 1 Bs on th ov proprty, w n ormult th TPL lyout omposition s th ollowing vtor progrm [1]: 1 (-,- ) Fig. 7. Thr vtors (1, 0), ( 1, ), ( 1, ) rprsnt thr irnt olors. progrmg into Smiinit Progrmg (SDP). Givn this solution rom Smiinit Progrmg, w n otin th TPL omposition rsults in polynomil tim. A. Vtor Progrmg or TPL Lyout Domposition In TPL omposition, thr r thr possil olors. W st unit vtor v i or vry no i. I ij is onlit g, w wnt nos v i n v j to r prt. I ij is stith g, w hop or nos v i n v j to th sm. As shown in Fig. 7, w ssoit ll th nos with thr irnt unit vtors: (1, 0), ( 1, ) n ( 1, ). Not tht th ngl twn ny two vtors o th sm olor is 0, whil th ngl twn vtors with irnt olors is π/. Aitionlly, w in th innr prout o two m- imnsion vtors v i n v j s ollows: v i v j = m v ik v jk k=1 whr h vtor v i n rprsnt s (v i1, v i,... v im ). Thn or th vtors v i, v j {(1, 0), ( 1, ), ( 1, )}, ( v i v j + 1 ) + α (1 v i v j ) () ij CE ij SE s.t. v i {(1, 0), ( 1, ), ( 1, )} () Formul () is quivlnt to mthmtil ormul (1). Sin th TPL omposition is NP-hr, this vtor progrmg is lso NP-hr. In th nxt prt, w will rlx () to smiinit progrmg, whih n solv in polynomil tim. B. Smiinit Progrmg Approximtion Constrint () rquirs solutions o () isrt. Atr rmoving this onstrint, w gnrt ormul (4) s ollows: ij CE ( y i y j + 1 ) + α ij SE (1 y i y j ) (4) s.t. y i y i = 1, i V (4) y i y j 1, ij CE (4) This ormul is rlxtion o () sin w n tk ny sil solution v i = (v i1, v i ) to prou sil solution o (4) y stting y i = (v i1, v i, 0, 0,, 0), i.. y i y j = 1 n y i y j = v i v j in this solution. Thus i Z R is th vlu o n optiml solution o ormul (4) n OP T is n optiml vlu o ormul (), it must stisy: Z R OP T. In othr wors, solution o (4) is n pproximtion to tht in (). Sin w only r out th vlu o y i, progrm (4) n

urthr simplii y liting th onstnts in th ojtiv untion: ( y i y j ) α ( y i y j ) (5) ij CE s.t. (4) (4) ij SE Without isrt onstrint (), progrms (4) n (5) r not NP-hr now. To solv (5) in polynomil tim, w will show tht it is quivlnt to smiinit progrmg. Smiinit progrmg (SDP) is similr to linr progrmg whih hs linr ojtiv untion n linr onstrints. Howvr, squr symmtri mtrix o vrils n onstrin to positiv smiinit. Although smiinit progrms r mor gnrl thn linr progrms, oth o thm n solv in polynomil tim. Bsis, th rlxtion s on th smiinit progrmg hs ttr thortil rsults thn thos s on LP [16]. Consir th ollowing stnr smiinit progrm: SDP: A X (6) X ii = 1, i V (6) X ij 1, ij CE (6) X 0 (6) whr A X is th innr prout twn two mtris A n X, i.. i j A ijx ij. Hr A ij is th ntry tht lis in th i-th row n th j-th olumn o mtrix A. Constrint (6) mns mtrix X shoul positiv smiinit. 1, ij CE A ij = α, ij SE (7) 0, othrwis Similrly, X ij is th i-th row n th j-th olumn ntry o X. Not tht th solution o SDP is rprsnt s positiv smiinit mtrix X, whil solutions o vtor progrmg r stor in list o vtors. Howvr, w n show tht thy r quivlnt. Lmm : A symmtri mtrix X is positiv smiinit i n only i X = V V T or som mtrix V. Givn positiv smiinit mtrix X, using th Cholsky omposition w n in orrsponing mtrix V in O(n ) tim. Thorm : Th smiinit progrm (6) n th vtor progrm (5) r quivlnt. Proo: Givn solutions o (5) { v 1, v, v m }, th orrsponing mtrix X is in s X ij = v i v j. In th othr irtion, s on Lmm, givn mtrix X rom (6), w n in mtrix V stisying X = V V T y using th Cholsky omposition. Th rows o V r vtors {v i } tht orm th solutions o (5). C. Mpping Algorithm Solutions o progrm (6) r ontinuous, whil optiml solutions in () r isrt. In this sustion w mp th ontinuous solutions into isrt ons. In th mtrix X gnrt y SDP, i X ij is los to 1, thn nos i n j shoul in th sm msk, whil i X ij is los to 0.5, no i n no j tn to in irnt msks. Our mpping lgorithm is givn in Algorithm, whih ins th rltiv rltionships mong th nos n mps thm into thr irnt msks. First som triplts r onstrut n sort to stor ll X ij inormtion. Thn, w rry out our mpping lgorithm in two stps. In th irst stp, i X ij is los to 1, th no i n th no j will in th sm msk, whil i X ij is los to 0.5, thy will ll to in irnt msks. Hr th vtors UnionLvl[k] n SpLvl[k] r som usr in prmtrs: UnionLvl[] r los to 1 n SpLvl[] r los to 0.5. In th son stp, w ontinu to union th no i n th no j with mximum X ij until ll nos r ssign into thr msks. W us th isjoint-st t strutur to group nos into thr msks. Implmnt with union y rnk n pth omprssion, th running tim pr oprtion o isjoint-st is lmost onstnt []. Lt n th numr o nos, n th numr o triplts is n. Sorting ll th triplts rquirs O(n logn). Sin ll triplts r sort, h o thm n visit t most on. Bus th runtim o h oprtion n inish lmost in onstnt tim, th omplxity o Algorithm is O(n logn). Algorithm Mpping Algorithm 1: Solv th progrm (6), gt mtrix X. : Ll h non-zro ntry X i,j s triplt (X ij, i, j). : sort ll (X ij, i, j) y X ij. 4: or k = 1 to R o 5: or h tripl (X ij, i, j) o 6: i X ij > UnionLvl[k] && Comptil(i, j) thn 7: Union(i, j); 8: n i 9: n or 10: or h tripl (x ij, i, j) o 11: i X ij < SpLvl[k] thn 1: Sprt(i, j); 1: n i 14: n or 15: n or 16: whil Msks numr > o 17: Pik tripl with mximum X ij n Comptil(i, j); 18: Union (i, j); 19: n whil D. An Exmpl o th SDP Bs Algorithm Fig. 8 shows n xmpl o th omposition grph. This grph inlus 7 onlit gs n 1 stith g, n n olor with olors. Morovr, th grph is not - olorl sin it ontins o yls. Hr w show how th smiinit progrmg n us to solv TPL lyout omposition prolm.

1 () 4 5 Fig. 8. Exmpl to olor omposition grph. ()Input omposition grph. ()Using smiinit progrmg n Algorithm, w ssign nos into irnt olors (msks). I w st α = 0.1, thn mtrix A is s ollow: 0 1 1 0.1 1 1 0 1 0 1 A = 1 1 0 1 0 0.1 0 1 0 1 1 1 0 1 0 Atr solving th smiinit progrmg (6), w n gt mtrix X s ollowing: 1.0 0.5 0.5 1.0 0.5 1.0 0.5 0.5 0.5 X = 1.0 0.5 1.0... 1.0 0.5 1.0 hr w only show th uppr prt o th mtrix X. From th mtrix X w n in tht no 1 n no 4 shoul in th sm olor (us X 14 = 1.0), n no n no 5 shoul lso in th sm olor (us X 5 = 1.0). Howvr, sin X 1, X 1 n X 15 r los to 0.5, nos, n 5 nnot ssign in th sm olor s no 1. Using Algorithm, w n mp ll th nos into thr olors: {1, 4}, {} n {, 5}. Th inl mpping rsult is shown in Fig. 8(). 1 () 5. EXPERIMENTAL RESULTS W implmnt our lgorithm in C++ n tst it on n Intl Cor.0GHz Linux mhin with G RAM. OpnAss. [] is us or intring with GDSII irtly. W hoos CBC [4] s our solvr or th intgr linr progrmg, n CSDP [5] s th solvr or th smiinit progrmg. ISCAS-85 & 89 nhmrks r sl own n moii to rlt th 16nm thnology no. Th mtl on lyr is us or xprimntl purposs, us it is on o th most omplx lyrs in trms o lyout omposition. Th imum with n sping om 5nm n 0nm. Th imum olorl istn is st s 85nm, n th imum ovrlpping mrgin or stith insrtion is 10nm. Th prmtr α is st s 0.1. A. Comprison First, w show th tivnss o th lyout grph simpliition n th rigs omputtion. Tl II omprs th Norml ILP n th Alrt ILP, whr th Norml 4 5 ILP only uss inpnnt omponnt omputtion thniqu, whil th Alrt ILP uss ll thr lrtion thniqus. Columns SE# n CE# not th stith g numr n onlit g numr rsptivly. From Tl II w n s tht lyout grph simpliition n rigs omputtion r quit tiv: th stith g numr n ru y 90%, whil th onlit numr n ru y 9%. Th olumns st# n n# show th stith numr n th onlit numr in th inl sign. CPU(s) is omputtionl tim in sons. Compr with th Norml ILP, th Alrt ILP n hiv th sm rsults in roun 18% o th runtim. Not tht i no lrtiv thniqu is us, th runtim or ILP is unptl vn or smll iruits lik C4. From Tl II w n s tht oth ILP ormultions n hiv th optiml solutions, us o th sm onlit numr n stith numr. Son, w vriy th qulity n iiny o our pproximtion lgorithm s on smiinit progrmg. Tl II lso omprs th Alrt ILP n th SDP s lgorithm, whr SDP Bs nots th smiinit progrmg s lgorithm. Not tht ths two mthos shr th sm omposition grph, i.. oth th stith g numr n th onlit g numr in thir omposition grph r qul. As w n s, using SDP s mtho th runtim n urthr ru y 4% n th stith numr n ru y 7%. Th tro or this lrtion is th 9% mor onlits. B. Eiiny In orr to urthr vlut th slility o our SDP s mtho, w rt our itionl nhmrks (C1-C4) to tst two omposition lgorithms on vry ns lyouts. Tl III lists th omprison o th Sp-up ILP n th SDP s mtho on ths vry ns lyouts. As w n s, ompr with th Sp-up ILP, SDP s mtho n ru stith numr y 10% whil introus 5% mor onlits. Furthrmor, SDP s mtho n hiv 140 sp-up. Th rson or th rmtilly lrtion is tht: or low nsity lyout, th omposition prolm n ivi into mny su-prolms, n typilly h suprolm ontins no mor thn 0 nos. Whil or high nsity lyout, thr r mor nos in h su-prolm, whr SDP n muh str thn ILP. TABLE III COMPARISON ON VERY DENSE LAYOUTS Ciruit SE# CE# Alrt ILP SDP Bs st# n# CPU(s) st# n# CPU(s) C1 16 47 1 5 5.5 0 6 0.9 C 8 89 0 15 17. 0 16 0.77 C 4 81 0 14.41 0 15 0. C4 56 47 9 0.17 9 0.49 vg. - -.5 16.5 64.9.5 17. 0.468 rtio - - 1 1 1 0.9 1.05 0.007

TABLE II RUNTIME AND PERFORMANCE COMPARISONS Ciruit Comp# Norml ILP Alrt ILP SDP Bs SE# CE# st# n# CPU(s) SE# CE# st# n# CPU(s) st# n# CPU(s) C4 61 00 90 0 1 8.01 16 0 1 1.11 0 1 0.6 C499 418 566 9 0 0 4.15 171 88 0 0 6.4 0 4 1.01 C880 516 844 19 1 5.91 6 4 1 0.49 1 0.06 C155 87 1008 54 0 1.7 14 0 1 0.1 0 1 0.0 C1908 11 1 4480 0 1 48.66 1 14 0 1 0.10 0 1 0.0 C670 1501 186 7469 0 4 101.98 6 40 0 4 0.50 0 4 0.10 C540 1964 197 98 975.5 9 40 0.4 0.11 C515 767 4644 111 5 0 17.86 0 70 5 0 0.70 5 0 0.18 C688 740 519 1194?? > 700 59 509 9 7 6.05 9 7 1.6 C755 4164 6591 19187?? > 700 64 180 10 6.19 7 9 0.46 S1488 588 19 484 0 1 7.7 1 54 0 1 0.50 0 1 0.1 S8417 985 1591 4074?? > 700 1617 74 19 0.56 1 9. S59 565 55 71198?? > 700 776 617 18 49.87.55 S8584 474 8808 74968?? > 700 657 6066 4 6 44.16 4 6 4.5 S15850 0881 14 8758?? > 700 877 6504 6 4 49.18 6 9 5.9 vg. - 875 4 - - - 901.8 1568.7.87 1.5 1.49.67 1.7 7.80 rtio - 1 1 - - - 0.10 0.07 1 1 1 0.9 1.09 0.58 6. CONCLUSION In this ppr, w propos gnrl intgr linr progrmg (ILP) ormultion or th TPL lyout omposition to simultnously imiz th onlits n stiths. To improv slility, w vlop thr lrtion thniqus without losing solution qulity: lyout grph simpliition, inpnnt omponnt omputtion n rigs omputtion. Furthrmor, w propos novl smiinit progrmg lgorithm to improv slility or vry ns lyouts. Exprimntl rsults show tht our mthos r vry tiv. Sin this is th irst systmti ttmpt on TPL lyout omposition or gnrl lyouts, w xpt to s lot o rsrhs s TPL my opt y inustry in th nr utur. REFERENCES [1] J.-S. Yng n D. Z. Pn, Ovrly wr intronnt n tig vrition moling or oul pttrning thnology, in IEEE/ACM Intrntionl Conrn on Computr-Ai Dsign (ICCAD), 008, pp. 488 49. [] Y. Boroovsky, Lithogrphy 009 ovrviw o opportunitis, in Smion Wst, 009. [] V. O. Anton, N. Ptr, H. Juy, G. Ronl, n N. Rort, Pttrn split ruls! siility stuy o rul s pith omposition or oul pttrning, in Pro. o SPIE, 007. [4] A. B. Khng, C.-H. Prk, X. Xu, n H. Yo, Lyout omposition or oul pttrning lithogrphy, in ACM/IEEE Intrntionl Conrn on Computr Ai Dsign (ICCAD), 008, pp. 465 47. [5] K. Yun, J.-S. Yng, n D. Pn, Doul pttrning lyout omposition or simultnous onlit n stith imiztion, in ACM Intrntionl Symposium on Physil Dsign (ISPD), 009, pp. 107 114. [6] Y. Xu n C. Chu, GREMA: grph rution s iint msk ssignmnt or oul pttrning thnology, in ACM/IEEE Intrntionl Conrn on Computr Ai Dsign (ICCAD), 009, pp. 601 606. [7] J.-S. Yng, K. Lu, M. Cho, K. Yun, n D. Pn, A nw grph-thorti, multi-ojtiv lyout omposition rmwork or oul pttrning lithogrphy, in IEEE/ACM Asi n South Pii Dsign Automtion Conrn (ASPDAC), 010. [8] Y. Xu n C. Chu, A mthing s omposr or oul pttrning lithogrphy, in ACM Intrntionl Symposium on Physil Dsign (ISPD), 010, pp. 11 16. [9] K. Yun n D. Pn, WISDOM: Wir spring nhn omposition o msks in oul pttrning lithogrphy, in IEEE/ACM Intrntionl Conrn on Computr-Ai Dsign (ICCAD), 010, pp. 8. [10] S.-Y. Chn n Y.-W. Chng, Ntiv-onlit-wr wir prturtion or oul pttrning thnology, in IEEE/ACM Intrntionl Conrn on Computr-Ai Dsign (ICCAD), 010, pp. 556 561. [11] C.-H. Hsu, Y.-W. Chng, n S. R. Nssi, Simultnous lyout migrtion n omposition or oul pttrning thnology, in IEEE/ACM Intrntionl Conrn on Computr-Ai Dsign (ICCAD), 009, pp. 595 600. [1] C. Cork, J.-C. Mr, n L. Brns, Comprison o tripl-pttrning omposition lgorithms using prioi tiling pttrns, in Pro. o SPIE, 008. [1] Y. Chn, P. Xu, L. Mio, Y. Chn, X. Xu, D. Mo, P. Blno, C. Bnhr, R. Hung, n C. S. Ngi, Sl-lign tripl pttrning or ontinuous i sling to hl-pith 15nm, in Pro. o SPIE, 011. [14] B. Mrki, H. D. Chn, Y. Chn, A. Wng, J. Ling, K. Spr, T. Mnrkr, X. Chn, P. Xu, P. Blnko, C. Ngi, C. Bnhr, n M. Nik, Innovtiv sl-lign tripl pttrning or 1x hl pith using singl spr position-spr th stp, in Pro. o SPIE, 011. [15] Q. Li, NP-ompltnss rsult or positiv lin-y-ill sp pross, in Pro. o SPIE, 010. [16] L. Vnnrgh n S. Boy, Smiinit progrmg, SIAM Rv., vol. 8, pp. 49 95, Mrh 1996. [17] D. Krgr, R. Motwni, n M. Sun, Approximt grph oloring y smiinit progrmg, J. ACM, vol. 45, pp. 46 65, Mrh 1998. [18] M. R. Gry, D. S. Johnson, n L. Stokmy, Som simplii NPomplt grph prolms, Thortil Computr Sin, vol. 1, pp. 7 67, 1976. [19] S. Khnn, N. Linil, n S. Sr, On th hrnss o pproximting th hromti numr, in Thory n Computing Systms, 199., Proings o th n Isrl Symposium on th, Jun. 199, pp. 50 60. [0] R. E. Trjn, A not on ining th rigs o grph, Inormtion Prossing Lttrs, vol., pp. 160 161, 1974. [1] D. P. Willimson n D. B. Shmoys, Th sign o pproximtion lgorithms. Cmrig Univrsity Prss, 011. [] T. T. Cormn, C. E. Lisrson, n R. L. Rivst, Introution to lgorithms. Cmrig, MA, USA: MIT Prss, 1990. [] [Onlin]. Avill: http://www.si.org/?pg=69 [4] [Onlin]. Avill: http://www.oin-or.org/projts/c.xml [5] B. Borhrs, CSDP, C lirry or smiinit progrmg, Optimiztion Mthos n Sotwr, vol. 11, pp. 61 6, 1999.