后端面试--每日一题(069)
What is LEF? what it's difference with GDS?
LEF是做什么用的?与GDS的区别是什么?
难度:2
library exchange format, edi flow里面用来做库抽象的文件,只保留pin, blockage, vias,
和icc的mw fram view类似,
好处是文本可编辑,好改,
可以通过abstract 抽出来, 自己再编辑下
深入的了解不多,希望BZ能讲下。
大概知道是一种通用的软件之间互相交换的数据格式,GDS也是一样,貌似LEF是cadence公司出的标准。
一般LEF都是制定某些单元模块后(包括最后的版图)抽取的数据格式,用于生成可调用了数据。
呃,不过我这样说还是多模糊的。
学习了!
学习了,以前只知道gds
cadencesynopsysmagmaolympus
LEFFRAM viewvolcano libLEF
DEFMW design celldesign volcanoDEF
LEF是一种简化版的GDS,它只包括size和metal层有关的信息,比如pin,blockage等,其他base layer的东西只在GDS里面可以看到。
同时LEF还有一些GDS里面没有的信息,比如,metal的R,C,routing and placement rule等
怎么说呢, lef包含 tech lef和macro lef 2种,一般lib给的 有的是合在一起的,有的是分开的
建议分开,因为有时候tech header lef 要修改些东西的,
tech header lef 主要是place&route rule,和icc的 tf一样的,定义一些规则 ,引导布局布线工具
工作, 有很多信息,比如metal thickness, EM limit 等,
有时候要修改一些rule来去掉route violation,
macro lef就是上面我们讨论的lef,是cell abstract view,通过abstract这个工具从gdsill抽取得到,
可以人为的修改, 就是有MACRO XXX关键字的这种,
edi的一开始rda_Input(ui_leffile) 第一个必须是tech header lef,合成在一起的也行,
milkyway,Astro,icc在这块就是一个tf file, CELL、FRAM view是另外的文件,
what about DEF?
design exchange format,是存储 place&route 信息的, 和 icc的design cel view一样的,
是可读的信息,和lef一样的,可以改
cadence是LEF/DEF flow,
synopsis 是FRAM/CEL view flow,
so .plef file = .lef file ?
and what about .lib file in cadence?
LEF是供PR工具(encounter)用的技术库文件,或者cell的macro描述文件,只涉及到routeing信息和pin信息以及OBS信息。也可以转换为其他工具的PR用文件。
而GDS包含的信息更具体,MOS器件的每一层layer信息都包含在内,是最终tape-out给foundary的数据形式。
plef看具体的语境和文件啊, arm memory的还叫vclef呢,只是个文件后缀名,
实际上是lef的格式,
.lib就是synopsis的 标准库格式,cadence也认的,
oh, thanks your reply
学习了,谢谢搂住
想问下,def和gds有和区别,可不可以用def文件做drc和lvs检查
MOS器件的每一层layer信息都包含在内
这里的信息指的是什么信息,我理解的就是每一层net的连接情况,长度,宽度和间距这些(其实就是位置信息)还有via或者via arry的位置信息 请问还有其他吗
你红字标注的部分,那是针对GDS的(完整的GDS还有有源区,阱,栅氧区等,,,,,),不仅仅是metals和vias
有源区,阱,栅氧区这些也就是所谓的base layer是吧
没错,而这些在LEF中是不关心的
恩 多谢小编了 小编你看下面这个图,这是陈小编每日一题中的一道题目:
这里如果修改base layer岂不是要修改有源区之类的,但是这些都是foundary的事儿吧 后端工作的人不能动base layer吧
foundry的工作人员是按照后端提供的gds数据加工的,所以得先后端的改才行啊,foundry哪能随便改客户的数据呢
我知道小编的意思 但是比如有源区的掺杂浓度这些 咱们做后端的是没法定义的吧 还有有源区的长和宽这些,数字后端用的不都是foundary给好的std cell吗? 自己如何改 请小编明示 感激不尽
知道你说的意思了。其实动basic layer,对数字部分来说就是简单的ECO没办法了,需要添加门,这样器件有变动了,所以basic layer也就必须要动了。
当然能用已有的spare cell或者其它已有的cell解决问题的,能不动basic layer就不动,控制成本。
恩,多谢小编;我可不可以这样理解,添加或者减少门,也就是添加/减少 std cell(foundary给好的)这就叫动了basic layer了。
但貌似没有动有源区 阱 这些东西,是不是说添加了std cell进来,因为std cell中肯定会有阱 有源区这些,即是说添加std cell,也就是动了阱 有源区了
基础比较弱,多谢小编耐心解答啊
没错
恩 万分感谢小编
