面试被问到:布局布线后有setup和hold violation如何解决。
答得不好是正常的,因为问题问得太没水平
因素太多了
问的太泛泛了,从前到后都可能找出原因来
有大神能全面的探讨分析下吗
问道的是布线后 STA发现violation了,如何修?
我就答了IPO,ECO之类的。就没说重新回去PR。
正常来讲STA中报的Violation和EDI中报的不太一样,STA中抱出来的Violation你首先要看你再EDI中是不是也有这个Path,如果有的话从location,Cell type 等方面发现有修改的空间的话就在修一遍,如果没有就可以要求电路设计人员修改电路结构!或者说Margin 足够的话不修也是可以的!
STA中的Violation 不见得都要修掉
感觉这样问不好,毕竟引起setup/hold的因素很多,而且解决方法也是多种多样!或者就说具体情况具体分析吧,呵呵!
为什么STA中的violation不见得都要修掉?不是要时序收敛的吗?不修掉怎么收敛?为什么要到EDI中去找violation的path线是否存在,什么情况下可能不存在呢?
后端实习生,希望可以详细的回答,谢谢。
我猜是因为要看看是不是真正的timing violation,是否constraint下的有问题,或者漏设false path之类的,或者是否design本身有问题,确定各种因素都是正确的之后再开始着手修timing。至于具体如何修,这个也没啥好说的,PR的基本功了。
谢谢你的回答,我的老师是这样回答我的,希望大神可以尽量的修正和补充。在block级别的图中:1、in to reg、in to out、 reg to out 是不用修的;
2、有可能是不同时钟,要问前端需不需要修;
3、有可能是时钟的不平造成的,要修平时钟,不过也有可能是故意不平;
4、。