论文摘要
目前,音频解码主流的解决方案有基于DSP的解码方案、基于RISC处理器的解码方案以及基于ASIC的解码方案。其中,基于DSP或者RISC处理器的解码方案虽然有兼容性好、开发周期短的优点,但是解码器的整体功耗较高,无法满足移动终端对功耗的要求;而基于ASIC的解码方案虽然具有低功耗的优点,但是它的灵活性比较差,而且开发周期比较长;而软硬件协同设计兼顾了低功耗和兼容性的要求。基于以上几种方案的优缺点,本文在进行MP3和AAC音频解码器的设计时采用了软硬件协同设计的解码方案。整个解码器由一个CPU核加上硬件加速模块组成,所有解码工作可以通过运行在CPU上的软件与硬件模块协同完成。本文的主要工作包括以下几个方面:首先介绍了各种音频解码的实现方案,分析和比较了它们的优点和缺点,并且在此基础上提出了基于软硬件协同设计的音频解码方案。然后,本文介绍了软硬件协同设计的基本原则以及步骤,并且从MP3和AAC音频的解码算法分析出发,详细分析和讨论了各个模块的复杂度。在复杂度分析结果的基础上,本文对MP3和AAC音频的解码进行了软硬件模块的划分,即将计算集中的模块以及计算频繁的操作运用硬件实现,而将控制集中的模块通过软件来实现,根据软硬件划分的结果确定了MP3和AAC音频解码器的整体架构。接着详细讨论了MP3和AAC音频解码器的硬件实现模块的设计,包括VLD模块和频时变换模块。对于MP3和AAC音频中Huffman解码器的设计,本文采用了一种效率高和占用资源少的硬件实现方法—十六叉树搜索法。对于频时变换计算模块,本文采用统一的基于DCT-II的变换核的快速算法对MP3的综合滤波器组和AAC的IMDCT进行计算。然后具体介绍了MP3音频解码的软硬件协同实现。完成软硬件的协同工作。此外,本文还进行了针对MP3音频解码的软件进行了算法优化和定点化,包括浮点变量的定点化以及浮点算法的定点化,定点化的结果表明精度满足设计的要求。最后对上述设计的MP3音频解码器进行了软硬件的协同验证,并且对其性能进行了软硬件协同的评估,包括硬件消耗资源的开销评估以及运用硬件加速模块之后取得的效果的评估。性能评估以及最后码流测试的结果表明:本设计可以在Xilinx的XUP V2P开发板上实现MP3音频的单声道32kHz采样码流的实时解码。
论文目录
中文摘要ABSTRACT第一章 绪论1.1 课题研究背景和意义1.2 数字音频编码技术介绍1.3 数字音频解码器实时实现方法介绍及比较1.4 论文的研究内容第二章 音频编码标准介绍2.1 AVS简介2.2 AVS关键技术介绍2.2.1 上下文位平面无损解码2.2.2 量化域方极坐标立体声编解码2.2.3 反量化2.2.4 多分辨率综合2.2.5 频率-时间映射2.3 AC-3 简介2.4 AC-3 关键技术介绍2.4.1 耦合过程2.4.2 重组矩阵的过程2.4.3 指数尾数编码2.4.4 变换滤波器组2.5 MP3 简介2.6 MP3 关键技术介绍2.6.1 Huffman解码2.6.2 反量化2.6.3 立体声处理2.6.4 重排序和去混叠2.6.5 逆向离散余弦变换2.6.6 子带合成2.7 AAC简介2.8 AAC关键技术介绍2.8.1 Huffman解码2.8.2 反量化2.8.3 缩放因子解码2.8.4 立体声编解码2.8.5 预测模块2.8.6 强度立体声编解码2.8.7 时域噪声整形2.8.8 滤波器组2.9 本章小结第三章 MP3 和AAC解码器软硬件协同设计3.1 软硬件协同设计方法概述3.2 MP3 和AAC解码器软硬件协同设计3.2.1 MP3 解码器复杂度分析3.2.2 AAC解码器复杂度分析3.2.3 软硬件功能划分3.2.4 软硬件协同设计3.3 本章小结第四章 MP3 和AAC解码器的通用硬件模块设计4.1 基于MP3 和AAC的VLD模块设计4.1.1 顺序搜索法4.1.2 二叉树搜索法4.1.3 改进的二叉树搜索法——十六叉树搜索法4.1.4 VLD模块的详细设计4.2 基于MP3 和AAC的滤波器组和IMDCT模块设计4.2.1 MP3 综合滤波器组的快速算法4.2.2 AAC IMDCT快速算法4.2.3 DCT-II的快速算法4.3 本章小结第五章 MP3 音频解码器的软硬件协同实现5.1 XUP V2P开发板介绍5.2 Xilinx EDK开发流程介绍5.3 PowerPC405 处理器介绍5.4 PLB总线介绍5.5 MP3 音频解码器的软硬件协同实现5.5.1 C Model的实现5.5.2 VLD硬件模块的仿真和验证5.5.3 系统集成5.6 本章小结第六章 MP3 音频解码器性能分析6.1 VLD模块的性能分析6.2 软件效果分析6.3 本章小结结束语参考文献发表论文和科研情况说明致谢
相关论文文献
标签:音频解码论文; 软硬件协同设计论文;