基于错误图样的Viterbi译码性能分析
2015-01-08郝天铎王可人
郝天铎,王可人,金 虎,熊 最
(电子工程学院,合肥 230037)
基于错误图样的Viterbi译码性能分析
郝天铎,王可人,金 虎,熊 最
(电子工程学院,合肥 230037)
针对卷积码的Viterbi译码性能在“比特级”层面的研究还不够深入,提出了一种利用错误图样分布来研究其译码性能的方法。该方法在不加调制的情况下,通过设定不同错误图样的参数,详细分析了不同错误图样下的译码性能。同时,给出了一种错误图样搜索算法,可搜索出对译码性能影响最明显的错误图样分布。在此基础上又对几种典型错误图样分布下的纠错性能进行了对比分析。仿真结果表明,错误图样的不同分布会对Viterbi译码性能产生不同的影响。
卷积码,Viterbi译码,错误图样
0 引言
卷积码的Viterbi译码算法是一种最大似然译码算法,当码的约束长度较短时,它比贯序解码算法的效率更高、速度更快,现已得到广泛的应用[1]。
研究Viterbi译码性能的文章较多,但大多是从译码算法的改进上进行分析,而从“比特级”层面上对其性能进行深入研究的则很少。文献[2]提出了一种针对卷积码的脉冲干扰方法,利用干扰脉冲控制目标通信系统的错误图样分布,在“比特级”层面对Viterbi译码性能进行了分析。但文献[2]中并未分析不同错误图案分布对Viterbi译码性能的影响。文献[3]提出了一种使Viterbi译码的纠错性能最差的错误图样搜索算法,得到了在QPSK调制下错误的块长和错误间隔。但其给出的输出参数仅考虑到突发错误,没有对块内的随机错误进行分析,同时,调制的加入会对错误图样分析造成影响。
为了在“比特级”层面进行更深入的研究,本文在不加调制的情况下,通过设定不同错误图样的参数,详细分析了不同错误图样下的译码性能。同时,给出了一种错误图样搜索算法,可搜索出对译码性能影响最明显的错误图样分布。
1 性能分析
1.1 Viterbi译码的性能分析
表1列出了编码效率为1/2、约束长度m为6~9的卷积码的自由距离以及的值。
1.2 错误图样分析
1.2.1 系统模型
本文只在“比特级”层面上进行讨论[8],不考虑调制解调的作用,在判决方法上采用硬判决,信道则采用二进制对称信道,具体系统模型如图1所示。
错误图样e代表由发送端的码字c转变成接收端的码字r时,在信道上必然产生的差错事件,由c变为r时的误码数目正好等于e中“1”的个数,而r就是c与e序列模2相加的结果。例如,发送序列c:(1111100000),接收序列r:(1001010000),可得出错误图样的第2、3、4、5位取值为1,其他各位取值为0,即e:(0110110000)。
1.2.2 参数设定
如图2所示,在错误图样e中,Block代表“块”,在文中为产生错误的块的长度,为错误产生的首位置,亦即错误图样中首次出现“1”的位置,Ne为块内错误比特,D为两块之间的间隔,第1块内为随机错误[9],第2块内为突发错误。错误比特所在位置用“1”表示,空白位置用“0”表示。两个块的长度均为7 bit,第1块内“1”出现的次数为3,所以产生的是Ne1等于3 bit的随机错误;第2块内“1”出现的次数为7,所以产生的是Ne2等于7 bit的突发错误,错误图样中两个块之间的间隔D为3 bit。因此,错误图样e为:(10100100001111111)。
1.2.3 不同参数对纠错性能的影响
本文选用纠错能力较强的(2,1,7)卷积码作为研究对象,译码器的输入误比特率用表示,输出误比特率用表示。
(1)随机与突发错误
在Viterbi译码过程中,不仅从此时刻收到的n个码元中提取译码信息,而且还利用以后若干时刻收到的码组提取有关译码信息[10],且卷积码纠正随机错误的能力较强,而对突发错误的纠错性能较差[2]。由于随机错误的随机性,其产生的po在pi的取值较小时(取pi≤0.05),应与由式(1)的理论值产生的近似相等;但是当随机产生的错误码元数达到一定门限时,由于不同位置码元之间的相互约束,在译码时会相互影响从而产生错误扩散的现象;对突发错误而言,由于错误是依次产生的,在译码时产生的错误也仅限于被干扰的码组内,因而不会产生错误扩散的现象,当pi达到一定门限值时,预计会产生等量的输出误比特个数。
(2)错误产生的首位置
由1.1可知,(2,1,7)卷积码可在14个连续比特之内可以纠正4个比特的随机错误。然而,当错误比特产生的位置距离码序列的末端的长度小于回溯长度时,需要译码的序列长度小于回溯长度,得不到有效的译码,从而使得译码性能下降。
(3)产生错误的块的长度
对于一定数量的输入误码个数,总会存在一个对应的块长,使得在这个块长内码元相互之间的影响最大,从而po的值也最大。
(4)块与块之间的间隔
当产生错误的块与块之间的间隔较小时,不同块之间的距离较近,相互的影响也较大,po相应的也会变大;当间隔较大时,不同块之间的距离也变大,相互的影响也会变小,因此,po也会变小。
1.2.4 几种典型的错误图样分布对纠错性能的影响
通过对错误图样不同参数的性能分析,有针对性地选择几种典型的错误图样分布,并通过计算机搜寻使纠错性能最差的错误图样分布。设定几种典型的错误图样为:
(1)整个码序列上产生突发错误(error pattern1);
(2)在一个大的块长内产生随机错误(error pattern2);
(3)在多个小块长内产生随机错误(error pattern3);
(4)计算机寻优所得错误图样:通过计算机寻优,寻找使纠错性能最差的错误图样分布。首先定义一个效益函数ε=Po/Pi,即输出误比特率与输入误比特率的比值。在Pi相同的情况下,效益函数的值越大,纠错效果就越差。产生错误的块长b、帧内误比特个数e、间隔d的单位均为bit,块的个数n=骔C/(b+d)」,式中C代表编码后码序列的长度,单位也为bit,通过遍历b、e和d的组合,可得到所有效益函数值ε的集合,其中最大值对应的各个参数值即为所寻结果,代码如下[3]:
设产生错误的块的长度从1到500 bit依次遍历,块内误比特个数从1到每次对应的块长取值依次遍历,间隔从1到30 bit依次遍历。经过大量的仿真实验运算,得到的结果为:当错误产生的块的长度为3 bit,块内误比特个数为3,间隔为18 bit时,当Pi一定时,这种错误图样分布使纠错性能达到最差。
2 仿真分析
由于在仿真时需要进行大量的重复随机性实验,所以仿真时采用蒙特卡罗仿真方法,如无特别说明,仿真中编码后码序列c长度一律设为3 000 bit。
2.1 不同参数下的仿真实验
2.1.1 随机与突发错误
设错误比特个数从1到360 bit依次变化,随机错误在整个码序列c上产生,突发错误从码序列c的首位置开始产生,统计pi与po的关系如图3所示。在pi较小时(0~0.05),随机错误产生的误比特率与理论值大体相等(理论值的pi小于等于0.05),纠随机错误的能力较强。当pi达到一定门限(0.1)时,随机错误会使译码产生错误扩散的现象。而对于突发错误,卷积码对其纠错效果较差,pi与po大体成正比关系。以上仿真结果符合1.2.3小节的理论分析。
对于纠错码而言,根据经验公式,当po大于0.05时,就认为接近许多数字通信无法进行的区域[11]。从图3可以看出,突发错误产生的po率先达到0.05,这说明在实际通信过程中突发错误对Viterbi译码产生的影响更大。
2.1.2 错误产生的首位置
设编码后码序列c长度为300 bit,产生错误的块长为14 bit,错误在块内产生,块的位置从码序列c的首位置开始,依次遍历整个码序列,回溯长度设为5倍的编码约束度即为35。由图4可见,当错误产生的首位置距离码的末端大于回溯长度时,也即1到265左右时,在14个连续比特内可以纠正4个比特的随机错误;当首位置大于265时,译码序列长度小于回溯长度,纠错能力下降。以上仿真结果符合理论分析。
2.1.3 产生错误的块的长度
设产生错误的块长从Ne到3 000 bit变化,在块长内产生Ne=100 bit的随机错误,统计不同块长下的输出误比特率,如图5(a)[9]所示;采用同样的方法,错误在块内产生,当输入误比特个数从1到500依次变化时,分别寻找最大po下对应的块的长度,并统计输入的误比特个数与块长的比值,如图5(b)所示。由图5(a)可见,对于一定的输入误比特数(100),随着块长的增加,po先增大后减小,在帧长为某一值(约600 bit)时po达到最大,与理论分析相符。由图5(b)可见,若po最大,则输入误比特个数与相应块长的比值趋于0.17左右。
2.1.4 块与块之间的间隔
设产生错误的块的个数为20,块长为60 bit,块内误比特数为10,在块内错误随机分布,间隔从1到50 bit依次取值。如图6所示,随着间隔的变大,po的取值变得越来越小,当间隔达到一定门限时,不同块之间的影响可以忽略不计,最后趋于一个定值,这与理论分析相符。
2.2 几种典型错误图样下的仿真实验
对于error pattern2,根据2.1节中的第3部分的结论进行设定,输入误比特个数与块长的比在仿真时始终保持0.17;对于error pattern3,设小块长为60 bit,块的个数为10,块内误比特个数从1到15依次变化,错误产生的方式为随机错误,且根据2.1节分析结果,块之间的间隔选为20 bit,仿真结果示于图7中。
从图7中可以看出,在输入误比特率相同的情况下,本文所选的典型错误图样分布对译码性能的影响都大于理论值,其中,寻优所得的错误图样分布对译码性能的影响最大。从实验结果可知,在实际情况中,若要达到0.05的输出误比特率,对数字通信形成有效的干扰,最少只需39个输入误比特,也即0.013的输入误比特率即可。
3 结束语
本文在“比特级”层面对Viterbi译码性能进行了分析,实验结果表明,本文所提出方法可以直观地指出不同错误图样分布对Viterbi译码性能的影响,并通过完善参数值的设置,使用本文所给的算法搜索出了使译码性能最差的错误图样分布。以上结论为相关通信系统的设计提供了参考,在此基础上,对卷积码在完整通信系统中的译码性能分析,是下一步的研究方向。
[1]樊昌信,曹丽娜.通信原理[M].第6版.北京:国防工业出版社,2006.
[2]杜宇峰,刘丰.针对前向纠错编码的脉冲干扰技术研究[J].无线电工程,2013.43(7):17-20.
[3]张一嘉,杨红娃,徐建良.对Viterbi译码的高效脉冲干扰技术[J].通信对抗,2009(2):18-21.
[4]王新梅,肖国镇.纠错码——原理与方法[M].西安:西安电子科技大学出版社,1991.
[5]Prasad K,Rajan B S.Convolutional Codes for Network-Error Correction[C]//.IEEE Global Telecommunications Conference,2009.
[6]王新梅.纠错码与差错控制[M].北京:人民邮电出版社,1989.
[7]〔美〕John G P著,张力军,译.数字通信[M].第4版.北京:电子工业出版社,2003.
[8]Smarandache R,Rosenthal J.Decoding of Convolutional Codes over the Erasure Channel[J].IEEE Transactions on Information Theory,2012,58(1):90-108.
[9]吴湛击,王文博.现代纠错码与调制理论及应用[M].北京:人民邮电出版社,2008.
[10]刘玉君.信道编码[M].郑州:河南科学技术出版社,2001.
[11]蔡晓霞,陈红,徐云.通信对抗原理[M].北京:解放军出版社,2012.
Analysis of Viterbi Decoding Performance on Error Pattern
HAO Tian-duo,WANG Ke-ren,JIN Hu,XIONG Zui
(Electronic Engineering Institute,Hefei 230037,China)
In order to get further studies of the decoding performance for concatenated RS-convolutional codes on“bits”level,a method which using the error pattern distribution to analyze the decoding performance is proposed.The influence of error pattern distribution is analyzed on the decoding performance by setting parameters without modulation.Also the search algorithm which can find a error pattern distribution that letting the performance become most sensitive is given.Then the error correction performance in several typical error pattern distribution is discussed.Results show that different error pattern distribution have different influence on the Viterbi decoding performance.
convolutional code,viterbi decoding,error pattern
TN911.22
A
1002-0640(2015)10-0083-04
2014-07-15
2014-10-20
郝天铎(1989- ),男,内蒙古呼和浩特人,硕士研究生。研究方向:数字通信。