• 正文
  • 相关推荐
申请入驻 产业图谱

芯片物理设计中库交换格式文件LEF和设计交换格式文件DEF的语法解析

10/13 11:30
1219
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

LEF

相关文档已上传星球。

LEF即Library exchange format,是Cadence公司的物理库的描述格式。可以在单个LEF文件中定义所有物理库信息;然而,这会产生复杂且难以管理的文件,所以一般LEF分为tech lef跟cell lef两种;不论是哪个阶段的工具要使用lef都必须先读入tech lef再读入cell lef, 因为cell lef中要引用tech lef中定义的信息。tech lef部分包含有关所有金属连线的信息,工艺信息和相关设计规则,而cell lef部分包含与每个标准单元的几何形状相关的信息。

将上图中的LEF描述语句含义和案例汇集成如下表所示。

描述语句 含义 案例
VERSION LEF文件的版本 5.6、5.7、5.8
BUSBITCHARS 总线分隔符 []
DIVIDERCHAR 层次化设计的分隔符 /
UNITS 定义设计中各种单位的database unit(数据库中的单位)和Standard International(国际标准单位)转换关系;类似于比例尺;LEF支持的数值是100, 200, 400, 800, 1000, 2000, 4000, 8000, 10000和 20000 2000
MANUFACTURINGGRID

 

工艺生产格点,cell和routing需要保证的最小尺寸 0.0050
USEMINSPACING 定义如何计算OBS(Obstruction,指cell内部的走线或blockage)的minimum spacing。 OBS OFF
CLEARANCEMEASURE 定义SPACING 和SPACINGTABLE语句描述的object的spacing计算方法;常用的是MAXXY和EUCLIDEAN;MAXXY是按object最长的x轴方向间距或者最长的y轴方向间距来计算spacing;EUCLIDEAN是使用欧几里得间距计算object之间的spacing,即x2+y2的平方跟 EUCLIDEAN
PROPERTYDEFINITIONS 属性定义,用于各种MINSTEP rule、SPACING rule、ENCLOSURE rule、MAXEDGES rule等的描述语句中
LAYER APR用到的各个层的定义,包括但不限于:

类型(TYPE)

间距(SPCING)

宽度(WIDTH)

面积(AREA)

中心距(pitch)等。

主要是用于约束router绕线规则和对绕线质量评估

MAXVIASTACK 定义单个via上的最大stack via数量
VIA 定义每种via的特征。
VIARULE 定义在同一net的不同wire的intersection(交叉点)使用什么何种via。
VIARULE GENERATE 定义via arrays(通孔阵列)类型的VIARULE。

 

NONDEFAULTRULE 定义signal net(信号线)的wiring width(布线宽度)、design rule spacing(设计规则间距)和via size(via尺寸)。

 

SITE SITE定义了placement(布局)使用的site(布局使用的die上的格点单元)。
BEGINEXT 向LEF文件添加自定义语法,不使用该语法的工具可以忽略该语法。
END LIBRARY LEF文件结束语句。 END LIBRARY

Cell LEF语法和tech LEF类似,中包含单元库中各单元的信息,其分为两个部分:一部分采用SITE语句对布局最小单位定义,另一部分是采用MACRO语句对单元属性及几何形状的描述。

DEF

DEF即Design exchange format,用于以 ASCII 格式表示集成电路的物理布局信息。DEF文件与LEF文件密切相关。因此,正确显示物理设计需要这两个文件。 DEF 文件格式由 Cadence Design System 开发。每当我们需要将设计数据库(design database)从一个 EDA 工具转移到另一个 EDA 工具以进行进一步的物理实现(physical implementation)或分析时,我们都会使用 DEF 文件来转移设计数据。例如,PnR(placement and route)数据库上的 IR 分析或 PnR数据库上的 STA,我们以 DEF文件的形式传输设计数据库。

DEF文件包含电路的特定设计信息,它是物理设计期间任何时间节点的芯片设计的一种呈现方式。DEF文件可以传送逻辑设计数据和物理设计数据,也就说DEF文件可以既包含芯片的逻辑信息又包含芯片的物理信息。

DEF文件一般包含如下描述语句。

将上图中的描述语句含义和案例汇集成如下表。

描述语句 含义 案例  
VERSION DEF文件的版本 5.8  
DIVIDERCHAR 层次化设计的分割符 /  
BUSBITCHARS 总线分隔符 []  
TECHNOLOGY 指定设计的工艺节点名称(technology name)    
UNITS 定义设计中各种单位的database unit(数据库中的单位)和Standard International(国际标准单位)转换关系;协议规定该值必须小于或等于tech LEF中指定的值,最好两边值一致,在某些先进工艺节点,如果两个值定义不一致,工具物理信息计算可能出现偏差或错误,例如VIA位置可能会偏移。 2000  
HISTORY 列出当前设计的历史记录    
PROPERTYDEFINITIONS 属性定义;列出设计中使用的所有属性,所有在DEF文件中调用的属性,都必须提前在PROPERTYDEFINITIONS语句中声明。  
DIEAREA 描述设计的形状和大小 DIEAREA ( 0 0 ) ( 100 100 ) ;

DIEAREA ( 0 0 ) ( 0 100 ) ( 50 100 ) ( 50 50 ) ( 100 50 ) ( 100 0 )

 
ROW 所有的标准单元都需要摆放在ROW上,所以在DEF中需要将所有用到的SITE都定义全,SITE从Tech LEF中读入。  
TRACKS 定义标准单元的绕线格点(routing grid)  
GCELLGRID 定义基于标准单元的设计的gcell grid(gcell是布局布线工具计算绕线拥塞的最小单元)  
VIAS 定义所有via的名称和几何形状信息  
STYLES 定义多边形,用于精确描述每个net wire端点的外部边界。  
NONDEFAULTRULES 定义tech LEF中没有定义但是在设计中使用的nondefault rules  
REGIONS 定义设计中的region(包括FENCE 和GUIDE)  
  COMPONENTMASKSHIFT 定义哪些绕线层可能会偏离初始的mask colors(掩模版颜色) COMPONENTMASKSHIFT M3 M2 VIA1 M1 ;
COMPONENT 定义设计中的各种组件(标准单元、Macro等)的location和其他相关属性  
PINS 定义输入输出端口(IO Port)  
PINPROPERTIES 定义设计中某些component pin(标准单元或Macro)的特性  
BLOCKAGES 定义设计中的placement??blockages和 routing blockages。  
SLOTS 定义形成线槽(the slotting of the wires)的多边形形状  
FILLS 定义设计中metal fills的形状  
SPECIALNETS 定义special nets(主要是电源和地)的逻辑连接和绕线信息  
NETS 定义nets的逻辑连接和绕线信息  
SCANCHAINS 定义设计中的scan chains(扫描链)信息  
GROUPS 定义设计中的components group  
BEGINEXT 添加自定义语法  
END DESIGN 结束语句 END DESIGN  

加入星球,谈谈芯事

相关推荐

登录即可解锁
  • 海量技术文章
  • 设计资源下载
  • 产业链客户资源
  • 写文章/发需求
立即登录