CN101686104A - 一种前向纠错的编解码的方法、装置和系统 - Google Patents
一种前向纠错的编解码的方法、装置和系统 Download PDFInfo
- Publication number
- CN101686104A CN101686104A CN200810222844A CN200810222844A CN101686104A CN 101686104 A CN101686104 A CN 101686104A CN 200810222844 A CN200810222844 A CN 200810222844A CN 200810222844 A CN200810222844 A CN 200810222844A CN 101686104 A CN101686104 A CN 101686104A
- Authority
- CN
- China
- Prior art keywords
- data
- bits
- code
- code word
- bch
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 64
- 238000006243 chemical reaction Methods 0.000 claims description 22
- 230000001965 increasing effect Effects 0.000 claims description 15
- 230000005540 biological transmission Effects 0.000 abstract description 14
- 230000003287 optical effect Effects 0.000 abstract description 10
- 238000004364 calculation method Methods 0.000 description 5
- 238000013500 data storage Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 208000011580 syndromic disease Diseases 0.000 description 3
- 230000002708 enhancing effect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 101100462419 Homo sapiens OTUB2 gene Proteins 0.000 description 1
- 101150046103 OTU2 gene Proteins 0.000 description 1
- 102100025914 Ubiquitin thioesterase OTUB2 Human genes 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Landscapes
- Error Detection And Correction (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
一种前向纠错的编解码的方法、装置和系统,该方法包括:根据开销冗余率,将数据通过预先确定的第一码字进行编码处理,然后进行第一交织处理;将第一交织处理后的数据,通过预先确定的第二码字进行编码处理并发送;接收端将接收到的数据通过所述预先确定的第二码字进行解码处理后,进行解交织处理;将解交织处理后的数据,通过所述预先确定的第一码字进行解码处理后输出。本发明实施例采用根据开销冗余率,通过预先确定的第一码字和第二码字对数据进行编码处理的技术方案,可以更好的兼容现有技术,以便使用比较少的资源,实现各种开销冗余率的应用需求,从而进一步提高了光传输通道的可靠性及应用的灵活性。
Description
技术领域
本发明涉及电子技术领域,尤其涉及一种前向纠错的编解码的方法、装置和系统。
背景技术
前向纠错算法是在数据发送端按照一定的编码规则在数据流中增加一定的称为parity(校验比特)的冗余数据,在数据的接收端对接收到包含信息比特和校验比特的数据进行解码的一种算法,前向纠错算法能够降低传输中的误码率,从而达到纠错的功能。
EFEC(Enhanced Forward Error Correction,增强型前向纠错)是一种增强型前向纠错算法,被广泛应用于光传送系统中,为光传送系统提供高性能的误码纠错能力,提高了系统的可靠性和传送距离。
现有的一种前向纠错算法为一种采用级联BCH(Bose-Chaudhuri-Hocquenghem,一种循环码)码的前向纠错算法,其开销冗余率为7%。该编码方法首先采用BCH(3860,3824)码进行编码(即第一次编码),可纠3bit误码,再采用采用BCH(2040,1930)码进行编码(即第二次编码),可纠10bit误码。该解码方法首先采用BCH(2040,1930)码进行解码(即第一次解码),再采用BCH(3860,3824)码进行解码(即第二次解码)。BCH(3860,3824)码字由3824bit信息位,即净荷数据长度与36bit校验位构成,该BCH码的总数据长度为3860bit。可以将对数据进行第一次编码或第二次解码所采用的码字作为第一码字(也可以称作外码,即现有技术中的BCH(3860,3824)码),将对数据进行第二次编码或第一次解码所采用的码字作为第二码字(也可以称作内码,即现有技术中的BCH(2040,1930)码)。为了增强FEC算法的纠错性能,可以在两次编解码之间插入交织或解交织功能,形成增强型前向纠错算法。该现有技术中开销冗余为7%。
但是,现有的EFEC算法的开销冗余率为7%。纠错能力有限,只适用于标准的OTU2帧,不能应用于扩展型开销冗余率为其他值的OTU2V帧结构,不能用来进一步提高光传送通道的可靠性。
发明内容
本发明实施例的前向纠错的编解码的方法、装置和系统,可以满足多种开销冗余率的应用需求。
本发明实施例是通过以下技术方案实现的:
本发明实施例提供一种前向纠错的编码的方法,包括:
根据开销冗余率,将数据通过预先确定的第一码字进行编码处理,然后进行第一交织处理;
将第一交织处理后的数据,通过预先确定的第二码字进行编码处理并发送。
本发明实施例提供一种前向纠错的解码的方法,包括:
将接收到的数据通过所述预先确定的第二码字进行解码处理后,进行解交织处理;
将解交织处理后的数据,通过所述预先确定的第一码字进行解码处理后输出。
本发明实施例提供一种前向纠错的编码装置,包括:
第一编码单元,用于根据开销冗余率,将数据通过预先确定的第一码字进行编码处理后输出;
第一交织单元,用于将所述第一编码单元输出的数据进行第一交织处理后输出;
第二编码单元,用于将所述第一交织单元输出的数据,通过预先确定的第二码字进行编码处理并发送。
本发明实施例提供一种前向纠错的解码装置,包括:
第二解码单元,用于将接收到的数据通过预先确定的第二码字进行解码处理后输出;
解交织单元,用于将第二解码单元输出的数据进行解交织处理后输出;
第一解码单元,用于将解交织单元输出的数据,通过预先确定的第一码字进行解码处理后输出。
本发明实施例提供一种前向纠错的编解码系统,包括:前向纠错的编码装置和前向纠错的解码装置,
所述编码装置根据开销冗余率,将数据通过预先确定的第一码字进行编码处理,然后进行第一交织;将第一交织处理后的数据,通过预先确定的第二码字进行编码处理并发送;
所述解码装置将接收到的数据通过所述预先确定的第二码字进行解码处理后,进行解交织处理;将解交织处理后的数据,通过所述预先确定的第一码字进行解码处理后输出。
由上述本发明实施例提供的技术方案可以看出,本发明实施例采用根据开销冗余率,通过预先确定的第一码字和第二码字对数据进行编码处理的技术方案,可以更好的兼容现有技术,以便使用比较少的资源,实现各种开销冗余率的应用需求,从而进一步提高了光传输通道的可靠性及应用的灵活性。
附图说明
图1为本发明实施例的方法的流程图;
图2为本发明实施例的采用第一码字BCH(3908,3824)对光传输数据进行编码后的帧结构;
图3为本发明实施例的采用第二码字BCH(2374,1954)对交织处理后的数据进行编码后的帧结构;
图4为本发明实施例所示的并行编码结构示意图;
图5为本发明实施例的交织/解交织处理过程;
图6为本发明实施例的交织和解交织数据存储实现方法;
图7为本发明实施例的系统的结构图。
具体实施方式
本发明实施例的方法如图1所示,包括如下步骤:
步骤1:预先确定编解码码型。
具体可以通过对现有的编解码码型进行扩展而确定满足预先设置的开销冗余率要求的编解码码型。
在码型扩展过程中,由于交织处理的主要作用是使误码分布更趋向均匀分布化,交织和解交织的粒度对编解码整体纠错性能有影响,但对编解码的纠错能力没有影响。在选择码型的时候,可以不考虑改变交织粒度的大小。因此,码型扩展方法主要有两种:增加码字长度和改变码字数量。
在本发明实施例中,将对数据进行第一次编码或第二次解码所采用的码字作为第一码字(也可以称作外码),将对数据进行第二次编码或第一次解码所采用的码字作为第二码字(也可以称作内码)。
一、增加码字长度的码型扩展方法:
增加码字长度的码型扩展方法是保持现有算法码字数量和交织粒度,根据预先设置的开销冗余率大小设置码型的开销冗余区域大小,这样,合理地增加了第一码字和第二码字的长度,即可扩展成实现各种开销冗余率(比如开销冗余率为n%)的FEC算法的码型。
由于每个码字净荷长度保持不变,只根据预先设置的开销冗余率增长了码字的开销冗余区域,从而,增强了每个码字的纠错能力,相应地增强了扩展后码型的整体纠错能力。在数据帧净荷数据字节长度为M,开销冗余字节长度为L,开销冗余字节数L与整个帧数据字节数M+L比值为开销冗余率n%的情况下,增加码字长度得到第二码字BCH(m2,p2)和第一码字BCH(m1,p1),其中,m1和m2指示对应码型的总数据长度,p1和p2指示对应码型的净荷数据长度,m1-p1指示对应码型的校验位数据长度,m2-p2指示对应码型的校验位数据长度。该第二码字BCH(m2,p2)和第一码字BCH(m1,p1)可以满足:(m1-p1)×8+(m2-p2)×16小于或等于2L,p1×8bit等于2M bit,m2×16bit等于或小于(M+L)×2bit。
对于固定帧长度和开销冗余区域的帧结构,可以通过增长第一码字和第二码字的长度的方式增长码字的开销冗余区域,来扩展生成实现开销冗余率为n%的FEC算法的码型。典型开销冗余率为25%的扩展码型有:第一码字BCH(3860,3824)和第二码字BCH(2374,1930)、第一码字BCH(3908,3824)和第二码字BCH(2374,1954)、第一码字BCH(3956,3824)和第二码字BCH(2374,1978)、第一码字BCH(4004,3824)和BCH(2374,2002)、第一码字BCH(4052,3824)和第二码字BCH(2374,2026),其他开销冗余率的扩展码型可参考开销冗余率为25%扩展方法生成。
二、改变码字数量的码型扩展方法:
对于任意开销冗余率为n%的编解码,改变码字数量的码型扩展方法可以包括:改变第一码字的码字数量,或改变第二码字的码字数量,或第一码字和第二码字的码字数量。
在数据帧净荷数据字节长度为M,开销冗余字节长度为L,开销冗余字节数L与整个帧数据字节数M+L比值为开销冗余率n%的情况下,改变码字数量得到Z个第一码字BCH(m1,p1)和Y个第二码字BCH(m2,p2),其中,该Z个第一码字BCH(m1,p1)和Y个第二码字BCH(m2,p2)可以满足:m1和m2指示对应码型的总数据长度,p1和p2指示对应码型的净荷数据长度,(m1-p1)×Z+(m2-p2)×Y小于或等于2L,p1×Zbit等于2M bit,m2×Ybit等于或小于(M+L)×2bit。
通常,第二码字的纠错能力要比第一码字强,第二码字码字的变化对码型整体纠错能力的影响程度比第一码字码字的变化影响程度大。这样,为了最大限度地增强扩展码型的纠错能力,可以选择改变第二码字的码字数量。对于固定帧长度和开销冗余区域的帧结构,可以通过改变第二码字的码字数量,扩展生成实现开销冗余率为n%的FEC算法的码型。典型开销冗余率为25%的扩展码型有:第一码字BCH(3920,3824)和第二码字BCH(4752,3920)、第一码字BCH(3920,3824)和第二码字BCH(1178,980)、第一码字BCH(3920,3824)和第二码字BCH(590,490),其他开销冗余率扩展码型可参考开销冗余率为25%扩展方法生成。
比如:在预先设置的开销冗余率为25%的情况下,可以选择BCH(3908,3824)作为第一码字,BCH(2374,1954)作为第二码字,可以将BCH(3908,3824)和BCH(2374,1954)按照如下方式定义:
GF(212)域上的BCH(3908,3824)和BCH(2374,1954)码生成多项式为:
G(x)=M1(x)M3(x)M5(x)…M2t-1(x)
其中Mi(x)为最小多项式,α为本原多项式×12+×11+×8+×6+1的根,t为可纠错最大bit数。
BCH(3908,3824)码字由3824bit信息位与84bit校验位构成,可以纠7bit的错误。BCH(2374,1954)码字由1954bit信息位与420bit校验位构成,可以纠35bit的错误。
步骤2:将光传输数据通过确定的第一码字进行编码处理。该编码处理的方法具体可以包括:首先,将光传输数据按照预先设置的第一码字长度拆分成数个码字;其次,将所述的码字按照预先确定的第一码字进行编码处理。比如:采用第一码字BCH(3908,3824)对光传输数据进行编码后的帧结构如图2所示,图中数据传输方式为:从上至下,从左到右。包括:首先,将OTU2V帧的每行按bit间插的方式拆成图2中的8个码字#code1---#code8,每个码字长度为3908bit;其次,将拆分后的各个码字进行BCH(3908,3824)的编码处理,这样得到图2所示的这8个码字在OTU2V行中的位置关系:在一个OTU2V帧的一行中,前30592bit为8个码字的净荷数据,接着的640bit是8个码字的前80bit parity(校验)数据,后面的128bit依次为8个码字的剩余4bitparity数据和12bit dummy(填充)数据,该剩余4bit parity数据和12bitdummy数据的组成方式为2bit parity+6bit dummy形式,共16个字节。其中,2bit parity可以位于2bit parity+6bit dummy形式中的8bit数据中的任何位置。图中dummy data位置将填充预先确定的第一码字(比如BCH(3908,3824))的校验位。
步骤3:将步骤2中编码处理后的数据传输给第一交织单元进行第一交织处理。具体可以采用多种交织处理方式,如波浪式交织法、增加交织深度的交织方法,或者减小交织粒度的交织方法。比如:
步骤4:将第一交织单元处理后的数据,通过确定的第二码字进行编码处理后传输给接收端。该编码处理的方法具体可以包括:首先,将接收到的数据按照预先设置的第二码字长度拆分成数个码字;其次,将所述的码字按照预先确定的第二码字进行编码处理。比如:采用第二码字BCH(2374,1954)对交织处理后的数据进行编码后的帧结构如图3所示,图中数据传输方式为:从上至下,从左到右。交织后的数据每行由16个BCH(2374,1954)码字构成,将每行按128bit的块展开成如图所示构成16个BCH(2374,1954)码字,其编码的效数据包含净荷数据和第一码字的parity数据,共1954bit,剩余的部分填充BCH(2374,1954)码的parity数据和2bit dummy数据,该2bit dummy数据可以位于第二码字数据中的任何位置。
步骤5:接收端将接收到的数据通过确定的第二码字进行解码处理后,发送给解交织单元。
步骤6:解交织单元将接收到的数据进行解交织处理,将解交织处理后的数据通过确定的第一码字进行解码处理后输出。
在本发明实施例中,为了通过多次迭代,交织和解交织,使误码均匀化,提高编解码的纠错性能,可以执行步骤7:将步骤6输出的数据经第二交织单元进行第二交织处理后,使得在第一次交织中未被纠错的误码均匀化,经迭代路径输出给确定的第二码字进行解码处理,之后传输给解交织单元,执行步骤6。
为了提高编解码的纠错性能,可以重复执行该步骤6和步骤7。
本发明实施例对第一码字或第二码字的编解码的过程中,可以采用将码字进行并行编码的方法对第一码字或第二码字进行编码处理。如图4所示的并行编码结构示意图,包括:首先将待编码的串行数据通过串并转换得到数个并行数据,将得到的所述数个并行数据分别进行编码处理后,再将得到的经编码处理后的并行数据通过并串转换得到串行数据。
比如:第一码字由8个BCH(3908,3824)码字构成的情况下,为了最小化编码延时,采用8个码字并行编码方案实现编码。在第二码字由16个BCH(2374,1954)构成的情况下,对于第二码字的编码,由于16个码字是间插排列,可以复用这组编码器进行编码。
在本发明实施例中的交织和解交织的具体实现方法可以采用如下方法:
根据预先设置的块的具体大小,将待交织数据分成K个块(symbol),每个块的具体大小即为交织的最小粒度,每个块的具体大小可以根据第二码字的个数来确定,比如将每个块的大小设置为:第二码字的个数×8bit。
根据预先设置的交织深度H将这些块分成N个组,满足要求H×N=K,将每组的各个块再划分成H个子组,每个子组的编号分别为1,2...H-1。
在交织的情况下,将待交织数据分别输入所述K个块中,在每个块中,采用交织深度H与所述子组数量相同的模H计数器对输入的数据进行计数处理;在计数器为预先设置的特定值(比如:为最小值)时直接输出数据,而为其他值时,将数据保存在存储编号与计数器相等的子组中,每个子组中的数据按照先进后出的方式输出。
在解交织的情况下,将待解交织数据分别输入所述K个块中,在每个块中,采用交织深度H与所述子组数量相同的模H计数器对输入的数据进行计数处理;当计数器为预先设置的特定值(比如:最大值)时将输入数据直接输出,当计数器值为其他值时,从子组对应编号为从大到小的存储空间中读取数据,每个子模块中的数据按照先进后出的方式输出。
在本发明实施例中,也可以在步骤12中将计数器为最大值时直接输出数据,则这样在步骤13中需要在计数器为最小值时直接输出数据。容易理解的是,这是由于交织和解交织是对应的两个过程而导致的。
比如:将OTU2V帧每行38016bit分为297个块(symbol),每个块128bit,每个块写入到先进先出存储单元,然后延时一定时间后读取数据组成新的数据输出,交织/解交织处理过程如图5所示,由图5可知,数据在交织/解交织中要延时OTU2V帧7行的时间。
交织和解交织数据处理过程:
步骤1:首先将存储空间划分38组,每组包含28个symbol的数据存储单元,并划分成7个子字块,分别由1,2,3,4,5,6,7个symbol组成,存储块编号分别为1,2...7。
步骤2:对输入的待交织的数据,采用模n计数(n表示交织深度,此处深度为8),计数器为“0”时数据直接输出,而为其他非“0”值时,保存于存储编号与计数器相等的存储单元中,每个子模块中的数据存储方式保持顺序存取。
步骤3:读取侧,当计数器为“0”时,输入数据直接输出;当计数器为非“0”时,则从存储编号与当前计数器相等的存储块中读取数据,读取按照先进后出的原则。
对于解交织,实现方式与交织类似,读写次序相反。包括:
步骤1:对于输入的待解交织的数据,采用模n计数(n表示解交织深度,此处为8),计数器为0,1...6时,分别写入存储块编号对应为7,6..1的存储块的存储单元中。每个子模块中,数据存储方式保持顺序存取。
步骤2:读取侧,当计数器为“7”时,输入数据直接输出,当计数器值为0,1...6时,从存储块对应编号为7,6...1的存储空间中读取,读取按照先进后出的原则。
如图5所示,在整个交织和解交织过程,并不需要存取每行所有的数据,对于任意8个码字,只需要保存38组,每组包含28个symbol的数据,详细存储结构如图6所示。
数据缓存使用两个1064×64bit的存储空间,每个存储空间分成38组,每组大小为28×64bit,分别由1×64bit、2×64bit、3×64bit、4×64bit、5×64bit、6×64bit、7×64bit 7块组成。
在本发明实施例中,解码处理主要采用并行伴随式、BM和chien搜索计算,采用了并行方法,缩短了编解码的时间。BCH编码的解码器可以包括:伴随式计算、BM迭代、CHIEN搜索电路组成,码字解码器的伴随式计算可以由8个计算电路实现,其中第二码字16个码字复用此8个计算电路。BM迭代电路只有两组,分别依次对第一码字第二码字进行BM迭代计算。CHIEN搜索电路共8组,当计算第二码字时,第二码字16个码字复用此8组CHIEN搜索电路。
本发明实施例还提供一种前向纠错的编解码的系统,如图7所示,包括:
前向纠错的编码装置1和前向纠错的解码装置2,其中,该前向纠错的编码装置1包括:第一编码单元11,用于根据开销冗余率,将数据通过预先确定的第一码字进行编码处理后输出;
第一交织单元12,用于将所述第一编码单元11输出的数据进行第一交织处理后输出;
第二编码单元13,用于将所述第一交织单元12输出的数据,通过预先确定的第二码字进行编码处理并发送。
该前向纠错的解码装置2包括:第二解码单元21,用于将所述第二编码单元13发送的数据,通过所述预先确定的第二码字进行解码处理后输出;
解交织单元22,用于将第二解码单元21输出的数据进行解交织处理后输出;
第一解码单元23,用于将解交织单元22输出的数据,通过所述预先确定的第一码字进行解码处理后输出。
为了预先确定第一码字或第二码字,所述系统还可以包括:
码型确定单元(未图示),用于根据预先设置的开销冗余率,增加码字长度或改变码字数量,得到所述预先确定的第一码字和/或第二码字,所述预先确定的第一码字和第二码字的开销冗余区域与所述开销冗余率匹配。
该码型确定单元可以位于系统中的前向纠错的编码装置和/或前向纠错的解码装置中,也可以位于该系统中的其他位置。
所述码型确定单元确定的第一码字和第二码字包括:数据帧净荷数据字节长度为M,开销冗余字节长度为L,开销冗余字节数L与整个帧数据字节数M+L比值为开销冗余率n%,增加码字长度得到总数据长度为m2,净荷数据长度为p2的作为第二码字的BCH码,以及总数据长度为m1,净荷数据长度为p1的作为第一码字的BCH码,所述作为第二码字的BCH码用BCH(m2,p2)表示,所述作为第一码字的BCH码用BCH(m1,p1)表示,(m1-p1)×8+(m2-p2)×16小于或等于2L,p1×8bit等于2M bit,m2×16bit等于或小于(M+L)×2bit;或,
数据帧净荷数据字节长度为M,开销冗余字节长度为L,开销冗余字节数L与整个帧数据字节数M+L比值为开销冗余率n%,改变码字数量得到Z个总数据长度为m1,净荷数据长度为p1的作为第一码字的BCH码,以及Y个总数据长度为m2,净荷数据长度为p2的作为第二码字的BCH码,所述作为第二码字的BCH码用BCH(m2,p2)表示,所述作为第一码字的BCH码用BCH(m1,p1)表示,(m1-p1)×Z+(m2-p2)×Y小于或等于2L,p1×Zbit等于2M bit,m2×Ybit等于或小于(M+L)×2bit。
为了通过多次迭代,交织和解交织,使误码均匀化,提高编解码的纠错性能,所述系统中的前向纠错的解码装置2还可以包括:
第二交织单元24,将所述第一解码单元23输出的数据进行第二交织处理后输出给所述第二解码单元21处理。
为了最小化编码延时,所述系统中的前向纠错的编码装置1还可以包括:串并转换单元(未图示),用于与所述第一编码单元11相连,将数据通过串并转换得到数个并行数据,再将得到的数个并行数据分别输出给第一编码单元11处理;或,用于与所述第二编码单元13相连,将数据通过串并转换得到数个并行数据,再将得到的数个并行数据分别输出给第二编码单元13处理;或,用于与所述第一编码单元11相连,将数据通过串并转换得到数个并行数据,再将得到的数个并行数据分别输出给第一编码单元11处理,以及用于与所述第二编码单元13相连,将数据通过串并转换得到数个并行数据,再将得到的数个并行数据分别输出给第二编码单元13处理。
为了最小化编码延时,所述系统中的前向纠错的解码装置2还可以包括:并串转换单元(未图示),用于与所述第一解码单元23相连,将数个并行数据通过并串转换得到一组串行数据,再将得到的所述串行数据输出给第一解码单元23处理;或,用于与所述第二解码单元21相连,将数个并行数据通过并串转换得到一组串行数据,再将得到的所述串行数据输出给第二解码单元21处理;或,用于与所述第一解码单元23相连,将数个并行数据通过并串转换得到一组串行数据,再将得到的所述串行数据输出给第一解码单元23处理,以及用于与所述第二解码单元21相连,将数个并行数据通过并串转换得到一组串行数据,再将得到的所述串行数据输出给第二解码单元21处理。
现有算法和本发明算法主要应用于OTN领域,特别本发明算法和扩展码型都是基于OTN帧结构设计而成,在实际应用中,本发明算法除可应用于OTN领域外,也可以应用于其他任何领域,只需要数据帧满足或可整理成如下格式:
payload=M bit | parity=N bit |
其中,payload为净荷数据,parity为校验比特。其中,要求M≤30592,N>2048,如果payload的长度小于30592bit,则可以采用本发明算法的截短码来实现。
本发明实施例实现一种可以满足开销冗余率为n%的应用需求的EFEC算法,同时,可以更好的兼容现有技术,以便使用比较少的资源,实现开销冗余率为7%和n%两种算法,从而,进一步提高了光传输通道的可靠性及应用的灵活性。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
Claims (22)
1、一种前向纠错的编码的方法,其特征在于,包括:
根据开销冗余率,将数据通过预先确定的第一码字进行编码处理,然后进行第一交织处理;
将第一交织处理后的数据,通过预先确定的第二码字进行编码处理并发送。
2、如权利要求1所述的方法,其特征在于,预先确定第一码字或第二码字的方法包括:根据预先设置的开销冗余率,增加码字长度或改变码字数量,得到所述预先确定的第一码字或第二码字,所述预先确定的第一码字的开销冗余区域与所述开销冗余率匹配,所述预先确定的第二码字的开销冗余区域与所述开销冗余率匹配,所述预先确定的第一码字和第二码字的开销冗余区域与所述开销冗余率匹配。
3、如权利要求2所述的方法,其特征在于,预先确定第一码字或第二码字的方法具体包括:数据帧净荷数据字节长度为M,开销冗余字节长度为L,开销冗余字节数L与整个帧数据字节数M+L比值为开销冗余率,增加码字长度得到总数据长度为m2,净荷数据长度为p2的作为第二码字的BCH码,以及总数据长度为m1,净荷数据长度为p1的作为第一码字的BCH码,所述作为第二码字的BCH码用BCH(m2,p2)表示,所述作为第一码字的BCH码用BCH(m1,p1)表示,并且满足(m1-p1)×8+(m2-p2)×16≤2L,p1×8=2M,m2×16bit≤(M+L)×2bit。
4、如权利要求3所述的方法,其特征在于,在开销冗余率为25%的情况下,所述第二码字和第一码字包括:
第一码字为总数据长度为3860比特,净荷数据长度为3824比特,校验位为36比特的BCH码,第二码字为总数据长度为2374比特,净荷数据长度为1930比特,校验位为444比特的BCH码;或者,
第一码字为总数据长度为3908比特,净荷数据长度为3824比特,校验位为84比特的BCH码,第二码字为总数据长度为2374比特,净荷数据长度为1954比特,校验位为420比特的BCH码;或者,
第一码字为总数据长度为3956比特,净荷数据长度为3824比特,校验位为132比特的BCH码,第二码字为总数据长度为2374比特,净荷数据长度为1978比特,校验位为396比特的BCH码;或者,
第一码字为总数据长度为4004比特,净荷数据长度为3824比特,校验位为180比特的BCH码,第二码字为总数据长度为2374比特,净荷数据长度为2002比特,校验位为372比特的BCH码;或者,
第一码字为总数据长度为4052比特,净荷数据长度为3824比特,校验位为228比特的BCH码,第二码字为总数据长度为2374比特,净荷数据长度为2026比特,校验位为348比特的BCH码。
5、如权利要求2所述的方法,其特征在于,预先确定第一码字或第二码字的方法具体包括:数据帧净荷数据字节长度为M,开销冗余字节长度为L,开销冗余字节数L与整个帧数据字节数M+L比值为开销冗余率,改变码字数量得到Z个总数据长度为m1,净荷数据长度为p1的作为第一码字的BCH码,以及Y个总数据长度为m2,净荷数据长度为p2的作为第二码字的BCH码,所述作为第二码字的BCH码用BCH(m2,p2)表示,所述作为第一码字的BCH码用BCH(m1,p1)表示,并且满足(m1-p1)×Z+(m2-p2)×Y≤2L,p1×Zbit=2M bit,m2×Ybit≤(M+L)×2bit。
6、如权利要求5所述的方法,其特征在于,在开销冗余率为25%的情况下,所述第二码字和第一码字包括:
第一码字为总数据长度为3920比特,净荷数据长度为3824比特,校验位为96比特的BCH码,第二码字为总数据长度为4752比特,净荷数据长度为3920比特,校验位为832比特的BCH码;或者,
第一码字为总数据长度为3920比特,净荷数据长度为3824比特,校验位为96比特的BCH码,第二码字为总数据长度为1178比特,净荷数据长度为980比特,校验位为198比特的BCH码;或者,
第一码字为总数据长度为3920比特,净荷数据长度为3824比特,校验位为96比特的BCH码,第二码字为总数据长度为590比特,净荷数据长度为490比特,校验位为100比特的BCH码。
7、如权利要求1-6任一项所述的方法,其特征在于,进行交织处理的方法包括:将待交织数据分别输入预先设置的K个块中,在每个块中,采用交织深度H与预先设置的子组数量相同的模H计数器对输入的数据进行计数处理;在计数器为预先设置的特定值时直接输出数据,而为其他值时,将数据保存在存储编号与计数器相等的预先设置的子组中,每个子组中的数据按照先进后出的方式输出;
所述预先设置K个块是根据预先设置的块的具体大小,将待交织数据分成的K个块,每个块的具体大小为交织的最小粒度,每个块的具体大小根据第二码字的个数确定;所述预先设置的子组按照如下方法划分:根据预先设置的交织深度H将K个块分成N个组,满足要求H×N=K,将每组的各个块再划分成H个子组,并对每个子组依次编号。
8、如权利要求1-6任一项所述的方法,其特征在于,进行编码的方法包括:将数据通过串并转换得到数个并行数据,将得到的所述数个并行数据分别进行编码处理后,再将得到的经编码处理后的并行数据通过并串转换得到串行数据。
9、一种前向纠错的解码的方法,其特征在于,包括:
将接收到的数据通过所述预先确定的第二码字进行解码处理后,进行解交织处理;
将解交织处理后的数据,通过所述预先确定的第一码字进行解码处理后输出。
10、如权利要求9所述的方法,其特征在于,所述方法还包括:将通过所述预先确定的第一码字进行解码处理后的数据进行第二交织处理后,分别经预先确定的第二码字进行解码处理、解交织处理,再输出给预先确定的第一码字进行解码处理后输出。
11、如权利要求10所述的方法,其特征在于,进行交织处理的方法包括:将待交织数据分别输入预先设置的K个块中,在每个块中,采用交织深度H与预先设置的子组数量相同的模H计数器对输入的数据进行计数处理;在计数器为预先设置的特定值时直接输出数据,而为其他值时,将数据保存在存储编号与计数器相等的预先设置的子组中,每个子组中的数据按照先进后出的方式输出;
所述预先设置K个块是根据预先设置的块的具体大小,将待交织数据分成的K个块,每个块的具体大小为交织的最小粒度,每个块的具体大小根据第二码字的个数确定;所述预先设置的子组按照如下方法划分:根据预先设置的交织深度H将K个块分成N个组,满足要求H×N=K,将每组的各个块再划分成H个子组,并对每个子组依次编号。
12、如权利要求9或10或11所述的方法,其特征在于,进行解交织处理的方法包括:
进行解交织的方法包括:将待解交织数据分别输入预先设置K个块中,在每个块中,采用交织深度与预先设置的子组数量相同的模H计数器对输入的数据进行计数处理;当计数器为预先设置的特定值时将输入数据直接输出,当计数器值为其他值时,从子组对应编号为从大到小的存储空间中读取数据,每个子模块中的数据按照先进后出的方式输出;
所述预先设置K个块是根据预先设置的块的具体大小,将待交织数据分成的K个块,每个块的具体大小为交织的最小粒度,每个块的具体大小根据第二码字的个数确定;所述预先设置的子组按照如下方法划分:根据预先设置的交织深度H将K个块分成N个组,满足要求H×N=K,将每组的各个块再划分成H个子组,并对每个子组依次编号。
13、如权利要求9或10或11所述的方法,其特征在于,进行解码的方法包括:将数据通过串并转换得到数个并行数据,将得到的所述数个并行数据分别进行解码处理后,再将得到的经解码处理后的并行数据通过并串转换得到串行数据。
14、一种前向纠错的编码装置,其特征在于,包括:
第一编码单元,用于根据开销冗余率,将数据通过预先确定的第一码字进行编码处理后输出;
第一交织单元,用于将所述第一编码单元输出的数据进行第一交织处理后输出;
第二编码单元,用于将所述第一交织单元输出的数据,通过预先确定的第二码字进行编码处理并发送。
15、如权利要求14所述的装置,其特征在于,所述装置还包括:
码型确定单元,用于根据预先设置的开销冗余率,增加码字长度或改变码字数量,得到所述预先确定的第一码字和/或第二码字,所述预先确定的第一码字和第二码字的开销冗余区域与所述开销冗余率匹配。
16、如权利要求15所述的装置,其特征在于,所述码型确定单元确定的第一码字和第二码字包括:数据帧净荷数据字节长度为M,开销冗余字节长度为L,开销冗余字节数L与整个帧数据字节数M+L比值为开销冗余率,增加码字长度得到总数据长度为m2,净荷数据长度为p2的作为第二码字的BCH码,以及总数据长度为m1,净荷数据长度为p1的作为第一码字的BCH码,所述作为第二码字的BCH码用BCH(m2,p2)表示,所述作为第一码字的BCH码用BCH(m1,p1)表示,(m1-p1)×8+(m2-p2)×16小于或等于2L,p1×8bit等于2M bit,m2×16bit等于或小于(M+L)×2bit;或,
数据帧净荷数据字节长度为M,开销冗余字节长度为L,开销冗余字节数L与整个帧数据字节数M+L比值为开销冗余率,改变码字数量得到Z个总数据长度为m1,净荷数据长度为p1的作为第一码字的BCH码,以及Y个总数据长度为m2,净荷数据长度为p2的作为第二码字的BCH码,所述作为第二码字的BCH码用BCH(m2,p2)表示,所述作为第一码字的BCH码用BCH(m1,p1)表示,(m1-p1)×Z+(m2-p2)×Y小于或等于2L,p1×Zbit等于2M bit,m2×Ybit等于或小于(M+L)×2bit。
17、如权利要求14或15或16所述的装置,其特征在于,所述装置还包括:
串并转换单元,用于与所述第一编码单元相连,将数据通过串并转换得到数个并行数据,再将得到的数个并行数据分别输出给第一编码单元处理;或,用于与所述第二编码单元相连,将数据通过串并转换得到数个并行数据,再将得到的数个并行数据分别输出给第二编码单元处理。
18、一种前向纠错的解码装置,其特征在于,包括:
第二解码单元,用于将接收到的数据通过预先确定的第二码字进行解码处理后输出;
解交织单元,用于将第二解码单元输出的数据进行解交织处理后输出;
第一解码单元,用于将解交织单元输出的数据,通过预先确定的第一码字进行解码处理后输出。
19、如权利要求18所述的装置,其特征在于,所述装置还包括:
第二交织单元,将所述第一解码单元输出的数据进行第二交织处理后输出给所述第二解码单元处理。
20、如权利要求18或19所述的装置,其特征在于,所述装置还包括:
并串转换单元,用于与所述第一解码单元相连,将数个并行数据通过并串转换得到一组串行数据,再将得到的所述串行数据输出给第一解码单元处理;或,用于与所述第二解码单元相连,将数个并行数据通过并串转换得到一组串行数据,再将得到的所述串行数据输出给第二解码单元处理。
21、一种前向纠错的编解码系统,其特征在于,包括:前向纠错的编码装置和前向纠错的解码装置,
所述编码装置根据开销冗余率,将数据通过预先确定的第一码字进行编码处理,然后进行第一交织;将第一交织处理后的数据,通过预先确定的第二码字进行编码处理并发送;
所述解码装置将接收到的数据通过所述预先确定的第二码字进行解码处理后,进行解交织处理;将解交织处理后的数据,通过所述预先确定的第一码字进行解码处理后输出。
22、如权利要求21所述的系统,其特征在于,预先确定第一码字或第二码字的方法包括:根据预先设置的开销冗余率,增加码字长度或改变码字数量,得到所述预先确定的第一码字或第二码字,所述预先确定的第一码字的开销冗余区域与所述开销冗余率匹配,所述预先确定的第二码字的开销冗余区域与所述开销冗余率匹配,所述预先确定的第一码字和第二码字的开销冗余区域与所述开销冗余率匹配。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200810222844 CN101686104B (zh) | 2008-09-22 | 2008-09-22 | 一种前向纠错的编解码的方法、装置和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200810222844 CN101686104B (zh) | 2008-09-22 | 2008-09-22 | 一种前向纠错的编解码的方法、装置和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101686104A true CN101686104A (zh) | 2010-03-31 |
CN101686104B CN101686104B (zh) | 2013-11-06 |
Family
ID=42049094
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200810222844 Expired - Fee Related CN101686104B (zh) | 2008-09-22 | 2008-09-22 | 一种前向纠错的编解码的方法、装置和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101686104B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102170327A (zh) * | 2011-04-06 | 2011-08-31 | 烽火通信科技股份有限公司 | 超强前向纠错的硬件译码方法及装置 |
CN103873071B (zh) * | 2012-12-10 | 2016-12-21 | 华为技术有限公司 | 一种前向纠错编码、译码方法和装置、通信设备及系统 |
WO2017036416A1 (en) * | 2015-09-04 | 2017-03-09 | Huawei Technologies Co., Ltd. | Adaptive forward error correction (fec) in passive optical networks (pons) |
CN109597705A (zh) * | 2018-12-05 | 2019-04-09 | 中国人民解放军国防科技大学 | 抗单粒子翻转和单粒子瞬态的高速串行接口数据编解码方法 |
CN111769906A (zh) * | 2020-06-29 | 2020-10-13 | 中国人民解放军国防科技大学 | 一种自适应降低编码层和链路层处理延迟的数据传输方法及装置 |
CN113395137A (zh) * | 2021-06-08 | 2021-09-14 | 龙迅半导体(合肥)股份有限公司 | 一种fec编解码模块 |
WO2023060865A1 (zh) * | 2021-10-15 | 2023-04-20 | 华为技术有限公司 | 编解码方法和编解码设备 |
WO2024148946A1 (zh) * | 2023-01-10 | 2024-07-18 | 华为技术有限公司 | 数据传输方法、装置、系统及计算机可读存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5717394A (en) * | 1993-02-10 | 1998-02-10 | Ricoh Company Ltd. | Method and apparatus for encoding and decoding data |
CN101174914A (zh) * | 2006-10-30 | 2008-05-07 | 华为技术有限公司 | 误码纠错系统及其发送装置、接收装置和误码纠错方法 |
CN101222297B (zh) * | 2008-01-31 | 2011-12-07 | 复旦大学 | 交织码和网络编码结合的数据分发方法 |
-
2008
- 2008-09-22 CN CN 200810222844 patent/CN101686104B/zh not_active Expired - Fee Related
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102170327A (zh) * | 2011-04-06 | 2011-08-31 | 烽火通信科技股份有限公司 | 超强前向纠错的硬件译码方法及装置 |
CN102170327B (zh) * | 2011-04-06 | 2014-01-22 | 烽火通信科技股份有限公司 | 超强前向纠错的硬件译码方法及装置 |
CN103873071B (zh) * | 2012-12-10 | 2016-12-21 | 华为技术有限公司 | 一种前向纠错编码、译码方法和装置、通信设备及系统 |
WO2017036416A1 (en) * | 2015-09-04 | 2017-03-09 | Huawei Technologies Co., Ltd. | Adaptive forward error correction (fec) in passive optical networks (pons) |
US9942003B2 (en) | 2015-09-04 | 2018-04-10 | Futurewei Technologies, Inc. | Adaptive forward error correction (FEC) in passive optical networks (PONs) |
CN107925422A (zh) * | 2015-09-04 | 2018-04-17 | 华为技术有限公司 | 无源光网络(pon)中的自适应前向纠错(fec) |
CN109597705A (zh) * | 2018-12-05 | 2019-04-09 | 中国人民解放军国防科技大学 | 抗单粒子翻转和单粒子瞬态的高速串行接口数据编解码方法 |
CN109597705B (zh) * | 2018-12-05 | 2022-02-08 | 中国人民解放军国防科技大学 | 抗单粒子翻转和单粒子瞬态的高速串行接口数据编解码方法 |
CN111769906A (zh) * | 2020-06-29 | 2020-10-13 | 中国人民解放军国防科技大学 | 一种自适应降低编码层和链路层处理延迟的数据传输方法及装置 |
CN111769906B (zh) * | 2020-06-29 | 2022-07-05 | 中国人民解放军国防科技大学 | 一种自适应降低编码层和链路层处理延迟的数据传输方法及装置 |
CN113395137A (zh) * | 2021-06-08 | 2021-09-14 | 龙迅半导体(合肥)股份有限公司 | 一种fec编解码模块 |
WO2023060865A1 (zh) * | 2021-10-15 | 2023-04-20 | 华为技术有限公司 | 编解码方法和编解码设备 |
WO2024148946A1 (zh) * | 2023-01-10 | 2024-07-18 | 华为技术有限公司 | 数据传输方法、装置、系统及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN101686104B (zh) | 2013-11-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101686104B (zh) | 一种前向纠错的编解码的方法、装置和系统 | |
US10320425B2 (en) | Staircase forward error correction coding | |
US6658605B1 (en) | Multiple coding method and apparatus, multiple decoding method and apparatus, and information transmission system | |
US10992416B2 (en) | Forward error correction with compression coding | |
US8136020B2 (en) | Forward error correction CODEC | |
US7246294B2 (en) | Method for iterative hard-decision forward error correction decoding | |
US8621316B2 (en) | Method and device for encoding of error correcting codes, and method and device for decoding of error correcting codes | |
US9450615B2 (en) | Multi-bit error correction method and apparatus based on a BCH code and memory system | |
WO2011026375A1 (zh) | 编码方法及装置、解码方法及装置 | |
WO2006085488A1 (ja) | 誤り訂正符号化装置及び誤り訂正復号装置 | |
US7231575B2 (en) | Apparatus for iterative hard-decision forward error correction decoding | |
JP4376905B2 (ja) | 誤り訂正符号化装置および誤り訂正復号装置 | |
EP1545011B1 (en) | Optimized interleaving of digital signals | |
KR101314232B1 (ko) | 에러 정정 코드의 부호화 및 복호화 방법 그리고 코덱 | |
WO2020183525A1 (ja) | 符号化装置、復号装置、及び誤り訂正装置 | |
JP2010200247A (ja) | デジタル伝送システム及びデジタル伝送方法 | |
JP2013070289A (ja) | 誤り訂正方法、誤り訂正装置、送信機、受信機及び誤り訂正プログラム | |
JP2023519407A (ja) | データ通信のためのコーディング方法および装置 | |
US8091012B2 (en) | System and method for decreasing decoder complexity | |
US20030106013A1 (en) | Architecture for multi-symbol encoding and decoding | |
Ma et al. | Introduction of FECs and its Applications on Internet & Wireless Communications |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20131106 Termination date: 20170922 |