VLSI Design Lab3 Dracula- Layout Verification Advisor Presenter: 2003/04/25 ACCESS IC LAB
Outline Introduction Design Rule Check Layout vs. Schematic Check Lab Tutorial
Introduction ACCESS IC LAB
Design Flows System Specification Testing Behavior Design package Structure design P&R Layout Verification Manufacture Post-sim
Why Do We need Layout Verification Physical design must meet process rules for manufacture reliability Converting layout database to foundry acceptable format may introduce error The performance of design after layout need to be verified
Layout Verification DRC(Design Rule Check) ERC(Electrical Rule Check) LVS(Layout Versus Schematic) LPE(Layout Parasitic Extraction) PRE(Parasitic Resistance Extraction)
What is Dracula It is a IC verification tool for DRC,ERC,LVS,LPE,PRE,etc. Widely used, reliable The operation is guided by command file
How to Use Dracula Create/Obtain command file Fill in design database information Compile the command files Submit the run file Consult the checked reports and correct the violation
About Command File The contents of command file specify Source data information Data integrity check and processing Process rules for verification Device parameters Command files must be consistent with process
DRC ACCESS IC LAB
Design Rule Check Make sure our design is follow all the manufacture rules The rules define the width, space between layers and the relationship with each other layer The rules are based on process variation, equipment limitation
http://www.cic.edu.tw/training/train_download.htm
LVS ACCESS IC LAB
LVS Layout vs. Schematic check lvs drc/erc Tape-out lvs error free Lvs text label lvs
http://www.cic.edu.tw/training/train_download.htm
http://www.cic.edu.tw/training/train_download.htm
LVS Initial Node Pairs LVS comparison using text extracted form the schematic and layout as a starting point LVS result heavily rely on the matching of input labels
http://www.cic.edu.tw/training/train_download.htm
Lab Tutorial ACCESS IC LAB
DRC-Getting Started(I) icfb unix% mkdir DRC Unix% cd DRC
Getting Started(II) cds.lib icfb Unix% icfb & icfb CIW 4.4.5 Tools New Library library New Library form design Libarary Name hw3 OK
Getting Started(III) Technology File for New Library Attach to an existing techfile ok Load Technology File ASCII Technology File 035.tf
Generate GDSII file gds CIW File Export Stream Run directory. Library Name hw3 Top Cell Name nand3(nor3) View Name layout Output File nand3.gds ok
Edit the Command File drc.com DRC INDISK = nand3.gds PRIMARY = nand3 PRINTFILE = edu( )
Run DRC Operation(I) PDRACULA drc.com :/get drc.com n fetches the command file :/fin finishes compilation and produce UNIX run file unix unix% jxrun.com > drc_logs&
Run DRC Operation(II) edu.sum *.sum PDRACULA drc.log
DRC Summary(I) ------------ OUTPUT CELL SUMMARY -------------- EJ49 50/ 0-354.62 106.30 343.85 299.98 1550 0 OUTDISK PRIMARY CELL : OUT4_1mux WINDOW : -354.62 106.30 343.85 299.98 ENDED AT TIME =22:14:03 DATE =28-OCT-98 ****** PROBLEM GEOMETRY ERROR LISTING ****** ***** END OF PROBLEM GEOMETRY LISTING ***** OUTPUT CELL SUMMARY D DRC E ERC EJ49 No path to Vdd or Gnd
Debug the DRC Error debug layout edit window Tools->DRC Interactive DRC->Setup PDRACULA
DRC Summary(II) ****** PROBLEM GEOMETRY ERROR LISTING ****** ***** END OF PROBLEM GEOMETRY LISTING ***** NUMBER OF ACUTE ANGLE INPUT POLYGONS = 0 DRC check ERC layout verification
LVS-Getting Started(I) unix% mkdir LVS cds.lib icfb CIW File Export CDL Top Cell Name nand3(nor3); View Name schmatic; Library Name hw3; Output File nand3.cdl Run directory. ok
LVS-Getting Started(II) CDL si.log Run Directory Output File
Converting Netlist File(I) LVSLOG.DAT unix unix% LOGLVS :htv generate information for debugging :genpad :cir nand3.cdl compile CDL/SPCE/HSPICE netlist file :conv add8bit produce LVSLOGIC.DAT file for LVS :exit
Converting Netlist File(II) PRINT.OUT LOGLVS cdl
RUN Dracula LVS Operation(I) lvs.com LVS lvs.com INDISK=nand3.gds PRIMARY=nand3 PRINTFILE=edu( ) SCHMATIC=LVSLOGIC
RUN Dracula LVS Operation(II) lvs.com unix unix% PDRACULA :/g lvs.com n :/fin unix Unix% jxrun.com > lvs_log& edu.lvs
LVS Summary(I) *************************************************** ********** LVS DEVICE MATCH SUMMARY ********** *************************************************** NUMBER OF UN-MATCHED SCHEMATICS DEVICES = 0 NUMBER OF UN-MATCHED LAYOUT DEVICES = 0 NUMBER OF MATCHED SCHEMATICS DEVICES = 2512 NUMBER OF MATCHED LAYOUT DEVICES = 2512 unmatch 0 ok 0 debug
LVS Summary(II) **************** DISCREPANCY POINTS LISTING ********** ******************************************************** NO DISCREPANCIES device CIC data book LVS
LVS Summary(III) ******** DEVICE MATCHING SUMMARY BY TYPE ******** TYPE SUB-TYPE TOTAL DEVICE UN-MATCHED DEVICE SCH. LAY. SCH. LAY. MOS P 1136 1136 0 0 MOS N 2544 2544 0 0 bit work cascad work
http://www.cic.edu.tw/training/train_download.htm
Layout (I) Vdd Gnd spice simulation Average Current electromigration metal1 metal2 0.8mA/1um metal3 1.6mA/1um metal1 2.5um 2mA block
Layout (II) Vdd or Gnd block N block vdd gnd subtract contact 10um n-well Vdd pwell( n-well ) Gnd well performance
Layout (III) metal Schmatic check&save cdl
Thanks For Your Attention!