![Page 1: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/1.jpg)
NTUENTUEEE
1
Introduction to CadenceIntroduction to Cadence
講員:張祐齊日期: 2002.02.27原講員:魏睿民 1999.10.08
![Page 2: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/2.jpg)
NTUENTUEEE
2
OutlineOutline
• Setup the environment• Starting Cadence• Using layout editor• Extract layout to spice• Using Timemill
![Page 3: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/3.jpg)
NTUENTUEEE
3
Environment SetupEnvironment Setup
• Making a directory for using cadence, such as cad.
• Specify cds.lib in your working directory. – The easier way is copy mine to your directory like this,
cp ~r89052/cad/cds.lib your_directory• Type icfb& to running cadence in background.
![Page 4: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/4.jpg)
NTUENTUEEE
4
Def. Of Some FilesDef. Of Some Files
• Technology file ( 035.tf ): specifies all the tech.-dependent parameters associated with that particular library.
• divaDRC.rul, divaEXT.rul, divaLVS.rul are design rules for DIVA tools. They provide on-line rule-check in layout editor.
• display.drf is a file containing layer display information.• cds.lib is a file containing library definition.• .cdsinit skill format, pre-define the bindkeys, skill search pa
th, text editor.• .simrc skill format, set simulation and netlisting environmen
t variable
![Page 5: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/5.jpg)
NTUENTUEEE
5
Create a New LibraryCreate a New LibraryFile => New =>Library
Your library name Choose this
Tech. file
![Page 6: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/6.jpg)
NTUENTUEEE
6
Create a New LibraryCreate a New Library
• After creating a new library directory,we still need to copy some files below in the library directory:
divaDRC.rul divaLVS.rul divaEXT.rul divaERC.rul display.drf
![Page 7: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/7.jpg)
NTUENTUEEE
7
Create a New CellCreate a New CellFile=> New => Cell
Your library name
Choose Virtuso for layout view,
Schematic for schematic view
Specify your cell name
![Page 8: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/8.jpg)
NTUENTUEEE
8
Open Layout EditorOpen Layout EditorFile =>
Open …
Choose Library
Choose Layout view
Choose Cell
![Page 9: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/9.jpg)
NTUENTUEEE
9
Layout EditorLayout EditorPresent point Relative point present command
LSW Bar click middle button
![Page 10: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/10.jpg)
NTUENTUEEE
10
Physical Layout TechniquesPhysical Layout Techniques
• Once a circuit design is complete, it becomes necessary to provide an area-efficient layout of the circuit to generate the masks necessary for fabrication.
• We must define the following: ”NWELL”, “PWELL”, “THIN”, “GPOLY”, “CONT”, “METAL1”, “METAL2”, “METAL3”, “VIA1”, “VIA2”, “NPIMP”, “PPIMP” in the layout database for 0.35μm TSMC process of CIC.
![Page 11: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/11.jpg)
NTUENTUEEE
11
Physical Layout TechniquesPhysical Layout Techniques
![Page 12: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/12.jpg)
NTUENTUEEE
12
Physical Layout TechniquesPhysical Layout Techniques
• The n+ diffusion can be defined by “NPIMP” and “THIN”. With poly across, a NMOS is formed.
• The p+ diffusion can be defined by “PPIMP” and “THIN”. With poly across, a PMOS is formed. Also PMOS is formed on “NWELL”.
• Conductor: Poly and metals. They are in different layer and disconnected unless through “CONT” or “VIA”. “CONT” is for poly and metal1. “VIA” is used between 2 metals.
• There is also “THIN” at “vdd!” And “gnd!”, “CONT” is required to connect “THIN” and “Metal1”. Once the “THIN” exist, there is PPIMP or NPIMP.
• After finish drawing, do not forget to place pins on inputs and outputs.
![Page 13: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/13.jpg)
NTUENTUEEE
13
Useful HotkeysUseful Hotkeys
• Some useful hotkeys:– r: draw rectangular block– z/Z: room in and room out– k/K: ruler on/off– s:stretch– c: copy
• m: move• u: undo• Del: delete• q:query• p: create path
![Page 14: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/14.jpg)
NTUENTUEEE
14
LSWLSW
![Page 15: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/15.jpg)
NTUENTUEEE
15
Option->DisplayOption->Display
![Page 16: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/16.jpg)
NTUENTUEEE
16
Options->EditorOptions->Editor
![Page 17: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/17.jpg)
NTUENTUEEE
17
On-line DRCOn-line DRC
![Page 18: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/18.jpg)
NTUENTUEEE
18
HW1HW1
(1) 請用 CADENCE 畫出 transmission-gate full adder 的 Layout 。
(2) 此 Layout 必須通過 ON-LINE DRC check (3) Due on March 13
![Page 19: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/19.jpg)
NTUENTUEEE
19
Open the extracted view and type shift-f, we can see the N/PMOS with the value of L/W.
Select Cparasitics
Getting Extracted ViewGetting Extracted View
![Page 20: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/20.jpg)
NTUENTUEEE
20
Extract Layout to Spice (I)Extract Layout to Spice (I)
• For the analog artist, do the following 3 steps:1. Open .cshrc and find the line:
setenv CDS_Netlisting_Mode=Digitalchange “Digital” to “Analog”
2. Open .simrc and find the line: simNlpGlobalLibName=samplechange “sample” to “analogLib”
3. In divaExt.rul,change the capacitor model to “pcapacitor”change the transistor model to “pmos4” and “nmos4”.
![Page 21: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/21.jpg)
NTUENTUEEE
21
Extract Layout to Spice (II)Extract Layout to Spice (II)
• For the digital artist, do the following 3 steps:1. Open .cshrc and find the line:
setenv CDS_Netlisting_Mode=Analogchange “Analog” to “Digital”
2. Open .simrc and find the line: simNlpGlobalLibName=analogLibchange “analogLib” to “sample”
3. In divaExt.rul,change the capacitor model to “capacitor”change the transistor model to “pfet” and “nfet”.
![Page 22: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/22.jpg)
NTUENTUEEE
22
CDL OUT – step1CDL OUT – step1
![Page 23: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/23.jpg)
NTUENTUEEE
23
CDL OUT – step 2CDL OUT – step 2
本例中輸出檔案為 an2.sp
![Page 24: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/24.jpg)
NTUENTUEEE
24
Preparation to Run TimeMillPreparation to Run TimeMill
• The files required to run TimeMill– *.sp: your spice file– *.cfg: 設定電源電壓及欲觀察的節點– *.io: 設定 test pattern 的輸入檔案及 IO pin name– *.vec: 設定測試 pattern– *.ctl: control file– Ls35_4_1.l: TSMC spice model
• * 表示待測試電路的名稱,如果是 circuit 是 an4 ,則 *=an4• 這些檔案都可以從網頁上抓到,在接下來的範例中以 an2 cell 為例。
• 執行檔:– spice2erun– printwlrun– gentechrun– timerun
![Page 25: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/25.jpg)
NTUENTUEEE
25
Running TimeMill – step 1Running TimeMill – step 1
• 透過 spice2e 將 an2 轉成 an2.ntl ( EPIC 檔案格式)– 將 an2.sp , spice2erun 拷貝至工作站下同一目錄– 將 spice2erun 的屬性更改為可執行並執行
• " spice2erun 內容,共三行 "– echo "spice2e running!"– spice2e -i an2.sp -o an2.ntl -f hspice -1– echo "spice2e end!"
• 輸出檔案 an2.ntl注意: mos 的長寬都要改成以u 來表示。如 l=3.5e-7 要改成 l=0.35u 。
![Page 26: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/26.jpg)
NTUENTUEEE
26
Running TimeMill – step 2Running TimeMill – step 2
• 透過 printwl ,根據 an2.ntl 產生 an2.wl1– 將 an2.ntl , printwlrun 拷貝至工作站下同一目錄– 將 printwlrun 的屬性更改為可執行並執行
• " printwlrun 內容,共三行 "– echo "printWL running!"– printWL -n an2.ntl -m AN2 -o an2.wl– echo "printWL end!“
• -m 後面是接 spice 檔中 subckt 的名稱
![Page 27: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/27.jpg)
NTUENTUEEE
27
Running TimeMill – step 3Running TimeMill – step 3
• 根據 an2.wl1 產生新的 an2.ctl• “ an2.wl1 內容,共八行 ”
– %model– .model n nmos– .model p pmos– %parameters– N_LENGTH1 0.35– NW1 1.70– P_LENGTH1 0.35– PW1 2.65 3.30
• 將 an2.wl1 整段複製到 an2.ctl 相對的地方
![Page 28: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/28.jpg)
NTUENTUEEE
28
Running TimeMill – step 4Running TimeMill – step 4
• 透過 gentech 產生 an2.tech– 將 an2.ctl , ls35_4_1.l , gentechrun 拷貝至工作站下同一目錄– 將 gentechrun 的屬性更改為可執行並執行
• " gentechrun 內容,共三行 "– echo "begin: `date`"– gentech -c an2.ctl -t an2.tech -f hspice -m -q– echo "end: `date`“
• 輸出檔案是 an2.tech
![Page 29: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/29.jpg)
NTUENTUEEE
29
Running TimeMill – step 5Running TimeMill – step 5
• 進行 timemill 模擬– 將 an2.ntl , an2.io , an2.cfg , an2.tech , timerun– 拷貝至工作站下同一目錄– 將 timerun 的屬性更改為可執行並執行
• " timerun 內容,共三行 "– echo "run timemill"– timemill -n an2.ntl an2.io -m AN2 -o an2 -c an2.cfg -p an2.tech -d t
-t 50 – echo "end timemill"
• 50 是模擬的時間長度,跟 test pattern 長度有關
![Page 30: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/30.jpg)
NTUENTUEEE
30
Running TimeMill – step 5Running TimeMill – step 5
• 注意事項:將 an2.ntl 的 n 改成 nch
“an2.io”
(is=vec)(en=an2.vec)(ot=A,B);
“an2.vec”; A Bradix 1 1io i i10 0 020 0 130 1 040 1 1
輸出檔案 : an2.out
![Page 31: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/31.jpg)
NTUENTUEEE
31
Running TimeMill – step 6Running TimeMill – step 6
Debussy1. 看波形
![Page 32: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/32.jpg)
NTUENTUEEE
32
Running TimeMill – step 6Running TimeMill – step 62. 選擇輸入檔案
5. 選擇節點
![Page 33: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/33.jpg)
NTUENTUEEE
33
Running TimeMill – step 6Running TimeMill – step 6
3. 將檔案格式選成 *.out
4. 選擇所要觀察的 ckt
![Page 34: NTUEENTUEE 1 Introduction to Cadence 講員:張祐齊 日期: 2002.02.27 原講員:魏睿民 1999.10.08](https://reader033.vdocuments.us/reader033/viewer/2022052216/5a4d1bb97f8b9ab0599d022a/html5/thumbnails/34.jpg)
NTUENTUEEE
34
Running TimeMill – step 6Running TimeMill – step 6
6. 選擇觀察節點
7. 得到結果