为什么我在vivado中仿真和合成后仿真结果不一样?

问题描述 投票:0回答:1

我模拟了 rtl 代码并获得了所需的输出,但是当我运行后合成功能模拟时,我在模拟器屏幕上看到一些随机信号并得到错误的输出。

这是我在硬件方面的第一个项目,在这个过程中遇到了很多问题。

implementation vivado synthesis
1个回答
0
投票

您得到不同模拟结果的可能原因有很多。但首先重要的是要了解行为和综合后模拟之间的区别是什么。

行为模拟仅模拟您的 RTL 的功能行为。 综合后仿真发生在综合网表上。在综合过程中,有很多潜在的处理和优化发生,与行为模拟相比,这可能导致截然不同的结果。

最后,合成后的仿真是您最应该关心的,因为合成后的网表将传递到下一步,最终在 FPGA 中进行布局和布线。

你很可能有一些你不太清楚的结构或行为。我建议您查看网表,看看是否确实缺少某些功能,这暗示某些功能已被优化掉。

© www.soinside.com 2019 - 2024. All rights reserved.