1.卷积码的概念
卷积码最早由埃利斯(Elias)于1955年提出。卷积码是一个有限记忆系统,是一种非分组码。它与分组码类似,也是先将信息序列分割成长度k的一个个分组,不同的是某一时刻的编码输出不仅取决于本时刻的分组,而且取决于本时刻以前的L个分组,所以把卷积码写成(n,k,L)形式以突出卷积码最重要的3个参数,其中n表示码元数,即输出比特个数。另外,分组码经过编码生成的码组可以分为信息位和校验位,而卷积码编码生成的码整体看作校验码或者监督码。卷积码的纠错能力随约束长度的增加而增强,差错率则随着约束长度增加而呈指数下降。
相比于其它纠错编码方式,卷积码具有以下优点:
1.码率可变:卷积码可以灵活地调整码率,从而适应不同的信道带宽和传输速率需求。
2.良好的抗噪声性能:卷积码的解码算法 Viterbi 算法可以有效地消除干扰和误差,保证数据的正确传输。
3.低延迟:卷积码采用滑动窗口的方式进行编解码,具有较低的延迟,适合对时延要求敏感的应用场景。
4.高效率:卷积码实现简单、计算量小、速度快,适用于多种嵌入式系统
2.卷积码的编码
由图1可见,卷积码将信息序列串/并变换后存入由k个L级移存器构成的kL阵列中,其中最左列存放当前输入的信息组。按一定规则对阵列中的数据进行线性组合,编出当前时刻的各码元
,j=0,…,n-1,最后由并/串变换合成当前码字后输出。

图1:卷积码编码器示意图
下面通过一个具体例子来说明卷积码的表达方法。
例:某二级制(2,1,3)卷积编码器如图2所示。其第一个码元的生成多项式,连接矢量
,亦即第一个输出码元
。第二个码元的生成多项式
,连接矢量
,亦即第二个输出码元
。

图2:卷积码编码器的生成多项式及输出码元表达式
如图3所示,在初始时刻,假设寄存器状态为(0,0,0)。 在t1时刻,输入1,则寄存器状态变为(1,0,0),相当于把初始寄存器状态(0,0,0)中从左往右第二个0“挤”掉了,编码输出11。在t2时刻,输入0,则寄存器状态变为(0,1,0),相当于把t1时刻寄存器状态(1,0,0)中从左往右第二个0“挤”掉了,编码输出10。在t3时刻,输入1,则寄存器状态变为(1,0,1),相当于把t2时刻寄存器状态(0,1,0)中从左往右第二个0“挤”掉了,编码输出00。接着输入两个冲洗比特(连续输入两个0),用以清空寄存器。 在t4时刻,输入0,则寄存器状态从t3时刻的(1,0,1)变为(0,1,0),相当于把t3时刻寄存器状态(1,0,1)中从左往右第二个1“挤”掉了,编码输出10。在t5时刻,输入0,则寄存器状态从t4时刻的(0,1,0)变为(0,0,1),相当于把t4时刻寄存器状态(0,1,0)中从左往右第二个0“挤”掉了,编码输出11。


卷积码是一种具有有限记忆的非分组码,其编码输出依赖于历史信息,具有码率可变、抗噪声性能好、低延迟和高效率等特点。Viterbi算法是卷积码的主要译码方法,通过找到最可能的发送序列来降低误码率。卷积码广泛应用于GSM和CDMA/IS-95等通信系统中,提供信道编码以增强数据传输的可靠性。
2万+

被折叠的 条评论
为什么被折叠?



