基于7A100T的Verilog DDR3仿真

概述

第一次搭建DDR3仿真模型,记录一下过程以防忘记。
硬件平台:7A100TFGG484-2
Vivado 版本 2018.3

第一步

利用vivado软件生成 MIG IP核,具体生成过程参考“正点原子达芬奇PRO 第30章DDR3读写测试 实验”。在这里插入图片描述

第二步

生成IP核自带例程,将IP核的自带例程保存在一个路径下准备好,后面需要在此例程中复制一些文件。

第三步

打开刚刚生成的自带工程拷贝如下文件
红框红框内为5个所需文件,蓝色箭头为文件地址。
将以上五个文件拷贝至自己的工程中。添加后的工程如下图
在这里插入图片描述上方红框的位置就是我们在第四步需要替换的模块,即:我们需要把自己写的DDR3工程替换掉红框内的模块。替换步骤见第四步。

第四步

通过在sim_tb_top文件中,例化自己的DDR3工程,实现替换目的,替换后的工程如下图在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

第五步

运行仿真,以init_calib_complete拉高作为DDR3仿真模型搭建成功的标志,注意:在107us左右才会有init_calib_complete信号拉高,如果用vivado仿真的话,可能需要等较长时间(在做此工程时,我等待了10分钟)。仿真波形如下图。
在这里插入图片描述
在107us时,init_calib_complete信号拉高,并且读写都正常。

!!!特别注意!!!

在自己工程内,调用MIG IP时,
注意app_sr_req,app_ref_req,app_zq_req 三个信号必须要给1‘b0,否则会导致不能正常仿真,错误的仿真情况如下图:
在这里插入图片描述可以看到,在错误的仿真波形中,虽然init_calib_complete信号被正常拉高,但是仿真的波形不正确。

以上记录较为粗糙,仅提供整体思路,具体细节待后续完善…………
感谢正点原子提供的视频以及代码例程。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值