CN101317159A - 检错纠错电路及相应方法 - Google Patents
检错纠错电路及相应方法 Download PDFInfo
- Publication number
- CN101317159A CN101317159A CNA2006800443643A CN200680044364A CN101317159A CN 101317159 A CN101317159 A CN 101317159A CN A2006800443643 A CNA2006800443643 A CN A2006800443643A CN 200680044364 A CN200680044364 A CN 200680044364A CN 101317159 A CN101317159 A CN 101317159A
- Authority
- CN
- China
- Prior art keywords
- data
- word
- error
- memory
- redundant
- 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
Images
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
-
- 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
Abstract
为了提供一种检错纠错电路(100,100’)以及一种检测和/或纠正至少一个数据字中至少一个错误的方法,上述数据字包括以至少一个信息位或者至少有效载荷数据位的形式存在的信息,以及以至少一个校验位或至少一个冗余位的形式存在的冗余,其中优化了补充各个数据字的一个或多个校验位或冗余位的数量,具体地用于基于应用要求,以优化的方式使用至少一个物理存储空间,建议执行指派给至少一个第一数据路径(30,30’)的至少一个第一纠错方案,以及执行指派给至少一个第二数据路径(40,40’)以及指派增加信息和/或冗余的至少一个第二纠错方案,具体地用于为了增加一个或多个信息位或者一个或多个有效载荷数据位的个数和/或为了向通过第二数据路径(40,40’)传输的各个数据字增加一个或多个校验位或者一个或多个冗余位的个数。
Description
技术领域
本发明涉及根据权利要求1前序部分的一种检错纠错电路以及根据权利要求4前序部分的一种电子存储部件或存储模块。
本发明还涉及一种检测和/或校正至少一个数据字的至少一个错误的方法,所述数据字包括:
以至少一个信息位或者至少有效载荷数据位的形式存在的信息;以及
以至少一个校验位或至少一个冗余位的形式存在的冗余。
为了提高存储块的可靠性,经常使用检错纠错电路。为了保证在n个有效载荷数据位中1位错误的校正安全,不得不存储附加的冗余位,例如八(或十六)基准位需要至少四(或五)个冗余位,即需要大约50%(或31%)的附加存储空间。
由于这种显著超载,保持冗余位的数量尽可能小,这通常由有效载荷数据的最小字长限定。无需进一步地增加冗余,多位检错纠错仅可能在极少数特殊的二进制数位组合中。
背景技术
在安全相关或安全关键应用中,存储器可靠读取访问的要求很高。提高可信性的各种方案和/或可靠检测可能攻击的各种方案是例如现有技术文件WO 2004/049349 A2中描述的没有单元选择的中间虚拟读取访问,或者禁止物理数据的特殊编码类型的使用,这样所有位处于相同的逻辑条件下。
在现有技术文件WO 2004/046927 A1中描述了特殊编码类型的使用;更为详细的,在现有技术文件WO 2004/046927 A1中描述了一种电子存储部件或存储模块,其中禁止数据表达的某些状态,并且这些数据表达状态的出现被认为是一种黑客攻击。
在极其敏感数据记录的情况下,例如密钥,冗余被进一步增加,例如通过附加CRC(循环冗余校验)或CRC校验和,而数据通过应用程序进行验证。然而,特别是在代码执行的情况下,这种步骤不适用。此外,照例附加的校验和也需要另外的存储器。
在现有技术文章“Avoid corruption in nonvolatile memory”中由Christopher Leddy给出了检错纠错领域的概述,该文章可以在http://www.embedded.com/showArticle.jhtml?articleID=1310883中找到。
在现有技术文件US 2005/0066354A1中揭示了限制数据访问电路。然而,这个现有技术文件主要思想是发出这种存储模块地址区信号作为特许区。
现有技术文件US 5623504涉及具有不同程度错误保护的数据,但数据被作为数据块执行。底层数据字宽通常是一样的,即数据元具有统一的字尺寸。数据块被认为是多维场。纠错发生在这一包括不同强算法的至少二维排列中,即在数据块中的位置有较高纠错也有较低纠错。然而,数据块配置通常是维持着的。
更具体而言,在现有技术文件US 5623504中,有一种方法描述如下:
数据块中具有统一大小的数据元在至少二维阵列上分区。该阵列接受至少两步(每维一步)附加冗余信息。
计算附加冗余信息,有效载荷数据与冗余数据的比例可以变化,例如在现有技术文件US 5623504的图1中,五列按8比4的比例编码,八列按10比2的比例编码。只有每列的数据总数是固定的。
总而言之,现有技术文件US 5 623 504描述了一种逐块编码,在若干个(至少两个)连续步骤中执行。可变强度的检错纠错仅涉及数据块中的某些位置。
此外,可参考T.Ritthongpitak,M.Kitakami和E.Fuj iwara撰写的现有技术文章“Optimal Two-Level Unequal Error Control codesfor Computer Systems”,IEEE FTCS-26会议,1996,0731-3071/96,涉及在特定位置具有不同级别错误保护的数据块。
考虑到该现有技术文章中的讨论,可参考上述现有技术文件US5623504讨论中提出的论据。
发明内容
从上述不足和缺点入手同时考虑讨论的现有技术,本发明的一个目的就是要进一步开发技术领域中描述的这种检错纠错电路,技术领域中描述的这种存储部件或存储模块,以及技术领域中描述的这种方法,在这种方式下优化了补充各个数据字的一个或多个校验位或冗余位的个数,具体地用于基于应用要求,以优化的方式使用至少一个物理存储空间。
本发明的目的通过包括权利要求1中特征的检错纠错电路,参考权利要求4特征的电子存储部件或存储模块以及包括权利要求7特征的方法实现。本发明有利的实施例以及适宜的改进在各自独立的权利要求中揭示。
正如在上面“背景及现有技术”一章中提及的那样,为了保证数据机密性必须用冗余存储。因此,在许多示例中,传统的存储部件或传统的存储模块,特别是传统的存储块,都已经配备了检错纠错电路,同样使用冗余数据存储,例如出于寿命原因。
一个稳定选择的检错纠错类型要求一定数量的附加存储空间,其大小取决于有效载荷数据或一个或多个信息位的字长或字号。本发明基于执行至少两个检错纠错方案的思想。
根据本发明的优选实施例,两种检错纠错方案都设计为:
在至少一个写入操作期间执行冗余计算,具体地,以一个或更多校验位、或者一个或更多冗余位补充至通过各个数据路径传输的各个数据字;和/或
在至少一个读取操作期间(在本文中,信种字元(syndrome word)允许在错误数据位上的结论,因此用于冗余数据位的检错纠错)执行检错,具体地用于计算至少一个信种字元,和/或执行纠错,具体地用于纠正通过各个数据路径传输的各个数据字。
此外,根据本发明的优选实施例,各个数据字的字长或字尺寸可以具体地可变地地选择,例如基于各个数据字的应用。如果特定示例中的最小字长或字尺寸没有要求,各个数据字的字长或字尺寸利于增加。
因此,例如与通过第一数据路径传输的一个或多个数据字相比,通过第二数据路径传输的一个或多个数据字可以具有不同的,特别是增加的字长或字尺寸。
当大概并行地传输和/或大概同时传输时,通过第二数据路径传输的一个或多个数据字可以与通过第一数据路径传输的一个或多个数据字相关。
通过增加字长或字尺寸,可实现例如多位检错/识别,因为随着字长或字尺寸的增加,附加相对存储要求变小。
例如,如果信息数据或者有效载荷数据的字长或字尺寸从8位增加到16位,则两个8+4位物理字可以总结为一个16+8位字。由于对于1位纠正,不论是16位还是19位信息位或有效载荷数据位仅需要5个冗余位,因此,有效地节省了三个附加数据位。
这一附加信息,即示例中这三个附加位可方便的用于:
系统目的,诸如标记,例如系统标志,或者
增加冗余(通过启动一个或多个附加校验位或冗余位),以及由此增加数据完整性。
根据本发明经过电子存储部件或存储模块处理的每一个数据元包括至少两个数据字,其中每个数据字被指派到至少一个存储区域,上述存储区域特别指派到至少一个地址范围。
两种不同检错纠错方案的使用,特别是两种不同检错纠错类型,包括至少一个存储部件或存储模块,特别是包括至少一个存储单元,如果需要,可以使用在不同地址范围内不同的字长或字尺寸以及不同安全等级。
因此,例如程序编码和密钥的存储区可以设置高冗余,而“更标准”的数据区可以以更小的字长或者更小的字尺寸使用。分别使用的不同存储区和/或检错纠错方案的限定可以方便地、稳定地设定。
此外,分别使用的不同存储区和/或检错纠错方案的限定可以在应用中不定地指派。然而,根据本发明的有利实施例,保证了至少一个读取访问在读取操作中进行,具有与写入操作中相同的检错纠错类型。
由于本发明基于检错纠错需要在读取操作和写入操作中使用数据的最小单元水平上的冗余,例如字节的事实,对于特定存储区(地址范围)使用较大最小单元,如本发明优选实施例提出的那样,允许在不增加物理存储大小的情况下增加包含信息的位的冗余或者个数。
因此,利用本发明优选实施例提供的合适的或可配置的检错纠错方案,物理存储可以根据应用的需要以最优化方式使用:小的和/或大的存储单元可用于“标准”数据和“扩展”数据。
为了较高安全性和机密性可以使用扩展,例如在安全智能卡控制器中启动编码执行,以及为了诸如系统标志之类的附加信息的存储。
与传统方案不同,附加虚拟读取访问以及附加存储CRC(循环冗余校验)和的选取需要一个完整的读取访问并且有效地增加了平均访问时间,利用本发明的优选实施例,被按照例如可配置的检错纠错电路布置执行,存储部件或存储模块,特别是存储单元的访问时间不受影响。
本发明优选实施例的关键特征是同时性,该特性具有优势:即使暂时解决的攻击也可以被可靠地检测出来。与之相比,由于虚拟读取的时间偏移量,只要实际的或真实的读取访问被扰乱,暂时解决的攻击不能被传统方案可靠地检测出来。
除了这一点,本发明的优选实施例包括针对若干位攻击的较高灵敏度。与之相比,通过定义的传统编码类型仅能识别操纵整个数据字的攻击,所述传统编码类型在整个数据字中禁止物理相同位。
此外,本发明的训导具有优势,即其执行和/或应用不需要诸如CRC(循环冗余校验)和之类的附加存储。
最后,本发明包括优势特征,即其可以与传统方案结合,例如:
与增加安全相关或安全关键数据可信性的方案,和/或
与可靠检测可能性攻击的方案。
本发明与传统方案的结合相当有意义。
信令不同地址区域的程序(如在现有技术文件US 2005/0066354A1;”参见上面“背景及现有技术”一章)可便于与本发明结合以决定存储访问在哪个区域进行。
然而,与现有技术文件US 2005/0066354 A1关注于信令不同地址区域相比,本发明关注的是数据编码。本发明的一个典型应用是在存储器不同范围内使用不同的检错纠错。
根据本发明优选实施例(且与上文“背景及现有技术”一章中引用的现有技术文件US 5 623 504对比),数据字的局部长度或局部大小可以能变地选择,例如基于引用和/或基于存储区域,然而存储器数据字的物理宽度则稳定地由是否总结若干物理字给出。
例如,12个物理位
大约8个可用位,具体地用于信息位或有效载荷数据位,以及
大约4个校验位或冗余位
可以实现,允许1位纠错。
通过增加字长或字尺寸,具体地通过总结两个物理字以及调整检错纠错方案,也就是通过使用第二检错纠错方案,可以使用24位(示例)
或者为了增加冗余(对于16位可用位的1位纠错,通常仅需要5个冗余位)
或者为了增加一个或多个信息位或有效载荷数据位的数量
(在本例中,例如19个信息位或有效载荷数据位加5个校验位或冗余位)。
本发明优选实施例涉及一种简单的、一维纠错,其后不需执行若干步骤。
本发明优选实施例的主旨是根据本发明保护最小单元在系统中可以实际使用,具体地是最小单元在上述电子存储模块或存储部件中可以实际使用。这种最小单元可以是8位字或16位字。
根据本发明该实施例,存储器校验位或冗余位所需数量(在本例中是4个附加位)源于可以实际使用的最小单元(示例中为8位)。
当较大单元(例如16位单元)可以在至少一个这种存储区域被选作最小单元(或者在该应用的整个存储器中可用--没有根本的限制,只是在应用集边界内管理),由此产生的在存储器中物理可用的附加冗余位可以用作不同的目的,例如:
为了增加冗余,继而检错纠错的可能性,和/或
为了存储上述的附加信息。
与之相比,现有技术文件US 5 623 504涉及具有固定配置的数据块的保护。
总而言之,本发明可以应用于诸如芯片卡或智能卡之类的集成电路。芯片卡或智能卡包括不同的存储区域,例如:
随机存取存储器(所谓的RAM),
只读存储器(所谓的ROM),
电可擦除可编程只读存储器(所谓的EEPROM),
闪速存储器等。
在诸如银卡之类的安全相关或安全关键的具体应用中,EEPROM或闪速存储器的存储类型通常不适用于编码的存储,因为不能保证足够的数据完整性。在成品中可行程序码实现的优势消失了,因为当使用传统存储类型时,程序码仅能在ROM中记录。
本发明增加冗余的选项,可以任意地与一个或多个检错纠错方案结合,保证了提高一维中的数据安全,相当于ROM中的数据安全。
如果允许(例如通过软件)不同数据字的明确区分,具体的具有不同安全需要或安全要求的数据字,诸如程序码、编码区域或密钥以及“标准”数据字或“标准”数据区域,则没有较小字长或没有在“标准”数据字或数据区域中的较小字尺寸的情况下不能提高数据的安全性。
因此,本发明优选实施例通过执行至少两种检错纠错方案提供了多水平检错纠错,具体地通过执行
具体的为标准的第一检错纠错方案,
以及
具体的为扩展的第二检错纠错方案。
尤其如果存储部件或存储模块,例如存储单元的应用实际不需要小字长或字尺寸,则由于兼容性提供小字长或字尺寸的存储单元或存储模块,例如存储单元可以得益于上述增加的字长或字尺寸。
根据本发明优选实施例,至少提供一种可配置检错纠错电路;
为了从至少一个存储块或存储模块中执行至少一个安全相关数据字,具体用于执行安全编码和/或
用于存储附加信息。
本发明最后涉及至少一种上述检错纠错电路、和/或至少一种上述存储部件或存储模块、和/或上述处理至少一种安全相关或安全关键应用方法的使用,具体的在至少一种芯片卡或智能卡中,例如在至少一种嵌入式安全控制器。
因此,本发明优选实施例涉及安全相关或安全关键应用领域,其中存储部件或存储模块的,具体的是存储块,数据读取可靠性非常关键。
本发明具体可以用于编码的执行,其中要求能够检测试图控制读取操作的攻击。
如上所述,有多种选择可以以一种有利的方式实现同时改进本发明的训导。为了该目的,可参考分别基于权利要求1、4或7所述的权利要求。下面将结合附图,参考两个优选实施例中的示例,对本发明的进一步改进、特征和优势进行描述。
附图说明
图1A示出了在编程或者写入操作时所包含的、根据本发明的检错纠错电路的第一实施例的一部分的示意性方框图;
图1B示出了在读取操作时所包含的、根据本发明的检错纠错电路的第一实施例的一部分的示意性方框图;
图2A示出了在编程或写入操作时所包含的、根据本发明检错纠错电路的第二实施例中的一部分的示意性方框图;
图2B示出了在读取操作时所包含的、根据本发明检错纠错电路的第二实施例中的一部分的示意性方框图。
具体实施方式
图1A至图2B中相应的部分使用相同的参考数字。
为了避免不必要的重复,关于实施例的下列描述,本发明的特征和优势涉及(除非另作说明):
根据本发明电子存储部件或存储模块200的第一实施例,包括根据本发明(参考图1A、图1B)检错纠错电路排列100的第一实施例,以及
根据本发明电子存储部件或存储模块200’的第二实施例,包括根据本发明(参考图2A、图2B)检错纠错电路排列100’第二实施例,
所有实施例200、100或200’、100’都依从于本发明的方法。
电子存储部件或存储模块200的第一实施例,包括检错纠错电路排列100的第一实施例(参考图1A、图1B),以及电子存储部件或存储模块200’的第二实施例,包括检错纠错电路排列100’的第二实施例(参考图2A、图2B)可以通过理想配置实现。
然而,图1A和图1B描述了本发明应用的第一实施例,即增加冗余,而图2A和图2B描述了本发明应用的第二实施例,即增加信息。因此,下面将通过两种优选实施例详细描述如何建立及使用本发明。
为了保证两种不同检测/纠正类型,根据本发明的检错纠错电路100或100’包括指派给两个对应独立数据路径30、40或30’、40’的两个处理模块10、20或10’、20’。
第一处理模块10或10’更明确地指派给第一数据路径30或30’,
第一处理模块10或10’的第一处理部分10a或10a’指派给第一数据路径30或30’的第一部分30a或30a’,以及
第二处理部分10b或10b’指派给第二数据路径40或40’。
第二处理模块20或20’指派给第二数据路径40或40’。
存储部件或存储模块200或200’还包括数据总线和多路模块或多路单元(→参见数字多路开关)作为第一处理模块10或10’、第二处理模块20或20’与数据总线的互联。
更为明确地,多路单元开关提供数据总线:
第一数据路径30或30’的输出信号32或32’,和/或
第二数据路径40或40’的输出信号42或42’,
依靠校验信号或监测信号,即依靠模式控制信号(→参见数字mc)。
存储部件或存储模块200或200’可以设定成:
EPROM(可擦除可编程只读存储器)单元,
EEPROM(电可擦可编程只读存储器)单元;
闪速存储器单元,
ROM(只读存储器)单元,或者
RAM(随机存取存储器)单元。
每个处理模块10、20或10’、20’可方便地
作为带有至少一个ECC(纠错编码)的ECC(纠错电路)执行,以及
包括:
至少一个第一电路部分,为了校验位或冗余位的计算,同时
至少一个第二电路部分,为了1位纠错和/或为了多位错误监测,如果可用。
基于配置和/或基于存储地址,模式控制信号mc限定了在写入操作和读取操作中使用哪种检错纠错。
由至少一个处理模块10、20或10’、20’处理的数据字增加的字长或增加的字尺寸保证了增加各自数据字的信息和/或冗余。
因此,基于检错纠错电路100或100’的结构,为了字长或字尺寸的增加,所需附加的一个或多个位是有效的,以存储附加信息和/或冗余增加。
如果例如第一处理模块10或10’使用8+4位编码,则两个数据字的串联一方面允许带有高冗余的16+8位数据,另一方面允许应用有效的带有三个附加数据位的19+5位编码;同样,如果检错纠错电路100或100’相应地设计,17+7位或18+6位编码也是可以的。
图1A和图1B涉及本发明第一示例应用,即冗余增加。
图1A所述的示例使用8+4位编码,其中
处理模块10的第一处理部分10a由8位入口Da提供,以及
处理模块10的第二处理部分10b由8位入口Db提供。
因此,图1A和图1B所述实施例源于存储区域,该区域使用8位信息数据或有效载荷数据,从而每个数据字或每个字节存储了12个物理位。扩展数据字通过结合每两个数据字形成,因此在第一数据路径32(参见图1A)中可以得到24个物理位。
第一处理模块10或10’使用8+4位汉明码(Hamming code)。根本地,汉明码是一种检错纠错编码,在这种编码中字符与字符之间不同的位结构十分明显,为了在错误数据传输中最大化字符完整纠正的可能性。
使用若干奇偶检验获得校验定位的汉明码,可以根本地建立编码以纠正多于一个错误。在汉明码中,仅补充了编码字或数据字中的部分信息定位以给出偶数奇偶校验。
第二处理模块20或20’使用汉明距离尽可能长的16+8位汉明码(参见图1B中的数据路径40),其中汉明距离是以位统计,不同于对比的2位类型。
更为通常地,如果比较两个编码字或数据字的有序表,汉明距离是字数,且并不一致。因此编码的汉明距离是一种为了编码冗余的措施,从而为了编码识别或者甚至纠错的能力。
图1A和图1B所述的存储部件或存储模块200设计用于写入和/或读取每一对相关的并行数据字,以实现扩展模式。存储部件或者存储模块200也可以设计用于连续写入和/或连续读取,因为可以执行用于缓冲数据的附加方案。
第二处理模块20执行第二检错纠错方案,即加强检错纠错方案。图1A详细描述了在写入操作中加强检错纠错方案的16+8编码:
带有最小值<0>的地址位区分两个各自联系字节或数据字。
两个8位字节在写入操作中通过两种处理模块10和20利用一个或多个校验位或冗余位得到扩展(参见图1A),其中第一处理模块10加倍出现(→参见数字10a和10b)。
第一处理部分10a和第二处理部分10b每个都根据对于数据字节Da和Db利用8+4汉明编码计算四个校验位或冗余位。
替代地,第二处理模块20根据16+8位编码计算8个校验位或冗余位。因此,图1A描述了第一处理部分10a和第二处理部分10b的冗余计算以及第二处理模块20的冗余计算。
基于选择编码模式,因此基于模式控制信号mc,一个2×24位多路开关连接两个12位字节(参见第一数据路径30的输出信号32)或者24位字(参见第二数据路径40的输出信号42)至存储块200数据总线。如果一旦逐字节编码仅有单个字节写入,则其他字节将被存储块200忽略。
多路开关输出检错纠错电路100的24位出口Dz。该24位出口Dz用于电子存储部件或电子存储模块200的数据输入。
在图1B中,详细描述了读取操作中包括16+8位编码的加强检错纠错方案。
在读取操作中,在与电子存储部件或电子存储模块200连接后,检错纠错电路100用于24位入口Do。
因此,在读取操作中,利用第一处理部分10a和第二处理部分10b估计、纠正2×12位(参见图1B中的数据路径30a和30b),该位与所属位一起由存储块200读取。也就是:
8个数据位中奇偶位的更新计算,
通过比较已计算、存储的4位奇偶生成信种字元信种字元,以及
如果需要,进行错误位的适当纠正。
此外,通过扩展检错纠错方案估计24读取位(参见图1B中的数据路径),也就是进行8位奇偶以及相应信种字元的计算。
信种字元的25个值对应“无错误”状态或“1位错误”状态,在后者中将相应地纠错。所有剩余231信种字元作为无效数据的参考,且由一组状态位DS表示。
从而,图1B描述了第一处理模块10的第一处理部分10a、第一处理模块10的第二处理部分10b以及第二处理模块20的信种字元计算和数据纠正。
校验信号mc决定逐字节纠正或逐字纠正结果是否作为有效原始资料或者有效数据提供;多路开关使相应的数据通过。
读取操作处理后,形成检错纠错电路100的三个出口Dx、Dy和Ds。更为具体地,提供第一8位出口Dx,第二8位出口Dy以及状态信息信号Ds。
在本文中,状态信息信号Ds包括增加冗余专用的关于扩展模式读取操作的数据完整性信息,例如表示是否可以用不变的形式读取数据的状态信号不得不被纠正,可以被纠正,或者无法改正地错误。
图2A和图2B涉及本发明第二示例应用,即附加信息存储,例如状态位。
图2A详细描述了加强检错纠错方案19+5编码专用的写入操作:
图2A类推图1A示出了存储附加信息程序;在第一应用(参见图1A和图1B)中一样,第一处理模块10’的第一处理部分10a’和第一处理模块10’的第二处理部分10b’分别计算4个校验位或者冗余位得出数据字节Da和Db。
扩展模式的第二处理模块20’计算出传输数据字节Da和Db以及附加3位数据Dc的5个冗余位(参见图2A的数据路径40’)。
多路开关如上所述运行。
图2B详细描述了加强检错纠错方案19+5编码专用的读取操作:
读取操作实际与第一应用(参见图1A和图1B)相同,本例中第二处理模块20’仅计算一个5位奇偶以及相应的5位信种字元。
作为交换,第二处理模块20’在出口提供19个信息位或者有效载荷数据位(参见图2B中第二数据路径40’的输出信号42’);在这19个信息位或者有效载荷数据位中,2×8个位作为“标准”数据获得,3个位作为附加信息获得。
在读取操作处理后,形成检错纠错电路100’的三个出口Dx、Dy和Df。更为具体地,提供第一8位出口Dx,第二8位出口Dy以及3位出口Df。3位出口Df指派给带有附加信息存储的扩展模式而取代冗余增加。
参考数字列表
100检错纠错电路(第一实施例,参考图1A和图1B)
100’检错纠错电路(第二实施例,参考图2A和图2B)
10检错纠错电路100的第一处理模块(第一实施例,参考图1A和图1B)
10a第一处理模块10的第一处理部分,执行冗余计算(写入操作)和/或执行信种字元计算和数据纠正(读取操作)
10b第一处理模块10的第二处理部分,执行冗余计算(写入操作)和/或执行信种字元计算和数据纠正(读取操作)
10’检错纠错电路100’的第一处理模块(第二实施例,参考图2A和图2B)
10a’第一处理模块10’的第一处理部分,执行冗余计算(写入操作)和/或执行信种字元计算和数据纠正(读取操作)
10b’第一处理模块10’的第二处理部分,执行冗余计算(写入操作)和/或执行信种字元计算和数据纠正(读取操作)
20检错纠错电路100的第二处理模块,执行冗余计算(写入操作)和/或执行信种字元计算和数据纠正(读取操作)(第一实施例,参考图1A和图1B)
20’检错纠错电路100’的第二处理模块,执行冗余计算(写入操作)和/或执行信种字元计算和数据纠正(读取操作)(第二实施例,参考图2A和图2B)
30指派给第一处理模块10的第一数据路径(第一实施例,参考图1A和图1B)
30’指派给第一处理模块10’的第一数据路径(第二实施例,参考图2A和图2B)
30a第一数据路径30的第一部分,指派给第一处理部分10a
30a’第一数据路径30’的第一部分,指派给第一处理部分10a’
30b 第一数据路径30的第二部分,指派给第二处理部分10b
30b’第一数据路径30’的第二部分,指派给第二处理部分10b’
32第一数据路径30的输出信号(第一实施例,参考图1A和图1B)
32’第一数据路径30’的输出信号(第二实施例,参考图2A和图2B)
40指派给第二处理模块20的第二数据路径(第一实施例,参考图1A和图1B)
40’指派给第二处理模块20’的第二数据路径(第二实施例,参考图2A和图2B)
42第二数据路径40的输出信号(第一实施例,参考图1A和图1B)
32’第二数据路径40’的输出信号(第二实施例,参考图2A和图2B)
200电子存储部件或电子存储模块,具体用于电子存储块或电子存储单元(第一实施例,参考图1A和图1B)
200’电子存储部件或电子存储模块,具体用于电子存储块或电子存储单元(第二实施例,参考图2A和图2B)
Da检错纠错电路100、100’的8位入口,写入操作中指派给第一数据路径30、30’的第一部分30a、30a’(字节A)
Db检错纠错电路100’的8位入口,写入操作中指派给第一数据路径30、30’的第二部分30b、30b’(字节B)
Dc检错纠错电路100、100’的3位入口,在存储器操作中利用附加信息存储代替冗余增加指派给第二数据路径40’
Df检错纠错电路100’的3位出口,在扩展模式的读取操作中利用附加信息存储代替冗余增加(第二实施例,参考图2A和图2B)
Do检错纠错电路100、100’的24位入口,在读取操作中与电子存储部件或电子存储模块200、200’的数据输出相连
Ds在扩展模式冗余增加的读取操作中关于数据完整性的状态信息,例如状态信号,表明数据是否可以被不变地读取,不得不被纠正,可以被纠正或者无法改正地错误
Dx读取操作中检错纠错电路100、100’的第一8位出口(字节A)
Dy读取操作中检错纠错电路100、100’的第二8位出口(字节B)
Dz检错纠错电路100、100’的24位出口,与电子存储部件或电子存储模块200、200’的数据输入相连
mc纠错模式选择的校验信号,具体的模式控制信号(标准操作或扩展操作)
mux多路模块或多路单元
Claims (10)
1.一种检错纠错电路(100,100’),用于检测和/或校正至少一个数据字的至少一个错误,所述数据字包括:
以至少一个信息位或者至少一个有效载荷数据位形式存在的信息;以及
以至少一个校验位或者至少一个冗余位形式存在的冗余;
所述检错纠错电路(100,100’)包括至少一个第一处理模块(10,10’):
指派给至少一个第一数据路径(30,30’),以及
设计用于执行至少一个第一检错纠错方案,
其特征在于至少一个第二处理模块(20,20’),
指派给至少一个第二数据路径(40,40’),
设计用于执行至少一个第二检错纠错方案,以及
设计用于增加通过所述第二数据路径(40,40’)传输的各个数据字的信息和/或冗余,具体为
用于增加一个或多个信息位或者一个或多个有效载荷数据位的个数;和/或
用于增加一个或多个校验位或者一个或多个冗余位的个数。
2.根据权利要求1所述检错纠错电路,其特征在于所述第一处理模块(10,10’)具体为:
至少一个第一处理部分(10a,10a’),指派给第一数据路径(30,30’)的至少一个第一部分(30a或30a’);以及
至少一个第二处理部分(10b,10b’),指派给第一数据路径(30,30’)的至少一个第二部分(30b或30b’);以及所述第二处理模块(20,20’)设计用于:
在至少一个写入操作期间,执行冗余计算,具体地,以一个或多个校验位或者一个或多个冗余位补充至通过各个数据路径(30a、30b、40,30a’、30b’、40’)传输的各个数据字;和/或
在至少一个读取操作期间,执行检错,具体地,计算至少一个信种字元;和/或执行纠错,具体地,校正通过各个数据路径(30a、30b、40,30a’、30b’、40’)传输的各个数据字。
3.根据权利要求1或2所述的检错纠错电路,其特征在于通过第二数据路径(40,40’)传输的所述一个或多个数据字可以具有与通过第一数据路径(30a、30b,30a’、30b’)传输的一个或多个数据字相比、不同的字长或字尺寸,具体地是增加的字长或字尺寸,具体地当大致并行地和/或大致同时地传输时,通过第二数据路径(40,40’)传输的一个或多个数据字可以与通过第一数据路径(30a、30b,30a’、30b’)传输的一个或多个数据字相关。
4.一种用于处理至少一个数据元素的电子存储部件或存储模块(200,200’),所述数据元素包括至少两个数据字,其中每个数据字被指派给至少一个存储区域,所述存储区域具体指派给至少一个地址范围,其特征在于
根据权利要求1至3中至少一个权利要求的至少一个检错纠错电路(100,100’),用于实现针对各个存储区域的合适字长或字尺寸的选择,具体地,合适字长或字尺寸的可变选择。
5.根据权利要求4所述的存储部件或存储模块,其特征在于指派用于并行地或串行地执行第一处理模块(10,10’)和第二处理模块(20,20’)的至少一个写入操作和/或至少一个读取操作。
6.根据权利要求4或5所述的存储部件或存储模块,其特征在于:
至少一条数据总线;
至少一个多路复用模块或多路复用单元(mux),用于将第一处理模块(10,10’)和第二处理模块(20,20’)与所述数据总线互联,具体地用于依赖于至少一个信号(mc),具体地,依赖于至少一个模式控制信号,向所述数据总线提供:
第一数据路径(30,30’)的至少一个输出信号(32,32’);和/或
第二数据路径(40,40’)的至少一个输出信号(42,42’);
和/或
所述存储部件或存储模块(200,200’)被配置为:
至少一个可擦除可编程只读存储器EPROM单元;
至少一个电可擦除可编程只读存储器EEPROM单元;
至少一个闪速存储器;
至少一个只读存储器ROM;或者
至少一个随机存取存储器RAM。
7.一种方法,用于检测和/或纠正至少一个数据字的至少一个错误,所述数据字包括:
以至少一个信息位或者至少一个有效载荷数据位形式存在的信息;以及
以至少一个校验位或者至少一个冗余位形式存在的冗余;其特征在于:
执行指派给至少一个第一数据路径(30,30’)的至少一个第一纠错方案;以及
执行至少一个第二纠错方案;
指派给至少一个第二数据路径(40,40’);以及
设计用于增加通过所述第二数据路径(40,40’)传输的各个数据字的信息和/或冗余,具体地:
用于增加一个或多个信息位或者一个或多个有效载荷数据位的个数;和/或
用于增加一个或多个校验位或者一个或多个冗余位的个数。
8.根据权利要求7所述的方法,其特征在于第一纠错方案和第二纠错方案分别包括下列步骤:
在至少一个写入操作期间,执行冗余计算,具体地,用一个或多个校验位或者一个或多个冗余位,补充通过各个数据路径传输的各个数据字;和/或
在至少一个读取操作期间,执行检错,具体地,计算至少一个信种字元;和/或执行纠错,具体地,纠正通过各个数据路径传输的各个数据字。
9.根据权利要求7或8所述的方法,其特征在于:所述第二纠错方案设计用于通过执行冗余计算的步骤,以可变个数和/或单个的校验位或冗余位补充至各个数据字,所补充的校验位或冗余位的个数具体地依赖于:
各个数据字的字尺寸,具体地为各个数据字的逻辑字长;和/或
各个数据字的应用。
10.当处理至少一个安全相关或安全关键应用时,根据权利要求1至3中至少一个权利要求的至少一个检错纠错电路(100,100’)、和/或根据权利要求4至6中至少一个权利要求的电子存储部件或存储模块(200,200’)、和/或根据权利要求7至9中至少一个权利要求的方法的用途,具体地用在至少一个芯片卡或智能卡中,例如,用在至少一个嵌入式安全控制器中。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP05108915 | 2005-09-27 | ||
EP05108915.9 | 2005-09-27 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101317159A true CN101317159A (zh) | 2008-12-03 |
Family
ID=37796036
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2006800443643A Pending CN101317159A (zh) | 2005-09-27 | 2006-09-19 | 检错纠错电路及相应方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20080256415A1 (zh) |
EP (1) | EP1934745A2 (zh) |
JP (1) | JP2009510585A (zh) |
KR (1) | KR20080054412A (zh) |
CN (1) | CN101317159A (zh) |
WO (1) | WO2007036834A2 (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103843046A (zh) * | 2011-09-29 | 2014-06-04 | 大陆-特韦斯贸易合伙股份公司及两合公司 | 用于分配式传递通信流的方法和系统以及系统的应用 |
CN104575617A (zh) * | 2015-01-06 | 2015-04-29 | 北京大学 | 赛道存储位置错误纠正码的编码方法和纠错方法 |
CN104641307B (zh) * | 2012-09-11 | 2017-05-10 | 三菱电机株式会社 | 安全运算装置、安全输入装置、安全输出装置以及安全控制器 |
CN107111931A (zh) * | 2014-11-04 | 2017-08-29 | 罗伯特·博世有限公司 | 用于数据预处理装置的检查设备 |
CN111010258A (zh) * | 2019-12-23 | 2020-04-14 | 卡斯柯信号有限公司 | 一种基于编码的计算机联锁系统通信方法 |
CN112164356A (zh) * | 2020-09-21 | 2021-01-01 | 昆山龙腾光电股份有限公司 | 检错方法及点亮治具 |
Families Citing this family (88)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102006045906A1 (de) * | 2006-09-28 | 2008-04-17 | Infineon Technologies Ag | Modul mit einem Controller für eine Chipkarte |
KR101466694B1 (ko) * | 2007-08-28 | 2014-11-28 | 삼성전자주식회사 | Ecc 회로, ecc 회로를 구비하는 메모리 시스템 및그의 오류 정정 방법 |
JP4564520B2 (ja) | 2007-08-31 | 2010-10-20 | 株式会社東芝 | 半導体記憶装置およびその制御方法 |
US8751755B2 (en) | 2007-12-27 | 2014-06-10 | Sandisk Enterprise Ip Llc | Mass storage controller volatile memory containing metadata related to flash memory storage |
JP5668279B2 (ja) * | 2009-08-06 | 2015-02-12 | ソニー株式会社 | 不揮発性ランダムアクセスメモリおよび不揮発性メモリシステム |
US9626243B2 (en) * | 2009-12-11 | 2017-04-18 | Advanced Micro Devices, Inc. | Data error correction device and methods thereof |
US8909982B2 (en) | 2011-06-19 | 2014-12-09 | Sandisk Enterprise Ip Llc | System and method for detecting copyback programming problems |
US8910020B2 (en) | 2011-06-19 | 2014-12-09 | Sandisk Enterprise Ip Llc | Intelligent bit recovery for flash memory |
GB201114831D0 (en) * | 2011-08-26 | 2011-10-12 | Univ Oxford Brookes | Circuit with error correction |
US9058289B2 (en) | 2011-11-07 | 2015-06-16 | Sandisk Enterprise Ip Llc | Soft information generation for memory systems |
US8924815B2 (en) | 2011-11-18 | 2014-12-30 | Sandisk Enterprise Ip Llc | Systems, methods and devices for decoding codewords having multiple parity segments |
US9048876B2 (en) * | 2011-11-18 | 2015-06-02 | Sandisk Enterprise Ip Llc | Systems, methods and devices for multi-tiered error correction |
US8954822B2 (en) | 2011-11-18 | 2015-02-10 | Sandisk Enterprise Ip Llc | Data encoder and decoder using memory-specific parity-check matrix |
US9699263B1 (en) | 2012-08-17 | 2017-07-04 | Sandisk Technologies Llc. | Automatic read and write acceleration of data accessed by virtual machines |
US9501398B2 (en) | 2012-12-26 | 2016-11-22 | Sandisk Technologies Llc | Persistent storage device with NVRAM for staging writes |
US9612948B2 (en) | 2012-12-27 | 2017-04-04 | Sandisk Technologies Llc | Reads and writes between a contiguous data block and noncontiguous sets of logical address blocks in a persistent storage device |
US9239751B1 (en) | 2012-12-27 | 2016-01-19 | Sandisk Enterprise Ip Llc | Compressing data from multiple reads for error control management in memory systems |
US9003264B1 (en) | 2012-12-31 | 2015-04-07 | Sandisk Enterprise Ip Llc | Systems, methods, and devices for multi-dimensional flash RAID data protection |
US9454420B1 (en) | 2012-12-31 | 2016-09-27 | Sandisk Technologies Llc | Method and system of reading threshold voltage equalization |
US9329928B2 (en) | 2013-02-20 | 2016-05-03 | Sandisk Enterprise IP LLC. | Bandwidth optimization in a non-volatile memory system |
US9214965B2 (en) | 2013-02-20 | 2015-12-15 | Sandisk Enterprise Ip Llc | Method and system for improving data integrity in non-volatile storage |
US9870830B1 (en) | 2013-03-14 | 2018-01-16 | Sandisk Technologies Llc | Optimal multilevel sensing for reading data from a storage medium |
US9244763B1 (en) | 2013-03-15 | 2016-01-26 | Sandisk Enterprise Ip Llc | System and method for updating a reading threshold voltage based on symbol transition information |
US9236886B1 (en) | 2013-03-15 | 2016-01-12 | Sandisk Enterprise Ip Llc | Universal and reconfigurable QC-LDPC encoder |
US9136877B1 (en) | 2013-03-15 | 2015-09-15 | Sandisk Enterprise Ip Llc | Syndrome layered decoding for LDPC codes |
US9092350B1 (en) | 2013-03-15 | 2015-07-28 | Sandisk Enterprise Ip Llc | Detection and handling of unbalanced errors in interleaved codewords |
US9367246B2 (en) | 2013-03-15 | 2016-06-14 | Sandisk Technologies Inc. | Performance optimization of data transfer for soft information generation |
US9009576B1 (en) | 2013-03-15 | 2015-04-14 | Sandisk Enterprise Ip Llc | Adaptive LLR based on syndrome weight |
US9170941B2 (en) | 2013-04-05 | 2015-10-27 | Sandisk Enterprises IP LLC | Data hardening in a storage system |
US10049037B2 (en) | 2013-04-05 | 2018-08-14 | Sandisk Enterprise Ip Llc | Data management in a storage system |
US9159437B2 (en) | 2013-06-11 | 2015-10-13 | Sandisk Enterprise IP LLC. | Device and method for resolving an LM flag issue |
US9043517B1 (en) | 2013-07-25 | 2015-05-26 | Sandisk Enterprise Ip Llc | Multipass programming in buffers implemented in non-volatile data storage systems |
US9384126B1 (en) | 2013-07-25 | 2016-07-05 | Sandisk Technologies Inc. | Methods and systems to avoid false negative results in bloom filters implemented in non-volatile data storage systems |
US9524235B1 (en) | 2013-07-25 | 2016-12-20 | Sandisk Technologies Llc | Local hash value generation in non-volatile data storage systems |
US9274909B2 (en) | 2013-08-23 | 2016-03-01 | Scaleo Chip | Method and apparatus for error management of an integrated circuit system |
US9639463B1 (en) | 2013-08-26 | 2017-05-02 | Sandisk Technologies Llc | Heuristic aware garbage collection scheme in storage systems |
US9361221B1 (en) | 2013-08-26 | 2016-06-07 | Sandisk Technologies Inc. | Write amplification reduction through reliable writes during garbage collection |
US9519577B2 (en) | 2013-09-03 | 2016-12-13 | Sandisk Technologies Llc | Method and system for migrating data between flash memory devices |
US9442670B2 (en) | 2013-09-03 | 2016-09-13 | Sandisk Technologies Llc | Method and system for rebalancing data stored in flash memory devices |
US9158349B2 (en) | 2013-10-04 | 2015-10-13 | Sandisk Enterprise Ip Llc | System and method for heat dissipation |
US9323637B2 (en) | 2013-10-07 | 2016-04-26 | Sandisk Enterprise Ip Llc | Power sequencing and data hardening architecture |
US9298608B2 (en) | 2013-10-18 | 2016-03-29 | Sandisk Enterprise Ip Llc | Biasing for wear leveling in storage systems |
US9442662B2 (en) | 2013-10-18 | 2016-09-13 | Sandisk Technologies Llc | Device and method for managing die groups |
US9436831B2 (en) | 2013-10-30 | 2016-09-06 | Sandisk Technologies Llc | Secure erase in a memory device |
US9263156B2 (en) | 2013-11-07 | 2016-02-16 | Sandisk Enterprise Ip Llc | System and method for adjusting trip points within a storage device |
US9244785B2 (en) | 2013-11-13 | 2016-01-26 | Sandisk Enterprise Ip Llc | Simulated power failure and data hardening |
US9152555B2 (en) | 2013-11-15 | 2015-10-06 | Sandisk Enterprise IP LLC. | Data management with modular erase in a data storage system |
US9703816B2 (en) | 2013-11-19 | 2017-07-11 | Sandisk Technologies Llc | Method and system for forward reference logging in a persistent datastore |
US9520197B2 (en) | 2013-11-22 | 2016-12-13 | Sandisk Technologies Llc | Adaptive erase of a storage device |
US9280429B2 (en) | 2013-11-27 | 2016-03-08 | Sandisk Enterprise Ip Llc | Power fail latching based on monitoring multiple power supply voltages in a storage device |
US9520162B2 (en) | 2013-11-27 | 2016-12-13 | Sandisk Technologies Llc | DIMM device controller supervisor |
US9122636B2 (en) | 2013-11-27 | 2015-09-01 | Sandisk Enterprise Ip Llc | Hard power fail architecture |
US9582058B2 (en) | 2013-11-29 | 2017-02-28 | Sandisk Technologies Llc | Power inrush management of storage devices |
US9250676B2 (en) | 2013-11-29 | 2016-02-02 | Sandisk Enterprise Ip Llc | Power failure architecture and verification |
US9092370B2 (en) | 2013-12-03 | 2015-07-28 | Sandisk Enterprise Ip Llc | Power failure tolerant cryptographic erase |
US9235245B2 (en) | 2013-12-04 | 2016-01-12 | Sandisk Enterprise Ip Llc | Startup performance and power isolation |
US9129665B2 (en) | 2013-12-17 | 2015-09-08 | Sandisk Enterprise Ip Llc | Dynamic brownout adjustment in a storage device |
US9549457B2 (en) | 2014-02-12 | 2017-01-17 | Sandisk Technologies Llc | System and method for redirecting airflow across an electronic assembly |
US9497889B2 (en) | 2014-02-27 | 2016-11-15 | Sandisk Technologies Llc | Heat dissipation for substrate assemblies |
US9703636B2 (en) | 2014-03-01 | 2017-07-11 | Sandisk Technologies Llc | Firmware reversion trigger and control |
US9485851B2 (en) | 2014-03-14 | 2016-11-01 | Sandisk Technologies Llc | Thermal tube assembly structures |
US9519319B2 (en) | 2014-03-14 | 2016-12-13 | Sandisk Technologies Llc | Self-supporting thermal tube structure for electronic assemblies |
US9348377B2 (en) | 2014-03-14 | 2016-05-24 | Sandisk Enterprise Ip Llc | Thermal isolation techniques |
US9448876B2 (en) | 2014-03-19 | 2016-09-20 | Sandisk Technologies Llc | Fault detection and prediction in storage devices |
US9454448B2 (en) | 2014-03-19 | 2016-09-27 | Sandisk Technologies Llc | Fault testing in storage devices |
US9390814B2 (en) | 2014-03-19 | 2016-07-12 | Sandisk Technologies Llc | Fault detection and prediction for data storage elements |
US9390021B2 (en) | 2014-03-31 | 2016-07-12 | Sandisk Technologies Llc | Efficient cache utilization in a tiered data structure |
US9626400B2 (en) | 2014-03-31 | 2017-04-18 | Sandisk Technologies Llc | Compaction of information in tiered data structure |
US9626399B2 (en) | 2014-03-31 | 2017-04-18 | Sandisk Technologies Llc | Conditional updates for reducing frequency of data modification operations |
US9697267B2 (en) | 2014-04-03 | 2017-07-04 | Sandisk Technologies Llc | Methods and systems for performing efficient snapshots in tiered data structures |
US8891303B1 (en) | 2014-05-30 | 2014-11-18 | Sandisk Technologies Inc. | Method and system for dynamic word line based configuration of a three-dimensional memory device |
US10146448B2 (en) | 2014-05-30 | 2018-12-04 | Sandisk Technologies Llc | Using history of I/O sequences to trigger cached read ahead in a non-volatile storage device |
US9070481B1 (en) | 2014-05-30 | 2015-06-30 | Sandisk Technologies Inc. | Internal current measurement for age measurements |
US9645749B2 (en) | 2014-05-30 | 2017-05-09 | Sandisk Technologies Llc | Method and system for recharacterizing the storage density of a memory device or a portion thereof |
US10162748B2 (en) | 2014-05-30 | 2018-12-25 | Sandisk Technologies Llc | Prioritizing garbage collection and block allocation based on I/O history for logical address regions |
US10372613B2 (en) | 2014-05-30 | 2019-08-06 | Sandisk Technologies Llc | Using sub-region I/O history to cache repeatedly accessed sub-regions in a non-volatile storage device |
US10114557B2 (en) | 2014-05-30 | 2018-10-30 | Sandisk Technologies Llc | Identification of hot regions to enhance performance and endurance of a non-volatile storage device |
US10656842B2 (en) | 2014-05-30 | 2020-05-19 | Sandisk Technologies Llc | Using history of I/O sizes and I/O sequences to trigger coalesced writes in a non-volatile storage device |
US9703491B2 (en) | 2014-05-30 | 2017-07-11 | Sandisk Technologies Llc | Using history of unaligned writes to cache data and avoid read-modify-writes in a non-volatile storage device |
US10656840B2 (en) | 2014-05-30 | 2020-05-19 | Sandisk Technologies Llc | Real-time I/O pattern recognition to enhance performance and endurance of a storage device |
US9093160B1 (en) | 2014-05-30 | 2015-07-28 | Sandisk Technologies Inc. | Methods and systems for staggered memory operations |
US9652381B2 (en) | 2014-06-19 | 2017-05-16 | Sandisk Technologies Llc | Sub-block garbage collection |
US9768808B2 (en) | 2015-04-08 | 2017-09-19 | Sandisk Technologies Llc | Method for modifying device-specific variable error correction settings |
US9606737B2 (en) | 2015-05-20 | 2017-03-28 | Sandisk Technologies Llc | Variable bit encoding per NAND flash cell to extend life of flash-based storage devices and preserve over-provisioning |
US9639282B2 (en) | 2015-05-20 | 2017-05-02 | Sandisk Technologies Llc | Variable bit encoding per NAND flash cell to improve device endurance and extend life of flash-based storage devices |
US9830084B2 (en) | 2015-12-03 | 2017-11-28 | Sandisk Technologies Llc | Writing logical groups of data to physical locations in memory using headers |
US10013179B2 (en) | 2015-12-03 | 2018-07-03 | Sandisk Technologies Llc | Reading logical groups of data from physical locations in memory using headers |
CN108242973B (zh) * | 2016-12-26 | 2020-10-27 | 北京邮电大学 | 一种数据纠错方法及装置 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6151253A (ja) * | 1984-08-20 | 1986-03-13 | Nec Corp | 誤り訂正回路 |
JPH061605B2 (ja) * | 1985-02-08 | 1994-01-05 | 株式会社日立製作所 | デイジタル信号記録伝送方法 |
DE69317867T2 (de) * | 1992-12-14 | 1998-10-22 | Koninkl Philips Electronics Nv | Verfahren und Vorrichtung zur Realisierung eines Quasiproduktkodes mit verschiedenen Fehlerschutzstufen |
US5357527A (en) * | 1992-12-31 | 1994-10-18 | Trimble Navigation Limited | Validation of RAM-resident software programs |
US5465260A (en) * | 1993-11-04 | 1995-11-07 | Cirrus Logic, Inc. | Dual purpose cyclic redundancy check |
US5671156A (en) * | 1995-03-31 | 1997-09-23 | Lucent Technologies Inc. | Transmission method and system for JPEG images |
US6279072B1 (en) * | 1999-07-22 | 2001-08-21 | Micron Technology, Inc. | Reconfigurable memory with selectable error correction storage |
FR2810152A1 (fr) * | 2000-06-13 | 2001-12-14 | St Microelectronics Sa | Memoire eeprom securisee comprenant un circuit de correction d'erreur |
US7234099B2 (en) * | 2003-04-14 | 2007-06-19 | International Business Machines Corporation | High reliability memory module with a fault tolerant address and command bus |
EP2228988B1 (en) * | 2003-08-15 | 2012-02-08 | STMicroelectronics (Research & Development) Limited | Circuit for restricting data access |
US7389465B2 (en) * | 2004-01-30 | 2008-06-17 | Micron Technology, Inc. | Error detection and correction scheme for a memory device |
US7535908B2 (en) * | 2005-06-09 | 2009-05-19 | International Business Machines Corporation | Method for data transfer |
US7739576B2 (en) * | 2006-08-31 | 2010-06-15 | Micron Technology, Inc. | Variable strength ECC |
-
2006
- 2006-09-19 KR KR1020087009987A patent/KR20080054412A/ko not_active Application Discontinuation
- 2006-09-19 WO PCT/IB2006/053355 patent/WO2007036834A2/en active Application Filing
- 2006-09-19 EP EP06809332A patent/EP1934745A2/en not_active Withdrawn
- 2006-09-19 JP JP2008532922A patent/JP2009510585A/ja not_active Withdrawn
- 2006-09-19 CN CNA2006800443643A patent/CN101317159A/zh active Pending
- 2006-09-19 US US12/067,977 patent/US20080256415A1/en not_active Abandoned
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103843046A (zh) * | 2011-09-29 | 2014-06-04 | 大陆-特韦斯贸易合伙股份公司及两合公司 | 用于分配式传递通信流的方法和系统以及系统的应用 |
CN103843046B (zh) * | 2011-09-29 | 2016-08-31 | 大陆-特韦斯贸易合伙股份公司及两合公司 | 用于分配式传递通信流的方法和系统以及系统的应用 |
CN104641307B (zh) * | 2012-09-11 | 2017-05-10 | 三菱电机株式会社 | 安全运算装置、安全输入装置、安全输出装置以及安全控制器 |
CN107111931A (zh) * | 2014-11-04 | 2017-08-29 | 罗伯特·博世有限公司 | 用于数据预处理装置的检查设备 |
CN104575617A (zh) * | 2015-01-06 | 2015-04-29 | 北京大学 | 赛道存储位置错误纠正码的编码方法和纠错方法 |
CN104575617B (zh) * | 2015-01-06 | 2017-06-27 | 北京大学 | 赛道存储位置错误纠正码的编码方法和纠错方法 |
CN111010258A (zh) * | 2019-12-23 | 2020-04-14 | 卡斯柯信号有限公司 | 一种基于编码的计算机联锁系统通信方法 |
CN111010258B (zh) * | 2019-12-23 | 2022-01-28 | 卡斯柯信号有限公司 | 一种基于编码的计算机联锁系统通信方法 |
CN112164356A (zh) * | 2020-09-21 | 2021-01-01 | 昆山龙腾光电股份有限公司 | 检错方法及点亮治具 |
Also Published As
Publication number | Publication date |
---|---|
EP1934745A2 (en) | 2008-06-25 |
US20080256415A1 (en) | 2008-10-16 |
JP2009510585A (ja) | 2009-03-12 |
KR20080054412A (ko) | 2008-06-17 |
WO2007036834A2 (en) | 2007-04-05 |
WO2007036834A3 (en) | 2007-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101317159A (zh) | 检错纠错电路及相应方法 | |
EP2529305B1 (en) | System and method to correct data errors using a stored count of bit values | |
KR100632952B1 (ko) | 정전으로 인한 프로그램 페일의 유무를 판별할 수 있는방법 및 장치 | |
US8954818B2 (en) | Error detection and correction scheme for a memory device | |
US7458002B2 (en) | Processor having electronic fuses for storing secret data | |
US7937628B2 (en) | Method and system for a non-volatile memory with multiple bits error correction and detection for improving production yield | |
US7437600B2 (en) | Method of data writing to and data reading from storage device and data storage system | |
CN108874576B (zh) | 一种基于纠错编码的数据存储系统 | |
KR100645058B1 (ko) | 데이터 신뢰성을 향상시킬 수 있는 메모리 관리 기법 | |
US8560916B2 (en) | Method for enhancing error correction capability of a controller of a memory device without increasing an error correction code engine encoding/decoding bit count, and associated memory device and controller thereof | |
US7814396B2 (en) | Apparatus and method for checking an error recognition functionality of a memory circuit | |
US8635508B2 (en) | Systems and methods for performing concatenated error correction | |
CN103426482A (zh) | 存储器控制器、存储装置及纠错方法 | |
US20080215955A1 (en) | Semiconductor storage device | |
US8020115B2 (en) | Apparatus, method and system for permanent storage of data | |
KR20030023762A (ko) | 에러 보정 방법 및 에러 보정 회로 장치 | |
CN101128802B (zh) | 数据保护用的方法和用于其实施的设备 | |
WO2015016879A1 (en) | Operating a memory unit | |
US20060076418A1 (en) | Electronic memory component or memory module, and method of operating same | |
CN109753369A (zh) | 一种寄存器及内存中顺序数组的数据编码及校验方法 | |
EP1565821B1 (en) | Electronic memory component or memory module, and method of operating same | |
US7730357B2 (en) | Integrated memory system | |
US20230359523A1 (en) | Memory integrity check | |
Gregori et al. | Construction of polyvalent error control codes for multilevel memories |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20081203 |