Vivado工程时序违背

这篇博客探讨了Vivado中出现时序违背的问题,通过分析发现主要原因是约束不正确。作者比较了两个工程的时序报告和xdc约束,指出时钟路径和参考时钟缓冲器refclk_ibuf的约束问题。通过修正xdc文件中的时钟路径约束和refclk_ibuf的通道约束,解决了时序违背的警告。
摘要由CSDN通过智能技术生成

        此篇博客在于记录vivado中报时序出错,尝试找方法改善、消除此问题。下面就工程中遇到的情况进行总结(持续更新):昨晚网上找到"vivado时序问题分析"(链接:https://wenku.baidu.com/view/e31e471a783e0912a2162ab3.html)文档,提及造成时序问题的成因有:1)约束不完整-70%;2)路径过长-20%;3)逻辑过深-5%;4)不正确的过约束-5%。解决方法对应分别是:1)约束主时钟;跨时钟域的约束;2)Pipeline设计;3)修改逻辑;使用Pipeline;4)删除过约束部分。看完后只留下一个概念:绝大多数时序约束问题都是由于约束不完整。

        1.xdc约束问题

        注:手头有两个工程,一份是当时开发PCIe工程(时序正常),另一份是加上工程其他功能模块的工程(时序违背)。

                                                                           图1:PCIe工程时序报告(setup_time)

                                                                            图2:完整工程时序报告(setup_time)

        想彻底消除那个失败的节点,对比两个工程PCIe部分的工程代码,发现两者的pipe_clock模块不一样,后者的pipe_clock模块被我整理过了,为了对比是否是我整理出的问题,我把前者的pipe_clock模块加载到后者的工程,发现这份完整工程中还是会报两个时序违背的路径(一条内联时钟路径+一条互联时钟路径,见下图3,

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值