卷积码编码及译码实验 浅谈卷积编码下的FPGA实现

2018年11月25日   缅甸小勐拉   13人浏览   0人评论

  卷积编码是现代数字通信系统中常见的一种前向纠错码,区别于常规的线性分组码,卷积编码的码字输出不仅与当前时刻的信息符号输入有关,还与之前输入的信息符号有关。

  本文主要是关于卷积码编码及译码实验的相关介绍,并着重分析阐述了基于卷积编码下的FPGA实现。

  卷积码的编码分为两类:前馈和反馈,在每类中又可分为系统和非系统形式。我们这里只考虑非系统形式的前馈编码器。‘

  上图是WLAN 802.11a协议中采用的卷积编码器结构,输入比特k=1,输出n=2,存储器长度m=6,编码输出不仅与当前输入有关,还与存储器存储的之前的输入数据有关,具体由之前的哪些数据得到编码输出呢,由生成多项式确定其连接关系。这里,生成多项式为g0=133(八进制)和g1=171(八进制)(右边是最高位),输出数据A的生成多项式为:

  生成多项式确定了卷积编码器输出的连接关系。根据多项式的系数,在相应项进行连接。生成多项式写成二进制序列的形式分别为:g0 = [1 0 1 1 0 1 1]和g1 = [1 1 1 1 0 0 1](右边是最高位)。我们假设信息序列u,两个编码器输出序列分别为v(0)和v(1),编码器可以看成一个线性系统,系统的信道响应脉冲最多持续m+1个时间单元,编码输出可以写成编码输入与信道脉冲响应的卷积(即生成多项式),即

  卷积码是一种纠错编码,它将输入的k个信息比特编成n个比特输出,特别适合以串行形式进行传输,时延小。卷积码编码器的形式如图17-1所示,它包括:一个由N段组成的输入移位寄存器,每段有k段,共Nk个寄存器;一组n个模2和相加器;一个由n级组成的输出移位寄存器,对应于每段k个比特的输入序列,输出n个比特。

  由图17-1可以看到,n个输出比特不仅与当前的k个输入信息有关,还与前(N-1)k个信息有关。通常将N称为约束长度(有的书中也把约束长度定为nN或N-1)。常把卷积码

  记为:(n 、k 、N ),当k =1时,N -1就是寄存器的个数。编码效率定义为:

  /c R k n = (17-1) 卷积码的表示方法有图解表示法和解析表示法两种:解析法,它可以用数学公式直接表达,包括离散卷积法、生成矩阵法、码生成多项式法;图解表示法,包括树状图、网络图和状态图(最的图形表达形式)三种。一般情况下,解析表示法比较适合于描述编码过程,而图形法比较适合于描述译码。

  下面以(2,1,3)卷积编码器为例详细讲述卷积码的产生原理和表示方法。(2,1,3)卷积码的约束长度为3,编码速率为1/2,编码器的结构如图17-2所示。

  这里我们主要介绍码多项式法。我们可以用多项式来表示输入序列、输出序列、编码器中移位寄存器与模2和的连接关系。

  为了简化,仍以上述(2,1,3)卷积码为例,例如输入序列1011100…可表示为 ()2341M x x x x =++++ (17-2) 在一般情况下,输入序列可表示为

  我们可以用多项式表示移位寄存器各级与模2加的连接关系。若某级寄存器与模2加相连接,则相应多项式项的系数为1;反之,无连接线时的相应多项式项系数为0,以图17-2编码器为例,相应的生成多项式为

  利用生成多项式与输入序列多项式相乘,可以产生输出序列多项式,即得到输出序列。

  卷积码的译码方法有两类:一类是大数逻辑译码,又称门限译码;另一类是概率译码,概率译码又能分为维特比译码和序列译码两种。门限译码方法是以分组理论为基础的,其译码设备简单,速度快,但其误码性能要比概率译码法差。这里我们主要介绍维特比译码。

  维特比(Viterbi )译码和序列译码都属于概率译码。当卷积码的约束长度不太大时,与序列译码相比,维特比译码器比较简单,计算速度更快。维特比译码算法,以后简称VB 算法。

  采用概率译码的一种基本想法是:把已接收序列与所有可能的发送序列做比较,选择其中码距最小的一个序列做为发送序列。如果发送L 组信息比特对于(,)n k 卷积码来说,可能发送的序列有2kL 个,计算机或译码器需存储这些序列并进行比较,以找到码距最小的那个序列。当传信率和信息组数L 较大时,使得译码器难以实现。VB 算法则对上述概率译码(又称最大似然解码)做了简化,以至成为了一种实用化的概率算法。它并不是在网格图上一次比较所有可能的2kL 条路径(序列),而是接收一段,计算和比较一段,选择一段有最大似然可能的码段,从而达到整个码序列是一个有最大似然值的序列。

  下面将用图17-2的(2,1,3)卷积码编码器所编出的码为例,来说明维特比解码的方法和运作过程。为了能说明解码过程,这里给出该码的状态图,如图17-5所示。维特比译码需要利用图来说明译码过程。根据前面的画网格的例子,读者可检验和画个该码网格图如图17-4所示。该图设输入信息数目L=5,所以画有L+N=8个时间单位(节点)。这里设编码器从a 状态开始运作。该网格图的每一条路径都对应着不同的输入信息序列。由于所有的可能输入信息序列共有2kL 个,因而网格图中所有可能路径也有2kL 条。这里节

  同到达第3时刻可能的8个码序列(即8条路径)进行比较,并计算出码距。该例中到达第3时刻a点的路径序列是(0 0 0 0 0 0)和(1 1 1 0 1 1 ),它们与

  上述每个节点都保留码距较小的路径为幸存路径,所以幸存路径码序列是(0 0 0 0 0 0)、(0 0 0 0 1 1)、(1 1 0 1 0 1)和(0 0 1 1 0 1),如图17-6(a)所示。用与上面类同的方法可以得到第4、5、6、7时刻的幸存路径。需指出对于某一个节点而言比较两条路径与接收序列的累计码距时,若发生两个码距值相等,则可以任选一路径作为幸存路径,此时不会影响最终的译码结果。图17-6(b)给出了第5时刻的幸存路径,读者可自行验证。在码的终了时刻a状态,得到一根幸存路径,如图17-6(c)所示。由此看到译码器输出是‘R=(1 1 0 1 0 1 0 0 0 1 0 1 1 1 0 0),即可变换成序列(1 1 0 1 1 0 0 0),恢复了发端原始信息。比较’R和R序列,可以看到在译码过程中己纠正了在码序列第1和第7位上的差错。当然,差错出现太频繁,以至超出卷积码的纠错能力,则会发生误纠,这是不希望的。

  这里,采用verilog语言对编码过程进行描述。通过状态机控制编码的过程,设置有三种状态:IDLE,ENCODING,CLEAR。通常卷积编码以数据块为单元,逐块进行编码的。当待编码的数据块未到达编码单元时,状态机处于IDLE态,即空闲状态,不做任何处理。当数据块到来时,存在一个触发信号,让状态机开始进入ENCODING状态,即编码状态,编码状态持续的时间为输入的数据块的长度。此外,状态机还设置有CLEAR态,因为在卷积编码中,还有尾比特需要输出,这时输入看做全0输入,存储器逐渐清空,持续时间为尾比特的长度。这一步完成后,状态机重新回到IDLE态,等待下一个数据块的到来。代码如下:

  input e_start_i, //数据起始信号,比数据uncoded_bits第一个符号早一个时钟,作为编码状态机的启动信号

  在Vivado中新建IO Planning工程来初步引脚分配,这样会大大提高开发效率 在这里,你可....

  提出了一种基于循环前缀的符号同步算法。此算法在最大似然估计的基础上加以改进,简化了符号同步中相关运算....

  相较4G,5G无线网络架构将发生重大变化。从功能上看,5G通信收发系统仍将大致分为天线单元、射频单元....

  TMP411 ±1°C Programmable Remote/Local Digital Out Temperature Sensor

  TMP411设备是一个带有内置本地温度传感器的远程温度传感器监视器。远程温度传感器,二极管连接的晶体管通常是低成本,NPN或PNP型晶体管或二极管,是微控制器,微处理器或FPGA的组成部分。 远程精度为1 C适用于多个设备制造商,无需校准。双线串行接口接受SMBus写字节,读字节,发送字节和接收字节命令,以设置报警阈值和读取温度数据。 TMP411器件中包含的功能包括:串联电阻取消,可编程非理想因子,可编程分辨率,可编程阈值限制,用户定义的偏移寄存器,用于最大精度,最小和最大温度监视器,宽远程温度测量范围(高达150C),二极管故障检测和温度警报功能。 TMP411器件采用VSSOP-8和SOIC-8封装。 特性 1C远程二极管传感器 1C本地温度传感器 可编程非理想因素 串联电阻取消 警报功能 系统校准的偏移寄存器 与ADT7461和ADM1032兼容的引脚和寄存器 可编程分辨率:9至12位 可编程阈值限...

  TMP468器件是一款使用双线 C兼容接口的多区域高精度低功耗温度传感器。除了本地温度外,还可以同时监控多达八个连接远程二极管的温度区域。聚合系统中的温度测量可通过缩小保护频带提升性能,并且可以降低电路板复杂程度。典型用例为监测服务器和电信设备等复杂系统中不同处理器(如MCU,GPU和FPGA)的温度。该器件将诸如串联电阻抵消,可编程非理想性因子,可编程偏移和可编程温度限值等高级特性完美结合,提供了一套精度和抗扰度更高且稳健耐用的温度监控解决方案。 八个远程通道(以及本地通道)均可独立编程,设定两个在测量位置的相应温度超出对应值时触发的阈值。此外,还可通过可编程迟滞设置避免阈值持续切换。 TMP468器件可提供高测量精度(0.75C)和测量分辨率(0.0 625C)。该器件还支持低电压轨(1.7V至3.6V)和通用双线制接口,采用高空间利用率的小型封装(3mm×3mm或1.6mm×1.6mm),可在计算系统中轻松集成。远程结支持-55C至+ 150C的温度范围。 特性 8通道远程二极管温度传感器精度:0.75&...

标签:编码和译码
祥云千寻广告
标签列表
最新留言
    网站分类
    文章归档
      控制面板
      您好,欢迎到访网站!
        查看权限

      www.6200338.com网站地图

      Powed by Z-BlogPHP.Theme by 千寻广告