卷积码的基本介绍以及基于Matlab的卷积码与RS码、汉明码的性能比较——P02114125李铖、P02114126李昱昕、P02114128蒋向宇、P02114129张秦铭、P02114130马飞扬

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

1.卷积码的概念

    卷积码最早由埃利斯(Elias)于1955年提出。卷积码是一个有限记忆系统,是一种非分组码。它与分组码类似,也是先将信息序列分割成长度k的一个个分组,不同的是某一时刻的编码输出不仅取决于本时刻的分组,而且取决于本时刻以前的L个分组,所以把卷积码写成(n,k,L)形式以突出卷积码最重要的3个参数,其中n表示码元数,即输出比特个数。另外,分组码经过编码生成的码组可以分为信息位和校验位,而卷积码编码生成的码整体看作校验码或者监督码。卷积码的纠错能力随约束长度的增加而增强,差错率则随着约束长度增加而呈指数下降。

    相比于其它纠错编码方式,卷积码具有以下优点:

    1.码率可变:卷积码可以灵活地调整码率,从而适应不同的信道带宽和传输速率需求。

    2.良好的抗噪声性能:卷积码的解码算法 Viterbi 算法可以有效地消除干扰和误差,保证数据的正确传输。

    3.低延迟:卷积码采用滑动窗口的方式进行编解码,具有较低的延迟,适合对时延要求敏感的应用场景。

    4.高效率:卷积码实现简单、计算量小、速度快,适用于多种嵌入式系统

2.卷积码的编码

    由图1可见,卷积码将信息序列串/并变换后存入由k个L级移存器构成的k\timesL阵列中,其中最左列存放当前输入的信息组。按一定规则对阵列中的数据进行线性组合,编出当前时刻的各码元c_{j}^{i},j=0,…,n-1,最后由并/串变换合成当前码字后输出。

图1:卷积码编码器示意图

    下面通过一个具体例子来说明卷积码的表达方法。

    例:某二级制(2,1,3)卷积编码器如图2所示。其第一个码元的生成多项式g_{1}(x)=1+x+x^{2},连接矢量g_{1}=(1 1 1),亦即第一个输出码元c_{1k}=m_{k}\oplus m_{k-1}\oplus m_{k-2}。第二个码元的生成多项式g_{2}(x)=1+x^{2},连接矢量g_{2}=(101),亦即第二个输出码元c_{2k}=m_{k}\oplus m_{k-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。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值