CTS后reg2out的setup check的“clock network delay”为何还是ideal?
clock tree上的sync buffer和reg后面的逻辑省略了, timing report如下图:
三个小问题:
1, 上图红色圈住的地方“clock network delay (ideal)” 为何还是ideal呢?
2, 这个delay 1253.28p是怎么算出来的呢?
3, “data required time” 的这个clock network delay(1253.28p)怎么会小于clka->reg/CLK的delay(1373.30)呢?
set_propagated_clock
这个图恐怕是小编自制的吧,专门拿来提问的。不是项目中真实的报告
不是, 是真实报告, 是不过简化了, 你可以用PT report一条CTS后的reg2out,看看是不是一样?
里面的transition和cell delay也太离谱了吧
path比较长, 我把sync buffer和一些逻辑都删去了,其实主要是表达data required time中clock network delay 是 ideal 的问题, 其实如果你手头有design,可以让PT报一条reg2out的path看看是否和我说的一样?
图中例子时间单位应该是ps吧,
这个很正常,ICC做完cts可以自动update_clock_latency,
导出的sdc会包含 set_clock_latency -max/min -rise/fall xxx[get_clocks aaa] 之类的,
在pt中input和output port根据set_input_delay,加上对应的clock latency,
Encounter好像不能update latency,需要加上virtual clock,并设置对应的clock lateny,
否则图中path不加上1253.28ps latency,这条path就会报violation了
你的这个clkn是一个虚拟的clk 吧 ,我也是这种情况,你又在cts时设置了update_clock_latency所以才出现这种情况,应该是没有问题的,就是你这单位或许可以改一下,我是新手,多多指教
嗯, 感谢大大。 您是如何处理这样的 “violation” 的啊?
既然clka是片外输入,那么path里面的data required time中clock network delay 是 ideal 的,但是delay应该是0的,或者指定这个clock的 latency
block level的话,这个latency应该加上,还有violation的话,和做其他block的哥们儿商量商量,看看它连接对应port的timing,能不能放松。
chip level的话,就比较麻烦了,这个latency也不能加,要看spec,还是找前端design的哥们儿吧
请问为什么clk从片外输入的,clock network delay就是ideal?那什么情况下 clock network delay是propagated的呢?