CN101442313B - 数字通信过程中的编解码方法以及编码器、解码器 - Google Patents

数字通信过程中的编解码方法以及编码器、解码器 Download PDF

Info

Publication number
CN101442313B
CN101442313B CN2007101664781A CN200710166478A CN101442313B CN 101442313 B CN101442313 B CN 101442313B CN 2007101664781 A CN2007101664781 A CN 2007101664781A CN 200710166478 A CN200710166478 A CN 200710166478A CN 101442313 B CN101442313 B CN 101442313B
Authority
CN
China
Prior art keywords
polynomial
unit
multinomial
product term
error
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN2007101664781A
Other languages
English (en)
Other versions
CN101442313A (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.)
Guangdong Gao Xin Touchplus information Corp
Original Assignee
Huawei 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN2007101664781A priority Critical patent/CN101442313B/zh
Publication of CN101442313A publication Critical patent/CN101442313A/zh
Application granted granted Critical
Publication of CN101442313B publication Critical patent/CN101442313B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Error Detection And Correction (AREA)

Abstract

本发明实施例提供一种编解码方法、编码器和解码器。所述编码方法包括将所述待编码的信息组转换为信息多项式;根据所述信息多项式和生成多项式,获取校验多项式;根据所述校验多项式和信息多项式,得到编码后的码字;所述获取校验多项式过程中的乘积项计算包括:将乘积项转换为乘积多项式;使用替换多项式代替所述多项式中次幂高于乘积项比特位数的项;将替换后的多项式的系数序列作为乘积项的计算结果。通过本发明实施例提供的技术方案,能够在编解码过程节省逻辑资源,提高数据处理速度。

Description

数字通信过程中的编解码方法以及编码器、解码器
技术领域
本发明涉及数字通信领域,特别涉及一种数字通信过程中的编解码方法以及编码器、解码器。
背景技术
在数字通信过程中,信道受到干扰时,可能会出现发送信号与接收信号不匹配的情况。当某种通信系统要求较高的信号准确性时,便需要一种有效的检错纠错技术,对相应的错误信号进行纠错处理。因此,出现了各种不同的检错纠错技术。
其中,一种重要的错误检错纠错技术就是里德-所罗门(RS,Reed-Solomn)编解码技术。RS编解码技术一般是在微处理器中实现的。RS编解码技术是一种在有限域中进行运算的技术,例如伽罗华域GF(2m)。该技术是通过在一个数据块后面添加校验字节的方式,将其转换成一个较大的数据块。假定一个消息中包含了km bits,其生成多项式是n-1次的多项式(其中n>k)。当可以纠正t个错误时,则需要满足
Figure GSB00000437520700011
的约束。RS编解码过程中,加、减、乘、除的运算都是在伽罗华域中进行的。
以RS(255,239)为例,RS编码器对每个RS码字均产生16字节的校验字节。假定需要处理的消息中包含了239个字节m0,m1......m238,经RS编码器产生16个校验字节c0,c1,......c15
C(D)=M(D)D16 modG(D)是码字多项式;
Figure GSB00000437520700012
是数据多项式;
Figure GSB00000437520700013
是校验多项式;
Figure GSB00000437520700014
是生成多项式。
可以看出,C(D)是使用G(D)对M(D)D16取余的结果,该运算是在伽罗华域GF(28)中进行运算的。其中α是GF(28)中的基元,其本原多项式为:
x 8 ⊕ x 4 ⊕ x 3 ⊕ x 2 ⊕ 1 .
因此从上述RS编码过程中可以看出,在编码过程中需要多次在伽罗华域GF(28)中计算乘法αi×αj
现有技术中,对于在伽罗华域中所进行的乘法计算,通常使用查表的方式进行。以伽罗华域GF(28)为例,在内存中存储伽罗华域GF(28)元素列表,以及其反查表,共需要4k比特(bit)的RAM进行存储,伽罗华域GF(28)元素列表如表1所示:
表1伽罗华域GF(28)元素列表
Figure GSB00000437520700021
当需要计算乘法αi×αj时,首先从反查表中查表分别获取αi和αj的幂指i和j,然后计算m=(i+j)mod255,最后从伽罗华域元素列表中查找m所对应的相应的αm的值,从而获得αi×αj的结果αm。由此可以看出,在伽罗华域GF(28)中计算一次乘法需要三次查表运算。在RS译码器中也存在着同样的运算。
因此,当同时需要计算多个伽罗华域中的乘法时,如果串行处理,则需要等待,造成较大的数据处理延迟。例如,当一个RS码字有239个符号,处理一个RS码字需要进行255次移位处理,则处理一个RS码字共需要进行16*239次乘法处理。按照方案一进行处理时,RS编码器在处理一个RS码字时共需要进行16*239*3=11472次查表操作来进行乘法运算。如果并行处理,则需要在每个需要进行伽罗华域乘法运算的地方均维护这样的一个表,造成了内存空间的极大浪费。因此,按照现有技术的查表方式进行处理,RS编码器共需要4k*16=64k bits的内存空间存储乘法运算时所需要查找的表。当内存空间有限,则无法达到较高的数据处理速度;而当要求较高的数据处理速度时,需要耗费极大的内存空间来满足乘法运算的需求。
因此,在进行本发明创造过程中,发明人发现现有技术中至少存在如下问题:现有技术提供的RS编解码技术中,对于在伽罗华域中所进行的乘法计算,通常使用查表的方式进行,会加大数据的处理时延以及增加内存的开销。
发明内容
本发明实施例要解决的技术问题为提供一种编解码方法、编码器和解码器,能够在编解码过程节省逻辑资源并提高数据处理速度。
为解决上述技术问题,本发明实施例的目的是通过以下技术方案实现的:
本发明实施例提供一种数字通信过程中的编码方法,其包括:
接收表示待编码码源的信息组;
将所述待编码的信息组转换为信息多项式;
根据所述信息多项式,获取校验多项式,其获取过程中包括计算乘积项;
根据所述校验多项式和信息多项式,得到编码后的码字并通过数字通信信道发送;
其中,所述获取校验多项式过程中的计算乘积项包括:
将乘积项转换为乘积多项式;
使用替换多项式代替所述乘积多项式中次幂高于乘积项比特位数的项,得到替换后的多项式;
将所述替换后的多项式的系数序列作为乘积项的计算结果。
本发明实施例提供一种数字通信过程中的解码方法,其包括:
从数字通信信道接收待解码的码字;
根据接收到的待解码的码字求解伴随式,其求解过程中包括计算乘积项;
根据所述伴随式,确定差错定位多项式和差错值多项式,其中包括计算乘积项;
根据所述差错定位多项式和差错值多项式,得到误差多项式,其中包括乘积项的计算;
根据所述误差多项式和接收的待解码的码字,恢复出正确的码字;
其中,所述求解伴随式、确定差错定位多项式和差错值多项式、得到误差多项式过程中的计算乘积项包括:
将乘积项转换为乘积多项式;
使用替换多项式代替乘积多项式中次幂高于乘积项比特位数的项,得到替换后的多项式;
将所述替换后的多项式的系数序列作为乘法的计算结果。
本发明实施例提供一种编码器,其包括:
接收单元,用于接收待编码的信息组;
信息多项式单元,用于将所述接收单元所接收的待编码的信息组转换为信息多项式;
乘积项处理单元,用于提供乘积项的计算结果,其包括:转换单元,用于将乘积项转换为多项式;多项式乘法单元,用于将所述转换单元所得的多项式进行相乘,得到乘积多项式;替换单元,用于使用替换多项式代替所述多项式乘法单元相乘所得的多项式中次幂高于乘积项比特位数的项,得到替换后的多项式;乘积项结果生成单元,用于将经替换单元得到的替换后的多项式的系数序列作为乘积项的计算结果;
校验多项式单元,用于利用所述乘积项单元提供的计算结果,根据所述信息多项式单元所生成的信息多项式,获取校验多项式;
码字生成单元,用于根据所述校验多项式单元所生成的校验多项式和信息多项式单元所生成的信息多项式,得到编码后的码字。
本发明实施例提供一种解码器,包括用于接收待解码的码字的接收单元,根据接收单元所接收到的待解码的码字求解伴随式的伴随式单元,根据所述伴随式确定差错定位多项式和差错值多项式的差错定位多项式和差错值多项式单元,根据所述差错定位多项式确定差错位置的差错位置单元,根据所述差错值多项式以及差错位置单元确定的差错位置确定差错值的差错值单元,以及根据所述差错值和待解码的码字恢复出正确的码字的差错纠错单元,所述解码器还包括:
乘积项单元,用于提供乘积项的计算结果给伴随式单元、差错定位多项式和差错值多项式单元、差错位置单元以及差错值单元进行利用,所述乘积项单元包括:转换单元,用于将乘积项中的元素均转换为多项式;多项式乘法单元,用于将所述转换单元所得的多项式进行相乘,得到乘积多项式;替换单元,用于使用替换多项式代替所述多项式乘法单元相乘所得的乘积多项式中次幂高于乘积项比特位数的项,得到替换后的多项式;乘积项结果生成单元,用于将经替换单元得到的替换后的多项式的系数序列作为乘积项的计算结果。
本发明实施例提供一种乘积项装置,用于提供乘积项计算结果,其包括:
转换单元,用于将乘积项转换为多项式;
多项式乘法单元,用于将所述转换单元所得的多项式进行相乘;
替换单元,用于使用替换多项式代替所述多项式乘法单元相乘所得的多项式中次幂高于乘积项比特位数的项;乘积项结果生成单元,用于将经替换单元替换后的多项式的系数序列作为乘积项的计算结果。
通过本发明实施例提供的编解码方法、编码器和解码器,将编码、解码过程中的乘积项转换为多项式,并将多项式的系数序列作为乘积项的计算结果,能够减少对伽逻华域表的存储开销,因此节省了逻辑资源,并提高了数据处理速度。
附图说明
图1为本发明编码方法一个实施例的流程图;
图2为本发明解码方法一个实施例的流程图;
图3为本发明编码器一个实施例的结构图;
图4为本发明解码器一个实施例的结构图。
具体实施方式
本发明实施例提供一种编解码方法、编码器和解码器。为使本发明的技术方案更加清楚明白,以下参照附图并列举实施例,对本发明进一步详细说明。
请参照图1,为本发明编码方法一个实施例的流程图。具体过程包括:
步骤101:编码器接收待编码的信息组;
本实施例中,编码器为RS编码器,假设RS编码器所接收的待编码的信息组为cn-1,cn-2,...,c2t+1,c2t
步骤102:RS编码器将所述待编码的信息组转换为信息多项式;
RS编码器将所述待编码的信息组转换为信息多项式具体方式为:将所述待编码的信息组乘以一个多项式。
信息多项式为:d(x)=cn-1xn-1+cn-2xn-2+…+c2t+1x2t+1+c2tx2t
步骤103:根据所述信息多项式,得到校验多项式;
其具体包括:
获得生成多项式,其中包括计算乘积项;
使用生成多项式对信息多项式取余,得到校验多项式。
其中,生成多项式为
Figure GSB00000437520700061
元素α是本原多项式P(x)的根,本原多项式P(x)映射伽罗华域GF(28)的256个元素。p(x)=x8+x4+x3+x2+1。故,元素α为GF(28)的本原元素。因此,在获得生成多项式的过程中,需要在伽罗华域GF(28)中计算本原元素之间的乘积项:αi×αj
本实施例中αi×αj的计算过程包括:
步骤A:将乘积项中的元素转换为多项式,并将所述转换所得的多项式进行相乘,得到乘积多项式;
具体方式为:将伽罗华域GF(28)中的每个本原元素αi按照最高有效位(MSB,Most Significant Bit)到最低有效位(Least Significant Bit)的顺序进行表示;
具体表示形式为ai7ai6ai5ai4ai3ai2ai1ai0,采用多项式的形式表示则为αi=ai7x7+ai6x6+ai5x5+ai4x4+ai3x3+ai2x2+ai1x1+ai0
因此,αi×αj可以表示为:
αi×αj
=(ai7x7+ai6x6+ai5x5+ai4x4+ai3x3+ai2x2+ai1x+ai0)
×(aj7x7+aj6x6+aj5x5+aj4x4+aj3x3+aj2x2+aj1x+aj0)
=(ai7aj7)x14+(ai7aj6+ai6aj7)x13+(ai7aj5+ai6aj6+ai5aj7)x12
+(ai7aj4+ai6aj5+ai5aj6+ai4aj7)x11+(ai7aj3+ai6aj4+ai5aj5+ai4aj6+ai3aj7)x10
+(ai7aj2+ai6aj3+ai5aj4+ai4aj5+ai3aj6+ai2aj7)x9
                                                (1)
+(ai7aj1+ai6aj2+ai5aj3+ai4aj4+ai3aj5+ai2aj6+ai1aj7)x8
+(ai7aj0+ai6aj1+ai5aj2+ai4aj3+ai3aj4+ai2aj5+ai1aj6+ai0aj7)x7
+(ai6aj0+ai5aj1+ai4aj2+ai3aj3+ai2aj4+ai1aj5+ai0aj6)x6
+(ai5aj0+ai4aj1+ai3aj2+ai2aj3+ai1aj4+ai0aj5)x5
+(ai4aj0+ai3aj1+ai2aj2+ai1aj3+ai0aj4)x4+(ai3aj0+ai2aj1+ai1aj2+ai0aj3)x3
+(ai2aj0+ai1aj1+ai0aj2)x2+(ai1aj0+ai0aj1)x+(ai0aj0)
步骤B:使用替换多项式代替乘积多项式中次幂高于乘积项比特位数的项;
次幂高于乘积项比特位数的项为x8~x14,因此要用替换多项式代替比特位数的项为x8~x14的项。具体的替换多项式对照表请参照下表2:
表2替换多项式对照表
  元素   替换多项式值
  x8   x4+x3+x2+1
  x9   x5+x4+x3+x
  x10   x6+x5+x4+x2
  x11   x7+x6+x5+x3
  x12   x7+x6+x3+x2+1
  x13   x7+x2+x+1
  x14   x4+x+1
按照上述表2中元素与替换多项式值的对应关系,将替换多项式代入到公式(1)中,得到:
αi×αj
=(ai7aj7)(x4+x+1)+(ai7aj6+ai6aj7)(x7+x2+x+1)
+(ai7aj5+ai6aj6+ai5aj7)(x7+x6+x3+x2+1)
+(ai7aj4+ai6aj5+ai5aj6+ai4aj7)(x7+x6+x5+x3)
+(ai7aj3+ai6aj4+ai5aj5+ai4aj6+ai3aj7)(x6+x5+x4+x2)
+(ai7aj2+ai6aj3+ai5aj4+ai4aj5+ai3aj6+ai2aj7)(x5+x4+x3+x)
                                                        (2)
+(ai7aj1+ai6aj2+ai5aj3+ai4aj4+ai3aj5+ai2aj6+ai1aj7)(x4+x3+x2+1)
+(ai7aj0+ai6aj1+ai5aj2+ai4aj3+ai3aj4+ai2aj5+ai1aj6+ai0aj7)x7
+(ai6aj0+ai5aj1+ai4aj2+ai3aj3+ai2aj4+ai1aj5+ai0aj6)x6
+(ai5aj0+ai4aj1+ai3aj2+ai2aj3+ai1aj4+ai0aj5)x5
+(ai4aj0+ai3aj1+ai2aj2+ai1aj3+ai0aj4)x4+(ai3aj0+ai2aj1+ai1aj2+ai0aj3)x3
+(ai2aj0+ai1aj1+ai0aj2)x2+(ai1aj0+ai0aj1)x+(ai0aj0)
对公式(2)进行简化,得到:
α i * α j
= a i 7 a j 6 + a i 6 a j 7 + a i 7 a j 5 + a i 6 a j 6 + a i 5 a j 7 + a i 7 a j 4 + a i 6 a j 5 + a i 5 a j 6 + a i 4 a j 7 + a i 7 a j 0 + a i 6 a j 1 + a i 5 a j 2 + a i 4 a j 3 + a i 3 a j 4 + a i 2 a j 5 + a i 1 a j 6 + a i 0 a j 7 x 7
+ a i 7 a j 5 + a i 6 a j 6 + a i 5 a j 7 + a i 7 a j 4 + a i 6 a j 5 + a i 5 a j 6 + a i 4 a j 7 + a i 7 a j 3 + a i 6 a j 4 + a i 5 a j 5 + a i 4 a j 6 + a i 3 a j 7 + a i 6 a j 0 + a i 5 a j 1 + a i 4 a j 2 + a i 3 a j 3 + a i 2 a j 4 + a i 1 a j 5 + a i 0 a j 6 x 6
+ a i 7 a j 4 + a i 6 a j 5 + a i 5 a j 6 + a i 4 a j 7 + a i 7 a j 3 + a i 6 a j 4 + a i 5 a j 5 + a i 4 a j 6 + a i 3 a j 7 + a i 7 a j 2 + a i 6 a j 3 + a i 5 a j 4 + a i 4 a j 5 + a i 3 a j 6 + a i 2 a j 7 + a i 5 a j 0 + a i 4 a j 1 + a i 3 a j 2 + a i 2 a j 3 + a i 1 a j 4 + a i 0 a j 5 x 5
+ a i 7 a j 7 + a i 7 a j 3 + a i 6 a j 4 + a i 5 a j 5 + a i 4 a j 6 + a i 3 a j 7 + a i 7 a j 2 + a i 6 a j 3 + a i 5 a j 4 + a i 4 a j 5 + a i 3 a j 6 + a i 2 a j 7 + a i 7 a j 1 + a i 6 a j 2 + a i 5 a j 3 + a i 4 a j 4 + a i 3 a j 5 + a i 2 a j 6 + a i 1 a j 7 + a i 4 a j 0 + a i 3 a j 1 + a i 2 a j 2 + a i 1 a j 3 + a i 0 a j 4 x 4
+ a i 7 a j 5 + a i 6 a j 6 + a i 5 a j 7 + a i 7 a j 4 + a i 6 a j 5 + a i 5 a j 6 + a i 4 a j 7 + a i 7 a j 2 + a i 6 a j 3 + a i 5 a j 4 + a i 4 a j 5 + a i 3 a j 6 + a i 2 a j 7 + a i 7 a j 1 + a i 6 a j 2 + a i 5 a j 3 + a i 4 a j 4 + a i 3 a j 5 + a i 2 a j 6 + a i 1 a j 7 + a i 3 a j 0 + a i 2 a j 1 + a i 1 a j 2 + a i 0 a j 3 x 3
+ a i 7 a j 6 + a i 6 a j 7 + a i 7 a j 5 + a i 6 a j 6 + a i 5 a j 7 + a i 7 a j 3 + a i 6 a j 4 + a i 5 a j 5 + a i 4 a j 6 + a i 3 a j 7 + a i 7 a j 1 + a i 6 a j 2 + a i 5 a j 3 + a i 4 a j 4 + a i 3 a j 5 + a i 2 a j 6 + a i 1 a j 7 + a i 2 a j 0 + a i 1 a j 1 + a i 0 a j 2 x 2 - - - ( 3 )
+ a i 7 a j 7 + a i 7 a j 6 + a i 6 a j 7 + a i 7 a j 2 + a i 6 a j 3 + a i 5 a j 4 + a i 4 a j 5 + a i 3 a j 6 + a i 2 a j 7 + a i 1 a j 0 + a i 0 a j 1 x
+ a i 7 a j 7 + a i 7 a j 6 + a i 6 a j 7 + a i 7 a j 5 + a i 6 a j 6 + a i 5 a j 7 + a i 7 a j 1 + a i 6 a j 2 + a i 5 a j 3 + a i 4 a j 4 + a i 3 a j 5 + a i 2 a j 6 + a i 1 a j 7 + a i 0 a j 0
步骤C:将替换后的多项式的系数作为乘积项的计算结果。
将替换后得到的公式(3)中x7~x0的系数序列,即为乘积项αi×αj的计算结果。由于加法是二进制的,因此,每个系数均是1比特,其计算结果为系数的顺序排列。
利用乘积项αi×αj的计算结果得到生成多项式后,使用生成多项式对信息多项式取余,得到校验多项式。
步骤104:将所述待编码的信息组加上所述校验多项式,得到编码后的码字,即v(x)=d(x)+r(x)。
请参照图2,为本发明解码方法一个实施例的流程图。具体过程包括:
步骤201:译码器接收待解码的码字;
所述译码器所接收到的待解码的码字为编码器通过信道发送过来的码字。本实施例中,编码器发送的码子为:v(x)=v0+v1x+…+vn-1xn-1,由于发送过程中信道干扰而产生误码,译码器所接收的待解码码字为:r(x)=r0+r1x+…+rn-1xn-1
步骤202:根据所述待解码的码字求解伴随式;
定义2t个部分伴随式Si(0≤i≤2t-1)计算公式为:Si=r(λi)
根据译码器所接收的待解码码字r(x)=r0+r1x+…+rn-1xn-1,可以将Si(0≤i≤2t-1)转换成如下迭代计算公式式:
Si=(((r0λi+r1i+r2i...)λi+rn-1    (4)
其中,元素λ为GF(28)的本原元素,元素λ也可以用α表示。因此,在求解伴随多项式的过程中,需要在伽罗华域GF(28)中计算αi×αj
所述αi×αj的计算过程大致包括以下步骤:
步骤A:将乘积项转换为多项式;
步骤B:使用替换多项式代替多项式中次幂高于乘积项比特位数的项;
步骤C:将替换后的多项式的系数作为乘积项的计算结果。
每个步骤的具体计算方式与前述实施例中基本相同,这里不再进一步描述。
步骤203:根据所述伴随式,确定差错定位多项式Λ(x)和差错值多项式Ω(x);
差错定位多项式为:
Λ ( x ) = Π l = 1 v ( 1 + X l x ) = Λ v x v + Λ v - 1 x v - 1 + . . . + Λ 1 x + 1 - - - ( 5 )
所述差错定位多项式可以使用BM(Berkelamp-Massey)算法和欧几里德Euclidean(欧几里德)算法进行求解。下面以Euclidean算法为例进行说明:
由于差错定位多项式Λ(x)、差错值多项式Ω(x)与伴随多项式S(x)的关系如下:
x2tf(x)+S(x)Λ(x)=Ω(x)    (6)
因此,在伴随式S(x)已知且要求Ω(x)的阶数小于t的情况下,可以通过重复多次的多项式除法求得Λ(x),同时也得到Ω(x)。
其基本过程如下:
步骤A:用S(x)除x2t,得到余数r1(x)和商q1(x),若r1(x)的阶数小于t,则得解;否则继续下一步;
步骤B:用r1(x)除S(x),得到余数r2(x)和商q2(x),同样判断r2(x)的阶数小于t,则得解;否则继续下一步;
步骤C:用r2(x)除r1(x),做类似处理,直到余数的阶数小于t,得到最终的Λ(x)和Ω(x)。
在求解差错定位多项式Λ(x)和差错值多项式Ω(x)的过程中,需要多次使用除法,因此需要计算αij,可以首先查表获取αj的逆元素αn,然后将除法αij运算转换成逆元素之间的乘积项αi×αn运算,再采用与αi×αj相同的处理方式计算乘积项αi×αn的结果。
步骤204:根据所述差错定位多项式和差错值多项式,确定差错位置和差错值;
差错位置Xi可以通过使用Chien搜索算法求解Λ(x)=0的根得到。
差错值Yi可以通过Forney公式求得,计算公式如下:
Y i = - X i 1 - b Ω ( X i - 1 ) Λ ′ ( X i - 1 ) - - - ( 7 )
其中Λ′(x)=λ1+2λ2x+3λ3x2+…为Λ(x)的导数。
上述公式求解差错值的计算公式(8)中,需要在伽罗华域GF(28)中计算本原元素之间的乘积项αi×αj
所述αi×αj的计算过程大致包括以下步骤:
步骤A:将乘积项转换为多项式;
步骤B:使用替换多项式代替多项式中次幂高于乘积项比特位数的项;
步骤C:将替换后的多项式的系数作为乘积项的计算结果。
每个步骤的具体计算方式与前述实施例中基本相同,这里不再进一步描述。
步骤205:根据所述差错位置和差错值,得到误差多项式;
误差多项式e(x)为v(x)和r(x)之差,且e(x)=e0+e1x+…+ew-1xw-1,其中ei=ri-vi。假设接收码字存在v个错误,错误位置为i1,i2,...,iv,那么
误差多项式的计算公式为:
e ( x ) = e i 1 x i 1 + e i 2 x i 2 + · · · + e i v x iv - - - ( 8 )
步骤206:根据所述误差多项式和待解码的码字,恢复出正确的码字。
正确的码字计算公式为:
v(x)=r(x)-e(x)    (9)
因此,根据步骤201中译码器所接收的待解码的码字r(x)以及步骤205中得到的误差多项式e(x),可以恢复出正确的码字v(x)。
请参照图3,为本发明编码器一个实施例的结构图。所述编码器包括接收单元31、信息多项式单元32、乘积项单元33、校验多项式单元34、码字生成单元35。
所述接收单元31,用于接收待编码的信息组;所述信息多项式单元32,用于将所述接收单元31所接收的待编码的信息组转换为信息多项式;所述乘积项单元33,用于提供乘积项的计算结果给校验多项式单元34;所述校验多项式单元34,用于利用所述乘积项单元33提供的计算结果,根据所述信息多项式32所生成的信息多项式,获取校验多项式;所述码字生成单元35,用于根据所述校验多项式单元34所生成的校验多项式和信息多项式单元32所生成的信息多项式,得到编码后的码字。
其中,所述乘积项单元33包括转换单元331、多项式乘法单元332、替换单元333、乘积项结果生成单元334。
所述转换单元331,用于将乘积项中的元素均转换为多项式;所述多项式乘法单元332,用于将所述转换单元331所得的多项式进行相乘,得到乘积多项式;所述替换单元333,用于使用替换多项式代替所述多项式乘法单元332所得的多项式中次幂高于乘积项比特位数的项;所述乘积项结果生成单元334,用于将经替换单元333替换后的多项式的系数作为乘积项的计算结果。
所述校验多项式单元34包括生成多项式单元341、取余单元342。
所述生成多项式单元341,用于利用所述乘积项单元33提供的计算结果,获得生成多项式;所述取余单元342,用于利用所述乘积项单元33提供的计算结果,使用生成多项式对信息多项式取余,得到校验多项式。
请参照图4,为本发明解码器一个实施例的结构图。所述解码器包括接收单元41、乘积项单元42、伴随式单元43、差错定位多项式和差错值多项式单元44、差错位置单元45、差错值单元46以及差错纠错单元47。
所述接收单元41,用于接收待解码的码字;所述乘积项单元42,用于提供乘积项的计算结果给伴随式单元43、差错定位多项式和差错值多项式单元44、差错位置单元45、差错值单元46;所述伴随式单元43,用于利用所述乘积项单元42提供的计算结果,根据接收单元41所接收到的待解码的码字求解伴随式;所述差错定位多项式和差错值多项式单元44,用于利用所述乘积项单元42提供的计算结果,根据所述伴随式单元43所得的伴随式,确定差错定位多项式和差错值多项式;所述差错位置单元45,用于利用所述乘积项单元42提供的计算结果,根据所述差错定位多项式和差错值多项式单元44所得的差错定位多项式,确定差错位置;所述差错值单元46,用于利用所述乘积项单元42提供的计算结果,根据所述差错定位多项式和差错值多项式单元44所得的差错值多项式以及差错位置单元45确定的差错位置,确定差错位置对应的差错值;所述差错纠错单元47,根据所述差错值单元46所得的差错值和接收单元41接收的待解码的码字,恢复出正确的码字。
其中,所述乘积项单元42包括转换单元421、多项式乘法单元422、替换单元423、乘积项结果生成单元424。
所述转换单元421,用于将乘积项中的元素均转换为多项式;所述多项式乘法单元422,用于将所述转换单元421所得的多项式进行相乘,得到乘积多项式;所述替换单元423,用于使用替换多项式代替所述多项式乘法单元422所得的乘积多项式中次幂高于乘积项比特位数的项;所述乘积项结果生成单元424,用于将经替换单元423替换后的多项式的系数作为乘积项的计算结果。
本实施例中,由一个乘积项单元向其他各个单元如伴随式单元、差错定位多项式和差错值多项式单元、差错位置单元、差错值单元提供乘积项计算结果,也可以各个单元各自集成一个乘积项单元来提供乘积项计算结果。
另外,本发明实施例中的乘积项计算方法以及乘积项装置不仅适用于RS编解码过程中,也适用于其他需要进行有限域乘法或者类似有限域乘法处理的应用场景中,例如在卫星通讯、数字电视传输过程中对音频、视频等信号流所进行的差错控制等。
通过本发明实施例提供的编解码方法、编码器和解码器、乘积项装置,通过本发明实施例提供的编解码方法、编码器和解码器,将编码、解码过程中的乘积项转换为多项式,并将多项式的系数作为乘积项的计算结果,能够减少对伽逻华域表的存储开销,因此节省了逻辑资源,并提高了数据处理速度。
以上对本发明实施例所提供的一种编解码方法、编码器和解码器、乘积项装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明所揭示的技术方案;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种数字通信过程中的编码方法,其特征在于,所述方法包括:
接收表示待编码码源的信息组;
将所述待编码的信息组转换为信息多项式;
根据所述信息多项式,获取校验多项式,其获取过程中包括计算乘积项;
根据所述校验多项式和信息多项式,得到编码后的码字并通过数字通信信道发送;
其中,所述获取校验多项式过程中的计算乘积项包括:
将乘积项转换为乘积多项式;
使用替换多项式代替所述乘积多项式中次幂高于乘积项比特位数的项,得到替换后的多项式;
将所述替换后的多项式的系数序列作为乘积项的计算结果。
2.根据权利要求1所述的编码方法,其特征在于,所述编码方式包括里德-所罗门(RS,Reed-Solomn)编码。
3.根据权利要求1所述的编码方法,其特征在于,根据所述信息多项式,得到校验多项式的具体包括:
获得生成多项式,其中包括计算乘积项;
使用生成多项式对信息多项式取余,得到校验多项式。
4.根据权利要求1所述的编码方法,其特征在于,所述将乘积项转换为乘积多项式包括:
将乘积项中的元素转化为多项式;
将所述转化所得的多项式进行相乘,得到乘积多项式。
5.一种数字通信过程中的解码方法,其特征在于,所述方法包括:
从数字通信信道接收待解码的码字;
根据接收到的待解码的码字求解伴随式,其求解过程中包括计算乘积项;
根据所述伴随式,确定差错定位多项式和差错值多项式,其中包括计算乘积项;
根据所述差错定位多项式和差错值多项式,得到误差多项式,其中包括乘积项的计算;
根据所述误差多项式和接收的待解码的码字,恢复出正确的码字;
其中,所述求解伴随式、确定差错定位多项式和差错值多项式、得到误差多项式过程中的计算乘积项包括:
将乘积项转换为乘积多项式;
使用替换多项式代替乘积多项式中次幂高于乘积项比特位数的项,得到替换后的多项式;
将所述替换后的多项式的系数序列作为乘法的计算结果。
6.根据权利要求5所述的解码方法,其特征在于,根据所述差错定位多项式和差错值多项式,得到误差多项式具体包括:
根据所述差错定位多项式和差错值多项式,确定差错位置和差错值,其中包括本原元素之间的乘积项计算和本原元素转换所得的逆元素之间的乘积项计算;
根据所述差错位置和差错值,得到误差多项式。
7.根据权利要求5所述的解码方法,其特征在于,所述确定差错定位多项式和差错值多项式过程中的乘积项计算为本原元素转换所得的逆元素之间的乘积项计算。
8.一种编码器,其特征在于,所述编码器包括:
接收单元,用于接收待编码的信息组;
信息多项式单元,用于将所述接收单元所接收的待编码的信息组转换为信息多项式;
乘积项处理单元,用于提供乘积项的计算结果,其包括:转换单元,用于将乘积项转换为多项式;多项式乘法单元,用于将所述转换单元所得的多项式进行相乘,得到乘积多项式;替换单元,用于使用替换多项式代替所述多项式乘法单元相乘所得的多项式中次幂高于乘积项比特位数的项,得到替换后的多项式;乘积项结果生成单元,用于将经替换单元得到的替换后的多项式的系数序列作为乘积项的计算结果;
校验多项式单元,用于利用所述乘积项单元提供的计算结果,根据所述信息多项式单元所生成的信息多项式,获取校验多项式;
码字生成单元,用于根据所述校验多项式单元所生成的校验多项式和信息多项式单元所生成的信息多项式,得到编码后的码字并通过数字通信信道发送。
9.根据权利要求8所述的编码器,其特征在于,所述校验多项式单元包括:
生成多项式单元,用于利用所述乘积项单元提供的计算结果,获得生成多项式;
取余单元,用于利用所述乘积项单元提供的计算结果,使用生成多项式对信息多项式取余,得到校验多项式。
10.一种解码器,包括用于从数字通信信道接收待解码的码字的接收单元,根据接收单元所接收到的待解码的码字求解伴随式的伴随式单元,根据所述伴随式确定差错定位多项式和差错值多项式的差错定位多项式和差错值多项式单元,根据所述差错定位多项式确定差错位置的差错位置单元,根据所述差错值多项式以及差错位置单元确定的差错位置确定差错值的差错值单元,以及根据所述差错值和待解码的码字恢复出正确的码字的差错纠错单元,其特征在于,所述解码器还包括:
乘积项单元,用于提供乘积项的计算结果给伴随式单元、差错定位多项式和差错值多项式单元、差错位置单元以及差错值单元进行利用,所述乘积项单元包括:转换单元,用于将乘积项中的元素均转换为多项式;多项式乘法单元,用于将所述转换单元所得的多项式进行相乘,得到乘积多项式;替换单元,用于使用替换多项式代替所述多项式乘法单元相乘所得的乘积多项式中次幂高于乘积项比特位数的项,得到替换后的多项式;乘积项结果生成单元,用于将经替换单元得到的替换后的多项式的系数序列作为乘积项计算结果。
CN2007101664781A 2007-11-20 2007-11-20 数字通信过程中的编解码方法以及编码器、解码器 Expired - Fee Related CN101442313B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2007101664781A CN101442313B (zh) 2007-11-20 2007-11-20 数字通信过程中的编解码方法以及编码器、解码器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2007101664781A CN101442313B (zh) 2007-11-20 2007-11-20 数字通信过程中的编解码方法以及编码器、解码器

Publications (2)

Publication Number Publication Date
CN101442313A CN101442313A (zh) 2009-05-27
CN101442313B true CN101442313B (zh) 2011-05-11

Family

ID=40726596

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007101664781A Expired - Fee Related CN101442313B (zh) 2007-11-20 2007-11-20 数字通信过程中的编解码方法以及编码器、解码器

Country Status (1)

Country Link
CN (1) CN101442313B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101908894B (zh) * 2009-06-08 2013-03-20 中兴通讯股份有限公司 一种多编码模式的编码实现系统及方法
CN101695015B (zh) * 2009-10-30 2013-01-16 烽火通信科技股份有限公司 一种用于epon系统的rs译码器及译码方法
RU2585992C2 (ru) * 2012-01-11 2016-06-10 Шэньчжэнь Хэк Телеком Текнолоджи Ко., Лтд. Система и способ для беспроводной связи
CN105024707B (zh) * 2015-07-31 2018-05-11 福建联迪商用设备有限公司 一种rs纠错解码方法
CN108628698B (zh) * 2018-05-08 2019-11-05 华为技术有限公司 计算crc编码的方法和装置
CN113296999B (zh) * 2021-05-20 2022-11-11 山东云海国创云计算装备产业创新中心有限公司 一种raid6编码方法及编码电路

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5832002A (en) * 1991-09-20 1998-11-03 Abb Signal Ab Method for coding and decoding a digital message
CN1447528A (zh) * 2003-04-18 2003-10-08 清华大学 一种和rs码等效的编码以及其快速编译码的算法
CN1599262A (zh) * 2004-08-06 2005-03-23 南京邮电学院 宽带无线接入系统中里德索洛门卷积级联码的实现方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5832002A (en) * 1991-09-20 1998-11-03 Abb Signal Ab Method for coding and decoding a digital message
CN1447528A (zh) * 2003-04-18 2003-10-08 清华大学 一种和rs码等效的编码以及其快速编译码的算法
CN1599262A (zh) * 2004-08-06 2005-03-23 南京邮电学院 宽带无线接入系统中里德索洛门卷积级联码的实现方法

Also Published As

Publication number Publication date
CN101442313A (zh) 2009-05-27

Similar Documents

Publication Publication Date Title
CA3193950C (en) Forward error correction with compression coding
CN101442313B (zh) 数字通信过程中的编解码方法以及编码器、解码器
CN101277119B (zh) 里德所罗门码解码器硬件复用方法及其低硬件复杂度解码装置
US20110004812A1 (en) Coder-decoder and method for encoding and decoding an error correction code
CN107239362B (zh) 一种并行crc校验码的计算方法及系统
CN101779379B (zh) 使用通用级联码(gcc)进行编码和解码
KR101314232B1 (ko) 에러 정정 코드의 부호화 및 복호화 방법 그리고 코덱
CN101567696B (zh) 一种参数可变的bch码编码器及译码器
CN101686104A (zh) 一种前向纠错的编解码的方法、装置和系统
CN102820892A (zh) 一种用于并行bch编码的电路、编码器及方法
US7458007B2 (en) Error correction structures and methods
US7398456B2 (en) Information encoding by shortened Reed-Solomon codes
CN100417031C (zh) 宽带无线接入系统中里德索洛门卷积级联码的实现方法
CN108471315B (zh) 一种纠删译码方法及装置
US9287898B2 (en) Method and circuit for shortening latency of Chien'S search algorithm for BCH codewords
CN101873143A (zh) 一种rs纠错码解码器中的伴随式计算电路及其计算方法
KR20140074600A (ko) 비씨에이치 디코더, 이를 포함하는 메모리 시스템 및 디코딩 방법
CN100440738C (zh) BCH编码中Galois扩域运算的快速实现方法
US9032277B1 (en) Parallel low and asymmetric rate Reed Solomon coding
US7287207B2 (en) Method and apparatus for computing parity characters for a codeword of a cyclic code
CN104917535A (zh) 用于分组码的高阶伴随式计算器和计算高阶伴随式的方法
CN1134897C (zh) 里德-索罗门码的快速译码方法及编译码器
CN101626250A (zh) 一种对具备单个纠错能力的Reed-Solomon解码器的集成电路实现方法
RU2282307C2 (ru) Способ синдромного декодирования для сверточных кодов
CN102904675B (zh) 一种cmmb中ldpc码信息比特重新排序装置和方法

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
TR01 Transfer of patent right

Effective date of registration: 20180717

Address after: 511400 room 204-1, building 1, Guangdong Pharmaceutical University, No. 280 outer ring road, Panyu District, Guangzhou, Guangdong.

Patentee after: Guangdong Gao Xin Touchplus information Corp

Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Patentee before: Huawei Technologies Co., Ltd.

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: 20110511

Termination date: 20181120