CN100395974C - 译码数据字的方法 - Google Patents

译码数据字的方法 Download PDF

Info

Publication number
CN100395974C
CN100395974C CNB2004100741306A CN200410074130A CN100395974C CN 100395974 C CN100395974 C CN 100395974C CN B2004100741306 A CNB2004100741306 A CN B2004100741306A CN 200410074130 A CN200410074130 A CN 200410074130A CN 100395974 C CN100395974 C CN 100395974C
Authority
CN
China
Prior art keywords
data word
result
word
error correction
multinomial
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
CNB2004100741306A
Other languages
English (en)
Other versions
CN1607759A (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.)
Alcatel CIT SA
Alcatel Lucent NV
Original Assignee
Alcatel NV
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 Alcatel NV filed Critical Alcatel NV
Publication of CN1607759A publication Critical patent/CN1607759A/zh
Application granted granted Critical
Publication of CN100395974C publication Critical patent/CN100395974C/zh
Expired - Fee Related 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/65Purpose and implementation aspects
    • H03M13/6502Reduction of hardware complexity or efficient processing
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/1525Determination and particular use of error location polynomials
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/3988Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes for rate k/n convolutional codes, with k>1, obtained by convolutional encoders with k inputs and n outputs
    • 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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/41Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Error Detection And Correction (AREA)

Abstract

本发明公开了一种方法,用于对经无线通信信道传输的接收数据字(r)进行译码,相应发送的信息消息(m)被编码为码字(c),该方法包括以下步骤:用奇偶校验矩阵(H(x))乘以接收的数据字,当乘积结果为0时,则对接收数据字进行代数译码而无需纠错,否则通过估计传输差错进行纠错,从接收数据字中减去估计的差错,并对相减结果执行代数译码,其中R.Ht用于标识潜在差错的大致位置,并且维特比算法仅在这些位置应用,从而避免在无差错区域的重复。

Description

译码数据字的方法
技术领域
本发明涉及译码领域,尤其涉及但不限于维特比(Viterbi)译码和前向纠错。
背景技术
维特比算法是卷积码译码的一种常用方法。维特比算法本质上是进行最大似然译码;其可以利用码网格(code trellis)内的特殊结构来减少计算量。与蛮力计算(brute-force)译码相比,维特比译码的优势在于,维特比译码器的复杂性与码字序列内的符号数目无关。
该算法包括计算相似性的规则,或者某时间的接收信号和此时进入各个状态的所有网格路径间的距离。维特比算法不会考虑那些不可能作为最大似然选择侯选者的网格路径。当两条路径达到相同的状态时,选择具有最佳长度的路径,该路径称为幸存(surviving)路径。尽早丢弃不可能的路径降低了译码的复杂性。但维特比算法的计算量仍然比较大。
此外,维特比卷积译码算法用于前向纠错。前向纠错(FEC)的目的是通过向经信道传输的数据增加一些冗余信息,提高信道的容量。增加该冗余信息的过程称为信道编码。卷积编码是信道编码的主要方式。卷积编码处理一串数据,同时处理一位或几位。利用维特比译码进行卷积编码的FEC技术特别适用于无线通信信道。
本发明的目的是提供一种对接收的数据字进行译码的改进方法。
发明内容
本发明的这些目的和其他目的通过应用各个独立权利要求中限定的特征基本得以实现。本发明的优选实施方式在从属权利要求中给出。
本发明首先基于当接收数据字时并不总是需要纠错译码的事实。为了确定纠错译码是否需要,检查接收的数据字是否无误(或具有不可检测的差错)或者信息消息是否有恢复的机会,即接收的数据字中是否有太多的差错。
如果接收的数据字没有差错或有不可检测的差错,则进行译码而无需预先纠错。如果信息消息是不可恢复的,则该帧在译码前被丢弃。
然而,在大多数情况下,必须对帧进行译码。在这种情况下,复杂性的降低是通过进行FEC实现的,其所用的方式比传统译码更高效。维特比算法用于估计传输误差而不仅是信息消息。采用这类译码可以避免在无差错区域内大量状态间的重复。
这种方法的优势为,在确定了接收的数据字没有差错、有不可检测的差错或太多差错的情况下,可以避免计算量很大的纠错过程。
这种方法的优势还有,当需要FEC时,通过避免维特比译码时大部分状态间的重复,将复杂性大大降低。
确定是否需要纠错的一个方法是基于奇偶校验矩阵。奇偶校验矩阵在编码理论中还可以称为校验矩阵或控制矩阵。编码C的奇偶校验矩阵H具有生成矩阵G,满足GHt=0,如现有技术中所知。
根据本发明的优选实施方式,针对给定的编码方案一次计算得到奇偶校验矩阵,并存储在接收器中。在数据字被接收时,将数据字与预先计算得到的奇偶校验矩阵相乘,以便确定是否需要进行纠错。
根据本发明的另一优选实施方式,接收的数据字与奇偶校验矩阵相乘的结果用来确定是否需要进行纠错。
●如果接收数据字与奇偶校验矩阵相乘结果的非零系数的数目为0,则接收数据字无误(或者说差错是不可检测的)而不需要纠错。
●如果接收数据字与奇偶校验矩阵相乘结果的非零系数的数目大于某个阈值,由于接收数据字被认为是不可纠错的,因此不进行纠错和译码。这样做的优点在于避免对不可纠错数据字进行无用的处理。
然而,如果FEC必须执行,则传统的维特比算法可以用来估计原始信息消息。
然而,如果FEC必须执行,维特比算法可以用来估计传输差错而不仅是信息消息。接收数据字与奇偶校验矩阵的相乘结果给出了潜在差错的大致位置,并且维特比算法仅仅适用于这些标识的区域,从而避免在无差错区域的大量重复。
最后将估计的传输差错从接收的数据字中减去,并且采用代数译码估计发送的信息消息。
确定纠错是否需要以及快速纠错过程是基于奇偶校验矩阵,其能够针对任意卷积编码速率,如1/2、1/3、2/3的卷积编码速率工作(随后将有进一步举例)。然而,在卷积编码速率为1/2的情况下,一些简单的多项式处理也能够得到接收数据字与奇偶校验矩阵相乘的结果。事实上,可以示出,在卷积编码速率为1/2的情况下,接收数据字与奇偶校验矩阵的相乘结果也可通过使用在附录3中描述的简单多项式处理而得到。
附图说明
下面,将参考附图对本发明的优选实施方式进行更加详细的描述,其中:
图1是通信系统的方框图,
图2示出本发明方法的实施方式的流程示意图。
图3示出在硬件译码器输入情况下,速率为1/3的卷积码的复杂性的降低。
图4示出在软件译码器输入情况下,速率为1/3的卷积码的复杂性的降低。
图5示出在硬件译码器输入情况下和软件译码器输入情况下,速率为1/3的卷积码的性能的下降。
图6示出在硬件译码器输入情况下,速率为2/3的卷积码的复杂性的降低。
图7示出在软件译码器输入情况下,速率为2/3的卷积码的复杂性的降低。
图8示出在硬件译码器输入情况下和软件译码器输入情况下,速率为2/3的卷积码的性能的下降。
具体实施方式
图1示出了通信系统,该通信系统具有发送器1,用于通过信道3发送信息消息m1,m2,...,mk给接收器2。发送器1包括编码器4,用于通过生成多项式矩阵G={gij}进行信息消息编码,以便提供经编码的码字c1,c2,...cn。注意到,信息消息数目k和编码码字数目n可以是任意的,即系统工作在不同的卷积码速率k/n。
经编码的码字c1,c2,...cn在有噪信道3上传输。在有噪信道3上的传输导致差错e1,e2,...en的迭加。结果接收器2接收的消息为r1,r2,...rn,其中
r1=c1+e1
r2=c2+e2
...
rn=cn+en
其中
c1=g11m1+g12m2+...+g1kmk
c2=g21m1+g22m2+...+g2kmk
...
cn=gn1m1+gn2m2+...+gnkmk
接收器2的译码器5具有纠错能力,以便从接收信息中消除差错向量{e1,e2,...,en},得到原始的信息消息。
可以通过数学式示出,具有n个等式和k个未知多项式即m1,m2,...,mk的上述系统可以分为:
●通过代数译码,为得到k个未知多项式m1,m2,...,mk所必须的k个等式。例如:
c1=g11m1+g12m2+...+g1kmk    m1=p11c1+p12c2+...+p1kck
c2=g21m1+g22m2+...+g2kmk  →m2=p21c1+p22c2+...+p2kck
...                 ...
ck=gk1m1+gk2m2+...+gkkmk    mk=pk1c1+pk2c2+...+pkkck
其中多项式pij是生成多项式的线性组合。
●n-k个“控制等式”,与m1,m2,...,mk无关:
c1h11+c2h21+...+cnhn1=0
c1h12+c2h22+...+cnhn2=0
...
c1h1,n-k+c2h22+...+cnhn,n-k=0
其中多项式hij是生成多项式的线性组合。多项式hij的例子在附录1中提供。这里的n-k个控制等式可以用一个矩阵等式表示。该等式以下被称为“控制等式”:
CH t = 0 , C t = c 1 c 2 · · c n , H t = h 11 h 12 · · · h 1 , n - k h 21 h 22 · · · h 2 , n - k h n 1 h n 2 · · · h n , n - k
理论上,至少有一个矩阵H如:
Figure C20041007413000082
H或Ht通常被称为奇偶校验矩阵
由于复杂性的原因(参见附录2),优选地是选择具有最小阶数的奇偶校验矩阵。我们称qik为多项式hik(x)的阶数;当生成多项式符合以下特性:
{gij(x);1≤i≤N}对于所有j不具有公因子,(1)
则可以看到,存在多项式集合{hik}如 Σ k = 1 N - K q k = M - 1 , 其中 q k = Max 1 ≤ i ≤ N ( q ik ) , 并且M是编码的限制长度(生成多项式的最大长度)。通过搜索具有最小阶数的多项式hik(x)得到这些多项式,其符合H(x).G′(x)=0的系统。
注意到,如果j列不符合特性(1),则通过用多项式{gij(x);1≤i≤N}的最大公因子去除该列,可以得到具有最小存储量的编码。
控制等式用来估计差错矢量。设E′=(e′1,...,e′n)′为总差错估计矢量,R=(r1,...,rn)′为总信息消息矢量。
相应的译码方法在图2中通过例子示出。
步骤20中,接收器接收数据字。步骤21中,该数据字与奇偶校验矩阵相乘。步骤22中,确定乘积结果的所有系数是否全部为0。如果是这种情况,则控制跳转到步骤23,对接收的数据字进行无纠错的译码。
否则,控制跳转到步骤24,确定乘积结果的非0系数的数目是否小于预定阈值。如果是这种情况,则在步骤25对接收数据字进行纠错,以去除差错矢量。接着,经过纠错的数据字在步骤26进行译码。
如果在步骤24,确定乘积结果的非0系数的数目超过预定阈值,则控制跳转到步骤27,确定该数据字为不可恢复的。
该方法实现了如下算法:
1.计算RH′
2.如果RH′的非0系数数目大于预定阈值,则丢弃该帧,跳转到4,
否则
如果RH′为0:
E′=0,跳转到3
否则
使用在附录2中描述的快速前向纠错算法,得到E′,如:
1.(R+E′)H′=0
2.E′有最小的权值(最大似然)
跳转到3
3.代数译码,例如解出线性系统以估计多项式m1,m2,...,mk
例如:
r1=g11m1+g12m2+...+g1kmk+e′1
r2=g21m1+g22m2+...+g2kmk+e′2
...
rk=gk1m1+gk2m2+...+gkkmk+e′k
4.结束
在以下几个步骤中降低复杂性:
●如果估计帧的差错概率(RH′的非零系数数目相关)超过预定阈值,则该帧被恢复的可能性极低。在译码前将其丢弃。
●如果RH′为0,则原始误码率为0,或者差错是不可检测的,则不需要进行FEC。
●在帧必须进行译码时,RH′用来降低译码复杂性。维特比算法用于估计差错矢量,而不是信息消息(附录2)。在这种情况下,可以避免某些不必要的重复(附录2)。
采用所提出的算法,在大量降低复杂性的同时,几乎可以得到最佳的性能。图3-8示出在硬件译码器输入情况下和软件译码器输入情况下,对于速率为1/3和2/3的两种卷积码的复杂性的降低和性能的下降。复杂性标准为所执行的“加-比-选(Add Compare Select,ACS)”操作数目与传统维特比的ACS数目的百分比。性能标准为译码器输出端的帧误码率(FER)。
速率为1/3的卷积码:
g 11 ( x ) = 1 + x 2 + x 3 g 21 ( x ) = 1 + x + x 3 g 31 ( x ) = 1 + x + x 2 + x 3 H t = x 1 + x 2 1 1 + x 2 1 + x x
G=(1+x2+x3  1+x+x3  1+x+x2+x3)
在硬件和软件情况下,当SNR高于3.5dB,所需的ACS小于10%。此外,硬件情况下所需ACS的最大数目始终低于43%,相应软件情况为65%。所有情况下,性能的降低保持在低于0.5dB。
速率为2/3的卷积码:
g 11 ( x ) = 1 + x g 21 ( x ) = x g 31 ( x ) = 1 + x g 12 ( x ) = x g 22 ( x ) = 1 g 32 ( x ) = 1 H t = 1 1 + x 2 1 + x + x 2 G = 1 + x x 1 + x x 1 1
在硬件和软件情况下,当SNR高于4dB,所需的ACS小于10%。此外,硬件情况下所需ACS的最大数目始终低于12%,相应软件情况为27%。硬件情况下性能的降低保持在低于0.5dB,相应软件情况为低于0.3dB。
标号列表
--------------------------------------------------------------
1发送器
2接收器
3信道
4编码器
5译码器
200接收器
202程序模块
204程序模块
208程序模块
209程序模块
212程序模块
附录1:控制矩阵举例
多项式“p(X)”在下边称为“p”
由于所有多项式p的系数属于{0,1},所以我们有:
p+p=0
1/2卷积码:
C 1 = g 1 m 1 C 2 = g 2 m 1
⇔ g 2 C 1 = g 2 g 1 m 1 g 1 C 2 = g 1 g 2 m 1
⇒ g 2 C 1 + g 1 C 2 = g 2 g 1 m 1 + g 2 g 1 m 1
⇒ g 2 C 1 + g 1 C 2 = 0
CHt=0, C t = C 1 C 2 ,
H t = g 2 g 1
3/5卷积码:
C 1 = g 11 m 1 + g 12 m 2 + g 13 m 3 C 2 = g 21 m 1 + g 22 m 2 + g 23 m 3 C 3 = g 31 m 1 + g 32 m 2 + g 33 m 3 C 4 = g 41 m 1 + g 42 m 2 + g 43 m 3 C 5 = g 51 m 1 + g 52 m 2 + g 53 m 3
⇔ C 1 = g 11 m 1 + g 12 m 2 + g 13 m 3 g 21 C 1 + g 11 C 2 = ( g 11 g 22 + g 12 g 21 ) m 2 + ( g 21 g 13 + g 23 g 11 ) m 3 g 31 C 1 + g 11 C 3 = ( g 11 g 32 + g 12 g 31 ) m 2 + ( g 31 g 13 + g 33 g 11 ) m 3 g 41 C 1 + g 11 C 4 = ( g 11 g 42 + g 12 g 41 ) m 2 + ( g 41 g 13 + g 43 g 11 ) m 3 g 51 C 1 + g 51 C 3 = ( g 11 g 52 + g 12 g 51 ) m 2 + ( g 51 g 13 + g 53 g 11 ) m 3
⇔ C 1 = G 11 m 1 + G 12 m 2 + G 13 m 3 g 21 C 1 + g 11 C 2 = G 22 m 2 + G 23 m 3 ( g 31 C 1 + g 11 C 3 ) ( G 22 ) + ( G 32 ) ( g 21 C 1 + g 11 C 2 ) = G 33 m 3 ( g 41 C 1 + g 11 C 4 ) ( G 22 ) + ( G 42 ) ( g 21 C 1 + g 11 C 2 ) = G 43 m 3 ( g 51 C 1 + g 11 C 5 ) ( G 22 ) + ( G 52 ) ( g 21 C 1 + g 11 C 2 ) = G 53 m 3
其中:
G11=g11;G12=g12;G12=g12
G22=g11g22+g12g21;G23=g21g13+g23g11
G32=g11g32+g12g31;G42=g11g42+g12g41;G52=g11g52+g12g51
G33=(g11g22+g12g21)(g31g13+g33g11)+(g21g13+g23g11)(g11g32+g12g31)
G43=(g11g22+g12g21)(g41g13+g43g11)+(g21g13+g23g11)(g11g42+g12g41)
G53=(g11g22+g12g21)(g51g13+g53g11)+(g21g13+g23g11)(g11g52+g12g51)
⇔ C 1 = G 11 m 1 + G 12 m 2 + G 13 m 3 g 21 C 1 + g 11 C 2 = G 22 m 2 + G 23 m 3 ( g 31 C 1 + g 11 C 3 ) ( G 22 ) + ( G 32 ) ( g 21 C 1 + g 11 C 2 ) = G 33 m 3 ( ( g 41 C 1 + g 11 C 4 ) ( G 22 ) + ( G 42 ) ( g 21 C 1 + g 11 C 2 ) ) G 33 + ( ( g 31 C 1 + g 11 C 3 ) ( G 22 ) + ( G 32 ) ( g 21 C 1 + g 11 C 2 ) ) G 43 = 0 ( ( g 51 C 1 + g 11 C 5 ) ( G 22 ) + ( G 52 ) ( g 21 C 1 + g 11 C 2 ) ) G 33 + ( ( g 31 C 1 + g 11 C 3 ) ( G 22 ) + ( G 32 ) ( g 21 C 1 + g 11 C 2 ) ) G 53 = 0
⇒ ( ( g 41 G 22 + g 21 G 42 ) G 33 + ( g 31 G 22 + g 21 G 32 ) G 43 ) C 1 + ( g 11 G 42 G 33 + g 11 G 32 G 43 ) C 2 + ( g 11 G 22 G 43 ) C 3 + ( g 11 G 22 G 33 ) C 4 + ( 0 ) C 5 = 0 ( ( g 51 G 22 + g 21 G 52 ) G 33 + ( g 31 G 22 + g 21 G 52 ) G 53 ) C 1 + ( g 11 G 52 G 33 + g 11 G 32 G 53 ) C 2 + ( g 11 G 22 G 53 ) C 3 + ( 0 ) C 4 + ( g 11 G 22 G 33 ) C 5 = 0
CHt=0
H = ( g 41 G 22 + g 21 G 42 ) G 33 + ( g 31 G 22 + g 21 G 32 ) G 43 g 11 G 42 G 33 + g 11 G 32 G 43 g 11 G 22 G 43 g 11 G 22 G 33 0 ( g 51 G 22 + g 21 G 52 ) G 33 + ( g 31 G 22 + g 21 G 52 ) G 53 g 11 G 52 G 33 + g 11 G 32 G 53 g 11 G 22 G 53 0 g 11 G 22 G 33
C=(C1C2C3C4C5)
附录2:快速前向纠错(硬件译码器输入情况)
必须找到具有最小权值的字 e ′ ( x ) = Σ i = 1 N x i - 1 e i ′ ( x N ) , H ( x ) . r 1 ( x ) + e 1 ′ ( x ) . . . . r N ( x ) + e N ′ ( x ) 为0。可以数学式示出以下等价关系:
H ( x ) . r 1 ( x ) + e 1 ′ ( x ) . . . . . . r N ( x ) + e N ′ ( x ) = E ( x ) = 0 . . . 0 ⇔ r ( x ) + e ′ ( x ) 为码字
其中 E ( x ) = E 1 ( x ) . . . E N - K ( x )
e′(x)的搜索可以通过维特比算法取消矩阵E(x)来实现。
E j ( x ) = Σ i E j , i x i ; 1≤j≤N-K
维特比算法所使用的网格,由对应不同状态的节点组成。这些节点通过支路连接。连续支路称为路径,路径的长度为路径的特征。
状态
有2M-1个状态,其中M-1为编码的存储量。每一状态Sk与矩阵
Figure C20041007413000156
相关联。状态Sk在n时刻的值,由如下矩阵
Figure C20041007413000157
的M-1个元素给出:
E j S k ( x ) = Σ i E j , i S k x i ; 1≤j≤N-K
Sk={V1V2...VN-K}其中
Figure C20041007413000159
初始状态Sk,0与E(x)相关联。
支路
支路代表n时刻的一个状态(当前状态)和n+1时刻的状态(后续状态)之间的转换。称为:
e′i,n:e′i的系数n
系数集合{e′1,n,...,e′N,n}与每一个支路相关联。在时刻n,建立序列集合{Zi(x)}
Z i ( x ) = H ( x ) . e 1 , n ′ . . . . . . e N , n ′ x n = Z 1 , i . . . Z N - K , i 其中 Z j , i ( x ) = Σ l = 0 Mj - 1 Z j , i l x n + l ; 1≤i≤2n
其中第一系数Zj,i 0满足条件:
z j , i 0 = E j , n Sk 其中1≤j≤N-K
设Sk为n时刻的当前状态,设Si为Sk的后续状态(在n+1时刻),设
Figure C20041007413000164
为相关的多项式。我们得到
E j S i ( x ) = E j S k ( x ) + Z j , i ( x ) 其中1≤j≤N-K
Figure C20041007413000166
该过程导致对矩阵
Figure C20041007413000167
的迭代取消。
长度(metrics)
提出的译码技术的原理为,寻找最小权重的序列e′(x),用以删除矩阵E(x)。可以得到n时刻定义的支路长度:
Δ ( n ) = Σ i = 1 N e i , n ′
注意:在软译码情况下, Δ ( n ) = Σ i = 1 N | R i , n | e i , n ′ , 其中Ri,n为接收的软符号。
路径长度mk(n)是支路长度的累加。当几个路径达到相同的状态时,将保留具有最小路径长度的路径。在处理结束时,保留的路径将在状态S0={00...0}结束,S0是使得
Figure C200410074130001610
所有元素都为0的唯一状态。与保留路径的每一支路相关联的集合{e′1,n,...,e′N,n}组成译码差错矢量e′(x)。
e ′ ( x ) = Σ n ( Σ i = 1 N x i - 1 e i , n ′ ) x Nn
“FEC无用”区域
如果在n0步骤同时满足性质(P1)和(P2),则不需要继续进行维特比算法。保留路径是在迭代n0到达状态S0={00...0}的路径,并且在这个节点后保持这个S0状态。
E j S 0 ( x ) = { 0,0 , . . . , 0 } 对所有j1≤j≤N-K         (P1)
mk(n0)≥m0(n0)对k≠0(P2)
此外,假设n-n1时刻,满足条件(P2),则所有的
Figure C20041007413000173
矢量符合:
{ E j , 0 S k , E j , 1 S k , . . . , E j , n - n 1 - 1 S k } = { 0,0 , . . . , 0 }
{ E j , n - n 1 S k , E j , n - n 1 + 1 S k , . . . , E j , n - n 1 + Mj - 2 S k } = V j
{ E j , n - n 1 + Mj - 1 S k , E j , n - n 1 + Mj S k , . . . , E j , n S k } = { 0,0 , . . . , 0 }
E j , n + 1 S k = 1
如果在E(x)中至少有n1个连续的0,该结构就会出现。理论上,如果n1大于取决于编码器的某个阈值,则维特比算法在n-n1和n-M+1间的步骤不需要执行。维特比算法在步骤n-M+1重新开始,以S0为初始状态。
注意:在软件译码情况下,维特比算法必须在步骤n-A+1重新开始,对A值的选择考虑复杂度降低和性能降低间的平衡。
最终估计
r(x)+e′(x).
最后的译码信息序列m′(x),通过对码字r(x)+e′(x)的代数译码给出。
附录3:校验
1/2速率卷积编码
m(x):信息字
g1(x),g2(x):生成多项式
C1(x)=m(x)·g1(x):多项式g1生成的码字
C2(x)=m(x)·g2(x):多项式g2生成的码字
r1(x)=C1(x)+e1(x):接收字1
r2(x)=C2(x)+e2(x):接收字2
利用奇偶校验矩阵:
最小奇偶校验矩阵: H t = g 2 g 1
对于任意的码字 C t = C 1 C 2 有CHt=0
如果我们称Rt=(r1r2)为总接收数据字,则有:
R · H t = r 1 r 2 g 2 g 1
R · H t = C 1 + e 1 C 2 + e 2 g 2 g 1
R·Ht=0+e1g2+e2g1
R·Ht(x)=e1(x)g2(x)+e2(x)g1(x)
利用简单多项式处理:
我们称G为等价生成多项式,C为总结果码字,定义如下:
G(x)=g1(x2)+x·g2(x2)
C(x)=C1(x2)+x·C2(x2)=m(x2)·G(x)
我们可以将C(x)G(x)表示为偶数多项式等式:
C(x)·G(x)=m(x2)·G(x)·G(x)=m(x2)·G(x2)
如果我们称差错多项式为e(x),接收多项式为r(x),定义如下:
e(x)=e1(x2)+x·e2(x2)
r(x)=C(x)+e(x)
则:
r(x)·G(x)=C(x)·G(x)+e(x)·G(x)
r(x)·G(x)=C(x)·G(x)+e1(x2)·g1(x2)+x2·e2(x2)·g2(x2)+x·(e1(x2)·g2(x2)+e2(x2)·g1(x2))
所以:
奇部{r(x)·G(x)}=e1(x2)·g2(x2)+e2(x2)·g1(x2)R·H t 相同的系数
最后,多项式r(x)·G(x)奇部的系数和接收数据字与奇偶校验矩阵相乘的结果相同。

Claims (6)

1.一种方法,用于对经无线通信信道传输的接收数据字R进行译码,相应发送的信息消息(m)已被使用预定的码编码为码字(c),该方法包括以下步骤:
用针对所述预定的码的奇偶校验矩阵H(x)乘以接收的数据字,
当乘积结果为0时,则对接收数据字进行代数译码而无需纠错;否则
当乘积结果不为0且乘积结果的非零系数数目超过阈值的情况下,所接收数据字被确定为不可恢复的,并且丢弃该数据字;
当乘积结果不为0且乘积结果的非零系数数目不超过阈值的情况下,通过估计传输差错,从接收数据字中减去估计的差错,并对相减的结果执行代数译码来进行纠错,其中,通过使用维特比算法执行前向纠错来寻找如下差错:
(R+E′)Ht=0,且E′有最小的权重,
这里E′为总差错估计矢量,H为奇偶校验矩阵。
2.根据权利要求1所述的方法,其中,R·Ht用于标识潜在差错的大致码字位置,并且维特比算法仅在这些码字位置上才执行计算,从而避免在无差错的码字位置上执行计算。
3.根据权利要求1所述的方法,其中通过搜索具有最小阶数的多项式hik(x)确定对应于所述奇偶校验矩阵H(x)的多项式集合{hik},所述具有最小阶数的多项式hik(x)符合H(x)·Gt(x)=0,
在这里
G为生成矩阵,包括生成多项式gij
{gij(x);1≤i≤N}对于所有的j没有公因子,
qik是多项式hik(x)的阶数;
多项式hik(x)是生成多项式gij的线性组合,并且 Σ k = 1 N - K q k = M - 1 , 其中 q k = Max 1 ≤ i ≤ N ( q ik ) , M是编码的限制长度。
4.根据权利要求1所述的方法,其中所述预定的码是速率为k/n的卷积码,其中,n和k为任意整数。
5.根据权利要求1所述的方法,其中所述预定的码是速率为1/2的卷积码,并且接收数据字与奇偶校验矩阵相乘的结果通过计算r(x)·G(x)的奇部得到,其中:
m(x):信息字;
g1(x),g2(x):生成多项式;
G(x)=g1(x2)+x·g2(x2):等价生成多项式;
C1(x)=m(x)·g1(x):多项式g1生成的码字;
C2(x)=m(x)·g2(x):多项式g2生成的码字;
r1(x)=C1(x)+e1(x):接收字1;
r2(x)=C2(x)+e2(x):接收字2;
r(x)=r1(x2)+x·r2(x2):接收多项式。
6.一种无线通信网络接收器,包括用于对经无线通信信道(3)传输的接收数据字R进行译码的装置(5),相应发送数据字(m)已被使用预定的码编码为码字(c);还包括纠错装置,该进行译码的装置适合执行以下步骤:
用针对所述预定的码的奇偶校验矩阵乘以接收的数据字,
当乘积结果为0时,则对接收数据字进行代数译码而无需纠错;否则
当乘积结果不为0且乘积结果的非零系数数目超过阈值的情况下,接收数据字被确定为不可恢复的;
当乘积结果不为0且乘积结果的非零系数数目不超过阈值的情况下,通过估计传输差错,从接收数据字中减去估计的差错,并对相减的结果执行代数译码来进行纠错,其中,通过使用维特比算法执行前向纠错来寻找如下差错:
(R+E′)Ht=0,且E′有最小的权重,
这里E′为总差错估计矢量,H为奇偶校验矩阵。
CNB2004100741306A 2003-09-01 2004-08-31 译码数据字的方法 Expired - Fee Related CN100395974C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP03292150.4 2003-09-01
EP03292150A EP1511178A1 (en) 2003-09-01 2003-09-01 A method of decoding a data word

Publications (2)

Publication Number Publication Date
CN1607759A CN1607759A (zh) 2005-04-20
CN100395974C true CN100395974C (zh) 2008-06-18

Family

ID=34089772

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004100741306A Expired - Fee Related CN100395974C (zh) 2003-09-01 2004-08-31 译码数据字的方法

Country Status (3)

Country Link
US (1) US7500173B2 (zh)
EP (1) EP1511178A1 (zh)
CN (1) CN100395974C (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7581162B2 (en) * 2005-10-14 2009-08-25 Hughes Network Systems, Llc System, method and computer program product for implementing rate ¾ low density parity check code
KR101317039B1 (ko) * 2007-03-30 2013-10-11 삼성전자주식회사 디코딩 장치 및 방법
EP3614567B1 (en) * 2007-09-28 2023-12-20 Panasonic Holdings Corporation Encoding method, encoder, and decoder
TW200947882A (en) * 2008-05-13 2009-11-16 Univ Ishou Decoding method of cyclic code weight decoder
US8327223B2 (en) * 2009-02-05 2012-12-04 Infineon Technologies Ag System and method for constructing multi-write error correcting code
US8930780B2 (en) * 2012-08-28 2015-01-06 Lsi Corporation Systems and methods for non-zero syndrome based processing
US9584157B2 (en) * 2012-10-05 2017-02-28 Sun Patent Trust Coding method, decoding method, coder, and decoder
CN107294544B (zh) * 2017-06-27 2020-09-01 唯思泰瑞(北京)信息科技有限公司 卷积码的前向纠错方法、装置及译码器

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1206271A (zh) * 1997-05-20 1999-01-27 松下电器产业株式会社 无线电通信装置
US6005898A (en) * 1997-03-12 1999-12-21 Interdigital Technology Corporation Multichannel viterbi decoder

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2753026B1 (fr) * 1996-08-28 1998-11-13 Pyndiah Ramesh Procede de transmission de bits d'information avec codage correcteur d'erreurs, codeur et decodeur pour la mise en oeuvre de ce procede
US6009552A (en) * 1997-06-18 1999-12-28 Motorola, Inc. Soft-decision syndrome-based decoder for convolutional codes
US6145110A (en) * 1998-06-22 2000-11-07 Ericsson Inc. Digital data decoder that derives codeword estimates from soft data
JP3889286B2 (ja) * 2002-01-31 2007-03-07 三菱電機株式会社 復号方法、復号装置及びディジタル伝送システム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6005898A (en) * 1997-03-12 1999-12-21 Interdigital Technology Corporation Multichannel viterbi decoder
CN1206271A (zh) * 1997-05-20 1999-01-27 松下电器产业株式会社 无线电通信装置

Also Published As

Publication number Publication date
US7500173B2 (en) 2009-03-03
US20050050433A1 (en) 2005-03-03
EP1511178A1 (en) 2005-03-02
CN1607759A (zh) 2005-04-20

Similar Documents

Publication Publication Date Title
US10536171B2 (en) Encoding/decoding method, device, and system
US8239727B2 (en) Decoding of raptor codes
US20180083655A1 (en) Apparatus and method for parallelized successive cancellation decoding and successive cancellation list decoding of polar codes
US9214958B2 (en) Method and decoder for processing decoding
EP1482643A2 (en) Method and apparatus for decoding a low density parity check (LDPC) code in a communication system
CN101345601B (zh) 一种译码方法和译码器
CN100547935C (zh) 解码装置及解码方法
US20100146372A1 (en) Decoding of serial concatenated codes using erasure patterns
US20080086675A1 (en) Method and system for ldpc code erasure decoding
EP3602794B1 (en) Check bit concatenated polar codes
CN100395974C (zh) 译码数据字的方法
JP5438150B2 (ja) 通信システムでの復号化のための装置及び方法
Wu et al. Polar codes for low-complexity forward error correction in optical access networks
US10735141B2 (en) System and a method for error correction coding using a deep neural network
KR101192201B1 (ko) 인터리빙 주기를 이용한 블라인드 길쌈 디인터리빙 방법
KR20070084951A (ko) 통신 시스템에서 신호 수신 장치 및 방법
US20150055736A1 (en) Method and apparatus for decoding received sequence
KR101267756B1 (ko) 가변 부호화율 불규칙 반복 다상 누산 부호화 및 복호화 방법과 이를 위한 장치
US20230155606A1 (en) Communication method and device using recurrent decoding iterations for polar codes
Shalin et al. Differential properties of polar codes
JP4862658B2 (ja) 復号方法および復号装置、並びにプログラム
KR101268060B1 (ko) 결합 상태-체크 코드를 이용한 부호화 방법 및 복호화 방법
KR101257776B1 (ko) 상태-체크 코드를 이용한 부호화 방법 및 부호화 장치
CN112165333A (zh) 空间耦合ldpc码的译码器错误传播的消除方法及装置
Salim Evaluation of Word Length Effects on Multistandard Soft Decision Viterbi Decoding

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

Termination date: 20170831