Deep Learning-Driven Simultaneous Layout Decomposition and Mask Optimization Wei Zhong 1,2 , Shuxiang Hu 1,2 , Yuzhe Ma 3 , Haoyu Yang 3 , Xiuyuan Ma 1,2 , Bei Yu 3 1 Information Science & Engineering, Dalian University of Technology 2 Key Lab for Ubiquitous Network & Service Software of Liaoning Province 3 CSE Department, Chinese University of Hong Kong 1 / 24
Biography Shuxiang Hu Dalian University of Technology vsxhoo@mail.dlut.edu.cn He is now studying for M.Sc. degree at the International School of Information Science and Engineering, Dalian University of Technology, under the supervision of Prof. Wei Zhong. 2 / 24
Outline Introduction Algorithm Experimental Results Conclusion 3 / 24
Outline Introduction Algorithm Experimental Results Conclusion 4 / 24
Optical Proximity Effect Target Result ◮ Resolution enhancement Technologies (RETs): - OPC - MPL 4 / 24
Layout Decomposition for Mask Optimization ◮ Different decomposition results converge to divergent printability Target LD MO Printed Image #EPE Violation = 3 #EPE Violation = 1 5 / 24
Option for Decomposition Selection ◮ Solution: Collaboration of LD and MO in a unified framework [Ma+,ICCAD’17]. Input Layout Numerical Discrete Layout Layout Optimization Optimization Output Optimized Masks 6 / 24
Issues ◮ Not Accurate: Greedy pruning. ◮ Not Efficient: OPC suffers from large computational complexity. MO 30 DECMP#1 40.9% 20 EPE# DECMP#2 DECMP#3 10 0 59.1% 10 20 30 #Iterations DS Runtime break down Decomposition convergence of EPE 7 / 24
Motivation ◮ Powerful convolutional neural network (CNN) - Build mapping relationship automatically. - Large amount of data required. ◮ CNN application in EDA field: - Routing predicting [Xie+,ICCAD’18] - Hotspot detection [Yang+,TCAD’18] - Resist modeling [Lin+,TCAD’18] ◮ How about integrating CNN for decomposition selection? 8 / 24
Outline Introduction Algorithm Experimental Results Conclusion 9 / 24
Forward Optimization Flow Input Layout Decomposition Generation Printability Prediction Prediction ILT Optimization Printability Predictor Print Violation Y ILT Detected ? N Optimized Masks 9 / 24
Decomposition Generation 10 / 24
<latexit sha1_base64="XscoTqxiC+5iGYlBwHy/q6p/6CA=">AB+HicbVDLSsNAFL2pr1ofrbp0M9gKrkpSEcVwY3LivYBbQiT6aQdOpmEmYlQ7/EjQtF3Pop7vwbJ20W2npg4HDOvdwzx485U9q2v63C2vrG5lZxu7Szu7dfrhwcdlSUSELbJOKR7PlYUc4EbWumOe3FkuLQ57TrT24yv/tIpWKReNDTmLohHgkWMIK1kbxKuTYIsR4TzNP7mdeqeZWqXbfnQKvEyUkVcrS8ytdgGJEkpEITjpXqO3as3RLzQins9IgUTGZIJHtG+owCFVbjoPkOnRhmiIJLmCY3m6u+NFIdKTUPfTGYp1bKXif95/UQHV27KRJxoKsjiUJBwpCOUtYCGTFKi+dQTCQzWREZY4mJNl2VTAnO8pdXSadRd87rF3eNavM6r6MIx3ACZ+DAJThFlrQBgIJPMrvFlP1ov1bn0sRgtWvnMEf2B9/gAdl5K2</latexit> <latexit sha1_base64="WwDNOfst/YXSgJNrutPOxnJxuE=">AB+HicbVBNS8NAFHypX7V+NOrRy2IreCpJRPBS8eK9haEPYbDft0s0m7G6EGvpLvHhQxKs/xZv/xk2bg7YOLAwz7/FmJ0g4U9pxvq3S2vrG5lZ5u7Kzu7dftQ8OuypOJaEdEvNY9gKsKGeCdjTnPYSXEUcPoQTG5y/+GRSsVica+nCfUiPBIsZARrI/l2tT6IsB4TzLPuzG/XfbvmNJw50CpxC1KDAm3f/hoMY5JGVGjCsVJ910m0l2GpGeF0VhmkiaYTPCI9g0VOKLKy+bBZ+jUKEMUxtI8odFc/b2R4UipaRSYyTylWvZy8T+vn+rwysuYSFJNBVkcClOdIzyFtCQSUo0nxqCiWQmKyJjLDHRpquKcFd/vIq6TYb7nj4q5Za10XdZThGE7gDFy4hBbcQhs6QCFZ3iFN+vJerHerY/FaMkqdo7gD6zPHyIvkrk=</latexit> <latexit sha1_base64="LphQ54jWbhoxb971fFIQHLSoWKE=">AB+HicbVDLSsNAFL2pr1ofrbp0M9gKrkpSEcVwY0rqWAf0IYwmU7aoZNJmJkINfRL3LhQxK2f4s6/cdJmoa0HBg7n3Ms9c/yYM6Vt+9sqrK1vbG4Vt0s7u3v75crBYUdFiS0TSIeyZ6PFeVM0LZmtNeLCkOfU67/uQm87uPVCoWiQc9jakb4pFgASNYG8mrlGuDEOsxwTy9m3mtmlep2nV7DrRKnJxUIUfLq3wNhFJQio04VipvmPH2k2x1IxwOisNEkVjTCZ4RPuGChxS5abz4DN0apQhCiJpntBorv7eSHGo1DT0zWSWUi17mfif1090cOWmTMSJpoIsDgUJRzpCWQtoyCQlmk8NwUQykxWRMZaYaNVyZTgLH95lXQade8fnHfqDav8zqKcAwncAYOXEITbqEFbSCQwDO8wpv1ZL1Y79bHYrRg5TtH8AfW5w8V75Kx</latexit> Decomposition Generation ◮ Classify patterns & build minimal spanning tree S P , if d ≤ n min , E ∈ V P , if n min < d ≤ n max , N P , if n max < d . S P N P V P Component 1 Component 2 Component 1 Component 2 75 75 A B 78 C 60 D 60 60 60 76 76 E F G H I J K 11 / 24
<latexit sha1_base64="XscoTqxiC+5iGYlBwHy/q6p/6CA=">AB+HicbVDLSsNAFL2pr1ofrbp0M9gKrkpSEcVwY3LivYBbQiT6aQdOpmEmYlQ7/EjQtF3Pop7vwbJ20W2npg4HDOvdwzx485U9q2v63C2vrG5lZxu7Szu7dfrhwcdlSUSELbJOKR7PlYUc4EbWumOe3FkuLQ57TrT24yv/tIpWKReNDTmLohHgkWMIK1kbxKuTYIsR4TzNP7mdeqeZWqXbfnQKvEyUkVcrS8ytdgGJEkpEITjpXqO3as3RLzQins9IgUTGZIJHtG+owCFVbjoPkOnRhmiIJLmCY3m6u+NFIdKTUPfTGYp1bKXif95/UQHV27KRJxoKsjiUJBwpCOUtYCGTFKi+dQTCQzWREZY4mJNl2VTAnO8pdXSadRd87rF3eNavM6r6MIx3ACZ+DAJThFlrQBgIJPMrvFlP1ov1bn0sRgtWvnMEf2B9/gAdl5K2</latexit> <latexit sha1_base64="WwDNOfst/YXSgJNrutPOxnJxuE=">AB+HicbVBNS8NAFHypX7V+NOrRy2IreCpJRPBS8eK9haEPYbDft0s0m7G6EGvpLvHhQxKs/xZv/xk2bg7YOLAwz7/FmJ0g4U9pxvq3S2vrG5lZ5u7Kzu7dftQ8OuypOJaEdEvNY9gKsKGeCdjTnPYSXEUcPoQTG5y/+GRSsVica+nCfUiPBIsZARrI/l2tT6IsB4TzLPuzG/XfbvmNJw50CpxC1KDAm3f/hoMY5JGVGjCsVJ910m0l2GpGeF0VhmkiaYTPCI9g0VOKLKy+bBZ+jUKEMUxtI8odFc/b2R4UipaRSYyTylWvZy8T+vn+rwysuYSFJNBVkcClOdIzyFtCQSUo0nxqCiWQmKyJjLDHRpquKcFd/vIq6TYb7nj4q5Za10XdZThGE7gDFy4hBbcQhs6QCFZ3iFN+vJerHerY/FaMkqdo7gD6zPHyIvkrk=</latexit> <latexit sha1_base64="LphQ54jWbhoxb971fFIQHLSoWKE=">AB+HicbVDLSsNAFL2pr1ofrbp0M9gKrkpSEcVwY0rqWAf0IYwmU7aoZNJmJkINfRL3LhQxK2f4s6/cdJmoa0HBg7n3Ms9c/yYM6Vt+9sqrK1vbG4Vt0s7u3v75crBYUdFiS0TSIeyZ6PFeVM0LZmtNeLCkOfU67/uQm87uPVCoWiQc9jakb4pFgASNYG8mrlGuDEOsxwTy9m3mtmlep2nV7DrRKnJxUIUfLq3wNhFJQio04VipvmPH2k2x1IxwOisNEkVjTCZ4RPuGChxS5abz4DN0apQhCiJpntBorv7eSHGo1DT0zWSWUi17mfif1090cOWmTMSJpoIsDgUJRzpCWQtoyCQlmk8NwUQykxWRMZaYaNVyZTgLH95lXQade8fnHfqDav8zqKcAwncAYOXEITbqEFbSCQwDO8wpv1ZL1Y79bHYrRg5TtH8AfW5w8V75Kx</latexit> Decomposition Generation ◮ n-wise arrays - S P and V P with three-wise - N P with two-wise S P V P N P Arrs 2 S P N P V P Arrs 1 B F H I G J K Component 1 Component 2 #1 1 0 0 1 #1 0 1 0 75 A B 78 C #2 0 0 1 #2 1 1 1 1 60 D 60 #3 0 0 1 1 #3 1 1 1 E 76 F G #4 0 0 0 0 #4 1 0 0 #5 0 1 1 0 #6 1 1 0 0 H I J #7 1 0 1 0 K #8 0 1 0 1 12 / 24
Decomposition Generation ◮ n-wise arrays - Relax combination strength - Complete combination of n factors Three-wise arrays 13 / 24
Printability Prediction & Mask Optimization 14 / 24
Printability Prediction & Mask Optimization ◮ Select the best decomposition candidate for OPC engine 224 1000 112 56 28 Printability score 14 7 512 256 128 64 64 Decomposition candidate Conv1 Layer1 Layer2 Layer3 Layer4 Printability score = α × #EPE + β × L2 Error + γ × #Print Violation 15 / 24
How to Sample Data? ◮ Sample typical data for train 16 / 24
How to Sample Data? ◮ Layout sampling ◮ Decomposition sampling - Similar to decomposition generation stage ◮ Get printability score 17 / 24
Layout Sampling ◮ Calaulate point distance - Match points - Euclidean distance as matched points distance ◮ Calculate layout distance - Sum up matched poinnts as layout distance ◮ Cluster layouts 18 / 24
Outline Introduction Algorithm Experimental Results Conclusion 19 / 24
Comparision on EPE violations ◮ Outperform state-of-the-art. ◮ Reduce 68.0% EPE violations on average. 10 8 EPE Violations ISQED’13+DAC’14 6 ICCAD’13+DAC’14 ICCAD’17 4 Ours 2 0 NOR2_X1 OAI211_X1 NAND4_X1 NAND3_X2 19 / 24
Comparision on Runtime ◮ About 4X speed up. 2 , 000 1 , 500 ISQED’13+DAC’14 Runtime ICCAD’13+DAC’14 1 , 000 ICCAD’17 Ours 500 0 NOR2_X1 OAI211_X1 NAND4_X1 NAND3_X2 20 / 24
Optimization results ICCAD’17 Ours AOI211_X1 NAND3_X2 BUF_X1 21 / 24
Comparision with Random Sampling ◮ Reduce half of EPE violations. 2 Ratio Random Sampling Ours 1 0 EPE# Runtime 22 / 24
Outline Introduction Algorithm Experimental Results Conclusion 23 / 24
Conclusion ◮ Deep learning based layout decomposition and mask optimization framework. - Decomposition generation approach. - Decomposition printability estimation. ◮ A set of sampling strategies. ◮ Experimental results demonstrate the effectiveness and efficiency. 23 / 24
Wei Zhong ( zhongwei@dlut.edu.cn ) Thank You Shuxiang Hu ( vsxhoo@mail.dlut.edu.cn ) Yuzhe Ma ( yzma@cse.cuhk.edu.hk ) Bei Yu ( byu@cse.cuhk.edu.hk ) 24 / 24
Recommend
More recommend