卷积码编译码基本知识.ppt
卷积码编译码实现,(1)在实际应用中怎样去建立网格图? (2)怎样计算最小汉明距离? (3)在找到最优路径后怎样去译出原始的信息码?,内容简介,卷积码简单介绍 卷积码编码实现 卷积码译码实现 总结,卷积码简单介绍,卷积码(convolutional code)是由伊利亚斯(p.Elias)发明的一种非分组码。在前向纠错系统中,卷积码在实际应用中的性能优于分组码,并且运算较简单。 卷积码在编码时将k比特的信息段编成n个比特的码组,监督码元不仅和当前的k比特信息段有关,而且还同前面m=(N-1)个信息段有关。 通常将N称为编码约束长度,将nN称为编码约束长度。一般来说,卷积码中k和n的值是比较小的整数。将卷积码记作(n,k,N)。,卷积码编码实现,以(2,1,4)为例,如图(1)所示,详细介绍卷积码的编码流程。 图1 (2,1,4)卷积码编码器方框图 (1) (2),由(1)式和(2)式可以看出:输出的数据位V1,V2和寄存器D0,D1,D2,D3之间的关系。 根据模2加运算特点可以得知奇数个1模2运算后结果仍是1,偶数个1模2运算后结果是0。在实际应用中,根据模2加的特点,将所要处理的数据直接相加后除2求余,这样得到的结果和模2 运算结果相同。这样可以得到: (3) (4),编码程序流程图,图2 卷积码编码程序流程图,卷积码译码实现,(1)译码原理 卷积码译码方法主要有两类:代数译码和概率译码。代数译码主要根据码本身的代数特性进行译码,而信道的统计特性并没有考虑在内。目前,代数译码的主要代表是大数逻辑解码。该译码方法对于约束长度较短的卷积码有较好的效果,并且设备较简单。概率译码,又称最大似然译码,是基于信道的统计特性和卷积码的特点进行计算。在现代通信系统中,维特比译码是目前使用最广泛的概率译码方法。 维特比译码算法基本原理是:将接收到的信号序列和所有可能的发送信号序列比较,选择其中汉明距离最小的序列认为是当前发送序列。,具体步骤如下:,从时间单元j=m开始,计算进入每个状态的路径的汉明距离。存储每个状态的路径(即幸存路径)以及最小汉明距离。这里存储的路径通常是该状态所对应的幸存路径上的前一状态值。 j增加1。计算进入每一个状态所有路径的汉明距离。这个汉明距离是进入该状态的分支度量加上在与该分支相连的前一步的幸存路径的度量值。对于每个状态,共有 个这样的度量值,从中选出并存储最优路径(汉明距离最小的路径)并保存最小汉明距离。 如果j<L+m.重复步骤2,知道结束。在整个过程中,这样就可以得到一条汉明距离最小的最优路径。,同样以(2,1,4)为例,具体分析维特比译码过程。 维特比译码的前提是建立合适的网格图,以便寻找最优路径。或者可以认为,维特比译码的关键是寻找最优路径。在实际的译码操作过程中,怎样建立网格以及建立网格后的路径的选择是译码的关键问题。 如所示,图3为(2,1,4)码的状态转移图,图5为 (2,1,4)码的网格图。 注意:由于D1D2D3表示的顺序不同,所产生的网格图和状态转移图也不同,并且译码过程是根据网格图实现,所以本文所以涉及的维特比译码方法具有一定的特殊性,但是整体过程还是具有研究价值。,图3 (2,1,4)码状态转移图,维特比译码可分为网格图建立,寻找最优路径,译码这三部分。译码程序流程如图4所示:,图4译码流程图,(2)编程实现,网格图建立,根据图5所示的(2,1,4)码的网格图,可以发现D1D2D3决定了从000111的8个状态。并且进一步观察网格图可以发现从状态000-011是由输入的信息位0产生,从状态100-111是由输入的信息位1产生。此外,以001状态为例,可以看出状态001是由状态010和状态011产生。由上面可知,假设当前状态为i,那么在前一时刻中,产生状态i的两个状态是2*i和2*i+1。根据i是否小于4,来判断状态i是由信息位0还是信息位1生成。进一步可以推知指向状态i的前一时刻的两个状态生成的码组,这样便于以判断汉明距离。,图5 (2,1,4)码网格图,寻找最优路径,网格图建立之后,根据接收码组和网格图中生成的码组比较,判断最优路径。假设某一时刻的状态i,首先判断前一时刻所有状态中,是哪两个状态指向当前状态i;其次,根据这两个指向当前状态i的状态生成的码组和前一时刻接收的码组比较,保留汉明距离最小的那条路径以及到达状态i时的最小汉明距离。下一时刻,同样操作,但是保留的最小汉明距离是前面最小汉明距离累加。 在所有的接收码组处理完之后,会得到一组汉明距离以及所对应的最优路径。比较选择出最小的汉明距离,那么该最小汉明距离所对应的路径即为最优路径。,如图5所示,其中红线表示计算得到的最优路径。观察其变化规律,可以发现,假设i时刻的状态和第(i+1)时刻比较得知,若第(i+1)时刻小于第i时刻,那么对应代表实际信息中0;若大于,则为1。然后逐次比较译出信息值。,译码,总结,维特比译码算法是卷积码中的一种最大似然译码算法,在码的约束度较小时,它的译码算法效率很高,速度很快,译码器也较简单。本文主要讨论了卷积码的编码和译码方法中的维特比译码的实现。但对于卷积码的距离特性,以及纠错能力并没有做详细的探讨。,