内存故障的处理方法、装置、设备及存储介质与流程
本技术涉及计算机,特别涉及内存故障的处理方法、装置、设备及存储介质。
背景技术:
1、在计算机技术领域中,作为设备核心部件的内存如果故障频率高,存储在内存中的数据经常会因为内存故障而报错。内存包括介质颗粒和数据管脚,内存故障可能是介质颗粒损坏,也可能是数据管脚故障。而不同故障的修复方式也不同,因此,如何在内存出现故障的情况下定位故障,成为亟需解决的问题。
技术实现思路
1、本技术提供了一种内存故障的处理方法、装置、设备及存储介质,以在内存出现故障的情况下定位故障,技术方案如下。
2、第一方面,提供了一种内存故障的处理方法,方法包括:获取多个第一数据中的各个第一数据的管脚信息,第一数据为内存中存储的出现错误的数据,第一数据的管脚信息指示内存中用于读写第一数据的数据管脚;统计各个数据管脚对应的第一数据的数量;在第一管脚对应的第一数据的数量不小于第一阈值的情况下,根据第一管脚确定内存的故障信息,第一管脚为统计的任意一个数据管脚,故障信息指示内存中发生故障的数据管脚。
3、对错误的第一数据进行数据管脚定位,确定各个数据关键对应的第一数据的数量,如果数据管脚对应的第一数据的数量大于第一阈值,说明通过该数据管脚读取的多个数据出现错误,该数据管脚的故障概率高,将故障概率高的数据管脚作为出现故障的数据管脚,准确性高,能够检测出是哪个数据管脚出现故障,检测精度高。
4、在一种可能的实现方式中,获取多个第一数据中的各个第一数据的管脚信息,包括:获取第一数据的第一位置信息和第二位置信息,第一位置信息指示内存中用于存储第一数据的介质颗粒,介质颗粒对应多个数据管脚,第二位置信息用于确定介质颗粒对应的多个数据管脚中的一个数据管脚;根据第一位置信息确定存储第一数据的介质颗粒,根据第二位置信息从存储第一数据的介质颗粒对应的多个数据管脚中,确定第一数据的数据管脚,得到第一数据的管脚信息。先基于第一位置信息定位第一数据位于的内存颗粒,将数据管脚从整个内存的数据管脚缩小到该第一数据位于的内存颗粒连接的数据管脚,再基于第二位置信息从该内存颗粒对应的多个数据管脚中确定读写该第一数据的数据管脚,通过缩小定位范围,提高了确定效率。
5、在一种可能的实现方式中,第一数据的第一位置信息包括存储第一数据的介质颗粒的物理地址或编号中的至少一种。本技术不限定第一位置信息,通用度高。
6、在一种可能的实现方式中,第二位置信息包括校验位信息或数据位中的至少一种,校验位信息指示校验位数据对应的数据管脚,校验位数据指示通过对应的数据管脚读写的数据是否出现错误,数据位指示第一数据在多个数据的位置,多个数据为并行从内存中读写的数据,第一数据的数据管脚和第一数据在多个数据的位置之间存在对应关系。本技术不限定第二位置信息,可以是校验位信息或数据位中的一种或多种,灵活度高。
7、在一种可能的实现方式中,第一数据存储在内存中的介质颗粒的内存单元,根据第一管脚确定内存的故障信息,包括:检测内存中存储的至少一个第二数据,第二数据通过第一管脚读写,且第二数据和第一管脚对应的第一数据位于不同的内存单元;在检测结果指示出现错误的第二数据的数量不小于第二阈值的情况下,确定故障信息指示发生故障的数据管脚为第一管脚。由于第一管脚除了会向第一数据的内存单元读写数据,还会向其他的内存单元读写数据,如果第一管脚故障,通过该第一管脚读写其他内存单元的第二数据也会存在错误,通过检测存储在其他的内存单元的第二数据,提高准确性。
8、在一种可能的实现方式中,第二数据位于的内存单元和第一管脚对应的第一数据位于的内存单元为不同列组(rank)中的内存单元;或者,第二数据位于的内存单元和第一管脚对应的第一数据位于的内存单元为不同存储体(bank)中的内存单元,不同bank位于相同rank;或者,第二数据位于的内存单元和第一管脚对应的第一数据位于的内存单元为不同行(row)中的内存单元,不同row位于相同bank。本技术不限定第二数据位于的内存单元,通用度高。且本技术提供的方法可适用于多种结构的内存,例如,如果内存中包括多个rank,则可以将不同rank中的内存单元中的数据作为第二数据,如果内存中不包括多个rank,则可以读取位于不同bank或者相同bank中的不同row的内存单元。
9、在一种可能的实现方式中,检测内存中存储的至少一个第二数据之前,还包括:获取内存的业务影响参数,业务影响参数用于描述内存中的第一数据出现错误对业务的影响程度;在业务影响参数满足检测条件的情况下,执行检测第二数据的操作。由于第二数据和第一数据是通过相同的数据管脚读写,因此,第二数据对业务的影响程度可能和第一数据对业务的影响程度类似,基于业务影响参数和检测条件衡量检测第二数据对业务的影响程度,选择性地执行检测第二数据的过程,灵活度高。
10、在一种可能的实现方式中,业务影响参数包括错误类型,错误类型指示第一数据出现的错误为可纠正错误(corrected error,ce)或不可纠正错误(uncorrected error,uce);业务影响参数满足检测条件包括错误类型指示第一数据出现的错误为ce。基于错误类型实现对业务影响程度的判断,判断过程简单,操作复杂度低。
11、在一种可能的实现方式中,获取内存的业务影响参数之后,还包括:在业务影响参数不满足检测条件的情况下,确定故障信息指示发生故障的数据管脚为第一管脚。如果业务影响参数不满足检测条件,说明从内存中读写第二数据对业务的影响程度高,继续读写第二数据可能会造成业务中断,此种情况下,可以取消检测,减轻对业务的影响。
12、第二方面,提供了一种内存故障的处理装置,装置包括多个功能模块,多个功能模块用于执行第一方面或第一方面中任一种可能的实现方式中的方法。
13、在一种可能的实现方式中,多个功能模块包括获取模块、统计模块和确定模块。其中,获取模块,用于获取多个第一数据中的各个第一数据的管脚信息,第一数据为内存中存储的出现错误的数据,第一数据的管脚信息指示内存中用于读写第一数据的数据管脚;统计模块,用于统计各个数据管脚对应的第一数据的数量;确定模块,用于在第一管脚对应的第一数据的数量不小于第一阈值的情况下,根据第一管脚确定内存的故障信息,第一管脚为统计的任意一个数据管脚,故障信息指示内存中发生故障的数据管脚。
14、在一种可能的实现方式中,获取模块,用于获取第一数据的第一位置信息和第二位置信息,第一位置信息指示内存中用于存储第一数据的介质颗粒,介质颗粒对应多个数据管脚,第二位置信息用于确定介质颗粒对应的多个数据管脚中的一个数据管脚;根据第一位置信息确定存储第一数据的介质颗粒,根据第二位置信息从存储第一数据的介质颗粒对应的多个数据管脚中,确定第一数据的数据管脚,得到第一数据的管脚信息。
15、在一种可能的实现方式中,第一数据的第一位置信息包括存储第一数据的介质颗粒的物理地址或编号中的至少一种。
16、在一种可能的实现方式中,第二位置信息包括校验位信息或数据位中的至少一种,校验位信息指示校验位数据对应的数据管脚,校验位数据指示通过对应的数据管脚读写的数据是否出现错误,数据位指示第一数据在多个数据的位置,多个数据为并行从内存中读写的数据,第一数据的数据管脚和第一数据在多个数据的位置之间存在对应关系。
17、在一种可能的实现方式中,第一数据存储在内存中的介质颗粒的内存单元,确定模块,用于检测内存中存储的至少一个第二数据,第二数据通过第一管脚读写,且第二数据和第一管脚对应的第一数据位于不同的内存单元;在检测结果指示出现错误的第二数据的数量不小于第二阈值的情况下,确定故障信息指示发生故障的数据管脚为第一管脚。
18、在一种可能的实现方式中,第二数据位于的内存单元和第一管脚对应的第一数据位于的内存单元为不同rank中的内存单元;或者,第二数据位于的内存单元和第一管脚对应的第一数据位于的内存单元为不同bank中的内存单元,不同bank位于相同rank;或者,第二数据位于的内存单元和第一管脚对应的第一数据位于的内存单元为不同row中的内存单元,不同row位于相同bank。
19、在一种可能的实现方式中,确定模块,还用于获取内存的业务影响参数,业务影响参数用于描述内存中的第一数据出现错误对业务的影响程度;在业务影响参数满足检测条件的情况下,执行检测第二数据的
20、在一种可能的实现方式中,业务影响参数包括错误类型,错误类型指示第一数据出现的错误为ce或uce;业务影响参数满足检测条件包括错误类型指示第一数据出现的错误为ce。
21、在一种可能的实现方式中,确定模块,还用于在业务影响参数不满足检测条件的情况下,确定故障信息指示发生故障的数据管脚为第一管脚。
22、第三方面,提供了一种处理设备,该设备包括处理器,处理器用于加载并执行至少一条指令,以使处理设备执行第一方面或第一方面中任一种可能的实施方式中的方法。
23、在一种可能的实现方式中,该设备包括存储器,存储器和处理器耦合,存储器存储有至少一条指令。
24、第四方面,提供了一种计算机可读存储介质,计算机可读存储介质中存储有至少一条指令,指令由处理器加载并执行以实现第一方面或第一方面中任一种可能的实现方式中的内存故障的处理方法。
25、第五方面,提供了一种计算机程序(产品),计算机程序(产品)包括计算机程序/指令,计算机程序/指令被处理器执行,以使计算机实现第一方面或第一方面中任一种可能的实现方式中的内存故障的处理方法。
26、第六方面,提供了一种通信装置,该装置包括:收发器、存储器和处理器。其中,该收发器、该存储器和该处理器通过内部连接通路互相通信,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,以控制收发器接收信号,并控制收发器发送信号,并且当该处理器执行该存储器存储的指令时,使得该处理器执行第一方面或第一方面中任一种可能的实施方式中的方法。可选地,该通信装置可以是芯片。
27、可选地,处理器为一个或多个,存储器为一个或多个。
28、可选地,存储器可以与处理器集成在一起,或者存储器与处理器分离设置。
29、在具体实现过程中,存储器可以为非瞬时性(non-transitory)存储器,例如只读存储器(read only memory,rom),其可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本技术对存储器的类型以及存储器与处理器的设置方式不做限定。
30、第七方面,提供了一种芯片,包括处理器,用于从存储器中调用并运行存储器中存储的运行程序指令或代码,使得安装有该芯片的通信设备执行上述各方面中的方法。
31、第八方面,提供另一种芯片,包括:输入接口、输出接口、处理器和存储器,输入接口、输出接口、处理器以及存储器之间通过内部连接通路相连,该处理器用于执行存储器中的代码,当代码被执行时,处理器用于执行上述各方面中的方法。
32、应当理解的是,上述第二方面或第六方面提及的装置可以为第七方面或第八方面提及的芯片,还可以为第三方面的处理设备。本技术的第二方面至第八方面的技术方案及对应的可能的实现方式所取得的有益效果可以参见上述对第一方面及其对应的可能的实现方式的技术效果,此处不再赘述。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com