最通俗的语言讲解卷积码、码树图、状态图以及维特比译码

什么是卷积码?

卷积码是由伊利亚斯发明的一种非分组码,它更加倾向于纠错,对于实际的性能优于分组码,运算较为简单。

将卷积码记为(n,k,N),码率定义为k/n

n是n个比特
k是k个信息位
N是N个信息段

卷积码编码器

组成:Nk级移位寄存器,n个模二加法器,一个旋转开关

题目:画出(5,6,7)8(5,6,7)_8(5,6,7)8的卷积码译码器框图
如果这一步你画不出来 to 输入与输出的序列关系写不出来 to后面的码树图你就画不出来 to 状态图画不出来 to 维特比译码图画不出来

解题步骤:

  1. 不管几进制的你都要先转化成二进制:(101110111)2(101 110 111)_2(101110111)2
  2. 然后(5,6,7)8(5,6,7)_8(5,6,7)8有三个数,写三个多项式,多项式的指数从左到右从0开始依次递增,它们的系数就是转化成为二进制之后的数字,每个式子有三个系数,刚好把上面9个数字用完,如下:
    G1(D)=1+D2G_1(D)=1+D^2G1(D)=1+D2 -----X1,j=mj⨁X_{1,j}=m_j\bigoplusX1,j=mjmj−2m_{j-2}mj2
    后面几个式子就上图了,懒得打公式:
    在这里插入图片描述
    注意译码器的排布,它的序号是从左往右依次递减的

码数图

得到输入与输出的关系后,就可以画码树图了,我们这里以(3,1,3)(3,1,3)(3,1,3)卷积码的码树图为例,只要它没有标下标,就是默认十进制,把它转化成二进制就OK了。
步骤:

  1. 咱们前面不是说了吗,寄存器它的序号是从左到右依次递减的,这里的寄存器要以M3M2M1M_3M_2M_1M3M2M1的方式来进行,它的初始状态是000,从左到右进来的时候好比就是把最右边的那个0挤出去,于是乎变成了M3M2M1M_3M_2M_1M3M2M1=100100100,到这里我们就可以使用前面得到的输入与输出关系了,就那个异或的式子,后面码树图上的数字,全靠咱们这个输入与输出关系来填补
  2. 码树图的起始点有两个一上一下的箭头,一般是0在上,1在下,我看一些教材在画这个码树图的时候,还会在每个数的子节点用a,b,c,d来代表四个状态,为此在码树图底下专门列了一张表,这个好像没有强制要求,你画这个东西后期看起来好像更加清晰,不画也可以
  3. 码树图枝干上填写的数字就是它给的输入序列利用咱们的多项式计算后得到的输出序列,你移位寄存器每次移动一位,你就得进行一次异或计算,并把你异或计算的到的数字(有几个多项式就得到几个数字)写在码树图的枝干上
  4. 码树图原则上可以用于解码,就是搜索解码,比较相邻支路的汉明距离,选出最短的,依次连接,但这样子不实用,码树图支路按照指数规律增长,计算量巨大无比
    敲公式实在是太麻烦,我写纸上拍照展示给大家,以(3,1,3)卷积码为例
    在这里插入图片描述
    写出状态的abcd的好处就是后面你画状态图的时候方便一些

维特比译码

画码树图的时候记得选取两个寄存器来表示状态(a,b,c,d),这样你后面画维特比译码的时候比较方便,维特比译码实线表示输入的是0,虚线表示输入的是1,每一次译码的累加汉明距离要写在最右端,最右端画两个圆,把数值写里面,每推进一次,就要舍去数值较大的那一个路线,依次累积。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/348603.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

通信系统的同步技术归纳

载波同步:在相干解调时,接收端的解调器要产生一个与接收到的载波同频同相的相干载波位同步:接收端产生一个与接收信号符号速率相同,相位与最佳判决时刻一致的定时脉冲序列信号群同步:群同步是指在接收端产生与“字、句…

c语言 在txt文件中搜索关键词_网络推广外包—网络推广外包如何在搜索引擎中体现关键词优化效果...

在当下的互联网时代中,没有企业愿意远离这种流量获取快、用户需求大、宣传推广能力见效快的搜索引擎,况且通过互联网的帮助下,企业网站能够通过搜索引擎进行关键词优化后获取更多的转化率,增加企业交易额度的提升,谁又…

Spring JPA数据+Hibernate+ MySQL + Maven

在Spring MVC的帮助下开发Web应用程序意味着要创建几个逻辑架构层。 层之一是DAO(存储库)层。 它负责与数据库进行通信。 如果您至少开发了DAO层一次,则应该知道它涉及许多样板代码。 Spring Data本身就是与DAO相关的日常工作的一部分。 在帖…

数字通信系统中的均衡技术

均衡技术是为了消除码间串扰的影响 自适应均衡器 可以自动调整抽头滤波系数的均衡器。包含两个工作模式,训练模式和跟踪模式; 训练模式:发射机发射一个已知的定长的序列,以便接收机处的均衡器可以做出正确的设置跟踪模式&#…

eclipse中birt插件使用_waves教学:如何使用通道条插件在DAW中创建模拟工作流

这篇Waves小文章将帮助你了解通道条插件如何来加快混音工作流程,同时还能在DAW中添加令人愉悦的模拟调音台染色——以及它们如何以前所未有的灵活性适应数字新时代。什么是通道条?第一次看到一台老式模拟调音台时,人们常常因为按键、旋钮和推…

X-Mas Musings –在Grails集成测试中不要使用随机服务器端口

对许多人来说,十二月是反思或思考的时期。 所以我决定在去年的事情和想法,以反映- 每一天 ,直到圣诞节。 这是第四天 对于Grails集成测试,了解应用程序当前在哪个端口上运行非常有用。 Spring Boot以及因此建立在它上面的Grails都…

数字通信系统的分集技术

产生原因 无线信道的传输会被多个不同的因素干扰,增加辐射功率会对其他电台产生干扰,采用其他手段来处理数字信号 多径效应 直射波、反射波的传播路径不同,而且无线通信系统中接收端与发送端都是可以移动的,这就是多径效应。 …

主板螺丝是机箱配还是主板配_要配新电脑,A520主板和B450主板哪一个更加值得购买?...

Hello大家好,我是兼容机之家的小牛。上周AMD正式发布了最新的A520芯片组主板,这也补齐了500系列主板的高中低三档配置,现在500系列主板已经拥有X570、B550、A520三个芯片组。那么小牛为什么要拿上一代的B450和最新的A520来做对比呢&#xff1…

javafx 和swing_集成JavaFX和Swing(修订版)

javafx 和swing我刚刚完成了对使用Swing的应用程序组件的重写,现在正在使用JavaFX,最后得到了与更大的swing应用程序集成的JavaFX组件。 这是一个很大的应用程序,重写花了我一段时间,最后一切都很好,我很高兴自己做到了…

php读取csv指定行_PHP快速读取CSV大文件指定行

1、如何快速获取CSV大文件的总行数?办法一:直接获取文件内容,使用换行符进行拆分得出总行数,这种办法对小文件可行,处理大文件时不可行;办法二:使用fgets一行一行遍历,得出总行数&am…

使用WebLogic共享库连续交付ADF应用程序

介绍 当ADF应用程序建立在共享库之上时,有一种非常流行的架构模式。 因此,主应用程序被部署为EAR,并且所有子系统都在共享库中实现,这些共享库可以在“热”模式下独立构建并作为JAR部署到WebLogic,而无需停机。 这种方…

信号与系统 chapter1 常见信号及其变换

什么是信号? 它的定义及其宽泛,但在我们电子通信工程中,我们可以把它看成一种波形;在数学上,我们可以把它看成一个函数。说到函数,函数又分为离散与连续,信号也是一样,分为离散信号…

11选5下期算法_11选5为什么你不中奖

11选五 顾名思义 11个号里选择五个号码球 即中奖 当然玩法也多种多样 这也让很多彩民摸不清头绪 11选5这个东西呢 首先要心态好 毕竟20分钟一起 也算频率大的了 如果盲目的倍投 盲目的跟号 那就容易陷进去 无法自拔 所有的彩票都有概率 都有他所在的规矩 例如127910 8就在79中间…

信号与系统 chapter2 冲激偶函数与阶跃函数

什么是冲激偶函数 简单来说,从负方向向0趋近,结果为无穷大,从正方向趋近于0,结果为无穷小 它的性质: 冲激函数求导得来,推广: 阶跃函数 会考察你让你写出函数表达式 看上面那个式子&#xf…

c语言对中文字符串编码_Python || 学习笔记(1):数据类型字符串变量和编码

数据类型特性:对于0很多的整数,python允许用_对0进行分离10_000_000_000就等同于1000000000016进制用0x开头进行表示对于很大或很小的浮点数必须使用科学计数法表示,表示方法为 2.13e10表示2.13x10^10转义字符与C语言一样,为\&…

信号与系统 chapter3 冲激函数的尺度变换

在chapter2里我们简单的示例了一个阶跃函数做尺度变换的例子,在这一节里我们会对冲激函数做尺度变换,同样很简单 关于δ(at)\delta(at)δ(at) 它的证明如下,使用换元法即可得到: 始终利用的是冲激函数只在t0t0t0处有意义 如果它…

mongodb 主键_MongoDB主键是您的朋友

mongodb 主键MongoDB集合中的所有文档都有一个主键,称为_id 。 该字段在插入后自动分配给文档,因此几乎不需要提供它。 _id字段有趣的是,它是基于时间的 。 也就是说, _id的基础类型为ObjectId ,是12字节的BSON类型 &a…

web前端知识点太多_前端知识点总结——框架中报错集锦(含解决方法)

前端知识点总结——框架中报错集锦(含解决方法)1.vue1、指定template直接返回多个标签Component template should contain exactly one root element.解决方案:指定一个容器,将需要返回的多个标签放在这个容器中 div/form/a…2、读取了一个变量的属性但是…

信号与系统 chapter4 单位脉冲与单位阶跃序列

标题里有序列,说明咱们这里的自变量都是离散的,离散序列是相对于前面的连续信号而言,这里给它做了一个比较 单位脉冲序列 可以看到单位脉冲函数依然是十分牛批,只有在t0t0t0的地方才发挥作用 单位阶跃 两个单位阶跃序列做差可以…

原始性能数字– Spring Boot 2 Webflux与Spring Boot 1

我对性能测试的设置如下: 示例应用程序公开了一个端点(/ passthrough / message),该端点又调用下游服务。 到端点的请求消息如下所示: {"id": "1","payload": "sample payload&q…