Calibre经典教程和看LVS的错误报告的方法

更新时间:2024-04-13 04:05:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

Calibre经典教程和看LVS的错误报告的方法

看calibre lvs 错误报告的方法

1. Report开头部分的Warning和Error信息(因为出现Warning和Error的情况很多,这里主要举一些常见的例子):

?????????Error部分:只要report的开头部分有Error信息出现,lvs就肯定没有运行成功。Error一般由lvs命令文件或netlist文件中的参数定义引起,这时候需要修改lvs文件或者netlist。Error信息都很直观,比较容易查出产生Error的地方。

o Example1 (参见文件“lvs_test1.rep”) : 在”lan_yang_di

g.cir”的2191和2192行调用到了两个标准单元”INLX1”和”LOGICOL”,但是netlist中找不到对这两个标准单元的描述。这个错误需要检查netlist,添加上对这些标准单元的描述部分。通常标准单元的netlist由foundry提供,是一个单独的cdl或者spice文件;

Example1:

LVS Netlist Compiler - Errors and Warnings for \CHIP_V11_20060427.CIR\

-------------------------------------------------------------

Error: No matching \191 in file \

Error: No matching \ 2192 in file \ ......... .........

?????????Warning部分:warning不会影响lvs的运行,但是经常会导致结果的不正确。很一些warning可以忽略掉,这些常常是netlist中或者lvs命令文件中一些多余部分引起的,例如下面的Example2_1和Example2_2;很多warning是不能忽略的,最常见的是short和soft connect,例如下面的Example3, Example4_1, Example4_2;

o Example2_1 (参见文件“lvs_test2.rep”) :这个warning是

因为calibre不认netlist中的参数”*.MEGA” ,这时需要在netlist中注释掉这个参数。(”*.MEGA”只在dracula中起作用,用于区

分netlist中单位m和M的不同,有了这个参数以后,m代表千分之一,M代表百万,如果没有这个参数,则m和M都代表千分之一);

Example2_1:

.........

Warning: *.MEGA at line 86 in file \06m3/core/xc06a2dl.cdl\PARAM statements

Warning: *.MEGA at line 148 in file \c06m3/core/xc06a2dl.cdl\ .PARAM statements .........

o Example2_2 (参见文件“lvs_test2.rep”) :这个warning是

由于在netlist中重复定义了”NAND4”和”NOR2”这两个标准单元引起,可以修改netlist解决;如果能确定重复定义的部分是完全相同的,这个warning可以忽略掉; Example2_2:

.........

Warning: Duplicate subckt definition \ file \

Warning: Duplicate subckt definition \file \ .........

o Example3 (参见文件“lvs_test3.rep”) :在layout中两条标

记了label的net短路时,或者不同的label标记到了同一net上时,出现这种warning,lvs中会忽略掉其中一个label,将这个net定义为另一个label的名字,例如这个例子中这个net被定义为”osc32k”,忽略掉了”tclk_control”。这两个warning一般会同时出现,解决办法是通过坐标和label在layout中查找short的地方,或者是label移位的地方。这个warning会引起layout和netlist出现不同数目的net,一定要改掉;

Example3:

.........

WARNING: Direct connection between different ports: Port names: osc32k tclk_control

WARNING: Short circuit - Different names on one net: Net Id: 513

(1) name \on layer 39 \

(2) name \8.4) on layer 39 \

The name \. .........

o Example4_1 (参见文件“lvs_test4_1.rep”) :如果在P subs

trate上出现没有通过金属直接连接的P substrate tie,那么这些P substrate tie会引起soft connect的warning,这个例子中net “chg_out_p”连接到了某个P substrate tie,与gnd!通过P substrate短路到了一起,net “chg_out_p”被忽略掉。解决办法是找到net “chg_out_p”与P substrate短路的地方;

Example4_1:

.........

WARNING: Stamping conflict in SCONNECT - Multiple source nets stamp one target net.

Net gnd! is selected for stamping. Rejected nets: chg_out_p .........

o Example4_2 (参见文件“lvs_test4_2.rep”) :这个例子和上

一个例子基本一样,不同的是和gnd! sconnect的这个net在layout上没有标记label。 ”2089”是calibre从layout中提取并随机命名的net。解决办法是在report的具体信息中找到net 2089的坐标,再在layout中查找该点的net是如何通过P substrate短路到gnd!;

Example4_2:

.........

WARNING: Stamping conflict in SCONNECT - Multiple source nets stamp one target net.

Net gnd! is selected for stamping. Rejected nets: 2089 ... ... ...

1 Net gnd!(33.050,176.900) GND!

2089(33.050,47.300) ... ...

2.Lvs中Input和Output的信息:

该部分主要记录calibre中的一些信息,例如layout,netlist,report file,运行时间以及calibre的版本信息。

Example5:

REPORT FILE NAME: lvs.rep

LAYOUT NAME: ../gds/lan_yang_dig_lvs_test3.gds

SOURCE NAME: LANYANG_FULLCHIP_V11_20060427.CIR ('Lan_Yang_Dig')

RULE FILE: xc06_calibre_lvs_302.rul RULE FILE TITLE: XC06 Calibre DRC/LVS File LVS MODE: Mask

RULE FILE NAME: xc06_calibre_lvs_302.rul CREATION TIME: Thu May 18 15:44:02 2006

CURRENT DIRECTORY: /direct/cd-home/gene.huang/tuna/lvs USER NAME: gene.huang

CALIBRE VERSION: v2005.2_6.10 Wed Jul 13 17:47:45 PDT 2005

3. Lvs是否匹配最明显的标志:NOT COMPARED, CORRECT 和 INCORRECT

?????????NOT COMPARED(参见lvs_test1.rep): lvs没有完成,会

有Error信息出现在report file的开头,提示为什么lvs没有进行,一般是lvs文件中input的信息不对; Example6:

# # ######################## # # # # # # NOT COMPARED # # # # # # # ########################

?????????CORRECT:layout与netlist匹配;

Example7:

# ################### _ _ # # # * * # # # CORRECT # | # # # # \\___/ # ###################

?????????INCORRECT(参见lvs_test5.rep): layout与netlist不

匹配,有error信息提示,表示具体不匹配的原因; Example8:

# # ##################### # # # # # # INCORRECT # # # # # # # #####################

Error: Different numbers of nets (see below).

Error: Connectivity errors.

4.OBJECTS信息:

?????????INITIAL NUMBERS OF OBJECTS: 表示转换前layout和ne

tlist中的net数目,器件类型和器件数目。这部分不用太留意,因为最终的器件数目会在转换后有所变化。根据lvs command file中的某些设置,某些器件可以合并,或被剔除:

Example9(参见:lvs_test5.rep):

INITIAL NUMBERS OF OBJECTS --------------------------

Layout Source Component Type ------ ------ -------------- Ports: 95 95

Nets: 21732 9901 *

Instances: 9529 9489 * MN (4 pins) 9543 9489 * MP (4 pins) 6 6 R (3 pins) 6 6 D (2 pins) ------ ------

Example19(参见:lvs_test8.rep):

*******************************************************************************

INFORMATION AND WARNINGS

*******************************************************************************

Matched Matched Unmatched Unmatched Component

Layout Source Layout Source Type

------- ------- --------- --------- ---------

Ports: 8 8 0 1

Nets: 19 19 1 3

Instances: 14 14 1 1 MN(nmos4)

6 6 0 0 MN(nmosi)

13 13 0 1 MP(pmos4)

------- ------- --------- --------- Total Inst: 33 33 1 2

o Statistics:

65 isolated layout nets were deleted.

19 layout mos transistors were reduced to 5.

14 mos transistors were deleted by parallel reduction. 14 source mos transistors were reduced to 3.

11 mos transistors were deleted by parallel reduction.

Example19中,前面的列表是对整个layout和netlist中匹配情况的一个统计;后面的描述表示有多少device被合并或者剔除。

Example20(参见:lvs_test7.rep):

o Isolated Layout Nets:

(Layout nets which are not connected to any instances or ports).

18(169.800,39.400) 19(169.800,151.900) 23(15.400,42.050) 24(15.400,120.850) 25(31.400,38.450) 26(31.400,114.250) 27(45.000,72.050) 28(45.000,120.850) 29(51.150,36.750) 30(51.150,163.900) 31(51.450,58.050) 32(51.450,150.850) 33(69.400,54.150) 34(69.400,111.850) 35(106.200,43.050) 36(106.200,120.850) 37(117.300,38.450) 38(117.300,114.250) 39(144.300,42.050) 40(144.300,120.850) 41(155.400,38.450) 42(155.400,114.250) 43(169.800,39.400) 44(169.800,151.900) 45(171.200,84.350) 46(171.200,118.550) 47(176.600,49.200) 48(176.600,161.700) 49(183.550,46.200) 50(183.550,161.700) 51(183.600,73.600) 52(183.600,119.250) 53(210.550,46.900) 54(210.550,61.700) 55(218.950,46.900)

56(223.750,46.900) 57(0.400,27.050) 58(12.800,39.450) 59(12.800,115.250) 60(42.400,69.450) 61(42.400,115.250) 62(48.650,52.350) 63(48.650,148.250) 64(53.750,42.450) 65(53.750,166.500) 66(72.000,56.750) 67(72.000,116.150) 68(91.200,27.050) 69(103.600,39.450) 70(103.600,115.250)

Example20中,列出在layout找到的孤立的net,这些net没有连接到任何的device上,是一些悬空的net,可能是由于floating的dummy metal引起,可以忽略。

Example21(参见:lvs_test7.rep):

o Passthrough Layout Nets And Their Ports:

(Layout nets which are connected only to ports).

zener_array[1](943.800,997.400) (port: zener_array[1]), zener_array[0](943.800,1055.000) (port: zener_array[0]),

Example21中,表示layout中有两个net没有连接到任何device,只接到了两个port上

本文来源:https://www.bwwdw.com/article/qp0p.html

Top