CN117707836A - 数据传输通道配置的生成方法、内存系统、电子设备及存储介质 - Google Patents
数据传输通道配置的生成方法、内存系统、电子设备及存储介质 Download PDFInfo
- Publication number
- CN117707836A CN117707836A CN202311717590.5A CN202311717590A CN117707836A CN 117707836 A CN117707836 A CN 117707836A CN 202311717590 A CN202311717590 A CN 202311717590A CN 117707836 A CN117707836 A CN 117707836A
- Authority
- CN
- China
- Prior art keywords
- data
- bit
- channel
- overturned
- transmission channel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 154
- 238000000034 method Methods 0.000 title claims abstract description 75
- 230000008439 repair process Effects 0.000 claims abstract description 108
- 238000012795 verification Methods 0.000 claims abstract description 26
- 230000004044 response Effects 0.000 claims abstract description 3
- 238000001514 detection method Methods 0.000 claims description 36
- 238000012546 transfer Methods 0.000 claims description 14
- 230000007306 turnover Effects 0.000 claims description 14
- 238000004364 calculation method Methods 0.000 claims description 12
- 230000008569 process Effects 0.000 abstract description 19
- 239000008187 granular material Substances 0.000 description 15
- 239000002245 particle Substances 0.000 description 9
- 238000012545 processing Methods 0.000 description 5
- 238000012937 correction Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000013524 data verification Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1044—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices with specific ECC/EDC distribution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1064—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in cache or content addressable memories
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明实施例公开的数据传输通道配置的生成方法、内存系统、电子设备及存储介质,涉及内存通道修复技术领域,便于在芯片使用过程中实现数据通道的修复。所述方法包括:根据所述数据在多个数据传输通道进行传输的校验结果,判断所述数据是否发生数据位的翻转;响应于所述数据位发生翻转,根据出现翻转的数据位确定目标数据传输通道,所述目标传输通道至少用于传输所述出现翻转的数据位;形成冗余数据通道替换目标数据传输通道的通道修复配置。本发明适用于芯片数据通道修复场景中。
Description
技术领域
本发明涉及内存通道修复技术领域。尤其是涉及一种数据传输通道配置的生成方法、内存系统、电子设备及存储介质。
背景技术
高带宽内存(High Bandwidth Memory,HBM)是一种新型的内存系统,由于具有较高的数据读写带宽和数据存储能力,被广泛应用于需要大容量、高速访问和能效优化的场景中,如图形处理器、网络交换与转发设备、高性能计算和人工智能等场景中。
随着HBM的快速发展和大量使用,一些问题也开始浮现,比如,传输通道损坏。在芯片使用过程中,如果出现不稳定DQ(数据传输线),即数据传输通道故障,需要返厂重新测试并生成相关修复信息。
发明内容
有鉴于此,本发明实施例提供一种数据传输通道配置的生成方法、内存系统、电子设备及存储介质,可以在芯片使用过程中生成数据传输通道配置。
为达到上述发明目的,采用如下技术方案:
本申请实施例提供一种数据传输通道配置的生成方法,所述数据传输通道用于在内存和内存控制器之间传输数据,所述方法包括:
根据所述数据在多个数据传输通道进行传输的校验结果,判断所述数据是否发生数据位的翻转;
响应于所述数据位发生翻转,根据出现翻转的数据位确定目标数据传输通道,所述目标传输通道至少用于传输所述出现翻转的数据位;
形成冗余数据通道替换目标数据传输通道的通道修复配置。
根据本申请实施例的一种具体实现方式,所述根据出现翻转的数据位确定目标数据传输通道,包括:获取ECC检错结果;所述ECC检错结果中指示是数据位或校验码发生翻转;
根据ECC检错结果,判断是否是数据位发生翻转;
若是,则根据出现数据翻转的数据位确定出对应的目标数据传输通道。
根据本申请实施例的一种具体实现方式,所述根据出现翻转的数据位确定目标数据传输通道,包括:获取ECC检错结果;所述ECC检错结果中指示是数据位或校验码发生翻转,以及指示发生翻转的字节位;
根据所述发生翻转的字节位判断是否为单个字节位发生翻转;
若是,则继续根据ECC检错结果指示的是数据位或校验码发生翻转,判断是否是数据位发生翻转;
若是,则根据出现数据翻转的数据位确定出对应的目标数据传输通道。
根据本申请实施例的一种具体实现方式,所述内存控制器通过所述数据传输通道执行写入数据至内存的指令;
所述根据出现翻转的数据位确定目标数据传输通道,包括:回读写入的数据;
将回读得到的数据与先前写入的原始数据进行异或运算,得到出现翻转的数据位;
根据出现翻转的数据位计算确定出对应的目标数据传输通道。
根据本申请实施例的一种具体实现方式,所述内存控制器通过所述数据传输通道执行从所述内存中读取数据的指令;
所述根据出现翻转的数据位确定目标数据传输通道,包括:
回读出错地址,获取缓存的数据;
对所述缓存的数据进行错误校验;
若未出现校验错误,则将该缓存的数据与先前读取的原始数据进行异或运算,得到出现翻转的数据位;
根据所述出现翻转的数据位计算确定出对应的目标数据传输通道。
根据本申请实施例的一种具体实现方式,所述形成冗余数据通道替换目标数据传输通道的通道修复配置,包括:根据HBM通道修复协议生成所述通道修复配置。
第二方面,本申请还实施例提供一种内存系统,包括:
总数据通道,与内存和内存控制器连接,并包括:数据传输通道和冗余数据通道,所述数据传输通道用于在内存和内存控制器之间传输数据;
通道替换配置模块,包括:
翻转定位模块,用于在所述数据在多个所述数据传输通道进行传输的校验结果为数据位发生翻转的情况下,确定数据位发生翻转的数据传输通道;
通道替换配置生成模块,用于形成冗余数据通道替换目标数据传输通道的通道修复配置。
根据本申请实施例的一种具体实现方式,所述翻转定位模块包括:
判断模块,根据所述数据在多个数据传输通道进行传输的校验结果,判断所述数据是否发生数据位的翻转;
定位模块,响应于所述数据位发生翻转,根据出现翻转的数据位确定目标数据传输通道,所述目标传输通道至少用于传输所述出现翻转的数据位。
根据本申请实施例的一种具体实现方式,所述内存系统包括所述内存控制器,所述内存控制器包括:校验模块,根据读回的数据计算发生翻转的数据或校验码的翻转位;所述翻转位用于指示是数据位发生翻转或校验码发生翻转;
所述定位模块,获取校验模块的计算结果,判断是否是数据位发生翻转;
若是,则根据出现数据翻转的数据位确定出对应的目标数据传输通道。
根据本申请实施例的一种具体实现方式,所述内存系统包括所述内存控制器,所述内存控制器包括:校验模块,根据读回的数据计算发生翻转的数据或校验码的翻转位,所述翻转位中指示是数据位或校验码发生翻转,以及指示发生翻转的字节位;
所述定位模块,根据所述发生翻转的字节位判断是否为单个字节位发生翻转;
若是,则继续根据校验模块计算结果中指示的是数据位或校验码发生翻转,判断是否是数据位发生翻转;
若是,则根据出现数据翻转的数据位确定出对应的目标数据传输通道。
根据本申请实施例的一种具体实现方式,所述内存控制器通过所述数据传输通道执行写入数据至内存的指令;
所述定位模块,具体用于:回读写入的数据;
将回读得到的数据与先前写入的原始数据进行异或运算,得到出现翻转的数据位;
根据出现翻转的数据位计算确定出对应的目标数据传输通道。
根据本申请实施例的一种具体实现方式,所述内存控制器通过所述数据传输通道执行从所述内存中读取数据的指令;
所述定位模块,具体用于:回读出错地址,获取缓存的数据;
对所述缓存的数据进行错误校验;
若未出现校验错误,则将该缓存的数据与先前读取的原始数据进行异或运算,得到出现翻转的数据位;
根据所述出现翻转的数据位计算确定出对应的目标数据传输通道。
第三方面,本申请还实施例提供一种电子设备,包括:
一个或者多个处理器;
存储器;
所述存储器中存储有一个或者多个可执行程序代码,所述一个或者多个处理器读取存储器中存储的可执行程序代码,来运行与可执行程序代码对应的程序,以用于执行第一方面任一所述的方法。
第四方面,本申请还实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以用于执行第一方面任一所述的方法。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本申请提供的数据传输通道配置的生成方法一实施例流程示意图。
图2为本申请实施例提供的内存系统一实施例结构示意框图。
图3为本申请提供的数据传输通道配置的生成方法再一实施例流程示意图。
图4是本申请提供的数据传输通道配置的生成方法又一实施例流程示意图;
图5是本申请提供的数据传输通道配置的生成方法一实施例流程示意图;
图6是本申请提供的数据传输通道配置的生成方法又一实施例流程示意图;
图7是本申请提供的数据传输通道配置的生成方法再一实施例流程示意图
图8是本申请内存系统一实施例结构示意框图;
图9是本申请电子设备一个实施例的结构示意图。
具体实施方式
下面结合附图对本发明实施例进行详细描述。
应当明确,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
为帮助理解本申请技术方案的创新主旨所在,以内存系统为HBM为例,对一些相关的技术进行简要介绍如下:
HBM是一种新型的内存系统,由于具有较高的数据读写带宽和数据存储能力,被广泛应用于需要大容量、高速访问和能效优化的场景中,如图形处理器、网络交换与转发设备、高性能计算和人工智能等场景中。
在数据通道修复领域中,DQ是用于在HBM和处理器之间传输数据的物理的串行数据线。HBM中的DQ可以分为两类:数据DQ(本方案主要处理的是数据DQ的修复)和ECC DQ。数据DQ用于传输数据,ECC DQ用于传输错误校验码(Error correction code,ECC)。其中,ECC是一种用于检测和纠正数据传输过程中出现的错误的技术。
在HBM的使用过程中,由于各种原因,可能导致DQ出现故障或损坏,从而影响数据的传输。例如,由于HBM的工作频率较高,DQ的信号质量可能会受到PVT(Process、Voltage和Temperature)的环境变化,以及信号间串扰的影响,导致DQ上的数据出现翻转(flip)。
数据翻转是指数据的某一位或多位由0变为1,或由1变为0,从而导致数据的错误。数据翻转可能会导致HBM的运行异常,数据的丢失或损坏,甚至系统的崩溃。
为了解决上述问题,本申请实施例至少提供了一种内存系统通道自动修复的方法,可以在芯片使用过程中生成数据传输通道配置,从而便于在芯片使用过程中实现数据通道的修复。
图1为本申请实施例提供的数据传输通道配置的生成方法的一实施例流程示意图,应用于电子设备,电子设备可以是内存系统,但不限于此,图2示意了本申请内存系统一实施例结构示意框图;所述数据传输通道用于在内存和内存控制器之间传输数据,具体的,所述方法S100包括:
S110、根据所述数据在多个数据传输通道进行传输的校验结果,判断所述数据是否发生数据位的翻转。
如图2所示,每个数据传输通道包括多个数据信号线(DQ bus)和一个校验信号线(ECC)。
本申请实施例中,传输数据可以是执行写入操作或读取操作。写入操作是指将数据从处理器写入到HBM内存颗粒中,读取操作是指将数据从HBM内存颗粒读取到处理器中。
具体的,如图2所示,内存控制器:负责接收和处理上层接口下发的来自处理器的读命令、写命令;对于写入操作,内存控制器将写命令和写数据通过CA(Command/Address)和DQ(数据I/O通道)下发传输至内存颗粒(即前述内存),内存颗粒收到后将数据存储以供读取。对于读取操作,内存控制器将读命令和读地址经过CA通道发送到内存颗粒,内存颗粒通过DQ返回存储的数据到内存控制器;内存控制器再将数据经由上层接口返回至处理器。
本申请实施例中,所述数据在多个数据传输通道进行传输的校验结果可以是parity校验结果。parity校验结果是指通过parity技术对DQ传输的数据进行校验的结果,可以用于判断数据是否出现错误。所述数据位的翻转用于指示数据位错误。数据翻转是指数据的某一位或多位由0变为1,或由1变为0,从而导致数据的错误。数据翻转可以分为单个数据位翻转和多个数据位翻转。单个数据位翻转是指数据中只有一位发生翻转,即俗称单bit翻转,多数据位翻转是指数据中有多个bit位发生翻转。
parity技术是一种用于检测数据传输过程中出现的奇偶错误的技术,即数据中的1的个数是否为奇数或偶数。parity技术可以通过在数据中添加一个额外的位,来实现对数据的校验。例如,若采用偶校验,则在数据中添加一个位,使得数据中的1的个数为偶数;若采用奇校验,则在数据中添加一个位,使得数据中的1的个数为奇数。当数据在传输过程中出现奇偶错误时,即数据中的某一位或多位由0变为1,或由1变为0,从而导致数据中的1的个数与预期的奇偶性不符,可以通过parity校验结果发现该错误。
当然,还可以通过CRC(循环冗余校验码)或其他校验方法对数据校验的结果。
S120、响应于所述数据位发生翻转,根据出现翻转的数据位确定目标数据传输通道,所述目标传输通道至少用于传输所述出现翻转的数据位;
本实施例中,若根据parity校验结果判断数据出现错误,表明数据传输通道中传输的数据出错,由于每个数据传输通道包括多个DQ和一个ECC,因此,在该阶段尚不清楚是DQ出错,还是ECC出错。因此,可以进一步获取ECC检错结果,根据ECC检错结果,判断数据翻转是否发生在DQ上,以及确定出现翻转的数据位。然后,根据出现翻转的数据位确定出是那一个数据传输通道出现翻转错误。其中,ECC检错结果中指示有用于判断数据出现错误的类型和数据位。ECC技术是一种用于检测和纠正数据传输过程中出现的错误的技术。ECC技术可以通过在数据中添加校验码,来实现对数据的检错和纠错。
S130、形成冗余数据通道替换目标数据传输通道的通道修复配置。
具体的,步骤S130包括:根据配置的至少一个冗余数据通道及其类型,确定出目标冗余数据通道替换至少一个发生数据翻转的目标数据传输通道的通道修复配置。
本申请实施例中,所述冗余数据通道是指预留的用于替换故障数据通道的数据通道,可以提高HBM的可靠性和容错性。所述冗余数据通道可以是全局冗余数据通道或局部冗余数据通道。全局冗余数据通道是指可以替换任何一个故障数据通道的数据通道,局部冗余数据通道是指只能替换某一类别的故障数据通道的数据通道。例如,HBM中的数据DQ可以按照其所属的通道(channel)和组(group)进行分类,每个通道包含若干个组,每个组包含若干个数据DQ。全局冗余数据通道可以替换任何一个通道或组中的故障数据DQ,局部冗余数据通道只能替换同一通道或组中的故障数据DQ。
所述数据通道类型可用于指示数据通道的功能和属性。例如,HBM中的数据通道类型可以是数据DQ,也可以是ECC DQ,数据DQ用于传输数据,ECC DQ用于传输校验码。冗余数据通道的类型应与故障数据通道的类型相同,才能进行替换。
当然,在本实施例中,主要是针对数据DQ,因此,可以为数据DQ设置冗余数据通道,这样,就不需要确定冗余数据通道类型。参看图4或图5所示,在一些实施例中,如果确定出发生故障的数据通道为数据DQ,则进行修复处理。
所述通道修复配置是指用于指示数据通道的修复方式的配置信息,可以包括故障数据通道的位置、冗余数据通道的位置、数据通道的类型等信息。通道修复配置可以采用HBM通道修复协议生成,HBM通道修复协议是一种用于实现HBM数据通道的修复的协议,可以定义通道修复的规则和格式。
具体的,在形成所述通道修复配置之后,将所述通道修复配置下发至内存控制器和HBM内存颗粒,以使内存控制器和HBM内存颗粒使用冗余DQ替换出现翻转的数据DQ,从而完成内存系统的数据通道修复。
本申请实施例中,通过上述方法步骤S110至S130,当HBM中的某些DQ发生故障时,可以在芯片使用过程中生成数据传输通道配置,从而便于在芯片使用过程中根据所述数据传输通道配置实现数据通道的修复,保证数据传输的准确性和效率,避免对HBM进行返厂重新测试或更换,节省成本和时间。
具体的,基于HBM通道修复协议的冗余数据通道替换方法,可以包括:
预先配置一定数量的冗余数据通道,包括冗余的数据(DQ)通道;
在内存控制器中设置一个通道修复寄存器,用于存储通道修复配置信息,包括目标数据传输通道的编号和对应的冗余数据通道的编号;
在内存控制器中设置一个通道修复使能信号,用于控制通道修复功能的开启和关闭;
当通道修复单元,检测到发生翻转的目标数据传输通道,并生成通道修复配置之后,将所述通道修复使能信号置为有效,并将所述通道修复配置发送至所述通道修复寄存器;
根据通道修复寄存器中的通道修复配置信息,通过软件或硬件的方式,将目标数据传输通道与冗余数据通道进行交换,以实现数据通道修复,使得内存控制器和内存颗粒之间的数据传输通过冗余数据通道进行。
本发明实施例中,可以实现基于HBM通道修复协议的冗余数据通道替换,提高内存的可靠性和性能。本方法可以应用于HBM系统,也可以扩展到其他类型的数据传输通道,例如总线或网络等。
请参看图3所示,在一些实施例中,在步骤S120中,所述根据出现翻转的数据位确定目标数据传输通道,包括:获取ECC检错结果;所述ECC检错结果中指示是数据位或校验码发生翻转;根据ECC检错结果,判断是否是数据位发生翻转;若是,则根据出现数据翻转的数据位确定出对应的目标数据传输通道。
本实施例中,ECC(Error Checking and Correction)是一种差错检测和修正的算法。ECC检错结果是指ECC模块通过特定的算法,对内存中的数据和校验码进行比较,判断是否有错误发生,以及错误的位置和类型。ECC检错结果中指示是数据位或校验码发生翻转,即数据位或校验码的值从0变为1,或从1变为0。如果ECC检错结果中只有校验码发生翻转,而数据位没有发生翻转,说明数据本身是正确的,只是校验码被干扰了,此时不需要进行内存通道修复,只需要重新生成正确的校验码即可。如果ECC检错结果中有数据位发生翻转,说明数据本身已经被损坏,此时需要进行数据通道修复,以恢复数据的正确性。
可以理解的是,数据传输通道由多个数据线组成,每个数据线负责传输一位数据。因此,可以根据出现数据翻转的数据位,确定出对应的数据线,进而确定出对应的目标数据传输通道。由此,本发明实施例提供的方案,能够根据出现翻转的数据位确定目标数据传输通道,提高定位出现错误的目标数据传输通道的精确度和效率;
参看图4所示,在另一些实施例中,在步骤S120中,所述根据出现翻转的数据位确定目标数据传输通道,包括:获取ECC检错结果;所述ECC检错结果中指示是数据位或校验码发生翻转,以及指示发生翻转的字节位;根据所述发生翻转的字节位判断是否为单个字节位(bit)发生翻转;若是,则继续根据ECC检错结果指示的是数据位或校验码发生翻转,判断是否是数据位发生翻转;若是,则根据出现数据翻转的数据位确定出对应的目标数据传输通道。
本实施例中,ECC检错结果中,除了指示是数据位或校验码发生翻转之外,还指示了发生翻转的字节位,以根据发生翻转的字节位的编号判断是单个字节位发生错误还是多个字节位发生错误,便于进一步判断出现错误是否在本实施例提供的技术方案的修复范围内。
如果根据ECC检错结果指示的发生翻转的字节位,指示出只有一个字节位(单bit)发生翻转,这种情况下,错误可能是由于数据线(DQ)故障引起的,属于本发明可以修复的范围,则进一步确定出发生翻转的目标数据传输通道,以进行修复。
如果ECC检错结果中有多个字节位(多bit)发生翻转,即存在多个数据位发生翻转,这种情况下,错误可能是由于内存单元(cell)的故障引起的,不在本申请可以修复范围内,则结束通道修复流程。
因此,本发明实施例提供的方案,能够根据ECC检错结果指示发生翻转的字节位,进一步判断错误的类型和范围;根据所述发生翻转的字节位判断是否为单个字节位(bit)发生翻转,以选择是否继续进行修复,如果是单bit翻转则可以进一步处理以进行通道修复,从而可以有效地减少不必要的内存通道修复的时间和资源消耗,提高内存通道修复的成功率和可靠性。
其中,参看图5,该实施例与图4示意的实施例执行的步骤S120基本相同,所不同之处,判断是否为单个字节位发生翻转是在获取ECC检测结果之前。因此,判断是否是单bit发生翻转可以在判断数据翻转是否发生在数据通道的步骤之前执行,也可以在其后执行。如果不是单bit翻转,可以结束流程。
本发明实施例中,可以根据数据线与数据位的对应关系,可以定位出数据翻转发生在第几根数据线上,比如DQ0或DQ3上。也就是获得目标数据传输通道。
为帮助理解本发明实施例提供的技术方案,参看图4所示,以在完成通道修复过程中,参与的多方交互场景为例,主要是以HBM内存控制器从内存颗粒中读取数据时,对该实施例提供的技术方案详细说明执行流程如下:在内存颗粒返回到内存控制器时,通道修复装置(用于执行本发明实施例提供的通道修复方法的装置)判断是否出现parity错误,若parity校验结果显示出错,则ECC模块(HBM内存控制器中的组成部分)根据读回的数据计算数据或校验码翻转的位置,通道修复装置获取ECC模块的计算结果,根据该计算结果判断是否为单bit翻转;若是,则继续判断是否出现DQ翻转,如果出现,则根据ECC原理计算出现单个数据位翻转的目标数据传输通道,之后,根据目标数据传输通道,确定出与之对应的冗余数据通道,以形成冗余数据通道替换目标数据传输通道的通道修复配置,下发修复配置至内存控制器及内存颗粒,以使完成通道修复。
参看图5,对于在另一具体示例中,以内存颗粒写入数据时,对该实施例提供的技术方案详细说明执行流程如下:在内存颗粒写入数据时,通道修复装置(用于执行本发明实施例提供的通道修复方法的装置)判断是否出现parity错误,若parity校验结果显示出错,则自动修复装置发送读命令,读取刚才写入的内容,其中,写入的内容包括:写入的数据和ECC校验结果信息;通道修复装置判断是否为单bit翻转;若是,则ECC模块(HBM内存控制器中的组成部分)根据读回的数据计算数据或校验码翻转的位置,自动修复装置根据ECC计算结果,判断是否是数据位出现翻转,如果是,则根据ECC计算结果计算出现数据翻转的数据通道位置,之后,根据目标数据传输通道,确定出与之对应的冗余数据通道,以形成冗余数据通道替换目标数据传输通道的通道修复配置,下发修复配置至内存控制器及内存颗粒,以使完成通道修复。
除了前述在对内存执行读取或写入操作时,可以通过ECC模块定位翻转DQ。具体的,当数据出现翻转后,由ECC原理可计算出现单bit翻转的具体位置,翻转可能出现在数据和ECC校验码(如果是校验码,结束处理流程)上。对于翻转出现数据上的情况,由于数据在DQ上是以burst方式顺序传输,在获取ECC模块计算得到的数据翻转的bit位后,将ECC数据翻转的bit位置n除以总线位宽w,余数便是翻转的DQ编号,编号从0开始。
此外,自动修复装置还可以通过DQ翻转定位模块主动发出读命令判断数据翻转。
因此,参看图6所示,在又一些实施例中,所述内存控制器通过所述数据传输通道执行写入数据至内存的指令;在步骤S120中,根据出现翻转的数据位确定目标数据传输通道,包括:
S121、回读写入的数据;
在内存控制器通过数据传输通道执行写入数据至内存的指令后,为了检测是否有数据错误,内存控制器会再次通过数据传输通道读取刚刚写入的数据,并将其暂存到内存控制器的缓冲区或其他可用的内存空间。本申请中,配置通道修复装置用于执行该回读指令,当然,内存控制器也可以执行。
S123、将回读得到的数据与先前写入的原始数据进行异或运算,得到出现翻转的数据位;
本实施例中,将回读得到的数据与先前写入的原始数据进行逐位的异或运算,得到一个结果数据。如果结果数据中某一位为1,说明该位在写入过程中发生了翻转,即出现了数据位错误;如果结果数据中某一位为0,说明该位在写入过程中没有发生翻转,即数据正确。通过这种方式,可以得到出现翻转的数据位和数量。
S125、根据出现翻转的数据位计算确定出对应的目标数据传输通道;
该步骤与前文中确定目标数据传输通道的方案相同,就不再赘述。
继续参看图6在一些实施例中,在步骤S125之前,还包括步骤S124、判断发生翻转的数据位是否是单bit数据位。
示例性地,应用发起写操作时,写命令将数据和ECC校验码写入颗粒后,本专利的自动修复装置根据parity是否检测到错误,判断数据在DQ上传输时是否出现翻转;如果出现翻转,表明写入HBM中数据和ECC校验码存在不匹配情况,此时自动修复装置自动发起该地址的回读请求,然后根据ECC检错结果,判断数据传输过程中发生翻转的数据;如果翻转未发生在DQ或者出现了多bit翻转导致ECC无法定位翻转位置,则不进行修复。如果翻转发生在DQ,则根据获取的ECC检错结果确定目标传输通道,即定位是哪根DQ出现翻转;自动修复装置在定位出发生翻转的DQ之后,根据HBM通道修复协议生成通道修复配置,并将配置下发至内存控制器和HBM内存颗粒,使用冗余DQ替换出现翻转的DQ完成修复。从而可以实现数据通道的自动修复,提升了内存的稳定性和容错性,节约了成本和时间,提升了芯片的修复成功率。
参看图7所示,在再一些实施例中,所述内存控制器通过所述数据传输通道执行从所述内存中读取数据的指令;在步骤S120中,所述根据出现翻转的数据位确定目标数据传输通道,包括:回读出错地址,获取缓存的数据;对所述缓存的数据进行错误校验;若未出现校验错误,则将该缓存的数据与先前读取的原始数据进行异或运算,得到出现翻转的数据位;根据所述出现翻转的数据位计算确定出对应的目标数据传输通道。
同样地,作为本发明实施例的一可选实施例,在得到出现翻转的数据位之后,还包括:判断出现翻转的数据位是否是单bit数据位。
上述两个实施例提供的方案,能够通过异或运算,快速准确地得到出现翻转的数据位,简化了发生翻转错误DQ定位的过程。
在确定出目标数据传输通道之后,并生成对应的数据通道修复配置之后,所述方法还包括:对目标数据传输通道进行修复,具体包括:
将冗余数据通道的地址映射到目标数据传输通道的地址;
本申请实施例中,所述目标数据传输通道的位置可以是数据通道的编号或索引,用于标识数据通道的唯一性。例如,HBM中的数据DQ可以按照其所属的通道(channel)和组(group)进行编号或索引,如DQ0、DQ1、……、DQ127等。
为了帮助理解本发明实施例,示例性地,在一种本发明实施例的应用场景中,在该应用场景中包含处理器和HBM。HBM中的数据DQ按照其所属的通道和组进行编号,每个通道包含8个组,每个组包含16个数据DQ。例如,DQ0、DQ1、……、DQ15属于通道0的组0,DQ16、DQ17、……、DQ31属于通道0的组1,以此类推。HBM中增加了通道修复装置,具体的,可以在内存控制器中增加一个可以实时判断读写过程中DQ翻转位置的模块,以及,在内存控制器中增加一个可以根据DQ翻转位置自动计算并下发通道修复配置的模块,在通道修复装置中还配置了若干个冗余数据通道,如DQ128、DQ129等,用于替换故障数据通道。
在该示例场景中,假设执行了一个读取操作,从HBM中读取一个128位的数据,该数据由数据DQ的第0位到第127位传输。在传输过程中,由于某些原因,数据DQ的第1位发生了翻转,即由0变为1,或由1变为0,从而导致数据的错误。该错误可以通过ECC检错结果发现,即ECC DQ的第1位发生了翻转,从而导致错误向量为00000001 00001011,该错误向量对应的十进制数为139,即数据DQ的第1位发生错误。通道修复装置根据ECC检错的结果,即所述错误向量,可以计算出发生数据翻转的数据通道位置,即DQ1。然后,可以根据配置的冗余数据通道及相应的数据通道类型,确定出目标冗余数据通道替换所述发生数据翻转的数据通道位置的通道修复配置,例如,若配置了一个全局冗余数据通道DQ128,且该冗余数据通道的类型为数据DQ,则可以将DQ128替换DQ1,从而实现数据通道的修复。替换后,DQ1不再参与数据传输,而DQ128代替DQ1进行数据传输,实现了HBM内存系统使用过程中的通道修复。
所述通道修复配置的生成方式,具体的,通道修复配置的总长度为72bit,0-3bit为DWORD0_BYTE0的配置值,4-7bit为DWORD0_BYTE1的配置值,8-11bit为DWORD0_BYTE2的配置值,12-15bit为DWORD0_BYTE3的配置值。0-15bit为DWORD0的配置值;16-31bit为DWORD1的配置值;40-55bit为DWORD2的配置值;56-71bit为DWORD3的配置值;32-39bit为CA修复的配置(对于本申请不作为可修复范围),默认0xff。每个DWORD0_BYTE的通道修复配置计算方法如下:修复配置共占用4bit,当翻转的DQ位置为该Byte的第一根DQ(DQx0)时,修复配置为0x1,第二根DQ时,修复配置为0x2,依次类推,最大配置值为0x8,即使用冗余DQ替换最后一根DQ(DQx7)。
具体的,通道修复配置可以通过控制通道(control channel)下发到HBM的其它模块中,控制通道是用于传输控制信号的物理的串行数据线,可以包括指令字(AWORD)和地址字(CAW)的传输通道,指令字用于传输对HBM的操作指令,地址字用于传输对HBM的访问地址。通道修复配置可以作为一种特殊的指令字,通过指令字的传输通道下发到HBM内存控制器和内存颗粒中,从而实现数据通道的修复。当然,通道修复配置发送至至HBM内存颗粒的方式,也可以通过P1500接口(IEEE Standard 1500)经由内存控制器下发到HBM颗粒。
至少根据上述公开可知,本申请实施例提供的内存系统通道自动修复方法,可以在芯片使用过程中生成数据传输通道配置,从而便于实时修复DQ,提升了内存稳定性;进一步地,在修复过程中可以无需人工干预,节约成本,并且可提升芯片修复成功率。
请参看图2所示,本申请至少还实施例提供一种内存系统,包括:
内存控制器300,用于接收和处理上层接口下发的内存操作指令;
内存颗粒400,用于存储数据,包括至少一个用于存储的HBM裸片;
多个数据传输线DQ及冗余数据传输通道RD DQ,用于将至少一个HBM裸片与所述内存控制器互联;
通道修复单元200,与所述内存控制器和内存颗粒分别互联,用于执行前述任一实施例所述的方法,以使所述内存控制器和内存颗粒根据所述通道修复配置进行数据通道修复。
具体的,通道修复单元200,包括:DQ翻转定位模块201和通道修复配置下发模块202,其中,DQ翻转定位模块201用于执行前述实施例中步骤S110和S120,通道修复配置下发模块202根据DQ翻转定位模块201计算出的翻转DQ位置,计算出使用冗余DQ替换翻转DQ的通道修复配置,然后将配置下发到内存控制器和内存颗粒的通道修复配置模块中,以完成通道修复。
具体的,通道修复配置下发模块202通过写寄存器方式将配置下发到内存控制器通道修复模块中,通道修复配置下发模块202通过P1500接口将配置下发到内存颗粒通道修复模块中。
在一些实施例中,所述通道修复单元集成于所述内存控制中,或者,所述通道修复单元为与所述内存控制器彼此单独设置的一个芯片或模块,并与所述内存控制器和内存颗粒之间通信互联。
本申请实施例提供的内存系统,可以用于执行图1、图3至图7所示方法实施例的技术方案,本实施例的内存系统,其实现原理和技术效果与前述实施例中类似,此处不再赘述,可相互参看。
此外,参看图8,本申请至少还实施例提供一种内存系统200,包括:
总数据通道,与内存210和内存控制器220连接,并包括:数据传输通道DQ BUS和冗余数据通道RD DQ,所述数据传输通道DQ BUS用于在内存和内存控制器之间传输数据;
通道替换配置模块230,包括:
翻转定位模块231,用于在所述数据在多个所述数据传输通道进行传输的校验结果为数据位发生翻转的情况下,确定数据位发生翻转的数据传输通道;
通道替换配置生成模块232,用于形成冗余数据通道替换目标数据传输通道的通道修复配置。
其中,所述通道替换配置模块230可以集成于所述内存控制器中,也可以与所述内存控制器分离设置。
在一些实施例中,所述翻转定位模块包括:判断模块,根据所述数据在多个数据传输通道进行传输的校验结果,判断所述数据是否发生数据位的翻转;
定位模块,响应于所述数据位发生翻转,根据出现翻转的数据位确定目标数据传输通道,所述目标传输通道至少用于传输所述出现翻转的数据位。
在另一些实施例中,所述内存系统包括所述内存控制器,所述内存控制器包括:校验模块,根据读回的数据计算发生翻转的数据或校验码的翻转位;所述翻转位用于指示是数据位发生翻转或校验码发生翻转;所述定位模块,获取校验模块的计算结果,判断是否是数据位发生翻转;
若是,则根据出现数据翻转的数据位确定出对应的目标数据传输通道。
在又一些实施例中,所述内存系统包括所述内存控制器,所述内存控制器包括:校验模块,根据读回的数据计算发生翻转的数据或校验码的翻转位,所述翻转位中指示是数据位或校验码发生翻转,以及指示发生翻转的字节位;
所述定位模块,根据所述发生翻转的字节位判断是否为单个字节位发生翻转;若是,则继续根据校验模块计算结果中指示的是数据位或校验码发生翻转,判断是否是数据位发生翻转;若是,则根据出现数据翻转的数据位确定出对应的目标数据传输通道。
在再一些实施例中,所述内存控制器通过所述数据传输通道执行写入数据至内存的指令;所述定位模块,具体用于:回读写入的数据;将回读得到的数据与先前写入的原始数据进行异或运算,得到出现翻转的数据位;根据出现翻转的数据位计算确定出对应的目标数据传输通道。
在一些实施例中,所述内存控制器通过所述数据传输通道执行从所述内存中读取数据的指令;所述定位模块,具体用于:回读出错地址,获取缓存的数据;对所述缓存的数据进行错误校验;若未出现校验错误,则将该缓存的数据与先前读取的原始数据进行异或运算,得到出现翻转的数据位;根据所述出现翻转的数据位计算确定出对应的目标数据传输通道。
图9为本发明电子设备一个实施例的架构示意框图;基于与前述实施例基本相同的技术构思,本发明实施例提供的电子设备,包括:一个或者多个处理器;存储器;所述存储器中存储有一个或者多个可执行程序代码,所述一个或者多个处理器读取存储器中存储的可执行程序代码,来运行与可执行程序代码对应的程序,以用于执行前述实施例中任一所述的方法。如图9所示,可以实现本发明前述实施例中任一所述的方法的步骤流程。
上述电子设备可以包括:壳体41、处理器42、存储器43、电路板44和电源电路45,其中,电路板44安置在壳体41围成的空间内部,处理器42和存储器43设置在电路板44上;电源电路45,用于为上述电子设备的各个电路或器件供电;存储器43用于存储可执行程序代码;处理器42通过读取存储器43中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执行前述前述实施例中任一所述的方法。
处理器42对上述步骤的具体执行过程以及处理器42通过运行可执行程序代码来进一步执行的步骤,可以参见本发明前述实施例中的描述,在此不再赘述。
所述电子设备以多种形式存在,包括但不限于:
(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。
(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。
(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
(5)其他具有数据交互功能的电子设备。
本申请还实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以用于执行前述实施例中任一所述的方法。
综上公开,本申请实施例提供的数据传输通道配置的生成方法、内存系统、电子设备,可以在芯片使用过程中生成数据传输通道配置,从而便于实时修复故障DQ通道,无需返厂修复,提升了内存稳定性。进一步地,修复无需人工干预,节约成本,且可以提升芯片修复成功率。
需要说明的是,在本文中,各个实施例之间描述的方案的侧重点不同,但是各个实施例又存在某种相互关联的关系,在理解本申请方案时,各个实施例之间可相互参照;另外,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者测量控制单元不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者测量控制单元所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者测量控制单元中还存在另外的相同要素。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (14)
1.一种数据传输通道配置的生成方法,所述数据传输通道用于在内存和内存控制器之间传输数据,其特征在于,所述方法包括:
根据所述数据在多个数据传输通道进行传输的校验结果,判断所述数据是否发生数据位的翻转;
响应于所述数据位发生翻转,根据出现翻转的数据位确定目标数据传输通道,所述目标传输通道至少用于传输所述出现翻转的数据位;
形成冗余数据通道替换目标数据传输通道的通道修复配置。
2.如权利要求1所述的方法,其特征在于,所述根据出现翻转的数据位确定目标数据传输通道,包括:获取ECC检错结果;所述ECC检错结果中指示是数据位或校验码发生翻转;
根据ECC检错结果,判断是否是数据位发生翻转;
若是,则根据出现数据翻转的数据位确定出对应的目标数据传输通道。
3.如权利要求1所述的方法,其特征在于,所述根据出现翻转的数据位确定目标数据传输通道,包括:获取ECC检错结果;所述ECC检错结果中指示是数据位或校验码发生翻转,以及指示发生翻转的字节位;
根据所述发生翻转的字节位判断是否为单个字节位发生翻转;
若是,则继续根据ECC检错结果指示的是数据位或校验码发生翻转,判断是否是数据位发生翻转;
若是,则根据出现数据翻转的数据位确定出对应的目标数据传输通道。
4.如权利要求1所述的方法,其特征在于,所述内存控制器通过所述数据传输通道执行写入数据至内存的指令;
所述根据出现翻转的数据位确定目标数据传输通道,包括:回读写入的数据;
将回读得到的数据与先前写入的原始数据进行异或运算,得到出现翻转的数据位;
根据出现翻转的数据位计算确定出对应的目标数据传输通道。
5.如权利要求1所述的方法,其特征在于,所述内存控制器通过所述数据传输通道执行从所述内存中读取数据的指令;
所述根据出现翻转的数据位确定目标数据传输通道,包括:
回读出错地址,获取缓存的数据;
对所述缓存的数据进行错误校验;
若未出现校验错误,则将该缓存的数据与先前读取的原始数据进行异或运算,得到出现翻转的数据位;
根据所述出现翻转的数据位计算确定出对应的目标数据传输通道。
6.如权利要求1所述的方法,其特征在于,所述形成冗余数据通道替换目标数据传输通道的通道修复配置,包括:根据HBM通道修复协议生成所述通道修复配置。
7.一种内存系统,其特征在于,包括:
总数据通道,与内存和内存控制器连接,并包括:数据传输通道和冗余数据通道,所述数据传输通道用于在内存和内存控制器之间传输数据;
通道替换配置模块,包括:
翻转定位模块,用于在所述数据在多个所述数据传输通道进行传输的校验结果为数据位发生翻转的情况下,确定数据位发生翻转的数据传输通道;
通道替换配置生成模块,用于形成冗余数据通道替换目标数据传输通道的通道修复配置。
8.根据权利要求7所述的内存系统,其特征在于,所述翻转定位模块包括:
判断模块,根据所述数据在多个数据传输通道进行传输的校验结果,判断所述数据是否发生数据位的翻转;
定位模块,响应于所述数据位发生翻转,根据出现翻转的数据位确定目标数据传输通道,所述目标传输通道至少用于传输所述出现翻转的数据位。
9.根据权利要求8所述的内存系统,其特征在于,所述内存系统包括所述内存控制器,所述内存控制器包括:校验模块,根据读回的数据计算发生翻转的数据或校验码的翻转位;所述翻转位用于指示是数据位发生翻转或校验码发生翻转;
所述定位模块,获取校验模块的计算结果,判断是否是数据位发生翻转;
若是,则根据出现数据翻转的数据位确定出对应的目标数据传输通道。
10.根据权利要求8所述的内存系统,其特征在于,所述内存系统包括所述内存控制器,所述内存控制器包括:校验模块,根据读回的数据计算发生翻转的数据或校验码的翻转位,所述翻转位中指示是数据位或校验码发生翻转,以及指示发生翻转的字节位;
所述定位模块,根据所述发生翻转的字节位判断是否为单个字节位发生翻转;
若是,则继续根据校验模块计算结果中指示的是数据位或校验码发生翻转,判断是否是数据位发生翻转;
若是,则根据出现数据翻转的数据位确定出对应的目标数据传输通道。
11.如权利要求8所述的内存系统,其特征在于,所述内存控制器通过所述数据传输通道执行写入数据至内存的指令;
所述定位模块,具体用于:回读写入的数据;
将回读得到的数据与先前写入的原始数据进行异或运算,得到出现翻转的数据位;
根据出现翻转的数据位计算确定出对应的目标数据传输通道。
12.如权利要求8所述的内存系统,其特征在于,所述内存控制器通过所述数据传输通道执行从所述内存中读取数据的指令;
所述定位模块,具体用于:回读出错地址,获取缓存的数据;
对所述缓存的数据进行错误校验;
若未出现校验错误,则将该缓存的数据与先前读取的原始数据进行异或运算,得到出现翻转的数据位;
根据所述出现翻转的数据位计算确定出对应的目标数据传输通道。
13.一种电子设备,其特征在于,包括:
一个或者多个处理器;
存储器;
所述存储器中存储有一个或者多个可执行程序代码,所述一个或者多个处理器读取存储器中存储的可执行程序代码,来运行与可执行程序代码对应的程序,以用于执行权利要求1至6任一所述的方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以用于实现权利要求1至6任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311717590.5A CN117707836A (zh) | 2023-12-13 | 2023-12-13 | 数据传输通道配置的生成方法、内存系统、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311717590.5A CN117707836A (zh) | 2023-12-13 | 2023-12-13 | 数据传输通道配置的生成方法、内存系统、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117707836A true CN117707836A (zh) | 2024-03-15 |
Family
ID=90151001
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311717590.5A Pending CN117707836A (zh) | 2023-12-13 | 2023-12-13 | 数据传输通道配置的生成方法、内存系统、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117707836A (zh) |
-
2023
- 2023-12-13 CN CN202311717590.5A patent/CN117707836A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230028438A1 (en) | Memory repair method and apparatus based on error code tracking | |
KR102198611B1 (ko) | 메모리 내 에러 수정 방법 | |
US7840860B2 (en) | Double DRAM bit steering for multiple error corrections | |
US8869007B2 (en) | Three dimensional (3D) memory device sparing | |
TWI354888B (en) | Integrated circuit, method, and system for memory | |
CN108074595A (zh) | 存储器系统的接口方法、接口电路和存储器模块 | |
CN103218271B (zh) | 一种数据纠错方法及装置 | |
EP3254198A1 (en) | Dynamically changing lockstep configuration | |
CN102467975A (zh) | 数据错误检查方法、数据传输方法和半导体存储装置 | |
CN111625199B (zh) | 提升固态硬盘数据通路可靠性的方法、装置、计算机设备及存储介质 | |
US5825682A (en) | Cache memory capable of using faulty tag memory | |
US20240192862A1 (en) | Automated Error Correction with Memory Refresh | |
US9037948B2 (en) | Error correction for memory systems | |
CN114138544A (zh) | 数据读取、写入方法及装置、软错误处理系统 | |
US7996731B2 (en) | Error detection in high-speed asymmetric interfaces | |
CN113031876A (zh) | 一种数据处理方法、装置、设备及可读存储介质 | |
CN117707836A (zh) | 数据传输通道配置的生成方法、内存系统、电子设备及存储介质 | |
CN110955916B (zh) | 一种数据完整性保护方法、系统及相关设备 | |
NL2029789B1 (en) | Adaptive error correction to improve for system memory reliability, availability, and serviceability (ras) | |
CN116244108A (zh) | 存储器控制器和存储器的数据写入和读取方法及存储系统 | |
JPWO2012046343A1 (ja) | メモリモジュール冗長化方法、記憶処理装置、及びデータ処理装置 | |
CN112486516A (zh) | 由nand闪存控制器实现的电镜像 | |
KR102427323B1 (ko) | 반도체 메모리 모듈, 반도체 메모리 시스템, 그리고 반도체 메모리 모듈을 액세스하는 액세스 방법 | |
WO2024148643A1 (zh) | 存储器及其测试方法、存储器系统 | |
US20230315571A1 (en) | Integrated error correction code (ecc) and parity protection in memory control circuits for increased memory utilization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |