删余卷积码的维特比译码方法与流程

文档序号:12907992阅读:4693来源:国知局
删余卷积码的维特比译码方法与流程

本发明属于通信技术领域,尤其涉及一种维特比译码方法,可用于对无线通信中的数据处理。



背景技术:

卷积码广泛运用于通信领域,采用信道编码能够提高信道的通信质量,是一种很好的纠错编码方法。在802.11无线通信协议中,有低密度奇偶校验编码ldpc和二进制卷积编码bcc两种编码方式,其中,二进制卷积编码是一种必选的编码方式。在卷积码的编码过程中,对输入信息比特进行分组编码,将n组长度为k的信息比特编成n个比特,编码完以后的n个比特不仅与当前的k个信息有关,还与前面的n-1组信息有关。因此,在卷积码译码的时候,不仅要从当前时刻收到的分组中获取译码信息,还要从前后关联的分组中提取相关信息。卷积码充分利用了信息之间的相关性,使得卷积码具有相当好的性能增益。

维特比译码算法是卷积码译码方法中运用最为广泛的算法,是一种最大似然算法,即在卷积码编码器所对应的网格图中的所有可能路径集合中寻找一条具有最大路径度量值的路径作为译码结果。在卷积码约束度较小的时候,维特比译码算法具有设计结构简单,计算速度快,效率高等优点。

在802.11无线通信协议中,采用(2,1,7)二进制卷积编码,卷积码的生成矢量用八进制数表示为(133,171),因此,该卷积编码器的编码效率为1/2。为了提高编码的码率,对利用1/2码率的编码器编码完的序列进行删余,不同的删余模式可以将其码率提高到2/3,3/4,5/6。在接收端进行译码的时候,若编码码率高于1/2,则首先根据编码码率所对应的删余模式,在接收序列中按照删余模式指定的删余位置添加“0”以补齐被删除的数据,再对序列进行维特比译码。

传统的维特比译码算法是将接收到的信号序列和所有可能的信号序列作比较,选择其中汉明距离最小的序列作为输出的译码序列。在发送端,编码完的序列需要经过交织,调制等操作,再进入信道,经过信道传输之后,在接收端进行解调,解交织的操作,再对其进行解码,如果采用硬解调方法,则解调输出为“0”,“1”的序列,由于信道传输过程中有噪声存在,因此可能会发生误码情况。此时,需要通过卷积码译码方法来纠错,当编码码率为1/2时,不需要进行补删余数据的操作,维特比译码算法能够较好地纠错,在输入误码率较低的情况下,编码增益能够良好的体现。但是,当编码码率高于1/2时,就需要通过在删余位置添加“0”的方法补齐被删余的数据,此时,补上的“0”就会被译码系统误认为信息位,原来的信息位可能是“1”也被“0”补上,则视为引入大量的误码,就会导致由于输入误码率过高而无法正确译码。



技术实现要素:

本发明的目的在于提供一种删余卷积码的维特比译码方法,以有效改善删余而引入的大量误码导致无法正确译码的影响,提高译码正确率。

本发明是通过对现有的二进制卷积译码维特比算法进行改进实现的,即在经过删余以后的0,1序列中,引入调整因子成为不为0,1的数,再在删余位置插入零,得到插入数据以后的序列;运用加乘的方法计算当前度量值进而可避免插入的零对比较的度量值产生影响,并进行维特比译码算法的后续步骤。其具体实现如下:

(1)设置计算所需的参数,包括编码码率r,调整因子θ;

(2)输入待译码序列a,将其序列中的各项减去调整因子θ得到第一新的序列a’;

(3)在第一新的序列a’中根据编码码率r对应的删余模式中所指定的删余位置,插入“0”,得到第二新的序列a”;

(4)根据(2,1,7)卷积码编码器结构,画出对应的网格图;

(5)将第二新的序列a”中的各项以每两个数为一组分别与网格图对应级数对应状态的两组0,1信号值进行乘积后再相加,得到当前分支度量值;

(6)设置累计度量值初始值为0,计算网格图中每一级的当前状态的分支度量值,并与前一级状态得到的累计度量值进行累加,得到当前的累计路径度量值;在当前状态下比较到达同一节点的两条路径的累计度量值,选择累计度量值较大的一条路径,舍弃另一条路径;

(7)设置计算累计度量值的终止条件为输入待译码序列a的各项均完成度量值计算且编码器中的移位寄存器回到全零的状态,并判断是否满足终止条件:若不满足,则返回步骤(5),否则,选取到达该终止状态时对应的路径为最终的最优路径,执行步骤(8);

(8)对步骤(7)得到的最优路径进行回溯,得到最终的译码输出序列a”’。

本发明与现有的技术相比具有以下优点:

1、本发明由于采用对待译码数据引入调整因子的方法,将序列改成非零序列处理,消除了在译码前插入的零数据对译码结果的影响,有效提高了译码的效率和性能;

2、本发明由于采用在译码端对数据进行非零处理而不需要在调制解调端对数据进行软解调的处理,因此有效提高了编解码的独立性,不依赖于在解调过程中应用软解调方式才能较好的避免打孔对译码准确性的影响,从而可使该编解码的算法应用更广泛;

3、本发明由于在引入调整因子以后,通过将序列与网格图对应级数对应状态的两组0,1信号值进行乘积后再相加来计算当前度量值,降低了计算度量值的运算复杂性。

附图说明

图1是本发明的实现流程图;

图2是ieee802.11协议中卷积码编码器的结构图;

图3是ieee802.11协议中编码码率为2/3时的删余模式示意图;

图4是ieee802.11协议中编码码率为3/4时的删余模式示意图;

图5是ieee802.11协议中编码码率为5/6时的删余模式示意图;

图6是用本发明对编码码率为1/2时的删余卷积码译码性能仿真实验结果图;

图7是用本发明对编码码率为2/3时的删余卷积码译码性能仿真实验结果图;

图8是用本发明对编码码率为3/4时的删余卷积码译码性能仿真实验结果图;

图9是用本发明对编码码率为5/6时的删余卷积码译码性能仿真实验结果图。

具体实施方式

以下结合附图对本发明的实施例及其效果作进一步的说明:

参照图1,本发明的具体实现步骤如下:

步骤1、设置计算所需的参数。

所述的参数包括:编码码率r,调整因子θ。其中:

编码码率r可选择1/2、2/3、3/4和5/6这四种中的任意一种,编码码率r所对应的删余模式参照图3、4、5所示。

调整因子θ为待译码序列a中各项的值的改变量,其取值范围为0<θ<1,经过计算及实验验证可得,调整因子θ选0.5可取得最佳的译码性能。

步骤2、输入待译码序列a。

将输入待译码序列a中的各项减去调整因子θ得到第一新的序列a’,新的第一序列a’中的各项均不为零。

步骤3、插入零数据。

在第一新的序列a’中根据编码码率r对应的删余模式中所指定的删余位置,插入“0”,得到第二新的序列a”。

步骤4、画网格图。

参照图2,根据其编码器结构画出对应的网格图,网格图中的每一个状态都有两个输入与两个输出,不同状态之间的连线代表状态转移,输入序列的编码过程在网格图中对应一条确定的状态转移路径。

步骤5、计算分支度量值。

计算分支度量的现有方法主要以接收序列为基础,逐个计算接收序列与网格图路径的距离,本实例方法如下:

将第二新的序列a”中的各项以每两个数为一组分别与网格图对应级数对应状态的两组0,1信号值进行乘积后再相加,得到当前分支度量值。

步骤6、计算累计度量值。

设置累计度量值初始值等于0;按照步骤5,计算网格图中每一级的当前分支度量值,并与前一级的累计度量值进行累加得到当前的累计度量值。

步骤7、设置终止条件并选取最优路径。

7a)将输入待译码序列a的各项均完成分支度量值计算,且编码器中的移位寄存器回到全零的状态,设置计算度量值的终止条件;

7b)根据编码网格图中的前6级连续支路构成的路径各不相交的特性,从第7级开始,在第n>=7级时,计算当前的累计路径度量值,并在第n级的同一个节点的两条路径中选择累计路径度量值较大的路径作为幸存路径,并舍弃另一条路径;

7c)在编码网格图的最后6级,仅延伸其状态对应于全零输入的支路,使得卷积码编码器状态回到全零的状态,即终止状态,此时刚好剩下一条幸存路径,该路径即为译码最优的路径。

步骤8、回溯译码最优路径。

在步骤7中得到了最佳译码路径之后,根据该路径经过网格图中的节点所对应的状态的变化,输出该路径中每一个节点的状态值,即得到最终的译码输出序列a”’。

本发明的效果可通过以下仿真进一步说明:

1.仿真条件及仿真内容:

本实例在intel(r)core(tm)i3-2310mcpu@2.33ghzwindows10系统下,matlab2015版运行平台上,完成本发明提及的删余卷积码译码方法试验。

2.仿真实验内容与结果

本发明在编码码率分别为1/2、2/3、3/4和5/6时,对删余卷积码译码方法仿真

仿真1,设置编码码率为1/2,调整因子θ为0.5,用本发明方法对输入待序列进行译码得到的仿真结果如图6所示;

从图6可以看出,在编码码率为1/2时,当输入误码率低于0.05时,输入误码可全部纠正,因此,本发明提出的译码方法对1/2码率下的译码改善效果较好。

仿真2,设置编码码率为2/3,调整因子θ为0.5,用本发明方法对输入待序列进行译码得到的仿真结果如图7所示;

从图7可以看出,在编码码率为2/3时,当输入误码率低于0.03时,输入误码可全部纠正,因此,本发明提出的译码方法对2/3码率下的译码改善效果较好。

仿真3,设置编码码率为3/4,调整因子θ为0.5,用本发明方法对输入待序列进行译码得到的仿真结果如图8所示;

从图8可以看出,在编码码率为3/4时,当输入误码率低于0.006时,输入误码可全部纠正,因此,本发明提出的译码方法对3/4码率下的译码改善效果较好。

仿真4,设置编码码率为5/6,调整因子θ为0.5,用本发明方法对输入待序列进行译码得到的仿真结果如图9所示;

从图9可以看出,在编码码率为5/6时,当输入误码率低于2*10-3时,输入误码可全部纠正,因此,本发明提出的译码方法对5/6码率下的译码改善效果较好。

由以上的仿真实验可以说明,本发明中提出的对待译码序列引入调整因子进行非零处理能有效改善删余而引入的大量误码导致无法正确译码的影响,提高译码正确率。

针对传统的在调制解调过程中运用软解调方式避免删余对译码带来的影响的方法,本发明存在一定的优势,一方面克服了编码过程中删余引起的译码效率低,容错率不高的困难,另一方面本发明所提出的译码方法不依赖于信道中的软解调方法,使该编解码的算法应用更广泛。

综上所述,本发明所提出的对传统的译码算法的改进经实验证明译码效果良好,纠错性能较高,实现简单,计算量小,适用范围广。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1