本原创文章由深圳市小眼睛科技有限公司创作,版权归本公司所有,如需转载,需授权并注明出处(www.meyesemi.com)
1.实验简介
实验目的:
完成 DDR3 的读写测试。
实验环境:
Window11 PDS2022.2-SP6.4
芯片型号:
PG2L50H-484
2.实验原理
开发板集成 1 颗 4Gbit(512MB)DDR3 芯片,型号为 MT41K256M16。DDR3 的总线宽度共为 16bit。DDR3 SDRAM 的最高数据速率 1066Mbps。
2.1. DDR3 控制器简介
PG2L50H 为用户提供一套完整的 DDR memory 控制器解决方案,配置方式比较灵活,采用软核实现 DDR memory 的控制,有如下特点:
- 支持 DDR3
- 支持 x8、x16 Memory Device
- 最大位宽支持 32 bit
- 支持精简的 AXI4 总线协议
- 一个 AXI4 256 bit Host Port
- 支持 Self_refresh,Power down
- 支持 Bypass DDRC
- 支持 DDR3 Write Leveling 和 DQS Gate Training
- DDR3 最快速率达 1066 Mbps
3.工程说明
PDS 安装后,需手动添加 DDR3 IP,请按以下步骤完成:
DDR3 IP 文件:PG2L_IP\PG2L_IP\DDR3\ips2l_hmic_s_v1_10.iar
3.1. DDR3 读写 Example 工程
打开 PDS 软件,新建工程 ddr3_test,点开如下图标,打开 IP Compiler;
选择 DDR3 IP,取名 ddr3_test,然后点击 Customize;
在 DDR3 设置界面中 Step1 按照如下设置:
Step2 按照如下设置,需要自己新建 DDR3 模型,选择 MT41K256M16XX 为模板,并保持Timing parameters 和地址以及 Drive Options 和下图设置的一致。
Step3 按照如下设置,勾选 Custom Control/Address Group,管脚约束参考原理图:
提醒:
在设置 IP 核时,step 3:pin/bank options 中,管脚设置中的 Group Number 与原理图的对应关系如下图:
R5 表示 BANK5,G1 表示 Group Nmuber 为 1。
Step4 为概要,点击 Generate 可生成 DDR3 IP;
关闭本工程,按此路径打开 Example 工程:
打开顶层文件,需要对顶层文件进行修改,具体参考详细代码。下图是经过修改后的顶层文件。
对“Step3 已做管脚约束”外的其他管脚,对照原理图使用 UCE 工具进行修改,移植的话可以直接参考工程的 fdc 文件进行移植。
以下管脚可约束在 LED,方便观察实验现象;
可按以下方式查看 IP 核的用户指南,了解 Example 模块组成;
4.实验现象
下载程序,可以看到 LED1 常亮,LED3 闪烁, LED4 闪烁,LED5 常亮;
提醒:
Heart_beat_led 信号闪烁表示 ddrphy 系统时钟正常。
err_flag_led 信号闪烁说明数据检测无错误。可在 IP 核数据手册中找到。
如果正常的话,err_flag_led 闪烁的速度快于 heart_beat_led 的闪烁速度。