问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

用calibre进行LVS,步骤是怎样的

发布网友 发布时间:2022-05-05 14:30

我来回答

5个回答

热心网友 时间:2022-06-27 15:15

Calibre环境做LVS步骤(后面附注意事项,供参考)
1、LVS数据准备
在Astro中完成芯片后提取.fv文件及.gds文件,这两个文件是做LVS必备的。.v文件用来生成在LVS过程中用来和Layout进行比对的.spi文件,而.gds文件用来读入calibre得到Layout。 2、将.gds文件读入calibre 具体步骤省略。 3、生成.spi文件
.spi文件是由.v和一些.cdl、.spi文件一同生成的。
生成.spi文件有一个脚本,以SMIC18 工艺xxx目录为例: v2lvs \
-lsp xxx/smic18.cdl \ -lsp xxx/POR.cdl \
-lsp xxx/RAM256X8.cdl \ -lsp xxx/SP018W.sp \ -s xxx/smic18.cdl \ -s xxx/POR.cdl \
-s xxx/RAM256X8.cdl \ -s xxx/SP018W.sp \ -s0 VSS \ -s1 VDD \
-v $topCell.v \ -o $topCell.spi
格式是固定的,-lsp后面列出你所要做LVS的芯片用到的IP的.spi(.sp)文件,rom、ram、stdcell是.cdl文件。-s后面再把-lsp列出的文件重复一遍。-s0和-s1不变,-v后面写你要进行转换的.fv文件,-o后面写你要输出的.spi文件。
文件写好后,在文件所在目录直接键入文件名,文件即开始自动执行。执行后若无warning和error即可。
icc中提取出来的.v文件需要有phsical only的器件,但是不需要corner和filler pad,pcut和power IO必须加进去。还有一些格式要求,需要使用如下选项:
wirte_verilog –diode_ports –split_bus –no_pad_filler –no_corner_filler_cells -pg这些信息加好后,再进行上面转换.spi文件的步骤。 4、完善layout和.spi文件
在smic工艺下: (1)、layout完善
此时要先检查pad上面的text是否打好。之后要把FP打上。关于FP,以下是从smic的IO文档中找到的解释:
FP stands for ‘From Power Pad’ and FP pin is for global signal. Under normal condition, FP is activated by PVDD2W of Standard I/O library SP018W to ‘HIGH’ (3.3V). FP rail will be automatically connected while joining with other digital I/O cells.
打TEXT的时候要打FP,但是注意:只有digital pad有FP。 (2)、.spi完善
var script = document.createElement('script'); script.src = 'http://static.pay.baidu.com/resource/chuan/ns.js'; document.body.appendChild(script);

在.spi文件中要加入pcut的连接关系,即VSS1=…,VSS2=…。VSS1和VSS2是pcut的port名字,…处你要写他们和什么相连。
另外,一些打了字的pad也要写清楚它的连接关系,如VSSD=VSSD_pad,等号前面是pad出的port,等号后面写pad上打的text。
另外,在.spi文件中的出现的变量名,要写在.GLOBAL后面,否则LVS的时候会报错。如果有连接关系要注明,则在.spi文件后面写*.CONNECT后面写明两个要连接的名字就可以了。 5、进行LVS
所有准备工作都做完了,开始LVS。 启动calibre,选nmLVS,出现LVS界面。选左边一栏的Rules,在Calibre Rules File中填入LVS的rule。一般我们在做LVS的时候,会先把rom,ram,analog等IP部分box起来不查,先让其他部分的LVS通过了,再查整体的LVS。因此这个rule可以自己加一些box,格式是LVS BOX instance name。
在左边一栏中选Inputs,Layout一栏不动,选Netlist,在Files处填入你修改好了的.spi文件。之后在上面一条菜单中选Setup>LVS Options,选Connect中的Connect nets with colon (:)。选好后,点左侧的Run LVS,则LVS过程就开始了。
运行完后,如果没有问题,则你会看到绿色的笑脸,如果有问题,则要进行分析,修改.spi或者layout来通过LVS。

补充资料:
Useful Abbreviations
SVRF——Standard Verification Rule Format Mentor Rule
RVE——Results Viewing Environment 显示环境
SVDB——Standard Verification Rule Database (LVS results)
在LVS rule中写上这句话,LVS会产生一个SVDB的文件夹存放一些中间结果文件。
ERC——Electrical Rule Verification PEX——Parasitic Ectraction
MDP——Mask Data Preparation 是foundary做的mask的ORC检查。(ORC:optical rules checking 光学规则校验)
TVF——Tcl Verification Format 65nm以下的rule file格式,SVRF很难cover所有的corner所以有TVF
Connect nets with colon (:) 虚拟连接,例如A:1和A:2将被认为是一条net
有时候smic18工艺中,ram,rom的LVS netlist文件.cdl是由dataprepare生成的,但是要把文件中N,P后面加上18变成N18和P18(必须保证stdcell和其rule的命名相匹配才可以)还有要把文件中DN改为NDIO18。
在.v转换成.spi文件的过程中,会在instance前面加X。当有IP Merge时,一些IP的PIN、PORT都要当作BOX注释掉,否则在LVS中会报错。

热心网友 时间:2022-06-27 15:15

可以用命令方式运行lvs,不过要写个文件,逐个读入gds和netlist,这两个文件很容易产生。另外也可以建立一个topcell layout和schematic,做hierarchical lvs,选match cells by name,这样就可以查看所有cell的lvs情况。

热心网友 时间:2022-06-27 15:16

最近学习用calibre跑LVS,遇到问题,不知道哪一步做错了,请教一下。

我的步骤是这样的:
1. encounter完成版图后,输出GDS和verilog netlist。 verilog netlist内容如下:

mole lvstest (a_in,b_in, c_out);
input a_in,b_in;
output c_out;
wire N1,N2,N3;
NAND2X1 U1 (.Y(N1), .B(b_in), .A(a_in));
INVX1 U2 (.Y(N2), .A(N1));
BUFX3 U3 (.Y(c_out), .A(N2));
endmole

2. 用calibre的v2lvs,将verilog netlist转换成spice netlist。
v2lvs -l tsmc18.v -lsp tsmc18.cdl -s tsmc18.cdl -s0 VSS -s1 VDD -o lvs.cdl -v lvstest_rout.v
得到spice netlist内容如下:

.INCLUDE "tsmc18.cdl"

.SUBCKT lvstest a_in b_in c_out
XU1 NAND2X1 $PINS Y=N1 B=b_in A=a_in
XU2 INVX1 $PINS Y=N2 A=N1
XU3 BUFX3 $PINS Y=c_out A=N2
.ENDS
.GLOBAL VDD
.GLOBAL VSS

3.启动calibredrv,读入GDS,如下图所示:

热心网友 时间:2022-06-27 15:16

我的步骤是这样的:
1. encounter完成版图后,输出GDS和verilog netlist。 verilog netlist内容如下:

mole lvstest (a_in,b_in, c_out);
input a_in,b_in;
output c_out;
wire N1,N2,N3;
NAND2X1 U1 (.Y(N1), .B(b_in), .A(a_in));
INVX1 U2 (.Y(N2), .A(N1));
BUFX3 U3 (.Y(c_out), .A(N2));
endmole

2. 用calibre的v2lvs,将verilog netlist转换成spice netlist。
v2lvs -l tsmc18.v -lsp tsmc18.cdl -s tsmc18.cdl -s0 VSS -s1 VDD -o lvs.cdl -v lvstest_rout.v
得到spice netlist内容如下:

.INCLUDE "tsmc18.cdl"

.SUBCKT lvstest a_in b_in c_out
XU1 NAND2X1 $PINS Y=N1 B=b_in A=a_in
XU2 INVX1 $PINS Y=N2 A=N1
XU3 BUFX3 $PINS Y=c_out A=N2
.ENDS
.GLOBAL VDD
.GLOBAL VSS

3.启动calibredrv,读入GDS,如下图所示:

热心网友 时间:2022-06-27 15:17

1. encounter完成版图后,输出GDS和verilog netlist。 verilog netlist内容如下:

mole lvstest (a_in,b_in, c_out);
input a_in,b_in;
output c_out;
wire N1,N2,N3;
NAND2X1 U1 (.Y(N1), .B(b_in), .A(a_in));
INVX1 U2 (.Y(N2), .A(N1));
BUFX3 U3 (.Y(c_out), .A(N2));
endmole

2. 用calibre的v2lvs,将verilog netlist转换成spice netlist。
v2lvs -l tsmc18.v -lsp tsmc18.cdl -s tsmc18.cdl -s0 VSS -s1 VDD -o lvs.cdl -v lvstest_rout.v
得到spice netlist内容如下:

.INCLUDE "tsmc18.cdl"

.SUBCKT lvstest a_in b_in c_out
XU1 NAND2X1 $PINS Y=N1 B=b_in A=a_in
XU2 INVX1 $PINS Y=N2 A=N1
XU3 BUFX3 $PINS Y=c_out A=N2
.ENDS
.GLOBAL VDD
.GLOBAL VSS
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
我是娄底人在长沙市妇幼住院做了手术花费10000多块农村医保上哪去报销... 新化人到娄底中心医院住院怎么报医保? 怎么才能把微信好友删掉呢? 八月份怎么栽种大白菜 霸主崛起6637手游《天天英雄》新版新英雄抢先知介绍_霸主崛起6637手游... 武器大师的英雄分析 人缘不好怎样挽救 怎么才能彻底隐藏微信群聊天记录? 公费师范生的教师编制是什么? 产假国家规定2024四川是怎么规定的 联想小新air13iwl能不能流畅运行cf? 联想小新air13pro拆机过了可以保修吗 小学四年级作文未来的家乡怎么写 MP5是什么东西? 是播放器吗? mp5播放器可以安装什么格式的软件 未来的家乡作文八百字 MP5视频下载。 未来故乡的作文 有什么软件可以看文件的MP5编码 写一篇作文题目未来的家乡600字 MP5视频转换器 推荐一款MP5的视频格式转换软件 手机下载MP5电影要下什么软件 下载MP5视频的软件 未来的家乡作文是什么 数字化阅读越来越普遍了吗? 有没有能在MP5里专用的视频转换软件? 什么软件可以播放mp5格式的文件 山地车标准轮组快拆轴孔直径是多少? 山地车车轮分哪些类型? 请教calibre LVS的问题 calibre LVS 时 ,如何把netlist中不同pin定义成相同,例如想把子block的VDD,定义为VSUP 在Calibre中做LVS的问题 请教各位达人,关于Calibre LVS时Port number的问题 Calibre lvs一堆问题,求助 calibre lvs中报错时在source中报一次,layout中还报一次,怎么解决 linux下怎样应用软件Calibre的介绍 运行calibre的lvs时,电阻一端悬空怎么提取 为什么calibredrv跑出来的东西不全 calibre LVS 求助 CALIBRE的验证工具 eetop:csmc版图lvs有尺寸问题 calibre是什么工具软件? 如何修改design rule 是lvs对版图尺寸的精度降低 求助 关于calibre2015安装在CentOS6.7上的license生成问题 请教Cadence设置DRC和LVS的问题 十一代思域只能绑定车主的手机吗 哪个函数可以将数值转换成文本字符串 农民补交养老保险咨询电话 湖北省养老保险中心电话