上一期介绍了安装违规的修复,但这次我们将讨论暂停违规。与设置相比,保留的修复要简单得多。同样,让我们回顾一下保持时间的定义。
保持时间检查数据不能传输太快,这将影响之前的数据锁存。如下图所示:
t启动时钟路径延迟
Tcapure正在捕获时钟路径延迟
Tdp是数据路径延迟
详细的公式可以在下面的文章中找到
[时间序列分析基本概念介绍]
同样,从公式中我们可以知道,修复hold主要有三种方法:
1)增加数据路径上的延迟
这是修复暂停冲突最常用的方法。增加路径延迟比减少延迟要方便得多,因此保持违例很容易修复。通常,我们只需要在数据路径上填充缓冲区或延迟单元。缓冲单元可以增加更少的延迟,但延迟单元会更大。我们可以根据定时报告中每条路径的松弛情况选择缓冲区或延迟单元。
另外要注意的是缓冲区或延迟单元插入的位置。一般来说,小区的位置被插入到路径的端点附近,因为它对其他路径设置的影响最小,并且可以更好地避免违反drv。
2)增加启动时钟路径延迟
就像修复设置冲突一样,我们可以通过填充启动时钟路径延迟来修复保持冲突。但是在现实中,我们很少使用这种方法,因为当我们移动到时钟时,会有许多不可控的情况。除非同一寄存器中有许多hold违例,否则可以在设计密度较高时尝试使用它。注意检查前一路径的保持余量。
3)减少捕获时钟路径延迟
这种方法也需要移到时钟,很难降低时钟路径延迟,所以这种方法一般不可取。
保持违例在很大程度上取决于时钟路径的质量。如果时钟树是平的,持有违规就会少很多。实际上,在最终的ECO阶段修复挂起的过程中,我们可以通过脚本来实现它。获取违规路径的端点。如果是SI引脚,可以直接添加缓冲或延迟单元。如果不是SI引脚,记得检查相应设置的边距。
1.《violation 时间做减法,人生做加法——如何修复hold violation?》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。
2.《violation 时间做减法,人生做加法——如何修复hold violation?》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。
3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/keji/1484108.html