碧波液压网 欢迎你,游客。 登录 注册

基于FPGA的卷积码的编/译码器设计

版权信息:站内文章仅供学习与参考,如触及到您的版权信息,请与本站联系。
液压导航网

  引言

  卷积码是深度空间通信系统和无线通信系统中常用的一种差错控制编码。在编码过程中,卷积码充分利用了各码字间的相关性。在与分组码同样的码率和设备复杂性的条件下,无论从理论上还是从实践上都证明,卷积码的性能都比分组码具有优势。而且卷积码在实现最佳译码方面也较分组码容易。因此卷积码广泛应用于卫星通信,CDMA数字移动通信等通信系统,是很有前途的一种编码方式。对其进行研究有很大的现实意义。

  1 、(2.1.2)卷积码的基本概念

  1.1(2.1.2)卷积码的结构图

  (2.1.2)卷积码的编码器由两级移位寄存器组成,它的存数(Q0,Q1)有四种可能:00,10,01和11,相应于编码器的四个状态S0, S1, S2和S3。(2.1.2)卷积码编码器如图1:

  由图可知,该卷积码的生成多项式为

  于是,得到的码多项式是

  1.2(2.1.2)卷积码的网格图表示

  为了表示卷积码编码器在不同输入的信息序列下,编码器各状态之间的转移关系,以及状态转移与时间的关系,须画出编码器的网格图。网格图是一种能清楚显示状态转移的时间依赖性状态图,因而用网格图来表示编码器的操作是很有用的。图2表示了(2.1.2)卷积码的网格图。图中四行小圆圈表示移位寄存器的四种状态,虚线表示输入是0时的状态转移,实线表示输入是1时的状态转移,支路上标注的码元为输出比特。

  2、(2.1.2)卷积码编码器的编程实现与仿真波形

  由以上分析可以发现,(2.1.2)编码器由两个模二加法器组成,分别生成 。而此时输出的是并行数据,须经过并串转换才能输出,在用VHDL编程时,用LOAD和CLK来控制信息的输入与卷积码的产生,当LOAD为底电平时,在每个CLK的上升沿输入一位信息,并进行异或运算;当LOAD为高电平时,在CLK的上升沿时刻,把生成的卷积码经过并串转换之后输出。

  经过编译调试之后,仿真波形如图3:

  图中,D-IN为输入的信息位,D-OUT为输出的串行卷积码,Q为移位寄存器的内容。输入序列为:1 0 1 0 1 0 … …,输出为:11 10 00 01 10 … …。实现了编码器的功能。

  3、(2.1.2)卷积码译码器的编程实现与仿真波形

  对接收到的编码序列进行译码时,利用网格图寻找最大可能的输入码序列作为译码输出。维特比译码算法通过限制搜索的序列数目简化了译码过程,对每个新输入的符号只保留转移到各个状态的最可能路经。

  实际译码过程中,考虑到译码延时与译码器存储量,常采用截尾译码方式。即在处理完第L段码元序列后,译码器就开始输出第1个判决比特,L称为译码深度,等于译码器的译码输出延时。理论表明,当L=5~10v时(v为卷积码编码存贮长度),对译码器输出的译码错误可以忽略。本方案采用L=6v。

你没有登陆,无法阅读全文内容

您需要 登录 才可以查看,没有帐号? 立即注册

标签:
点赞   收藏

相关文章

发表评论

请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。

用户名: 验证码: 看不清?点击更换

最新评论