微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > IC后端设计交流 > apr后时序分析的问题

apr后时序分析的问题

时间:10-02 整理:3721RD 点击:
postRoute_all_hold.tarpt 里面的slack time都是正的。
postRoute_hold.summary 里面violated path 为0.
PostRoute_hold.slk 里面,SlackR/SlackF都是正的,但是holdR/HoldF有100多个负值,请问这个是怎么回事? 时序算有问题么?thanks

如果holdR/HoldF的意思是那个flop的hold time的要求的话,应该没有问题

这些path一般以上在ff的cdn 上,我查过lib的 removal时序
timing() {
timing_type : removal_rising ;
related_pin : "CP";
rise_constraint(tcb670bc) {
values("0.5758,0.6202,0.6647,0.7091,0.8573",\
"0.6179,0.6622,0.7066,0.7509,0.8987",\
"0.66,0.7042,0.7484,0.7927,0.9402",\
"0.7021,0.7462,0.7903,0.8345,0.9816",\
"0.8424,0.8862,0.93,0.9737,1.1197");
}
像这个都是正值,应该不是ff的要求是负值吧? 有点迷惑

发重了。

发重了。

http://bbs.eetop.cn/viewthread.p ... C%BE%D6%B2%BC%CF%DF基于Encounter软件的布局布线(中文)这个文件42页提到:
”Setup and hold time slack analysis
„ 延时信息计算好后,进行时序违例分析。将时序报告文件
(.slk )打开,该文件是保持时间时序违例报告。可以看
到holdR / holdF (保持时间上升沿和保持时间下降沿)一
栏的时间裕量为负,即表示保持时间还不满足。
„ 解决的办法:对布局布线调整时序约束,之前的约束可能
过紧或过松,具体办法是增加或减少时钟周期,让
encounter添加或减少Buffer来调整延时以满足建立时间和
保持时间,重新布局布线、时序分析,直到建立时间和保
持时间的时间裕量都为正“
但是觉得有点怪,如果有violation,summary那边怎么都看不到。

发重了。删不掉

汗。网络有问题,以为没有提交成功,发重复了。虽能帮我删除掉

手头一时找不到slk的report,你贴几行上来看看

陈小编,我也有这方面困惑,我贴几行slk文件的report吧。# Format: clocktimeReqslackR/slackFholdR/holdFinstName/pinName# cycle(s)
@(R)->CLK2(R)
2.692-1.518/*0.044/*TOP/CLKGEN/CLKdiv_REG/RN1
SCK(R)->CLK1_R(R)
2.790*/-0.045*/-0.021TOP/MRC/CADDR_REG_1_/D1
SCK(R)->CLK1_R(R)
2.793*/-0.044*/-0.022TOP/MRC/CADDR_REG_2_/D1
SCK(R)->CLK1_R(R)
2.814*/-0.031*/-0.026TOP/MRC/CMWD_REG_1_/D1
SCK(R)->CLK1_R(R)
2.817*/-0.026*/-0.027TOP/MRC/CEMWD_REG_0_/D1
SCK(R)->CLK1_R(R)
2.792*/-0.019*/-0.019TOP/MRC/CEMWE_REG_0_/D1

请问陈小编,像这种slack有负值要如何修复?holdR/holdF有负值要如何修复?

把下面几个名词的含义搞清楚后,就知道下一步该如何做了
clocktimeReqslackR/slackFholdR/holdFinstName/pinName# cycle(s)
时钟,需要的时间,时序违反,终点输入端的hold要求,终点,周期数(为multicycle用的)
所以只要slack不是负数,就没有问题
slack为负的是真的违反,如果约束正确的话,需要修补。
zzczx提到的那份资料,没什么参考价值,关于slk报告的解释完全错了,谁看谁倒霉!

谢谢陈小编,那份资料真是误人子弟啊。

也是觉得那份资料不对。 就是对holdR/F为何是负数不理解。因为看lib里面,removal的table里面都是正值。

一般情况下, soce不会产生这个slack report啊。好奇怪

这个不必困惑,.lib里面的table表示的是removal check的要求,可以是负/正值。这和本问题没有关系。

小编,我使用encounter做完P&R后,得到的时序报告里边关于hold违例有这样一句话:
Path1: VIOLATED Clock Gating Hold Check with Pin BB_ISO_INST/U54/A
Endpoint: BB_ISO_INST/U54/B (^) checked with trailing edge of 'CLK_MAIN'
Beginpoint: bb_mode_sel_i (^) triggered by leading edge of ’CLK_MAIN'
Path Groups: {clkgate}
...
请问,1.上面出现的(^)是什么意思?
2.trailing edge和leading edge分别是指时钟的下降沿和上升沿吗?

^ 上升沿
v 下降沿
leading edge = launching edge
trailing edge= capture edge

我也遇到了同样的问题,现在不仅slk文件里面hold slack有违例,而且setup slack也有违例。跪求小编,说一下怎么修复!

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

网站地图

Top