基于TMS320DM642的G.726语音编解码算法的实现与优化
VIP免费
目 录
摘 要
ABSTRACT
第一章 绪 论 ......................................................... 1
§1.1 课题背景 ..................................................... 1
§1.2 语音编码标准的发展 ........................................... 2
§1.3 本文所做的工作 ............................................... 2
第二章 G.726 语音编解码原理及技术 .................................... 4
§2.1 语音编解码算法概述 ........................................... 4
§2.2 PCM 脉冲编码调制原理 ......................................... 4
§2.2.1 μ压缩率 ................................................. 5
§2.2.2 A 压缩率 ................................................. 6
§2.3 DPCM 的基本原理 .............................................. 7
§2.4 ADPCM 自适应差分脉码调制 ..................................... 9
§2.4.1 自适应量化 ............................................... 9
§2.4.2 自适应预测 .............................................. 10
§2.5 G.726 编解码器原理 .......................................... 11
§2.5.1 G.726 编码算法原理介绍 .................................. 11
§2.5.2 G.726 解码算法原理介绍 .................................. 17
§2.6 本章小结 .................................................... 18
第三章 G.726 编解码器的程序设计 ..................................... 19
§3.1 编解码程序构架 .............................................. 19
§3.2 G.711 编解码模块 ............................................ 19
§3.3 ADPCM 编解码模块 ............................................ 20
§3.3.1 主要功能函数分析 ........................................ 20
§3.3.2 核心功能子模块 .......................................... 21
§3.4 代码测试运行结果及分析 ...................................... 23
§3.4.1 数据测试结果及分析 ...................................... 23
§3.4.2 音频流测试结果及文件分析 ................................ 25
§3.5 本章小结 .................................................... 25
第四章 音视频监控服务器硬件平台 ..................................... 26
§4.1 G.726 音频编解码器系统构成 .................................. 27
§4.2 TMS320DM642 芯片简介 ........................................ 28
§4.2.1 DM642 CPU 单元 .......................................... 29
§4.2.2 DM642 的 Cache 结构 ...................................... 29
§4.2.3 DM642 的 EDMA ............................................ 30
§4.3 音频硬件系统设计 ............................................ 31
§4.3.1 音频编解码器 TLV320 AIC23B ............................... 31
§4.3.2 TMS320DM642 的音频接口 McASP ............................ 33
§4.3.3 TMS320DM642 与 AIC23B 的接口设计 ......................... 33
§4.4 本章小结 .................................................... 35
第五章 音频采集回放及算法 DM642 实现 ................................. 36
§5.1 DSP 软件开发平台 ............................................ 36
§5.1.1 CCS 集成开发环境 ........................................ 36
§5.1.2 实时操作系统 DSP/BOIS .................................... 36
§5.2 音频系统底层软件实现 ........................................ 37
§5.2.1 设备 I/O 驱动模型 ........................................ 38
§5.2.2 DSP/BIOS 配置及系统组织 ................................. 40
§5.2.3 AIC23 的配置参数 ........................................ 42
§5.2.4 McASP 口参数配置和管理 .................................. 43
§5.2.5 EDMA 管理策略及其配置 ................................... 45
§5.2.6 底层软件功能综述 ........................................ 47
§5.3 G.726 编解码器实现 .......................................... 47
§5.4 编解码实现的结果分析 ........................................ 48
§5.5 本章小结 .................................................... 49
第六章 基于 DM642 的 G.726 代码优化 ................................... 50
§6.1 剖析(profile)代码 ........................................... 50
§6.2 对 Cache 的分析和优化 ........................................ 51
§6.2.1 对 Cache 利用率的分析 .................................... 51
§6.2.2 对 Cache 的优化 .......................................... 52
§6.3 C 语言级优化 ................................................ 56
§6.3.1 C 编译器相关的优化 ...................................... 56
§6.3.2 提高软件流水效率的优化 .................................. 56
§6.3.3 用内联函数精简关键算法 .................................. 59
§6.3.4 逻辑运算代替乘除运算 .................................... 60
§6.3.5 减小存储器相关性 ........................................ 60
§6.3.6 C 语言级优化结果及分析 .................................. 61
§6.4 优化结果及分析 .............................................. 62
§6.5 本章小结 .................................................... 63
第七章 结论与展望 ................................................... 64
§7.1 课题主要研究成果 ............................................ 64
§7.2 存在的问题及改进思想 ........................................ 65
参考文献 ............................................................ 66
在读期间公开发表的论文和承担科研项目及取得成果 ...................... 68
致 谢 .............................................................. 68
第一章 绪 论
1
第一章 绪 论
§1.1 课题背景
语言,声音,是人类交流最重要的工具。也是最自然,最高效的沟通信息和
情感的手段。它伴随着人类社会的发展不断发展。随着现代社会各种通信、计算
机、多媒体技术的进步,使得电子计算机,人工智能介入下的语音和音频处理技
术得到了高速的发展。同时,语音技术又是一门跨学科的综合学科,它涵盖了数
字信号处理、信息工程、通信理论、电子科学、模式识别、人工智能等众多学科,
并且许多对语音数字信号处理有促进作用的学科如神经网路、小波理论、遗传算
法、进化算法、模糊理论、混沌理论等也在随之蓬勃发展[1]。
语音信号的数字化是语音技术中最基本、发展最快应用最广泛的技术手段。
语音信号的数字化即语音压缩与编码技术,是近年来通信技术以及数字多媒体技
术研究领域的一个重要发展方向。
语音的数字通信与模拟通信相比,无疑具有更高的效率和更高的性能。这集
中体现在:具有更高的话音质量;具有更强的抗干扰性能,并且易于加密;易于
存储和加密,节省存储介质资源;可以节省带宽,能够有效利用网络资源[1]。特别
是现代数据语音业务的飞速发展,网络资源的有限性对语音压缩编码技术提出了
更高的要求。在这样的实际需求推动下,语音编码技术已经形成了比较完善的理
论技术体系,其表现为,当今存在着众多的语音编码国际标准和地区性标准,并
且该领域也成为国际标准化工作中最为活跃的领域。
最早提出语音编码标准的是数码率为 64kbit/s 的PCM 波形编码器,后经过不
断改进和合并改造,形成了一种能够提供高质量语音的国际语音编码标准 G.726。
该标准的发展概要和原理将作为本课题的重要内容之一在后文介绍与论述。
在编码标准的日益成熟和发展的大背景下,涉及到语音技术的通信设备、计
算机、嵌入式系统的编码应用软硬件应运而生。尤其是近年来,嵌入式系统上实
现语音编码的应用越来越广泛。与此同时,不断追求高效,实时,占用较低系统
资源,又达到语音质量评估标准的算法不断出现。这对嵌入式应用产品开发者提
出了更高的要求。在这样的背景下,课题主要选取专用的嵌入式数字信号处理器,
并在产品级的硬件平台基础上,实现高质量高效率的语音编码。本课题的工作是
为语音的实时传输和存储,多媒体产品的多路远程监控做出了重要的努力。
这里要说明的是,语音处理是一个多媒体系统的重要方面,只有视频图像而
没有声音的系统不能称为多媒体系统。IT(Information Technology)领域的科技成果
普遍应用于视音频领域大大地推动了视音频科技的进步,其中 DSP(Digital Signal
Processor 即数字信号处理器)在音频领域内的应用就是一个很好的例子。
基于 TMS320DM642 的G.726 语音编码算法实现与优化
2
目前,不少研究者已经在 TI (Texas Instrument)公司的 C5X 系列 DSP 芯片上实
时实现了 G.726 和G.729 语音编码方案。但是由于该系列 DSP 芯片的计算能力有
限,最高计算峰值为 400MIPS,仅能实现单一语音编码功能,不能满足同时要求
语音和图像的场合,如视频会议,视频点播及视频监控等。因此,在 TI 公司高性
能DSP 处理芯片 TMS320DM642 上实现单片 DSP 同时处理视频和音频编码,占
用尽可能少的计算资源和存储空间来尽可能多的完成多路音频和视频编码功能,
从而构建一个音视频同步的多媒体系统。
本课题是作为音视频远程监控多媒体系统中音频压缩编码的关键部分。依托
音视频服务器较好的硬件平台,选择 TI 公司高性能 DSP 处理芯片 TMS320DM642。
提供优化后的代码移植到 DSP 中,充分利用系统的硬件资源并在软件上实行算法
与代码的优化。研究如何开发基于 TMS320DM642 的语音压缩编解码的实现方法
并且配合视频压缩算法达到稳定的音视频监控目的。
§1.2 语音编码标准的发展
国际电信联盟(ITU),其前身为国际电报电话咨询委员会(CCITT)。主要负责
研究和制定与通信相关的标准。作为主要通信业务的电话通信业务中使用的语音
编码标准均是由 ITU 负责完成的。
语音波形编码是最主要的编码方式,也是最早提出和实现的编码技术。应用
最多的语音波形编码技术主要有 PCM(脉冲编码调制),ADPCM(自适应 PCM)
和SBC(子带编码),PCM 和ADPCM 属于时域编码。语音波形编码算法以尽可
能重构语音波形为原则。其复杂度和成本较低。这一优势使其在工商民用市场得
到广泛应用。1972 年,ITU-T 标准化了一个 64Kbit/s 压扩型 PCM 编码器。1984
年,ITU-T 对32Kbit/s 自适应差分脉码调制(ADPCM)进行了标准化,形成 G.721,
G.723。G.723 语音波形编码算法标准化于 1988 年在 G.721 的基础上,对两种附加
速率 40Kbit/s 和24Kbit/s 进一步标准化[2]。G.723 已经被选中作为欧洲数字无绳电
话(DECT)和无绳电话 II(CT2)的标准。G.726 标准化于 1990 年;在 G.721 和G.723
标准的基础上,ITU 提出了 G.726 标准,以便把 64kbit/s 的非线性 PCM 信号转换
为40kbit/s、32kbit/s、24kbit/s,16kbit/s 的ADPCM 信号[3]。G.726 的算法简单,延
迟低。它能够以低比特率达到网络等级的话音质量。而且,经过多次转换后,它
仍能保证质量。因此 G.726 在语音存储和传输领域得到了较为广泛的应用。
§1.3 本文所做的工作
本文主要工作集中于构建基于 TI 公司的数字音视频处理芯片 DM642 的音频
或语音输入输出系统以及 G.726 语音编解码实现。主要实现的功能有:
1.原始音频数据的采集,ADC/DAC,测试,回放。
第一章 绪 论
3
2.G.726 语音编码的实现,包括仿真平台实现测试,DSP 移植实现等。
3.对代码进行优化,显著地提高其在嵌入式平台上的运行效率。
在语音编码算法方面,根据 G.726 语音压缩编码的流程框架,对软件的实现
架构进行了改造设计,对 ADPCM 进行了详细的研究,在 CCS2.0 编译环境下进行
代码编写,并对其进行了测试和验证。
在硬件底层接口方面,选用了非常适应与 DSP 处理数据的音频编解码芯片,
并根据其特点和 DM642 的音频口编写了相应的驱动程序,构建了完整的音频流从
采集到回放的程序,最后采用实时音频测试和验证。
由于仿真平台的编解码代码不能满足实时的要求,因此不能直接移植到
DM642 上,必须对其进行优化。本文对 DM642 芯片的特点进行了分析,并且基
于这些分析对代码进行了优化,并对其进行了测试和验证。
本文各章的主要结构正是基于这些内容展开的。第 2章对 G.726 编解码算法
原理进行了深入介绍;第 3章重点讨论了适用于 DSP 嵌入式系统的 C代码实现。
最后,写出仿真平台测试结果。第 4章详细的讲述了音视频监控服务器硬件平台,
特别是音频系统部分。第 5章描述了音频采集回放及编解码算法 DM642 实现,包
括基本驱动实现和音频数据的流处理方法。第 6章针对基于 DM642 的特性对算法
的代码进行了有效的优化。各章节都对所做的内容经行了测试。最后在第 7章进
行了总结。
基于 TMS320DM642 的G.726 语音编码算法实现与优化
4
第二章 G.726 语音编解码原理及技术
§2.1 语音编解码算法概述
语音编码即是将麦克风送来的模拟信号通过 A/D 转换器,用能达到我们所期
望质量的采样率对模拟语音信号进行采样,然后运用数字信号处理技术对语音信
号进行压缩处理,得到尺寸较小的比特流。我们可以把表示这些信息的数字流发
送给解码器。在解码端,相应的语音解码器接收到这些数字比特流后,将其解压
缩,还原成数字化的语音采样值,然后通过 D/A 转换器和扬声器将这些采样值还
原成模拟的语音信号。
模数转换器的输出通常是脉冲编码调制(PCM)信号。为了保证语音的高质
量(带宽限制为 300~3400Hz),每个取样点要用 16bit/s 表示。根据奈奎斯特定理,
线性 PCM 信号必须具有 8kHz 的采样率,则所得的比特率为 128kbit/s。这个比特
率,就作为未压缩语音表达的参考比特率[5]。
语音编码方法可以分为三类:波形编码、参数编码和混合编码。波形编码技
术以尽可能重构语音波形为原则进行数据压缩,即在编码端以波形逼近为原则对
语音信号进行压缩编码,解码端则根据这些编码数据恢复出语音信号的波形。它
具有语音质量好,抗噪声性能强等优点,但所需的编码速率高,一般在 64~16 Kbit/s
之间。在波形编码中,最典型的应该是自适应差分脉冲编码调制(ADPCM)和子
带ADPCM,包括 ITU-T G.726、ITU-T G.723、ITU-T G.721。
§2.2 PCM 脉冲编码调制原理
原始语音信号属于模拟信号,在接收语音信号的一端,我们需要先将模拟信
号转化为适合数字系统的数字信号,即模/数转换。模/数转换一通过三个步骤:抽
样,量化和编码[3]。
在这里,最基本应用最多的编码方法是脉冲编码调制 PCM(Pulse Code
Modulation),他将量化后的输入信号变成二进制码元。量化后的信号,已经是取
值离散数字的信号。下一步的问题是如何将这些数字型号编码。最常用的符号是
而进制“0”,“1”代表此离散数值。
PCM 系统的原理如图 2-1 所示,抽样器对模拟信号采样,得到在采样时刻的
采样值。这个采样值仍然是模拟量。在量化之前,通常用采样保持电路将其做短
暂保存,以便电路有时间对其进行量化。在实际工程中,采样保持电路做在一起。
量化器把模拟抽样值变成离散的数字量,然后在编码器中进行二进制编码。这样,
每个二进制码组代表量化后的信号抽样值。解码原理与编码过程相反[5]。
摘要:
展开>>
收起<<
目录摘要ABSTRACT第一章绪论.........................................................1§1.1课题背景.....................................................1§1.2语音编码标准的发展...........................................2§1.3本文所做的工作...............................................2第二章G.726语音编解码原理及技术................................
相关推荐
作者:陈辉
分类:高等教育资料
价格:15积分
属性:69 页
大小:1.34MB
格式:PDF
时间:2024-11-19