卷积码编译码原理.ppt
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
同样以(2,1,4)为例,具体分析维特比译码过程。 维特比译码的前提是建立合适的网格图,以便寻 找最优路径。或者可以认为,维特比译码的关键是寻 找最优路径。在实际的译码操作过程中,怎样建立网 格以及建立网格后的路径的选择是译码的关键问题。
如所示,图3为(2,1,4)码的状态转移图,图5为 (2,1,4)码的网格图。
卷积码编译码实现
(1)在实际应用中怎样去建立网格图?
(2)怎样计算最小汉明距离?
(3)在找到最优路径后怎样去译出原始的 信息码?
内容简介
卷积码简单介绍 卷积码编码实现 卷积码译码实现 总结
卷积码简单介绍
卷积码(convolutional code)是由伊利亚斯(p.Elias)发 明的一种非分组码。在前向纠错系统中,卷积码在实际 应用中的性能优于分组码,并且运算较简单。
源自文库
首先判断前一时刻所有状态中,是哪两个状态指向当
前状态i;其次,根据这两个指向当前状态i的状态生成
的码组和前一时刻接收的码组比较,保留汉明距离最
小的那条路径以及到达状态i时的最小汉明距离。下一
时刻,同样操作,但是保留的最小汉明距离是前面最
小汉明距离累加。
在所有的接收码组处理完之后,会得到一组汉明
距离以及所对应的最优路径。比较选择出最小的汉明
11/1 11/0
01/0
100
10/0
00/0
101
11/1
01/0
110 01/1
图3 (2,1,4)码状态转移图
111
11/1
(2)编程实现
维特比译码可分为 网格图建立,寻找最优 路径,译码这三部分。
译码程序流程如图4所 示:
开始 建立网格图 判断最优路径
译码输出 图4译码流程图
①网格图建立
卷积码译码实现
(1)译码原理
卷积码译码方法主要有两类:代数译码和概率译码。代数 译码主要根据码本身的代数特性进行译码,而信道的统计特性 并没有考虑在内。目前,代数译码的主要代表是大数逻辑解码。 该译码方法对于约束长度较短的卷积码有较好的效果,并且设 备较简单。概率译码,又称最大似然译码,是基于信道的统计 特性和卷积码的特点进行计算。在现代通信系统中,维特比译 码是目前使用最广泛的概率译码方法。
维特比译码算法基本原理是:将接收到的信号序列和所有 可能的发送信号序列比较,选择其中汉明距离最小的序列认为 是当前发送序列。
具体步骤如下:
从时间单元j=m开始,计算进入每个状态的路径的汉明距 离。存储每个状态的路径(即幸存路径)以及最小汉明距 离。这里存储的路径通常是该状态所对应的幸存路径上的 前一状态值。
101
101
101
101
101
101
101
101
101
101
110
110
110
110
110
110
110
110
110
110
111
111
111
111
111
111
111
111
111
111
图5 (2,1,4)码网格图
②寻找最优路径
网格图建立之后,根据接收码组和网格图中生成
的码组比较,判断最优路径。假设某一时刻的状态i,
j增加1。计算进入每一个状态所有路径的汉明距离。这个 汉明距离是进入该状态的分支度量加上在与该分支相连的
前一步的幸存路径的度量值。对于每个状态,共有 2 k 个这
样的度量值,从中选出并存储最优路径(汉明距离最小的 路径)并保存最小汉明距离。 如果j<L+m.重复步骤2,知道结束。在整个过程中,这样 就可以得到一条汉明距离最小的最优路径。
编码流程。
M
D0
D1
D2
D3
+ V2
+ V1 图1 (2,1,4)卷积码编码器方框图
V1D0D2 V 2D 0 D 1 D 2 D 3
OUT
(1) (2)
由(1)式和(2)式可以看出:输出的数据位V1,V2和寄存器 D0,D1,D2,D3之间的关系。
根据模2加运算特点可以得知奇数个1模2运算后结果仍是1, 偶数个1模2运算后结果是0。在实际应用中,根据模2加的特 点,将所要处理的数据直接相加后除2求余,这样得到的结果 和模2 运算结果相同。这样可以得到:
000
000
000
000
000
000
000
000
000
000
001
001
001
001
001
001
001
001
001
001
010
010
010
010
010
010
010
010
010
010
011
011
011
011
011
011
011
011
011
011
100
100
100
100
100
100
100
100
100
100
距离,那么该最小汉明距离所对应的路径即为最优路
径。
根据图5所示的(2,1,4)码的网格图,可以发现 D1D2D3决定了从000—111的8个状态。并且进一步 观察网格图可以发现从状态000-011是由输入的信息 位0产生,从状态100-111是由输入的信息位1产生。 此外,以001状态为例,可以看出状态001是由状态 010和状态011产生。由上面可知,假设当前状态为i, 那么在前一时刻中,产生状态i的两个状态是2*i和 2*i+1。根据i是否小于4,来判断状态i是由信息位0还 是信息位1生成。进一步可以推知指向状态i的前一时 刻的两个状态生成的码组,这样便于以判断汉明距离。
注意:由于D1D2D3表示的顺序不同,所产生的 网格图和状态转移图也不同,并且译码过程是根据网 格图实现,所以本文所以涉及的维特比译码方法具有 一定的特殊性,但是整体过程还是具有研究价值。
D1D2D3 V1V2/in
00/0
000
01/0
001
10/1
11/0 010
00/1
10/0
01/1 011
V1(D0D2)% 2
(3)
V 2 (D 0 D 1 D 2 D 3 )% 2 (4)
编码程序流程图
程序开始
定义变量 初始化四 个寄存器
输入1比特信息存放在 寄存器0中,代入3,4
两式,得到V1,V2
将D0,D1,D2中的值依次 向后传递一位,
输出V1,V2,并返回, 进行下一次运算
图2 卷积码编码程序流程图
卷积码在编码时将k比特的信息段编成n个比特的码 组,监督码元不仅和当前的k比特信息段有关,而且还同 前面m=(N-1)个信息段有关。
通常将N称为编码约束长度,将nN称为编码约束长 度。一般来说,卷积码中k和n的值是比较小的整数。将 卷积码记作(n,k,N)。
卷积码编码实现
以(2,1,4)为例,如图(1)所示,详细介绍卷积码的