一.警告
1.cds.lib 内容redefines
*WARNING* LIB XuKun_Lib from File /home/IC/Desktop/cds.lib Line 2 redefines
LIB XuKun_Lib from File /home/IC/cds.lib
Insert UNDEFINE XuKun_Lib
before DEFINE XuKun_Lib
in /home/IC/Desktop/cds.lib
Or remove or comment out DEFINE XuKun_Lib
in /home/IC/cds.lib
to suppress this warning message.
分析:警告的内容表明了重复定义了XuKun_Lib这个库,我在
解决方法:将/home/IC目录下的cds.lib文件中的第四行DEFINE XuKun_Lib /home/IC/XuKun_Prj_File/XuKun_Lib删除,警告消失。
SOFTINCLUDE /opt/Cadence/IC617/share/cdssetup/cds.lib
DEFINE smic18bcdepi OA/smic18_Epi_1P5M_TM2_HRP3k_MIM2_TYP2_oa_cds_v1.14_rev2_0_cciqrc/smic18bcdepi
DEFINE tsmc18rf OA/tsmc18/tsmc18rf
DEFINE XuKun_Lib /home/IC/XuKun_Prj_File/XuKun_Lib
2.WARNING The display packet information ‘red’ for ‘display’ was not found.
*WARNING* The display packet information 'red' for 'display' was not found.
*WARNING* The display packet information 'redhidden_L' for 'display' was not found.
*WARNING* The display packet information 'creamshortDash_L' for 'display' was not found.
*WARNING* The display packet information 'creamthickLine2_L' for 'display' was not found.
*WARNING* The display packet information 'redthickLine2_L' for 'display' was not found.
*WARNING* The display packet information 'bluethickLine2_L' for 'display' was not found.
*WARNING* The display packet information 'redbackSlash_S' for 'display' was not found.
*WARNING* The display packet information 'reddot3_S' for 'display' was not found.
*WARNING* The display packet information 'orangedots_S' for 'display' was not found.
*WARNING* The display packet information 'winColor2winColor1daggerthickLine' for 'display' was not found.
*WARNING* The display packet information 'bluecrossthickLine' for 'display' was not found.
*WARNING* The display packet information 'pinkbrick_SN' for 'display' was not found.
*WARNING* The display packet information 'limedot4_S' for 'display' was not found.
*WARNING* The display packet information 'limedot3_S' for 'display' was not found.
*WARNING* The display packet information 'grayshortDash_L' for 'display' was not found.
*WARNING* The display packet information 'graythickLine2_L' for 'display' was not found.
*WARNING* The display packet information 'magenta' for 'display' was not found.
*WARNING* The display packet information 'graythickLine_L' for 'display' was not found.
*WARNING* The display packet information 'gray' for 'display' was not found.
*WARNING* The display packet information 'forest' for 'display' was not found.
等警告信息
分析:警告信息表明缺少显示包信息
解决方法:Virtuoso→Tools→DisplayResourceManager中使用merge功能,来合并display.drf包。我常在桌面启动virtuoso,所以我在桌面新建一个空的display.drf文件,在Virtuoso→Tools→DisplayResourceManager中使用merge功能,将各个工艺库的display.drf文件合并到桌面的display.drf文件即可。我一共合并了如下几个显示文件供参考。
3.Error The default SKILL generic function has not been defined for the function “asiEnvGetVar”. Ensure that this function is called with the correct argument(s) (tool partition name).
ERROR (ADE-5066): Tool 'hspiceS' has not been registered.
ERROR (ADE-5067): Unable to initialize tool 'hspiceS'; either tool class is not
defined or tool is not registered.
*Error* The default SKILL generic function has not been defined for the function "asiEnvGetVar". Ensure that this function is called with the correct argument(s) (tool partition name).
分析:eetop上说是tsmc18rf工艺库的问题
解决方法:我目前暂未使用到HSpice,所以有两种解决方法,
一种是直接注释掉tsmc18rf工艺库中libinit.il文件中关于hspice的代码,如下
asiSetEnvOptionVal(asiGetTool('hspiceS) "modelPath" strcat(libPath "/../models/hspice") )
asiSetEnvOptionVal(asiGetTool('hspiceS) "includeFile" "hspice.mdl")
;; asiSetEnvOptionVal(asiGetTool('hspiceS) "modelPath" strcat(libPath "/../models/hspice") )
;; asiSetEnvOptionVal(asiGetTool('hspiceS) "includeFile" "hspice.mdl")
一种是参照libinit.il文件中关于hspice的代码的上下文,稍微进行修改,改为:
;;这样修改不一定正确,但是报错同样会消失
if(getd('hspiceS) then
asiSetEnvOptionVal(asiGetTool('hspiceS) "modelPath" strcat(libPath "/../models/hspice") )
asiSetEnvOptionVal(asiGetTool('hspiceS) "includeFile" "hspice.mdl")
)
if(getd('ADSsim) then
asiSetEnvOptionVal(asiGetTool('ADSsim) "modelFiles"
list(
list(strcat( libPath "/../models/ADS/rf018_inc.net") "")
list(strcat( libPath "/../models/ADS/ResModel.net") "res_t")
)
)
);end ADS if
); if schematic context is loaded
二.问题记录
1.cadence自己创建的库消失
从图中可以看出,我自己的库XuKun_Lib不见了,原因是virtuoso启动位置不同,在桌面中/home/IC/Desktop启动virtuoso库还在,在/home/IC下启动virtuoso库不见了。原因是桌面上有cds.lib文件,内容如下:
SOFTINCLUDE /home/IC/cds.lib
DEFINE XuKun_Lib /home/IC/XuKun_Prj_File/XuKun_Lib
因此从不同位置启动virtuoso软件,最终出现的库不一样。
2.Tsmc18库调用器件版图发生错误,无法显示完整器件版图
3.
三.Linux系统中的一些操作
1.查找文件
在红帽系统中,你可以使用find命令来查找名为relXpert.cxt的文件。下面是一个基本的find命令示例,用于在文件系统中查找该文件:
find / -name "relXpert.cxt" 2>/dev/null
四.Cadence中的一些操作
1.画版图的一些操作
画图层(如gate):选中gate层级,按R绘制
连图层(如gate):选择gate层级,按P连接层级
放置通孔:按O放置
五.DRC中的错误
1.
OD.R.1.WARN { @ OD without implant
(OD NOT ODWR) NOT IMP
}
定位至图中红圈部分闪烁,可以发现左侧VDD没有放入body区
五.LVS学习
1.Calibre nmLVS配置卡中input-netlist中spice files文件导入问题
根据tsmc18rf工艺库PDK中LVS_RCX.README文件中的提示:
*******************************************************************************
!!!!!!-IMPORTANT-IMPORTANT-IMPORTANT-!!!!!!!!!!!-IMPORTANT-IMPORTANT-IMPORTANT-!!!!!
Before running LVS (flow for batch mode LVS):
1. netlist your circuit as 'out.cdl' (cdl format)
2. cat lvs.add out.cdl > chip.cdl ;makes the final netlist for LVS checking
!!!!!!-IMPORTANT-IMPORTANT-IMPORTANT-!!!!!!!!!!!-IMPORTANT-IMPORTANT-IMPORTANT-!!!!!
*******************************************************************************
生成chip.cdl文件然后添加即可。
2.LVS报错(新手向)
Error: Different numbers of ports (see below).
根据see below往下翻可以看到layout和source的port数目不同,我的反相器入门项目中port数目是4个,而layout中只有1个,说明版图中的pin绘制错误(肯能是图层错了,全部重画在m1pin层),删除原本的pin重新绘制后,重新跑LVS该错误消失。
Error: Different numbers of nets (see below).
这个处理方法和上面类似,我把版图连线又重新练了一遍,然后就好了,可能是label的图层错误,改一下图层到M1pin或者重新画一下,应该会好。
六.寄生参数提取PEX
1.PEX出现报错“Rules file must contain a CAPACIANCE ORDER statement"
在PEX选项卡中SETUP打开PEXOptions,然后在include中添加rules文件,tsmc18rf工艺库中calibre文件夹的readme中提到的只有这个规则文件,所以我添加了这个。重新runPEX后,报错消失。