闲谈之PR SYN 用到的数据文件。

经常有同事会问我lef def lib tlef db ndm tlus qrctechfile 这些厂商提供的文件都是什么?

我这里简单的写写。如果有遗漏之后再补充。

很早我也分不清,这些东西。后来经过琢磨后。才刚刚能区分开来。但是本质无非就是各个EDA厂商想要取得话语权,占领主导地位而开发自己的数据库。其中以Synopsys 为代表(因为它们家的独有格式最讨厌,最反人类)

lef : 这个不多介绍,算是通用格式,做pr的都见过。

标明cell 长宽,可不可以翻转。place使用的site 哪些pin pin shape是什么在第几层等等。

def: 也不多介绍,通用格式。 标明floorplan 每个cell位置,用了哪些site ,pin位置,power mesh. 等等。总之就是floorplan 信息。

lib: 也不多说。通用格式, 标明cell 面积,功耗, (包含leckage和internal) timing等信息。

db: (S 独有格式通过lib转换而来。不可见二进制)

怎么转用liberty compile

read_lib $lib_file

write_lib -format db $lib_name -output xxx.db

用lc_shell -f xxx.tcl 来转换

tlef: 通用格式。lef的补充。与lef不同的是它标明了 metal stack 方式。(几层metal,走向是什么, SPACING table) ,以及VIA generate rule 等信息。C PR工具吃lef前第一个就吃它。

ndm : (S 独有格式,分physical only ndm 和 正常ndm

physical only ndm 只包含frame view 物理信息。

转换需要tf支持。(同tlef 类似) 但是格式完全不同是S 家的独有格式。 没详细研究过,估计内容差不多。同样转换时候需要tf 你DC ICC 吃ndm时候也需要tf支持。

如何转换如下。

create_physical_lib -technology $tf_file $ndm_name

read_lef $lef_file

create_frame

write_physical_lib -force -output xxx.ndm

close_physical_lib $ndm_name

普通ndm , 在物理信息基础上又加了timing信息简单说就是加了db

如何转换

用ICC2 转,

转之前可以设置option

set_app_option -as_user_default -name xxx -value xxx

属性可以到S 官网查或者看UG 根据需要设置。或者直接使用default

create_work_space -flow normal -tech $tech_file $ndm_name

read_lef xxx.lef -preserve_lef_cell_site

read_db -process_label $corner xxx.db

check_work_space -allow_missing > xxx.rpt

commit_work_space -output xxx.ndm

remove_work_space

icc2_lm_shell -f xxx.tcl 启动

tlus : S 家独有格式算RC 用的。记录厚度,电阻等等等,计算rc的信息。

而且需要map file 支持,map file 记录tluplus file里面的层和 lef里面层的映射关系,比如M1 metal1 这样

qrctechfile : C家独有格式算RC 用。 二进制文件不可见。

在viewdefinition 使用

create_rc_corner -name xxx -T xxx -qx_tech_file xxxx.qrctechfile

先这么多吧,有遗漏的以后再补充。