Self-Aligned Double Patterning Aware Pin Access and Standard Cell Layout CoOptimization Xiaoqing Xu1, Brian Cline2, Greg Yeric2, Bei Yu1, David Z. Pan1 1University of Texas at Austin 2ARM Inc, Austin Outline Introduction & Motivations SADP-Aware Pin Access and Optimization Experimental Results Summary & Future work Need of Double Patterning Beyond Single Patterning › Technology scaling: » 14nm node - 64nm Metal-2 pitch » 10nm node - 48nm Metal-2 pitch › Resolution of litho-tools: CD = 𝑘1 ∗ 𝜆 𝑁𝐴 ≈ 40𝑛𝑚 Double Patterning - pitch splitting › Layout decomposition: split one layer into two masks MinPitch 2*MinPitch Two Kinds of DPL Litho-Etch-Litho-Etch (LELE) Self-Aligned Double Patterning (SADP) › Better overlay control, but more layout constraints Main Mandrel Additional Mandrel Sub-Metal Spacer Trim Mask SADP Layout Decomposition Mandrel Mandrel Mandrel Recap: Trim Mask is Single Patterned (a) (b) (c) (d) Main Mandrel Sub-Metal Additional Mandrel Spacer Trim Mask [G. Luk-Pat+, SPIE’13] SADP-specific Design Rules To ensure trim mask printability 𝑙1 𝑙1 OnTrackSpace ≥ 𝑙1 𝑙3 𝑙2 𝑙2 OffTrackOverlap ≥ 𝑙2 𝑙4 Mandrel Trim Mask Sub-Metal 𝑙3 OffTrackSpace ≥ 𝑙3 𝑙4 Spacer OffTrackoffset ≥ 𝑙4 or = 0 [Y. Ma+, SPIE’12], [G. Luk-Pat+, SPIE’13] Line-end Extension To fix hot-spots on trim masks Hot spot Via-1 (a) OffTrackOverlap ≥ 𝑙2 Mandrel Trim Mask Hot spot Sub-Metal Spacer (b) OffTrackoffset ≥ 𝑙4 or = 0 Previous Work on SADP SADP layout decomposition › [H. Zhang+, DAC’11], [Y. Ban+, DAC’11] › [Z. Xiao+, ISPD’12] SADP-aware routing › [M. Mirsaeedi+, SPIE’11], [J.-R. Gao+, ISPD’12] › [C. Kodama+, ASPDAC’13], [Y. Du+, DAC’13] However, not much on standard cell pin access which is very challenging (Keynote by Dr. Aitken) Our Contributions First work to address standard cell I/O pin access design/local routing at the cell level We propose a MILP-based method to enable SADP-aware layout design for pin access and within-cell connections Our method can maximize the pin access flexibility for the entire standard cell library Outline Introduction & Motivations SADP-Aware Pin Access and Optimization › Backtracking › Pin Access Optimization Experimental Results Summary & Future work Standard Cell Pin access Metal-2 line-end position vs Via-1 position Metal-2 line end extension (a) (b) Metal-1 pin Via-1 Metal-2 wire Metal-2 extension Pin Access and Std-Cell Layout Co-Opt (PICO) Problem formulation › Given cell layout, multiple I/O Pins for each cell, and multiple Hit Points for each I/O Pin › Design all Valid Hit Point Combinations (Metal2) for each cell in library Hit Point Cell connection Metal-1 pin (a) (b) Pin access Routing track Via-1 Metal-2 extension Metal-2 wire (c) (d) Proposed Solution Cell Layout PICO I/O Pins Hit Points Hit Point Combination search tree Backtracking reduce search space PAO 1: Line-end extension minimization 2: Rules to linear constraints Pin Access Optimization 3: MILP optimization Backtracking for all Hit Points Search tree construction › Level 𝑖: hit points for 𝑖𝑡ℎ I/O pin Path from root to leaf › Hit point combination 𝑆 PAO on each path Reduce solution space › Check heuristics I/O pin 1 𝑝11 I/O pin 2 I/O pin 3 1 I/O pin 𝑚 𝑝𝑚 2 𝑝𝑚 𝑝31 𝑝32 𝑘 𝑝𝑚𝑚 𝑝21 𝑝22 𝑘 𝑝3 3 𝑝12 𝑘 𝑝2 2 𝑘 𝑝1 1 Pin Access Optimization (PAO) Problem formulation › Given cell layout and a Hit Point Combination › Evaluate the validness of the Hit Point Combination and design the Pin Access optimally Pin access (a) (b) Metal-1 pin Metal-2 wire Via-1 Routing track Metal-2 extension Mathematical Formulation Objective function › Line-end extension minimization › Objective function: 𝑥𝑖𝐿 𝑖=𝑛 𝑖=1 0 0 (𝑥𝑖𝐿 − 𝑥𝑖𝐿 ) + (𝑥𝑖𝑅 − 𝑥𝑖𝑅 ) 0 𝑥𝑖𝐿 𝑖𝑡ℎ 𝑗𝑡ℎ 𝐶𝐿 0 𝑥𝑗𝑅 𝑥𝑗𝑅 𝐶𝑅 Mathematical Formulation – cont’d Rules to constraints › Basic rules 𝑖𝑡ℎ 0 𝑥𝑖𝐿 0 𝑥𝑖𝑅 0 𝐶𝐿 ≤ 𝑥𝑖𝐿 ≤ 𝑥𝑖𝐿 0 𝑥𝑖𝑅 ≤ 𝑥𝑖𝑅 ≤ 𝐶𝑅 𝑥𝑖𝑅 − 𝑥𝑖𝐿 ≥ 𝑙𝑚𝑖𝑛 › SADP-specific rules 𝑙1 OnTrackSpace ≥ 𝑙1 𝑙3 OffTrackSpace ≥ 𝑙3 𝑙2 OffTrackOverlap ≥ 𝑙2 𝑙4 OffTrackoffset ≥ 𝑙4 or = 0 Mathematical Formulation – cont’d SADP-specific rules › Case 1 𝑖𝑡ℎ 𝑗𝑡ℎ 0 𝑥𝑖𝐿 0 𝑥𝑖𝑅 0 𝑥𝑗𝐿 𝑥𝑗𝐿 − 𝑥𝑖𝑅 ≥ 𝑙1 0 𝑥𝑗𝑅 › Case 2 𝑖𝑡ℎ 0 𝑥𝑖𝐿 0 𝑥𝑖𝑅 𝑗𝑡ℎ › Case 3 0 𝑥𝑗𝐿 0 𝑥𝑗𝑅 𝑖𝑡ℎ 0 𝑥𝑖𝐿 0 𝑥𝑖𝑅 0 𝑥𝑗𝐿 𝑗𝑡ℎ 0 𝑥𝑗𝑅 𝑥𝑖𝑅 − 𝑥𝑗𝐿 ≥ 𝑙2 𝑥𝑗𝑅 − 𝑥𝑖𝐿 ≥ 𝑙2 𝑥𝑖𝐿 − 𝑥𝑗𝐿 ≥ 𝑙4 𝑜𝑟 𝑥𝑖𝐿 = 𝑥𝑗𝐿 𝑥𝑖𝑅 − 𝑥𝑗𝑅 ≥ 𝑙4 𝑜𝑟 𝑥𝑖𝑅 = 𝑥𝑗𝑅 𝑥𝑗𝐿 − 𝑥𝑖𝑅 ≥ 𝑙3 or 𝑥𝑖𝑅 − 𝑥𝑗𝐿 ≥ 𝑙2 𝑥𝑖𝐿 − 𝑥𝑗𝐿 ≥ 𝑙4 𝑜𝑟 𝑥𝑖𝐿 = 𝑥𝑗𝐿 𝑥𝑖𝑅 − 𝑥𝑗𝑅 ≥ 𝑙4 𝑜𝑟 𝑥𝑖𝑅 = 𝑥𝑗𝑅 MILP Formulation (PAO) 0 0 Objective function: 𝑖=𝑛 (𝑥 − 𝑥 ) + (𝑥 − 𝑥 𝑖𝐿 𝑖𝑅 𝑖=1 𝑖𝐿 𝑖𝑅 ) Linearize constraints: big-M transformation › ∀𝑥𝑖𝐿 , 𝑥𝑗𝑅 ⇒ |𝑥𝑖𝐿 − 𝑥𝑗𝑅 | ≤ 𝑐𝑊 (value for “big-M”) Remove “or” in constraints 𝑥𝑗𝐿 − 𝑥𝑖𝑅 ≥ 𝑙3 or 𝑥𝑖𝑅 − 𝑥𝑗𝐿 ≥ 𝑙2 𝑥𝑗𝐿 − 𝑥𝑖𝑅 + 𝑐𝑊 + 𝑙3 ∗ 𝑠 ≥ 𝑙3 𝑥𝑖𝑅 − 𝑥𝑗𝐿 + 𝑐𝑊 + 𝑙2 ∗ s ≥ 𝑙2 𝑠 ∈ {0,1} 𝑥𝑖𝐿 − 𝑥𝑗𝐿 ≥ 𝑙4 𝑜𝑟 𝑥𝑖𝐿 = 𝑥𝑗𝐿 𝑥𝑗𝐿 − 𝑥𝑖𝐿 + 𝑐𝑊 + 𝑙4 ∗ 𝑠 ≥ 𝑙4 ∗ 1 − 𝑡 𝑥𝑖𝐿 − 𝑥𝑗𝐿 + 𝑐𝑊 + 𝑙4 ∗ 1 − 𝑠 ≥ 𝑙4 ∗ 1 − 𝑡 + 𝑐𝑊 + 𝑙4 ∗ 𝑡 𝑠 + 𝑡 ≤ 1; 𝑠, 𝑡 ∈ {0,1} Recap of the Overall Flow Cell Layout PICO I/O Pins Hit Points Hit Point Combination search tree Backtracking reduce search space PAO 1: Line-end extension minimization 2: Rules to linear constraints Pin Access Optimization 3: MILP optimization Experimental Results Experimental setup › Linux with 3.33GHz Intel(R) Xeon(R) CPU X5680 › Industrial 14nm library scaled to 10nm-dimensions An example after PAO (a) (b) Experimental Results Increase in Valid Hit Point Combinations › More valid hit point combinations lead to more flexibility for routing 1200 Number of Hit Point Combinations Conventional PICO 800 400 0 Cell 1 Cell 2 Cell 3 Cell 4 Cell 5 Experimental Results Increase in ratio on the number of Valid Hit Point Combinations across the entire library 600 Number of cells 400 200 0 1X 10X 100X 1000X 10000X The increase in ratio (PICO over conventional) Experimental Results Increase in ratio on the number of Valid Hit Points across the entire library › Over 25% of cells have 20% or more increase 1000 Number of cells 100 10 1 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% Increase in percentage Experimental Results – Run Time Most cells finished within 500 seconds Pin access design is one time computation Number of cells 400 300 200 100 0 1 10 100 500 Run time (s) 1000 5000 Summary & Future Work Summary › The impact of SADP has on local routing (Pin Access Design) is studied › Pin Access and within-cell connections on Metal-2 are co-optimized › Hit Points of different I/O pins are coupled › Hit Point Combinations are important Future work › Pin access information extraction from PICO for standard cell library › Handshake between pin access and routing Thank you! Q&A Proposed Solutions Design rule check and fix Cell connection (a) Hit Point (b) Pin access (c) (d) Metal-1 pin Metal-2 wire Via-1 Routing track Metal-2 extension Proposed solution SADP-Aware Pin Access PICO 1: I/O Pins & Hit Points Cell Layout 2: Hit Point Combination: search tree 3: Backtracking: reduce search space 4: Pin Access Optimization Pin Access Optimization SADP design rules 1: Line-end extension minimization 2: Rules to linear constraints 3: MILP optimization Pin access design SADP-Aware Layout Design SADP-Aware Design Rule (Case I: OnTrackSpace) 𝐿1 ≥ minTrimResistWidth −2 ∗ trimEtchBias 𝐿1 ≥ minTrimResistWidth −2 ∗ trimEtchBias SADP-Aware Layout Design SADP-Aware Design Rule (Case I, Cont’d) 𝐿1 = SpacerDepositWidth 𝐿1 ≥ minTrimResistWidth −2 ∗ trimEtchBias SADP-Aware Layout Design SADP-Aware Design Rule (Case 2: OffTrackOverlap) 𝐿2 ≥ minTrimResistSpace +2 ∗ trimEtchBias 𝐿2 ≥ minTrimResistSpace +2 ∗ trimEtchBias SADP-Aware Layout Design SADP-Aware Design Rule (Case 3: OffTrackSpace) L3 ≥ minTrimResist𝑊𝑖𝑑𝑡ℎ 2 −2 ∗ trimEtchBias −SpacerDepositWidth2 L3 ≥ minTrimResis𝑡𝑊𝑖𝑑𝑡ℎ 2 −2 ∗ trimEtchBias −SpacerDepositWidth2 SADP-Aware Layout Design SADP-Aware Design Rules (Case 4: OffTrackOffset) 𝐿4 ≥ minTrimResistWidth or 𝐿4 = 0 𝐿4 ≥ minTrimResistWidth or 𝐿4 = 0 SADP-Aware Layout Design SADP-Aware Design Rules – summary › › › › OnTrackSpace (L1) >= 32 nm or OnTrackSpace (L1) = 24nm OffTrackOverlap (L2) >= 58 nm OffTrackSpace (L3) >= 22 nm OffTrackOffset (L4) >= 44 nm or OffTrackOffset (L4) = 0 nm Potential odd-cycle Not decomposable Pin Access Optimization Mathematical formulation › Line end extension minimization Notations 𝐶𝐿 , 𝐶𝑅 Left or right boundary of cell 𝐶𝑊 Cell width, 𝐶𝑊 = 𝐶𝑅 − 𝐶𝐿 𝑆𝑚 Set of Metal-2 wires 𝑛 Total number of Metal-2 wires 𝑆𝑘 Set of pairs of wires for rule 𝑘 𝑥𝑖𝐿 , 𝑥𝑖𝑅 The left or right line end of 𝑖𝑡ℎ wire 0 0 𝑥𝑖𝐿 , 𝑥𝑖𝑅 The initial line ends of 𝑖𝑡ℎ 𝑙𝑚𝑖𝑛 Minimum length for Metal-2 wire