• system generator 卷积编码器快速设计


    卷积码

    卷积码是一种特殊的编码方式,不仅与当前的输入有关,还与之前的输入有关。可以用一个多项式来表示一个卷积编码,多项式表示有多少个移位寄存器以及他们怎么与模2加法器相连。比如,下图中的无反馈的卷积编码器有一个输入、两个输出和两个以为寄存器。

     

    无反馈的卷积编码器的描述包含2个部分:约束长度和生成多项式,有反馈的卷积编码器还包含一个反馈连接的多项式。约束长度是矢量,矢量的维度是输入数据的每一个点的bits数量,矢量的长度是移位寄存器的长度加上1(当前输入)。上图中的编码器约束长度是一个一维的矢量,因为输入是一维的,矢量的长度是32个移位寄存器的长度加当前输入1

    生成多项式,如果有k个输入和n个输出,则生成矩阵是一个Kxn的矩阵,第ij列元素表示第i个输入和第j个输出之间的关系。上图中的两个矩阵分别为[110 111],生成多项式矩阵可以表示为[6 7]

    matlab的函数poly2trellis是可以根据上面的参数设计编码器。

    对于上图,状态变化和输出可以用正面的图表示

     

    即当前状态如果为10,当前输入为0话下一个状态跳转到01,两个模2输出为11;如果输入为1,下一个状态跳转到11,输出为00

    simulink来实现上图的编码器,

    给的输入为一个symbol=1bit,数据为

     Columns 1 through 13

         1     0     1     1     0     1     1     1     0     0     0     1     1

      Columns 14 through 21

         0     1     1     0     0     0     0     1

    编码输出为

      Columns 1 through 13

         1     1     1     1     1     0     0     0     1     0     1     0     0

      Columns 14 through 26

         0     0     1     1     0     0     1     0     0     1     1     0     0

      Columns 27 through 39

         1     0     1     0     0     0     1     0     0     1     0     0     0

      Columns 40 through 42

         0     1     1

    对上述编码进行译码验证。

     

     

    OPTIMISM, PASSION & HARDWORK
  • 相关阅读:
    KafkaSpout 重复消费问题解决
    FastJson 输出值 首字母大小写问题
    Kafka0.7运行时报错 kafka/javaapi/consumer/ConsumerConnector : Unsupported major.minor version 51.0 解决
    Zookeeper原理与Curator使用
    Strom 消息处理机制 中英对照翻译 (Storm如何保证消息被完全处理)
    Mac安装 Storm 小结
    linux下实现ftp上传文件
    Task 0.0 in stage 1.0 (TID 1) had a not serializable result: org.apache.hadoop.hbase.client.Result
    Spark操作HBase
    maven-pom-project文件报错
  • 原文地址:https://www.cnblogs.com/hiramlee0534/p/5975744.html
Copyright © 2020-2023  润新知