xilinx的mig核使用modelsim仿真问题
问题描述
modelsim调用mig进行仿真的时候,init_done拉不起来。问题图像忘记截了(懒不想把代码该回去了)。我说一下把,就是下图的黄线之后会打印 memory initialization completed at time 。
wiredelay模块的作用-解决方法
之前modelsim调用mig进行仿真的时候,ddr3_model.sv以及mig的调用都在同一个v文件中,故未发现此问题(ddr3_model.sv以及mig的调用不在同一个v,导致仿真的init起不来)。
本次使用的时候是按上述问题例化进行例化,仿真输出脚本跑一会就报告phy-init已经完成,但是init_done并没有拉起来。
后续我对比和官方例程中发现,官方例程中在从exampl_top出来之后会过一个wiredelay的模块,其中的参数延迟数值为0,一开始再进行例化的时候没有关注这个,所以之前的自己的历程中并没有加此模块。也能用就忽略了。
但是始终想不到为啥延迟0,我还要例化下。就像大佬说的他需要过一下,进行判断逻辑。
这种问题都能浪费我时间,我要玩单片机教练,那个快。