版图设计基础篇
----invert
1、 虚拟机如下
2、 打开虚拟系统(预先将装好软件的虚拟系统拷贝到电脑中,拷贝的盘格式格式化为NTFS
格式)
3、 Power on
4、 点击Power on this virtual machine,等待。。。 5、 进入linux 用户名root 密码 mimamima
6、 显示桌面
7、 打开终端,右键选择open terminal
8、 Ls查看目录
9、 进入PDK文件夹 cd chrt18 10、 打开cadence icfb 11、 新建(打开(osc中有我做的例子))原理图
12、
File new library
13、
Name 选择 attach to an existing techfile
14、
选择chrt18rf
15、
选择cellview
16、
选择刚新建的library,自命名cell name
17、 18、
按i添加元件,或者选择add instance 按browse选择选择library
19、 我们一般选择chrtbase和chrt18rf里的元器件,依次往右选,如上选择了chrtbase
中MOS管,型号nmos-1p8,最后一栏选symbol,然后回到virtuoso schematic editing,点击左键即选中了该元件如下图
20、 选中器件按字母Q可以修改器件的属性,多MOS管而言一般是W,L,fingers,
同样的方法选择其他器件修改属性。
21、 22、
save连线;左侧这几个功能经常用到
C 复制,p 添加pin(输入输出接口如下)
23、 输入四个pin name以空格隔开,direction 选择inputoutput,点击hide在virtuoso
schematic editing原理图中合适位置依次点击鼠标左键放置pin,然后连线如下图。Save至无错。
24、 生成cellview供仿真调用,如下选择cellview,ok,ok,关闭生成的cellview和原
理图invert
25、
可如下修改user preferences
修改成10次,这个画错了,可以按u回到上一步,可26、
回10步 27、 再新建一个原理图用来做前仿(原理图级仿真)
28、 这回可以在我们自己建的库里调出刚才画的反向器invert,方法同其他器件的添加,
只是库选择mmlinvert,可按R再电击invert旋转器件。在库analoglib中选择gnd和vdc,vpulse修改属性vdc 5v vpulse 0v 5v 周期1n 宽度0.4n,如下为原理图和pulse的属性。Vdc只要修改为5vdc即可
29、
选择analog environment准备仿真
30、 如上选择瞬态仿真时间5n秒 31、 如下选择输出什么波形,选择select on schematic,然后鼠标左键点击与输入输出
pin相连的两根导线
回到analog design environment 点击如下上面那个图标,或选择菜单ran等待
最后输出反向器输入输出波形应该如下,证实原理图正确
32、 关闭仿真环境、原理图,回到cadence主窗口icfb重新打开invert原理图,准备画
版图。 33、 先学习自动绘图布线,看懂自动布的线,然后手工布线,自动布的太松散,不讲究
布局,线也太窄。。。。。。总之不可取,下面是如何自动布线 34、 打开原理图-〉TOOL-〉DESIGN SYNTHESIS-〉layout XL -〉creat new-》ok选一样
的名字
35、 出现新窗口-〉design-〉gen from source-〉 36、 出现新窗口-〉layer/master选择met1-dg(焊盘材质选择)〉旁边改变大小为20/20(可
灵活变动) apply -〉ok
37、 将器件移到方框点击move然后点击器件移动鼠标(注意点击器件后要松 鼠标),
或者按m键再点击器件。
发现nmos、pmos太长,可以关掉layout在原理图中修改fingers保证总的width不变,最后mos管为正方形比较合适。将器件,包括pin都移到框内如下,红色为mos管,白色为pin,有时器件很小需要放大才能看见。一定要都在框内。
38、 39、
开始自动布线
routing-〉export to router-〉use rules file-〉pdk/icc。Rules
40、
direction:/root/mml4 -〉ok
41、 42、
ok,新窗口
autoroute-〉detail route-〉detail route-〉start pass-〉ok
43、 44、
rules-〉check-〉setup and check-〉same net-〉close file-〉write-〉session
45、 46、
这个时候自动生成的layout 应该已经添加了连线 shift+f查看fet内部结构
47、 !!!用添加pin的lable一定要修改lable的层,让之与pin的实际层相同,pin
的名称可以用q查看其属性的connectivity
用添加pin的lable
修改lable的层(修改其属性)
48、
快捷键0添加衬底连接给nmos,放在pin:gnd上
49、
放大与VDD相连的pmos,红色为N阱,我们要解开pmos在阱中加衬底连接
50、 -pmos把阱拿开加m1_nactive作衬底 51、 这时可以将外面的框用s键移开外面的框,否则影响器件的选择 52、 解开PMOS A、选择pmos
B、edit-〉hierarchy-〉flatten-〉中间三个 C、点击pmos即被解开
53、 快捷键S,鼠标移到红色边框,边框变色,点一下,移开,再点一下,边框被拉开
如下,在O添加衬底连接
、 选择左边矩形制作导线把衬底连接和pmos连接起来,矩形属性选择金属1
(met1),注意pmos与电源pin连接的是源级,我们的衬底是与源级相连。画矩形只要
点一下移动一下鼠标再点一下即可,当然,要先选择met1。
,然后选种矩形修改属性为
55、 0 56、 0 57、 回到virtuoso@xl layout editing-〉assura-〉run drc-〉rules自动选择-〉apply 出现如下窗口表示正在DRC电气规则检查,不要按ok!!!等待。。。
直至出现,yes
58、 completed successfully-〉yes,一般会出现错误提示如下(每次可能不一样,电路复
杂的时候甚至有上百条,不用惊慌,慢慢改,多数是距离错误,改一个可能少很多条)
59、 有错就出现error-visibility直到no errors found,一般是距离错误一般是隔得太近。
点击上图向左向右箭头,layout中的错误位置会聚焦。
这个根据错误提示最小和最大的接触孔大小为0.1和0.22,我们选择太大了所以重新选择两个过孔M1—NACTIVE,和M1-PACTIVE。如下
长度和宽度保留最大值0.22,增加行列数rows和columns,用这个方法提高接触面积减少接触电阻。关掉错误提示,重新DRC。直至出现如下窗口为无电气错误,符合设计规则
60、 换操作:从一种操作到另一种操作的时候经常会发现选择错了器件,或使用错了命
令,如果如下操作不会出错
:先esc取消前面的命令,再ctrl+d取消所有选择,再按快捷键,再操作 61、 回到virtuoso@xl layout editing-〉assura-〉run lvs 62、 设定工艺assura-chrt18rf和rule:1pam-20k-topmet-3p3 -〉ok(注意如果schematic
和layout的名称默认是相同的如果不同,要改过来) 出现如下窗口不要ok,等待。。。
63、
一般会出错,如下
、
很多情况下是因为衬底接错了位置,弄错了S和D,点击yes
65、 出现psub-stamperrorfloat一般是衬底接触出错,表示衬底悬空了,放大layout,发
现nmos接的(与地相连的那个)是m1-nactive本应该是m1-npctive 66、 该掉错误,关掉错误提示,重新LVS
67、 出现如上提示,大功告成一半,yes,
68、
关闭提示,接下来提取寄生参数
69、
选择run RCX
70、
如下,等待
71、
如下完成
72、 73、
关闭原理图和layout
可以在library中看到有个av-extracted
74、 75、
打开他,按下shift+f,放大,在一些导线连接处等都会发现如下电阻电容等
76、 这些是提取出来的参数,由于我们是自动布线,这些电阻电容可能很大,不可忽略,
会影响我们的时间测量结果。接下来用提取的参数进行仿真,由于我们画图之前修改了mos管的finger,我们要重新生成其cellview(略) 77、 重新打开仿真原理图,重新调入反向器,重新进入analog invironment
选择environment
在弹出的options中的schematic前加av_extracted,表示是后仿(带有寄生参数(集成电路绝对不可忽视的东西)的仿真,比较接近真实的电路) 78、 接下来按照前仿的步骤重新仿真。 79、 最后看仿真结果,如果符合我们的要求,电路可以送到厂家进行流片,如果不满意,
性能不好,则应该修改layout甚至schematic,直至,后仿过关。
80、 81、 82、
以上为我们的后仿结果,很明显与前仿差别太大 。。。。。。修改
9*9=81难之后completed successfully-〉
附录(不是所有的都能用,大部分,对提高画图速度很有帮助) Cadence版图布局软件Virtuso Layout Editor快捷键归纳(也就是Virtuso中说的Bindkey)
写在前面:以下我所归纳的快捷键是我在版图培训时通过阅读Cadence帮助文件和菜单命令一个个试出来的,有些我只知道作用而暂时想不到相应的中文翻译。还有一些快捷键帮助文件中有,但我试了没用,可能是要在Unix下吧^_^。希望对学版图设计的有所帮助吧。有不妥的地方还请多多指教啊。 首先介绍下鼠标操作吧。
单击左键选中一个图形(如果是两个图形交叠的话,单击左键选中其中一个图形,在单击选中另一个图形)
用左键框选,选中一片图形,某个图形要被完全包围才会被选中。
中键单击调出常用菜单命令(很少用,要点两下,麻烦。我们有快捷键的嘛)
右键点击拖放用来放大。放大后经常配合F键使用,恢复到全部显示。配合Tab键使用,平移视图。右键还有“Strokes”,就是点住右键画些图线,就能实现调用某些命令。
Shift+左键加选图形,Ctrl+左键减选图形。(Cadence菜单中大写表示+按shift,Ctrl写成^)
F1 显示帮助窗口。 F2 保存。
F3 这个快捷键很有用,是控制在选取相应工具后是否显示相应属性对话框的。比如在选取Path工具后,想控制Path的走向,可以按F3调出对话框进行设置。
F4 英文是Toggle Partial Select,就是用来控制是否可以部分选择一个图形。 F5 打开。
F6,F7帮助上有,但我试过,没反应-_-!!! F8 Guided Path Create 切换至L90XYFirst。 F9 是Filter Size 我不知道怎么用。
Ctrl+A 全选。这个和windows下是一样的。
Shift+B Return。这个牵扯到“Hierarchy”。我翻译成“等级”。这个命令就是等级升一级,升到上一级视图。
B键 去某一级(Go to Level)。
Ctrl+C 中断某个命令,不常用。一般多按几次Esc键取消某个命令。 Shift+C 裁切(Chop)。首先调用命令,选中要裁切的图形,后画矩形裁切。 C键 复制。复制某个图形。
Ctrl +D 取消选择。这个也可用鼠标点击空白区域实现。这个快捷键和Photoshop中的取消选区的快捷键是一样的。还有Shift+D,和D也是取消选择,我觉得很不实用。 Shift+E和E是控制用户预设的一些选项。 Ctrl+F显示上层等级Hierarchy。 Shift+F显示所有等级。
F键 满工作区显示。就是显示你所画的所有图形。 Ctrl+G(Zoom To Grid)。
G 这个快捷键是开关引力(Gravity)的。Gravity我觉得和AutoCAD里的吸附Snap差不多,就是会吸附到某些节点上去。有时候这个Gravity是很讨厌的,总是乱吸附,这时可以点击G键关闭Gravity,操作完成后再打开。 I键 插入模块(Instance)。
Shift+K 清除所有标尺。要清除的话总是要清除所有标尺,这个让人很不爽。
K键 标尺工具。Ruler
L键 标签工具。Label。标签要加在特定的text层上,这个有些人总忘记。 Shift+M 合并工具。Merge
M键 移动工具。Move。点选Move工具后,选中要移动的图形,然后在屏幕上任意一处单击一下,这个就是确定移动的参考点,然后就可以自由移动了。这个也可以通过鼠标先选中一个图形,移动鼠标当鼠标箭头变成十字方向的时候就可以拖动来实现。 Ctrl+N,Shift+N和N是控制走向的。 Ctrl+N 先横后竖。L90XFirst Shift+N 直角正交。Orthogonal N键 斜45对角+正交。Diagonal Shift+O 旋转工具。Rotate O键 插入接触孔。Create Contact Ctrl+P 插入引脚。Pin Shift+P 多边形工具。Polygon
P键 插入Path,我翻译成“路径”。有人翻译成“管道”。这些最后都要Convert to Polygon的。
Shift+Q 打开设计属性对话框。选中一个图形先。
Q键 图形对象属性。这个实用。经常用来更改图形属性。也是选中一个图形先。 Ctrl+R 是Redraw重画。
Shift+R 是Reshape重定形。就是在原来的图形上再补上一块图形。 R键 矩形工具。Rectangle应该是用的最多的工具了吧。
Ctrl+S 是Split。我翻译成“添加拐点”。就是配合Stretch命令可以是原来直的Path打弯。 Shift+S 是Search查找。
S键 拉伸工具。Stretch。要求是框选要拉伸图形,再拉伸。我觉得这个拉伸工具是Virtuso版图设计区别于其他绘图软件的精华所在,能在保持图形原有性质的前提下,自由拉伸。这个符合Layout布局的要求。 Ctrl+T (Zoom to Set)。
Shift+T (Tree),我觉得其实应该叫Hierarchy Tree。
T键 是Layer Tap,层切换。这个菜单命令中没有。这个快捷键其实挺方便。按过T后点击一个图形,就自动切换到刚刚点击图形的的层上去了。有了这个快捷键就不必频繁点击LSW窗口了。
Shift+U 重复Redo。撤销命令后,再反悔。 U键 撤销Undo。 Ctrl+V (Type in CIW)
V键 关联Attatch。这个命令要解释一下。将一个子图形(child)关联到一个父图形(parent)后。关联后,若移动parent,child也将跟着移动;移动child,parent不会移动。可以将Label关联到Pad上。
Ctrl+W 关闭窗口。关闭窗口的另一种方法。^_^ Shift+W 下一个视图。Next View W键 前一视图。Previous View
Ctrl+X 适合编辑。Fit Edit。感觉和F差不多。 Shift+X 下降一等级。Descend
X键 (Edit in Place) 。这个比较搞,很难翻译。在Hierarchy菜单下。 Ctrl+Y 叫Cycle Select 试了下没成功。
Shift+Y 粘贴Paste。配合Yank使用。
Y键 区域复制Yank。和Copy是有区别的,Copy只能复制完整图形对象。 Ctrl+Z 视图放大两倍Zoom In by 2 Shift+Z 视图缩小两倍 Zoom Out by 2 Z键 视图放大。 ESC键 Cancel。
Tab键 平移视图Pan。按Tab,用鼠标点击视图区中某点,视图就会移至以该点为中心。 Delete键 删除。
BackSpace键 撤销上一点。这个很有用。就不用因为Path一点画错而删除重画。可以撤销上一点。
Enter键 确定一个图形的最后一点。也可双击鼠标左键结束。 Ctrl+方向键 移动Cell。
Shift+方向键 移动鼠标。每次半个格点的距离。 方向键 移动视图。
附件(未 整理)
Antenna errors occur when a large metal structure is connected to a gate. When the metal is etched in the
fabrication a large amount of charged might be induced in the metal. This can cause the gate to break if there is no discharging path for high voltages (like a drain/source or a reversed diode) ? Antenna errors can be fixed by adding a reversed diode connected to the metal wire causing the problem. An N+ doped nwell contact will function as a reversed diode if connected to the substrate. Another
way to solve antenna errors is to build a bridge in higher or lower layers, and thereby break the long
metal wire connected to the gate
仿真振荡器: 1、加激发条件 2、conservation !!!
3、谐振电容大小似乎影响不大,主要由电感和寄生电容决定振荡频率 4、pplus 电阻的第三端应该是nwell,所以应该接高电位 5、画layout注意S/D共享
6、MIM电容提取参数后不见了,不知道什么原因
手工布线错误:
1、焊盘没有查看属性导致两个之间混淆 2、多finger的漏漏和源源之间没有连接 3、piscap电容的‘|’表示内圈met2,‘(’表示外圈met2,档头met1要接地 4、电感靠边的顶层金属为‘。’标记的plus端,相反的另一端为met3的mimus端
5、查看节点错误nets-》open tool-》zoom注意紫红色标注某一节点所到的任何地方是否都标注了!如果没有很有可能是少了一个过孔! 6、栅极注意防天线效应
7、电感上不能打过孔,需要用顶层金属接出来 8、v可以把子图形和父图形连接起来
9、back space可以删除画的上一点,这样可以不必因为画错一点而重新画 10、R可以画矩形
-extract: technology-必须保证assura_chrt18rf_1p6m_20k.tar.Z解压在/chrt18/assura_drc_technology中(如果你选的是这种工艺的话) -output选择extract overview
psub-stamp error mult
!!!因 为电容需要接地,但是原理图中没有体现!!!
-pmos->psub(pmos的衬底)->nactive(n+衬底的材料,版图设计时用o选择) -nmos->nsub(pmos的衬底)->pactive(p+衬底的材料,版图设计时用o选择) -两者用重参杂提高导电性给衬底已偏置
-解压chrt18rf_sige_Rev2.1a_062405.tar里面会有一个压缩包,再解压一次将最后的文件加名称改成泥想要的如 chrt18即可
-换操作,先esc取消前面的命令,再ctrl+d取消所有选择,再按快捷键,再操作 esc-〉再ctrl+d-〉s -dg means drawing layer -多插指D-〉S -SHIFT+x进b出
-esc-〉ctrl+d-〉edit-〉hierarchy-〉点击器件选中-〉右键-〉弹出分层窗口-〉OK
Spectre is time/frequency domain simulator while ADS is frequency domain only simulator.
ADS是基于频域的仿真器,做频域的仿真比较方便,而时域的仿真的准确性和效率就不太高了,特别是做大规模集成电路时;而spice类的是基于时域的仿真器,既便做频域的分析,也首先要做时域的仿真。
mml:ads-frequency domain,spice-time domain,hspice-high frequency,spectre-time/frequency domain simulator
-extract在assura中间坐
-为了减少栅极电阻采用多栅结构,栅极都要接一起,源漏也一样 -undo可以设置多次option-〉user preferences -pmos比nmos多一个阱也可以用q查看属性 -nmos加m1_pactive做衬底
-pmos把阱拿开加m1_nactive作衬底
解开 :edit-〉hierarchy-〉flatten-〉中间三个 -布线用rout然后修改属性,选高层金属
-option->display option->snap modes->any angle -shift+z ctrl+z 放大缩小窗口, -o 添加 衬底
-use the dg = drawing layer
-click on the nmos device (to highlight it) ?? hotkey X (shift-x) ?? OK (should open separate window with cell)
-Return to your design with hotkey b (select 0 then OK).
-Verify ?? Markers ?? Explain ?? click on the error marker and a window will pop up to show the error.
-Close the Layout window. From the Library manager, there should now be an extracted view of your cell.
-Tools ?? Library Manager…
-Open the extracted view by righ-clicking on it in the Library Manager, followed by Open…
share folder在file system/mnt/hgfs下!!! 不是在root下!!!
ic5141base就是cadence ic5141usr1是升级
载装icc11241布线升级包可不安装 assura检测 pdk
-建立链接(右键) -复制local到上一级 -修改文件名加点 -拷贝licence(不改) -和配置文件
CDS_INST_DIR=/home/daipu/cadence 改成
CDS_INST_DIR=/cadence
配置PDK
-root下建目录PDK
-baseline_chrt35rf030904.tar.Z拷贝到目录 -新建终端,进入该目录
-解压:tar zxvf 文件名。tar。z tar xvf 文件名.tar tar jxvf 文件名.gz
!!!进入PDK的目录!!!
安装icc11241:
1. 按照安装cadence的方法安装icc11241,在安装icc11241的目录建立tools的链接 2 .修改.bashrc(用户主目录下),添加以下语句 export ICCHOME=/IC11241(安装目录) export
PATH=$ICCHOME/bin:$ICCHOME/dfII/bin:$ICCHOME/tools/bin:$ICCHOME/tools/iccraft/bin:$ICCHOME/tools/iccraft/gds_if/#bin:$ICCHOME/tools/iccraft/lefdef_if/bin:$PATH export PATH=/IC11241/ic_craft/tools.lnx86/iccraft/bin:$PATH
export PATH=/IC11241ic_craft/tools/bin:$PATH
export LD_LIBRARY_PATH=/IC11241/ic_craft/share/oa/lib/linux_rhel21_32/opt export PATH=$PATH:/home/eda/ic_craft/share/oa/bin/linux_rhel21_32/opt
3.ok!
安装cadence assura314
4 .在安装文件里找到Tools.86xl,建立它的连接,改名字为tools的连接
5.进入你的目录下,桌面上有你的目录例如lhg的主目录,找到.bsch 项,在后面添加
export ASSURAHOME=/assura(红色为你的安装目录) export PATH=$ASSURAHOME/tools/bin:$PATH
export PATH=$ASSURAHOME/tools/assura/bin:$PATH export LD_ASSUME_KERNEL=2.4.1 -icfb
-新建library,mml,attach to an existing techfile,chart35rf -新建cell,invert,library:mml ,tool:composer-schematic -偏置和信号不要混淆
-spectre
-/035-mim-rf-fixed-spectre。scs(似乎不一定) -output blue lines(一定是连线,不是器件,否则结果不对)
自动绘图布线
打开原理图-〉TOOL-〉DESIGN SYNTHESIS-〉layout XL -〉creat new 出现新窗口-〉design-〉gen from source-〉
出现新窗口-〉layer/master选择met1-dg(焊盘材质选择)〉旁边改变大小为10/10 apply -〉ok 将器件移到方框点击move然后点击器件移动鼠标(注意点击器件后要松 鼠标) 开始自动布线
routing-〉export to router-〉use rules file-〉pdk/icc。rules direction:/root/mml4 -〉ok
首先把器件都放到蓝色方框
autoroute-〉detail route-〉detail route-〉start pass-〉ok rules-〉check-〉setup and check-〉same net-〉close file-〉write-〉session
这个时候自动生成的layout 应该已经添加了连线 shift+f查看fet内部结构
!!!添加pin的lable一定要修改lable的层,让之与pin的实际层相同
回到virtuoso@xl layout editing-〉assura-〉run drc-〉rules自动选择-〉apply completed successfully-〉yes
有错就出现error-visibility直到no errors found
回到virtuoso@xl layout editing-〉assura-〉run lvs
设定工艺和rule:2p4m -〉ok(注意如果schematic和layout的名称默认是相同的如果不同,要改过来)
completed successfully-〉
$:icfb&
(点击help可以看帮组文档,如果在终端直接输入cdsdoc,那么打开的是mmsim61的帮组文档,因为在PATH变量中,mmsim的路径是在前面的,而mmsim61的帮组文档是在$MMSIM_ROOT/tools/bin目录下的,所以是启动了mmsim61的文档,解决办法是在.bashrc中加入这一句:alias openbook='$CDS_ROOT/tools/dfII/bin/cdsdoc',应该是在这个位置,当然,如果你不打算看cadence的自带帮组文档,这一步就没必要了)
3.为了要使用cadence自带的帮助文档,可以用Firefox代替netscape,如下: $:su
password:
#:ln -s /usr/bin/mozilla /usr/bin/netscape
#:su usrname $:
Setting Up for the Examples:
Copying the SpectreRF Simulator Examples
Copy the rfExamples library into your account so that you can edit the sample design.
The library is located at
/cadence/tools/dfII/samples/artist/rfExamples
where /cadence is the installation directory for your Cadence software.
Setting Up the Cadence Libraries
The Cadence Libraries are defined in the UNIX text file cds.lib. You can edit this file in a UNIX shell window or by using the Library Path Editor while running the Cadence software. Using a UNIX Shell Window
To set up the libraries in a UNIX shell window, use the following procedure:
1.
In a UNIX shell window, open the cds.lib file for editing using vi, emacs or a similar text editor.
The cds.lib file is in your directory: /root's home/.
2.
In the cds.lib file, specify definitions for the basic, analogLib, sample, and spectreSModels libraries. In addition, define a user library where the sample circuits can be tested. The definitions in the cds.lib file look like the following:
DEFINE osc1 /root/pdk018/osc1
DEFINE basic /cadence/tools/dfII/etc/cdslib/basic
DEFINE analogLib /cadence/tools/dfII/etc/cdslib/artist/analogLib DEFINE sample /cadence/tools/dfII/samples/cdslib/sample
DEFINE spectreSModels /cadence/tools/dfII/samples/artist/ spectreSModels
You can label your test library any name you choose. This example assumes that you have called the library /root/pdk018/osc1. The name my_dir represents the directory into which you copied the design library.
mml: you should build a library such as osc1,and copy the all files of rfExamples library to osc1,replace all files.
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- igat.cn 版权所有 赣ICP备2024042791号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务