参数提取

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

对GDSII database进行gate-level寄生参数抽取

VIMICRO 祝侃

1.Abstract

伴随着SOC技术的发展,自动布局布线规模不断扩大,同时产品的上市周期

由于市场竞争的加剧压力也愈来愈大。因此,如何提高自动布局布线设计中寄生

参数验证的效率成为众多IC设计者必须要考虑的重要课题。

通过引入calibre DRC/LVS/XRC,vimicro已经发展了一套提高自动布局布

线设计验证效率的方法,这些方法包括GDSII文件的直接处理,使用gate-level

寄生参数抽取来满足数字电路的时序分析验证,以及修改相应的文件来加速寄生

参数的抽取等。

2. Introduction

首先,在自动布局布线结束后,我们通常会进行DRC/LVS检查,然后在 layout editor (如Virtuoso)里修改错误,最后得到DRC/LVS clean的GDSII 文件。这个时候前端设计人员发现功能有问题进行了修改,要求自动布局布线作 ECO。这样原先的DRC/LVS检查都要重新做一遍。

对DRC/LVS clean的GDSII 文件抽取寄生参数,然后拿这个含有寄生参数

的网表作 STA,如果时序可以满足要求的话,就不需要做那些重复的工作了。

Calibre xRC可以对GDSII 数据进行gate level 的寄生参数抽取.

这样的设计流程是针对于简单的ECO改动,例如IO位置的调整,或者对为

数不多的逻辑门连接关系的修改。对于复杂的改动,还必须应用自动布局布线的 ECO流程.

3. Flow Description

1).Run hierarchical LVS (PHDB Generation)

执行hierarchical LVS是为了对layout做器件和连接关系的抽取,并且建立版图和网表的cross-reference.

2).抽取寄生参数 (PDB Generation)

Calibre XRC 抽取gate level的寄生参数.

3).写出网表 (FMT)

Calibre xRC 从第二步抽取的寄生参数数据中写出DSPF 或 SPEF 网表.

4).静态时序分析 (STA)

PrimeTime 读入DSPF 或 SPEF 网表,还有原来的verilog 网表 和cell library,产生SDF文件.

1).LVS-H

首先要Run hierarchical LVS,就需要设定hcell list.Calibre xRC 叫做xcell.这个xcell list跟普通的LVS使用的hcell list差不多,只是比LVS要更严格一些,需要Calibre识别出所有的standard cells and micro blocks.这样在第二步抽取寄生参数的时候Calibre才知道那些出现在hcell list里的

cells里面是不要抽取寄生参数的而只需要抽取top cell的连接线部分就好了.判断xcell是不是正确的,要看lvs report file里top cell的统计结果是不是都是cells而没有devices.

比如下面这个结果虽然LVS clean, 但是并不适合做gate level RC extraction.

LAYOUT CELL NAME: chip_top

SOURCE CELL NAME: chip_top

INITIAL NUMBERS OF OBJECTS

Layout Source Component Type

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

Ports: 370 370

Nets: 11098 11098

Instances: 303 303 MN (4 pins)

307 307 MP (4 pins)

150 150 ADFULD1 (7 pins)

2873 2873 ADFULDL (7 pins)

一定要保证在top level的报告中看不到device才可以.

LAYOUT CELL NAME: chip_top

SOURCE CELL NAME: chip_top

INITIAL NUMBERS OF OBJECTS

Layout Source Component Type

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

Ports: 370 370

Nets: 10207 10207

Instances: 150 150 ADFULD1 (7 pins)

2873 2873 ADFULDL (7 pins)

33 33 AOI33D1 (9 pins)

1 1 AOI33D

2 (9 pins)

1 1 AOI33D4 (9 pins)

LVS的执行命令跟普通的LVS是完全一样的:

calibre –lvs –hier –hcell -spice svdb/ |tee

2).PDB Extraction

第二步抽取寄生参数,Calibre XRC 从2006.3版本开始有个新的选项 -asic,使用了这个选项,xRC会对asic design进行优化以提高抽取的速度.这个新的选项可以使gate level extraction的速度提高10倍,并且对内存的消耗也大大降低.

calibre –xrc –pdb –asic –hcell [-rc] |tee

3).Ouput netlist

Calibre xRC可以写出符合不同后仿真工具的网表格式,比如ELDO,HSPICE, SPECTRE 等. 使用PrimeTime一般需要DSPF 或 SPEF 格式. Calibre xRC从 2006.3 的版本开始有一个新的选项 “PRIMETIME”来控制DSPF 和SPEF输出格式,可以使输出的SDPF和SPEF网表更加符合PrimeTime的要求,且网表大小缩小10倍以上.

PEX NETLIST DISTRIBUTED filename DSPF [PRIMETIME]

PEX NETLIST DISTRIBUTED filename SPEF [PRIMETIME]

在rulefile里设置好这个选项就可以写出网表了:

calibre –xrc –fmt –hcell -all [–g] |tee 由于是从GDSII文件抽取gate level的寄生参数,calibre 读入的是GDSII

和 spice netlist,但是要输出供PrimeTime使用的网表就需要对输出网表作一

些特别处理.需要设置几个环境变量:

PEX_FMT_SPF_INSTANCE_SECTION OFF

PEX_FMT_NOXREF_MODEL_MODE NONE

PEX_FMT_SPF_NAME_FILTER_MODE “X”

PEX_FMT_SPF_LUMPED_MODEL_MODE NONE

新的[PRIMETIME]选项也可以自动设置PEX_FMT_SPF_INSTANCE_SECTION OFF 和 PEX_FMT_SPF_NAME_FILTER_MODE “X”.

相关文档
最新文档