维护DDR5内存子系统的维护装置、方法、设备和存储介质制造方法及图纸

技术编号:27315183 阅读:15 留言:0更新日期:2021-02-10 09:45
提供用于维护DDR5内存子系统的维护装置、方法、设备和存储介质,该维护装置包括:命令发送模块,向DDR5内存发送模式寄存器读取命令,该DDR5内存包括DDR5动态随机存取存储器颗粒;数据收发模块,接收DDR5动态随机存取存储器颗粒的模式寄存器的多个DQ数据;数据校验模块,对多个DQ数据进行校验,以确定多个DQ数据是否正确;以及控制逻辑,响应于确定多个DQ数据正确,基于多个DQ数据来维护DDR5内存子系统。本公开的装置有效地提高了系统的稳定性、可靠性和抗干扰性。和抗干扰性。和抗干扰性。

【技术实现步骤摘要】
维护DDR5内存子系统的维护装置、方法、设备和存储介质


[0001]本公开的实施例涉及DDR5,并且更具体地,涉及用于维护DDR5内存子系统的维护装置、方法、设备和存储介质。

技术介绍

[0002]第五代双倍数据速率同步动态随机访问存储器(Double-Data-Rate Three Synchronous Dynamic Random Access Memory,DDR5),也被称为DDR5内存,是新一代内存芯片颗粒,可用作计算机系统主内存。相比较于DDR4,DDR5工作电压降低,接口速率大幅提高,内存容量更大,接口信号减少,因而能够提供低功耗、高带宽、高容量的内存系统。

技术实现思路

[0003]需要一种能够提高DDR5内存子系统的可靠性和抗干扰性的技术。
[0004]本公开的实施例的一方面公开了一种用于维护DDR5内存子系统的维护装置。该装置包括:命令发送模块,向DDR5内存发送模式寄存器读取命令,DDR5内存包括DDR5动态随机存取存储器颗粒;数据收发模块,接收DDR5动态随机存取存储器颗粒的模式寄存器的多个DQ数据;数据校验模块,对多个DQ数据进行校验,以确定多个DQ数据是否正确;以及控制逻辑,响应于确定多个DQ数据正确,基于多个DQ数据来维护DDR5内存子系统。
[0005]例如,根据本公开的实施例提供的方法,其中,数据校验模块被配置为:将多个DQ数据分组为一个或多个DQ数据组;以及响应于一个或多个DQ数据组满足条件,确定多个DQ数据正确,条件包括以下中的一个或多个:DQ数据组内的一个或多个DQ数据的低位部分为全0或全1;DQ数据组内的DQ数据之间相同或相互反相;和DQ数据组之间的DQ数据之间相同或相互反相。
[0006]例如,根据本公开的实施例提供的方法,其中,数据校验模块还被配置为通过如下步骤来确定DQ数据组内的DQ数据之间相同或相互反相:在DQ数据组内的DQ数据之间进行异或操作;以及响应于异或操作的结果为全0或全1,确定DQ数据组内的DQ数据之间相同或相互反相,其中,异或操作包括以下中的一个或多个:在DQ数据组内的多个DQ数据的所有位之间进行异或操作;在DQ数据组内的多个DQ数据的高位部分之间进行异或操作;和在DQ数据组内的多个DQ数据的低位部分之间进行异或操作。
[0007]例如,根据本公开的实施例提供的方法,其中,数据校验模块还被配置为通过如下步骤来确定DQ数据组内的DQ数据之间相同或相互反相:判断DQ数据组内的每个DQ数据的低位部分是否为全0或全1;响应于每个DQ数据的低位部分为全0或全1,将每个DQ数据的低位部分与高位部分进行异或操作;以及响应于异或操作的结果彼此相同,确定DQ数据组内的DQ数据之间相同或相互反相。
[0008]例如,根据本公开的实施例提供的方法,其中,数据校验模块还被配置为通过如下步骤来确定DQ数据组之间的DQ数据之间相同或相互反相:响应于DQ数据组之间的任意两个DQ数据彼此之间相同或相互反相,确定DQ数据组之间的DQ数据之间相同或相互反相。
[0009]例如,根据本公开的实施例提供的方法,其中,数据校验模块被配置为通过如下步骤来将多个DQ数据分组为一个或多个DQ数据组:将多个DQ数据中的每m个DQ数据分为一组,其中m为大于或等于2的偶数。
[0010]例如,根据本公开的实施例提供的方法,还包括:计数模块,响应于确定多个DQ数据不正确,执行错误计数;以及其中,控制逻辑被配置为:响应于错误计数小于阈值n,重复执行命令发送模块的发送、数据收发模块的接收和数据校验模块的校验,其中n为正整数;和响应于错误计数大于或等于阈值n,停止执行所述重复。
[0011]例如,根据本公开的实施例提供的方法,还包括:更新模块,其中,控制逻辑被配置为:当模式寄存器读取命令为模式寄存器46、模式寄存器47读取命令时,使得更新模块通过如下步骤来维护DDR5内存子系统:基于确定为正确的多个DQ数据来更新DQ数据发送延迟,以保证DDR5内存写数据功能正确;其中,当模式寄存器读取命令是模式寄存器4读取命令时,使得更新模块通过如下步骤来维护DDR5内存子系统:基于确定为正确的多个DQ数据来更新内存刷新频率,以维护DDR5内存内数据准确性。
[0012]本公开的实施例的另一方面公开了一种用于维护DDR5内存子系统的方法。该方法包括:向DDR5内存发送模式寄存器读取命令,DDR5内存包括DDR5动态随机存取存储器颗粒;接收DDR5动态随机存取存储器颗粒的模式寄存器的多个DQ数据;对多个DQ数据进行校验,以确定多个DQ数据是否正确;以及响应于确定多个DQ数据正确,基于多个DQ数据来维护DDR5内存子系统。
[0013]例如,根据本公开的实施例提供的方法,其中,对多个DQ数据进行校验,以确定多个DQ数据是否正确,包括:将多个DQ数据分组为一个或多个DQ数据组;以及响应于一个或多个DQ数据组满足条件,确定多个DQ数据正确,条件包括以下中的一个或多个:DQ数据组内的一个或多个DQ数据的低位部分为全0或全1;DQ数据组内的DQ数据之间相同或相互反相;和DQ数据组之间的DQ数据之间相同或相互反相。
[0014]例如,根据本公开的实施例提供的方法,其中,确定DQ数据组内的DQ数据之间相同或相互反相,包括:在DQ数据组内的DQ数据之间进行异或操作;以及响应于异或操作的结果为全0或全1,确定DQ数据组内的DQ数据之间相同或相互反相。
[0015]例如,根据本公开的实施例提供的方法,其中,异或操作包括以下中的一个或多个:在DQ数据组内的多个DQ数据的所有位之间进行异或操作;在DQ数据组内的多个DQ数据的高位部分之间进行异或操作;和在DQ数据组内的多个DQ数据的低位部分之间进行异或操作。
[0016]例如,根据本公开的实施例提供的方法,其中,确定DQ数据组内的DQ数据之间相同或相互反相,包括:判断DQ数据组内的每个DQ数据的低位部分是否为全0或全1;响应于每个DQ数据的低位部分为全0或全1,将每个DQ数据的低位部分与高位部分进行异或操作;以及响应于异或操作的结果彼此相同,确定DQ数据组内的DQ数据之间相同或相互反相。
[0017]例如,根据本公开的实施例提供的方法,其中,确定DQ数据组之间的DQ数据之间相同或相互反相,包括:响应于DQ数据组之间的任意两个DQ数据彼此之间相同或相互反相,确定DQ数据组之间的DQ数据之间相同或相互反相。
[0018]例如,根据本公开的实施例提供的方法,其中,将多个DQ数据分组为一个或多个DQ数据组包括:将多个DQ数据中的每m个DQ数据分为一组,其中m为大于或等于2的偶数。
[0019]例如,根据本公开的实施例提供的方法,还包括:响应于确定多个DQ数据不正确,执行错误计数;以及响应于错误计数小于阈值n,重复执行接收和校验,其中n为正整数;和响应于错误计数大于或等于阈值n,停止执行所述重复。
[0020]例如,根据本公开的实施例提供的方法,其中,当模式寄存器读取命令为模式寄存器46、模式寄存器本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种维护DDR5内存子系统的维护装置,包括:命令发送模块,向DDR5内存发送模式寄存器读取命令,所述DDR5内存包括DDR5动态随机存取存储器颗粒;数据收发模块,接收所述DDR5动态随机存取存储器颗粒的模式寄存器的多个数据输入输出通道数据DQ数据;数据校验模块,对所述多个DQ数据进行校验,以确定所述多个DQ数据是否正确;以及控制逻辑,响应于确定所述多个DQ数据正确,基于所述多个DQ数据来维护DDR5内存子系统。2.根据权利要求1所述的维护装置,其中,所述数据校验模块被配置为:将所述多个DQ数据分组为一个或多个DQ数据组;以及响应于所述一个或多个DQ数据组满足条件,确定所述多个DQ数据正确,所述条件包括以下中的一个或多个:DQ数据组内的一个或多个DQ数据的低位部分为全0或全1;DQ数据组内的DQ数据之间相同或相互反相;和DQ数据组之间的DQ数据之间相同或相互反相。3.根据权利要求2所述的维护装置,其中,所述数据校验模块还被配置为通过如下步骤来确定DQ数据组内的DQ数据之间相同或相互反相:在DQ数据组内的DQ数据之间进行异或操作;以及响应于所述异或操作的结果为全0或全1,确定DQ数据组内的DQ数据之间相同或相互反相,其中,所述异或操作包括以下中的一个或多个:在DQ数据组内的多个DQ数据的所有位之间进行异或操作;在DQ数据组内的多个DQ数据的高位部分之间进行异或操作;和在DQ数据组内的多个DQ数据的低位部分之间进行异或操作。4.根据权利要求2所述的维护装置,其中,所述数据校验模块还被配置为通过如下步骤来确定DQ数据组内的DQ数据之间相同或相互反相:判断DQ数据组内的每个DQ数据的低位部分是否为全0或全1;响应于每个DQ数据的低位部分为全0或全1,将每个DQ数据的低位部分与高位部分进行异或操作;以及响应于所述异或操作的结果彼此相同,确定DQ数据组内的DQ数据之间相同或相互反相。5.根据权利要求2所述的维护装置,其中,所述数据校验模块还被配置为通过如下步骤来确定DQ数据组之间的DQ数据之间相同或相互反相:响应于DQ数据组之间的任意两个DQ数据彼此之间相同或相互反相,确定DQ数据组之间的DQ数据之间相同或相互反相。6.根据权利要求2所述的维护装置,其中,所述数据校验模块被配置为通过如下步骤来将所述多个DQ数据分组为一个或多个DQ数据组:将所述多个DQ数据中的每m个DQ数据分为一组,其中m为大于或等于2的偶数。7.根据权利要求1所述的维护装置,还包括:
计数模块,响应于确定所述多个DQ数据不正确,执行错误计数;以及其中,所述控制逻辑被配置为:响应于所述错误计数小于阈值n,重复执行所述命令发送模块的所述发送、所述数据收发模块的所述接收和所述数据校验模块的所述校验,其中n为正整数;和响应于所述错误计数大于或等于阈值n,停止执行所述重复。8.根据权利要求1所述的维护装置,还包括:更新模块,其中,所述控制逻辑被配置为:当所述模式寄存器读取命令为模式寄存器46、模式寄存器47读取命令时,使得所述更新模块通过如下步骤来维护DDR5内存子系统:基于确定为正确的多个DQ数据来更新DQ数据发送延迟,以保证DDR5内存写数据功能正确;其中,当所述模式寄存器读取命令是模式寄存器4读取命令时,使得所述更新模块通过如下步骤来维护DDR5内存子系统:基于确定为正确的多个DQ数据来更新内存刷新频率,以维护DDR5内存内数据准确性。9.一种维护...

【专利技术属性】
技术研发人员:李海洋
申请(专利权)人:海光信息技术股份有限公司
类型:发明
国别省市:

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

1
相关领域技术