ddr测试,memtester工具使用
前一段时间,在排查一个噪音问题的时候,一度怀疑是不是ddr出问题,导致给的是有规律的数据,读到的却不是。
为了排除是不是ddr出问题,就做了ddr测试。
在linux上做ddr测试,用到的测试工具是memtester,为了测试我们的板子ddr是否稳定,则需要将这个工具移植到我们自己的设备上。
移植也是比较简单的,源码可以从http://pyropus.ca/software/memtester/这个地址获取,我下载的是memtester-4.5.0.tar.gz版本的。
将这个压缩包解压出来,我们能做的修改是需要修改我们的交叉编译工具链。
其中的conf-cc和conf-ld两个文件中的cc,替换为我们自己当前使用的交叉编译工具链,比如说,我目前使用的/opt/hisi-linux/x86-arm/aarch64-himix100-linux/bin/aarch64-himix100-linux-
然后make编译,会生成一个memtester。
可以通过ftp、tftp或者其他的方式将这个文件下载到我们自己的设备上。
memtester 2G 3 //这个命令就是2G的内存测试3次 如果不带次数这个参数 就一直测试
可以看到打印如下,这就是没有问题的。
Loop 1/3:
Stuck Address : ok
Random Value : ok
Compare XOR : ok
Compare SUB : ok
Compare MUL : ok
Compare DIV : ok
Compare OR : ok
Compare AND : ok
Sequential Increment: ok
Solid Bits : ok
Block Sequential : ok
Checkerboard : ok
Bit Spread : ok
Bit Flip : ok
Walking Ones : ok
Walking Zeroes : ok
8-bit Writes : ok
16-bit Writes : ok
结果全部为ok,则内存正常。我这边没有测出异常,也不知道异常时候的打印是怎么样的。
boot下的ddr测试,目前还没有测试过,后续做过验证以后,也会加进来。