CN1648868A - 通过综合的错误校正和检测对存储设备的数据进行恢复的方法和系统 - Google Patents
通过综合的错误校正和检测对存储设备的数据进行恢复的方法和系统 Download PDFInfo
- Publication number
- CN1648868A CN1648868A CN200510006644.2A CN200510006644A CN1648868A CN 1648868 A CN1648868 A CN 1648868A CN 200510006644 A CN200510006644 A CN 200510006644A CN 1648868 A CN1648868 A CN 1648868A
- Authority
- CN
- China
- Prior art keywords
- polynomial
- code word
- data
- remainder
- memory device
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
- G11B20/1833—Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/1515—Reed-Solomon codes
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Signal Processing (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
- Detection And Correction Of Errors (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
本发明提供了一种可有效地重现存储于存储设备的介质中的数据的方法和系统。其中,通过使用一个多级解码过程来校正和检测错误,以实现所述方法和系统。在一个实施例中,所述存储设备包括一个磁盘驱动器。在一个实施例中,所述方法和系统使用了一种编码/解码技术,使得错误校正和检测可执行于多个连续的解码级或处理级。使用所述方法和系统,可提高最大符号错误数,该最大符号错误数在一个编码代码字中是可被校正的,从而提供一种更好的数据恢复手段。
Description
技术领域
本发明涉及数据处理技术,更具体地说,涉及一种通过综合的错误校正和检测对存储设备的数据进行恢复的方法和系统。
技术背景
对存储于存储设备的数据的进行错误检测和错误校正的基础,是使用数据的冗余信息。冗余信息(即奇偶校验或冗余符号)被特殊硬件和/或软件用来进行检测和校正错误,以恢复存储设备的介质中已丢失的或被破坏的数据。存储于诸如磁盘驱动器等存储设备中的数据,通常使用两类代码编码:错误校正码(Error Correction Code,ECC)和错误检测码(Error Detection Code,EDC)。当从存储设备中读取数据时,错误校正码用于校正数据错误,而错误检测码则用于检测数据错误。不幸的是,在许多情况下,该错误校正码和错误检测码使用的是在硬件或固件(firmware)中执行的算法,其不能从存储设备中恢复数据。
当对存储于磁盘驱动器中的数据使用错误校正码和错误检测码时,在一个数据扇区中可被校正的错误(即符号错误)的数量限于一个特定的最大值。不幸的是,当这些错误的数量超过该最大值时,该扇区的相关数据不可读。而结果是,关键数据可能再不能从磁盘驱动器恢复。
此外,通过比较常规的和传统的方法与本发明(将结合附图在本申请的后续部分描述),本技术领域的人员将清楚常规的和传统的方法局限和缺点。
发明内容
本发明提供一种更有效地读取存储于存储设备的介质中的数据的方法和系统,它使用一个三级解码过程来校正和检测错误。
一方面,本发明提供一种对存储于存储设备中的数据进行编码的方法,其中包括:生成第一多项式,其根包括伽罗瓦域中一个原始元素的一次或多次幂;生成第二多项式,其根包括所述伽罗瓦域中一个原始元素的一次或多次幂;生成所述第一多项式与第二多项式的乘积。
另一方面,本发明还提供一种对存储于存储设备中的数据进行解码的方法,其中包括:从所述存储设备读取所述编码代码字;执行第一次除法算法,用所述编码代码字除以所述第一多项式;确定所述第一次除法算法中是否有第一余数;用所述第一余数来对所述编码代码字进行第一次校正;执行第二次除法算法,用所述编码代码字除以所述第二多项式;确定所述第二次除法算法中是否有第二余数;如果所述第二次除法算法中有第二余数,则执行第三次除法算法,用所述编码代码字除以所述第一多项式与第二多项式的乘积;确定所述第三次除法算法中是否有第三余数;用所述第三余数来对所述编码代码字进行第二次校正。
本发明还提供一种对存储于存储设备中的数据进行错误校正和检测的方法,其中包括:生成第一多项式,其根包括伽罗瓦域中一个原始元素的一个或多个连续次幂;生成第二多项式,其根包括所述伽罗瓦域中一个原始元素的一个或多个连续次幂;生成所述第一多项式与第二多项式的乘积。然后,执行第一次除法算法,用一个第三多项式除以所述乘积以生成一个第一余数,用所述第一余数来生成一个编码代码字,所述第三多项式代表数据的一个区,所述数据扇区包括多个符号。然后,将所述编码代码字写到所述存储设备的一个介质中。本方法中,还包括:从所述存储设备读取所述编码代码字;执行第二次除法算法,用所述编码代码字除以所述第一多项式;确定所述第二次除法算法中是否有一个第二余数;用所述第二余数来对所述编码代码字进行校正;执行第三次除法算法,用所述编码代码字除以所述第二多项式;确定所述第三次除法算法中是否有第三余数;如果所述第三次除法算法中有第三余数,则执行第四次除法算法,用所述编码代码字除以所述第一多项式与第二多项式的乘积;确定所述第四次除法算法中是否有第四余数;用所述第四余数来对所述编码代码字进行校正。
此外,本发明还提供一种用于有效地校正和检测存储设备的一个介质中的错误的系统,其中包括一个编码器,它对写到所述存储设备的所述介质中的数据进行编码;还包括一个解码器,它使用至少两个错误校正处理级,对从所述存储设备的所述介质中读取的数据进行解码。
附图说明
图1是本发明的一个实施例中的错误校正和检测系统的框图;
图2是本发明的一个实施例中用于生成编码代码字的编码处理的流程图;
图3A和图3B是本发明一个实施例中用于对编码代码字进行解码的处理的流程图。
具体实施方式
本发明提供一种更有效地恢复存储于存储设备的介质中的数据的方法和系统,其通过使用多级解码过程进行校正和检测错误。在一个实施例中,该存储设备包括磁盘驱动器。所述数据在从存储设备中读取时被校正和检测。在本发明的一个实施例中,通过里德-所罗门码(reed-solomon code)实现错误校正和检测。在一个实施例中,所述系统和方法在许多连续解码级或处理级上使用编码/解码技术,该技术允许错误校正和检测。在一个实施例中,执行至少两个错误校正处理级。所述系统和方法的使用增大了在编码代码字中可被校正的最大符号错误数,从而改进了数据恢复。
图1为本发明的一个实施例中的错误校正和检测系统的框图。该系统包括编码器/解码器子系统104、存储设备116、存储器124、控制处理器(CPU)128、以及数据接口132。编码器/解码器子系统104包括编码器/解码器电路108和编码器/解码器存储器112。编码器/解码器电路108包括可编码其接收自数据接口130的数据的数字逻辑电路。此外,编码器/解码器存储器112可存储一组可编码和解码其从一个或多个设备(例如数据接口132、存储设备116、存储器124、CPU128)接收的数据的指令、软件、或固件。由编码器/解码器电路108完成的数据的编码和解码可通过执行一个或多个保存于编码器/解码器存储器112中的指令实现。在一个实施例中,编码器/解码器存储器112可存储一组保存于编码器/解码器存储器112的指令,所述指令可使用一个或多个算法进行编码和解码数据。当CPU执行该组指令时,执行所述一个或多个算法。
所述一个或多个算法包括如图2、3A及3B所示的编码和/或解码算法。该编码器/解码器存储器112包括一个只读存储器(ROM)例如可编程只读存储器(PROM)。在一种实施方式中,编码器/解码器电路108和/或编码器/解码器存储器112可以是一个Reed-Solomon编码器/解码器。例如,编码器/解码器电路108和/或编码器/解码器存储器112在从数据接口132接收数据后,可以生成一些编码代码字,如Reed-Solomon代码字。当编码器/解码器子系统104写入存储设备116时,一个或多个适合的写控制信号被传送至该存储设备116。另一方面,当编码器/解码器子系统104从存储设备116读出数据时,一个或多个适合的控制信号被传送至存储设备116。在写或读的操作中,数据在编码器/解码器子系统104与存储设备116间传输。存储设备116从一个介质120写入或读出数据。该介质120存在于存储设备116内,可以是一个可移动的或可携带的介质120。该介质120包括一个磁性介质,例如一个磁盘驱动器。介质120存储由编码器/解码器子系统104所生成的一个或多个编码代码字。编码器/解码器子系统104及控制处理器128可利用存储器124,在编码及解码过程中存储及处理数据。存储器124包括随机存取存储器(RAM),例如动态随机存取存储器(DRAM)。
通过编码器/解码器子系统104生成的每一个编码代码字中,包括一些符号。每个符号包括多个位。在一种实施方式中,符号位的数量等于10,而一个编码代码字中的符号的最大数量等于1023。通过编码器/解码器子系统接收的数据被分为一个或多个数据扇区。每个数据扇区可由一个编码代码字表示。该编码代码字包括一个或多个数据符号及一个或多个冗余或奇偶符号。该冗余或奇偶符号可包括例如由Reed-Solomon编码器生成的符号。
如果一个编码代码字(要求表示数据扇区)内的数据和奇偶符号的数量为n,则编码代码字内使用的奇偶符号的数量等于2(t+k)。在一种实施方式中,错误校正及检测系统生成一个次数为2t的第一多项式,及一个次数为2k的第二多项式。第一多项式的根及第二多项式的根均包括一个伽罗瓦域原始元素的连续次幂。在一种实施方式中,第二多项式的第一个根与第一多项式的最后一个根连续。上述的关系可以由经下数学式表示:
p(x)=(x-a1)…(x-a2k) [第一多项式]
f(x)=(x-a2k+1)…(x-a2(t+k)) [第二多项式]
如上述等式所示,伽罗瓦域的原始元素表示为a。编码器/解码器子系统104利用一个称为是生成多项式的第三多项式,该第三多项式对应于第一多项式p(x)及第二多项式f(x)的乘积,该生成多项式g(x)可由下式表示:
g(x)=p(x)f(x)=(x-a1)…(x-a2(t+k)) [第三多项式]
所述编码代码字中的一个或多个数据符号c2(t+k),c2(t+k)+1,…,cn-1,可由下式表示:
C(x)=c2(t+k)x2(t+k)+c2(t+k)x2(t+k)+1+…+cn-1x(n-1)
用C(x)除以g(x)之后,所得余数提供一个或多个编码代码字的奇偶符号。所述余数多项式为r(x),其次数为2(t+k)-1,其由下式表示:
r(x)=r0+r1x+…+r2x2(t+k)-1
该编码代码字(如,一个或多个数据及奇偶符号)通过将r(x)加上C(x)而生成,可由下式表示:
C*(x)=r(x)+C(x)=r0+r1x+…+r2x2(t+k)-1+c2(t+k)x2(t+k)+c2(t+k)x2(t+k)+1+…+cn-1x(n-1)
上式中,C*(x)表示n个符号的总数。
图2为本发明的一种实施方式中,生成一个编码代码字的编码过程及编码算法的流程图。编码过程或算法利用上述的多项式f(x),p(x),g(x),r(x),C(x)及C*(x),其均在伽罗瓦域中被定义。编码算法利用一个处理过程,以使后续的解码可以在后面将要描述的图3A及图3B中的多个处理级中被执行。所述编码过程开始于步骤204,其中,基于t确定f(x)。如图1所述的编码器/解码器子系统生成一个次数为2t的多项式f(x),其根为伽罗瓦域中一个原始元素的连续次幂。当使用多项式f(x)时,变量t可定义可被图1中所示的错误校正及检测系统所校正的最大符号错误数。在一种实施方式中,定义变量t+k为一个代码字中的符号总数与代码字中的数据符号数量之间的差值的一半。如前所述,f(x)包括一个次数为2t的多项式。在一种实施方式中,t=24或2t=48。如步骤208所示,编码器/解码器子系统生成一个次数为2k的多项式,其根是同一原始元素的连续次幂。在一种实施方式中,k=2或2k=4。当使用多项式p(x)时,变量k定义了可通过图1中所示的错误校正及检测系统被校正的最大符号错误数。在一种实施方式中,在生产时(如在建构及生产图1所述的错误校正及检测系统时),可先计算及执行多项式f(x)及p(x)。例如,在建构错误校正及检测系统时,α及f(x)和p(x)的顺序只被确定一次。在步骤212中,编码器/解码器子系统生成生成多项式g(x)。如前所述,g(x)为f(x)与p(x)的乘积。可通过一个Reed-Solomon码编码器定义及生成多项式f(x),p(x)及g(x)。在一种实施方式中,多项式g(x)是预先确定的,因为如前所述,在生产时会先计算f(x)与p(x)。在步骤216中,通过C(x)除以g(x)生成余数多项式r(x)。该余数多项式r(x)包括2(t+k)奇偶位或冗余项。然后,在步骤220中,通过将2(t+k)奇偶位或冗余项与代码字C(x)的数据部分相加,得到编码代码字C*(x)。C(x)是一个定义于伽罗瓦域定的多项式,其参数表示一个或多个数据符号。因此,可将编码代码字C*(x)写入一个存储设备的介质中,如一个磁盘驱动器中。在参数表示一个或多个数据及奇偶(或冗余)符号的伽罗瓦域定义多项式C*(x)。本发明揭示了C*(x)的计算,对于通过错误校正及检测系统接收的第个C(x),将先计算值用于f(x)及p(x)。在一个算法实施例中,一个或多个符号由包括10比特的C(x)及C*(x)表示。
图3A及图3B为本发明一种实施方式的对编码代码字使用的解码过程或解码算法的流程图。该解码过程或算法利用前述的多项式f(x),p(x),g(x),r(x),C(x)及C*(x)。该解码算法利用至少两个错误校正级,以使当从存储设备读数据时,更有效地校正符号错误。在一种实施方式中,解码算法利用一个三级解码过程,其中,1)在第一处理级使用f(x)执行第一错误校正,2)在第二处理级使用p(x)执行错误检测,及3)在第三处理级使用g(x)执行第二错误校正。第一处理级在步骤304中发生,其中,编码代码字C*(x)被图3中所述的多项式f(x)除以。在步骤308中,解码器电路决定了在C*(x)被f(x)除以后是否生成余数。如果存在一个余数,将处理程序转到步骤312,校正t符号错误。否则,如果不存在余数,处理程序转到步骤316,以执行错误检测。在第一处理级,通过利用余数将编码代码字C*(x)校正至t错误的一个最大值。在一种实施方式中,使用Reed-Solomon在编码代码字C*(x)中校正t错误(用g(x)除以C*(x),因而其也被f(x)除,其中,f(x)的次数为2t;所以,在第一级,利用该结果校正t符号错误)。在步骤314中,解码器决定编码代码字是否已被成功解码。如果该编码代码字没有被成功解码,处理过程转到步骤324。否则,处理过程转到步骤316,执行错误检测。在步骤316中发生第二处理级,多项式p(x)除以编码代码字,以执行错误检测。在步骤312中被校正的一个或多个符号错误可能过错误检测被验证。如果在步骤320中,被p(x)除以后有余数,则编码代码字C*(x)中仍存在一个或多个错误,处理过程转到步骤324。如前所述,第二处理级确定在第一处理级执行后是否存在错误。然而,如果在步骤320中,被p(x)除以后没有余数,则C*(x)中的所有错误被校正,该处理过程以成功解码而结束。在一种实施方式中,利用具有2k次及冗余符号的Reed-Solomon算法执行由第二处理级提供的错误检测。如果被p(x)除以后有余数,在步骤324中执行第三处理级的处理过程,用图2中所述的发生多项式g(x)除以编码代码字C*(x)。如前所述,发生多项式g(x)的次数为2(t+k)。在步骤324中,确定被p(x)除以后是否有余数。如果有余数,在步骤328中,利用余数校正C*(x)中的(t+k)个符号错误。在一种实施方式中,用Reed-Solomon算法校正C*(x)中的(t+k)个符号错误。g(x)除以C*(x),其中,g(x)的次数为2(t+k)。作为结果,第三处理级利用结果校正(t+k)个符号错误。当被g(x)除以时,错误校正能力所允许的错误校正的错误最大值为(t+k)个。在步骤332中确定是否成功完成了解码。如果数据没有被解码,在程序结尾发生了失败的解码或错误。否则,程序结果时期解码成功。前述的错误校正及检测处理在除了第三级处理的其它级中执行,以提供其它的错误校正/检测能力。
可选择地,在上述的编码/解码过程的另一实施方式中,执行写或读操作的校正是为了避免一个问题的发生,该问题是在实际的同步记号区域之前或之后,读操作遇到一个替换的同步标记符号的整数数量。在一种实施方式中,由这样的替换同步标记导致的编码代码字中的周期替换可能会导致另一个有效的代码字,例如,当使用Reed-Solomon代码字时。符号(或字节,当符号包括8位时)数量被加到相应的符号(或字节)值。例如,在前述的编码之后执行的变换,但是在将编码代码字写入存储设备的介质之前:
c*→c* j+j,j=0,…,n-1
这里,c*表示符号而j表示符号数量。在本实施方式中,当从存储设备读入数据时,为了正确读入数据,在执行编码代码字的解码之前执行变换。
Claims (10)
1、一种对存储于存储设备中的数据进行编码的方法,其特征在于,包括:
生成第一多项式,其根包括伽罗瓦域中一个原始元素的一次或多次幂;
生成第二多项式,其根包括所述伽罗瓦域中一个原始元素的一次或多次幂;
生成所述第一多项式与第二多项式的乘积。
2、根据权利要求1所述的方法,其特征在于,所述第一多项式的所述原始元素的一次或多次幂包括连续的整数值。
3、根据权利要求2所述的方法,其特征在于,所述第一多项式的次数等于48。
4、根据权利要求1所述的方法,其特征在于,所述第二多项式的所述原始元素的一次或多次幂包括连续的整数值。
5、一种对存储于存储设备的一个介质中的数据进行编码和解码的方法,其特征在于,包括:
生成第一多项式,其根包括伽罗瓦域中一个原始元素的一个或多个连续次幂;
生成第二多项式,其根包括所述伽罗瓦域中一个原始元素的一个或多个连续次幂;
生成所述第一多项式与第二多项式的乘积;
执行第一次除法算法,用一个第三多项式除以所述乘积以生成一个第一余数,用所述第一余数来生成一个编码代码字,所述第三多项式代表数据的一个区,所述数据扇区包括多个符号;
将所述编码代码字写到所述存储设备的一个介质中;
从所述存储设备读取所述编码代码字;
执行第二次除法算法,用所述编码代码字除以所述第一多项式;
确定所述第二次除法算法中是否有一个第二余数;
用所述第二余数来对所述编码代码字进行校正;
执行第三次除法算法,用所述编码代码字除以所述第二多项式;
确定所述第三次除法算法中是否有第三余数;
如果所述第三次除法算法中有第三余数,则执行第四次除法算法,用所述编码代码字除以所述第一多项式与第二多项式的乘积;
确定所述第四次除法算法中是否有第四余数;
用所述第四余数来对所述编码代码字进行校正。
6、根据权利要求5所述的方法,其特征在于,所述第一多项式的次数为48。
7、根据权利要求5所述的方法,其特征在于,所述第二多项式的次数为4。
8、一种用于有效地校正和检测存储设备的一个介质中的错误的系统,其特征在于,包括:
一个编码器,它对写到所述存储设备的所述介质中的数据进行编码;
一个解码器,它使用至少两个错误校正处理级,对从所述存储设备的所述介质中读取的数据进行解码。
9、根据权利要求8所述的系统,其特征在于,还包括:
一个存储器,
驻留于所述存储器中的一指令集,所述指令可实现使用于所述数据编码和解码中的一个或多个算法。
10、根据权利要求9所述的系统,其特征在于,所述指令集可实现一个可执行于多个处理级的解码过程,所述解码过程包括:
第一处理级,它用于校正一个编码代码字的第一最大符号错误数;
第二处理级,它用于在执行了所述第一处理级的校正之后,检测所述编码代码字中的符号错误;
第三处理级,它用于校正所述编码代码字的第二最大符号错误数。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/757,260 US7426676B2 (en) | 2004-01-14 | 2004-01-14 | Data retrieval from a storage device using a combined error correction and detection approach |
US10/757,260 | 2004-01-14 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1648868A true CN1648868A (zh) | 2005-08-03 |
CN100386735C CN100386735C (zh) | 2008-05-07 |
Family
ID=34654302
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005100066442A Expired - Fee Related CN100386735C (zh) | 2004-01-14 | 2005-01-14 | 对存储于存储设备中的数据进行编码和解码的方法 |
Country Status (4)
Country | Link |
---|---|
US (2) | US7426676B2 (zh) |
EP (1) | EP1560215A3 (zh) |
CN (1) | CN100386735C (zh) |
TW (1) | TWI302650B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105245325A (zh) * | 2014-07-04 | 2016-01-13 | 罗伯特·博世有限公司 | 用于处理数据的方法和设备 |
CN106158046A (zh) * | 2015-05-15 | 2016-11-23 | 爱思开海力士有限公司 | 用于turbo乘积码的误校正避免 |
CN108228396A (zh) * | 2016-12-21 | 2018-06-29 | 伊姆西Ip控股有限责任公司 | 用于处理驱动器的错误的方法和设备 |
CN109417440A (zh) * | 2016-07-29 | 2019-03-01 | 高通股份有限公司 | 用于连续解码过程的提早终止技术 |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2428496A (en) * | 2005-07-15 | 2007-01-31 | Global Silicon Ltd | Error correction for flash memory |
WO2009020143A1 (ja) * | 2007-08-06 | 2009-02-12 | Nec Corporation | 伝送システムと方法ならびにプログラム |
US8468432B2 (en) * | 2009-07-01 | 2013-06-18 | Silicon Motion, Inc. | Coder-decoder and method for encoding and decoding an error correction code |
US9137250B2 (en) | 2011-04-29 | 2015-09-15 | Stephen Lesavich | Method and system for electronic content storage and retrieval using galois fields and information entropy on cloud computing networks |
US9037564B2 (en) | 2011-04-29 | 2015-05-19 | Stephen Lesavich | Method and system for electronic content storage and retrieval with galois fields on cloud computing networks |
US9361479B2 (en) | 2011-04-29 | 2016-06-07 | Stephen Lesavich | Method and system for electronic content storage and retrieval using Galois fields and geometric shapes on cloud computing networks |
US9569771B2 (en) | 2011-04-29 | 2017-02-14 | Stephen Lesavich | Method and system for storage and retrieval of blockchain blocks using galois fields |
US8683296B2 (en) | 2011-12-30 | 2014-03-25 | Streamscale, Inc. | Accelerated erasure coding system and method |
US8914706B2 (en) | 2011-12-30 | 2014-12-16 | Streamscale, Inc. | Using parity data for concurrent data authentication, correction, compression, and encryption |
US8788915B2 (en) | 2012-03-05 | 2014-07-22 | Micron Technology, Inc. | Apparatuses and methods for encoding using error protection codes |
EP2885785B1 (en) * | 2013-03-27 | 2021-10-13 | Irdeto B.V. | Data processing |
KR102478760B1 (ko) * | 2018-05-08 | 2022-12-19 | 삼성전자주식회사 | 집적 회로 및 집적 회로의 전류를 생성하는 방법 |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4413339A (en) * | 1981-06-24 | 1983-11-01 | Digital Equipment Corporation | Multiple error detecting and correcting system employing Reed-Solomon codes |
JPH0612895B2 (ja) * | 1983-01-24 | 1994-02-16 | 株式会社東芝 | 情報処理システム |
US4637021A (en) * | 1983-09-28 | 1987-01-13 | Pioneer Electronic Corporation | Multiple pass error correction |
US4667326A (en) * | 1984-12-20 | 1987-05-19 | Advanced Micro Devices, Inc. | Method and apparatus for error detection and correction in systems comprising floppy and/or hard disk drives |
US4763330A (en) * | 1986-05-06 | 1988-08-09 | Mita Industrial Co., Ltd. | Syndrome calculating apparatus |
US4782490A (en) * | 1987-03-16 | 1988-11-01 | Cythera Corporation | Method and a system for multiple error detection and correction |
US4916702A (en) * | 1988-06-17 | 1990-04-10 | Cyclotomics, Inc. | Elongated burst trapping |
US5241546A (en) | 1991-02-01 | 1993-08-31 | Quantum Corporation | On-the-fly error correction with embedded digital controller |
US5241548A (en) * | 1991-05-23 | 1993-08-31 | Motorola, Inc. | Method for error correction of a transmitted data word |
DE69327683T2 (de) * | 1992-05-19 | 2000-07-27 | Koninklijke Philips Electronics N.V., Eindhoven | Erweitertes fehlergeschütztes Kommunikationssystem |
EP0571019B1 (en) | 1992-05-19 | 2000-01-26 | Koninklijke Philips Electronics N.V. | Extended error protected communication system |
US5629949A (en) * | 1993-09-21 | 1997-05-13 | Cirrus Logic, Inc. | Error correction verification method and apparatus using CRC check remainders |
US5465260A (en) * | 1993-11-04 | 1995-11-07 | Cirrus Logic, Inc. | Dual purpose cyclic redundancy check |
US5699368A (en) * | 1994-03-25 | 1997-12-16 | Mitsubishi Denki Kabushiki Kaisha | Error-correcting encoder, error-correcting decoder, and data transmitting system with error-correcting codes |
US5642366A (en) * | 1994-07-05 | 1997-06-24 | Adaptec, Inc. | Global parity symbol for interleaved reed-solomon coded data |
US5657331A (en) * | 1995-03-13 | 1997-08-12 | Samsung Electronics Co., Ltd. | Method and apparatus for the generation of simple burst error correcting cyclic codes for use in burst error trapping decoders |
US5778009A (en) * | 1995-06-14 | 1998-07-07 | Quantum Corporation | Dedicated ALU architecture for 10-bit Reed-Solomon error correction module |
US5822336A (en) * | 1996-11-14 | 1998-10-13 | Quantum Corporation | Modified reed solomon code selection and encoding system |
US5948117A (en) * | 1997-01-23 | 1999-09-07 | Quantum Corporation | Modified Reed-Solomon error correction system using (W+i+1)-bit representations of symbols of GF(2w+i) |
US6058500A (en) * | 1998-01-20 | 2000-05-02 | 3Com Corporation | High-speed syndrome calculation |
US6363511B1 (en) * | 1998-03-31 | 2002-03-26 | Stmicroelectronics N.V. | Device and method for decoding data streams from storage media |
US6615387B1 (en) * | 1998-09-22 | 2003-09-02 | Seagate Technology Llc | Method and apparatus for error detection |
US6446234B1 (en) * | 1999-03-16 | 2002-09-03 | International Business Machines Corporation | Method and apparatus for updating cyclic redundancy check information for data storage |
US6463564B1 (en) * | 1999-09-14 | 2002-10-08 | Maxtor Corporation | Mis-synchronization detection system |
JP3975245B2 (ja) * | 1999-12-16 | 2007-09-12 | 株式会社ルネサステクノロジ | 記録再生装置および半導体メモリ |
US6671850B1 (en) * | 2000-05-01 | 2003-12-30 | International Business Machines Corporation | On-the-fly algebraic error correction system and method for reducing error location search |
US6883130B2 (en) * | 2001-05-24 | 2005-04-19 | Telefonaktiebolaget Lm Ericsson (Publ) | Enhanced and adaptive error detection in digital communications |
US6978415B1 (en) * | 2001-11-27 | 2005-12-20 | Maxtor Corporation | Variable redundancy cyclic code encoders |
US7296212B1 (en) * | 2002-11-15 | 2007-11-13 | Broadwing Corporation | Multi-dimensional irregular array codes and methods for forward error correction, and apparatuses and systems employing such codes and methods |
-
2004
- 2004-01-14 US US10/757,260 patent/US7426676B2/en not_active Expired - Fee Related
-
2005
- 2005-01-13 EP EP05000588A patent/EP1560215A3/en not_active Withdrawn
- 2005-01-14 TW TW094101249A patent/TWI302650B/zh not_active IP Right Cessation
- 2005-01-14 CN CNB2005100066442A patent/CN100386735C/zh not_active Expired - Fee Related
-
2008
- 2008-08-28 US US12/200,528 patent/US8429489B2/en not_active Expired - Fee Related
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105245325A (zh) * | 2014-07-04 | 2016-01-13 | 罗伯特·博世有限公司 | 用于处理数据的方法和设备 |
CN105245325B (zh) * | 2014-07-04 | 2021-07-02 | 罗伯特·博世有限公司 | 用于处理数据的方法和设备 |
CN106158046A (zh) * | 2015-05-15 | 2016-11-23 | 爱思开海力士有限公司 | 用于turbo乘积码的误校正避免 |
CN109417440A (zh) * | 2016-07-29 | 2019-03-01 | 高通股份有限公司 | 用于连续解码过程的提早终止技术 |
CN109417440B (zh) * | 2016-07-29 | 2021-08-06 | 高通股份有限公司 | 用于连续解码过程的提早终止技术 |
CN108228396A (zh) * | 2016-12-21 | 2018-06-29 | 伊姆西Ip控股有限责任公司 | 用于处理驱动器的错误的方法和设备 |
Also Published As
Publication number | Publication date |
---|---|
EP1560215A2 (en) | 2005-08-03 |
US20050154964A1 (en) | 2005-07-14 |
TWI302650B (en) | 2008-11-01 |
US7426676B2 (en) | 2008-09-16 |
CN100386735C (zh) | 2008-05-07 |
US8429489B2 (en) | 2013-04-23 |
EP1560215A3 (en) | 2006-01-04 |
TW200528974A (en) | 2005-09-01 |
US20080320369A1 (en) | 2008-12-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100386735C (zh) | 对存储于存储设备中的数据进行编码和解码的方法 | |
KR100989532B1 (ko) | 플래쉬 에러 정정 | |
JP4668970B2 (ja) | フォールトトレラントデータストレージシステムにおけるブロックレベルのデータ破損の検出および訂正 | |
US8166370B1 (en) | Efficient RAID ECC controller for RAID systems | |
US7188295B2 (en) | Method and apparatus for embedding an additional layer of error correction into an error correcting code | |
CN101211667A (zh) | 降低误纠概率的纠错电路和方法和包括该电路的存储设备 | |
JP5363686B2 (ja) | 統合されたデータおよびヘッダ保護を含むコード化データをデコードするための方法および磁気テープ・ドライブ(統合されたデータおよびヘッダ保護を含むコード化データのデコード) | |
KR20080106849A (ko) | 재생 장치 | |
JP2009295273A (ja) | 誤り訂正符号エンティティのための消失訂正のコンピュータ実現化方法 | |
WO2017103716A1 (en) | Post-decoding error check with diagnostics for product codes | |
JP2002509331A5 (zh) | ||
WO2007094055A1 (ja) | 誤り検出訂正回路及び半導体メモリ | |
US6009550A (en) | PBA recovery apparatus and method for interleaved reed-solomon codes | |
TWI397811B (zh) | 錯誤修正碼之編碼及解碼方法以及編碼解碼器 | |
JP2001196942A (ja) | インターリーブ型符号ワードにおける誤りを見つけ出す冗長システム及び方法 | |
JP2007299393A (ja) | 回転する記憶媒体の複数の層にデータを読み書きする方法、プログラム及びデータ記憶装置 | |
US6615384B1 (en) | Encoding/decoding method and apparatus and disk storage device | |
US6694473B1 (en) | Parallel signal decoding method | |
Jing et al. | A fast error and erasure correction algorithm for a simple RS-RAID | |
CN117116329A (zh) | 一种适用于光存储的自适应纠错方法、设备及系统 | |
JP2524119B2 (ja) | 誤り訂正方法 | |
Gilroy | Appendix II: RAID 6 tutorial |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20080507 Termination date: 20170114 |