CN107800439B - 用于里德索罗门码的低延迟解码器 - Google Patents

用于里德索罗门码的低延迟解码器 Download PDF

Info

Publication number
CN107800439B
CN107800439B CN201710765440.XA CN201710765440A CN107800439B CN 107800439 B CN107800439 B CN 107800439B CN 201710765440 A CN201710765440 A CN 201710765440A CN 107800439 B CN107800439 B CN 107800439B
Authority
CN
China
Prior art keywords
kes
candidates
updated
decoder
symbols
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.)
Active
Application number
CN201710765440.XA
Other languages
English (en)
Other versions
CN107800439A (zh
Inventor
J·方
张国伟
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.)
Kaiwei International Co
Marvell International Ltd
Marvell Asia Pte Ltd
Original Assignee
Marvell Asia Pte 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 Marvell Asia Pte Ltd filed Critical Marvell Asia Pte Ltd
Publication of CN107800439A publication Critical patent/CN107800439A/zh
Application granted granted Critical
Publication of CN107800439B publication Critical patent/CN107800439B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/11Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
    • 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
    • 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/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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/10Indexing scheme relating to G06F11/10

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Pure & Applied Mathematics (AREA)
  • Algebra (AREA)
  • Probability & Statistics with Applications (AREA)
  • Mathematical Analysis (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Operations Research (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Error Detection And Correction (AREA)

Abstract

解码器包括校正子计算器、关键等式求解器(KES)和纠错器。校正子计算器被配置为:接收使用里德索罗门(RS)码编码以包括(n‑k)个冗余符号的n符号码字,并且针对码字计算2t个校正子Si,t=(n‑k)/2是可纠正的错误符号的最大数量。KES被配置为通过向校正子应用t次迭代来得出其根标识错误符号的位置的错误定位器多项式∧(x)。在t次迭代中的单次迭代中,KES被配置为计算∧(x)和∧(x)的相应两个候选之间的两个差异,并且从两个候选中得出∧(x)的被经更新的候选。纠错器被配置为通过使用得出的错误定位器多项式∧(x)纠正错误符号来恢复码字。

Description

用于里德索罗门码的低延迟解码器
相关申请的交叉引用
本申请要求于2016年8月30日提交的美国临时专利申请62/381,169的权益,其公开内容通过引用方式并入本文。
技术领域
本公开大体上涉及前向纠错(FEC)码,并且具体地涉及用于里德索罗门码的低延迟解码的方法和系统。
背景技术
在诸如通信和存储系统的各种应用中,使用前向纠错(FEC)码来保护数据。为了使用例如里德索罗门码的FEC码来保护数据消息,编码器通常在将消息例如通过某个信道发送到目的地之前将冗余信息添加到该数据消息。在接收机处,解码器使用该冗余信息来检测和纠正信道在发送消息时可能引起的错误。
上述描述作为本领域的相关技术的一般概述呈现,并且不应被解释为承认其包含的任何信息构成了针对本专利申请的现有技术。
发明内容
本文描述的实施例提供了一种解码器,其包括校正子计算器、关键等式求解器(KES)、和纠错器。校正子计算器被配置为接收使用里德索罗门(RS)码编码以包括(n-k)个冗余符号的n符号码字,并且针对该码字计算2t个校正子Si,t=(n-k)/2是可纠正错误符号的最大数量。KES被配置为通过向校正子应用t次迭代来得出其根标识错误符号的位置的错误定位器多项式∧(x)。在t次迭代的单次迭代中,KES被配置为计算∧(x)和∧(x)的相应两个候选之间的两个差异,并且从两个候选中得出∧(x)的经更新的候选。纠错器被配置为通过使用所得出的错误定位器多项式∧(x)纠正错误符号来恢复码字。
在一些实施例中,KES被配置为使用系数向量λ表示∧(x)的候选,并且通过在t次迭代中重新计算总共t次λ来得出经更新的∧(x)的候选。在其他实施例中,KES被配置为得出∧(x)的经更新的候选,使得基于经更新的候选计算的第一差异和第二差异被消除。在另外的实施例中,KES被配置为在第i次迭代中定义第一校正子向量S(2i)和第二校正子向量S(2i+1),其中S(i)=[Si,Si-1,…,Si-t],并且分别使用第一校正子向量和第二校正子向量来计算第一差异和第二差异。
在一个实施例中,KES被配置为将第一差异计算为δ=S(2i)′λ,并将第二差异计算为δ1=S(2i+1)′λ1,其中λ和λ1是分别表示Λ(x)的对应于S(2i)和S(2i+1)的相应候选的系数向量。在另一实施例中,KES被配置为将第一差异计算为δ=S(2i)′λ,至少基于S(2i+1)、与第一差异并行地计算第一中间结果和第二中间结果δ11和δ12,并使用δ11和δ12计算第二差异。在另一实施例中,KES被配置为在t次迭代中的每一次中存储偏移一的系数向量bSR和偏移二的系数向量bSR2,其是通过将与∧(x)的候选相对应的系数向量分别偏移一个位置和两个位置得出的,并且至少基于bSR和bSR2中的一个在随后的迭代中得出∧(x)的经更新的候选。
在一些实施例中,KES包括可用于得出∧(x)的经更新的候选的三个更新模块,并且KES被配置为使用三个更新模块之一来得出∧(x)的经更新的候选。在其他实施例中,KES被配置为使用取决于δ和δ1的三向决策操作来选择三个更新模块之一,并且然后使用所选择的更新模块来计算∧(x)的经更新的候选。在另外的实施例中,KES被配置为并行地使用三个更新模块来计算∧(x)的三个候选,然后使用取决于δ和δ1的三向决策操作来选择∧(x)的三个候选之一。
在一个实施例中,KES被配置为响应于检测到取决于δ的第一条件为真来选择三个更新模块之一,并且否则使用剩余的两个更新模块来计算∧(x)的两个经更新的候选,并通过检查取决于δ1的第二条件来选择∧(x)的两个候选之一。
根据本文所描述的实施例,附加地提供了一种用于解码的方法,包括:接收用于由解码器解码的、使用里德索罗门(RS)码编码的n符号码字。针对所接收的码字,计算2t个校正子Si,i=0...2t-1,其中t=(n-k)/2是RS码被设计来纠正的错误符号的最大数量,并且(n-k)是该码字中的冗余符号的数量。由关键等式求解器(KES)通过向校正子应用t次迭代、针对所接收的码字得出其根标识所接收的码字中的错误符号的位置的错误定位器多项式∧(x)。在t次迭代中的单次迭代中,∧(x)与∧(x)的相应的第一候选和第二候选之间的第一差异和第二差异由KES计算,并且∧(x)的经更新的候选从第一候选和第二候选中的至少一个得出。通过使用得出的错误定位器多项式∧(x)纠正错误符号,来得出码字的无差错版本。
结合附图、根据本公开的实施例的以下详细描述,将更透彻地理解本公开,在附图中:
附图说明
图1是示意性地示出了根据本文所描述的实施例的用于里德索罗门(RS)码的解码器的框图;以及
图2和图3是示意性地示出了根据本文所描述的实施例的用于评估错误定位器多项式的方法的流程图,该错误定位器多项式用于对由RS码生成的码字进行解码。
具体实施方式
表示为RS(n,k)的里德索罗门(RS)码是分组码,该分组码通过向消息中添加(n-k)个冗余符号,将k个数据符号的消息映射为n个符号的码字。RS(n,k)码能够纠正多达t个错误符号,其中对于偶数值的(n-k),t=(n-k)/2,对于奇数值的(n-k),t=(n-k-1)/2。
本文描述的实施例提供了用于RS码的低延迟解码的改进的方法和系统。RS码例如在工业和应用数学学会杂志(Journal of the Society for Industrial and appliedMathematics)1960年第8卷第300-304页的“Polynomial Codes over Certain FiniteFields(某些有限域上的多项式码)”中被描述,其通过引用方式并入本文。
通常要求RS解码器确定指示码字中的错误符号位置的多项式∧(x)。传统地,解码器使用硬件模块来确定∧(x),该硬件模块在2t次相应迭代中生成2t个候选多项式。然而,在所公开的实施例中,该硬件模块的配置已经被改变,以便通过在相应的t次迭代中仅生成t个候选多项式来确定∧(x)。此外,在一个实施例中,RS解码器在t次迭代中的每一次中并行地执行一些操作。下面详细描述用于确定∧(x)的实施例。
在下面的描述中,我们主要参考在GF(2m)形式的称为伽罗华域(GF)的有限域上定义的RS码,其包含N=2m-1个元素{0,1,α,α2,…,αN-1},其中α是GF(2m)的本原元素。GF(2m)的每个元素可以由m位二进制数表示。所公开的技术类似地可应用于基于其他有限域的RS码。
RS码由根为GF下的(n-k)=2t个连续元素的生成多项式g(x)来构造,例如通过以下方式给出:
等式1:
g(x)=(x-α0)(x-α1)…(x-α2t-1)=g0+g1x+…+gn-kxn-k
在生成RS码的码字时,要被编码的消息可以被解释为对应消息多项式M(x)的系数。RS编码器通常将M(x)乘以xn-k用来为(n-k)个冗余符号产生空间,并将乘积[M(x)·xn-k]除以生成多项式g(x),这得到商q(x)和余数r(x)。与消息相对应的码字(CW)由多项式CW(x)表示,多项式CW(x)通过下式给出:
等式2:
CW(x)=M(x)·xn-k+r(x)=g(x)·q(x)
在接收机侧,码字的符号中的一个或者多个可能是错的,例如由于由信道引起的噪声和失真。信道的效应有时通过加到码字多项式的错误多项式E(x)来建模,即,所接收的码字通过下式给出的多项式R(x)表示:
等式3:
R(x)=CW(x)+E(x)
多项式R(x)在生成多项式g(x)的根αi处的值是表示为Si的码字的校正子。由于码字多项式CW(x)在g(x)的根处被归零,因此校正子仅取决于等式4所示的错误模式:
等式4:
Si=R(αi)=CW(αi)+E(αi)=E(αi),i=0,1...2t-1
令'e'表示所接收的码字中的错误符号的数量,其中e≤t。错误多项式E(x)可以被写为:
等式5:
Figure GDA0003866448530000051
在等式5中,索引ik(范围0...n-1)表示第k个错误符号的位置,并且
Figure GDA0003866448530000052
表示相应的错误值。通过定义错误定位器
Figure GDA0003866448530000053
和错误值
Figure GDA0003866448530000054
校正子可表示为:
等式6:
Figure GDA0003866448530000055
为了纠正所接收的码字中的错误符号,要求解码器找到其中这些错误发生(Xk)的错误符号的数量,和相应的错误值(Yk)。错误定位器Xk,k=1…e可用于定义由下式给出的错误定位器多项式∧(x):
等式7:
Figure GDA0003866448530000056
注意,∧(x)的度等于所接收的码字中的错误符号的数量,并且∧(x)的根的倒数是错误符号的错误定位器Xk。校正子Si和错误定位器多项式∧(x)通过以下(2t-e)个等式的集合相关:
等式8:
λ0Si+e1Si+e-1+…+λe-1Si+1eSi=0,i=0...2t-1
等式8也被称为“关键等式”,并且用于求解具有未知变量λ0…λe的等式8的方法也被称为“关键等式求解器”(KES),其中错误'e'的数量是未知的。在一些实施例中,给定2t个校正子Si,i=0…2t-1,KES的目标是找到对于所有i=0…2t-1满足等式8的错误定位器多项式∧(x)。
RS解码器可以例如使用Berlekamp-Massey的方法来评估错误定位器多项式∧(x),其例如在IEEE信息论杂志(IEEE Transactions on Information Theory)1969年1月的第15卷第1期的第122-127页的“移位寄存器合成和BCH解码”(Shift-RegisterSynthesis and BCH decoding)中描述,其通过引用方式并入本文。
在一些实施例中,RS解码器通过执行以下主要操作来从R(x)中对码字进行解码:
·例如使用等式4、根据接收码字的多项式R(x)来计算数量2t=(n-k)个校正子Si,。
·求解等式8以找出错误定位器多项式∧(x)。∧(x)的根标识所接收的码字中的错误符号的位置。下面详细描述有效地评估∧(x)的实施例。
·通过找到∧(x)的根来得出错误符号的位置。在一个实施例中,解码器使用Chien的搜索方法或使用任何其它合适的方法来执行该操作。Chien的搜索方法例如在IEEE信息论杂志(IEEE Transactions on Information Theory)1964年IT-10,No.4第357-363页的“Bose-Chaudhuri-Hocquenghem码的循环解码过程”(Cyclic Decoding Proceduresfor the Bose-Chaudhuri-Hocquenghem Codes)中描述,其通过引用的方式并入本文。
·得出与错误符号相对应的错误值。在一个实施例中,解码器使用Forney方法或任何其它合适的方法来执行该操作。Forney方法例如在IEEE信息论杂志(IEEETransactions on Information Theory)1965年第11卷第4期的第549-557页的“关于对BCH码进行解码”(On Decoding BCH Codes)中描述,其通过引用的方式并入本文。
·通过纠正所接收的码字中的错误符号来恢复码字CW。
在一些实施例中,KES通过仅对校正子应用t次迭代来得出错误定位器多项式∧(x)。在t次迭代中的每一次迭代中,KES计算∧(x)与∧(x)的相应第一候选和第二候选之间的第一差异和第二差异,并且从第一候选和第二候选中的至少一个得出∧(x)的经更新的候选。在一些实施例中,在迭代中的每次迭代中,计算第一差异值和第二差异值和/或得出∧(x)的候选多项式涉及并行地计算和/或更新某些中间项,与传统实现相比,其减少了延迟。
例如,在一个实施例中,KES并行地使用三个相应的硬件模块来计算第一差异值以及计算第二差异值所需的两个中间项。这与传统实现不同,传统实现中,一个硬件模块在不同迭代中计算第一差异值和第二差异值的每一个。在一个实施例中,KES得出∧(x)的经更新的候选,使得基于经更新的候选计算的第一差异和第二差异被消除。
在一些实施例中,KES在第i次迭代(i=0...t-1)中定义表示为S(2i)的第一校正子向量和表示为S(2i+1)的第二校正子向量,其中S(i)=[Si,Si-1,…,Si-t],并分别使用S(2i)和S(2i+1)计算第一差异和第二差异。在一个实施例中,KES将第一差异计算为δ=S(2i)′λ,将第二差异计算为δ1=S(2i+1)′λ1,其中λ和λ1是分别表示Λ(x)的对应于S(2i)和S(2i+1)的对应候选的系数向量。
在所公开的技术中,KES通过对校正子仅应用t次迭代来评估错误定位器多项式,在t次迭代中KES仅总共t次得出候选错误定位器多项式,与传统实施方式相比,这仅添加小的硬件占用面积(footprint)。此外,与传统实现方式不同,在t次迭代中的每一次迭代中,KES并行地计算一些中间项。使用这种方案,KES明显比传统方案更快地解出关键等式,在传统方案中得出错误定位器多项式需要2t次迭代,而得出候选错误定位器多项式需总共2t次。通过使用所公开的技术,RS解码的延迟被减少了t次迭代,同时设计定时约束和解码器功耗被保持为低。
接下来,我们描述示例RS解码器实施例的结构。
图1是示意性地示出了根据本文所描述的实施例的用于里德索罗门(RS)码的解码器24的框图。在图1的示例中,解码器24以硬件实现。解码器24接受输入码字R 28,该R 28包括使用RS(n,k)码编码的码字(CW)。在一个实施例中,该码字包括总数量n个符号,其中k个符号是数据符号,并且(n-k)个符号是冗余符号。
解码器24适用于各种应用,诸如例如在通信系统的接收机中、在存储系统中检索数据、或在使用RS码保护数据的任何应用中。
在一个实施例中,解码器24包括校正子计算器36、关键等式求解器(KES)40、错误定位器44、错误幅度评估器46、和纠错器52。校正子计算器36接收输入码字R,并计算2t个校正子Si,如等式4给出的。
在一些实施例中,基于校正子,KES 40以迭代方式得出错误定位器多项式∧(x)。在传统实现中,评估∧(x)需要对校正子应用2t次迭代。在这种实现中,在2t迭代中的每一次中,传统的KES将(i)计算∧(x)的当前候选相对于正确值的差异,并且(ii)更新∧(x)的候选以消除差异。注意,在这种传统方案中,KES计算总数2t个差异值,并得出总数2t个候选错误定位器多项式。
与传统方案不同,在一些公开的实施例中,KES 40仅对校正子应用t次迭代,其中在这些t次迭代中的每一次迭代中,KES计算两个差异值(本文也称为错误因子),以及每次迭代仅一次地基于两个差异值来得出错误定位器多项式的经更新的候选。在这样的实施例中,在求解等式8中,KES得出针对错误定位器多项式的总数仅t个候选,其中计算每个候选是基于两个差异值(与传统方案中的2t个候选相比)。此外,在一些实施例中,KES执行用于并行地计算两个差异值的一些操作,以减少延迟。
在一个实施例中,KES 40包括迭代更新器48,其在t次迭代中中的每一次迭代中接收表示为S(2i)和S(2i+1)的两个校正子向量,每个这样的向量包括以下形式的(t+1)个连续的校正子:
等式9:
S(i)=[Si,Si-1,Si-2,...,Si-t]′
在一个实施例中,两个校正子向量S(2i)和S(2i+1)是从存储在共享硬件中的2t校正子的单个副本生成的。在等式9中,索引超出范围的S(i)的元素得到零值。在每次迭代中,迭代更新器48分别基于S(2i)和S(2i+1)来计算第一差值70A和第二差值70B(分别表示δ和δ1),并且基于第一差异值和第二差异值来得出多项式∧(x)的经更新的候选76,如下将详细描述。响应于终止t次迭代,KES 40输出最终的错误定位器多项式∧(x),其等于使用传统方法将得到的相同定位器多项式。在一些实施例中,KES 40附加地输出用于评估错误幅度的多项式Ω(x)。
在一个实施例中,KES 40向错误定位器44提供错误定位器多项式∧(x),错误定位器44例如使用(以上提到的)Chien的和Forney方法、基于∧(x)来定位错误符号,并向错误幅度值评估器46提供多项式Ω(x),错误幅度评估器46评估例如使用(以上提到的)Forney方法定位的错误符号的幅度,并且通过计算以下等式来纠正错误的符号以产生恢复的CW56:
等式10:
CW(x)=R(x)+E(x)
在等式10中,E(x)是错误位置多项式,其是解码器基于错误定位器和错误幅度评估器的结果得出的。
在一些实施例中,图1的解码器24的部分或全部元件以硬件来实现,诸如使用一个或多个现场可编程门阵列(FPGA)或专用集成电路(ASIC)。在替代实施例中,解码器的某些元件(诸如校正子计算器36、KES 40和纠错器52中的一个或多个)在可编程处理器中实现,该可编程处理器以软件编程以执行本文所述的功能。该软件可以例如以电子形式通过网络下载到处理器,或者,替代地或附加地,其可以提供和/或存储在诸如磁、光或电子存储器的非瞬时性有形介质上。
图1中的解码器配置是示例解码器配置,其仅为了清楚起见而被描绘。在替代实施例中,可以使用任何其他合适的解码器配置。为了清楚起见,已经从图中省略了对于理解所公开的技术非强制性的解码器的元件。
图2和图3是示意性地示出了根据本文所描述的实施例的用于评估用于解码通过RS码生成的码字的错误定位器多项式的方法的流程图。图2和图3中的方法将被描述为由RS解码器24的KES 40执行。
图2的方法在初始化操作100处以KES 40从校正子计算器36接收校正子{S0,S1,…,S2t-1}开始。此外,在操作100,KES 40接收(或者替代地生成内部)向量S(i),如上面等式9中给出。
此外,在操作100,KES如下初始化各种参数:
·λ=[λ0,λ1,...,λt]′=[1,0,...,0]′-表示错误定位器多项式∧(x)的候选的系数向量。
·b=[b0,b1,...,bt]′=[1,0,...,0]′-表示纠正多项式的系数向量。
·λSR=[0,λ0,λ1,...,λt-1]′-向量λ的偏移一的版本。
·bSR=[0,b0,b1,...,bt-1]′-向量b的偏移一的版本。
·bSR2=[0,0,b0,b1,...,bt-2]′-向量b的偏移二的版本。
·i=0-迭代索引,范围为0...t-1。
·k=0-与差异值一起的控制参数,控制每次迭代中的KES行为。
·γ=1-取决于差异值的归一化因子。
在错误评估操作104中,KES分别计算表示为δ和δ1的第一差异值和第二差异值。第一差异值δ与向量S(2i)和λ有关,而第二差异值δ1与向量S(2i+1)、λ、γ、b和第一偏差δ有关。在一个实施例中,通过使用表达式δ11=S(2i+1)′λ和δ12=S(2i+1)′bSR,δ、δ11和δ12被并行(同时)独立地计算值,以减少延迟。因此,KES基于γ并基于并行地计算的值δ、δ11和δ12来计算值δ1。
在第一测试操作108,KES评估由下式给出的第一条件:
等式11:
COND1(k,δ)=(k≥0)&(δ≠0)
如果在操作108COND1为假,则KES进行到第二测试操作116,在该测试操作116,KES评估由下式给出的第二条件:
等式12:
COND2(k,δ,δ1)=[(k≥0)&(δ==0)&(δ1≠0)]|[(k==-1)&(δ1≥0)]
在操作108和116中测试的条件可以被视为三向决策做出操作,指向执行表示为更新1和更新2的两种方法之一,用于得出∧(x)的经更新的候选。表1总结了决策做出过程。
Figure GDA0003866448530000111
表1:用于更新系数向量的三向决策做出
在操作112,KES通过计算以下表达式来执行方法更新1:
等式13:
λ*=(γδ)λ-(δ2)bSR-δ1λSR
在操作120和124中的每一个处,KES执行表示为更新2的由以下表达式给出的更新方法:
等式14:
λ*=γλ-δ1bSR2
等式13和14中的更新操作被设计用以得出错误定位器多项式的经更新的候选,以便消除(基于经更新的候选计算的)第一差异值和第二差异值。
在使用操作112、120或124之一计算表示∧(x)的经更新的候选的临时系数向量λ*之后(或并行地),KES执行相应的参数更新操作128、132或136用于更新参数b、γ和k。表2总结了这些参数更新操作。在一些实施例中,KES并行地执行操作(112和128)、(120和132)和(124和136)中的每一对。在这样的实施例中,KES并行地(同时地)独立地更新值λ*、b*、γ*和参数k。
Figure GDA0003866448530000121
在操作128、132和136处,KES更新b*、γ*和参数k,如表2所示。在下一次迭代操作140的准备中,KES将参数λ、b和γ更新为由操作对(112和128)、(120和132)或(124和136)计算的临时参数的值。此外,在操作140,KES更新偏移一的系数向量λSR、偏移一的向量bSR和偏移二的向量bSR2
在本公开的上下文中和权利要求中,使用相应的更新模块(以硬件实现)来实现更新操作112、120和124。替代地,三个更新模块实现相应的操作对(112和128)、(120和132)或(124和136)。
在一些实施例中,KES进行三向决策(包括COND1和COND2),用于选择三个更新模块之一,来执行以得出∧(x)的候选。替代地,KES执行三个更新模块中的每一个以计算∧(x)的三个相应候选,并且进行三向决策以选择所计算的候选之一。
在其他实施例中,KES响应于检测到COND1为真来选择三个更新模块之一,并且否则使用剩余的两个更新模块来计算∧(x)的两个经更新的候选,并且通过检查COND2来选择∧(x)的两个候选之一。
接下来,KES在迭代计数操作144中递增迭代索引。在循环测试操作148处,KES检查已经执行的迭代次数是否小于t,并且如果是,则返回到操作104以进行下一次迭代。否则,KES已经执行了t次迭代,并且在输出操作152处输出最终系数向量,该最终系数向量表示与输入码字R相对应的错误定位器多项式∧(x)。在操作152之后,该方法终止。
在一些实施例中,在操作152,KES 40附加地输出表示为Ω(x)的错误幅度多项式,其系数由向量[ω01,…,ωt-1]给出。在一些实施例中,多项式Ω(x)被错误幅度评估器46使用以确定错误值。在一个实施例中,KES 40通过求解由下式给出的关键等式的变量来得出Ω(x):
等式15:
Ω(x)=[Λ(x)·S(x)]mod x2t
现在我们描述图2的方法的两个示例变体实施例。为了比较,图2的方法在本文中被称为VAR20。
在一个替代实施例(本文称为VAR21)中,在操作104之后,KES首先执行操作(112和128)、(120和132)和(124和136),并且然后例如使用合适的多路复用器选择模块来执行包括操作COND1 108和COND2 116的三向决策操作。三向决策的输出(例如多路复用器输出)被提供给操作140。
在另一替代实施例(本文称为VAR22)中,响应于检测到COND1为假,KES首先执行操作120(或等效地操作124),并且然后执行操作COND2 116,以例如使用多路复用器模块向操作132和136之一提供操作120的输出。
图3的方法以与上述图2的方法类似的方式操作。具体来说,两种方法均接收相同的校正子输入,并通过执行数目t次的迭代来评估错误定位器多项式∧(x)。在下面的描述中,我们仅描述图3的方法的与图2的方法中执行的并行操作不同的操作。
图3的错误评估操作204与图2的操作104并行。操作204与操作104不同在于显式地计算项λ1=γλ-δbSR,并且通过计算δ1=S(2i+1)′λ1来得出第二差异。
表示为更新3的图3的更新操作212替换图2的操作112(更新1)。类似地,表示为更新4的图3的操作220和224替换图2的操作120和124(更新2)。具体来说,KES 40通过计算下式来执行操作212:
等式16:
λ*=δλ1-δ1λSR
KES还通过计算下式来执行操作220和224:
等式17:
λ*=γλ1-δ1λbSR2
此外,在操作232,KES 40将b*更新为在操作204处明确计算的λ1值。
上面参考图2的方法描述的两个变型实施例也适用于图3的方法。为了比较,图3的方法在本文中被称为VAR30。在图3的一个变型(本文称为VAR31)中,KES在执行操作208和216(分别是COND1和COND2)的三向决策之前执行操作(212和228)、(220和232)和(224和236),其例如由多路复用器模块实现。在另一变型实施例(本文称为VAR32)中,KES在向操作232和236之一提供操作220的结果的操作216(COND2)之前执行操作220(或224)。在一个实施例中,操作COND2 216是使用多路复用器模块实现的。
图2(VAR20)及其变型实施例VAR21和VAR22中描述的方法以及图3(VAR30)及其变型实施例VAR31和VAR32中描述的方法预期在延迟方面类似地执行。
在方法VAR20和VAR21中,KES并行地执行大量计算,其使设计的定时约束变松,但是与图3的方法(VAR30)相比通常需要额外的硬件。VAR30和VAR31的方法可以采用通常在传统实现中使用的模块,但是通常需要比在其他变体方法中所需要的设计的定时约束更紧的设计的定时约束。实现VAR22和VAR32的方法通常需要比其他变型实施例中所需的更小的硬件占用面积。
以上描述的实施例是通过示例给出的,并且也可以使用其它合适的实施例。例如,尽管上述实施例主要涉及RS码,但所公开的技术也可应用于诸如Bose-Chaudhuri-Hocquenghem BCH码的其他分组码。
在上述实施例中,码字中的冗余符号的数量(n-k)被假定为偶数。该假设不是强制性的,并且所公开的技术可以被,加上必要的变更,应用于其中冗余符号的数量(n-k)是奇数的RS码。在一些实施例中,对于(n-k)使用奇数需要处理附加的迭代。
应注意,上述实施例是作为示例引用的,并且本发明不限于上文具体示出和描述的内容。相反,本发明的范围包括上文描述的各种特征的组合和子组合,以及在现有技术未公开的、本领域技术人员在阅读前述说明书后将会想到的其变体和修改。通过引用并入本专利申请中的文件被认为是本申请的组成部分,除非在这些并入的文献中以与本说明书中明确或隐含地进行的定义相冲突的方式定义了任何术语情况下,应当仅考虑本说明书中的定义。

Claims (20)

1.一种解码器,包括:
校正子计算器,被配置为接收用于由所述解码器解码的、使用里德索罗门RS码编码的n符号码字,并且针对所接收的码字计算2t个校正子Si,i=0…2t-1,其中t=(n-k)/2是所述RS码被设计来纠正的错误符号的最大数量,并且(n-k)是所述码字中的冗余符号的数量,通过向消息中添加(n-k)个冗余符号,所述RS码将k个数据符号的所述消息映射为n个符号的码字;
关键等式求解器KES,被配置为通过向所述校正子应用t次迭代来针对所接收的所述码字得出错误定位器多项式∧(x),∧(x)的根标识所接收的所述码字中的错误符号的位置,其中在所述t次迭代中的单次迭代中,所述KES被配置为计算∧(x)与∧(x)的相应的第一候选和第二候选之间的第一差异和第二差异,并且根据所述第一候选和所述第二候选中的至少一个得出∧(x)的经更新的候选;以及
纠错器,被配置为通过使用所得出的所述错误定位器多项式∧(x)纠正所述错误符号来恢复所述码字的无差错版本。
2.根据权利要求1所述的解码器,其中所述KES被配置为:使用系数向量λ来表示∧(x)的候选,并且通过在所述t次迭代中重新计算λ总共t次来得出∧(x)的经更新的候选。
3.根据权利要求1所述的解码器,其中所述KES被配置为:得出∧(x)的经更新的候选,使得基于经更新的候选所计算的所述第一差异和所述第二差异被消除。
4.根据权利要求1所述的解码器,其中所述KES被配置为:在第i次迭代中定义第一校正子向量S(2i)和第二校正子向量S(2i+1),其中S(i)=[Si,Si-1,…,Si-t],并且分别使用所述第一校正子向量和所述第二校正子向量来计算所述第一差异和所述第二差异。
5.根据权利要求4所述的解码器,其中所述KES被配置为将所述第一差异计算为δ=S(2i)′λ并将所述第二差异计算为δ1=S(2i+1)′λ1,其中λ和λ1分别是表示Λ(x)的对应于S(2i)和S(2i+1)的相应候选的系数向量。
6.根据权利要求4所述的解码器,其中所述KES被配置为:将所述第一差异计算为δ=S(2i)′λ,与所述第一差异并行地、至少基于S(2i+1)来计算第一中间结果δ11和第二中间结果δ12,并使用δ11和δ12来计算所述第二差异。
7.根据权利要求1所述的解码器,其中所述KES被配置为:在所述t次迭代中的每一次迭代中存储偏移一的系数向量bSR和偏移二的系数向量bSR2,bSR和bSR2是通过将与∧(x)的候选相对应的系数向量分别偏移一个位置和两个位置得出的;并且在随后的迭代中至少基于bSR和bSR2中的一个来得出∧(x)的经更新的候选。
8.根据权利要求1所述的解码器,其中所述KES包括可用于得出∧(x)的所述经更新的候选的三个更新模块,其中所述KES被配置为使用所述三个更新模块之一来得出∧(x)的所述经更新的候选。
9.根据权利要求8所述的解码器,其中所述KES被配置为:使用取决于δ和δ1的三向决策操作来选择所述三个更新模块之一,并且然后使用所选择的更新模块来计算∧(x)的所述经更新的候选。
10.根据权利要求8所述的解码器,其中所述KES被配置为:并行地使用所述三个更新模块来计算∧(x)的三个候选,并且然后使用取决于δ和δ1的三向决策操作来选择∧(x)的所述三个候选之一。
11.根据权利要求8所述的解码器,其中所述KES被配置为:响应于检测到取决于δ的第一条件为真来选择所述三个更新模块之一,并且否则使用剩余的两个更新模块来计算∧(x)的两个经更新的候选,并且通过检查取决于δ1的第二条件来选择∧(x)的所述两个经更新的候选之一。
12.一种用于解码的方法,包括:
接收用于由解码器解码的、使用里德索罗门RS码编码的n符号码字;
针对所接收的码字,计算2t个校正子Si,i=0…2t-1,其中t=(n-k)/2是所述RS码被设计来纠正的错误符号的最大数量,并且(n-k)是所述码字中的冗余符号的数量,通过向消息中添加(n-k)个冗余符号,所述RS码将k个数据符号的所述消息映射为n个符号的码字;
通过向所述校正子应用t次迭代,由关键等式求解器KES针对所接收的所述码字得出错误定位器多项式∧(x),∧(x)的根标识所接收的所述码字中的错误符号的位置,其中在所述t次迭代中的单次迭代中,由所述KES计算在∧(x)与∧(x)的相应的第一候选和第二候选之间的第一差异和第二差异,并根据所述第一候选和所述第二候选中的至少一个得出∧(x)的经更新的候选;以及
通过使用所得出的错误定位器多项式∧(x)纠正所述错误符号来恢复所述码字的无差错版本。
13.根据权利要求12所述的用于解码的方法,包括:使用系数向量λ来表示∧(x)的候选,并且通过在所述t次迭代中重新计算λ总共t次来得出∧(x)的经更新的候选。
14.根据权利要求12所述的用于解码的方法,其中得出∧(x)的所述经更新的候选包括得出∧(x)的所述经更新的候选,使得基于所述经更新的候选所计算的所述第一差异和所述第二差异被消除。
15.根据权利要求12所述的用于解码的方法,包括:在第i次迭代中定义第一校正子向量S(2i)和第二校正子向量S(2i+1),其中S(i)=[Si,Si-1,…,Si-t],并且其中计算所述第一差异和所述第二差异包括分别使用所述第一校正子向量和所述第二校正子向量来评估所述第一差异和所述第二差异。
16.根据权利要求15所述的用于解码的方法,其中计算所述第一差异和所述第二差异包括:计算相应的表达式δ=S(2i)'λ和δ1=S(2i+1)'λ1,其中λ和λ1分别是表示∧(x)的对应于S(2i)和S(2i+1)的相应候选的系数向量。
17.根据权利要求15所述的用于解码的方法,其中计算所述第一差异包括:将δ计算为δ=S(2i)′λ,与所述第一差异并行地、至少基于S(2i+1)来进一步计算第一中间结果δ11和第二中间结果δ12,并且其中计算所述第二差异包括使用δ11和δ12来计算δ1。
18.根据权利要求12所述的用于解码的方法,包括:在所述t次迭代中的每一次迭代中存储偏移一的系数向量bSR和偏移二的系数向量bSR2,bSR和bSR2是通过将与∧(x)的候选相对应的系数向量分别偏移一个位置和两个位置得出的;并且在随后的迭代中至少基于bSR和bSR2中的一个得出∧(x)的经更新的候选。
19.根据权利要求12所述的用于解码的方法,其中所述KES包括可用于得出∧(x)的所述经更新的候选的三个更新模块,其中得出∧(x)的所述经更新的候选包括使用所述三个更新模块之一来计算∧(x)的所述经更新的候选。
20.根据权利要求19所述的用于解码的方法,其中计算∧(x)的所述经更新的候选包括:使用取决于δ和δ1的三向决策操作来选择所述三个更新模块之一,并且然后使用所选择的更新模块来计算∧(x)的所述经更新的候选。
CN201710765440.XA 2016-08-30 2017-08-30 用于里德索罗门码的低延迟解码器 Active CN107800439B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201662381169P 2016-08-30 2016-08-30
US62/381,169 2016-08-30

Publications (2)

Publication Number Publication Date
CN107800439A CN107800439A (zh) 2018-03-13
CN107800439B true CN107800439B (zh) 2023-01-13

Family

ID=61242534

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710765440.XA Active CN107800439B (zh) 2016-08-30 2017-08-30 用于里德索罗门码的低延迟解码器

Country Status (2)

Country Link
US (1) US10459783B2 (zh)
CN (1) CN107800439B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2818029C1 (ru) * 2023-12-13 2024-04-23 федеральное государственное автономное образовательное учреждение высшего образования "Северо-Кавказский федеральный университет" Устройство для коррекции ошибок в полиномиальной системе классов вычетов

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10804935B2 (en) * 2018-01-02 2020-10-13 Intel Corporation Techniques for reducing latency in the detection of uncorrectable codewords
US10521296B2 (en) * 2018-02-20 2019-12-31 Micron Technology, Inc. Performing an additional decoding operation on an identified set of bits of a data block
CN108649966B (zh) * 2018-05-08 2021-08-06 中山大学 一种低复杂度的里德所罗门-卷积级联码迭代译码方法
US11922314B1 (en) * 2018-11-30 2024-03-05 Ansys, Inc. Systems and methods for building dynamic reduced order physical models
US12061793B1 (en) 2020-11-25 2024-08-13 Astera Labs, Inc. Capacity-expanding memory control component
US11722152B1 (en) 2020-11-25 2023-08-08 Astera Labs, Inc. Capacity-expanding memory control component
CN113610092B (zh) * 2021-07-31 2023-11-10 福州视驰科技有限公司 一种基于信道编码的人工智能集装箱识别系统

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2714555A1 (fr) * 1993-12-29 1995-06-30 Samsung Electronics Co Ltd Procédé et dispositif pour calculer un polynôme localisateur d'erreurs à utiliser dans un décodeur de Reed-Solomon.
CN1158519A (zh) * 1996-02-28 1997-09-03 大宇电子株式会社 用于计算纠错校正子的装置
TW200637168A (en) * 2005-04-14 2006-10-16 Ind Tech Res Inst Digital communications system utilizing a modified reed-solomon code and decoder thereof
CN101034894A (zh) * 2007-02-07 2007-09-12 华为技术有限公司 一种实现解码的电路和方法
CN101079640A (zh) * 2007-07-12 2007-11-28 中兴通讯股份有限公司 一种Reed-Solomon码解码器
CN101325706A (zh) * 2007-06-13 2008-12-17 卓胜微电子(上海)有限公司 低硬件开销Reed-Solomon解码器
CN101478314A (zh) * 2008-01-03 2009-07-08 中兴通讯股份有限公司 一种里德-所罗门编码译码器及其译码的方法
CN102684709A (zh) * 2012-05-10 2012-09-19 天津大学 一种译码方法及其译码装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4665523A (en) * 1984-02-15 1987-05-12 Stanford University Method and means for error detection and correction in high speed data transmission codes
US6154868A (en) * 1997-07-18 2000-11-28 International Business Machines Corporation Method and means for computationally efficient on-the-fly error correction in linear cyclic codes using ultra-fast error location
US6553536B1 (en) * 2000-07-07 2003-04-22 International Business Machines Corporation Soft error correction algebraic decoder
US6990624B2 (en) * 2001-10-12 2006-01-24 Agere Systems Inc. High speed syndrome-based FEC encoder and decoder and system using same
US8464141B2 (en) * 2008-08-13 2013-06-11 Infineon Technologies Ag Programmable error correction capability for BCH codes
KR101807538B1 (ko) * 2010-12-30 2017-12-12 삼성전자주식회사 듀얼-신드롬 생성기를 포함하는 에러 정정 코드 블록, 이의 동작 방법, 및 상기 에러 정정 코드 블록을 포함하는 시스템
TWI500038B (zh) * 2012-09-28 2015-09-11 Univ Nat Chiao Tung 記憶體系統之全套平行編碼方法與全套平行解碼方法
US9906240B2 (en) * 2015-06-03 2018-02-27 SK Hynix Inc. One-shot decoder for two-error-correcting BCH codes
US10230399B2 (en) * 2015-06-18 2019-03-12 Altera Corporation Circuitry and method for decomposable decoder

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2714555A1 (fr) * 1993-12-29 1995-06-30 Samsung Electronics Co Ltd Procédé et dispositif pour calculer un polynôme localisateur d'erreurs à utiliser dans un décodeur de Reed-Solomon.
CN1158519A (zh) * 1996-02-28 1997-09-03 大宇电子株式会社 用于计算纠错校正子的装置
TW200637168A (en) * 2005-04-14 2006-10-16 Ind Tech Res Inst Digital communications system utilizing a modified reed-solomon code and decoder thereof
CN101034894A (zh) * 2007-02-07 2007-09-12 华为技术有限公司 一种实现解码的电路和方法
CN101325706A (zh) * 2007-06-13 2008-12-17 卓胜微电子(上海)有限公司 低硬件开销Reed-Solomon解码器
CN101079640A (zh) * 2007-07-12 2007-11-28 中兴通讯股份有限公司 一种Reed-Solomon码解码器
CN101478314A (zh) * 2008-01-03 2009-07-08 中兴通讯股份有限公司 一种里德-所罗门编码译码器及其译码的方法
CN102684709A (zh) * 2012-05-10 2012-09-19 天津大学 一种译码方法及其译码装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2818029C1 (ru) * 2023-12-13 2024-04-23 федеральное государственное автономное образовательное учреждение высшего образования "Северо-Кавказский федеральный университет" Устройство для коррекции ошибок в полиномиальной системе классов вычетов

Also Published As

Publication number Publication date
US10459783B2 (en) 2019-10-29
US20180060160A1 (en) 2018-03-01
CN107800439A (zh) 2018-03-13

Similar Documents

Publication Publication Date Title
CN107800439B (zh) 用于里德索罗门码的低延迟解码器
US6374383B1 (en) Determining error locations using error correction codes
EP1131893B1 (en) Forward error corrector
US7249310B1 (en) Error evaluator for inversionless Berlekamp-Massey algorithm in Reed-Solomon decoders
US6347389B1 (en) Pipelined high speed reed-solomon error/erasure decoder
US7793195B1 (en) Incremental generation of polynomials for decoding reed-solomon codes
KR102352158B1 (ko) 리스트 디코딩 생성을 통한 이진 bch 코드들의 bm-기반 빠른 체이스 디코딩에서 빠른 다항식 업데이트를 위한 방법을 수행하기 위한 asic
US8335808B2 (en) Method and apparatus for processing multiple decomposed data for calculating key equation polynomials in decoding error correction code
US7467346B2 (en) Decoding error correction codes using a modular single recursion implementation
JP2004032737A (ja) リード−ソロモン復号器
JP4134029B2 (ja) リードソロモン符号の軟判定復号方法
US9337869B2 (en) Encoding and syndrome computing co-design circuit for BCH code and method for deciding the same
EP1102406A2 (en) Apparatus and method for decoding digital data
US6651214B1 (en) Bi-directional decodable Reed-Solomon codes
JPH07202718A (ja) 誤り訂正符号の復号器及び符号器
US20030131308A1 (en) Method and apparatus for solving key equation polynomials in decoding error correction codes
Truong et al. A new decoding algorithm for correcting both erasures and errors of Reed-Solomon codes
US7693927B2 (en) Data processing system and method
US20040030984A1 (en) Method for decoding a block of symbols and device therefor
Yan et al. A Low-Complexity Error-and-Erasure Decoding Algorithm for t= 2 RS Codes
KR20190021159A (ko) 그뢰브너 기저를 이용한 일반화된 리드-솔로몬 코드의 고속 체이스 디코딩방법
US20030009723A1 (en) Simplified reed-solomon decoding circuit and method of decoding reed-solomon codes
US9032277B1 (en) Parallel low and asymmetric rate Reed Solomon coding
Prashanthi et al. An advanced low complexity double error correction of an BCH decoder
JP3860023B2 (ja) 復号回路および復号方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20200427

Address after: Ford street, Grand Cayman, Cayman Islands

Applicant after: Kaiwei international Co.

Address before: Hamilton, Bermuda

Applicant before: Marvell International Ltd.

Effective date of registration: 20200427

Address after: Singapore City

Applicant after: Marvell Asia Pte. Ltd.

Address before: Ford street, Grand Cayman, Cayman Islands

Applicant before: Kaiwei international Co.

Effective date of registration: 20200427

Address after: Hamilton, Bermuda

Applicant after: Marvell International Ltd.

Address before: Babado J San Mega Le

Applicant before: MARVELL WORLD TRADE Ltd.

GR01 Patent grant
GR01 Patent grant