Cadence Virtuoso中理想二极管使用及模型定义报错咨询
Cadence Virtuoso仿真报错:模型定义未找到的解决办法
我来帮你把这个问题掰碎了说——你碰到的报错 error (input.ckt:44) definition of model mydiode not found.Please specify a defined model name. 核心原因是仿真器找不到你给二极管指定的mydiode模型定义。先给你解释下什么是defined model name:
在Cadence的仿真环境里,每个有源/无源器件都得对应一个模型文件(通常是.lib或.mdl格式)里的预定义模型。这个模型里包含了器件的所有电气特性参数(比如理想二极管的正向导通压降、反向漏电流、开关速度这些)。所谓"defined model name",就是指这些模型文件里已经写好、仿真器能识别的模型名称——你不能随便瞎填一个名字,仿真器不认的。
针对你用理想二极管的场景,给你一套具体的解决步骤:
- 首先确认器件选型:你应该从Virtuoso自带的
analogLib或者idealLib库中拖出理想二极管(别选工艺库的二极管,那需要对应PDK模型)。这类理想器件的模型是Cadence预先定义好的,不需要你自己造。 - 检查二极管实例的属性:打开二极管的属性编辑器,找到
Model Name这一栏——你之前填的mydiode是自己随便编的吧?仿真器根本没见过这个模型,当然报错。对于理想二极管,要么直接把这个字段留空,要么填仿真器内置的理想模型名称(比如analogLib里的理想二极管模型名就是diode)。 - 确保模型库已加载:打开ADE(Analog Design Environment),点击
Setup->Model Libraries,检查是否已经加载了analogLib.lib或者ideal.lib。如果没加载,点击Add,找到Cadence安装目录下的这些库文件添加进去(通常在$CDS_INST_DIR/tools/dfII/etc/cdslib/artist/路径下)。 - 避坑提醒:
- 不要随便自定义模型名称,除非你已经自己写了模型定义文件并加载到仿真环境里(新手没必要搞这个)。
- 如果是用工艺库的二极管,必须加载对应PDK的模型库,并且模型名称要和PDK里的定义完全一致(比如很多工艺里二极管模型名是
di或diod)。
举个最简单的例子:如果你用analogLib里的理想二极管,把属性里的Model Name改成diode,再跑仿真就能正常识别了——因为这个名字是analogLib.lib里早就定义好的,仿真器认它。
内容的提问来源于stack exchange,提问作者XM551




