微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > IC后端设计交流 > DC中clock_uncertainty与CTS之前clock_uncertainty的关系

DC中clock_uncertainty与CTS之前clock_uncertainty的关系

时间:10-02 整理:3721RD 点击:

理论上:DC中clock_uncertainty=jitter+skew+margin,在CTS阶段的uncertainty=jitter+margin,所以CTS阶段的clock_uncertainty的值比DC阶段的要小。但在实践过程中我是这样做的:DC中的uncertainty为1ns,ICC后第1次导出netlist,抽取寄生参数进行STA分析时,hold violation数目多且总的hold violation达到1000多ns,最大的hold violation为-2.13ns但数量只有5个。因此,我在CTS之前将clock_uncertainty设置为2ns,CTS之后进行clock_opt -fix_hold_all_clocks -only_hold_time来修复hold,这样做虽然会增加gate area但不会增加我整体design的area,再次进行STA分析时,hold violation大大减小了。问:我这种方法是否可行?

顶顶顶

那就是證明你用一大堆 hold time buffer 解了 hold time violation, 時鐘頻率長沒差, 若短不一定行得通.

10M的时钟频率,setup余量很多很多

hold violation多半是skew没有调好吧,看你的速度虽然不快,但是uncertainty 2ns有点大

我的时钟频率为10M,CTS之后skew大概是0.98ns的样子,如果pre_CTS之前,set_clock_uncertainty -hold 2 [get_clocks clk_in]应该就不矛盾了吧?

pre-cts可以设置的大一点,在post-CTS改小点,看你的sign-off需求,这个uncertainty没有太硬性的要求,以PT报出来的timing结果为准吧

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

网站地图

Top