virtuoso中数模混合版图的lvs教程

本文详细介绍了在Cadence中进行数模混合版图的LVS检查过程,包括数字版图的导入与检查、修改网表以适应LVS检查,以及LVSBox的使用限制和注意事项。在数字版图检查中,强调了PIN脚的类型和网表的配置,而在数模混合场景下,通过修改网表以确保LVS检查的准确性。对于LVSBox,文章提醒了其仅能检查黑盒PIN脚连接,可能存在隐藏风险。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文章记录了版图设计过程中关于数模混合版图部分的lvs检查的相关内容

1、数字版图的导入及单独lvs检查

① virtuoso中选择导入stream将gds文件导入,目标库中需包含带layout的数字单元标准库(tsmc18的数字单元标准库文件名为tcb018gbwp7t.v)
在这里插入图片描述
stream file选择要导入的gds文件,library选择版图要存放的库,view即版图在库里的名字。设置完毕点击translate即可在库里看到版图文件,cellview的命名与gds文件名相同
② 数字综合版图时不区分label的drawing和pin,所以我们需要关注数字版图中的pin脚是否为metal pin类型,如果不是则需要逐一修改为pin类型
③ 在cadence进行drc与lvs检查。drc检查与模拟相同,此处不做赘述
模拟版图在做lvs检查时,网表由schematic原理图生成,而数字的原理图在cadence里并没有生成,所以我们取消lvs窗口下input-netlist中export from schematic的勾选,并将sprce file选择为实际使用的cdl文件的路径。
在这里插入图片描述
额外需要说明的是,若数字综合与模拟不在同一台机子上完成,则需要将数字版图的cdl文件里的include 的路径修改为tcb018gbwp7t_270a.spi在cadence里实际存放的路径在这里插入图片描述

2、数模混合版图修改网表进行lvs检查

① 运行lvs,勾选export from schematic viewer提取原理图网表文件
② 修改数字网表cdl文件:将原理图提取网表中的数字电路模块的端口列表拷到cdl文件中,替换原来的声明端口列表(SUBCKT),注意要将数字电路网表中port的“< >”括号改成“[ ]” ;若有不止一个的数字模块则都需要修改。

修改模拟部分的网表也是可以实现lvs检查的,但由于模拟部分的声明调用复杂所以选择修改数字模块的网表来使两者的调用顺序对应

在这里插入图片描述
③ 将核心电路所用到的数字模块的cdl文件包含到提取的网表中(include)LVS的netlist中取消勾选从原理图产生网表,使用修改好的网表重新运行LVS。

3、介绍cadence中lvs box的使用

本节说在前面的是,lvs box的使用只能检查出版图中被看作黑盒部分的pin脚连接的正确与否,其余部分与黑盒的连接关系不作检查;目前证实的是box部分内部短路以及box与其余电路的连接短路没有办法查出来,存在使用风险,若box部分的版图已经绘制好不建议使用lvs box,会隐藏一些潜在风险,建议替换网表进行lvs检查。

接下来根据原理图名与版图名相同与否进行介绍
① 在 LVS Options→include 中勾选 Include Rule Statements,若版图名与原理图名对应相同则输入:LVS BOX XXX (XXX);Run LVS 结果会有 BOX 单元提示。单元显示空心则表示lvs检查通过
在这里插入图片描述
在这里插入图片描述
② 若版图与原理图的名字不一致。例如如版图的名称是inv_box,但电路依然为inv,这种情况需要使用到 H-cells。首先需要创建一个 hcell 文件,按照格式:[版图名] [空格] [电路名]的格式输入信息。
在这里插入图片描述
在 Inputs→H-Cells 中勾选 Use H-Cells file,并选择上述的 hcell 文件。
在这里插入图片描述

同时需要修改 LVS Options→include→Include Rule Statements 信息。
在这里插入图片描述
③ 匹配多个不同名的版图和同一个电路。同一个 inv 可能由于版图的形状不同等原因存在不同名的单元,假设电路inv,版图有inv_box和inv_ip。在上一种情况的基础上修改 hcell 文件。
在这里插入图片描述

修改 LVS Options→include→Include Rule Statements 信息。
在这里插入图片描述

### 如何运行 Virtuoso LVS 进行布局与原理图验证 为了确保版图和原理图之间的一致性,LVS(Layout Versus Schematic)检查是一个重要的验证步骤。以下是使用 Cadence Virtuoso 平台执行 LVS 验证的具体操作流程: #### 启动 Virtuoso 和加载项目 启动 Virtuoso 设计环境,并打开需要进行 LVS 检查的项目文件。 #### 设置 LVS 参数 进入 Virtuoso 的命令窗口,在其中输入 `lvs` 命令来初始化 LVS 流程。通常情况下,会有一个预定义的过程脚本用于配置各种参数选项,例如忽略某些特定层或节点差异等设置[^1]。 ```tcl lvs -init lvs_setup.tcl ``` 这里假设存在名为 `lvs_setup.tcl` 的 Tcl 脚本来定制化 LVS 参数。 #### 执行 LVS 操作 一旦所有的准备工作都已完成,则可以通过如下方式正式开始 LVS 对比分析过程: ```tcl run_lvs ``` 此命令将会触发内部算法对比当前打开的设计文档内的物理实现(即 layout 文件)同对应的电路网表(schematic netlist),并生成详细的报告指出任何可能存在的不匹配之处。 #### 查看结果 当 LVS 处理结束后,可以在指定目录下找到输出的结果文件。一般而言,该文件包含了所有检测到的问题列表及其位置信息。对于每一个错误项,都应该仔细审查其描述说明,并参照原始设计资料做出相应调整直至完全消除所有警告提示为止。 #### 使用 Diva 工具辅助 考虑到实际应用中可能会遇到较为复杂的电路结构,推荐借助 Virtuoso 自带的 Diva 图形界面工具来进行更直观的操作体验。通过它不仅可以简化上述提到的一些常规任务处理,还能有效提升工作效率[^2]。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值