关于Cadence-virtuoso的一些实用技巧

更新时间:2023-05-14 12:50:39 阅读: 评论:0

1. 关于版图一些实用的快捷键
F3 显示Option form
F4 Full/Partial 选择切换
N  改变snap modeln---diagonal, Shift+n---orthogonal, Ctrl+n---L90Xfirst
Ctrl+y 当多个图形叠在一起时(点击左键默认是两个图形间切换),可以轮流选择重叠的图形
BackSpace    当命令尚未完成时,可以撤销上一次(多次点击可撤销多次)鼠标的点击。如:画path时可撤销前面鼠标错误的点击,选择很多图形stretch,点了reference point发现
有多选,可撤销点击,去掉多选图形后再stretch
Right moubollocks: 
a. 没有命令时重复上次命令;
b. moveCreate instance时逆时针旋转,ShiftRight mou 轮流关于x/y轴对称;
c. path普通话测试官网汉东省是哪个省时,L90XfirstL90Yfirst之间切换,CtrlRight mou Path自动换层(Path stitching大同gdp切换,ShiftRight mou换层时通孔旋转;
d. Reshapesplit时,切换不同的高亮区域,以便下一步的操作。
2.使用reference window
一个cellview可以打开两个窗口,一个作为主窗口编辑,另外一个可以放小一点作为参考窗口(即reference window),有点像world view,不同的是主窗口的编辑不仅在参考窗口中可以看到,而且两个窗口中编辑是等效的(当然你的显示器越大,用参考窗口越好,^_^)。
可以用Window – Utilities – Copy Window打开一个参考窗口,也可以直接把一个cellview打开两次,如图
可以同时在两个窗口中编辑
3.关于Path stitching
  ①画path时可以从一层切换到另一层,并且自动打上对应的接触孔,这个功能叫path stitching.
 
②在Change To Layer 栏里选择你要换的layer,也可以通过Control+right mou 键来选择需要换的层。
如果Change To Layer栏里没有层可选,那是因为在technology file 中没有关于这层的contact(或者cdsVia的定义)定义,只有定义了之后才能使用path stitching功能。
下面是一个contacts定义的例子:
;********************************
; DEVICES
;********************************
devices(
tcCreateCDSDeviceClass()
symContactDevice(
绝笔诗
;
(name viaLayer viaPurpo layer1 purpo1 layer2 purpo2
; w l (row column xPitch yPitch xBias yBias) encByLayer1 encByLayer2 legalRegion)
  (ACT_M1 CON drawing ACT drawing M1 drawing
  0.30 0.30 (1 1 0.60 0.60 center center) 0.14 0.15 _NA_)
  (GP_M1  CON drawing GP  drawing M1 drawing
  0.30 0.30 (1 1 0.60 0.60 center center) 0.14 0.15 _NA_)
  (M1_M2  V1 drawing  M1 drawing  M2 drawing
  0.36 0.36 (1 1 0.71 0.71 center center) 0.12 0.12 _NA_)
 
  (M2_M3  V2 drawing  M2 drawing  M3 drawing
  0.36 0.36 (1 1 0.71 0.71 center center) 0.12 0.12 _NA_)
  ); end of symContactDevice
;;*****  or you can define cdsViaDevice  ************
;cdsViaDevice(
;;( deviceName cutLayer cutPurpo  layer1 purpo1 layer2 purpo2
;; row column    origin    stackedVias  cutLayerW cutLayerL xCutSpacing yCutSpacing
;; layer1XEnc layer1YEnc layer2XEnc layer2YEnc  layer1Dir layer2Dir )
; ( CDSVIA1  V1 drawing  M1 drawing    M2 drawing
;  1 1  centerCenter  _NA_  0.36 0.36  0.35 0.35  0.12 0.12  0.12 0.12  "" "" )
; ( CDSVIA2  V2 drawing  M2 drawing    M3 drawing
;  1 1  centerCenter  _NA_  0.36 0.36  0.35 0.35  0.12 0.12  0.12 0.12  "" "" )
; ( CDSVIA3  V3 drawing  M3 drawing    M4 drawing
;  1 1  centerCenter  _NA_  0.36 0.36  0.35 0.35  0.12 0.12  0.12 0.12  "" "" )
;   
;  ) ; end of cdsViaDevice
) ;devices
③根据path width的不同,工具会自动打上一个孔,或者是一组孔罗素的名言
如果想改变孔的对齐方式,可以通过改变Contact Justification来调整
如果定义了多个ContactsPath Stitching时,
a. 设置环境变量uDefaultVia nil
envSetVal("layout" "uDefaultVia" 'boolean nil)
b. 然后换层时,如果定义了多种contact,会弹出一个选择框,可以选择你需要的孔
通孔只出现一个边框时,可以点击Rotate 或者Shift and click right 来旋转通孔。
4.Placing Pin Arrays(bus pins)
    你也许认为label就可以代替pin了,还用的着打唐代文化pin吗?其实不然,virtuoso工具一些连接关系都是通过pin来体现的,通过pin体现连接关系,在连线时(尤其时连线比较远,比较复杂时)可以通过打开Options->display->Display Controls->Nets,来显示复杂Net的连接。当然更实用的是在Layout-XL工具中可以对版图和电路进行实时对比(需要tech file的支持)。
当需要打bus pins的时候,可以一次打一组pinsbus pins的命名必须是Busname <startNum:EndNum>,这时可以通过修改XpitchYpitch来改变Bus pin的间隔,注意打的
pin是顺序上升或者下降的。
5.在已存在的两个path交错的地方自动打孔
两层之间的互连,可以手动打孔,也可以用煮饺子的方法Create Contact 自动打孔,但是必须在两条path交错的地方,而且两层之间有孔的定义(见Path stitchingcontact的定义),不能跨层打孔(如M1M3之间),不能在斜线上自动打孔,两条path不受cell的层次的限制,只要是可见的。如图,选中Auto Contact, 通孔中心会自动移到两条path的中心线交点处,但要注意交点是否在格点上

本文发布于:2023-05-14 12:50:39,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/89/897257.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:选择   自动   点击
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图