信道编码-卷积码、QC-LDPC码

转载为下次阅读方便,若有侵权立删。

1.卷积码(Convolutional Code)

主要内容:卷积码 生成多项式 网格图 状态图
内容转自:卷积码(Convolutional Code)

1.1 卷积码简介

卷积码是一种差错控制编码,由P.Elias于1955年发明。因为数据与二进制多项式滑动相关故称卷积码。卷积码在通信系统中应用广泛,如IS-95,TD-SCDMA,WCDMA,IEEE 802.11及卫星等系统中均使用了卷积码。

卷积码使用 (n,k,L) 表示,码率为R。

n为输出码字;

k为输入的比特信息;

L为约束长度,也称为记忆深度。

R表示为R = k/n。

卷积码是一种有记忆的纠错码,编码规则是将k个信息比特编码形成n个比特,编码后的n个码元不但与当前输入的k个信息有关,仍与之前的L-1组的信息有关,其结构如下图1所示,图1来自Goldsmith的著作。
在这里插入图片描述
图1、(n,k,L)卷积码编码器

图中表示有L级信息比特,每次输入k比特信息,共有k*L个比特,每次输出n个比特信息,可以明显地看出该n个比特信息不仅与当前输入的k个比特信息有关,与之前L-1组信息比特也有关,所以卷积码是有记忆的编码,记忆深度为L。

:此处与其他常见表示方法不同,此处将输入的比特做了缓存,所以记忆深度不一样,L看寄存器的个数确定。

1.2 卷积码表示方法

图2是输出码长n=2,记忆深度L为2,输入比特k=1的,(2,1,2)卷积码编码器。用该例说明卷积码的以下几种表示方法。
在这里插入图片描述
图2、(2,1,2)卷积码编码器

1.2.1 生成多项式

生成多项式使用K-1阶的多项式描述编码器的移位寄存器和模二加法器的连接状态。每个模二加法器的连接可表示成一个多项式。多项式的次数输入的阶次为0,其余按寄存器数的移位次数依次递增。如上图

输出1: g1(x) = 1 + x + x^2

输出2: g2(x) = 1 + x^2

以下是IEEE 802.11标准中的卷积码编码器,生成多项式分别为:

输出1: g1(x) = 1 + x^2 + x^3+ x^5 + x^6

输出2: g2(x) = 1 + x + x^2 +x^3 + x^6

在这里插入图片描述
图3、IEEE 802.11中的卷积码编码器

1.2.2 状态图

状态图是关于系统状态变化的描述,它将由系统的输入,根据当前的系统状态,影响系统的输出。卷积码编码器存储的L-1段消息,既要因新的消息输入而改变,又要影响当前的编码输出,把卷积码编码器的移位寄存器中任一时刻所存储的信息称为卷积码编码器的一个状态。

(n,k,L)卷积码共有2(k*(L-1))个状态,每次输入k比特只有2k种状态变化,所以,每个状态只能转移到全部状态的某个子集(2k个状态)中去,每个状态也只能由全部状态的某个子集(2k个状态)转移而来。

(2,1,2)卷积码编码器包含2级移位寄存器和2个模2加法器。2级移位寄存器共有2^2=4种不同状态,定义为S0(00)、S1(01)、S2(10)和S3(11)四种状态。在每个时刻,输入的1个比特信息,当前状态将转为4种状态中的任何一种。
在这里插入图片描述
状态表类似查找表,原理即根据当前的输入和当前的状态,可以从表中查得输出信息。图4为卷积码的状态转移图,图中的状态转移表示“输入/输出1输出2”。

在这里插入图片描述

1.2.3 网格图

卷积编码器的状态图只能描述某个时刻的状态转移和编码过程,但整个编码的过程是随时间不断变化的过程。为了建立时间与状态转移的关系,将状态图按时间顺序连接,于是形成了卷积码的网格图。
在这里插入图片描述
图5、(2,1,2)卷积码的网格图

每一个动态编码的过程都可以用网格图中的一条路径表示,根据以下例子理解网格图,网格图不仅是表示卷积码的一种有效方法,更是理解卷积码译码的关键之处。

如编码序列“0 1 1 0 0”在图中的序列如下:
在这里插入图片描述
每次转移的输出依次为00 11 01 01 11,该输出已于图中标记。

2.QC-LDPC码

转自:NR-LDPC码知识
5G中LDPC码的编码流程:物理层在接收到媒体接入控制层(MAC)的一个传输块之后,先 给它添加一个(16 或 24 比特)的 CRC。在添加 CRC 之后,如果它包含的比特 数超过一定值,则需要把它分成长度相同的两个或多个码块;各个码块再各自添 加 CRC;然后,各个加了 CRC 的码块独立地进行 LDPC 编码;再然后,各个编 码后的码块分别进行速率匹配、混合自动重传请求(HARQ)处理和交织。
 QC-LDPC码是一类结构化的 LDPC码,其校验矩阵可以分解为ZxZ的全零矩阵和循环移位矩阵。其中循环移位矩阵通过对ZxZ的单位矩阵向右循环移位获得。扩展之前的矩阵称为基矩阵[对应的Tanner图称为基图(BG,Base Graph)],只包含元素“0”和“1”。“0” 的位置替换为ZxZ的全零矩阵,“1” 的位置替换为ZXZ的循环移位矩阵。

QC-LDPC码的设计:
1.确定一个mn的稀疏矩阵作为BG;
2.复制BG,倍数为Z,变为mZnZ;
3.对变量节点和校验节点之间的连线进行交织(指循环移位);

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
**BICM信道编码是一种将编码和调制技术结合的编码调制方案**,而**卷积码是一种有记忆的纠错**。 BICM信道编码,全称比特交织编码调制(Bit Interleaved Coded Modulation),是一类典型的编码调制技术。它的主要优势在于增加了编码的多样性,并能够针对TCM(网格编码调制)灵活性差和在衰落信道中性能差的缺点进行改进。通过将编码器和调制器分离设计,在理想交织的情况下,BICM系统能够在衰落信道上展现出很好的鲁棒性。自BICM被提出以来,一直是编码调制领域中的研究热点,并已被广泛应用于现代无线通信系统中。尤其是结合了先进编解技术(如LDPC、Turbo)的BICM系统在光通信领域的应用更是受到极大关注。 卷积码则是一类特殊的编码方式,它的特点是输出的n个元不仅与当前输入的k个信息有关,还与之前输入的信息有关。这使得卷积码具有“记忆性”,其编码规则可以用(n,k,m)来描述,其中k为每次输入到卷积编码器的bit数,n为每个k元组字对应的卷积码输出n元组字,m为编码存储度,即编码器的约束长度。卷积码特别适合以串行形式进行传输,时延小,而且不通过增加k和n,而是通过增加存储器阶数m来实现较大的最小距离和低错误概率。 关于在MATLAB中实现BICM信道编码卷积码,MATLAB提供了专门的函数来进行卷积编码和译过程的实现。例如,`convenc()` 函数用于进行卷积编码,`vitdec()` 函数则用于维特比译,这是一种概率译方法,也是卷积码最主要的译方法之一。此外,`ploy2trellis()` 函数可以帮助生成卷积编码所需的网表。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值