时间:2024-07-30 来源:网络搜集 关于我们 0
FPGA调试本身就是挺辛苦的一件事情,尤其是在刚开始调试FPGA的时候,无论培训的时候如何强调一些注意事项,如跨时钟域问题,如接口问题,以及RAM读写冲突问题,但一旦做起项目来,每每还是有同学必须要亲自往这些坑里面跳一次才真正懂得这些BUG的含义。如双口RAM在功能仿真时没有出现问题,但上板调试过程中运行很久才偶尔出现一次BUG,这时就需要花费大量的时间去追溯问题的源头,最后花一周甚至更长的时间才能找到是双口RAM读写冲突的问题,时间早早的就浪费掉了。事实上,上面说跨时钟域或者双口RAM读写冲突的这些问题是可以通过时序仿真仿真出来的。
FPGA验证在芯片设计流程中具有重要的作用,有时候为了找到某些BUG,不得不对FPGA综合出来的网表进行后仿真。后仿真又叫时序仿真,跟课程前面介绍的对写出来的Verilog hdl设计代码和testbench代码建工程进行的功能仿真不同,时序仿真是把综合出来电路中的时延信息加入到仿真的过程中,模拟出跟更接近于在FPGA上真实运行的情况。本文以Quartus II软件为例进行介绍后仿真的步骤和流程。ISE或VIVADO流程类似或关联ModelSim后更自动化。