在Cadence环境下的Calibre使用流程

如何在Cadence 环境里简单的使用Calibre

一、在Cadence 环境里调用Calibre

1、 在.cdsinit 里 加上 load(“/usr/calibre/mgc_skl.skl”),这个.skl 文件就是Mentor 公司提

供的skill 文件。

2、 在启动icfb &的路径下 module add calibre

3、 启动icfb &后,打开一个版图检查一下顶端的Menu 里有没一个Calibre 的菜单。如

果有则表示可以在当前环境下使用Calibre 了,这个菜单里有DRC 、LVS 、XRC 、RVE 等命令。

4、 看书可以用mgcdocs &命令,下面有Clibre 的参考手册。 二、几个有用的缩写

1、 SVRF---Standard Verification Rule Format (标准的检查文件)

2、 RVE---Results Viewing Environment(显示结果用的环境窗口)

3、 SVDB---Standard Verification Database (LVS results)

4、 DRC---Design Rule Checking

5、 LVS---Layout Versus Schematic

6、 ERC---Electrical Rule Checking 三、一个简单的DRC 流程

2、一个DRC 实例

(1)打开一个版图,在Calibre 菜单下点出 RUN DRC 命令。

(2)Cancel 掉Load Runset File 命令窗口,Runset File是RUN DRC时需要填入的一些设置,方便于下次RUN。第一次由于没有,所以就Cancel。等第一次RUN完后,可以将填入的设置存成一个Runset File。再RUN DRC时,可以将这个Runset File Load 进来。

(3)上面的窗口中,可以看到 Rules 与 Inputs 两个命令是红色的,表示RUN DRC

DRC

可以帮

(4)点击Inputs 命令,在Layout命令行里输入你要检查的版图的GDS,假如你已经把当前版图输出GDS了,可以输入已经生成的GDS。假如你还没有输出GDS,可以选中下面的Export from layout viewer 设置,这样Calibre在Run DRC 时就先把当前的版

图输出GDS

设置,然后点击后面的…,不要Cancel

上脚的坐标。

(5) Outputs 命令虽然开始就为绿色,表示你可以不设置,但为了文件目录的整洁。最好设置一下。

名称。在

File

选中

finishes

(6选项,这时在DRC窗口

结果允许的最大数目。

图形允许的最大顶点数

(7命令进行运行DRC检查。下面的图形是运行完DRC后跳出的窗口,左边是用来Debug用的窗口,右边就是一个简述的结果文件(DRC Summary Report File)。左边的窗口里有红色的×,表示有DRC

(8)在Calibre菜单里选中Setup下的 RVE 命令,在Setup RVE 窗口里选中

(9) 点开一个具体的错误,比如下面的第二个Check v1_chk3 –2Results ,有两个错误:01

01也会变成01 。这个

(10)上面介绍的是一个基本的DRC 过程。 四、用commond line 来运行Calibre DRC 检查

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

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

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

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

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

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

Cadence 环境下的模式。

五、一个简单的LVS 流程

1、 流程图,从下面的流程中可看出,Calibre LVS 都先把版图提取出SPICE 格式的网

表来,实际上Calibre LVS 比对的是两个SPICE 网表。

2、 在Cadence

环境下Run LVS 的一个过程

(1) 在版图的Calibre 菜单下点出 RUN LVS 命令

(2) Cancel 掉 Load Runset File 命令窗口,Runset File 是RUN LVS 时需要填

入的一些设置,方便于下次RUN 。第一次由于没有,所以就Cancel 。等第一次RUN 完后,可以将填入的设置存成一个Runset File 。再RUN LVS 时,可以将这个Runset File Load 进来。同RUN DRC 。

(3)上面的窗口中,可以看到 Rules 与 Inputs 两个命令是红色的,表示RUN LVS 需

你设置的。

点击Rules 命令,在Calibre -LVS Rules File 的命令行里输入用来做LVS 查的文件(SVRF ),这个文件里包括了一些层次及器件的定义等。在 Calibre -LVS un Directory 里输入你要RUN LVS 的路径,建议建一个专门的目录。可以看到这时 ules 已经变成绿色,表示Rules 里设置完成了。每个命令行后面的…可以帮助你选择件。 4)点击Inputs 命令,在Layout 命令行里输入你要检查的版图的GDS ,假如你已经当前版图输出GDS 了GDS 。假如你还没有输出GDS ,可以选下面的 Export from layout viewer 设置,这样Calibre 在Run LVS 时就先把当前的版输出GDS ,名字就是你上面输入的GDS 名。Primary Cell 的命令行里就是当前的顶单元名,不需要设置。Layout Netlist 的命令行里填入版图提取出SPICE 网表的名称。

要检R R 文

(把,可以输入已经生成的中图层

(5)点击窗Primary Cell 命令行W =6和L 0.5是没有应的是1e-6 。类于Hspi Layout viewer. (6)点击。Calibre

Hierachical L 如果一个单元只调用了一次,时会大大减少S 文件,格式如下:// //Layo AB AB UV RS 可见单元名可以就可以选中Match cells by name(autom

口里Layout 边上的Netlist ,在Files 的命令行里输入逻辑网表,里填入逻辑的顶单元名。这里需要注意的是通常我们的网表里都是单位的,而Calibre 提取出的网表里W 和L 是以米为单位的长度,与上面W =6e-6和L =5e-7。所以要在我们的网表顶端加上 .options scale=ce 。Export from schematic viewer 控制类似与上面的Export from 的=对似 Netlist 边上的H -Cells ,选中Match cells by name(automatch) 选项VS 是先完成底层单元的比对,但需要将底层单元设为H -Cells 。没必要将它设为H -Cells 。但被调用了多次时,将它设为H -Cell 时间。如果你清楚的知道你电路里的单元时,你可编辑一个H -Cell 是注释。

ut cell Name Source cell Name C DEF C GHI W XYZ T XYZ

1 VS N 或者 N VS 1 ,但是不要出现 M VS N 的情况。当有这个文件时 Use H -Cells file 选项,在命令行里填入H -Cells 文件。没有就选中atch) 将版图里和逻辑里单元名相同的设为H -Cells 。

LV

7输出的文本文件的径及这个数是用

)点击Outputs 命令,在LVS Report File 的命令行里输入LVS 名称。在SVDB Directory 的命令行里输入LVS 输出的数据存放的路径。Calibre RVE 来Debug 时读入的数据。

(路据

8)在样窗口里就出现 L ground et error 再RUN VS 但是不选这选项会ound nets 个命令9)在

选项。这样在LVS Report File (Calibre Interactive -LVS 窗口的Setup 菜单下选中 LVS Options 。这VS Options s.,.RUN 和 Gr 会n L 个两

(10)在Gates 选项里选中Recognize all gates 选项,目的是Calibre LVS 能以所有的逻门

为单元来比对,选中Recognize simple gates Turn gate recognition 11)当你Run ERC 选,在两辑时off 时,LVS 要在RUN LVS 的同时RUN ERC 检查时选中ERC 选项,选中个命令行里填入ERC

(项

(12)在Connect 选项里选中Connect nets with colon (:),当你的版图里有用TEXT 加冒13),在RVE 窗口里有红色的×,LVS Report 的头也有个×。表示有错误。

号来表示两条线的连接时要选中这个选项。 点击

Run LVS

命令,当运行完后会跳出RVE 窗口和LVS Report 窗口

(的

(14)下面是一个已经对上的单元的Report File部分。

(15)下面是一个没有对上的单元的Report File的部分

t-in-place while highlighting , 在Layout cells 的命令行里输入版图库的的命令行里输入逻辑库的名称。 16)这是整个Report File 的关于顶层的总的报告,从报告中可判断出器件数目都已经上,i 名称(对Ports 也已对上,Nets 没对上说明有线连接错误。

(17)当用RVE 窗口来Debug 时,在版图的Calibre 菜单下的Setup 的RVE 的设置里选中Ed ,在Schematic cells

(18)下图中是一个LVS 错误在RVE 窗口中的详细信息,从图中可看出Layout 部分的et52 对应 Source 部分的XI10/XI3/count<7> 和 XI10/XI3/n130,可以判断出这个地方能短路,当你双击52可在版图上显示这条线,逻辑上也立即跳出相应的线来。

N 可

(19)下图中显示Net 48 和18 都对应 XI10/XI3/n77,说明这个地方是开路,双击线名可在版图显示它们。

(20

六、用com 、层次

!m alibr 如alibr 面

文件的

Debug 。

)要更快的判断出更复杂的LVS 错误来,需要一定的经验积累。

mond line 来运行Calibre LVS 检查

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

(2) 建一个批处理命令比如叫run_lvs ,内容为 /bin/csh –f

–r /home/*…/svdb

e –lvs –hier –spice /home/*…/svdb/topcell.sp –hcell hcell_file rule_file |tee lvs.log 没有hcell_file

e –lvs –hier –spice /home/*…/svdb/topcell.sp –auto rule_file |tee lvs.log

rm 的目的是每次清空LVS Database 目录,命令中topcell 为版图的顶层单元名。(3) 然后每次运行这个批处理命令就可以了,运行完后可以到存放结果目录里看Report File ,还可以在版图里用RVE 调LVS Database 进行#\r c 假c 前

相关文档
最新文档