Calibre DRC和LVS验证总结材料 下载本文

实用文档

nw_chk3{

@nwell of different potential space must >=4

EXT nwelli <4 ABUT<90 SINGULAR REGION NOT CONNECT } // 不同电位的阱间距不能小于4。

nw_chk4{

@nwell overlap nsub >=0.4

ENC allnsub nwell <0.4 ABUT<90 OUTSIDE ALSO SINGULAR REGION

}// 阱包nsub不能小于0.4, OUTSIDE ALSO 也是second key words,表示nsub在 // nwell 外也报错。 nw_chk5{

@ show bad nwell connect two different net stamp_nwell = STAMP nwell BY allnsub nwell NOT stamp_nwell

}//STAMP命令来定义nwell 连接性,并且只能有一个连接,当某个nwell的nsub有两//个或以上的不同线名时,这个nwell不会被选成stamp_nwell。没有nsub的阱也不会被

//选出来。

//―――――――――――――――――――――――――――――――― //关于有源区及多晶硅,铝等层次的检查可参考nwell的设置。 //contact check cont_chk1{

@min&max contact size 0.5×0.5

NOT RECTANGLE cont ==0.5 BY = =0.5 ORTHOGONAL ONLY }//表示contact只能这么大,并且每条边必须都平行与X或Y轴。 //密度检查 den_chk1{

@ min met1 density is 30%

DENSITY met1 < 0.3 PRINT den_report_m1.log

}//当铝密度小于30%时,输出den_report_m1.log文件,要注意查看。这个文件里有具//体的铝密度。

(6)上面只是一个简单的检查文件,从上面的内容可大致了解一下Calibre的检查规则。

还有许多其它的检查,如Antenna(天线效应)、衬底密度等的检查可以参考Calibre手册。

2.4用commond line 来运行Calibre DRC检查

(1) 先必须有一个完整的规则检查文件,必须包含运行设置、层次定义、层次

运算、规则检查等几部分。

(2) 在UNIX的命令窗口里输入 calibre –hier –drc rulefile 。

(3) 运行完后可在Cadence的版图窗口里的Calibre菜单点出start RVE ,然

后就可进行DRC错误的修改了。

实用文档

(4) 也可输入 calibre –gui 调出calibre 图形界面,具体的运行方式类似

Cadence环境下的模式。

2.5查看结果文件和改错

1、 drc 检查运行完毕后, 首先看drc_err.sum 文件,看有无错误。下面是一个例子: 前面是本次运行的一些信息:

CALIBRE:: DRC-F SUMMARY REPORT

Execution Date/Time: Fri Jan 2 20:10:46 2004

Calibre Version: v9.1_9.3 Fri Dec 13 15:05:27 PST 2002 Rule File Pathname: drc.rule Rule File Title: Layout System: GDS

Layout Path(s): test_nand3.gds Layout Primary Cell: test_nand3

Current Directory: /export/home/project/cpu863/LVStest/calibre/drc/test User Name: cpu863

Maximum Results/RuleCheck: 1000 Maximum Result Vertices: 4096

DRC Results Database: drc.out (ASCII) Layout Depth: ALL Text Depth: PRIMARY

Summary Report File: drc_err.sum (REPLACE)

Geometry Flagging: ACUTE = YES SKEW = YES OFFGRID = NO NONSIMPLE POLYGON = YES NONSIMPLE PATH = NO

CheckText Mapping: COMMENT TEXT + RULE FILE INFORMATION Layers: MEMORY-BASED Keep Empty Checks: YES

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

--- RUNTIME WARNINGS ——

There is no data for layout net name ?vcc?.

中部开始有关RuleCheck Results 的统计,如下:

--- RULECHECK RESULTS STATISTICS ---

RULECHECK NW_1 ................. TOTAL Result Count = 0 RULECHECK NW_2a ................ TOTAL Result Count = 0 RULECHECK NW_2b ................ TOTAL Result Count = 0 RULECHECK NW_3 ................. TOTAL Result Count = 0 RULECHECK NR_1 ................. TOTAL Result Count = 0 RULECHECK NR_2 ................. TOTAL Result Count = 0 RULECHECK NR_3 ................. TOTAL Result Count = 0 RULECHECK NR_4 ................. TOTAL Result Count = 0 RULECHECK NR_5 ................. TOTAL Result Count = 0 RULECHECK NR_6 ................. TOTAL Result Count = 0

实用文档

RULECHECK NR_7 ................. TOTAL Result Count = 0 RULECHECK NR_8 ................. TOTAL Result Count = 0

如RULECHECK NR_8 ................. TOTAL Result Count = 0 表示NR_8 这条规则

检查的结果是0 个错误,具体NR_8 规则的含义要看DRC Runset File 中的定义, 检查有错的如:

RULECHECK CT_9 ................. TOTAL Result Count = 0 RULECHECK CT_10 ................ TOTAL Result Count = 0 RULECHECK CT_11 ................ TOTAL Result Count = 0 RULECHECK CT_12 ................ TOTAL Result Count = 0 RULECHECK M1_1 ................. TOTAL Result Count = 0 RULECHECK M1_2 ................. TOTAL Result Count = 1 RULECHECK M1_3&4 ............... TOTAL Result Count = 0 RULECHECK M1_5 ................. TOTAL Result Count = 0 RULECHECK M1_6 ................. TOTAL Result Count = 3 RULECHECK M2_1 ................. TOTAL Result Count = 0 RULECHECK M2_2 ................. TOTAL Result Count = 0 RULECHECK PD_M1 ................ TOTAL Result Count = 0 RULECHECK PD_M2 ................ TOTAL Result Count = 1 RULECHECK PD_M3 ................ TOTAL Result Count = 1 RULECHECK PD_M4 ................ TOTAL Result Count = 1 RULECHECK PD_M5 ................ TOTAL Result Count = 1 RULECHECK PD_M6 ................ TOTAL Result Count = 1 RULECHECK Convention_FLT_NW .... TOTAL Result Count = 0

分别是1,3,1,1,1,1 个错误,最后是错误统计:

--- SUMMARY ---

TOTAL CPU Time: 0 TOTAL REAL Time: 1

TOTAL Original Layer Geometries: 73 TOTAL DRC RuleChecks Executed: 205 TOTAL DRC Results Generated: 9

可见一共检查出9 个DRC 错误。如果没有错,则最后的TOTAL DRC Results Generated 为0。

还可以查看DRC 检查结果的数据库“drc_err”, 如下:

test_nand3 1000 NW_1

0 0 2 Jan 2 20:10:47 2004 Rule File Pathname: drc.rule

Minimum width of an NW region is 0.86um NW_2a

0 0 3 Jan 2 20:10:47 2004 Rule File Pathname: drc.rule

Minimum space between two NW regions with the same potential is 0.60um

实用文档

Merge if space is less than 0.6um NW_2b

0 0 2 Jan 2 20:10:47 2004 Rule File Pathname: drc.rule

Minimum space between two NW with different potential is 1.40um NW_3 ……

Rule File Pathname: drc.rule NW without N+ pick up Convention_BPMO

0 0 2 Jan 2 20:10:48 2004 Rule File Pathname: drc.rule Pmos in PW

Convention_BAD_IMP

0 0 2 Jan 2 20:10:48 2004 Rule File Pathname: drc.rule AA area without any implant __RVE_ERROR_TAG2__

0 0 14 Jan 11 10:10:57 2004 M1_2 151 1 1

M1_6 154 1 000

PD_M2 197 1 0

PD_M3 198 1 0

PD_M4 199 1 0

PD_M5 200 1 0

PD_M6 201 1 0

也包含了检查的错误信息,该数据库主要是被后面的RVE 来调用的。然后要根据错误去版图中相应的位置改,Calibre 提供了良好的RVE(Result View Enviroment)界面,它能直接调用DRC 或者LVS 检查后的结果数据库,图形化很直观地显示错误所在,并且可以调用版图工具如Virtuoso,直接在Virtuoso 中快速定位错误位置。

2、用RVE 查看结果和改错

RVE(Result View Enviroment)是Calibre 自带的看验证结果的集成工具。启动 方式为:

calibre –rve database

database 为DRC 或LVS 检查结果的数据库,这里是drc_err :

实用文档

calibre -rve drc_err 激活后界面如图1

可见左边显示DRC 错误种类和数目,右边显示坐标位置,下面是对该Rule 的解释。 清晰的界面,方便的操作能帮助用户快速找到错误和修改。RVE 能调用很多版图工 具,把错误直接反映在版图位置上,见菜单Setup ——> Layout , 这里可以设置调 用的版图工具。具体配置方法见在线帮助中Calibre 与其他工具的接口。在Cadence 的Virtuoso 中集成了Calibre 以后,Virtuoso 的菜单中会多出Calibre 的菜单,如: 即可以直接从Virtuoso 中调用图形化的DRC, LVS 和RVE,显得十分方便。点击 Start RVE , 选择数据库名称,同样可以得到同图1 一样的界面,这时RVE 已经 和版图工具集成在一起,可以在RVE 中点击一些错误坐标,Virtuoso 中立刻会显示 错误的位置,如图3:

这里点击M1 小于最小面积的错误中的第1 个错误点:右边坐标红色下划线的(-1.96 , 3.97 ) , 在版图工具中会立刻高亮显示位置,如图4:

因此改错起来十分方便。可以在RVE 菜单View ――> By Check , RVE 左边会显 示出Check 每条rule 的结果,见图5:

绿色的表示检查该rule 无误。而且利用File 菜单中可以方便地打开DRC 结果报告、 DRC Runset 等,如图6:

第三章 Calibre LVS

3.1数据准备

需要的数据为版图数据、电路图数据和runset 文件。Calibre 把电路图网表 的部分叫SOURCE。SOURCE 部分要求的网表格式为标准spice 格式或者Calibre

自身的一种类似spice 的格式。Calibre 有一种把verilog 转为自身类spice 格式的 功能,叫v2lvs,下面先介绍v2lvs:

v2lvs 能够把verilog 网表和相对应的spice 库、verilog 子库转成Calibre LVS 用 到的电路图SOURCE 网表,其功能如图:

转换的原理是verilog 网表根据verilog 子库对元件端口的定义,去spice 子库找同样 名称和端口的元件,然后进行网表和格式上的替换。因此v2lvs 转类spice 网表时,