CN1130837C - 采用新多项式排列结构里德-索罗门解码器及解码方法 - Google Patents

采用新多项式排列结构里德-索罗门解码器及解码方法 Download PDF

Info

Publication number
CN1130837C
CN1130837C CN98121341A CN98121341A CN1130837C CN 1130837 C CN1130837 C CN 1130837C CN 98121341 A CN98121341 A CN 98121341A CN 98121341 A CN98121341 A CN 98121341A CN 1130837 C CN1130837 C CN 1130837C
Authority
CN
China
Prior art keywords
multinomial
coefficient
polynomial
control signal
item
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
CN98121341A
Other languages
English (en)
Other versions
CN1214575A (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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN1214575A publication Critical patent/CN1214575A/zh
Application granted granted Critical
Publication of CN1130837C publication Critical patent/CN1130837C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related 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
    • 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/1545Determination of error locations, e.g. Chien search or other methods or arrangements for the determination of the roots of the error locator polynomial
    • 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
    • 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/1535Determination and particular use of error location polynomials using the Euclid 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/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/1585Determination of error values

Landscapes

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

Abstract

一种里德-索罗门(RS)解码器及其解码方法,其中:运算器采用输入初始差错定位多项式和改进校正子多项式,对改进欧几里德算法的四个多项式R(x)、Q(x)、λ(x)、μ(x)进行迭代运算;排列器从左侧排列各个多项式的系数;产生器利用迭代开始控制信号,产生表示各个多项式有效部分的控制信号;提取器根据控制信号提取运算器提供的作为差错估计多项式的R(x)和作为差错定位多项式的λ(x)。因为无需附加次数比较电路和缓存次数,简化了RS解码器。

Description

采用新多项式排列结构里德-索罗门解码器 及解码方法
发明领域
本发明涉及一种纠错解码技术,具体涉及用来实现改进欧几里德算法的具有新多项式排列结构的里德-索罗门(Reed-Solomon,RS)解码器及其解码方法。
背景技术
在采用高清晰度电视(HDTV)、数字通用盘(DVD)或小型盘(CD)的数字通信系统中,主要采用具有优秀纠错能力的RS解码器来纠正传输中产生的差错。然而,RS解码器的结构非常复杂。一般地,将RS代码表示为RS(N,I)。一个信息分组由N个符号构成。在这些符号中,I符号表示一条消息,其余的N-I个符号表示校验码。每个符号由m个位组成。
图1是采用改进欧几里德算法的常规RS解码器的方框图。这种RS解码器公开于美国电子与电气工程师协会计算机分会会刊1998年10月号第37卷第1273至1280页的由H.M.Shao和I.S.Reel所著“采用收缩矩阵的流水线式RS解码器的VLSI设计(“On the VLSI Design of Pipeline Reed-SolomonDecoder Using Systolic Arrays”,IEEE Tran.Comput,vol 37,OCT.1988,ppl273-1280)”一文中。
在图1中,根据输入的删除位置信息计算的初始差错定位多项式的根α-i,被输入到第一和第二多项式扩展器106和108。删除意为有差错,其位置从接收数据中得到,差错意为错误,其位置和大小已获知。
方程式1表示由第一多项式扩展器106扩展的初始差错定位多项式Γ(x)。方程式2表示由第二多项式扩展器108扩展的改进校正子多项式T(x),它是一个求解方程式。〖方程式1〗 Γ ( x ) = Π α - i ∈ Γ ( x - α - i ) 其中,∏表示相乘。初始差错定位多项式Γ(x)的根表示差错产生的位置。即,如果α-i是根,则产生的该差错在接收代码字中的第(i+1)个代码字处。第(i+1)个代码字的代码标号对应的是i。〖方程式2〗
                T(x)=S(x)Γ(x)modx2t其中,T(x)、S(x)和t分别表示改进校正子多项式、校正子多项式和能够纠正的差错数。
在完成初始差错定位多项式和改进校正子多项式的计算后,由改进欧几里德算法运算器110使用改进的欧几里德算法提取差错估计多项式ω(x)和差错定位多项式σ(x)。当方程4和方程7所表达的迭代方程被迭代2次时,所需差错估计多项式ω(x)和差错定位多项式σ(x)便作为结果由改进的欧几里德算法运算器110获得。上述文献(1)中的这些内容被称作改进的欧几里德算法。〖方程式3〗
    μ0(x)=Γ(x),R0(x)=x2t,λ0(x)=0,Q0(x)=T(x)〖方程式4〗 R i ( x ) = [ σ i - 1 b i - 1 R i - 1 ( x ) + σ ‾ i - 1 a i - 1 Q i - 1 ( x ) ] - x | l i - 1 | [ σ i - 1 a i - 1 Q i - 1 ( x ) + σ i - 1 b i - 1 R i - 1 ( x ) ] 〖方程式5〗 λ i ( x ) = [ σ i - 1 b i - 1 λ i - 1 ( x ) + σ ‾ i - 1 a i - 1 μ i - 1 ( x ) ] - x | l i - 1 | [ σ i - 1 a i - 1 μ i - 1 ( x ) + σ i - 1 b i - 1 λ i - 1 ( x ) ] 〖方程式6〗
            Qi(x)=σi-1Qi-1(x)+ σi-1Ri-1(x)〖方程式7〗
          μi(x)=σi-1μi-1(x)+ σi-1λi-1(x)其中,ai-1和bi-1分别是Ri-1(x)和Qi-1(x)的最高次数项的系数。〖方程式8〗
             li-1=deg(Ri-1(x))-deg(Qi-1(x))〖方程式9〗
Figure C9812134100083
即,如方程式8和9所示,若Ri-1(x)的次数等于或大于Qi-1(x)的次数,则σi-1的值为“1”,否则,σi-1的值为“0”。
若满足下面方程式10的条件,则上述迭代方程(方程式4至7)的迭代终止。〖方程式10〗
            deg(λi(x))>deg(Ri(x))
若上述迭代方程(方程式4至7)的迭代结束,则得到如方程式11和12所示的差错定位多项式σ(x)和差错估计多项式ω(x)。〖方程式11〗
                 σ(x)=λi(x)〖方程式12〗
                  ω(x)=Ri(x)
在上述方程式3中表示出四个多项式Ri-1(x)、Qi-1(x)、λi(x)、μi(x)的初始值。在λi(x)的次数大于Ri(x)的次数的情况下,不用重复迭代方程(方程式4至7)2t次,也能获得差错定位多项式σ(x)和差错估计多项式ω(x)。这时,λi(x)就成为差错定位多项式,且Ri(x)成为差错估计多项式。
图2示出了用于实现改进欧几里德算法的常规多项式排列结构。在图2的多项式排列中,右侧的改进欧几里德算法运算器110加载的寄存器132和134中,所排列的多项式R(x)和Q(x)的次数随着迭代运算过程的进行而降低。左侧的寄存器136和138中所排列的多项式λ(x)和μ(x)的次数随着迭代运算过程的进行而升高。在这种情况下,各个多项式的次数必须存储在附加的存储器(未示出)中,以便产生迭代运算所需的控制信号。
这种用于实现改进欧几里德算法的常规多项式排列结构的问题在于:各个多项式的次数必须总是存储在附加的存储器中;并且,如方程式8所示,由于这些次数必须相比较来产生用于执行上述方程式9所需的控制信号,所以还需要log22t个减法器;而且,由于在后续的迭代运算中还要用到这些多项式的次数,所以缓存这些多项式时还必须缓存它们的次数。
发明内容
为了解决上述问题,本发明的目的是提供一种结构简单的RS解码器,其中,通过改变多项式排列结构,在进行改进的欧几里德算法运算时不需要附加的次数比较电路。
本发明的另一个目的是提供一种RS解码方法,用于通过改变多项式排列结构,执行改进的欧几里德算法。
本发明的再一个目的是提供一种从左侧排列用于执行改进欧几里德算法的各个多项式系数的方法。
于是,为了实现第一目的,提供一种采用改进欧几里德算法纠正接收符号中差错的带有提取器里德-索罗门(RS)解码器,包括:运算器,用于采用输入初始差错定位多项式和改进的校正子多项式,对改进欧几里德算法的四个多项式R(x)、Q(x)、λ(x)、μ(x)进行迭代运算;排列器,由多个寄存器组成,用于从左侧排列各个多项式的系数;以及产生器,用于利用标识每次迭代运算开始的迭代控制信号,产生表示各个多项式有效部分的控制信号,其中,该提取器根据所述控制信号提取运算器所提供的作为差错估计多项式的多项式R(x)和作为差错定位多项式的多项式λ(x);其中,所述产生器给各个多项式R(x)、Q(x)和μ(x)指定1位的控制信号,在提供有迭代控制信号时,将各个多项式R(x)、Q(x)和μ(x)的相应控制信号值保持在第一逻辑状态,并且在由排列器第一次提供不是“0”的多项式系数时,将指定该多项式的控制信号改变为第二逻辑状态;和其中,所述运算器还包括存储器,用于根据由所述产生器产生的R(x)和Q(x)控制信号,存储由所述排列器提供的R(x)和Q(x)的第一有效值,作为这些多项式的最高次数项的系数。
为实现第二目的,所提供的用于根据校正子值搜索差错的位置和大小的RS解码器,包括:第一多项式运算器,用于根据接收的数据计算校正子值,并构建一校正子多项式;第一产生器,用于每当输入新的删除数据时根据接收数据中的删除信息产生初始差错定位多项式的根和标识迭代运算开始的迭代控制信号;第一多项式扩展器,用于利用所述根来扩展初始差错定位多项式;第二多项式扩展器,用于利用所述校正子的值和所述根,来扩展改进的校正子多项式;改进欧几里德算法运算器,用于利用初始差错定位多项式和改进校正子多项式,提取差错估计多项式和差错定位多项式;第二和第三多项式运算器,用于对来自改进欧几里德算法运算器的差错估计多项式和差错定位多项式进行运算;以及,提取器,用于对来自第二和第三多项式运算器,用于根据由第二和第三多项式运算器计算的差错估计多项式和差错定位多项式,提取接收数据所包含的差错的位置和大小并对所接收的数据进行纠错解码,其中,所述改进欧几里德算法运算器包括:运算器,用于采用输入初始差错定位多项式和改进的校正子多项式,对改进欧几里德算法的四个多项式R(x)、Q(x)、λ(x)、μ(x)进行迭代运算;排列器,用于从左侧排列各个多项式的系数并且向运算器提供所排列的多项式系数,并将所排列的多项式的系数提供给所述运算器;控制信号产生器,用于利用迭代控制信号,产生表示多项式R(x)、Q(x)、μ(x)有效部分的R(x)、Q(x)、μ(x)控制信号;以及,存储器,用于利用R(x)和Q(x)的控制信号作为允许信号,存储由排列器提供的R(x)、Q(x)的第一有效值,作为最高次数项的系数,并将它们提供给运算器;选择信号产生器,用于利用Q(x)和μ(x)的控制信号产生选择信号;和选择器,用于根据选择信号选择由运算器提供的作为差错估计多项式的多项式R(x)和作为差错定位多项式的多项式λ(x)。
为了实现第三目的,所提供的用于执行改进欧几里德算法的RS解码方法,包括多项式排列的步骤,其中,该多项式排列的步骤包括下述步骤:(a)设定初始状态变量;(b)判断Q(x)和R(x)中的一个多项式的最高次数项的系数是否为“0”,并判断这两个多项式的次数是否相同;(c)若在步骤(b)中两个多项式的次数不同,则计算各个多项式R(x)、Q(x)、λ(x)和μ(x),将当前状态变量减“1”来获得下一个状态变量,并在延迟所计算多项式的系数后排列它们;(d)若在步骤(b)中两个多项式的次数相同,则在计算各个多项式之后,将R(x)的系数与Q(x)的系数交换,将λ(x)的系数与μ(x)的系数交换,并将下一个状态变量设置为“1”;(e)若在步骤(b)中两个多项式R(x)和Q(x)中的一个的最高次数项的系数为“0”,则判断R(x)的最高次数项的系数是否为“0”;(f)若在步骤(e)中R(x)的最高次数项的系数为“0”,则在将R(x)的系数与Q(x)的系数交换且将λ(x)的系数与μ(x)的系数交换之后,将两个多项式Q(x)和μ(x)的系数向右侧移动一个次数,并将当前状态变量加“1”所得到的值设置为下一个状态变量;以及,(g)若在步骤(e)中Q(x)的最高次数项的系数为“0”,则将两个多项式Q(x)和μ(x)的系数向右侧移动一个次数,并将当前状态变量加“1”所得到的值设置为下一个状态变量。
附图说明
通过参照附图结合对本发明优选实施例的详细说明,本发明的上述目的和优点将更加清楚,附图中:
图1是常规RS解码器的方框图;
图2示出常规的多项式排列结构;
图3是本发明RS解码器的方框图;
图4是图3中所示的改进欧几里德算法运算器的详细方框图;
图5示出本发明提供的多项式排列结构;
图6示出图4中所示的控制信号产生器一部分的电路图;
图7A至图7C是用于解释如何利用图4的控制信号产生器产生的控制信号来辨别最高次数项的波形图;
图8是本发明多项式排列方法实施例的流程图;
图9是有助于理解图8中所示的多项式排列方法的示图。
具体实施方式
图3是本发明的RS解码器的方框图。α-i产生器202采用输入初始删除位置信息,产生初始差错定位多项式的根α-i、以及对应于新删除信息α-i的标识每次迭代运算开始的迭代控制信号(ss),并且向改进欧几里德算法运算器210输出所产生的迭代控制信号(ss)。第一多项式扩展器206利用α-i产生器202产生的α-i扩展初始差错定位多项式Γ(x)。
第一多项式运算器204计算接收数据的校正子值,并构建校正子多项式S(x)。方程式13是系数为所计算的校正子值的2t-1级校正子多项式。〖方程式13〗
         S(x)=S0+S1x+S2x2+…+S2t-1x2t-1
第二多项式扩展器208利用由第一多项式运算器204计算的校正子多项式S(x)和α-i产生器202输出的α-i,求解方程式2所表示的求解方程,并扩展一改进校正子多项式T(x)。
改进欧几里德算法运算器210运用改进欧几里德算法,利用第一和第二多项式扩展器206和208提供的初始差错定位多项式Γ(x)和改进校正子多项式T(x),通过一系列迭代运算获得差错定位多项式σ(x)和差错估计多项式ω(x)。
第二和第三多项式运算器212和214计算由改进欧几里德算法运算器210输出的差错估计多项式ω(x)和差错定位多项式σ(x),并将它们提供给除法器216。除法器216计算对应于α-i的由方程式14表示的差错的大小。〖方程式14〗 θ ^ i = - ω ( α - i ) σ l ( α - i )
与门218只允许选择第三多项式运算器214计算的差错定位多项式σ(x)的根所对应的除法器216输出。加法器222可由一个异或门构造,来对由延迟器220延迟的接收数据和与门218的输出执行异或操作。该加法器输出被纠错解码的数据。此时,c(x)表示已纠正的数据多项式。除法器116、与门118和加法器122可被称为提取器。
图4是图3中所示的改进欧几里德算法运算器210的详细方框图。迭代方程运算器232接收由图3所示的第一和第二多项式扩展器206和208所提供的初始差错定位多项式Γ(x)和改进校正子多项式T(x),将各个多项式的系数提供给多项式系数排列器234,并且采用多项式系数排列器234中排列的各个多项式系数、以及由最高次数项系数存储器238提供的R(x)和Q(x)的最高次数项的系数,来计算各个多项式的迭代方程(方程式4至7)。此时,若满足方程式15表示的条件,迭代方程运算器232就终止迭代方程的迭代运算。〖方程式15〗
               deg(μi(x))>deg(Qi(x))
如图5中所示,多项式系数排列器234从左侧排列寄存器252至258中所有的多项式(R(x)、Q(x)、λ(x)和μ(x))。
每当多项式R(x)和Q(x)由迭代方程运算器232进行迭代运算时,迭代运算的结果回馈给多项式系数排列器234,向右移动一个次数。因此,通过存储由迭代方程运算器232提供的对应于R(x)和Q(x)的输出值,不能够将这些多项式排列到左侧。
因此,此多项式必须按照迭代控制信号ss来延迟。为此,在多项式系数排列器234中,包含有位于图5所示的寄存器252至258之前端的延迟器(未示出)。该多项式是否由该延迟器延迟,要根据最高次数项状态和状态变量判定器242提供的状态变量(SV)值来确定。
即,若出现的状态变量显示从迭代运算器232的迭代运算结果获得的多项式R(x)和Q(x)的次数相等,则这两个多项式R(x)和Q(x)延迟一个时钟。若出现的状态变量显示从迭代运算结果获得的一个多项式的系数比另一个多项式的系数例如大一个次数,由于具有较高次数的多项式已经被排列在左侧,所以如果这些多项式要由延迟器延迟,则最后的最低次数的系数就要被截去。因此,迭代运算器232的输出值没有被延迟器延迟,它被存储在寄存器252和254中。
多项式λ(x)的延迟取决于与之成对的多项式R(x)。多项式μ(x)的延迟取决于与之成对的多项式Q(x)。
此时,若多项式R(x)的次数小于多项式Q(x)的次数,则向多项式系数排列器234提供由最高次数项状态和状态变量判定器242输出的交换控制信号(EXCHANGE)。在多项式排列器234中,在寄存器252中存储的R(x)的系数与在寄存器254中存储的Q(x)的系数交换,在寄存器256中存储的λ(x)的系数与在寄存器258中存储的μ(x)的系数交换。这是为了便于在迭代运算中排列多项式。因此,方程式15给出的是由于R(x)的次数总是高于或等于Q(x)的次数而终止迭代运算的条件。
若按上述排列这些多项式的系数,则获得如图5所示的本发明提供的多项式排列结构。因为在这种多项式排列结构中系数是逐个从右侧运算的,所以从右侧开始的最高次数项的系数值在第一次不是“0”。系数的位置就成为多项式的次数。仅简单地将这些位置相互比较,来比较各个多项式的次数。这将在选择信号产生器240的说明中描述。
控制信号产生器236利用多项式系数排列器234提供的各个多项式R(x)、Q(x)和μ(x)的系数以及由图3所示的α-1产生器202提供的标识每次迭代运算开始的迭代控制信号ss,产生控制信号R_CTL、Q_CTL_Q和μ_CTL。控制信号R_CTL、Q_CTL_Q和μ_CTL分别表示各个多项式R(x)、Q(x)和μ(x)的有效部分。
即,控制信号产生器236给各个多项式R(x)、Q(x)和μ(x)指定1位的控制信号,在有用于标识迭代运算开始的迭代控制信号ss时,将各个多项式的控制信号的值保持在“1”,并且在第一次向多项式系数排列器234输入不是“0”的系数时,将指定给系数不是“0”多项式的1位控制信号改变为“0”。
图6便于理解图4所示控制信号产生器的电路图,该电路用于产生指定给多项式R(x)的控制信号(R_CTL)。在图6中,在迭代控制信号ss被反相器262反相后提供给T触发器264的反相输入端时,T触发器264的输出(R_CTL)为逻辑“高”。该输出(R_CTL)回馈给与门266。
在由如图5所示的多项式系数排列器234的寄存器152提供的系数输入是非“0”的有效值时,或门268的输出为逻辑“高”。而且,与门266将逻辑“高”的输出提供给T触发器264的反转输入端(T)。然后,T触发器264的输出(R_CTL)为逻辑“低”,这表示此时的输出为有效部分。一旦此输出处于有效部分,在施加表示下一次迭代运算开始的逻辑“高”的迭代控制信号ss以前,该输出一直保持逻辑“低”。
由图4所示的控制信号产生器236提供的指定给R(x)和Q(x)的控制信号(R_CTL和Q_CTL),用作用于存储R(x)和Q(x)最高次数项的最高次数项存储器238的允许信号(R_EN和Q_EN)。利用指定给R(x)和Q(x)的控制信号(R_CTL和Q_CTL),最高次数项存储器238存储由多项式系数排列器234的寄存器252和254提供的第一有效值,作为R(x)和Q(x)的最高次数项的系数(a-1和b-1)。
因此,按照本发明,可以利用有控制信号产生器236产生的控制信号R_CTL和Q_CTL,存储最高次数项的系数,而无需产生附加信号来存储最高次数项的系数,并且可以利用控制信号产生器产生的控制信号Q_CTL和μ_CTL,获得判断迭代方程运算器232输出值所需的多路切换器(MUX)244选择信号SEL。
图7A所示的信号波形是用于标识每次迭代运算开始的迭代控制信号ss的波形。图7B和图7C所示的信号波形是指定给R(x)和Q(x)的控制信号R_CTL和Q_CTL的波形。若图7B中的控制信号R_CTL先于图7C中的控制信号Q_CTL出现逻辑“低”,则表示R(x)的次数高于Q(x)的次数。通过常规的相减运算方法比较各个多项式的次数,来产生MUX选择信号。
然而,在本发明中,根据控制信号产生器236输出的Q(x)控制信号Q_CTL和μ(x)控制信号μ_CTL,选择信号产生器240产生选择信号(SEL),并将该选择信号(SEL)提供给多路切换器244。即,在Q(x)的控制信号Q_CTL不在有效部分(逻辑“高”)并且判定μ(x)的控制信号(μ_CTL)处于有效部分(逻辑“低”)即μ(x)的次数高于Q(x)的次数时,选择信号产生器240输出逻辑“高”的选择信号(SEL),表示迭代运算终止。
因此,按照该逻辑“高”的选择信号SEL,多路切换器244输出由迭代方程运算器232输出的R(x)和λ(x),前者作为差错估计多项式ω(x)而后者作为差错定位多项式σ(x)。
将μ(x)的次数和Q(x)的次数进行比较的原因如下。为了检查迭代运算是否终止,要检查R(x)或Q(x)的次数是否低于μ(x)的次数。如果是,则终止迭代运算。R(x)和Q(x)中具有较低次数的多项式被当作差错估计多项式ω(x),而μ(x)作为差错定位多项式σ(x)。若Q(x)的次数总是低于R(x)的次数,则可以通过将μ(x)与Q(x)比较来得到所需的差错定位多项式σ(x)和差错估计多项式ω(x)。
若迭代运算没有终止,则必须检查R(x)或Q(x)的最高次数项的系数是否为“0”。由于R(x)和Q(x)排列在左侧,所以利用控制信号R_CTL和Q_CTL可以得知何时出现不为“0”的值。因此,能够知道这两个多项式的最高次数项的系数是否为“0”。
即,若R(x)的控制信号R_CTL处于有效部分(逻辑“低”)而Q(x)的控制信号Q_CTL没有处于有效部分(逻辑“高”),则Q(x)的最高次数项的系数为“0”。若Q(x)的控制信号Q_CTL处于有效部分(逻辑“低”)而R(x)的控制信号R_CTL没有处于有效部分(逻辑“高”),则R(x)的最高次数项的系数为“0”。
若一个最高次数项的系数为“0”,则此刻的迭代运算就无意义了。为了防止这种现象以及为了下次的迭代运算,最高次数项状态和状态变量判定器242根据R(x)和Q(x)的控制信号R_CTL和Q_CTL,在得知R(x)的最高次数项的系数为“0”时,向多项式系数排列器234提供一交换控制信号EXCHANGE,用于用Q(x)的系数交换R(x)的系数以及用λ(x)的系数交换μ(x)的系数,以及一个移位信号SHIFT,用于将多项式R(x)和与之成对的λ(x)向右移动一个次数;并且在Q(x)的最高次数项的系数为“0”时,向多项式系数排列器234只提供一个移位信号SHIFT,用于向右将多项式Q(x)以及与之成对的μ(x)移动一个次数。将多项式向右移动一个次数,等于将最高次数项系数为“0”的多项式和与之成对的多项式乘以x。
而且,最高次数项状态和状态变量判定器242判定表示R(x)最高次数项系数和Q(x)最高次数项系数之间差值的状态变量(SV),并向多项式系数排列器234输出该SV。
若迭代运算没有终止并且R(x)或Q(x)的最高次数项的系数均不为“0”,则迭代运算器232向多项式系数排列器234回馈对应于由方程式4至7所示迭代方程运算结果的系数。
在图4所示的改进欧几里德算法运算器210中进行的改进欧几里德算法运算过程如下。
步骤1:如图5所示,所有的多项式R(x)、Q(x)、λ(x)和μ(x)的系数从左侧排列。借此,能够容易地将各个多项式的次数相互比较,而不用存储这些次数。
步骤2:检查在从左侧排列的系数中有效多项式的系数从何处开始,并存储多项式R(x)和Q(x)的最高次数项的系数。
步骤3:根据指定给Q(x)和μ(x)的控制信号,将两个多项式Q(x)和μ(x)的次数相互比较。
步骤4:若步骤3中μ(x)的次数高于Q(x)的次数,输出R(x)作为差错估计多项式ω(x),输出λ(x)作为差错定位多项式σ(x)。此时,认为R(x)的次数大于Q(x)的次数。
步骤5:若μ(x)的次数不高于Q(x)的次数,则判定R(x)或Q(x)的最高次数项的系数之一是否为“0”。
步骤6:若判定两个多项式R(x)或Q(x)的最高次数项的系数之一为“0”,则最高次数项系数为“0”的多项式和与之成对的多项式的系数向右移动一个次数。此时,若R(x)的最高次数项的系数为“0”,则要在将Q(x)与R(x)及将λ(x)与μ(x)交换之后,将Q(x)和μ(x)的系数向右移动一个次数。若Q(x)的最高次数项的系数为“0”,则将Q(x)和μ(x)的系数向右移动一个次数。
步骤7:若在步骤5中μ(x)的次数不高于Q(x)的次数并且R(x)和Q(x)的最高次数项的系数不为“0”,则利用步骤2中存储的多项式R(x)和Q(x)的最高次数项的系数,对方程式4至7中所示的迭代方程进行运算。
本发明与常规技术的不同点在于,它需要总向左排列R(x)和Q(x),因为实现改进欧几里德算法中多项式向左排列。因此,图8示出了描述在步骤1中所有多项式的系数向左排列方法的详细流程图,并将参照图9来说明。
状态变量SV定义为R(x)和Q(x)次数之间的差值。状态变量SV的迭代运算初始值为“1”(步骤S11)。在该初始状态变量SV0对应的排列结构中,如图9(a)所示,R(x)的次数比Q(x)的次数高一个次数。R(x)和Q(x)的系数向左排列。这两个多项式的最高次数项的次数(阴影线部分)排列位置相同。
若迭代运算正常执行,则状态变量SV减“1”。若上述两个多项式中的一个的最高次数项的系数为“0”,则状态变量SV加“1”。而且,若迭代运算正常执行时状态变量值减为“0”,则下一状态变量值变成“1”。即,若迭代运算正常执行时状态变量值减为“0”,则两个多项式的值相交换并输出。因此,状态变量值又变回初始值“1”。
即,在步骤12中,判断Q(x)或R(x)的最高次数项的系数是否为“0”。若这两个多项式之一的最高次数项的系数不为“0”,则判断当前状态变量SVi是否为“0”(步骤S13)。
若在步骤S13中当前状态变量SVi不为“0”,则运算各个多项式R(x)、Q(x)、λ(x)和μ(x)。将当前状态变量SVi减“1”来设置下一状态变量SVi+1为“0”。延迟和排列所运算的多项式R(x)、Q(x)、λ(x)和μ(x)的系数(步骤S15)。此时,如图9(b)所示,在多项式R(x)和Q(x)的系数中,R(x)的次数被降低了一个次数。在此排列结构(图9(b))中状态变量值为“0”。此外,若当前状态变量为“1”且两个多项式的最高次数项的系数不为“0”(图9(a)),则如图9(b)所示,R(x)的次数要降低一个次数。
若在步骤S13中当前状态变量SVi为“0”,则表示R(x)和Q(x)的最高次数项的系数相同。在运算各个多项式R(x)、Q(x)、λ(x)和μ(x)之后,由于R(x)的次数低于Q(x)的次数,所以将R(x)的系数与Q(x)的系数交换,将λ(x)的系数与μ(x)的系数交换。将状态变量SVi+1设置为“1”(步骤S16)。此时,多项式R(x)和Q(x)的系数排列结构如图9(c)所示。
若在步骤12中两个多项式Q(x)和R(x)之一的最高次数项的系数不为“0”,则判断R(x)的最高次数项的系数是否为“0”(步骤S17)。若R(x)的最高次数项的系数为“0”,则由于R(x)的次数低于Q(x)的次数(步骤S18),将R(x)的系数与Q(x)的系数交换,将λ(x)的系数与μ(x)的系数交换。将两个多项式Q(x)和μ(x)的系数向右移动一个次数。将当前状态变量SVi加“1”得到的值设置为下一状态变量SVi+1(步骤S19)。此时,多项式R(x)和Q(x)的系数排列结构如图9(d)所示。
若R(x)的最高次数项的系数不为“0”而Q(x)的最高次数项的系数为“0”,由于R(x)的次数高于Q(x)的次数,在步骤S19中,将两个多项式Q(x)和μ(x)的系数向右移动一个次数,并且将当前状态变量SVi加“1”得到的值设置为下一状态变量SVi+1。此时,多项式R(x)和Q(x)的系数排列结构如图9(e)所示。
在执行完步骤S15、S16和S19之后,判断μ(x)的次数是否高于Q(x)的次数(步骤S20)。在μ(x)的次数没有高于Q(x)的次数的情况下,该过程返回到步骤S12并重复执行步骤S12至S19。
在本发明的电路中,改变了多项式的排列结构。因此,由于不需要附加的次数比较电路,从而无需缓存次数,于是简化了硬件。
而且,本发明可以执行在改进欧几里德算法运算中所期望的迭代运算,而不用直接相互比较各个多项式的最高次数项。由于不需要存储各个多项式的当前次数,也就无需缓存。

Claims (18)

1.一种采用改进欧几里德算法纠正接收符号中差错的带有提取器里德-索罗门(RS)解码器,包括:
运算器,用于采用输入初始差错定位多项式和改进的校正子多项式,对改进欧几里德算法的四个多项式R(x)、Q(x)、λ(x)、μ(x)进行迭代运算;
排列器,由多个寄存器组成,用于从左侧排列各个多项式的系数;以及
产生器,用于利用标识每次迭代运算开始的迭代控制信号,产生表示各个多项式有效部分的控制信号,
其中,该提取器根据所述控制信号提取运算器所提供的作为差错估计多项式的多项式R(x)和作为差错定位多项式的多项式λ(x);
其中,所述产生器给各个多项式R(x)、Q(x)和μ(x)指定1位的控制信号,在提供有迭代控制信号时,将各个多项式R(x)、Q(x)和μ(x)的相应控制信号值保持在第一逻辑状态,并且在由排列器第一次提供不是“0”的多项式系数时,将指定该多项式的控制信号改变为第二逻辑状态;和
其中,所述运算器还包括存储器,用于根据由所述产生器产生的R(x)和Q(x)控制信号,存储由所述排列器提供的R(x)和Q(x)的第一有效值,作为这些多项式的最高次数项的系数。
2.如权利要求1所述的RS解码器,其中,在所述产生器提供的Q(x)的控制信号没有处于有效部分并且判定μ(x)的控制信号被判定处于有效部分时,所述提取器输出作为差错估计多项式的R(x)和作为差错定位多项式的λ(x)。
3.如权利要求1所述的RS解码器,还包括排列控制器,用于根据所述产生器产生的R(x)和Q(x)控制信号,产生移位信号和交换控制信号,并判断表示R(x)次数和Q(x)次数之间差值的状态变量,以及控制在所述排列器中各多项式系数的排列。
4.如权利要求3所述的RS解码器,其中,所述排列控制器根据R(x)和Q(x)的控制信号,在得知R(x)的最高次数项的系数为“0”时,向所述排列器提供一个交换控制信号,用于用Q(x)的系数交换R(x)的系数以及用λ(x)的系数交换μ(x)的系数,以及一个移位信号,用于向右将多项式R(x)以及与之成对的λ(x)移动一个次数;并且在Q(x)的最高次数项的系数为“0”时,向所述排列器只提供一个移位信号,用于将多项式Q(x)和与之成对的μ(x)向右移动一个次数。
5.如权利要求4所述的RS解码器,其中,若所述判断器提供的状态变量显示所述两个多项式R(x)和Q(x)的次数相等,则所述排列器在将所述两个多项式的系数延迟一个单位时间之后再排列它们;而若所述判断器提供的状态变量显示所述两个多项式中的一个多项式的次数比另一个多项式的次数高,则所述排列器在没有延迟所述两个多项式系数的情况下排列它们。
6.一种根据校正子值搜索差错的位置和大小的里德-索罗门(RS)解码器,包括:
第一多项式运算器,用于根据接收的数据计算校正子值,并构建一校正子多项式;
第一产生器,用于每当输入新的删除信息时根据接收数据中的删除信息产生初始差错定位多项式的根和标识迭代运算开始的迭代控制信号;
第一多项式扩展器,用于利用所述根来扩展初始差错定位多项式;
第二多项式扩展器,用于利用所述校正子的值和所述根来扩展改进的校正子多项式;
改进欧几里德算法运算器,用于利用初始差错定位多项式和改进校正子多项式,提取差错估计多项式和差错定位多项式;
第二和第三多项式运算器,用于对来自改进欧几里德算法运算器的差错估计多项式和差错定位多项式进行运算;以及
提取器,用于根据由第二和第三多项式运算器计算的差错估计多项式和差错定位多项式,提取接收数据所包含的差错的位置和大小并对所接收的数据进行纠错解码,
其中,所述改进欧几里德算法运算器包括:
运算器,用于采用输入初始差错定位多项式和改进的校正子多项式,对改进欧几里德算法的四个多项式R(x)、Q(x)、λ(x)、μ(x)进行迭代运算;
排列器,用于从左侧排列各个多项式的系数并且向运算器提供所排列的多项式系数,并将所排列的多项式的系数提供给所述运算器;
控制信号产生器,用于利用迭代控制信号,产生表示多项式R(x)、Q(x)、μ(x)有效部分的R(x)、Q(x)、μ(x)控制信号;
存储器,用于利用R(x)和Q(x)的控制信号作为允许信号,存储由排列器提供的R(x)和Q(x)的第一有效值,作为最高次数项的系数,并将它们提供给运算器;
选择信号产生器,用于利用Q(x)和μ(x)的控制信号产生选择信号;和
选择器,用于根据选择信号选择由运算器提供的作为差错估计多项式的多项式R(x)和作为差错定位多项式的多项式λ(x)。
7.如权利要求6所述的RS解码器,其中,在所述Q(x)的控制信号没有处于有效部分并且μ(x)的控制信号处于有效部分时,所述选择信号产生器产生一个选择信号,以便由所述选择器选择R(x)作为差错估计多项式和选择λ(x)作为差错定位多项式。
8.如权利要求6所述的RS解码器,还包括判断器,用于根据所述R(x)和Q(x)的控制信号,产生一个移位信号和一个交换控制信号,判断用于显示多项式R(x)的次数和多项式Q(x)的次数之间差值的状态变量,并将它们提供给所述排列器。
9.如权利要求6所述的RS解码器,其中,所述判断器根据R(x)和Q(x)的控制信号,在得知R(x)的最高次数项的系数为“0”时,向所述排列器提供一个交换控制信号,用于用Q(x)的系数交换R(x)的系数以及用λ(x)的系数交换μ(x)的系数,以及一个移位信号,用于将多项式R(x)以及与之成对的λ(x)向右移动一个次数;并且在Q(x)的最高次数项的系数为“0”时,向所述排列器只提供一个移位信号,用于将多项式Q(x)和与之成对的μ(x)向右移动一个次数。
10.如权利要求9所述的RS解码器,其中,若所述判断器提供的状态变量显示所述两个多项式R(x)和Q(x)的次数相等,则所述排列器在将所述两个多项式的系数延迟一个单位时间之后再排列它们;而若所述判断器提供的状态变量显示所述两个多项式中的一个多项式的次数比另一个多项式的次数高,则所述排列器在没有延迟所述两个多项式系数的情况下排列它们。
11.一种采用改进欧几里德算法纠正接收符号中差错的里德-索罗门(RS)解码方法,包括下述步骤:
(a)从左侧排列用于改进欧几里德算法的四个多项式R(x)、Q(x)、λ(x)、μ(x)的系数;
(b)产生表示从左侧排列的这些多项式系数从何处起有效的各个多项式的控制信号;
(c)利用指定给多项式Q(x)和μ(x)的控制信号,判断这两个多项式的次数;
(d)若在步骤(c)中判定μ(x)的次数高于Q(x)的次数,则输出R(x)作为差错估计多项式,输出λ(x)作为差错定位多项式,否则,判断R(x)和Q(x)的最高次数项的系数是否为“0”;以及
(f)在步骤(d)中如果这两个多项式R(x)和Q(x)之一的最高次数项的系数为“0”,则将此最高次数项系数为“0”的多项式的系数以及与之成对的多项式的系数,向右移动一个次数,否则对各个多项式进行迭代运算。
12.如权利要求11所述的方法,其中,在所述步骤(e)中,若R(x)的最高次数项的系数为“0”,则在将R(x)的系数与Q(x)的系数交换和将μ(x)的系数与λ(x)的系数交换后,将Q(x)和μ(x)的系数向右移动一个次数。
13.如权利要求11所述的方法,其中,在所述步骤(e)中,若Q(x)的最高次数项的系数为“0”,将Q(x)和μ(x)的系数向右移动一个次数。
14.如权利要求11所述的方法,其中,在步骤(c)中,根据用于标识迭代运算开始的迭代控制信号,利用首先在步骤(a)中排列的不为“0”的Q(x)和μ(x)系数的位置信息,来判断Q(x)和μ(x)的次数。
15.如权利要求11所述的方法,还包括步骤(f),用于根据在所述步骤(b)中产生的R(x)和Q(x)的控制信号,存储这两个多项式R(x)和Q(x)的最高次数项的系数,
其中,所存储的最高次数项的系数用于所述步骤(e)中各个多项式的迭代运算。
16.一种用于执行改进欧几里德算法的RS解码方法,其中包括多项式排列的步骤,该多项式排列步骤包括下述步骤:
(a)设定初始状态变量;
(b)判断Q(x)和R(x)中的一个多项式的最高次数项的系数是否为“0”,并判断这两个多项式的次数是否相同;
(c)若在步骤(b)中两个多项式的次数不同,则计算各个多项式R(x)、Q(x)、λ(x)和μ(x),将当前状态变量减“1”来获得下一个状态变量,并在延迟所计算多项式的系数后再排列它们;
(d)若在步骤(b)中两个多项式的次数相同,则在计算各个多项式之后,将R(x)的系数与Q(x)的系数交换,将λ(x)的系数与μ(x)的系数交换,并将下一个状态变量设置为“1”;
(e)若在步骤(b)中两个多项式R(x)和Q(x)之一的最高次数项的系数为“0”,则判断R(x)的最高次数项的系数是否为“0”;
(f)若在步骤(e)中R(x)的最高次数项的系数为“0”,则在将R(x)的系数与Q(x)的系数交换且将λ(x)的系数与μ(x)的系数交换之后,将两个多项式Q(x)和μ(x)的系数向右侧移动一个次数,并将当前状态变量加“1”所得到的值设置为下一个状态变量;以及
(g)若在步骤(e)中Q(x)的最高次数项的系数为“0”,则将两个多项式Q(x)和μ(x)的系数向右侧移动一个次数,并将当前状态变量加“1”所得到的值设置为下一个状态变量。
17.如权利要求16所述的方法,还包括步骤(h),用于在执行完所述步骤(c)、(d)、(f)和(g)中的一个步骤后,判断μ(x)的次数是否高于Q(x)的次数,并且在μ(x)的次数没有高于Q(x)的次数的情况下,返回到步骤(b),并重复执行所述步骤(b)至(g)。
18.如权利要求16所述的方法,其中初始状态变量为“1”,在初始状态变量对应的两个多项式R(x)和Q(x)排列结构中,R(x)的次数比Q(x)的次数高一个次数,从左侧排列这两个多项式的系数,并且在相同位置排列这两个多项式的最高次数项的次数。
CN98121341A 1997-10-14 1998-10-12 采用新多项式排列结构里德-索罗门解码器及解码方法 Expired - Fee Related CN1130837C (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR1019970052641A KR100258952B1 (ko) 1997-10-14 1997-10-14 새로운 다항식 배열 구조를 채용한 리드-솔로몬(rs) 복호기와그 복호방법
KR52641/1997 1997-10-14
KR52641/97 1997-10-14

Publications (2)

Publication Number Publication Date
CN1214575A CN1214575A (zh) 1999-04-21
CN1130837C true CN1130837C (zh) 2003-12-10

Family

ID=19522731

Family Applications (1)

Application Number Title Priority Date Filing Date
CN98121341A Expired - Fee Related CN1130837C (zh) 1997-10-14 1998-10-12 采用新多项式排列结构里德-索罗门解码器及解码方法

Country Status (6)

Country Link
US (1) US6256763B1 (zh)
JP (1) JP3245119B2 (zh)
KR (1) KR100258952B1 (zh)
CN (1) CN1130837C (zh)
FR (1) FR2771229B1 (zh)
NL (1) NL1010312C2 (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6848069B1 (en) * 1999-08-10 2005-01-25 Intel Corporation Iterative decoding process
US7366258B2 (en) * 2001-06-08 2008-04-29 Broadcom Corporation Chip blanking and processing in SCDMA to mitigate impulse and burst noise and/or distortion
US20030101406A1 (en) * 2001-10-12 2003-05-29 Leilei Song Low complexity and low power FEC supporting high speed parallel decoding of syndrome-based FEC codes
US7051267B1 (en) 2002-04-08 2006-05-23 Marvell International Ltd. Efficient high-speed Reed-Solomon decoder
US7010739B1 (en) 2002-04-11 2006-03-07 Marvell International Ltd. Error evaluator for inversionless Berlekamp-Massey algorithm in Reed-Solomon decoders
GB2391769B (en) * 2002-07-31 2005-07-06 Hewlett Packard Co Reed-Solomon decoder and decoding method for errors and erasures decoding
US20040163030A1 (en) * 2003-02-13 2004-08-19 International Business Machines Corporation Iterative error correcting system
KR100979366B1 (ko) * 2003-02-14 2010-08-31 주식회사 케이티 다양한 오류 정정 능력을 갖는 리드-솔로몬 부호의 복호기
JP3843952B2 (ja) * 2003-02-27 2006-11-08 ソニー株式会社 復号装置、誤り位置多項式計算方法、プログラム
FI20030845A0 (fi) * 2003-06-05 2003-06-05 Nokia Corp Tiedonkäsittelymenetelmä, vastaanotin ja verkkolaite
FR2863794B1 (fr) * 2003-12-16 2006-03-03 Canon Kk Procedes et dispositifs de localisation d'erreurs pour les codes de geometrie algebrique
FR2865083B1 (fr) * 2004-01-13 2006-04-07 Canon Kk Decodage pour code de geometrie algebrique associe a un produit fibre.
KR100900329B1 (ko) * 2007-07-13 2009-06-02 한양대학교 산학협력단 리드솔로몬 복호 방법 및 장치
US8806295B2 (en) * 2012-05-24 2014-08-12 International Business Machines Corporation Mis-correction and no-correction rates for error control

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5341385A (en) * 1987-06-18 1994-08-23 Sony Corporation Method and apparatus for decoding Reed-Solomon code
US4868828A (en) * 1987-10-05 1989-09-19 California Institute Of Technology Architecture for time or transform domain decoding of reed-solomon codes
KR0135824B1 (ko) * 1994-11-10 1998-05-15 윤종용 오류 위치 및 추정 다항식 계산방법 및 이를 이용한 리드-솔로몬 복호기
JP3233860B2 (ja) * 1996-10-25 2001-12-04 松下電器産業株式会社 リードソロモン復号器

Also Published As

Publication number Publication date
FR2771229B1 (fr) 2001-02-02
FR2771229A1 (fr) 1999-05-21
CN1214575A (zh) 1999-04-21
JP3245119B2 (ja) 2002-01-07
NL1010312C2 (nl) 2000-05-31
JPH11225079A (ja) 1999-08-17
US6256763B1 (en) 2001-07-03
KR100258952B1 (ko) 2000-06-15
NL1010312A1 (nl) 1999-04-15
KR19990031804A (ko) 1999-05-06

Similar Documents

Publication Publication Date Title
CN1130837C (zh) 采用新多项式排列结构里德-索罗门解码器及解码方法
CN109379086B (zh) 低复杂度的码率兼容的5g ldpc编码方法和编码器
US9432053B1 (en) High speed LDPC decoder
CN1168237C (zh) 移动通信系统中的分量解码器及其方法
JP2008507240A (ja) 低密度パリティ検査(ldpc)符号用の階層的復号方式の改善
CN1783729A (zh) 用联合节点处理来解码低密度奇偶校验码的方法和设备
WO2018036178A1 (zh) 一种ldpc的解码方法
US8661308B2 (en) Method and device for fast cyclic redundancy check coding
CN1136662C (zh) 寻找卷积反馈编码器起始状态的技术
CN1467918A (zh) 里得-索罗门解码器
CN1114999C (zh) 测定用在里德-索洛蒙译码器中的误差定位子多项式的装置
EP1502356B1 (en) A method of soft-decision decoding of reed-solomon codes
CN1113474C (zh) Crc/edc校验器系统和方法
US20070198896A1 (en) Decoding with a concatenated error correcting code
Zhang et al. Fast factorization architecture in soft-decision Reed-Solomon decoding
US6304994B1 (en) Reed Solomon decoder and decoding method utilizing a control signal indicating a new root for an initial error locator polynomial with respect to new erasure information
JP2005539451A (ja) データウィンドウを使用してデータを復号化するための方法
US20070220407A1 (en) Methods and apparatuses for generating parity symbols for data block
CN1097882C (zh) 里德-索罗门解码器和解码方法
US20170288700A1 (en) Bch decorder in which folded multiplier is equipped
CN110875745A (zh) 一种面向高速硬件电路实现的gii码译码算法
RU2557454C1 (ru) Способ декодирования помехоустойчивого кода
JPH1032497A (ja) エラー評価多項式係数計算装置
US20230101789A1 (en) Accelerating bit error correction in a receiver
CN117632577B (zh) 一种基于bch编码的快速ecc纠错电路

Legal Events

Date Code Title Description
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C06 Publication
PB01 Publication
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20031210

Termination date: 20091112