在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 1361|回复: 0

[转贴] 转:DC综合原理与实践第二部分

[复制链接]
发表于 2023-9-19 18:56:55 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x

v2-1c46ecabac6814449809bdf469d08665_720w.jpg
上图是milkyway与DC/ICC等工具的关系,看一个热闹就可以,没必要深究。大部分的IC前端designer没有了解全部的必要,后端designer也分综合/STA/PR。分工可以提高效率,有分工才会有流程,这是IC设计流程的特征。也可以说,集成电路设计的最主要特点就是效率(分工/partition/time to market),另一个就是准确性(验证,DFT,OCV,可靠性都是体现准确性)。
milkyway包含很多“view”,每一种view是对物理库的一种描述。
v2-55e0f3c48dad3bf68cc43360d1439e8b_720w.jpg
截图是user guide中的一部分。对于DCT或DCG,我们只需要关系CEL view和FRAM view。如图,CEL view是“full layout view”,包含全部的layout几何拓卜信息;FRAM view是CEL view的“轮廓”信息。
那肯定有人好奇milkyway库长什么样子。
v2-186a5b6222f45606f667f1c8234a08d8_720w.jpg
再深入一点就不敢给大家看了。
再比如physical library的一些物理参数。
v2-1199c3998d7d0b8db87a4dbd40847ab9_720w.jpg
只敢放个样子出来。
tluplus是寄生文件,名义上是database之类的数据文件,但是大部分tluplus的前面都是文本内容,是可以看的。基本描述的都是“图层”的相关信息(比如说某一次metal的厚度,宽度,K factor等等)。technology file是foundry提供。有兴趣的同学可以自己去看,因为foundry提供的library都是打包下载的,有front end的liberty,一般也会有back end的milkyway(早期叫astro,没有milkyway的话一般会有lef),tluplus较早的工艺可能不提供,technology file一般都是有的。
物理库相关的就聊到这,再多一点的信息都属于“我不懂”这个范畴。

v2-59d7acf14c39d23d1fe07f7c19dd1bff_720w.jpg
synthetic library是DC为设计优化提供的一些固定“电路”。我看到知乎上有人说是synthesis库,显然是有点“尴尬”。
synthetic包含哪些库呢,我给大家find一下看看。
v2-d2cfb95d0f3e500e79fd933ccdd9b16d_720w.jpg
以及
v2-0a1fac05b0c5bf25d7540ba8b200a700_720w.jpg
除了3个DFT相关的synthetic library。standard是基础的library,也就是说,即使你不设置synthetic library,工具也会默认调用的库。dw_foundation就是我们需要额外加的库,实际上就是“designware”。
当然,UG是这么说的。

v2-80ea1cda1b3728b02b8276a30d6042e7_720w.jpg
minpower的库一般是DC在优化过程中,需要考虑功耗优化时候才放进去的。比如:MCMM综合的时候,吃LVT cell,这个时候需要有一个power optimization的scenario。
symbol library基本上不会用,可以不去研究。
II. 库文件的读入
set target_library “$target_lib”
set link_library “* $target_library $link_lib”
set synthetic_library “dw_foundation.sldb dw_minpower.sldb”
$target_library,即RTL要translate的目标工艺库,DC优化的主体,包含的主要内容就是STD的liberty;$link_library,DC综合时所需要的全部库文件的集合,$link_lib的主要内容就是memory和其他macro的liberty。星号“*”表示,当前工具的“内存”中包含的全部reference。
“reference”是一个非常重要的概念,STD和memory、macro这些都可以认为是笼统意义上的leaf cell,也就是最底层的单元,搭建电路的基础“素材”。但是,大部分设计都是有层次的,层次和层次间包含调用关系关系。顶层设计(current_design)通过层层调用,直至leaf cell,产生一个树形结构,这个结构的中间层都可以认为是reference。每一层reference既可以认为是current_design的cell,自身也是一个独立的design。
create_mw_lib -technology $TECH_FILE -bus_naming_style {[%d]} -mw_reference_library $MW_REF_LIB $MW_LIB_NAME
milkyway的读入中,-technology指定technology file,-mw_reference_library,指定milkyway参考库,最后$MW_LIB_NAME指定当前DC生成的milkyway库的名称。然后,
open_mw_lib $MW_LIB_NAME
来打开milkyway库。
set_tlu_plus_files -max_tluplus $TLUPLUS_MAX_FILE \
-min_tluplus $TLUPLUS_MIN_FILE \
-tech2itf_map $MAP_FILE
-max_tluplus,-min_tluplus设定tluplus的库。这里就要用到这篇文章中的知识。
寄生参数存在corner,称之为RC corner。RC corner有RCworst、Cworst、RCbest、Cbest和typical。如果有DPT的情况,还要加上CCbest和CCworst的分析。最简单的DCT,只设定max tluplus,即单一的RC corner分析。-tech2itf_map,指定map文件,即调和technology file和tluplus的命名差异。


您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-6-16 09:16 , Processed in 0.024576 second(s), 9 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表