文章目录
开发板使用的DDR型号为三星的K4F6E3S4HM-TFCL,类型是LPDDR4,大小是2GB。NXP为MX8Q提供了LPDDR4压力测试工具,叫做MX8_DDR_Tester。该工具可以检验DDR工作是否正常,并且检验DDR硬件设计合不合理,若DDR能够超频到比标准频率高10%~15%的话就认为硬件设计没有问题。
配置步骤如下:
① 官网下载测试工具:
https://community.nxp.com/t5/i-MX-Processors-Knowledge-Base/i-MX-8-8X-Family-DDR-Tools-Release/ta-p/1121519
需要下载最新版,解压安装后,得到如下安装文件:
图3-2 MX8Q DDR测试工具
② 官网下载配置文件i.MX8QXP/DXP/DX DDR Register Programming Aid (RPA):
https://community.nxp.com/t5/i-MX-Processors-Knowledge-Base/i-MX8QXP-DXP-DX-DDR-Register-Programming-Aid-RPA/ta-p/1166302
图3-3 DDR 配置文件
③ 设置RPA文件
打开上一步下载的excel文件,该excel文件的内容是针对NXP官方开发板编写的,NXP官方开发板使用的DDR是美光的,而开发板上的DDR是三星的K4F6E3S4HM-TFCL,需要修改excel文件。参考这个帖子https://www.wpgdadatong.com/blog/detail/44789进行配置RPA,配置好后如下所示:
图3-4 RPA文件配置
④ 导出.ds文档
在excel中切换到最后一栏“DDR stress test script CBT”,复制全部内容,到测试工具安装目录的seript/mx8qx/下新建.ds文件,命名为mx8qx_c0_b0_lpddr4_1200mhz_RPAv16_Samsung_2GB.ds,將复制的内容贴到.ds去。
图3-5 新建的.ds文件
测试步骤如下:
① PC与设备的连接
测试工具要求板子要连接串口和UBS口,设置从USB启动(我们使用的开发板内部自动识别),因为要使用USB下载.bin文件到DDR内部。右击MX8_DDR_Tester.exe,选择管理员模式打开。
图3-6 以管理员模式打开MX8_DDR_Tester.exe
② 连接串口
点击Search,如果电脑成功插入串口并且驱动正常就会识别出串口,然后点击Connect,连接成功会变成Disconnect
图3-7 连接串口
③ 选择刚才拷贝进来的ds文件,然后点击“Download”
图3-8 载入.ds文件
④ 点击Stress Test开始测试
测试结果
① 静态频率测试
测试选项中选择“static frequency”进行静态频率测试,测试结果如下。
图3-9 静态测试结果
DDR默认传输频率为1200MHz,在此频率下测试成功。
② 超频测试
测试选项中取消选择“static frequency”,然后设置开始频率和结束频率,本次实验设置如下。
图3-10 超频测试设置
点击“Stress Test”,输出如下结果。
图3-11 超频测试结果
可以看到,该LPDDR4可以超频到1560MHz,比1200MHz多30%。
频率标准
从配置文件PRA上看,LPDDR4的传输速率标准是1200MHz。从MX8Q的参考手册中可以看到相关描述:
图3-9 支持1200MHz的LPDDR4
图3-10 DDR控制寄存器配置
7、注意事项:
(1)《MX8_DDR_Tool_User_Guide.pdf》中说到,“/bin目录存放着DDR压力测试程序,但这些程序是针对NXP官方板子制定的,对于希望在其自定义板上运行DDR压力测试仪工具的用户,用户需要在将SCU固件移植到其板上,并在尝试运行DDR压力测试仪之前确保适当的功能。但是,如果用户的板和NXP的板之间有细微的差异,那么现有的SCFW二进制文件可能足以运行DDR压力测试仪。”。在我们的实验步骤中,并没有更改SCFW文件,可见我们的设备与NXP的板子在DDR方面差别不大(可能是硬件连接上差不多)。
(2)编译SCFW二进制文件的方法如下(可能以后会用到):
1)下载固件:imx-scfw-porting-kit-1.2.tar.gz资源-CSDN文库
2)参考该帖子编译即可:imx8qxp DDR Test_imx8 ddr压测工具_Amu@123的博客-CSDN博客