[go: up one dir, main page]

CN1575548A - 用于里德索罗门码的解码方法和解码器 - Google Patents

用于里德索罗门码的解码方法和解码器 Download PDF

Info

Publication number
CN1575548A
CN1575548A CNA028211006A CN02821100A CN1575548A CN 1575548 A CN1575548 A CN 1575548A CN A028211006 A CNA028211006 A CN A028211006A CN 02821100 A CN02821100 A CN 02821100A CN 1575548 A CN1575548 A CN 1575548A
Authority
CN
China
Prior art keywords
reed solomon
decoder
sigma
data
product
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
Application number
CNA028211006A
Other languages
English (en)
Inventor
E·马科内蒂
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.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
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
Priority claimed from GBGB0125748.4A external-priority patent/GB0125748D0/en
Application filed by Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of CN1575548A publication Critical patent/CN1575548A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/1555Pipelined decoder implementations
    • 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
    • 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/1525Determination and particular use of error location polynomials
    • H03M13/153Determination and particular use of error location polynomials using the Berlekamp-Massey algorithm
    • 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/154Error and erasure correction, e.g. by using the error and erasure locator or Forney polynomial
    • 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/65Purpose and implementation aspects
    • H03M13/6502Reduction of hardware complexity or efficient processing

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

一种反自由Berlekamp-Massey算法的改良,在这种算法中利用具有公共索引(j)的系数来进行偏差(⊿)计算,因而减少了所需要的乘法器数目。该误符量值也可利用具有公共索引(j)的系数来计算,因而也减少了所需要的乘法器的数目。公共的乘法器(60)可被用于两种计算,因而进一步减少了所需要的乘法器数目。

Description

用于里德索罗门码的解码方法和解码器
技术领域
本发明涉及里德索罗门(REED SOLOMON)编码数据的解码方法、为此的解码器、和包括里德索罗门编码数据解码用的解码器的电子装置。
背景技术
在包括光盘(CD)、数字万用盘(DVD)、数字视频广播(DVB)和硬盘驱动器(HDD)的各种各样的系统内,里德索罗门(RS)码被用来纠错和擦除。(N,K)里德索罗门码具有N个符号,在其代码中K个符号是信息符号,该里德索罗门码可用来在代码中改正s个符号擦除和υ个符号错误,这里s+2υ≤N-K。含有错误和擦除的里德索罗门代码,当该擦除的位置已知时,就可通过下列计算来解码:首先计算该代码的校正子(syndrome),第二从该校正子和擦除位置计算误符(错误和擦除)定位子多项式(errata locator polynomial),第三计算该误符多项式的根来获得该错误和擦除的位置,第四计算误符求值子多项式(errata evaluator polynomial),以及第五计算误符求值子多项式的根来获得该错误和擦除的量值。在本技术中众所周知,Berlekamp-Massey(BM)算法或欧几里得算法都可被用来确定误符定位子多项式和误符求值子多项式;而Chien搜索可被用来确定该多项式的根。由Blahut在其文章:“Theory and practice of errorcontrol codes”,R.E. Blahut,Addison-Wesley,1984中提出,误符定位子多项式可通过使BM算法初始化,用擦除定位子多项式和校正子多项式直接计算,以回避对计算Forney校正子的需要,Forney校正子被定义在下述文章中:″On decoding BCH codes″Forney,Jr.. IEEE Trans. Inform. Theory,vol. IT-11,pp549-557,Oct.1965.
根据这种思想,Jyh-Horng Jeng和Trieu-Kien Troung在文章:“On decoding of both errors and erasures of a Reed-Solomon code using an inverse-free Berlekamp-Masseyalgorithm”IEEE Trans.Commun.,vol.4 7,pp.1488-1494,Oct1999中提出一种反自由BM算法以便直接在用来校正错误和擦除的RS解码器中寻求误符定位子多项式,如下所述。
令g(x)为在GF(2m)上的(N,K)RS码的代码发生器多项式,这里g(x)按其最一般的形式被定义为:
g ( x ) = Π j = 0 N - K - 1 ( x - α m ( j + q ) ) - - - ( 1 )
其中α是构建GF(2m)的原始多项式p(x)的根,而q和m是确定代码的参数。如果我们将接收的RS代码矢量表示成 r=[r0,r1,...,rn-1],则众所周知,该被定义为:
S ( x ) = Σ n = 1 N - K S n x n - - - ( 2 )
的校正子多项式S(x)就可被计算如下:
S n = Σ i = 0 N - 1 r 1 · α m ( n + q ) i - - - ( 3 )
如果Zi和Xi分别是 r内的第i个已知擦除位置和第i个错误位置,则擦除定位子多项式就被定义为:
Λ ( x ) = Π j = 1 s ( 1 - Z j x ) = Σ j = 0 s Λ j x j - - - ( 4 )
其中Λ0=1。Λ(x)是在相反擦除位置上为0的多项式。在相反的错误和擦除位置上为0的误符定位子多项式被定义为:
τ ( x ) = [ Π i = 1 v ( 1 + X 1 x ) ] [ Π n = 1 s ( 1 + Z n x ) ] = Σ j = 0 v + s τ j x j - - - ( 5 )
反自由BM算法(Inverse-Free BM algorithm)被用来从校正子多项式S(x)和擦除定位子多项式Λ(x)确定该误符定位于多项式τ(x),它被按下述方法确定:
步骤1.首先定义:
k=0           l(0)=0       γ(0)=1         (6)
λ(0)(x)=Λ(x)      μ(0)(x)=Λ(x)          (7)
其中k是一迭代计数器。
步骤2.设k=k+1。如k超过可被该代码校正的错误的最大数目,即如k≥N-K-s则停止。否则,确定
δ ( k ) = Σ j = 0 N - K μ j ( k - 1 ) S k + s - j - - - ( 8 )
δ(k)被叫做偏差。
步骤3.对下述公式进行计算:
Figure A0282110000062
步骤4。返回步骤2.
误符定位子多项式τ(x)可通过使μ(x)归一化的方法获得如下:
τ(x)=μ(x)/μ0其中μ0是μ(x)中x0的系数,Chien搜索此后可用来决定误符位置。该误符求值子多项式A(x)被定义为:
            A(x)≡S(x)τ(x)modxN-K-I    (10)此后被用来计算误符的量值。
如Jeng和Troung所描述的那样,该误符(errata)的量值由下式给定
w ~ r = A ( Z ~ r - 1 ) Z ~ r - ( 1 + q ) m τ ′ ( Z ~ r - 1 ) , 1≤r≤s+v,其中 是第r个误符位置, 是在 x = Z ~ r - 1 时τ(x)相对于x的导数。
反自由BM算法的优点在于可避免对Forney校正子和误符定位子多项式的分开计算。其缺点是:与偏差计算有关的乘法器的数目是奇偶符号数的平方的函数,这样就暗示在用硅来实现解码器的面积方面的巨大成本。
发明公开
本发明的目的在于为里德索罗门编码数据提供一种改进的解码方法和解码器。
按照本发明的第一方面,提供了一种解码里德索罗门编码数据的方法,其中偏差计算包括第一乘积项的求和,这里每个第一乘积项都包括具有第一公共索引的系数的第一乘积。
按照根据多项式μ(x)F(x)和E(x)的系数计算偏差δ的方法,其中只有具有公共索引的系数才被相乘在一起,在计算误符定位子多项式τ(x)时所涉及的伽罗瓦域(GF)乘法器的数目是奇偶符号数的线性函数。因而解码器实现的复杂性可被减小,而且对于解码所需要的时钟周期数也被减少。
按照本发明的第二方面,提供了一种解码里德索罗门编码数据的方法,其中误符量值的计算包括第二乘积项的求和,这里每个第二乘积项都包括具有第二公共索引的系数的第二乘积。
按照根据多项式系数μ(x)F(x)和E(x)计算误符量值的方法,其中只有具有公共索引的系数才被相乘在一起,在计算误符量值时所涉及的GF乘法器的数目是奇偶符号数的线性函数。因而解码器实现的复杂性可被减小,而且对于解码所需要的时钟周期数也被减少。
此外,在计算第一和/或第二乘积项时使用环形结构就可使计算本身与在该算法中所涉及的迭代数无关。
按照本发明的第三方面,提供了一种解码里德索罗门编码数据的解码器,包括按照本发明的第一或第二方面的运算装置。
按照本发明的第四方面,提供了按照权利要求6所述的一种解码里德索罗门编码数据的解码器。
按照本发明的第四方面,提供了一种电子装置,它包括按照本发明第三或第四方面所述的解码器。该电子装置可以是一包括解码器的集成电路。电子装置可以是,例如,一从存储介质,如光学存储盘或磁学存储盘,读取数据的设备。该电子装置可以是,例如,一接收传送的信号,如无线信号的设备。
按照根据具有公共索引的系数的乘积计算偏差和错误量值的方法,也可使用用于计算偏差的乘法器来计算错误的量值,进一步减少解码器的复杂性。
新的多项式F(k)(x)被定义为:
F ( k ) ( x ) = Σ j = 0 N - K - 1 F j ( k ) x j - - - ( 11 )
其中一般系数(generic coefficient)Fj (k)为:
F j ( 0 ) = S ( s - j ) mod ( N - K ) + 1 - - - ( 12 )
        F(k)(x)=xF(k-1)(x)mod(xN-K+1)    (13)
F(k)(x)的方程(13)代表F(k-1)(x)的循环移位,使能多项式E(k)(x)被定义为:
E ( k ) ( x ) = Σ j = 0 N - K - 1 E j ( k ) x j - - - ( 14 )
其中该一般系数Ej (k)为:
Figure A0282110000084
        E(k)(x)=xE(k-1)(x)mod(xN-K+1)    (16)
E(k)(x)的方程(16)代表E(k-1)(x)的循环移位。在解码器中两变量F(k)(x)和E(k)(x)被用作两环形寄存器,像在方程(12)和(15)中那样被初始化后,环形寄存器将按照方程(13)和(16)在每个时钟周期上发生移位。在方程(8)中定义的偏差是作为F(k)(x)和E(k)(x)的函数来计算的:
δ ( k ) = Σ j = 0 N - K - 1 μ j ( k - 1 ) F j ( k - 1 ) E j ( k - 1 ) - - - ( 17 )
在计算δ(k)时GF乘法总是涉及相同索引的系数,即第j个系数,因而该GF乘法器的数目就等于N-K。在现行技术中按照方程(8)计算δ(k)时,该GF乘法涉及不同的索引,即第j和第(k+s-j),该后面的索引是与迭代数有关的;因此按照现行技术要求的GF乘法器数就等于(N-K)2
为了计算误符量值,代替在方程(10)中定义的A(x),用下式定义了一新的变量B(x):
B ( x ) = Σ t = 1 N - K B t x t = S ( x ) μ ( x ) mod x N - K + 1 - - - ( 18 )
其中B(x)的一般系数Bt为:
B t = Σ j = 0 t - 1 μ j ( N - K - s ) S t - j - - - ( 19 )
通过如下那样对F(k)(x)和E(k)(x)进行初始化:
F j ( 0 ) = S ( - j ) mod ( N - K ) + 1 - - - ( 20 )
Figure A0282110000095
则B(x)的每个系数Bt就被计算如下:
B t = Σ j = 0 N - K - 1 μ j ( N - K - s ) F j ( t ) E j ( j ) - - - ( 22 )
在解码器中,将循环移位应用到F(k)(x)和E(k)(x)上,就像在方程(13)和(16)中对B(x)的每个系数Bt那样。
在计算Bt时,GF乘法总是涉及相同索引的系数,即第j个系数,因而在硬件执行过程中所要求的GF乘法器的数目就等于N-K。在按照方程(10)对误符求值子多项式A(x)进行现行技术的计算时,该GF乘法就涉及不同的索引,即第j和第k+s-j,后面的索引是与迭代数有关的;因此按照现行技术该GF乘法器的数目就等于(N-K)2。此外在不同时间计算B(x)时可使用与计算偏差δ(k)所使用的相同的资源。
从B(x),该误符量值被计算成:
W ~ r = B ( Z ~ r - 1 ) Z ~ r - ( 1 + q ) m μ ′ ( Z ~ r - 1 ) , 1 ≤ r ≤ s + υ - - - ( 23 )
其中
Figure A0282110000102
是第r个误符位置, 是在 X = z ~ r - 1 上计值时μ(x)相对于x的导数。
附图简介
现在将参考下述附图通过例子对本发明进行描述:
图1是计算δ(k)和B(x)的电路的框图,
图2是按照本发明的改进的BM解码算法的流程图,
图3是编码装置的框图,
图4是说明里德索罗门解码的三个主要步骤的流程图,
图5图示出里德索罗门解码器的管线运作,它包括改进的BM解码算法,
图6是包括里德索罗门解码器的电子装置的框图。
完成本发明的方式
参考图1,该电路包括环形移位寄存器10,20分别用来存储F(k)(x)和E(k)(x),该E(k)(x)寄存器20在其反馈路径上包括一反相器30。存在有一寄存器40用来存储μ(x)。来自F(k)(x)寄存器相应级的输出在具有设定为逻辑0的控制线55的相应多路复用器50中被多路复用。来自E(k)(x)寄存器20的相应级的输出起着相应多路复用器50的控制线的作用。来自相应多路复用器50的输出在相应乘法器60中与来自μ(x)寄存器40的相应级的输出相乘。相应乘法的积在加法器70中求和,并经多路复用器51传送到存储B(x)的寄存器90和经多路复用器52传送到存储偏差δ的寄存器80。存在有一控制装置56,用来控制该多路复用器51和52,以便确定该加法器70的输出是传送到存储偏差δ的寄存器80或是传送到存储B(x)的寄存器90。
参考图2所示流程图,按照本发明的改进BM算法(R-BM)如下所述,每个R-BM步骤都是在一单个时钟周期内完成的。方框110代表算法的开始。在方框112,对s的值,擦除的数目,进行检验。如果s超出编码的校正能力则错误或擦除就不能被校正,而且该算法就在方框114被终止,否则流程就进行到方框120。
在方框120进行该R-BM的步骤1,在这步骤中将按方程(6)和(7)对在步骤2中使用的变量k,l,y和λ(x)进行初始化。这些变量在图1中没作说明。在寄存器40中对μ(x)按照方程(7)进行初始化。在寄存器10和20中分别按照方程(12)和(15)对F(k)(x)如E(k)(x)进行初始化。
然后在方框130再次检验s的值,擦除数。如果该s值是这样的大,以致不能校正错误,而只能校正擦除,则当擦除定位子多项式Λ(x)足够大而误符定位子多项式τ(x)不需要计算时,该R-BM算法就继续到下述的R-BM步骤3。不然,当s足够小以致能校正错误时则就到方框140进行R-BM步骤2,以确定误符(擦除和错误)定位子多项式τ(x)。在R-BM步骤2,该迭代计数器k被增大。按照方程(17)计算偏差δ并将其存储进寄存器80中。变量μ(x),λ(x),l和y将按照方程(9)进行更新。按照方程(13)和(16)分别在寄存器10和20中进行变量F(k)(x)和E(k)(x)的右移位。
对于每个k值迭代地重复R-BM步骤2并在每次迭代之后在方框150对k值进行检验。如果k超出该编码的错误校正能力,在顾及已知的擦除数s时,则就到方框160进行步骤3,否则进行R-BM步骤2的下一次迭代。R-BM步骤2迭代的结果就是寄存器40内的多项式μ(x)。在R-BM步骤3,该下计数器bcnt被初始化为N-K-1。分别按照方程(20)和(21)在寄存器10和20中对F(k)(x)和E(k)(x)进行初始化。然后该算法进行到在方框170的R-BM步骤4。
在R-BM步骤4,按照方程(22),在寄存器90中计算B(x)的系数Bt,分别按照方程(13)和(16)在寄存器10和20中使F(k)(x)和E(k)(x)移位,和使bcnt减小。对bcnt的每个值迭代地重复R-BM步骤4,在每次迭代之后在方框180检验bcnt的值。如果bcnt已达到0,则所有B(x)的系数都已被计算,该算法就在方框190停止,否则就进行R-BM步骤4的下一次迭代。
在编解码器200中实施图1所示电路,如图3所示,该编解码器包括里德索罗门解码器210,两个双端口RAM 220,225和一对接于该解码器和RAM之间的控制块230。第一RAM 220具有保持2数据帧的能力,而第二RAM 225可保持一数据帧,一数据帧等于一里德索罗门代码。当该解码器210运行该校正子和该R-BM算法计算时,该第二RAM225存储数据。该第二RAM 225服务于两个目的。它允许用户编程(借助一串行编程接口;未画出),按照其顺序从该解码器200输出该解码的数据帧,也就是,字节0到N-I或字节N-I到0。在被传送之前它还可使数据帧延迟,这就使校正信号能与指示接收的代码是否成功被解码的数据帧一起传送。
编解码器200是以一管线结构按三个主要阶段实施的,如图4所示。存在于接收代码中的擦除数s在解码过程开始时是已知的。在第一阶段中该校正子多项式S(x)和擦除定位子多项式Λ(x)可利用已知方法来计算。阶段1是在N个时钟周期内运行的。第二阶段是如上所述的R-BM算法,参考图2。第二阶段进行的时间随存在于接收代码中的擦除数而变化,并在没有擦除而只有错误要校正时具有一最大值2(N-K)+2,而在没有错误而只有擦除要校正时具有一最小值(N-K)+2。第三阶段是著名的Chien搜索,在这阶段将计算μ(x)的根和计算的误符的量值,所述的根与该误符定位子多项式τ(x)的根相同。阶段3进行的时间为N个时钟周期。
该3-阶段的编解码器200被设计成具有一管线结构,使得在任何时间该编解码器200都能处理3个接收代码。该管线结构的计时图示于图5中。当阶段1在第n帧运作时,阶段2和3将分别在第(n-1)和(n-2)帧上运作。
通过编解码器200的等待时间取决于代码的大小、在接收代码中的奇偶位数和擦除与错误数。它在时钟周期内的值由公式2N+2(N-K)-s给定。例如,对于DVB的标准RS码(204,188)来说,最长的等待时间为440个时钟周期,而最短的等待时间为424个时钟周期。
参考图6,在这里图示出了一电子装置,用来从一光学数据存储盘提取里德索罗门编码的声频和视频数据,并将提取的数据转变成声频和视频信号。该装置300包括一读取装置310用来从一光学数据存储盘读取里德索罗门编码数据。按照本发明第三方面,与该读取装置的输出偶联的是一里德索罗门解码器320,用来对被该读取装置310读取的里德索罗门编码数据进行解码。与里德索罗门解码器320的输出偶联的是一反编排装置(deformating means)330用来从解码数据提取声频和视频数据。与反编排装置330输出偶联的是一模-数转换装置340,用来将声频和视频数据转变成模拟的声频和视频信号并将该模拟声频和视频信号提供在输出端350上。该读取装置310,里德索罗门解码器320,反编排装置330以及模-数转换装置340的运作都受处理装置360的控制,该处理装置还可控制用户界面(未画出)。
工业实用性
本发明可用于使用里德索罗门码的数字存储和通信设备。

Claims (7)

1.里德索罗门编码数据的解码方法,其中偏差的计算包括第一乘积项的求和,这里每个第一乘积项包括具有第一公共索引的系数的第一乘积。
2.按权利要求1的里德索罗门编码数据的解码方法,其中所述第一乘积项的总和为 Σ j = 0 N - K - 1 μ j ( k - 1 ) F j ( k - 1 ) E j ( k - 1 ) , 具有第一公共索引的系数的第一乘积为 μ j ( k - 1 ) F j ( k - 1 ) E j ( k - 1 ) , 而第一公共索引为j,这里k为迭代计数器,N是该编码数据中的符号数,K是该编码数据中的信息符号数,s是该编码数据中的擦除数,Sn是该编码数据中的校正子,这里n=1到N-K,而且其中
F ( k ) ( x ) = Σ j = 0 N - K - 1 F j ( k ) x j ,
F j ( 0 ) = S ( s - j ) mod ( N - K ) + 1 ,
F(k)(x)=xF(k-1)(x)mod(xN-K+1),
E ( k ) ( x ) = Σ j = 0 N - K - 1 E j ( k ) x j ,
如果j≤s, E J ( 0 ) = 1 , 否则为0,以及
E(k)(x)=xE(k-1)(x)mod(xN-K+1)。
3.里德索罗门编码数据的解码方法,其中误符量值计算包括第二乘积项的求和,其中每个第二乘积项包括具有第二公共索引的系数的第二乘积。
4.按权利要求3的里德索罗门编码数据的解码方法,其中第二乘积项的总和为 Σ j = 0 N - K - 1 μ j ( N - K - s ) F j ( i ) E j ( j ) , 具有第一公共索引的系数的第二乘积为 μ j ( N - K - s ) F j ( i ) E j ( i ) , 而第二公共索引为j,这里i为误符量值的索引,N是该编码数据中的符号数,K是该编码数据中的信息符号数,s是该编码数据中的擦除数,Sn是该编码数据中的校正子,这里n=1到N-K,而且其中
F ( k ) ( x ) = Σ j = 0 N - K - 1 F j ( k ) x j ,
F j ( 0 ) = S ( - j ) mod ( N - K ) + 1 ,
F(k)(x)=xF(k-1)(x)mod(xN-K+1),
E ( k ) ( x ) = Σ j = 0 N - K - 1 E j ( k ) x j ,
如果j≤s, E J ( 0 ) = 1 , 否则为0,以及
E(k)(x)=xE(k-1)(x)mod(xN-K+1)。
5.一种里德索罗门编码数据的解码器,包括按照权利要求1,2,3或4中的任一项所述进行运算的装置。
6.里德索罗门编码数据的解码器,包括按照权利要求1或2结合权利要求3或4所述进行运算的装置,还包括产生第一乘积项而且也产生第二乘积项的乘法器装置。
7.一种电子装置,包括在权利要求5或6中所述的解码器。
CNA028211006A 2001-10-26 2002-10-15 用于里德索罗门码的解码方法和解码器 Pending CN1575548A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
GBGB0125748.4A GB0125748D0 (en) 2001-10-26 2001-10-26 Decoding method and decoder for reed solomon code
GB0125748.4 2001-10-26
GBGB0204576.3A GB0204576D0 (en) 2001-10-26 2002-02-27 Decoding method and decoder for reed solomon code
GB0204576.3 2002-02-27

Publications (1)

Publication Number Publication Date
CN1575548A true CN1575548A (zh) 2005-02-02

Family

ID=26246702

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA028211006A Pending CN1575548A (zh) 2001-10-26 2002-10-15 用于里德索罗门码的解码方法和解码器

Country Status (5)

Country Link
US (1) US7047481B2 (zh)
EP (1) EP1442528A2 (zh)
JP (1) JP2005506794A (zh)
CN (1) CN1575548A (zh)
WO (1) WO2003036798A2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102075199B (zh) * 2009-11-24 2014-11-05 中兴通讯股份有限公司 Rs译码的实现方法和装置

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3843952B2 (ja) * 2003-02-27 2006-11-08 ソニー株式会社 復号装置、誤り位置多項式計算方法、プログラム
TWI273388B (en) * 2004-06-08 2007-02-11 Mediatek Inc Method and apparatus for processing multiple decomposed data for calculating key equation polynomials in decoding error correction code
US20060059409A1 (en) * 2004-09-10 2006-03-16 Hanho Lee Reed-solomon decoder systems for high speed communication and data storage applications
TW200731230A (en) * 2006-02-10 2007-08-16 Sunplus Technology Co Ltd Error correction code decoder
US7814398B2 (en) * 2006-06-09 2010-10-12 Seagate Technology Llc Communication channel with Reed-Solomon encoding and single parity check
US7948848B2 (en) * 2008-04-11 2011-05-24 Mediatek Inc. Reproduction data recording methods
RU2009119260A (ru) * 2009-05-22 2010-11-27 ЭлЭсАй Корпорейшн (US) Декодер кодов бчх или кодов рида-соломона с модификацией синдромов
KR101157516B1 (ko) * 2010-05-04 2012-06-21 (주)희스테크 데이터 처리 효율을 향상시킨 bch 코덱
US10567003B2 (en) * 2017-01-26 2020-02-18 Hewlett Packard Enterprise Development Lp List decode circuits

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4845713A (en) * 1987-06-08 1989-07-04 Exabyte Corporation Method and apparatus for determining the coefficients of a locator polynomial
US5130990A (en) * 1990-02-15 1992-07-14 The United States Of America, As Represented By The Administrator, National Aeronautics And Space Administration VLSI architecture for a Reed-Solomon decoder
US5754563A (en) * 1995-09-11 1998-05-19 Ecc Technologies, Inc. Byte-parallel system for implementing reed-solomon error-correcting codes
EP0803094B1 (en) * 1995-11-10 2002-02-20 Koninklijke Philips Electronics N.V. Method and device for error protection of programmable memories
US6092233A (en) * 1998-03-20 2000-07-18 Adaptec, Inc. Pipelined Berlekamp-Massey error locator polynomial generating apparatus and method
US6449746B1 (en) * 1998-08-17 2002-09-10 T. K. Truong Decoding method for correcting both erasures and errors of reed-solomon codes
US6279137B1 (en) * 1998-12-08 2001-08-21 Lsi Logic Corporation System and method for a storage-efficient parallel Chien Search
KR100493014B1 (ko) * 1999-03-24 2005-06-07 삼성전자주식회사 비씨에이치/리드-솔로몬 디코더용 2중 패러랠 데이터패스를 갖는 갈로아필드 프로세서

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102075199B (zh) * 2009-11-24 2014-11-05 中兴通讯股份有限公司 Rs译码的实现方法和装置

Also Published As

Publication number Publication date
WO2003036798A2 (en) 2003-05-01
JP2005506794A (ja) 2005-03-03
US20030097632A1 (en) 2003-05-22
WO2003036798A3 (en) 2003-12-04
US7047481B2 (en) 2006-05-16
EP1442528A2 (en) 2004-08-04

Similar Documents

Publication Publication Date Title
CN1311639C (zh) 软纠错代数解码器
CN101276627B (zh) 使用迭代译码纠错的技术
US8176396B2 (en) System and method for implementing a Reed Solomon multiplication section from exclusive-OR logic
JP2005218098A (ja) 順方向のチェンサーチ方式のリードソロモンデコーダ回路
CN1465140A (zh) 编码和解码事前部分地已知的信息
US8201061B2 (en) Decoding error correction codes using a modular single recursion implementation
CN1623280A (zh) 纠错译码器中的双chien搜索块
CN1757165A (zh) 译码器内的部件块消息传送
CN1894857A (zh) 使用Galois域乘法查询表的Reed-Solomon码的编码和解码
CN1575548A (zh) 用于里德索罗门码的解码方法和解码器
JP2004032737A (ja) リード−ソロモン復号器
US5107506A (en) Error trapping decoding method and apparatus
JP2001196938A (ja) デジタルデータをデコーディングする装置及び方法
CN101325706B (zh) 低硬件开销Reed-Solomon解码器
US6651214B1 (en) Bi-directional decodable Reed-Solomon codes
US8645807B2 (en) Apparatus and method of processing polynomials
CN1849750A (zh) 里得-所罗门编码和解码方法
US8296632B1 (en) Encoding and decoding of generalized Reed-Solomon codes using parallel processing techniques
Truong et al. Fast transform for decoding both errors and erasures of Reed-Solomon codes over GF (2/sup m/) for 8/spl les/m/spl les/10
US8181096B2 (en) Configurable Reed-Solomon decoder based on modified Forney syndromes
KR20040045922A (ko) 리드 솔로몬 부호화 데이터 디코딩 방법, 디코더 및 전자장치
CN1134897C (zh) 里德-索罗门码的快速译码方法及编译码器
JP2002118471A (ja) 記録再生装置及び誤り訂正符号化方法並びに情報記録方法
Lin et al. Simplified procedure for decoding nonsystematic reed-solomon codes over gf (2 m) using euclid's algorithm and the fast fourier transform
CN1331470A (zh) 光盘驱动装置的编码/解码系统

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