通信原理板块——卷积码(原理、代数和几何表示、编码和解码)

2023-10-31 01:36

本文主要是介绍通信原理板块——卷积码(原理、代数和几何表示、编码和解码),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

微信公众号上线,搜索公众号小灰灰的FPGA,关注可获取相关源码,定期更新有关FPGA的项目以及开源项目源码,包括但不限于各类检测芯片驱动、低速接口驱动、高速接口驱动、数据信号处理、图像处理以及AXI总线等
在这里插入图片描述
1、卷积码定义
卷积码(convolutional code)是一种线性非分组码,适用于前向纠错。
卷积码在编码是,把k比特的信息段变成n个比特的码组,但是监督码元不仅仅和当前的k比特信息段有关系,而且还跟前面m=(N-1)个信息段有关。
一个码组中的监督码元监督着N个信息段,N称为编码约束度,nN称为编码约束长度。将卷积码记作(n,k,N)。码率为k/n。
2、卷积码的基本原理
卷积码编码器由三种主要元件构成,包括Nk级移存器、n个模2加法器和一个旋转开关。
模2加法器的输入端连接到一些移存器的输出端,数目可以不同。
模2加法器的输出端均接到旋转开关上。
将时间分成等间隔的时隙,在每个时隙中k比特从左端进入移存器,并且移存器各级暂存的信息向右移k位。
旋转开关每时隙旋转一周,输出n比特(n>k)。
在这里插入图片描述
常用的卷积码,k=1。移存器共有N级,每个时隙中,只有1b输入信息进入移存器,并且移存器各级暂存的内容向右移1位,开关旋转一周输出n比特。码率为1/n。
一个(n,k,N)=(3,1,3)的卷积码编译器
在这里插入图片描述
输入信息比特序列为…b(i-2) b(i-1) b(i) b(i+1)…
当输入b(i)时,编码器输出ci,di,ei与b(i-2) b(i-1) b(i)的关系
在这里插入图片描述
3、卷积码的代数表示
卷积码是一种线性码,故可以由一个监督矩阵H或生成矩阵G所确定。
①监督矩阵
在第一个信息位b1进入编码器之前,各级移存器均处于“0”状态,监督位di、ei和信息位bi之间的关系
注意:“+”表示的是异或“⊕”
在这里插入图片描述
在这里插入图片描述
用矩阵表示为
在这里插入图片描述
故监督矩阵为
在这里插入图片描述
监督矩阵是一种截短监督矩阵,矩阵的最左边n列、(n-k)N行的一个子矩阵,且向右的每n行均相对于前n列降低(n-k)行。
在这里插入图片描述
卷积码的截短监督矩阵的一般形式:
在这里插入图片描述
②生成矩阵G
在这里插入图片描述
截短生成矩阵
在这里插入图片描述
一般截短生成矩阵
在这里插入图片描述
4、卷积码的几何表述
①码树图
一个(3,1,3)卷积码的码树图
移存器M1,M2,M3的初始状态000作为码树的起点。
输入信息位为“0”,状态支路向上移动;
输入信息位为“1”,状态支路向下移动。
在这里插入图片描述
②状态图
将码树改进为状态机,M2和M3的四种状态表示符号a,b,c,d
当前输入信息位、移存器前一状态、移存器下一状态和输出码元之间关系
在这里插入图片描述
卷积码状态图
在这里插入图片描述
③网格图
将状态图在时间上展开,即可得到网格图
在这里插入图片描述
5、卷积码的解码
卷积码的解码方法有两种:代数解码和概率解码。
代数解码是利用编码本身的代数结构进行解码,不考虑信道的统计特性。
大数逻辑解码,或门限解码,是卷积码代数解码的最主要一种方法,也应用于循环码的解码。适应于约束长度较短的卷积码。
概率解码,或最大似然解码,基于信道的统计特性和卷积码的特点进行计算。一是序贯解码,二是维特比(Viterbi)算法。
①大数逻辑解码
卷积码的大数逻辑解码是基于卷积码的代数表述运算的。
在这里插入图片描述
具体的操作步骤:
将接收信息位暂存于移存器,并从接收码元的信息位和监督位计算校正子。
将计算得出的校正子暂存,用来检测错码的位置。
在信息位移存器输出端,接一个模2加电路,当检测输出的信息位有错时,在输出的信息位上加“1”,从而纠正。
②维特比解码算法
维特比解码算法原理是将接收到的信号序列和所有可能的发送信号序列比较,选择其中汉明码距最小的序列认为是当前发送信号序列。
维特比解码算法,常用于卫星通信和蜂窝网通信系统中。

这篇关于通信原理板块——卷积码(原理、代数和几何表示、编码和解码)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/311916

相关文章

深入探索协同过滤:从原理到推荐模块案例

文章目录 前言一、协同过滤1. 基于用户的协同过滤(UserCF)2. 基于物品的协同过滤(ItemCF)3. 相似度计算方法 二、相似度计算方法1. 欧氏距离2. 皮尔逊相关系数3. 杰卡德相似系数4. 余弦相似度 三、推荐模块案例1.基于文章的协同过滤推荐功能2.基于用户的协同过滤推荐功能 前言     在信息过载的时代,推荐系统成为连接用户与内容的桥梁。本文聚焦于

hdu4407(容斥原理)

题意:给一串数字1,2,......n,两个操作:1、修改第k个数字,2、查询区间[l,r]中与n互质的数之和。 解题思路:咱一看,像线段树,但是如果用线段树做,那么每个区间一定要记录所有的素因子,这样会超内存。然后我就做不来了。后来看了题解,原来是用容斥原理来做的。还记得这道题目吗?求区间[1,r]中与p互质的数的个数,如果不会的话就先去做那题吧。现在这题是求区间[l,r]中与n互质的数的和

uva 10387 Billiard(简单几何)

题意是一个球从矩形的中点出发,告诉你小球与矩形两条边的碰撞次数与小球回到原点的时间,求小球出发时的角度和小球的速度。 简单的几何问题,小球每与竖边碰撞一次,向右扩展一个相同的矩形;每与横边碰撞一次,向上扩展一个相同的矩形。 可以发现,扩展矩形的路径和在当前矩形中的每一段路径相同,当小球回到出发点时,一条直线的路径刚好经过最后一个扩展矩形的中心点。 最后扩展的路径和横边竖边恰好组成一个直

poj 1113 凸包+简单几何计算

题意: 给N个平面上的点,现在要在离点外L米处建城墙,使得城墙把所有点都包含进去且城墙的长度最短。 解析: 韬哥出的某次训练赛上A出的第一道计算几何,算是大水题吧。 用convexhull算法把凸包求出来,然后加加减减就A了。 计算见下图: 好久没玩画图了啊好开心。 代码: #include <iostream>#include <cstdio>#inclu

uva 1342 欧拉定理(计算几何模板)

题意: 给几个点,把这几个点用直线连起来,求这些直线把平面分成了几个。 解析: 欧拉定理: 顶点数 + 面数 - 边数= 2。 代码: #include <iostream>#include <cstdio>#include <cstdlib>#include <algorithm>#include <cstring>#include <cmath>#inc

系统架构师考试学习笔记第三篇——架构设计高级知识(20)通信系统架构设计理论与实践

本章知识考点:         第20课时主要学习通信系统架构设计的理论和工作中的实践。根据新版考试大纲,本课时知识点会涉及案例分析题(25分),而在历年考试中,案例题对该部分内容的考查并不多,虽在综合知识选择题目中经常考查,但分值也不高。本课时内容侧重于对知识点的记忆和理解,按照以往的出题规律,通信系统架构设计基础知识点多来源于教材内的基础网络设备、网络架构和教材外最新时事热点技术。本课时知识

XTU 1237 计算几何

题面: Magic Triangle Problem Description: Huangriq is a respectful acmer in ACM team of XTU because he brought the best place in regional contest in history of XTU. Huangriq works in a big compa

poj 3304 几何

题目大意:给出n条线段两个端点的坐标,问所有线段投影到一条直线上,如果这些所有投影至少相交于一点就输出Yes!,否则输出No!。 解题思路:如果存在这样的直线,过投影相交点(或投影相交区域中的点)作直线的垂线,该垂线(也是直线)必定与每条线段相交,问题转化为问是否存在一条直线和所有线段相交。 若存在一条直线与所有线段相交,此时该直线必定经过这些线段的某两个端点,所以枚举任意两个端点即可。

POJ 2318 几何 POJ 2398

给出0 , 1 , 2 ... n 个盒子, 和m个点, 统计每个盒子里面的点的个数。 const double eps = 1e-10 ;double add(double x , double y){if(fabs(x+y) < eps*(fabs(x) + fabs(y))) return 0 ;return x + y ;}struct Point{double x , y

poj 2653 几何

按顺序给一系列的线段,问最终哪些线段处在顶端(俯视图是完整的)。 const double eps = 1e-10 ;double add(double x , double y){if(fabs(x+y) < eps*(fabs(x) + fabs(y))) return 0 ;return x + y ;}struct Point{double x , y ;Point(){}Po