full custom layout design flow - nctu soc labsoclab.cn.nctu.edu.tw/vlsi2013/full custom layout...
TRANSCRIPT
Full Custom Layout Design Flow
指導教授: 董蘭榮負責助教: 原祥富上課日期: 2013/11/13
1
Outlines Schematic design with Composer Pre-simulation using Hspice Layout design with Virtuoso Layout verification with Calibre
Design Rule Check (DRC) Layout Versus Schematic (LVS) Layout Parasitic Extraction (PEX)
Post-simulation using Hspice
22013/11/15
Workstation: 140.113.146.24~27 & 34
Technology file: CIC 0.18um 1.8V/3.3V 1P6M Virtual Mixed Mode/RFCMOS Process
Tool Hspice - hspice_2012.06-SP2_linux CosmosScope - cosmos_scope_2010.03_linux Virtuoso - IC_51.41.151_linux Calibre - calibre_2012.2_26.20_linux32
32013/11/15
Announcements
Full Custom Layout Design Flow
42013/11/15
Pre-Simulationtool: Hspice
Specification
Circuit Designtool: Schematic
Layout Designtool: Virtuoso or Laker
Design Rule Check (DRC)tool: Calibre
Layout Versus Schematic (LVS)tool: Calibre
Tapeout
Layout Parasitic Extraction (PEX)tool: Calibre
Post-Simulationtool: Hspice
Technology Files
52013/11/15
Hspice cic018.l
Virtuoso display.drfcic18.tf
DRC rule.drcLVS Rule.lvs
PEXRule.rceRule_08KA.rcRule_20KA.rc
Prepare Files Type: “cp /usr2/ce21/student/u97/u9712525/.tcshrc . ” Type: “cp /usr2/ce21/student/u97/u9712525/.cdsinit . ” Type: “cp /usr2/ce21/student/u97/u9712525/calibre.cshrc . ” Type: “source .tcshrc ” Type: “source calibre.cshrc” Type:
“cp /usr2/ce21/student/u97/u9712525/test/CadenceVirtuoso . ” Type: “./CadenceVirtuoso”
( to create the symbolic link of the technology files )
62013/11/15
Cadence Virtuoso Command: icfb &
72013/11/15
Ignore this error
1.
2.
Create a New Library (1) Tools Library manager
82013/11/15
1.
2.
3.
1.
Create a New Library (2) File New Library
92013/11/15
2.
New a library name
The path of this new library
Press ok to build up
3.
Setup the Technology File Browse cic18.tf (CIC technology file)
102013/11/15
1. 2.
3.
Loaded Successfully You must place the “ cic18.tf ” in the same directory where you execute the
command “ icfb & ”, or the complete path must be given.
112013/11/15
Start to Schematic Work Library manager select the library name you just created,
ex “VLSI” in this example. File New Cell View
122013/11/15
1.
your library name
2.
3.
Type cell name
Composer-Schematic for design your ckt
Schematic Window
132013/11/15
Check and SaveSave
Add instance
Wire
Add Pin
Hot Key
Add Instance: NMOS
142013/11/15
1.
2.
3.
4.
Library: analogLibCell: nmos4View: symbol
Model name: n_18Width:Length:
Modify the parameter of the component:click and choose the component, and press Q to modify.
Add Instance: PMOS
152013/11/15
1.
2.
3. 4.
Library: analogLibCell: pmos4View: symbol
Model name: p_18Width:Length:
Add Instance: VCC
162013/11/15
1.
2.
3.
Add Instance: GND
172013/11/15
1.
2.
3.
Add Pin
182013/11/15
1.
2.Choose the type of the pin
Example: Inverter
192013/11/15
Remember to Check and Save
You need to make sure no error in the schematic.
Export the sp file File Export CDL
202013/11/15
1.
2.
3.
4.
Browse the schematic file
Type your sp ffile name
The sp file
212013/11/15
The path you save the (name).sp
File Modification for LVS
222013/11/15
Title
Add “*” berfore “.PARAM”
Modification: 1. MM1 M12. MM0 M03. PM p_184. NM n_18
LVS will burst out many errors if you don’t modify this file!!
The (name).sp file will be used later in LVS!!
Pre-Simulation
232013/11/15
Notice: 1. The technology file changes to “cic018.l”. 2. Model name for NMOS: n_183. Model name for PMOS: p_18
Example Code
242013/11/15
HSPICE Simulation Commands
hspice <-I path/input_file> <-o path/output_file>
-i path/input_fi:Name of the input netlistfile. If you do not enter an extension, HSPICEassumes .sp.-o path/output_file:Name of the output file. If you do not specify an extension, HSPICEassigns .lis.
252013/11/15
HSPICE Simulation Commands Examples
hspice -i demo.spdemo is the root input file name. Without the -o argument and without redirection, HSPICE does not generate an output listing file.
hspice -i demo.sp -o demodemo is the output file root name (designated with the -o option). Output files are named demo.lis, demo.tr0, demo.st0, and demo.ic0.
hspice demo.sp -n 7 > demo.outThis command redirects output to a file instead of stdout. demo.sp is the input netlist file. The .sp extension is optional. The -n 7 starts the output data file revision numbers at 7; for example: demo.tr7, demo.ac7, demo.sw7, and so forth. The > redirects the program output listing to file demo.out.
262013/11/15
CosmosScope
scope &
272013/11/15
Start to Layout Work
282013/11/15
Tools Library manager select the library name you just created, ex “VLSI” in this example.
File New Cell View1. 2.
Choose Virtuoso for layout cell view
Layout Work Windows LSW: Choose the material for your layout Layout plane: A design platform with P-substrate in default
292013/11/15
Hot Key for Layout Design
R Rectangle shift + Z Zoom inK Create ruler ctrl + Z Zoom outS Sketch shift + K Clear all rulersF Fit all Esc CancelC Copy Delete DeleteM Move ctrl + P Add pinsMouse left button to choose , right botton to zoom in
302013/11/15
Display Options
312013/11/15
Adjust the snap spacing to 0.01um, so that you can draw the minimum length
0.18um.
Inverter Layout
322013/11/15
Nwell
PIMP
NIMP
DIFF
PO1
ME1
M1_TEXT
CONT
PMOS
NMOS
in
vcc
gnd
out
Calibre – DRC (1) Calibre Run DRC
332013/11/15
DRC starts here!!
Calibre – DRC (2)
342013/11/15
Cancel
Calibre – DRC (3) Rule … select “rule.drc” ok
352013/11/15
1. 2.
3.
4.
Calibre – DRC (4)
362013/11/15
DRC file is ready.
Calibre – DRC (5) Input page Don’t change anything!!
372013/11/15
Your layout file
Cell name
Calibre – DRC (6) Output page - Don’t change anything!! Start to run DRC
382013/11/15
1.
2.
Calibre – DRC (7) Summary report You should need to make sure no any DRC errors before going to LVS.
392013/11/15
No error!!
Calibre – DRC (8) Error: the two PIMP regions are too close!! The minimum space between two PIMP region is 0.45um.
402013/11/15
error!!
You can highlight the error.
Calibre – LVS (1) Calibre Run LVS
412013/11/15
LVS starts here!!
Calibre – LVS (2)
422013/11/15
Cancel
Calibre – LVS (3) Rule … select “Rule.lvs” ok
432013/11/15
1. 2.
3.
4.
Calibre – LVS (4)
442013/11/15
LVS file is ready.
Calibre – LVS (5) Input page Compare Layout vs. Netlist
452013/11/15
Your layout file
Netlist extracted from layout
The sp file produced from the schematic.
Calibre – LVS (6) Output page - Don’t change anything!! Start to run LVS
462013/11/15
1.
2.
Calibre – LVS (7) LVS pass!!
472013/11/15
Calibre – PEX (1) Calibre Run PEX
482013/11/15
PEX starts here!!
Calibre – PEX (2) Rules … Rule.rce ok
492013/11/15
1. 2.
3.
4.
Calibre – PEX (3)
502013/11/15
Calibre – PEX (4) Input page
512013/11/15
The sp file produced from the schematic.
Calibre – PEX (5) Output page Netlist:
Extraction type: R+C Format: HSPICE Names: LAYOUT
Nets: All Nets
522013/11/15
1.
2.
Calibre – PEX (6) Output Result:
INV.pex.netlist INV.pex.netlist.INV.pxi INV.pex.netlist.pex
Netlist with the parasitic RC
532013/11/15
Post-Simulation
542013/11/15
Post-simulation
Simulation Results
552013/11/15
Pre-sim result Post-sim result
Thank you
562013/11/15