WO2012136047A1 - 超强前向纠错的硬件译码方法及装置 - Google Patents

超强前向纠错的硬件译码方法及装置 Download PDF

Info

Publication number
WO2012136047A1
WO2012136047A1 PCT/CN2011/079451 CN2011079451W WO2012136047A1 WO 2012136047 A1 WO2012136047 A1 WO 2012136047A1 CN 2011079451 W CN2011079451 W CN 2011079451W WO 2012136047 A1 WO2012136047 A1 WO 2012136047A1
Authority
WO
WIPO (PCT)
Prior art keywords
code
error
bch
polynomial
error correction
Prior art date
Application number
PCT/CN2011/079451
Other languages
English (en)
French (fr)
Inventor
董航
朱齐雄
Original Assignee
烽火通信科技股份有限公司
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 烽火通信科技股份有限公司 filed Critical 烽火通信科技股份有限公司
Publication of WO2012136047A1 publication Critical patent/WO2012136047A1/zh

Links

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/152Bose-Chaudhuri-Hocquenghem [BCH] 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/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/29Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2906Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block 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/29Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2906Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
    • H03M13/2909Product 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/29Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2906Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
    • H03M13/2927Decoding strategies
    • 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/29Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2906Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
    • H03M13/2927Decoding strategies
    • H03M13/293Decoding strategies with erasure setting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • H04L1/0052Realisations of complexity reduction techniques, e.g. pipelining or use of look-up tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes

Description

说 明 书
超强前向纠错的硬件译码方法及装置 技术领域
本发明涉及光通信系统中的信道纠错编译码领域,特别是涉及一 种超强前向纠错的硬件译码方法及装置。 背景技术
随着 Internet的普及与迅速发展, 通信业务量大增, 因而需要采 用 WDM (Wavelength Division Multiplexing, 波分复用 )或者 DWDM (Dense Wavelength Division Multiplexing, 密集波分复用) 技术, 使 线路速率提高到 10Gb/s、 40Gb/s甚至更高。
在长距离、 超长距离或者大容量 DWDM光纤通信系统中, 由于 光纤的色散和长距离传输会引起信号衰减、 信道噪声, 而信号衰减、 信道噪声、 以及一根光纤中多个波长之间的干扰, 均会使系统的性能 大大下降, 因此, 在光纤干线上, 大约每隔 80公里就必须进行一次 光中继, 大约每隔 400公里就必须进行一次电信号的再生, 从而使建 网和运营的成本剧增。
由于入纤光功率每增加 3dB, 可以将传输距离延长一倍, 因此, 为了使传输距离更长, 同时又保持足够的 OSNR (Optical Signal Noise Ratio, 光信噪比), 可以增加入纤光功率, 然而入纤光功率的一味提 高, 会引发较大的光纤非线性效应, 反而不利于实现超长距离传输。
FEC (Forward Error Correction, 前向纠错)技术是解决上述问题 的关键技术之一。 FEC技术通过在传输码列中加入冗余纠错码,可以 降低接收端的 OSNR容限, 减小所需的发射功率。 采用 FEC所获得 的译码增益, 大大降低了误码率, 有效地提高了通信的可靠性, 从而 达到了改善系统性能、 降低系统成本的目的, 因此随着未来光纤通信 速率的越来越高, FEC技术将是这一领域的核心技术之一,有较强的 技术生命周期, 而且, 目前在无线通信、 数据接入通信等领域中, 例 如 GPON (Gigabit-Capable PON, G比特以太网无源光网络) / EPON ( Ethernet Passive Optical Network, 以太网无源光网络), FEC技术也 得到了广泛的应用。
SFEC (Super Forward Error Correction, 超强前向纠错) 是针对 G.709和 G.975所规定的标准 FEC而言的,它对标准前向纠错的 Reed -Solomon (255, 239) 算法做了改进, 采用了具有更加强大纠错能 力的前向纠错编解码方式, 所获得的编码增益更高, 能够大幅度降低 系统对 OSNR的要求。
由于现在没有统一的标准,各个厂家采用超强前向纠错的算法各 不相同。从现状看,实现超强前向纠错的方法可以大致分为以下两种: 一是完全突破了 G.709所规定的帧结构, 采用两级矩阵式编码, 如 RS-RS、 RS-BCH, BCH-BCH编码等;
二是保留 G.709所规定的帧结构, 只是将帧结构中冗码部分的计 算由 Reed— Solomon (255, 239) 算法换为其他算法。
前一种方法可以获得很高的净编码增益 (7〜8dB ), 但是付出的 带宽代价也很高 (15%〜25% ), 现在已经开始实用。 后一种方法保 持 7%的冗码比例不变, 通过算法的优化来获得比标准前向纠错更优 的编码增益。 相对于前一种方法, 后一种方法获得的编码增益略低。
由于超强前向纠错涉及到比较复杂的交织、解交织以及编解码算 法, 再加上目前超强前向纠错技术处在非标准化和非透明化的状态 下, 因此, 如何用高效的硬件电路来正确实现整个算法, 并获得较高 的硬件时序速度, 是实现超强前向纠错的一个难点。 发明内容
本发明的目的是为了克服上述背景技术的不足,提供一种超强前 向纠错的硬件译码方法及装置,能够用较小规模的硬件电路来正确实 现整个算法, 并提高超强前向纠错的硬件实现时序速度。
本发明提供的超强前向纠错的硬件译码方法,包括以下步骤: A、 首先对接收信道输出的数据采用 BCH (2040, 1952) 码计算其伴随 式,然后对计算所得 BCH码伴随式结果进行错误位置多项式的求解, 再根据求得的错误位置多项式进行钱搜索, 确定 BCH码字中的码元 错误位置并进行纠错, 完成 BCH码字中逐个码元的译码处理; B、 每处理完一个内码 BCH码元的译码后, 先进行交织处理, 再对译码 结果进行 RS码字伴随式的计算, 然后对计算所得 RS码字伴随式结 果进行错误位置多项式和错误值多项式的求解,根据求得的错误位置 多项式进行钱搜索, 确定 RS码字中的码元错误位置, 根据求得的错 误值多项式计算差错值并进行纠错, 完成 RS码字中逐个码元的译码 处理;最后将其输出数据进行解交织,得到超强前向纠错的译码结果。
在上述技术方案中, 步骤 A中每路 BCH码的伴随式有 16个。 在上述技术方案中, 步骤 A中所述对计算所得 BCH码伴随式结 果进行错误位置多项式的求解之前包括以下步骤: 将计算所得 BCH 码伴随式结果发送到 BCH码 BM算法单元。
在上述技术方案中, 步骤 A中所述对计算所得 BCH码伴随式结 果进行错误位置多项式的求解之后包括以下步骤:将求解结果发送到 BCH码钱搜索和纠错单元进行处理。
在上述技术方案中, 步骤 B中每路 RS码的伴随式有 16个。 在上述技术方案中,步骤 B中所述对计算所得 RS码字伴随式结 果进行错误位置多项式和错误值多项式的求解之前包括以下步骤:将 计算所得 RS码伴随式结果发送到 RS码 BM算法单元。
在上述技术方案中,步骤 B中所述对计算所得 RS码字伴随式结 果进行错误位置多项式和错误值多项式的求解之后包括以下步骤:将 求解结果发送到 RS码钱搜索和纠错单元进行处理。
本发明提供的超强前向纠错的硬件译码装置, 它包括:
BCH码伴随式计算单元, 用于完成 BCH码的 16个伴随式的计 算, 并将求得的 BCH码伴随式结果保存待用;
BCH码 BM算法单元, 用于根据已得到的 BCH码伴随式结果, 求解 BCH码错误位置多项式的表达式,进而得到 BCH码错误位置多 项式所有系数的值, 多个 BCH码共用一个 BCH码 BM算法单元;
BCH码钱搜索和纠错单元,用于求解所述 BCH码 BM算法单元 发送来的错误位置多项式的根, 定位出每个 BCH码字中的错误码元 位置, 并完成 BCH码字中的错误码元的纠错;
BCH码复用存储单元, 用于对多路 BCH码进行存储、 处理, 以 及对 BCH码伴随式分量和错误位置多项式进行调度;
BCH码总线变换单元, 用于完成总线从 BCH码型到 RS码型的 变换, 以满足后续 RS码在 GF域上的要求;
RS码伴随式计算单元, 用于完成 RS码的 16个伴随式的计算, 并将求得的 RS码伴随式结果保存待用;
RS码 BM算法单元, 用于根据已得到的 RS码伴随式结果, 计 算 RS码错误位置多项式和 RS码错误值多项式的表达式, 进而得到 RS码错误位置多项式的所有系数及 RS码错误值多项式的所有系数, 多个 RS码字共用一个 RS码 BM算法单元;
RS码钱搜索和纠错单元, 用于通过错误位置多项式和错误值多 项式分别确定 RS码字中的错误位置和错误值,并完成 RS码元纠错;
RS码复用存储单元, 用于对多路 RS码字进行存储、 处理, 以 及对 RS码伴随式分量、 错误位置多项式和错误值多项式进行调度;
RS码总线变换单元, 用于完成入口多路 RS码字的并行译码输 出到出口位宽的变换, 并发送帧的起始位置指示信号。
在上述技术方案中, 它还包括数据缓冲单元, 所述数据缓冲单元 用于缓存数据, 并产生延迟一定拍数的帧起始脉冲信号。
在上述技术方案中, 它还包括译码性能监控单元, 所述译码性能 监控单元用于监控 RS码和 BCH码的性能。
与现有技术相比, 本发明的优点如下:
本发明中采用多个 BCH码字共用一个 BCH码 BM算法单元, 以及多个 RS码字共用一个 RS码 BM算法单元, 以尽可能减小硬件 电路的设计规模, 使得本发明的硬件电路实现规模相对较小, 并能获 得较高的硬件时序速度。 附图说明
图 1为本发明实施例中的方法流程图;
图 2为本发明实施例中的装置结构示意图;
图 3为本发明实施例中 BCH码 BM算法的电路图;
图 4为本发明实施例中 BCH码钱搜索与纠错单元的结构示意图; 图 5 为本发明实施例中 RS码 BM算法的流程图;
图 6为本发明实施例中 RS码钱搜索与纠错单元的结构示意图。 具体实施方式
下面结合附图及实施例对本发明作进一步的详细描述。
参见图 1所示,本发明实施例提供的超强前向纠错的硬件译码方 法, 包括以下步骤: 首先对接收信道输出的数据采用 BCH码计算其 伴随式, 每路 BCH码的伴随式有 16个, 然后将计算所得的 BCH码 伴随式结果发送到 BCH码 BM算法单元, 进行错误位置多项式的求 解, 接着将求解结果送入 BCH码钱搜索和纠错单元进行处理, 根据 求得的错误位置多项式进行钱搜索, 确定 BCH码字中具体的码元错 误位置并进行纠错, 从而完成 BCH码字的逐个码元的译码处理; 每 处理完一个内码 BCH码元的译码后, 先通过交织处理, 再将其译码 结果再进行 RS码字伴随式的计算, 每路 RS码的伴随式有 16个, 然 后将计算所得到的 RS码伴随式结果发送到 RS码 BM算法单元进行 计算, 求解该 RS码字的错误位置多项式和错误值多项式, 接着将求 解结果送入 RS码钱搜索和纠错单元进行处理, 根据求得的错误位置 多项式进行钱搜索, 确定 RS码字中具体的码元错误位置, 根据错误 值多项式计算差错值并进行纠错, 从而完成 RS码字的逐个码元的译 码处理, 最后将其输出数据进行解交织, 即得到最终的超强前向纠错 译码结果。
参见图 2所示,本发明实施例提供的超强前向纠错的硬件译码装 置, 它包括:
数据缓冲单元, 用于缓存数据, 并产生延迟一定拍数的帧起始脉 冲信号;
BCH码伴随式计算单元, 用于完成 BCH码的 16个伴随式的计 算, 并将求得的 BCH码伴随式结果保存待用;
BCH码 BM算法单元, 用于根据已得到的 BCH码伴随式结果, 求解 BCH码错误位置多项式的表达式,进而得到 BCH码错误位置多 项式所有系数的值, 多个 BCH码共用一个 BCH码 BM算法单元;
BCH码钱搜索和纠错单元,用于求解所述 BCH码 BM算法单元 发送来的错误位置多项式的根, 定位出每个 BCH码字中的错误码元 位置, 并完成 BCH码字中的错误码元的纠错;
BCH码复用存储单元, 用于对多路 BCH码进行存储、 处理, 以 及对 BCH码伴随式分量和错误位置多项式进行调度;
BCH码总线变换单元, 用于完成总线从 BCH码型到 RS码型的 变换, 以满足后续 RS码在 GF域上的要求;
RS码伴随式计算单元, 用于完成 RS码的 16个伴随式的计算, 并将求得的 RS码伴随式结果保存待用;
RS码 BM算法单元, 用于根据已得到的 RS码伴随式结果, 计 算 RS码错误位置多项式和 RS码错误值多项式的表达式, 进而得到 RS码错误位置多项式的所有系数及 RS码错误值多项式的所有系数, 多个 RS码字共用一个 RS码 BM算法单元;
RS码钱搜索和纠错单元, 用于通过错误位置多项式和错误值多 项式分别确定 RS码字中的错误位置和错误值,并完成 RS码元纠错;
RS码复用存储单元, 用于对多路 RS码字进行存储、 处理, 以 及对 RS码伴随式分量、 错误位置多项式和错误值多项式进行调度;
RS码总线变换单元, 用于完成入口多路 RS码字的并行译码输 出到出口位宽的变换, 并发送帧的起始位置指示信号;
译码性能监控单元, 用于监控 RS码和 BCH码的性能。
下面详细阐述本发明实施例的方法步骤:
步骤 10: 计算接收信道输出数据的 BCH码的伴随式。
因为输入位宽为 64, 而每个 BCH码中都包含一个 BCH码伴随 式计算单元,所以 64个 BCH码中包含有 64个这样的 BCH码伴随式 计算单元, 每个 BCH码伴随式计算单元采用脉动 (Systolic) 阵列结 构实现 BCH码伴随式的求解。 步骤 10具体包括下述子步骤 101和 102:
子步骤 101: 计算出奇数序号的伴随式, 具体过程与现有技术相 同, 此处不赘述;
子步骤 102: 由于二进制 BCH码的伴随式具有的 S2 =(S )2的 性质, 偶数序号的伴随式都可以根据此式来计算, 而且由上面的关系 可以进一步推导出: S :^)2 , S^CS,)4 , S6 = (S3)2, S^CS,)8,
S10 = (S5)2, S12=(S3)4, S14 = (S7)2, SLU 6, 采用 GF (2" 域(Galois Field, 伽罗华域) 上平方、 4次方、 8次方和 16次方运算 电路, 即可用奇数序号的伴随式, 计算出所有的偶数序号的伴随式。
步骤 20: 将 64位宽的输入数据放入缓存中, 待 BCH码的伴随 式、 BM算法求解完毕进行钱搜索纠错时, 再从该缓存中同步读出数 据, 送入 BCH码钱搜索和纠错单元中, 进行同步纠错处理。
步骤 30: 将步骤 10中得到的 64路 BCH码伴随式, 分别用两个 BCH码复用存储单元进行存储和调度, 每个 BCH码复用存储单元存 储 32路 BCH码伴随式数据。
步骤 40: 根据步骤 30输出的 BCH码伴随式的值, 求解 BCH码 错误位置多项式的表达式, 从而得到错误位置多项式所有系数的值。
本发明实施例中, 64路 BCH码伴随式中的每 32路复用一个 BM 算法, 因此只需要两套 BM算法, 这样就可以节省电路工作中消耗的 功率和电路规模。 在本步骤中, 每计算出一个 BCH码错误位置多项 式以后, 就向步骤 30给出一个反馈信号, 表示本次 BM算法计算完 毕, 可以传递下一个 BCH码伴随式。 具体硬件实现电路参见图 3所 示。同时,将计算得到的 BCH码错误位置多项式的值输出到 BCH码 复用存储单元中进行存储。
步骤 50: 将步骤 40得到的 BCH码错误位置多项式依次存储, 当所有 32路 BCH码字的 BM算法都计算完毕时, 将 32路 BCH码 错误位置多项式的值同时输出, 并产生一个使能信号,表示可以进行 下一步的 BCH码钱搜索和纠错功能。
步骤 60: 根据步骤 50送出的使能信号和错误位置多项式的根, 以及步骤 20输出的缓冲数据, 完成 BCH码字中的错误码元的纠错。
本发明实施例中有 64个 BCH码钱搜索和纠错单元, 以实现 64 个 BCH码并行纠错处理。 参见图 4所示, σ。, σι, ..., 是错误位置 多项式的系数, MUX是二选一的选择器, a是 BCH码的本元域元素, 每个时钟周期能够纠正一个错, 完成纠错所需的时钟周期与码长相 等。图 4中 i的变化范围为: l<i<2047 ,分别对应于 BCH (2047, 1959 ) 码字的的第 1 号码元 r2046 (i=l ) 至 2047号码元 r。 (i = 2047), BCH 码码元编号顺序为:码字多项式中的最高系数 2046算作第 1号码元, 码字多项式中的最低系数 0算作第 2047号码元, 当电路运算的结果 σ(β') = σ。时, 即表示 是错误位置多项式的根, 并且错误位置发生 在 BCH码字的第 i号码元;此时从数据缓冲单元中读出该 BCH码字 的码元, 进行反相后送出, 即完成码元错误的纠正; 如果运算结果不 满足 σ(β') = σ。, 则表明该码元位未发生错误, 将数据缓冲单元中读 出的 BCH码字的码元直接送出即可。
步骤 70: 将经过 BCH译码后的数据, 从 64位宽总线变换到 10 位宽, 以满足后续的 RS码的 GF域上的要求, 具体过程与现有技术 相同, 此处不赘述。
步骤 80: 对于步骤 70输出的 16个 10位宽 RS码, 通过 16个相 类似的计算电路分别计算其伴随式分量, 并同时输出。
步骤 90: 将步骤 80中得到的 16路 RS码伴随式, 分别用两个 RS码复用存储单元进行存储和调度,每个 RS码复用存储单元存储 8 路数据。
步骤 100 : 求解错误位置多项式 的所有系数的值, 具体实现 过程参见图 5所示。错误值多项式 的计算方法和错误位置多项式 的计算方法完全一样, 它们可以共用同一套控制电路。根据步骤 90输出的 RS码伴随式的值, 求解 RS码错误位置多项式和错误值多 项式的表达式,从而得到错误位置多项式和错误值多项式所有系数的 值。此处采用了复用的形式, 16路 RS码的伴随式中的每 8路复用一 个 ΒΜ算法, 因此本发明实施例中只需要两套 RS码 ΒΜ算法, 这样 可以减小硬件电路的实现规模, 节省电路工作中消耗的功率。 由于采 用了复用的结构, 因此在本步骤中, 每计算出一个 RS码错误位置多 项式以后就向步骤 90给出一个反馈信号, 表示本次 ΒΜ算法计算完 毕, 可以传递下一个 RS码伴随式。
步骤 110 : 通过步骤 100得到的错误位置多项式 和错误值多 项式 ω( ), 分别确定 RS码字中的错误位置和错误值, 并完成 RS码 元纠错。
参见图 6 所示, 电路的上半部分为差错值多项式^的计算电
X
路, ω寄存器的初始值为 (注意: ω。为 ο)。 接收
RS码字矢量 r1Q22, 7个常系数乘法器进行乘法运算, 且将下列值存入 相应的 RS码复用存储单元: 《2", ω3 2 , ω4 ω5 4 , ω6 5 , ωΊ 6 , ω& Ί,累力口器 Α输出计算结果,记为 numerator: ω1 + ω2 + ω3 2 + ω4 3 + ω5α4 + ω6α5 + ωΊα6 + ω%αΊ。 下半部分为 Chien搜索电路和求导电 路。 σ寄存器初始值为 σ0、 ι σ2、 、 σ8。接收 RS石马字矢量 r1022正 要从缓冲器中读出之前, 8个常系数乘法器进行乘法运算, 且将下列 值存进寄存器: σγα , σ2 2 , σ,οτ3 , σ4 4 , σ,α5 , σ6α6 , σΊ Ί , σ„α% , 并将这些值分奇偶送入累加器 B和 C, 然后将累加器 B和 C的结果 再相加,其结果为描述方便记为 sum。同时,将奇数项求和结果求逆, 记为 inVersi0n。 门的控制信号是: sum 和不可纠判断输出信号 rs_word_uncorr。 当 sum = 0, 且不可 4信号 rs_word_uncorr无效 (在 纠错能力内) 时 (rs_word_uncorr=0), 门将 inversion 输出; 否则, 门输出 0。
与 BCH码的 Chien搜索电路相同, 本发明实施例中的 RS ( 781, 765 ) 码和 RS (778, 762) 码是 RS ( 1023, 1007 ) 码的截短码, 因 此在得到错误位置多项式 σ(χ)后, 只需从 i等于 243开始检测到 i等 于 1023为止, i等于 243就对应于输入 RS (781, 765 ) 码字的第一 个符号码元 r78。, 即 RS (781, 765 ) 码字第 1号码元, i等于 1023对 应于输入 RS (781, 765 )码字的最后一个符号码元 r。, 即 RS码字第 781 号符号码元。 本发明实施例中, 每次在进行 RS (781, 765 ) 码 字钱搜索开始前, 将图 6中的寄存器 σι、 σ2 σ8的值初始化为 以下的 8个值, 并计算该 8个值的异或求和 σ(α'), 作为第一次判断 错误位置多项式的根: 门的输出信号和 numerator相乘, 得到差错值 E1Q22, 把差错值与 缓冲器输出值 r1Q22相加, 完成对 /。22的纠错。 r1Q22译码完成后, 在将寄 存器的内容作常系数乘法,并重复进行上述的相加运算和检验,对 21 进行纠错 ......直到整个码字输入完毕,完成一个 RS码字的纠错过程。
用 RS码 Chien搜索电路对错误位置多项式的根进行搜索,记录下 根的个数。 当根的个数和错误位置多项式的次数不相等时, 判断为产 生了不可纠错误。此时,一个 RS码字中至少有 9个符号产生了错误, 超过了纠错码的译码门限, 在这种情况下, 关断前向纠错功能。 步骤 120: 完成入口 16路 RS并行译码输出 160比特流到出口
64 比特流的变换, 并送出帧的起始位置指示信号, 具体过程与现有 技术相同, 此处不赘述。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不 脱离本发明的精神和范围。这样, 倘若本发明的这些修改和变型属于 本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些 改动和变型在内。
本说明书中未作详细描述的内容属于本领域专业技术人员公知 的现有技术。

Claims

权 利 要 求 书
1、 一种超强前向纠错的硬件译码方法, 其特征在于包括以下步 骤:
A、 首先对接收信道输出的数据采用 BCH (2040, 1952)码计算 其伴随式, 然后对计算所得 BCH码伴随式结果进行错误位置多项式 的求解, 再根据求得的错误位置多项式进行钱搜索, 确定 BCH码字 中的码元错误位置并进行纠错, 完成 BCH码字中逐个码元的译码处 理;
B、 每处理完一个内码 BCH码元的译码后, 先进行交织处理, 再对译码结果进行 RS码字伴随式的计算, 然后对计算所得 RS码字 伴随式结果进行错误位置多项式和错误值多项式的求解,根据求得的 错误位置多项式进行钱搜索, 确定 RS码字中的码元错误位置, 根据 求得的错误值多项式计算差错值并进行纠错, 完成 RS码字中逐个码 元的译码处理; 最后将其输出数据进行解交织, 得到超强前向纠错的 译码结果。
2、 如权利要求 1所述的超强前向纠错的硬件译码方法, 其特征 在于: 步骤 A中每路 BCH码的伴随式有 16个。
3、 如权利要求 1所述的超强前向纠错的硬件译码方法, 其特征 在于: 步骤 A中所述对计算所得 BCH码伴随式结果进行错误位置多 项式的求解之前包括以下步骤: 将计算所得 BCH码伴随式结果发送 到 BCH码 BM算法单元。
4、如权利要求 1或 2或 3所述的超强前向纠错的硬件译码方法, 其特征在于: 步骤 A中所述对计算所得 BCH码伴随式结果进行错误 位置多项式的求解之后包括以下步骤: 将求解结果发送到 BCH码钱 搜索和纠错单元进行处理。
5、 如权利要求 1所述的超强前向纠错的硬件译码方法, 其特征 在于: 步骤 B中每路 RS码的伴随式有 16个。
6、 如权利要求 1所述的超强前向纠错的硬件译码方法, 其特征 在于:步骤 B中所述对计算所得 RS码字伴随式结果进行错误位置多 项式和错误值多项式的求解之前包括以下步骤: 将计算所得 RS码伴 随式结果发送到 RS码 BM算法单元。
7、如权利要求 1或 5或 6所述的超强前向纠错的硬件译码方法, 其特征在于:步骤 B中所述对计算所得 RS码字伴随式结果进行错误 位置多项式和错误值多项式的求解之后包括以下步骤:将求解结果发 送到 RS码钱搜索和纠错单元进行处理。
8、 一种超强前向纠错的硬件译码装置, 其特征在于它包括: BCH码伴随式计算单元, 用于完成 BCH码的 16个伴随式的计 算, 并将求得的 BCH码伴随式结果保存待用;
BCH码 BM算法单元, 用于根据已得到的 BCH码伴随式结果, 求解 BCH码错误位置多项式的表达式,进而得到 BCH码错误位置多 项式所有系数的值, 多个 BCH码共用一个 BCH码 BM算法单元;
BCH码钱搜索和纠错单元,用于求解所述 BCH码 BM算法单元 发送来的错误位置多项式的根, 定位出每个 BCH码字中的错误码元 位置, 并完成 BCH码字中的错误码元的纠错;
BCH码复用存储单元, 用于对多路 BCH码进行存储、 处理, 以 及对 BCH码伴随式分量和错误位置多项式进行调度;
BCH码总线变换单元, 用于完成总线从 BCH码型到 RS码型的 变换, 以满足后续 RS码在 GF域上的要求;
RS码伴随式计算单元, 用于完成 RS码的 16个伴随式的计算, 并将求得的 RS码伴随式结果保存待用;
RS码 BM算法单元, 用于根据已得到的 RS码伴随式结果, 计 算 RS码错误位置多项式和 RS码错误值多项式的表达式, 进而得到 RS码错误位置多项式的所有系数及 RS码错误值多项式的所有系数, 多个 RS码字共用一个 RS码 BM算法单元;
RS码钱搜索和纠错单元, 用于通过错误位置多项式和错误值多 项式分别确定 RS码字中的错误位置和错误值,并完成 RS码元纠错;
RS码复用存储单元, 用于对多路 RS码字进行存储、 处理, 以 及对 RS码伴随式分量、 错误位置多项式和错误值多项式进行调度;
RS码总线变换单元, 用于完成入口多路 RS码字的并行译码输 出到出口位宽的变换, 并发送帧的起始位置指示信号。
9、 如权利要求 8所述的超强前向纠错的硬件译码装置, 其特征 在于: 它还包括数据缓冲单元, 所述数据缓冲单元用于缓存数据, 并 产生延迟一定拍数的帧起始脉冲信号。
10、如权利要求 8或 9所述的超强前向纠错的硬件译码装置, 其 特征在于: 它还包括译码性能监控单元, 所述译码性能监控单元用于 监控 RS码和 BCH码的性能。
PCT/CN2011/079451 2011-04-06 2011-09-08 超强前向纠错的硬件译码方法及装置 WO2012136047A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201110084573.3A CN102170327B (zh) 2011-04-06 2011-04-06 超强前向纠错的硬件译码方法及装置
CN201110084573.3 2011-04-06

Publications (1)

Publication Number Publication Date
WO2012136047A1 true WO2012136047A1 (zh) 2012-10-11

Family

ID=44491319

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2011/079451 WO2012136047A1 (zh) 2011-04-06 2011-09-08 超强前向纠错的硬件译码方法及装置

Country Status (2)

Country Link
CN (1) CN102170327B (zh)
WO (1) WO2012136047A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111130568A (zh) * 2018-10-31 2020-05-08 中国科学院微电子研究所 一种bch译码器及其译码方法、ecc系统

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102170327B (zh) * 2011-04-06 2014-01-22 烽火通信科技股份有限公司 超强前向纠错的硬件译码方法及装置
CN103560797B (zh) * 2013-10-18 2016-05-25 烽火通信科技股份有限公司 超强前向纠错五次迭代译码的方法及装置
CN103780352B (zh) * 2014-01-26 2017-02-01 上海网达软件股份有限公司 Rsfec解码算法的解码性能优化方法
CN106549677B (zh) * 2016-08-28 2019-10-25 航天恒星科技有限公司 高速并行bch码译码方法及装置
CN112953570B (zh) * 2021-02-04 2022-08-19 山东云海国创云计算装备产业创新中心有限公司 一种纠错解码方法、装置、设备及计算机可读存储介质
WO2022267031A1 (zh) * 2021-06-25 2022-12-29 华为技术有限公司 一种rs码译码方法及装置
CN114710204B (zh) * 2022-03-24 2023-07-07 中山大学 一种避免偏振衰落的单偏振相干检测系统及方法
CN116470990B (zh) * 2023-04-26 2023-10-03 苏州联讯仪器股份有限公司 一种错误码元标志数量确定方法、装置、设备及介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1816969A (zh) * 2003-04-30 2006-08-09 马科尼通讯股份有限公司 前向纠错编码
CN101459431A (zh) * 2008-12-30 2009-06-17 北京大学 一种信道纠错码bch码和rs码的译码方法
CN101667887A (zh) * 2009-09-02 2010-03-10 中兴通讯股份有限公司 编码方法及其装置、解码方法及其装置
US20100275104A1 (en) * 2009-04-28 2010-10-28 Mitsubishi Electric Corporation Error correcting device and error correcting method
CN102170327A (zh) * 2011-04-06 2011-08-31 烽火通信科技股份有限公司 超强前向纠错的硬件译码方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101686104B (zh) * 2008-09-22 2013-11-06 华为技术有限公司 一种前向纠错的编解码的方法、装置和系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1816969A (zh) * 2003-04-30 2006-08-09 马科尼通讯股份有限公司 前向纠错编码
CN101459431A (zh) * 2008-12-30 2009-06-17 北京大学 一种信道纠错码bch码和rs码的译码方法
US20100275104A1 (en) * 2009-04-28 2010-10-28 Mitsubishi Electric Corporation Error correcting device and error correcting method
CN101667887A (zh) * 2009-09-02 2010-03-10 中兴通讯股份有限公司 编码方法及其装置、解码方法及其装置
CN102170327A (zh) * 2011-04-06 2011-08-31 烽火通信科技股份有限公司 超强前向纠错的硬件译码方法及装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111130568A (zh) * 2018-10-31 2020-05-08 中国科学院微电子研究所 一种bch译码器及其译码方法、ecc系统
CN111130568B (zh) * 2018-10-31 2023-05-23 中国科学院微电子研究所 一种bch译码器及其译码方法、ecc系统

Also Published As

Publication number Publication date
CN102170327A (zh) 2011-08-31
CN102170327B (zh) 2014-01-22

Similar Documents

Publication Publication Date Title
WO2012136047A1 (zh) 超强前向纠错的硬件译码方法及装置
Song et al. 10-and 40-Gb/s forward error correction devices for optical communications
Lee High-speed VLSI architecture for parallel Reed-Solomon decoder
CN100589328C (zh) 一种Reed-Solomon码解码器
WO2007055150A1 (ja) 通信装置、送信機、受信機および誤り訂正光通信システム
US7246294B2 (en) Method for iterative hard-decision forward error correction decoding
US6516436B1 (en) Error control coding for transmission equipment protection
US8522116B2 (en) Systems and methods for performing forward error correction
CA3193950C (en) Forward error correction with compression coding
WO2012174933A1 (zh) Rs编码器的编码方法及rs编码器
MXPA04007077A (es) Bloques dobles de busqueda chien para un decodificador de correccion de error.
EP1179906A2 (en) Optical transmission of error control data
US20230179896A1 (en) Downstream Synchronization State Machine for Optical Line Terminal (OLT)-Configurable Bit Interleaving in High-Speed Passive Optical Networks (PONs)
Miyata et al. Proposal for frame structure of optical channel transport unit employing LDPC codes for 100 Gb/s FEC
Lee et al. 100GB/S two-iteration concatenated BCH decoder architecture for optical communications
US11973517B2 (en) Reconfigurable FEC
US9515683B2 (en) Forward error correction architecture and implementation for power/space efficient transmission systems
Yuan et al. A novel block turbo code for high-speed long-haul DWDM optical communication systems
Raahemi Error correction on 64/66 bit encoded links
CN111277830B (zh) 一种编码方法、解码方法及装置
Le Bidan et al. Reed-Solomon turbo product codes for optical communications: From code optimization to decoder design
Hu et al. 10Gb/s RS-BCH concatenated codec with parallel strategies for fiber communications
Andersen et al. A configurable FPGA FEC unit for Tb/s optical communication
KR100670836B1 (ko) 시분할 다중 전송시스템에서 가변길이 프레임 전송을 위한순방향에러정정 프레임 구조
Wu et al. Scalable block-wise product BCH codes

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11862993

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11862993

Country of ref document: EP

Kind code of ref document: A1