后端面试--每日一题(030)
请解释反标SDF和SPEF在时序分析时的差异,特别是用不同的STA工具检查timing时
难度:3
spef是寄生参数描述文件,给出了路径上的寄生电阻电容等,具体的延时还需要sta工具进行计算。
而sdf则是时序的描述文件,里面包含有cell delay以及wire delay。sta工具不需要再对延时进行计算。
以我做过的项目为例,在soce中导出def文件到starrc,通过starrc提取出spef文件,导入Pt进行分析,得到时序反标文件sdf,再将此文件导入到vcs等仿真环境中做后仿真。
我的理解很浅,只能说这么多了。等楼下高人的回答
l楼上理解的很清楚啊
得益于有刷屏的,该贴居然已沉到第4页,顶起来。
2楼说的非常正确,但是我觉得跟陈老大的问题有点不对路。(当然我也就知道这么多,但还是觉得问题问的不是这些)
我知道的也就是2#说的那样,期待准确答案哈
2楼已经说出了过程,但是缺少一个总结
结论是:
使用SDF做时序分析,无论使用什么tools,其结果应该是一样的,没有差异
使用SPEF时,因为工具需要把SPEF换算成SDF,这时会产生差异。
所以建议使用一个你信得过的工具生成SDF,然后大家都使用这个SDF做STA和仿真
对SDF处理的这个方面,从理论上是这样子的,事实上还是有细微的差别。
以前在利用Mentor的 Sierra做优化的时候,有对比过。在Sierra中利用SDF反标得到的Timing跟Pt很接近,差别很小。
利用SPEF反标的,差别有10%左右。
谢谢以上两位的总结。我是否可以理解为对于一个flow而言,sign off阶段的输入应该是sdf文件,而不是spef?
自己做过的东西很少,流程也不规范,所以之前没考虑过着些东东
建议是这样,
但是有人会故意用多个tool跑SPEF,增加保险
陈老大, 我用QRC生成spef, 在ETS中用spef分析报出来的时序一.在ETS中用spef生成sdf, 然后再用sdf报出来的时序时序二.
两种方式用到的spef是一样的, 同一版本的ETS.
但是生成的时序一和时序二有差异, 不大, 但也不算小.
这算是对你结论的一个实例说明么?
还是说, ETS自己脑残, 自己生成的sdf和自己直接报时序都不一样.
我也遇到过你说的现象,感觉是ETS脑残,也可能有什么特定的设置,我们没发现,那就是我们脑残了
好像是有点多余
会不会是write_sdf后的选项没有设置好?个人建议,还望验证。