微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > IC后端设计交流 > 后端几个不明白的问题和不确定的问题。

后端几个不明白的问题和不确定的问题。

时间:10-02 整理:3721RD 点击:
看到有资料是这样说的:1.CTS之后还要做formality,是CTS之后的网表和综合之后的网表的formality。实际的项目中也是这样吗?2.DC之后要做STA,如果STA时序违规要重新综合。问题1是:这里的时序违规是要setup和hold都看还是像CTS之前的STA只看setup,毕竟hold还是比较好修的。问题2是:DC之后的STA如果有时序违规必须要重新综合吗?还有没有其他方法?
3.DC综合之后要吐出一个SDC约束文件,用于APR的需要。那么这个文件和DC综合时的输入SDC约束文件有啥区别?我的理解是没区别,所以不用输出。不知道理解对不?
4.DC之后还要吐出一个SDF延时文件,用于DC后的STA。因为这个文件只有cell的延时信息,无net的延时信息。那DC后的STA只用了cell的延时信息吗?还是要去估算一个net的延时信息,两个信息一块才能做DC后的STA?
5.placement之后和CTS之后都要做STA吗?
希望大神帮忙回答一下。

我是菜鸟,简单的回答下第五个问题:placement和CTS之后都要做STA,不同的是placement之后只要做setup,这时候检查hold没什么意义,而CTS之后setup和hold都要做。一般每一个稍微重要的步骤过后都要做下STA以检查这个步骤做的怎么样。
第四个问题:DC之后的SDF文件只有cell的延迟信息,没有net的延迟信息,这时候做STA,肯定是要拿WLM来估算一下net的延时的,两者加起来一起做STA.
第三个问题:(猜的),因为SDC约束文件相当于一个时序标准,在做DC过后,如果发现这个标准不合理,可以修改下SDC输出。

第四个问题后面看到有资料和你说的一样。其他两个问题我还是赞同你的回答。谢谢啦!

还有一个问题请教:sdf文件和spef文件的区别?我的理解是sdf文件里面只有cell的延时信息,且cell延时信息是真实的。如果要做STA的话需要的net信息是wire load估算的,但是这个估算的net信息是在SDC约束文件里面的,不在sdf文件文件里面。
但是spef文件的话,是通过starRC抽取的真实的RC参数,是包含net的延时信息,但是不包含cell的延时信息。
总结之后就是说routing之前的STA输入的cell和net延时信息要通过sdf和SDC两个文件得到,routing之后STA的延时信息要通过sdf和spef两个文件得到。这样理解对吗?

还有一个问题请教:sdf文件和spef文件的区别?我的理解是sdf文件里面只有cell的延时信息,且cell延时信息是真实的。如果要做STA的话需要的net信息是wire load估算的,但是这个估算的net信息是在SDC约束文件里面的,不在sdf文件文件里面。
但是spef文件的话,是通过starRC抽取的真实的RC参数,是包含net的延时信息,但是不包含cell的延时信息。
总结之后就是说routing之前的STA输入的cell和net延时信息要通过sdf和SDC两个文件得到,routing之后STA的延时信息要通过sdf和spef两个文件得到。这样理解对吗?

DC吐出来的sdc似乎是将约束反标到了网表里了。

赞同。

您好,我有个疑问:
做placement时只设置分析setup的scenario,而在CTS之前要设置分析setup和hold的scenario?是这样吗?

在我们的signoff流程中formality是要做的。因为曾经出现过CTS时,工具加入的inv不是成对的。当时是从后仿中发现出问题了。当然这种情况只出现过一次。

讲道理来说,每动一次网表都要做formality的。


cts之前的话,只需要分析setup就好了,skew对hold的影响比较大,因此cts之后要分析的。不过cts之后可以不用修hold vio。可以在postRoute的时候修hold

谢谢您,其实我有点不懂得是从placeCTSroute,scenario应该怎么设置
在运行place前,设置 分析setup的scenario
在运行CTS之前应该怎么设置?设置分析setup和hold的,然后再跑CTS?

SPEF文件里面所包含的是net的RC参数信息,在做STA时通过延时计算得到SDF文件,所以SDF文件里面包含的是延迟信息。(SDF由两部分构成:器件的延时和net的延时,器件的延时DC过后就有了,net的延时则要通过SPEF计算得到)芯片的延时主要由器件的延时和互连线的延时构成,而器件的延时在时序库标定的时候就已经准确的算出来了,所以在做STA 时,只要计算net的延时即可,在route完成之前都需要用WLM来估算互连线延时(至于这个WLM确实是在SDC文件里面定义的,set_wire_load_model),而SDC文件在做floorplan之前就要输入到tool里面,它是时序约束的标准。
所以我觉得你说的应该是对的,之前要SDC和SDF,之后要SDF即可。
这个问题我也不是怎么太清楚,毕竟没有design经验,但愿回答对你有所帮助。

因为scenario是用来analyze和optimize的,所以在placement之前设置setup的scenario,应该是检验placement之前的步骤的setup是否违例。
所以在CTS之前,应该要设置setup的scenario来检验placement的setup是否违例,这个时候不需要检查hold所以不用设置hold的scenario。当然了,post-CTS是要fix setup和检查下hold.(没接触过ICC的flow,完全是根据逻辑答的,也不知道对不对)

我的理解是:之后要spef和SDF(spef定义net delay,SDC定义cell delay) 和你的理解不一样。

SPEF里面是提取的RC参数,通过延时计算得到SDF也就是net的延时信息,这时候SDF就包含器件的延时和Net的延时两个了。后面的用一个SDF就行啊

SDC由三部分组成,时钟的定义,输入延迟,输出延迟。cell delay在SDF文件里吧

明白你说的了。

同意

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top