为什么calibredrv跑出来的东西不全

2025年05月06日 16:36
有1个网友回答
网友(1):

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


我的步骤是这样的:

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

module 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));

endmodule


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,如下图所示: