前言
本章主要讲述如何从官网下载DDR2的DEMO例程,并将例程的仿真运行起来。
官网的DEMO在Diamond工程里是没有调用任何任何IP核的,只是在仿真的时候调用了CORE文件夹下的IP核源文件进行仿真,该DEMO工程主要是拿来产生仿真波形,对比IP核数据手册学习DDR2的控制时序,在真正的工程中,我们是需要单独去配置调用IP核的。
器件:Lattice ECP3
环境:win10 + Diamond3.13
一、官网下载一个DDR2的demo工程
其实在建立DDR2的IP核后,DDR2的IP核文件夹下是自带相关仿真例程的,虽然该例程工程比较简单,但编写的仿真文件包含东西比较多,复杂且不便于理解,
所以先从官网下载一个简单的ddr2 demo工程入手
PS:除了demo,记得下载IP核用户手册,后期会用到。
https://www.latticesemi.com/Search.aspx?q=DDR2
二、观察demo工程结构及demo硬件文档
2.1 demo文件结构如图(DDR2 Demo for the LatticeECP3 Serial Protocol Board - demo files)
2.2 熟悉demo板硬件框架(DDR2 Demo for the LatticeECP3 Serial Protocol Board.pdf)
demo板框图含义为---通过配置8路拨码开关,配置DDR2工作在不同的模式,
输出的8路LED灯代表DDR2运行在不同的工作状态。
打开目录下的工程文件--ddr2_demo\user_logic\par\ddr2_ecp3_spb.ldf,可对代码有大致了解。
三、运行demo仿真工程
3.1直接调用ddr2_ecp3_demo.do,观察仿真波形
为了后续理解代码,建议先将仿真工程建立起来,流程如下:
a.打开仿真脚本文件(ddr2_ecp3_demo.do),将diamond路径改为本电脑安装路径
b.打开modelsim,File->Change Directory,选择ddr2_ecp3_demo.do脚本所在文件夹
c. Tools->tcl->Execute macro 选择仿真脚本文件(ddr2_ecp3_demo.do)并打开
d.仿真执行完毕后,观察err_det 信号,正常的结果应该是该信号一直为低。
其实根据ddr2_ecp3_demo.do所示,我们可以手动找到官方例程仿真所需的所有文件。
根据这个我们后期仿真自己的DDR2工程的时候,可以通过导入相对应的文件 新建仿真工程进行仿真。
当然感兴趣后期可以自己根据该do文件 研究一下do文件相关的写法。
附录:
本教程参考过的文章链接如下:
Lattice 的 DDR IP核使用调试笔记之工程建立 https://www.cnblogs.com/fhyfhy/p/5224208.html
Lattice 的 DDR IP核使用调试笔记之DDR 的 仿真 https://www.cnblogs.com/fhyfhy/p/5259722.html
Lattice ddr3教程全攻略之仿真篇 Lattice ddr3教程全攻略之仿真篇_lattice实验-CSDN博客
Lattice ddr3教程全攻略之时序约束篇 Lattice ddr3教程全攻略之时序约束篇_lattice时序约束-CSDN博客