痞子衡嵌入式:分享一个i.MXRT系列配套DRAM压力测试上位机工具(i.MXRT DRAM Tester)


  大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是恩智浦SE团队制作的i.MXRT配套DRAM压力测试上位机工具。

  事情源于痞子衡的技术交流群里的提问,有群友在恩智浦官方技术公众号 [恩智浦MCU加油站] 里看到的一篇文章 《i.MX RT的DRAM测试工具使用指南》,这个文章介绍了一个叫i.MXRT DRAM Tester的上位机工具,可以用来验证i.MXRT平台SDRAM稳定性,但是文中并没有给出工具下载地址,并且在恩智浦官网也找不到这个工具下载链接。众所周知,痞子衡一向急人所急,这不就把工具最新版(v0.2.2)搞到了并且放在CSDN供大家下载:

  • i.MXRT DRAM Tester下载地址: https://download.csdn.net/download/Henjay724/16098053

  这个工具是恩智浦SE团队一位资深工程师Gavin(就坐在痞子衡工位附近)独立开发的,原本仅用于内部测试,因此没走正规的测试发布流程,无法放到公司官网上。这个工具帮助SE团队辅助定位了不少SDRAM相关的客户支持问题,确实是个利器。

  关于工具的使用方法,安装包里的使用指南文档已经很详细了,痞子衡再简单概括一下它的工作原理:

1. 工具需借助i.MXRT芯片内部BootROM的ISP下载功能,因此需要将i.MXRT芯片的Boot Mode引脚调到2'b01状态。  
2. 借助ROM ISP功能(下载口首选USB,当然UART也行),工具通过下载口将DCD数据(工具会解析用户DRAM初始化脚本(.ds)生成BootROM能识别的DCD)下载进i.MXRT内部SRAM,DCD数据后续会被BootROM解析以完成SDRAM控制器(SEMC)的配置。(下图红色流线)  
3. 工具继续将memtester可执行bin文件下载到i.MXRT内部SRAM运行。(下图紫色流线)  
4. memtester程序是预先编译好的,只依赖i.MXRT最小系统,它会通过串口输出SDRAM压力测试结果。(下图蓝色流线)

Note:关于选择UART当下载口,目前测试下来发现使用普通外接USB转串口模块不能正常工作,必须使用EVK板载DAPLink调试器配套虚拟串口,原因待查明。

痞子衡嵌入式:分享一个i.MXRT系列配套DRAM压力测试上位机工具(i.MXRT DRAM Tester)

  i.MXRT DRAM Tester工具虽好,但目前仅支持i.MXRT1050/1020/1060,并且没有后续明确更新计划,鉴于此,痞子衡计划做一个全新上位机工具MCUTestSuite,会将memtester功能整合进去,设计思路是完全不依赖MCU主芯片特性(比如BootROM),仅借助调试器(J-Link/DAP-Link)来实现一系列测试功能(coremark, dhrystone, memtester, power等等),重点关注通用性和扩展性,敬请关注这个新项目:

  • MCUTestSuite工具项目:https://github.com/JayHeng/NXP-MCUTestSuite


上一篇:内存——CPU、内存以及磁盘是如何交互的


下一篇:RAM原理与分类