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

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

Info

Publication number
CN102170327B
CN102170327B CN201110084573.3A CN201110084573A CN102170327B CN 102170327 B CN102170327 B CN 102170327B CN 201110084573 A CN201110084573 A CN 201110084573A CN 102170327 B CN102170327 B CN 102170327B
Authority
CN
China
Prior art keywords
code
bch
syndrome
error correction
bch code
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
CN201110084573.3A
Other languages
English (en)
Other versions
CN102170327A (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.)
Wuhan flying Microelectronics Technology Co., Ltd.
Fiberhome Telecommunication Technologies Co Ltd
Original Assignee
Fiberhome Telecommunication Technologies 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 Fiberhome Telecommunication Technologies Co Ltd filed Critical Fiberhome Telecommunication Technologies Co Ltd
Priority to CN201110084573.3A priority Critical patent/CN102170327B/zh
Publication of CN102170327A publication Critical patent/CN102170327A/zh
Priority to PCT/CN2011/079451 priority patent/WO2012136047A1/zh
Application granted granted Critical
Publication of CN102170327B publication Critical patent/CN102170327B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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

Abstract

本发明公开了一种超强前向纠错的硬件译码方法及装置,方法包括步骤:对接收信道输出数据采用BCH(2040,1952)码计算伴随式,求解其错误位置多项式,进行钱搜索,确定BCH码字中码元错误位置并纠错,完成BCH码字中逐个码元的译码处理;每处理完一个内码BCH码元的译码后进行交织处理,计算译码结果的RS码字伴随式,求解其错误位置多项式和错误值多项式,根据错误位置多项式进行钱搜索,确定RS码字中的码元错误位置,根据错误值多项式计算差错值并纠错,完成RS码字中逐个码元的译码;对输出数据进行解交织,得到SFEC译码结果。本发明能用较小规模的硬件电路正确实现整个算法,提高SFEC的硬件实现时序速度。

Description

超强前向纠错的硬件译码方法及装置
技术领域
本发明涉及光通信系统中的信道纠错编译码领域,特别是涉及一种超强前向纠错的硬件译码方法及装置。
背景技术
随着Internet的普及与迅速发展,通信业务量大增,因而需要采用WDM(Wavelength Division Multiplexing,波分复用)或者DWDM(Dense Wavelength Division Multiplexing,密集波分复用)技术,使线路速率提高到10Gb/s、40Gb/s甚至更高。
在长距离、超长距离或者大容量DWDM光纤通信系统中,由于光纤的色散和长距离传输会引起信号衰减、信道噪声,而信号衰减、信道噪声、以及一根光纤中多个波长之间的干扰,均会使系统的性能大大下降,因此,在光纤干线上,大约每隔80公里就必须进行一次光中继,大约每隔400公里就必须进行一次电信号的再生,从而使建网和运营的成本剧增。
由于入纤光功率每增加3dB,可以将传输距离延长一倍,因此,为了使传输距离更长,同时又保持足够的OSNR(Optical Signal NoiseRatio,光信噪比),可以增加入纤光功率,然而入纤光功率的一味提高,会引发较大的光纤非线性效应,反而不利于实现超长距离传输。
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码的伴随式具有的S2j=(Sj)2的性质,偶数序号的伴随式都可以根据此式来计算,而且由上面的关系可以进一步推导出:S2=(S1)2,S4=(S1)4,S6=(S3)2,S8=(S1)8,S10=(S5)2,S12=(S3)4,S14=(S7)2,S16=(S1)16,采用GF(211)域(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所示,σ0,σ1,…,σt是错误位置多项式的系数,MUX是二选一的选择器,a是BCH码的本元域元素,每个时钟周期能够纠正一个错,完成纠错所需的时钟周期与码长相等。图4中i的变化范围为:1≤i≤2047,分别对应于BCH(2047,1959)码字的的第1号码元r2046(i=1)至2047号码元r0(i=2047),BCH码码元编号顺序为:码字多项式中的最高系数2046算作第1号码元,码字多项式中的最低系数0算作第2047号码元,当电路运算的结果σ(ai)=σ0时,即表示ai是错误位置多项式的根,并且错误位置发生在BCH码字的第i号码元;此时从数据缓冲单元中读出该BCH码字的码元,进行反相后送出,即完成码元错误的纠正;如果运算结果不满足σ(ai)=σ0,则表明该码元位未发生错误,将数据缓冲单元中读出的BCH码字的码元直接送出即可。
步骤70:将经过BCH译码后的数据,从64位宽总线变换到10位宽,以满足后续的RS码的GF域上的要求,具体过程与现有技术相同,此处不赘述。
步骤80:对于步骤70输出的16个10位宽RS码,通过16个相类似的计算电路分别计算其伴随式分量,并同时输出。
步骤90:将步骤80中得到的16路RS码伴随式,分别用两个RS码复用存储单元进行存储和调度,每个RS码复用存储单元存储8路数据。
步骤100:求解错误位置多项式σ(x)的所有系数的值,具体实现过程参见图5所示。错误值多项式ω(x)的计算方法和错误位置多项式σ(x)的计算方法完全一样,它们可以共用同一套控制电路。根据步骤90输出的RS码伴随式的值,求解RS码错误位置多项式和错误值多项式的表达式,从而得到错误位置多项式和错误值多项式所有系数的值。此处采用了复用的形式,16路RS码的伴随式中的每8路复用一个BM算法,因此本发明实施例中只需要两套RS码BM算法,这样可以减小硬件电路的实现规模,节省电路工作中消耗的功率。由于采用了复用的结构,因此在本步骤中,每计算出一个RS码错误位置多项式以后就向步骤90给出一个反馈信号,表示本次BM算法计算完毕,可以传递下一个RS码伴随式。
步骤110:通过步骤100得到的错误位置多项式σ(x)和错误值多项式ω(x)分别确定RS码字中的错误位置和错误值,并完成RS码元纠错。
参见图6所示,电路的上半部分为差错值多项式的计算电路,ω寄存器的初始值为ω1、ω2、……、ω8(注意:ω0为0)。接收RS码字矢量r1022,7个常系数乘法器进行乘法运算,且将下列值存入相应的RS码复用存储单元:ω2a,ω3a2,ω4a3,ω5a4,ω6a5,ω7a6,ω8a7,累加器A输出计算结果,记为numerator:ω12a+ω3a24a35a46a57a68a7。下半部分为Chien搜索电路和求导电路。σ寄存器初始值为σ0、σ1、σ2、……、σ8。接收RS码字矢量r1022正要从缓冲器中读出之前,8个常系数乘法器进行乘法运算,且将下列值存进寄存器:σ1a,σ2a2,σ3a3,σ4a4,σ5a5,σ6a6,σ7a7,σ8a8,并将这些值分奇偶送入累加器B和C,然后将累加器B和C的结果再相加,其结果为描述方便记为sum。同时,将奇数项求和结果求逆,记为inversion。门的控制信号是:sum和不可纠判断输出信号rs_word_uncorr。当sum=0,且不可纠信号rs_word_uncorr无效(在纠错能力内)时(rs_word_uncorr=0),门将inversion输出;否则,门输出0。
与BCH码的Chien搜索电路相同,本发明实施例中的RS(781,765)码和RS(778,762)码是RS(1023,1007)码的截短码,因此在得到错误位置多项式σ(x)后,只需从i等于243开始检测到i等于1023为止,i等于243就对应于输入RS(781,765)码字的第一个符号码元r780,即RS(781,765)码字第1号码元,i等于1023对应于输入RS(781,765)码字的最后一个符号码元r0,即RS码字第781号符号码元。本发明实施例中,每次在进行RS(781,765)码字钱搜索开始前,将图6中的寄存器σ1、σ2、……、σ8的值初始化为以下的8个值,并计算该8个值的异或求和σ(ai),作为第一次判断错误位置多项式的根:
σ1a243,σ2a486,σ3a729,σ4a972,σ5a192,σ6a435,σ7a678,σ8a921
门的输出信号和numerator相乘,得到差错值E1022,把差错值与缓冲器输出值r1022相加,完成对r1022的纠错。r1022译码完成后,在将寄存器的内容作常系数乘法,并重复进行上述的相加运算和检验,对r1021进行纠错……直到整个码字输入完毕,完成一个RS码字的纠错过程。
用RS码Chien搜索电路对错误位置多项式的根进行搜索,记录下根的个数。当根的个数和错误位置多项式的次数不相等时,判断为产生了不可纠错误。此时,一个RS码字中至少有9个符号产生了错误,超过了纠错码的译码门限,在这种情况下,关断前向纠错功能。
步骤120:完成入口16路RS并行译码输出160比特流到出口64比特流的变换,并送出帧的起始位置指示信号,具体过程与现有技术相同,此处不赘述。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。

Claims (10)

1.一种超强前向纠错的硬件译码方法,其特征在于包括以下步骤:
A、首先对接收信道输出的数据采用BCH(2040,1952)码计算其伴随式,64路BCH码伴随式中的每32路复用一个BM算法:将64路BCH码伴随式分别用两个BCH码复用存储单元进行存储和调度,每个BCH码复用存储单元存储32路BCH码伴随式数据;然后对计算所得BCH码伴随式结果进行错误位置多项式的求解,再根据求得的错误位置多项式进行钱搜索,确定BCH码字中的码元错误位置并进行纠错,完成BCH码字中逐个码元的译码处理;运算的结果σ(ai)=σ0时,表示ai是错误位置多项式的根,并且错误位置发生在BCH码字的第i号码元;σ0、σ1、…是错误位置多项式的系数,a是BCH码的本元域元素,i的变化范围为:1≤i≤2047;
B、每处理完一个内码BCH码元的译码后,先进行交织处理,将经过BCH译码后的数据,从64位宽总线变换到10位宽,再对译码结果进行RS码字伴随式的计算,对于输出的16个10位宽RS码,通过16个计算电路分别计算其伴随式分量,并同时输出,将得到的16路RS码伴随式,分别用两个RS码复用存储单元进行存储和调度,每个RS码复用存储单元存储8路数据;然后对计算所得RS码字伴随式结果进行错误位置多项式和错误值多项式的求解,根据求得的错误位置多项式进行钱搜索,确定RS码字中的码元错误位置,根据求得的错误值多项式计算差错值并进行纠错,完成RS码字中逐个码元的译码处理;16路RS码的伴随式中的每8路复用一个BM算法,RS码包括RS(781,765)码和RS(778,762)码;与BCH码的钱搜索电路相同,RS(781,765)码和RS(778,762)码是RS(1023,1007)码的截短码,在得到错误位置多项式σ(x)后,只需从i等于243开始检测到i等于1023为止,i等于243就对应于输入RS(781,765)码字的第一个符号码元r780,即RS(781,765)码字第1号码元,i等于1023对应于输入RS(781,765)码字的最后一个符号码元r0,即RS码字第781号符号码元;每次在进行RS(781,765)码字钱搜索开始前,将RS码钱搜索与纠错单元中的寄存器σ1、σ2、……、σ8的值初始化为以下的8个值,并计算该8个值的异或求和σ(ai)作为第一次判断错误位置多项式的根:
σ1a243,σ2a486,σ3a729,σ4a972,σ5a192,σ6a435,σ7a678,σ8a921
最后将其输出数据进行解交织,完成入口16路RS并行译码输出160比特流到出口64比特流的变换,并送出帧的起始位置指示信号,得到超强前向纠错的译码结果。
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(2040,1952)码计算,完成BCH码的16个伴随式的计算,并将求得的BCH码伴随式结果保存待用;
BCH码BM算法单元,用于根据已得到的BCH码伴随式结果,求解BCH码错误位置多项式的表达式,进而得到BCH码错误位置多项式所有系数的值,多个BCH码共用一个BCH码BM算法单元:64路BCH码伴随式中的每32路复用一个BM算法;
BCH码钱搜索和纠错单元,用于求解所述BCH码BM算法单元发送来的错误位置多项式的根,定位出每个BCH码字中的错误码元位置,并完成BCH码字中的错误码元的纠错;运算的结果σ(ai)=σ0时,表示ai是错误位置多项式的根,并且错误位置发生在BCH码字的第i号码元;σ0、σ1、…是错误位置多项式的系数,a是BCH码的本元域元素,i的变化范围为:1≤i≤2047;
BCH码复用存储单元,用于对多路BCH码进行存储、处理,以及对BCH码伴随式分量和错误位置多项式进行调度:将64路BCH码伴随式分别用两个BCH码复用存储单元进行存储和调度,每个BCH码复用存储单元存储32路BCH码伴随式数据;
BCH码总线变换单元,用于完成总线从BCH码型到RS码型的变换,将经过BCH译码后的数据,从64位宽总线变换到10位宽,以满足后续RS码在GF域上的要求;
RS码伴随式计算单元,用于完成RS码的16个伴随式的计算,并将求得的RS码伴随式结果保存待用:对于16个10位宽RS码,通过16个计算电路分别计算其伴随式分量,并同时输出;
RS码BM算法单元,用于根据已得到的RS码伴随式结果,计算RS码错误位置多项式和RS码错误值多项式的表达式,进而得到RS码错误位置多项式的所有系数及RS码错误值多项式的所有系数,多个RS码字共用一个RS码BM算法单元:16路RS码的伴随式中的每8路复用一个BM算法,RS码包括RS(781,765)码和RS(778,762)码;
RS码钱搜索和纠错单元,用于通过错误位置多项式和错误值多项式分别确定RS码字中的错误位置和错误值,并完成RS码元纠错;与BCH码的钱搜索电路相同,RS(781,765)码和RS(778,762)码是RS(1023,1007)码的截短码,在得到错误位置多项式σ(x)后,只需从i等于243开始检测到i等于1023为止,i等于243就对应于输入RS(781,765)码字的第一个符号码元r780,即RS(781,765)码字第1号码元,i等于1023对应于输入RS(781,765)码字的最后一个符号码元r0,即RS码字第781号符号码元;每次在进行RS(781,765)码字钱搜索开始前,将RS码钱搜索与纠错单元中的寄存器σ1、σ2、……、σ8的值初始化为以下的8个值,并计算该8个值的异或求和σ(ai)作为第一次判断错误位置多项式的根:
σ1a243,σ2a486,σ3a729,σ4a972,σ5a192,σ6a435σ7a678,σ8a921
RS码复用存储单元,用于对多路RS码字进行存储、处理,以及对RS码伴随式分量、错误位置多项式和错误值多项式进行调度:将得到的16路RS码伴随式,分别用两个RS码复用存储单元进行存储和调度,每个RS码复用存储单元存储8路数据;
RS码总线变换单元,用于完成入口16路RS并行译码输出160比特流到出口64比特流的变换,并发送帧的起始位置指示信号。
9.如权利要求8所述的超强前向纠错的硬件译码装置,其特征在于:它还包括数据缓冲单元,所述数据缓冲单元用于缓存数据,并产生延迟一定拍数的帧起始脉冲信号。
10.如权利要求8或9所述的超强前向纠错的硬件译码装置,其特征在于:它还包括译码性能监控单元,所述译码性能监控单元用于监控RS码和BCH码的性能。
CN201110084573.3A 2011-04-06 2011-04-06 超强前向纠错的硬件译码方法及装置 Active CN102170327B (zh)

Priority Applications (2)

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

Applications Claiming Priority (1)

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

Publications (2)

Publication Number Publication Date
CN102170327A CN102170327A (zh) 2011-08-31
CN102170327B true CN102170327B (zh) 2014-01-22

Family

ID=44491319

Family Applications (1)

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

Country Status (2)

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

Families Citing this family (9)

* 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码译码方法及装置
CN111130568B (zh) * 2018-10-31 2023-05-23 中国科学院微电子研究所 一种bch译码器及其译码方法、ecc系统
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 (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101459431A (zh) * 2008-12-30 2009-06-17 北京大学 一种信道纠错码bch码和rs码的译码方法
CN101667887A (zh) * 2009-09-02 2010-03-10 中兴通讯股份有限公司 编码方法及其装置、解码方法及其装置
CN101686104A (zh) * 2008-09-22 2010-03-31 华为技术有限公司 一种前向纠错的编解码的方法、装置和系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1618669A1 (en) * 2003-04-30 2006-01-25 Marconi Communications GmbH Forward error correction coding
JP5502363B2 (ja) * 2009-04-28 2014-05-28 三菱電機株式会社 光伝送装置および光伝送方法
CN102170327B (zh) * 2011-04-06 2014-01-22 烽火通信科技股份有限公司 超强前向纠错的硬件译码方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101686104A (zh) * 2008-09-22 2010-03-31 华为技术有限公司 一种前向纠错的编解码的方法、装置和系统
CN101459431A (zh) * 2008-12-30 2009-06-17 北京大学 一种信道纠错码bch码和rs码的译码方法
CN101667887A (zh) * 2009-09-02 2010-03-10 中兴通讯股份有限公司 编码方法及其装置、解码方法及其装置

Also Published As

Publication number Publication date
CN102170327A (zh) 2011-08-31
WO2012136047A1 (zh) 2012-10-11

Similar Documents

Publication Publication Date Title
CN102170327B (zh) 超强前向纠错的硬件译码方法及装置
KR101354288B1 (ko) 통신 시스템에서 에러 검출 방법 및 장치
US7246294B2 (en) Method for iterative hard-decision forward error correction decoding
CN100589328C (zh) 一种Reed-Solomon码解码器
CN101425871B (zh) 多元纠错码发射接收装置及数据传输系统以及相关方法
CN101345601B (zh) 一种译码方法和译码器
WO1991017503A1 (en) Forward error correction code system
CN102882534B (zh) Rs编码的并行实现方法及装置
KR20120091001A (ko) Ldpc 컨벌루션 코드를 사용하여 gnss 신호 데이터를 통신하는 방법 및 그 시스템
CN102970049B (zh) 基于钱搜索算法和福尼算法的并行电路及rs译码电路
CN103973314A (zh) 一种基于ldpc的信号编解码方法、及接收端和发送端
CN107404321A (zh) 用于纠错码解码的方法和设备
WO2012174933A1 (zh) Rs编码器的编码方法及rs编码器
US7231575B2 (en) Apparatus for iterative hard-decision forward error correction decoding
WO2007053126A1 (en) Methods and devices for decoding and encoding data
CN105634506A (zh) 基于移位搜索算法的平方剩余码的软判决译码方法
CN112468161A (zh) 一种rs高速编码电路
CN101147327B (zh) 使用篱栅的蝴蝶结构来映射解码的度量计算的方法和装置
CN101325706B (zh) 低硬件开销Reed-Solomon解码器
CN112468160B (zh) 一种基于钱搜索算法和福尼算法的并行电路
CN101834616B (zh) 里德-索罗蒙解码器实现方法
US9048866B2 (en) Apparatus and method for checking decoded data, apparatus and method for decoding, and receiving terminal
CN111277830B (zh) 一种编码方法、解码方法及装置
CN104184544B (zh) 一种解码方法及装置
Le Bidan et al. Reed-Solomon turbo product codes for optical communications: From code optimization to decoder design

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20170606

Address after: 430074, Hubei Wuhan East Lake Development Zone, Kanto Industrial Park, beacon Road, optical communications building, industrial building, two floor

Patentee after: Wuhan flying Microelectronics Technology Co., Ltd.

Address before: China Science and Technology Park Dongxin road East Lake Development Zone 430074 Hubei Province, Wuhan City, No. 5

Patentee before: Fenghuo Communication Science &. Technology Co., Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20170803

Address after: 430000 East Lake high tech Development Zone, Hubei Province, No. 6, No., high and new technology development zone, No. four

Co-patentee after: Wuhan flying Microelectronics Technology Co., Ltd.

Patentee after: Fenghuo Communication Science &. Technology Co., Ltd.

Address before: 430074, Hubei Wuhan East Lake Development Zone, Kanto Industrial Park, beacon Road, optical communications building, industrial building, two floor

Patentee before: Wuhan flying Microelectronics Technology Co., Ltd.

TR01 Transfer of patent right