内存纠错方法、装置及相关设备制造方法及图纸

技术编号:37101138 阅读:12 留言:0更新日期:2023-04-01 05:01
本申请实施例提供一种内存纠错方法、装置及相关设备,应用于计算机领域。其中,该方法可以包括确定第一内存数据存在内存错误,内存错误包含在预设时间或者预设次数内无法对第一内存数据进行纠正的错误;在内存通道空闲的情况下,读取第一内存数据;根据纠错算法对第一内存数据进行内存纠错。采用本申请实施例,能够在不影响正常数据通信的情况下,修复在预设时间或者预设次数内无法进行纠正的错误,提高数据的可靠性。数据的可靠性。数据的可靠性。

【技术实现步骤摘要】
内存纠错方法、装置及相关设备


[0001]本申请涉及计算机
,尤其涉及一种内存纠错方法、装置及相关设备。

技术介绍

[0002]在计算机领域,内存数据的可靠性对整个系统的性能至关重要,特别是系统核心数据或重要的应用程序数据,其数据的可靠性直接影响整个系统的运行。为此,数据纠错技术便应运而生,通过采用纠错技术通过预定的纠错算法判定当前的数据是否为正确数据,而确定当前读取的数据的可靠性。
[0003]一般会采用错误纠正码(Error Correction Code,ECC)技术实现数据纠错,ECC纠错技术虽然具备一定的错误校验能力以及纠错能力,但是纠错能力仅适用于在预设次数或者预测时间内对内存数据进行纠错,如果没有在预设次数或者预设时间内没有对内存数据完成内存纠错,则会放弃纠正该内存数据。因此,内存数据的纠错能力有限,无法满足确保数据可靠性的应用需求。

技术实现思路

[0004]本申请实施例提供的一种内存纠错方法、装置及相关设备,能够在不影响正常数据通信的情况下,修复在预设时间或者预设次数内无法进行纠正的错误,提高数据的可靠性。
[0005]第一方面,本申请实施例提供了一种内存纠错方法,该方法可以包括:确定第一内存数据存在内存错误,所述内存错误包含在预设时间或者预设次数内无法对第一内存数据进行纠正的错误;在内存通道空闲的情况下,读取所述第一内存数据;对所述第一内存数据进行内存纠错。
[0006]上述方法可以应用于服务器,由服务器或者服务器内部的部件(例如芯片、软件模块或集成电路)来执行。
[0007]一般来说,若在预设时间或者预设次数内可以对内存数据完成纠错,则可以直接对该内存数据进行纠错并回写。若在预设时间或者预设次数内无法对内存数据进行纠错,说明该内存数据中存在的内存错误需要更多的时间或更多的次数来进行纠正。在上述情况下,现有技术是选择忽视这种内存错误,不会对存在上述内存错误的内存数据进行纠正。本申请实施例中,在不影响正常数据通信的情况下,也即在内存通道空闲的情况下,可以读取存在上述内存错误的第一内存数据,对第一内存数据进行内存纠错。因此,可以尽可能的发挥纠错能力,确保数据的可靠性。
[0008]在第一方面的一种可能的实施方式中,所述确定第一内存数据存在内存错误之前,所述在内存通道空闲的情况下,读取所述第一内存数据之后,还包括:将所述第一内存数据的第一地址存储到内存控制器的寄存器中。
[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]在第二方面的一本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种内存纠错方法,其特征在于,包括:确定第一内存数据存在内存错误,所述内存错误包含在预设时间或者预设次数内无法对所述第一内存数据进行纠正的错误;在内存通道空闲的情况下,读取所述第一内存数据;对所述第一内存数据进行内存纠错。2.根据权利要求1所述的方法,其特征在于,所述确定第一内存数据存在内存错误之前,所述在内存通道空闲的情况下,读取所述第一内存数据之后,还包括:将所述第一内存数据的第一地址存储到内存控制器的寄存器中。3.根据权利要求2所述的方法,其特征在于,所述在内存通道空闲时,读取所述第一内存数据,包括:在内存通道空闲时,根据所述寄存器中存储的所述第一地址读取所述第一内存数据。4.根据权利要求1至3任一项所述的方法,其特征在于,所述对所述第一内存数据进行内存纠错,包括:在读取的所述第一内存数据中存在第一标记的情况下,对所述第一内存数据进行内存纠错,其中,所述第一标记用于标识所述第一内存数据存在所述内存错误。5.根据权利要求1至3任一项所述的方法,其特征在于,所述对所述第一内存数据进行内存纠错,包括:在对所述第一内存数据进行内存纠错的过程中,在读取的所述第一内存数据被进行读操作或者写操作的情况下,则停止对所述第一内存数据进行内存纠错。6.根据权利要求1至5任一项所述的方法,其特征在于,所述对所述第一内存数据进行内存纠错,包括:将所述第一内存数据划分为两个或两个以上部分,每个部分包含多个所述内存颗粒对应的数据位;将第一部分中的第一数据位的进行翻转并保持翻转后的数据不变,将第二部分中的多个第二数据位依次翻转,直至翻转得到的数据校验成功;其中,所述第一部分为所述两个或两个以上部分中的任意一个,所述第二部分包括所述两个或两个以上部分中除去所述第一部分以外的部分。7.根据权利要求1至6任一项所述的方法,其特征在于,所述根据纠错算法对所述第一内存数据进行内存纠错之后,还包括:将进行内存纠错后的第一内存数据写回到所述第一地址对应的内存单元中。8.一种内存纠错装置,其特征在于,包括:处理单元,用于确定第一内存数据存在内存错误,所述内存错误包含在预设...

【专利技术属性】
技术研发人员:潘伟陈智勇
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

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

1