DRAM DDR4&DDR5 UDIMM&RDIMM的内存测试固件开发的经验总结


1、为了达到对内存地址的100%的检测,最好是将内存检测程序嵌入到UEFI BIOS的PEI阶段中;


2、如果无法定制BIOS,退而求其次,内存测试程序不要运行在OS上,因为OS本身就要占用很大一部分内存地址空间;


3、为了尽可能的最大范围的对内存进行测试,建议内存测试程序运行在UEFI的DXE的最后阶段,即BDS阶段;


4、这样我们生成的MemTest.efi内存测试程序就可以通过U盘、PCIE板卡、SD卡或者PXE网络启动;


5、对于UDIMM的检测而言,测试程序的结果需要告知用户的信息有:
 5.1、报错的64位的物理地址,比如0x2a124d83f;
 5.2、报错时,写入报错物理地址的pattern和读出的数值,比如写入的pattern是0x55555555,读出来的pattern却是0x15555555;
 5.3、这个报错的物理地址对应的内存条的卡槽位置、RANK、GROUP、BANK、ROW和COL;
 5.4、如果有测试主板的PCB资料、CPU资料、UDIMM的基板原理图,可以通过某些手段推理出报错的DQ;
 5.5、这个报错的物理地址位于哪个内存条的哪个内存颗粒上,方便维修人员替换或者维修;
 5.6、报错时,内存的实际频率、时序、电压和温度,方便用户知道内存条的测试条件和环境。

6、对于RDIMM的检测而言,测试程序的结果需要告知用户的信息有:
 5.1、报错的64位的物理地址,比如0x2a124d83f;
 5.2、报错时&#x

你可能感兴趣的:(DRAM,DDR4,DDR5,RDIMM,UDIMM)