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

 找回密码
 注册

手机号码,快捷登录

手机号码,快捷登录

搜帖子
查看: 33359|回复: 9

[原创] 后端面试--每日一题(026)

[复制链接]
发表于 2011-6-11 08:37:42 | 显示全部楼层 |阅读模式

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

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

×
In regular backend flow with only one functional mode SDC, please explain timing closure methodology/issue/fixes in pre-CTS, post-CTS and post-Route stages.

在只有一个function SDC的普通后端流程中,对于pre-CTS, post-CTS 和 post-Route这三步,请分别讲述它们在时序收敛上的方法,一般会遇到的问题和解决方法。

难度:3

暂时不考虑DFT。后续的每日一题中,会加入DFT mode SDC。
发表于 2011-6-11 14:45:58 | 显示全部楼层
没人回答?我抛个砖:
pre-CTS: 重在调整floorplan,buffer tree结构
Post-CTS: 重在调整clock tree,buffer tree结构或者size
Post-Route: 微调clock tree/buffer tree的size,routing channel和图层,实在不行,回到CTS
回复 支持 反对

使用道具 举报

发表于 2011-6-12 00:42:48 | 显示全部楼层
要看是top level还是block  level的,这两个讲究是不太一样的。

如果仅仅针对sdc文件来说。
  1> prcts文件如果没有做过timing borrowing,那么只需要在给过来的sdc文件中加入max transition以及max fanout的contstraint就行了,这两个constraint最好加上。加的值根据经验值。
     max transiton决定了你对critical path的预估程度。(因为tran是可以传递的,所以最好设置要和post route的值相差不远,如果你的floorplan不好,导致最后你某些地方的tran做的比较差,到0.4ns,好比,结果你Place的时候,设为0.2,那么明显是不合理的。fanout比较特殊,对你芯片面积影响很大,timing影响也比较大,个人觉得工艺不同,最好fanout选择不要一样)
   对于post-cts阶段,其实工具进化到现在,不管是s还是c,都可以用一些command来来设置uncertainty以及latency了,sdc可以和之前保持一致。但是可能有一些设置,事实上还是和timing相关的。 最大的就是uncertainty了,setup hold的。。。。事实上,这个值也是case by case的。该值决定了你的timing clousure的难易程度,需要自己把握。还有个比较重要的值,是clock tree的fanout ,该值对clock有很大的影响,当然也会影响density,需要把握。(此值和sdc无关)

   如果上面一切顺利的话,到post-route阶段,假设之前的fanout和transiton都比较好,并且uncertainty也控制的比较好,density也还不错。还未爆掉。此时就没什么什么好改的了,之前对sdc的一些constraint都记录在了scenarios里面。直接routing就是了。

  所以总结下来,sdc文件一共要改的就是transtion和fanout了,其他的各家工具的command皆有体现,记录在各自的scenario里面就好了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2011-6-12 07:57:44 | 显示全部楼层
是不是我的提问不清楚

我觉得首先应该回答,
pre-CTS时,使用ideal clock,只fix setup
post-CTS后,使用propagate clock,可以只fix setup,检查hold,但可以不fix hold
post-Route后,依然使用propagate clock,fix setup和hold

然后,就是楼上2位提到的,具体遇到的问题和解决方法了

除去“post-CTS后,检查hold,但可以不fix hold”那句话,我说的部分的难度是2,你们说的部分的难度是3。
回复 支持 反对

使用道具 举报

发表于 2011-6-12 22:03:21 | 显示全部楼层
嗯,学习了!
回复 支持 反对

使用道具 举报

发表于 2011-6-13 13:12:13 | 显示全部楼层
谢谢各位,学习了
回复 支持 反对

使用道具 举报

发表于 2011-8-11 20:41:58 | 显示全部楼层
谢谢大家,学习了!
回复 支持 反对

使用道具 举报

发表于 2011-8-12 12:08:37 | 显示全部楼层
preCTS和postCTs主要就是差个clock skew的问题
还有build clock的方法,这个很重要,

很多inter-clock path violation都是由于没有balance好造成的
所以你在postCTS后的timing有时候有很奇怪的结果,

postRoute主要是SI 影响,timing 会变差些,
可以做postroute  opt来修复回来,减少下crosstalk的影响,
回复 支持 反对

使用道具 举报

发表于 2019-10-9 11:49:39 | 显示全部楼层
学习了,谢谢。
回复 支持 反对

使用道具 举报

发表于 2022-4-27 19:40:56 | 显示全部楼层
学习了
回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

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

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

GMT+8, 2025-9-10 12:00 , Processed in 1.619274 second(s), 5 queries , Gzip On, Redis On.

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