一种内存测试方法与流程

文档序号:18066777发布日期:2019-07-03 03:29阅读:1003来源:国知局
一种内存测试方法与流程

本发明涉及一种内存测试方法。



背景技术:

在服务器使用过程中,内存报错对系统性能和稳定性有很大影响,可纠正的ecc会占用cpu纠错资源,而不可纠正的uce错误则会直接导致系统致命性的宕机,所以提前筛选出故障内存非常重要,在测试和生产时排除掉有风险的内存,仅使用品质高的内存,可以有效保证服务器的稳定运行。

内存常见的错误有两种,一种是内存最基本的存储单元电容发生物理故障,不能完成高低电平的转换,即发生了固定型错误(safs);另一种常见错误是内存行列地址不能在规定时间内完成解码,即发生了地址解码错误(afs)。



技术实现要素:

本发明要解决的技术问题是提出一种内存测试方法,能够在测试环节通过对数据类型和地址空间的组合,在测试和生产时排除掉有风险的内存,仅使用品质高的内存,可以有效保证服务器的稳定运行,快速测试出内存错误。

本发明提供了一种内存测试方法,包括以下步骤:

步骤一,写入数据到所有内存空间;

步骤二,将步骤一写入的数据取反后间隔地写入内存空间,写入的地址按照设定步长跳变;

步骤三,读取步骤二中写入取反数据的内存空间相邻地址的数据,和步骤一中写入数据比较,不一致则报错;

步骤四,写入数据到所有内存空间;

步骤五,将步骤四写入的数据取反后间隔地写入行,写入行按照设定步长跳变;

步骤六,读取步骤五中写入取反数据的内存空间相邻上下行的数据,和步骤四中写入数据比较,不一致则报错;

步骤七,写入数据到所有内存空间;

步骤八,将步骤七写入的数据取反后间隔地写入列,写入列按照设定步长跳变;

步骤九,读取步骤八中写入取反数据的内存空间相邻左右列的数据,和步骤七中写入数据比较,不一致则报错;

优选地,在步骤一写入数据到所有内存空间之前还包括:内存初始化;

优选地,在步骤一写入数据到所有内存空间之前还包括:设定刷新时间间隔;

通常主板上使用的内存条应该叫做动态dram,其中的数据是靠电容特性存储的。由于电容会放电,要维持数据,就要不断的给它充电。给动态dram定期充电的机制就叫做数据刷新时钟电路,即内存刷新电路,内存刷新电路必须在数毫秒(ms)之内对dram刷新一次,否则数据就会丢失。本发明的刷新时间间隔选取的比正常使用时行业规定的长一些,这样可以快速测试出内存错误,排除掉有风险的内存。

优选地,在步骤一写入数据到所有内存空间之前还包括:设定写入数据的组合类型。

可以采用预先设定数据组合类型,在实际测试中也可以由测试者选择输入数据组合类型。测试常用的数据组合类型有0x01010101和0x0f0f0f0f。

本发明通过对内存空间频繁进行高低电平跳转,能够快速检查因存储单元电容发生物理故障产生的内存报错,对列(column)和行(row)设定特定的算法和时序要求,能够快速检查出地址解码错误,特定的算法是指对数据取反,然后写入列、行,时序要求指刷新时间参数加严,刷新时间间隔选取的比正常使用时行业规定的长一些。本发明能够在测试环节通过对数据类型和地址空间的组合,在测试和生产时排除掉有风险的内存,仅使用品质高的内存,可以有效保证服务器的稳定运行,快速测试出内存错误。

附图说明

图1是内存测试方法的流程图;

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互任意组合。

如图1所示,本发明一种内存测试方法,包括以下步骤:

步骤一,写入数据到所有内存空间;

步骤二,将步骤一写入的数据取反后间隔地写入内存空间,写入的地址按照设定步长跳变;

步骤三,读取步骤二中写入取反数据的内存空间相邻地址的数据,和步骤一中写入数据比较,不一致则报错;

步骤四,写入数据到所有内存空间;

步骤五,将步骤四写入的数据取反后间隔地写入行,写入行按照设定步长跳变;

步骤六,读取步骤五中写入取反数据的内存空间相邻上下行的数据,和步骤四中写入数据比较,不一致则报错;

步骤七,写入数据到所有内存空间;

步骤八,将步骤七写入的数据取反后间隔地写入列,写入列按照设定步长跳变;

步骤九,读取步骤八中写入取反数据的内存空间相邻左右列的数据,和步骤七中写入数据比较,不一致则报错;

优选地,在步骤一写入数据到所有内存空间之前还包括:内存初始化;

优选地,在步骤一写入数据到所有内存空间之前还包括:设定刷新时间间隔;

通常主板上使用的内存条应该叫做动态dram,其中的数据是靠电容特性存储的。由于电容会放电,要维持数据,就要不断的给它充电。给动态dram定期充电的机制就叫做数据刷新时钟电路,即内存刷新电路,内存刷新电路必须在数毫秒(ms)之内对dram刷新一次,否则数据就会丢失。本发明的刷新时间间隔选取的比正常使用时行业规定的长一些,这样可以快速测试出内存错误,排除掉有风险的内存。

优选地,在步骤一写入数据到所有内存空间之前还包括:设定写入数据的组合类型。

可以采用预先设定数据组合类型,在实际测试中也可以由测试者选择输入数据组合类型。测试常用的数据组合类型有0x01010101和0x0f0f0f0f,采用上述两种数据组合类型,可以快速测试出内存报错。

本发明通过对内存空间频繁进行高低电平跳转,能够快速检查因存储单元电容发生物理故障产生的内存报错,对列(column)和行(row)设定特定的算法和时序要求,能够快速检查出地址解码错误,特定的算法是指对数据取反,然后写入列、行,时序要求指刷新时间参数加严,刷新时间间隔选取的比正常使用时行业规定的长一些。



技术特征:

技术总结
本发明公开了一种内存测试方法,包括以下步骤:步骤一,写入数据到所有内存空间;步骤二,将步骤一写入的数据取反后间隔地写入内存空间,写入的地址按照设定步长跳变;步骤三,读取步骤二中写入取反数据的内存空间相邻地址的数据,和步骤一中写入数据比较,不一致则报错。本发明能够在测试环节通过对数据类型和地址空间的组合,在测试和生产时排除掉有风险的内存,仅使用品质高的内存,可以有效保证服务器的稳定运行,快速测试出内存错误。

技术研发人员:庞潇
受保护的技术使用者:苏州浪潮智能科技有限公司
技术研发日:2019.03.27
技术公布日:2019.07.02
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1