CN100386735C - 对存储于存储设备中的数据进行编码和解码的方法 - Google Patents

对存储于存储设备中的数据进行编码和解码的方法 Download PDF

Info

Publication number
CN100386735C
CN100386735C CNB2005100066442A CN200510006644A CN100386735C CN 100386735 C CN100386735 C CN 100386735C CN B2005100066442 A CNB2005100066442 A CN B2005100066442A CN 200510006644 A CN200510006644 A CN 200510006644A CN 100386735 C CN100386735 C CN 100386735C
Authority
CN
China
Prior art keywords
code word
polynomial
remainder
data
time
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.)
Expired - Fee Related
Application number
CNB2005100066442A
Other languages
English (en)
Other versions
CN1648868A (zh
Inventor
安德烈·维蒂尔夫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Broadcom Corp
Zyray Wireless Inc
Original Assignee
Zyray Wireless Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zyray Wireless Inc filed Critical Zyray Wireless Inc
Publication of CN1648868A publication Critical patent/CN1648868A/zh
Application granted granted Critical
Publication of CN100386735C publication Critical patent/CN100386735C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1833Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error 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/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic 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/1515Reed-Solomon codes

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Engineering & Computer Science (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (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 (3)

1.一种对存储于存储设备中的数据进行编码和解码的方法,其特征在于,其中,编码方法包括以下步骤:
(S204)生成第一多项式p(x),其根包括伽罗瓦域中一个原始元素的一次或连续的多次幂;
(S208)生成第二多项式f(x),其根包括所述伽罗瓦域中一个原始元素的一次或连续的多次幂;
(S212)生成所述第一多项式与第二多项式的乘积g(x);
(S216)用第一编码代码字C(x)除以所述乘积g(x),得到一个余数r(x);
(S220)将所述余数r(x)与所述第一编码代码字C(x)相加,得到第二编码代码字C*(x);
其中,解码方法包括以下步骤:
(S304)执行第一次除法算法,用所述第二编码代码字C*(x)除以所述第二多项式f(x);
(S308)确定所述第一次除法算法中是否有第一余数,如果有则执行步骤(S312),否则跳到步骤(S316);
(S312)用所述第一余数来对所述第二编码代码字C*(x)进行第一次校正;
(S314)确定所述第二编码代码字C*(x)是否被成功解码,如果是则执行所述步骤(S316),否则跳到步骤(S324);
(S316)执行第二次除法算法,用所述第二编码代码字C*(x)除以所述第一多项式p(x);
(S320)确定所述第二次除法算法中是否有第二余数,如果有则执行步骤(S324),否则表示解码成功并跳到步骤(S336);
(S324)执行第三次除法算法,用所述第二编码代码字C*(x)除以所述乘积g(x),得到第三余数;
(S328)用所述第三余数来对所述第二编码代码字C*(x)进行第二次校正;
(S332)确定所述第二编码代码字C*(x)是否被成功解码,如果是表示解码成功,否则表示解码不成功;
(S336)结束。
2.根据权利要求1所述的方法,其特征在于,所述第一多项式的次数等于4,所述第二多项式的次数等于48。
3.根据权利要求1或2所述的方法,其特征在于,
所述第一多项式p(x)为:p(x)=(x-a1)…(x-a2k);
所述第二多项式f(x)为:f(x)=(x-a2k+1)…(x-a2(t+k));
所述乘积g(x)为:g(x)=p(x)f(x)=(x-a1)…(x-a2(t+k));
所述第一编码代码字C(x)为:C(x)=c2(t+k)x2(t+k)+c2(t+k)x2(t+k)+1+…+cn-1x(n-1)
所述余数r(x)为:r(x)=r0+r1x+…+r2x2(t+k)-1
所述第二编码代码字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)
CNB2005100066442A 2004-01-14 2005-01-14 对存储于存储设备中的数据进行编码和解码的方法 Expired - Fee Related CN100386735C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/757,260 2004-01-14
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

Publications (2)

Publication Number Publication Date
CN1648868A CN1648868A (zh) 2005-08-03
CN100386735C true 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)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2428496A (en) * 2005-07-15 2007-01-31 Global Silicon Ltd Error correction for flash memory
JP5316411B2 (ja) * 2007-08-06 2013-10-16 日本電気株式会社 送信装置と受信装置
US8468432B2 (en) * 2009-07-01 2013-06-18 Silicon Motion, Inc. Coder-decoder and method for encoding and decoding an error correction code
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
US9569771B2 (en) 2011-04-29 2017-02-14 Stephen Lesavich Method and system for storage and retrieval of blockchain blocks using galois fields
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
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
US8914706B2 (en) 2011-12-30 2014-12-16 Streamscale, Inc. Using parity data for concurrent data authentication, correction, compression, and encryption
US8683296B2 (en) 2011-12-30 2014-03-25 Streamscale, Inc. Accelerated erasure coding system and method
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
DE102014213071A1 (de) * 2014-07-04 2016-01-07 Robert Bosch Gmbh Verfahren und Vorrichtung zur Verarbeitung von Daten
US10348335B2 (en) * 2015-05-15 2019-07-09 SK Hynix Inc. Miscorrection avoidance for turbo product codes
US10411833B2 (en) * 2016-07-29 2019-09-10 Qualcomm Incorporated Early termination techniques for successive decoding processes
CN108228396B (zh) * 2016-12-21 2021-03-23 伊姆西Ip控股有限责任公司 用于处理驱动器的错误的方法和设备
KR102478760B1 (ko) * 2018-05-08 2022-12-19 삼성전자주식회사 집적 회로 및 집적 회로의 전류를 생성하는 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4637021A (en) * 1983-09-28 1987-01-13 Pioneer Electronic Corporation Multiple pass error correction
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
CN1126397A (zh) * 1994-03-25 1996-07-10 三菱电机株式会社 纠错编码器、纠错解码器和具有纠错码的数据传输系统

Family Cites Families (25)

* Cited by examiner, † Cited by third party
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 株式会社東芝 情報処理システム
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
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
ES2144000T3 (es) * 1992-05-19 2000-06-01 Koninkl Philips Electronics Nv Sistema expandido de comunicacion con proteccion de error.
EP0571019B1 (en) 1992-05-19 2000-01-26 Koninklijke Philips Electronics N.V. Extended error protected communication system
US5465260A (en) * 1993-11-04 1995-11-07 Cirrus Logic, Inc. Dual purpose cyclic redundancy check
US5629949A (en) * 1993-09-21 1997-05-13 Cirrus Logic, Inc. Error correction verification method and apparatus using CRC check remainders
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

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4637021A (en) * 1983-09-28 1987-01-13 Pioneer Electronic Corporation Multiple pass error correction
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
CN1126397A (zh) * 1994-03-25 1996-07-10 三菱电机株式会社 纠错编码器、纠错解码器和具有纠错码的数据传输系统

Also Published As

Publication number Publication date
US20080320369A1 (en) 2008-12-25
US7426676B2 (en) 2008-09-16
CN1648868A (zh) 2005-08-03
EP1560215A3 (en) 2006-01-04
TW200528974A (en) 2005-09-01
TWI302650B (en) 2008-11-01
US8429489B2 (en) 2013-04-23
EP1560215A2 (en) 2005-08-03
US20050154964A1 (en) 2005-07-14

Similar Documents

Publication Publication Date Title
CN100386735C (zh) 对存储于存储设备中的数据进行编码和解码的方法
CN100557984C (zh) 编码和解码事前部分地已知的信息
US8166370B1 (en) Efficient RAID ECC controller for RAID systems
CN101047388B (zh) 纠错装置
CN100539444C (zh) 用于将附加纠错层嵌入到纠错码中的方法和设备
EP0155038A1 (en) Fast decoder for reed-solomon codes which can also be used as an encoder, and recording/playback apparatus comprising such an encoder/decoder
CN101211667A (zh) 降低误纠概率的纠错电路和方法和包括该电路的存储设备
JP2009501380A (ja) フラッシュエラー訂正
CN101501784A (zh) 用于利用乘积码来纠正非易失性存储器中的错误的系统和方法
CN110768751B (zh) 译码的方法与电路、存储器控制器、储存装置、控制器
CN110071727B (zh) 编码方法、译码方法、纠错方法及装置
CN106874140B (zh) 数据存储方法及装置
CN111597072B (zh) 差错控制编码ecc系统及包括ecc系统的存储器设备
JP2005522137A5 (zh)
JP2009295273A (ja) 誤り訂正符号エンティティのための消失訂正のコンピュータ実現化方法
JP2002509331A5 (zh)
TWI397811B (zh) 錯誤修正碼之編碼及解碼方法以及編碼解碼器
JP2007243953A (ja) エラー補正コードストライピング
JP2001196942A (ja) インターリーブ型符号ワードにおける誤りを見つけ出す冗長システム及び方法
JP4674371B2 (ja) エラー訂正デコーディング方法およびその装置
US5774648A (en) Address generator for error control system
JPH08293802A (ja) インターリーブ式誤り訂正方法
CN100399462C (zh) 具有错误处理的光盘数据读取方法
US6615384B1 (en) Encoding/decoding method and apparatus and disk storage device
Jing et al. A fast error and erasure correction algorithm for a simple RS-RAID

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