本文以一个案例的形式来介绍lattice DDR3 IP核的生成及调用过程,同时介绍各个接口信号的功能作用:
一、建立Lattice工程
1、首先,新建一个工程“lattice_ddr3”:

其中器件选择的是ECP5U系列LFE5U-45F-CABGA381芯片,Lattice的工程后缀是.ldf文件。进入工程界面后,添加模块文件:右键点击Input Files --Add--New File--Verilog Files即可添加。

2、添加了工程文件后,需要设置一个顶层,右键点击impl1,选择Set Top-Level unit,在弹出的窗口中设置顶层文件的名称,综合软件选择系统自带的Lattice LSE。

二、顶层文件设计

其中,IP核控制模块Mem_burst中是双端口的输入输出,输入信号有顶层中产生的输入和IP核返回的输入信号;输出有IP核输出到Mem_burst的信号和控制模块输出到顶层的信号。
三、模块信号功能介绍:
DDR3 IP核的调用主要有两部分模块,分别是控制模块和IP核接口模块,其对应的各信号列表如下:
1、控制模块的信号功能列表如下所示:
2、DDR3 IP核的接口信号功能列表如下:
四、DDR3 IP核生成过程:
在例化DDR3的IP核之前,需要先生成DDR3的IP核,且DDR3的例化与其他IP核不同,具体的过程如下:
1、首先打开Clarity Designer创建一个IP文件:

2、进入IP核生成界面后,需要在网上下载DDR3的IP核,在Lattice IP Sever中进行联网下载DDR3的IP核并安装,安装完IP核后在Lattice IP中选择ddr3 sdram controller 3.1,进行IP核参数设计:

3、配置IP核参数,由于选取的器件是ECP5U系列FPGA,因此DDR3的频率需设置为300M,否则生成的IP核是灰色的无法加入工程中去,内存数据总线大小选择16,对应的输入数据位宽是64位,配置选择X8,对应的地址位宽是28位。

4、IP核生成完成后,点击系统IP核界面上Generate,会在工程的文件列表中加入一个.sbx文件,此文件就是需要例化的DDR3 IP核实体文件,同时在对应的文件夹下面会出现一个对应名称的.V文件,将这个.V文件中的信号例化进顶层中即可。

5、需要例化的.V文件:

五、例化IP核
将上图中的.V文件例化进顶层文件中,定义好信号类型,将对应的信号相连接。至此,DDR3的IP核添加成功。
温馨提示:明德扬除了培训学习还有项目承接业务,擅长的项目主要包括的方向有以下几个方面:
1. MIPI视频拼接
2. SLVS-EC转MIPI接口(IMX472 IMX492)
3. PCIE采集系统
4. 图像项目
5. 高速多通道ADDA系统
6. 基于FPGA板卡研发
7. 多通道高灵敏电荷放大器
8.射频前端
http://old.mdy-edu.com/xmucjie/2023/0201/1865.html
需要了解相关信息可以联系:吴老师18022857217(微信同号)