资讯详情

LEF和DEF内容

转自:

Physical implementation —— LEF and DEF_zhuangdk的博客-CSDN博客_lef文件和def文件的区别 https://blog.csdn.net/zhuangdk/article/details/111669164

LEF LEF 是Library Exchange Format 的首字母缩写,是C 家庭物理库的描述格式。LEF 分为tech lef 跟cell lef 两种工具,无论使用哪个阶段的工具lef 必须先读入tech lef 再读入cell lef, 因为cell lef 中要引用tech lef 定义的信息。

Tech lef 中定义了metal layer, via, design rule 请详细研究以下从油管上挖出的图片,详细介绍图片tech lef, cell lef 每个包含哪些信息和信息cell lef 跟cell abstract view 对应关系。 layer type: routing, cut (contact), masterslice (poly, active), overlap. design rule: width, pitch, spacing.

via definition. metal direction. resistance and capacitance per unit square. antenna factor.

Cell lef 中定义了cell 几何跟abstract view:

site extension. cell descriptions, cell dimensions. layout of pins and blockages, capacitances.

check_design 会做lib/lef 一致性检查可以报告什么?lib cell 没有对应的lef 哪些lef 没有对应的lib cell. 工具会对有lib 没lef 的cell 自动设置dont_use 因此,必须确保所有综合使用的属性std cell 对应的lef 都被读入。 读def 如果有的话macro 的lef 缺失,工具会报告PHYS-* 的Error, 没lef 不能知道工具cell 的长相,pin 所以一定要把所用的位置macro 的lef 都读入。

DEF DEF 全称Design Exchange Format, 用于电路物理信息交互,是连接数字前后端的桥梁。目前常用DEF version 是5.8, 在DEF 本文不分析每个部分的含义,只概述了物理综合所需的部分信息。DEF file 有如下限定:

标识符的长度不得超过2048 个字符,如net 跟cell 一般来说,如果设计中有一些名称cell 名字太长,综合后会做change_name 将其名称长度限制在2048年 在字符内; DEF 所有的声明都是以";" 而且必须结束";"前加空间。 DEF 中每个section 只能指定一次,而且"END SECTION" 结尾,DEF 文件通常比较大,拿到了DEF 后可以用『 grep END 』来check 在当前的DEF file 定义了什么?Section. DEF 中,除了NETS section 中 ORIGINAL 另外,一切objects 必须先定义后使用,其中一部分objects 从netlist 中读入,部分objects 从techlef/lef 中读入,部分objects 在DEF 中定义。 、

head

DEF 头部包含:

此处生成的工具和工具版本为:Innovus 18.12-s102_1. Linux 操作系统; 文件生产日期; 当前设计名称; 产生DEF 这里有:defOut -floorplan ../fp.def

units

DEF 定义了文件的第一部分:

DEF 这里的版本号为5.8; 分割符; 总线比特符; 设计名; Units distance microns, 此处为2000.

其他部分很容易理解,需要特别说Units, 这个units 定义不能随意改变,协议规定值必须小于或等于tech lef 中在DATABASE MICRONS 在某些先进工艺点,如果两个值的定义不一致,则两边值最好相同,VIA 会有偏移。该值用于DEF 如果实际距离计算为2万 则表示 1um = 2000 units。

Properties and Die Area

需要在Properties 部分定义DEF 用到的所有Property, 同时Core2Die 的距离也在Properties 到目前为止,除了7nm H300 其他工艺对Core2Die 距离没有特殊要求,7nm H300 有特别具体的要求,否则会出现Track 偏移问题。DIEAREA 定义当前设计的形状和大小,如果矩形是两个坐标,如果是多边形,就会有一串坐标。除以相应的坐标值Units distance microns 中units 值为实际距离。

ROWS

所有的std cell 都需要放在里面ROW 上,所以在DEF 一切都需要在中间使用SITE 都定义全,SITE 从Tech lef 中读入。

在DEF 中有几个section 在ROW 在定义中也会指定方向,DEF 有几个有效方向。在上一个例子中,每两个相邻的方向ROW 的方向差180 度,这样做的目的是:多条ROW 共用电源跟地。

TRACKs

要给每层可用于routing 的layer 定义好track 否则,绕线资源不可用。原文描述较好,翻译后会变味,原文欣赏:"Defines the routing grid for a standard cell-based design. Typically, the routing grid is generated when the floorplan is initialized. The first track is located at an offset from the placement grid set by the OFFSET value for the layer in the LEF file. The track spacing is the PITCH value for the layer defined in LEF."

Components

用于综合的DEF 这部分内容: 所有的hard macro 都应定义为placed 或fixed. 将所有的physical only cell 都写出来,占位置; 如果有power swtich 最好也写出来,占坑; 所有的hard macro 都应该有lef, 否则工具不能知道其形状,也会报错; 不要把STD cell 写出来,除非有一些手工例化和位置要求STD cell.

Pins

此处的pin 指hard macro 该部分定义了每个输入输出端口pin 最好每个位置pin 都assign 好的位置,但通常在实现初期有一些pin 没用到如DFT 的pin, 没有地方可以接受。

VIAs and SPECIALNETs

综合用的DEF 不需要signal nets, 但一定要把Special nets 写出来,6nm 工艺结点后,Special nets 对timing 跟Congestion 影响很大。

Special nets 部分会用到VIA, 一切都需要使用VIA 都提前定义好。 Lists the names and geometry definitions of all vias in the design. Two types of vias can be listed: fixed vias and generated vias. All vias consist of shapes on three layers:

a cut layer and two routing (or masterslice) layers that connect through that cut layer. A fixed via is defined using rectangles or polygons, and does not use a VIARULE. The fixed via name must mean the same via in all associated LEF and DEF files. A generated via is defined using VIARULE parameters to indicate that it was derived from a VIARULE GENERATE statement.

For a generated via, the via name is only used locally inside this DEF file. The geometry and parameters are maintained, but the name can be freely changed by applications that use this via when writing out LEF and DEF files to avoid possible via name collisions with other DEF files.

Blockages and Regions

Blockages 跟Regions 都属于设计约束,最好不要写DEF 中间,可以单独写Tcl 在文件中,如在Innovus 中用命令:writeFPlanScript -section” 写。  

标签: abs轮速传感器s102端盖

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台