总结:Multi-Driven导致
近日在做UART串口协议的FPGA仿真,是非常基础的小练手,决定不借鉴网络上大段落的代码,但依旧出现了严重的问题。
写Testbench时,Simulation的波形符合预期。
但是在综合时,出现了Critical warning,起初并没有在意,直接将程序载入到黑金开发板之中,结果无论是在扩展口用示波器,还是用ILA进行波形观察,都无法得到与仿真相似的结果。
最后,将Multi-Driven相关的输入进行了修改,得到了预期波形。
得不到波形的原因终于解决,但依旧是拆东墙补西墙,接下来仍需再次进行优化,以实现我想达到的程度。
注:其他仿真与实测不一致的可能原因
来源:关于FPGA设计仿真和硬件实测不一致问题的讨论_fsFengQingYangheihei的博客-CSDN博客
1.寄存器未给初值
2.阻塞与非阻塞赋值混用
3.时序收敛问题
4.Multi-corner Simulation