如½进行全定制电路的静态时序分析?(流程细节)
1、 LVS
脚本中需要有支持
STAR_RC
寄生参数提取的部分设½,需要生成提取寄生参数需
要的
MILKWAY
格式的视图
XTR。
ENVIRONMENT string
STAR_RCXT_TRANS_LVL
DEFAULTS TO "TRUE";
WRITE_EXTRACT_VIEW {
/*产生STAR_RC需要的MILKWAY格式的视图XTR,其*/
LIBRARY_NAME = LIB_NAME /*中包含版图中器件的信息及其之间的互连信息*/
LIBRARY_PATH = .
}
2、 IGNORE_CASE=FALSE
/*设½区别大小写,可以不区别,默认为大写½名*/
3、
以下选项为
COMPARE OPTION,应该设½为 FALSE,有时候会½响反标:
MEMORY_ARRAY_COMPARISON
REMOVE_DANGLING_NETS
DETECT_PERMUTABLE_PORTS
MERGE_PATHS
PUSH_DOWN_DEVICES
PUSH_DOWN_PINS
4、
进行
LVS
检查时,option 设½中需要读入一个
equive
电路模块
VS
版图模块的脚本,其
中格式是:
EQUIVALENCE = equive.ev /*读入 equive
文件*/
Equive
文件内格式:
//EQUIV schematic_name= layout_name {}
EQUIV test_layout=test_layout {}
/*顶层模块*/
EQUIV INVX2=INVX2 {}
/*底层的模块*/
EQUIV NAND2X1=NAND2X1 {}
EQUIV NOR2BX2=NOR2BX2 {}
EQUIV nand_nor2b/NOR2BX2=nand_nor2b/NOR2BX2 {}
/*多层次电路版图模块*/
EQUIV nand_nor2b/NAND2X1=nand_nor2b/NAND2X1 {}
5、
进行完模块对模块比较成功后,修改
LVS
脚本,将
equive.ev
文件改成
black_box.ev,再
进行一次
LVS
比较,black_box.ev 是将匹配了的模块设½为黑盒子,以方便之后我们提
取模块间的互联线间的寄生参数:
EQUIVALENCE = black_box.ev /*读入 black_box
文件*/
black_box
文件内格式:
//BLACK_BOX schematic_name=layout_name {EQUATE_PORTS {sch_port=lay_port …..}\
SCHEMATIC_SWAPPABLE_PORTS={port port…..}}
//EQUIV test_layout=test_layout {}
/*顶层模块*/
BLACK_BOX INVX2=INVX2 {EQUATE_PORTS { A=A Y=Y VDD=VDD GND=GND}}
BLACK_BOX NAND2X1=NAND2X1 {EQUATE_PORTS { A=A B=B Y=Y VDD=VDD
GND=GND} } /*顶层模块*/
BLACK_BOX NOR2BX2=NOR2BX2 {EQUATE_PORTS { AN=NA B=B Y=Y VDD=VDD
GND=GND}}
BLACK_BOX nand_nor2b/NAND2X1=nand_nor2b/NAND2X1 {EQUATE_PORTS { A=A B=B
Y=Y VDD=VDD GND=GND} }
BLACK_BOX nand_nor2b/NOR2BX2=nand_nor2b/NOR2BX2 {EQUATE_PORTS { AN=NA
B=B Y=Y VDD=VDD GND=GND}} /*底层的模块*/
注意:倘½构造版图只有一个层次,那么要进行寄生参数提取时可以不用设½
equive.ev
和
black_box.ev
文件;如果多个层次,则必须要在这两个文件中设½到最底一层的模块为止。
6、
寄生参数提取的时候,设½如下选项:
BLOCK: test_layout
MILKYWAY_DATABASE: YOUR_MW_LIBRARY /*LVS
时生成的
XTR
库名*/
MILKYWAY_EXTRACT_VIEW: YES
/*基于 MILKWAY
模式提取*/
CASE_SENSITIVE: YES
/*区分大小写*/
HIERARCHICAL_SEPARATOR: /
TCAD_GRD_FILE: /path/chrt013lvhp_1p8m_9k_sp_wst.nxtgrd /*提取文件*/
MAPPING_FILE: /path/chrt013_8lm.mapping
/*工艺文件*/
EXTRACTION: RC /*提取内容*/
POWER_NETS: VDD GND VSS DVSS DVDD /*定义电源*/
POWER_PORTS: VDD GND VSS DVSS DVDD
POWER_EXTRACT: NO /*不提取电源*/
SKIP_CELLS: *
/*不提取单元内部*/
NETLIST_FILE: black0924_yuan.spef /*生成文件名*/
NETLIST_FORMAT: SPEF
/*寄生参数文件格式*/
XREF: YES /*版图实例化选项*/
CELL_TYPE: SCHEMATIC /*提取中的单元名字匹配*/
NET_TYPE: SCHEMATIC /*提取中的线名匹配*/
EVACCESS_DIRECTORY: /path/evaccess
COMPARE_DIRECTORY: /path/compare
7、
用
hercules
子工具
nettran
从
cdl
产生½表:
我们½用如下½令,将cdl½表½化成verilog½表:
nettran –cdl test.cdl –outType verilog –outName test.v
生成的verilog½表中,会把电路的连接关系给出来,它把每个单元模块½做为一个module,
门单元的module中描述的是mos管的互连。因此要将生成的verilog½表中的底层门单元的
module部分去除掉。
8、运行PT,读入设计½表,读入寄生参数文件spef,反标后时序分析。
附
hercules
子工具
nettran
说明:
½
芯片电路图一般是spice、cdl 格式,½是必须通过nettran ½化成hercules 格式,才½被
Hercules Runset
所认识。nettran 是Hercules 自带的一个子程序,用于各种格式的文件之间
的相互½换,功½十分强大,它除了提供Hercules
LVS
中的Schematic ½表 ,还½完成很
多其他有用的工½。它有很多½令参数,可以根据需要选择,见下:
nettran [-verilog] [-hercules] [-sp] [-cdl ] <filename> [-cdl-a] [-sp-fr]
[-verilog-b0< netName>] [-verilog-b1<netName>] [-equiv < Equiv file > ]
[-acct <acct file> ] [-noflatten] [-outType < netlist_Type>] –outName <
filename >
-verilog
指读入verilog ½表格式,还支持读入hercules 格式(-hercules)、spice 格式(-sp)、
cdl
格式(-cdl);
-cdl-a
和-sp-fr 可以设½读入cdl 和spice ½表的选项,即全部元件(包
含无源器件R,C,L 等)还是放弃读入无源器件(如不读R, 不读C 等):-cdl-a 是全部读入,
-sp-fr
是过滤掉电阻部分;对verilog 中1’b0,
1’b1
的处理,nettran可以用½络名来取代,如
-verilog-b0 VSS –verilog-b1 VDD
;-equiv 参数指½换的时候产生部分Equivalence
File(后
,
-acct
产生统计文件,
即这个½表的元件总数的统计;
½spice ½
面要讲的) 便于添加其½;
表有参数初始化时,用-noflatten 来传递参数,否则有可½造成计量单½错误;输出类型有
spice、 hercules、edif、verilog、MilkyWay
格式,缺省是hercules 格式。下面举一些通常的
用法:
1)
把cdl ½换成hercules 的格式
nettran -cdl pll_risc.cdl -noflatten -outName pll_risc.sch
2)
把综合后.v 按照标准单元的½表½成总的spice ½表
nettran -cdl std.cdl pad.sp cache_core.sp pll_risc.sp –verilog
TOPCELL.hv –verilog-b0 VSS –verilog-b1 VDD –noflatten –outName
TOPCELL.sch
3)把含有寄生RC 的标准单元½表和.v 合并成总½表
nettran -cdl std.cdl -cdl-a module.v -outType spice –outName module.sp
4)
把hercules 格式½换成spice 格式, 并产生统计文件count
nettran –hercules TOPCELL.sch -acct count –outType spice –outName
TOPCELL.sp
试验结果
单个门
单个门
S:112ps S:22ps
PT:125ps PT:34ps
六级门
S:350ps
PT:420ps
原单元库
不带寄生参
数
全电路
NOR2B
INVX2
270ps
76ps
21ps
带寄生参数
290ps
82ps
24ps
SPICE
结果
新单元库
不带寄生参
数
带寄生参数
420ps
125ps
34ps
350ps
112ps
22ps
400ps
120ps
31ps
评论