Viterbi译码算法的研究与实现

Viterbi译码算法的研究与实现

论文摘要

本文在研究分析前人工作的基础上,对Viterbi译码算法的若干实现技术进行了优化处理,提出了一种用寄存器交换法实现Viterbi译码的完整方案。首先借助Matlab 7.0软件搭建完整测试系统,包括编译码、调制解调以及信号在信道中的传输过程。根据Matlab生成的性能曲线又对软判决位数、交织深度和度量值计算方式等参数的变化对译码性能的影响进行了研究。用Verilog硬件描述语言具体实现了编译码过程,确定了译码器主要模块的体系结构,分析和均衡了面积与误码率相互制约的矛盾。软判决位数、交织深度等参数均为编译前可配置。采用了一系列方法如截短法、用等效的思想简化启动过程、加比选计算并行化等,进一步改进了Viterbi译码算法的性能。在用ModelSim 6.0进行波形仿真时,要有数万译码数据输出到文件,人工几乎不可能完成其与原始数据文件的比较以获知其译码正确性,于是利用MFC编写了直观具有图形界面的误码率统计程序。之后又利用Xilinx ISE9.1i软件基于Virtex5芯片进行综合,最大输出频率可达近200Mbps。将IP Core下载到HAPS-54开发板中,并在真实系统中进行了BER性能测试,发现自研IP Core,在信噪比高于5.0时优于Altera公司的同类产品和CDM-600。为了使我们的研究具有更强的实用性,仿照DVB-S系统,我们将卷积编码作为内码与RS编码进行级联,又融进了块交织技术,确定了交织矩阵和交织方案,这样就进一步提高了编译码的性能和抗突发错误的能力。

论文目录

  • 摘要
  • ABSTRACT
  • 第一章 绪论
  • 1.1 课题背景
  • 1.2 国内外研究现状
  • 1.3 主要研究内容
  • 1.4 文章的组织结构
  • 第二章 Viterbi 译码算法的实现与改进
  • 2.1 卷积编码
  • 2.1.1 总体介绍
  • 2.1.2 三种表述方法
  • 2.1.3 卷积编码的应用
  • 2.2 Viterbi 译码
  • 2.2.1 卷积码的三种译码方式
  • 2.2.2 Viterbi 译码的基本原理
  • 2.3 利用 Matlab7.0 构建模拟环境
  • 2.3.1 总体设计流程
  • 2.3.2 各模块功能与实现
  • 2.4 算法级改进及论证
  • 2.4.1 软硬判决性能比对实验
  • 2.4.2 简化欧式距离与截短法应用实验
  • 2.5 本章小结
  • 第三章 Viterbi 译码器 RTL 级优化与实现
  • 3.1 自研 IPCore 改进及特点
  • 3.1.1 具体改进
  • 3.1.2 总体特点
  • 3.1.3 功能描述
  • 3.2 译码器整体设计方案
  • 3.2.1 整体框图
  • 3.2.2 输入输出接口列表
  • 3.2.3 各文件之间调用关系
  • 3.3 凿孔恢复模块
  • 3.3.1 总体设计思路
  • 3.3.2 具体设计方案
  • 3.3.3 断流功能的支持
  • 3.4 标准码率 Viterbi 译码模块
  • 3.4.1 总体设计与等效启动过程
  • 3.4.2 分支度量单元与简化欧式距离
  • 3.4.3 加比选单元与并行化算法的研究
  • 3.4.4 路径更新单元与度量值正常化
  • 3.4.5 幸存路径管理单元与截短法
  • 3.4.6 误码率计算单元与译码正确性评估
  • 3.5 功能仿真测试
  • 3.5.1 整体测试波形
  • 3.5.2 利用MFC 编写直观数据比较程序
  • 3.6 卷积编码器
  • 3.6.1 卷积编码的选择
  • 3.6.2 编码器的硬件设计与仿真实验
  • 3.7 本章小结
  • 第四章 Viterbi 译码器真实系统下的测试
  • 4.1 FPGA 一般设计流程
  • 4.2 HAPS-54 开发板
  • 4.3 综合结果
  • 4.3.1 资源占用
  • 4.3.2 译码速率
  • 4.4 具体测试
  • 4.5 本章小结
  • 第五章 级联编码的研究
  • 5.1 级联编码
  • 5.2 级联码的模拟
  • 5.3 块交织技术的引进
  • 5.4 本章小结
  • 第六章 结束语
  • 致谢
  • 参考文献
  • 作者在学期间取得的学术成果
  • 相关论文文献

    标签:;  ;  ;  ;  ;  

    Viterbi译码算法的研究与实现
    下载Doc文档

    猜你喜欢