一种内存测试装置、方法、电子设备和存储介质制造方法及图纸

技术编号:38208886 阅读:9 留言:0更新日期:2023-07-21 16:58
本申请公开了一种内存测试装置、方法、电子设备和存储介质,涉及计算机技术领域。所述装置包括:现场可编程逻辑门阵列模块、内存控制器模块以及内存模块;现场可编程逻辑门阵列模块用于接收测试端的指令,并将指令以及测试用例传递给内存控制器模块;内存控制器模块用于根据指令对待测内存进行训练和/或测试并返回训练结果和/或测试结果至现场可编程逻辑门阵列模块;现场可编程逻辑门阵列模块还用于接收训练结果和/或测试结果进行分析得到分析结果,并将训练结果和/或测试结果以及分析结果发送至测试端。本申请能够降低测试对硬件环境的需求,降低使用门槛同时降低成本。降低使用门槛同时降低成本。降低使用门槛同时降低成本。

【技术实现步骤摘要】
一种内存测试装置、方法、电子设备和存储介质


[0001]本申请涉及计算机
,特别是涉及一种内存测试装置、方法、电子设备和存储介质。

技术介绍

[0002]随着云计算技术以及相关衍生技术与产品的不断兴起和发展,互联网行业的业务量逐渐呈现一种爆发式的增长。而作为虚拟数据的物理载体,服务器节点的需求量也是随之与日俱增。
[0003]目前服务器在实际运行过程中由DRAM(Dynamic Random Access Memory,动态随机存取存储器)也即内存故障导致的整机性能降低乃至宕机的故障率远远超出我们对其的预估值。因此,针对于内存故障机器的维护及维修会消耗掉大量的人力和物力,同时也对整机造成巨大的负面影响。
[0004]为此,我们需要提高内存模组在整机系统中的可靠性。由于内存本体故障导致的内存故障实际上在完备的整机系统中占了很大一部分,但是由于其故障一般集中在DRAM端,肉眼难以观测,在理想情况下我们需要通过对应的ATE(Automatic Test Equipment,集成电路自动测试机)设备来对内存进行质量检测,筛选出可能有问题且无法修复的内存。
[0005]目前现有的内存测试方法包括如下两种方式:
[0006]1、在操作系统中执行对应的内存测试程序进行内存测试。但这种方式存在一个问题,内存测试需要改写内存中每个cell的数据,如果内存已经在被操作系统使用,操作系统会占用部分的内存,对这一部分数据进行改写会导致不可预知的错误。故而,这种测试无法实现内存的全覆盖测试;
[0007]2、在Bios(Basic Input Output System,基本输入输出系统)中执行内存测试程序进行内存测试。这种方式是在整机进入系统之前对内存进行测试,此时代码工作在Bios的ROM(Read

Only Memory,只读存储器)中,内存空间都处于未被占用的状态,故而能实现内存的全覆盖测试。但是这种方式由于代码在ROM中,运行效率低,同时由于需要在Bios阶段测试,还需要一些支持,从而增加研发成本。
[0008]目前现有技术还有结合上述两种方式进行内存测试的,将内存本体空间分为两部分,操作系统部分使用的内存空间通过Bios来实现内存测试,非操作系统使用的内存空间通过操作系统来实现内存测试。以此来实现内存测试的全覆盖性,同时又规避了单纯由Bios进行测试带来的测试效率低的弊端。然而,通过采用这样的方式,该方案中所需要的硬件环境相较于传统的内存测试工具并没有任何区别,此方案硬件成本相较于传统测试工具没有任何优化;同时,其逻辑处理复杂度变高了,这种技术还是建立在传统内存测试方案基础上的,需要一定的技术支持,从而增加研发成本;另外,此技术对于内存测试工具的空间也没有实现优化,需要建立在几乎一整个完整的服务器系统架构下,这样会导致占地空间大、带来散热以及噪声等附带问题。

技术实现思路

[0009]为了解决上述
技术介绍
中提到的至少一个问题,本申请提供了一种内存测试装置、方法、电子设备和存储介质,能够降低测试对硬件环境的需求,降低使用门槛同时降低成本。
[0010]本申请实施例提供的具体技术方案如下:
[0011]第一方面,提供一种内存测试装置,包括:
[0012]现场可编程逻辑门阵列模块、内存控制器模块以及内存模块;
[0013]所述现场可编程逻辑门阵列模块用于接收测试端的指令,并将所述指令以及测试用例传递给所述内存控制器模块;
[0014]所述内存控制器模块用于根据所述指令对待测内存进行训练和/或测试并返回训练结果和/或测试结果至所述现场可编程逻辑门阵列模块;
[0015]所述现场可编程逻辑门阵列模块还用于接收所述训练结果和/或所述测试结果进行分析得到分析结果,并将所述训练结果和/或所述测试结果以及所述分析结果发送至所述测试端。
[0016]进一步的,所述现场可编程逻辑门阵列模块与所述内存控制器模块通过快连计算通道协议通信,以使得所述内存模块对于所述现场可编程逻辑门阵列模块可见。
[0017]进一步的,所述指令包括校准指令,所述现场可编程逻辑门阵列模块还用于接收测试端的校准指令,并将所述校准指令以及测试用例传递给所述内存控制器模块;
[0018]所述内存控制器模块还用于根据所述校准指令对待测内存进行训练并返回训练结果至所述现场可编程逻辑门阵列模块;
[0019]所述现场可编程逻辑门阵列模块还用于记录满足预设规格的训练结果作为当前所述待测内存的校准数据直至下一次进行校准。
[0020]进一步的,所述内存控制器模块还用于在校准完成后将通道切换为高速串行计算机扩展总线标准通道。
[0021]进一步的,所述现场可编程逻辑门阵列模块还用于响应于检测到所述训练结果中的链路裕量满足目标预设规格,记录满足所述目标预设规格的训练结果作为当前所述待测内存的校准数据;
[0022]所述内存控制器模块还用于保存当前所述待测内存的校准数据至存储单元中。
[0023]进一步的,所述指令还包括测试指令;
[0024]在校准完成之后,所述现场可编程逻辑门阵列模块还用于接收测试端的测试指令,并将所述测试指令以及测试用例传递给所述内存控制器模块;
[0025]在校准完成之后,所述内存控制器模块还用于根据所述测试指令通过存储器内建自测试模块对待测内存进行测试并返回测试结果至所述现场可编程逻辑门阵列模块;
[0026]所述现场可编程逻辑门阵列模块还用于接收所述测试结果进行分析得到分析结果,并将所述测试结果以及所述分析结果发送至所述测试端;
[0027]其中,所述分析结果描述所述待测内存的故障情况。
[0028]进一步的,所述现场可编程逻辑门阵列模块还用于通过带外总线协议读取控温箱的温度数据并对所述控温箱下达温度控制指令;
[0029]所述带外总线协议包括两线式串行总线以及高速串行计算机扩展总线标准中的
至少一种。
[0030]第二方面,提供一种内存测试方法,包括:
[0031]通过现场可编程逻辑门阵列模块接收测试端的指令,并将所述指令以及测试用例传递给内存控制器模块;
[0032]通过所述内存控制器模块根据所述指令对待测内存进行训练和/或测试并返回训练结果和/或测试结果至所述现场可编程逻辑门阵列模块;
[0033]通过所述现场可编程逻辑门阵列模块接收所述训练结果和/或所述测试结果进行分析得到分析结果,并将所述训练结果和/或所述测试结果以及所述分析结果发送至所述测试端。
[0034]第三方面,提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述的内存测试方法。
[0035]第四方面,提供一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行所述的内存测试方法。
[0036]本申请实施例具有如下有益效果:
[0本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种内存测试装置,其特征在于,包括:现场可编程逻辑门阵列模块、内存控制器模块以及内存模块;所述现场可编程逻辑门阵列模块用于接收测试端的指令,并将所述指令以及测试用例传递给所述内存控制器模块;所述内存控制器模块用于根据所述指令对待测内存进行训练和/或测试并返回训练结果和/或测试结果至所述现场可编程逻辑门阵列模块;所述现场可编程逻辑门阵列模块还用于接收所述训练结果和/或所述测试结果进行分析得到分析结果,并将所述训练结果和/或所述测试结果以及所述分析结果发送至所述测试端。2.根据权利要求1所述的内存测试装置,其特征在于,所述现场可编程逻辑门阵列模块与所述内存控制器模块通过快连计算通道协议通信,以使得所述内存模块对于所述现场可编程逻辑门阵列模块可见。3.根据权利要求1所述的内存测试装置,其特征在于,所述指令包括校准指令,所述现场可编程逻辑门阵列模块还用于接收测试端的校准指令,并将所述校准指令以及测试用例传递给所述内存控制器模块;所述内存控制器模块还用于根据所述校准指令对待测内存进行训练并返回训练结果至所述现场可编程逻辑门阵列模块;所述现场可编程逻辑门阵列模块还用于记录满足预设规格的训练结果作为当前所述待测内存的校准数据直至下一次进行校准。4.根据权利要求3所述的内存测试装置,其特征在于,所述内存控制器模块还用于在校准完成后将通道切换为高速串行计算机扩展总线标准通道。5.根据权利要求3所述的内存测试装置,其特征在于,所述现场可编程逻辑门阵列模块还用于响应于检测到所述训练结果中的链路裕量满足目标预设规格,记录满足所述目标预设规格的训练结果作为当前所述待测内存的校准数据;所述内存控制器模块还用于保存当前所述待测内存的校准数据至存储单元中。6.根...

【专利技术属性】
技术研发人员:杨昊
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1