基于DSP-的EVRC-声码器实现与优化(共5页)_第1页
基于DSP-的EVRC-声码器实现与优化(共5页)_第2页
基于DSP-的EVRC-声码器实现与优化(共5页)_第3页
基于DSP-的EVRC-声码器实现与优化(共5页)_第4页
基于DSP-的EVRC-声码器实现与优化(共5页)_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上EVRC语音编码器的FPGA实现与数据传输技术谢岩 卢虎( 空军工程大学理学院, 陕西西安 )摘要:本文主要研究EVRC语音编码器的FPGA实现与优化,通过对EVRC算法的分析,给出了EVRC 语音编码器的硬件顶层设计模块、数据同步设计方法以及EVRC编解码模块数据处理流程,讨论了EVRC 语音编码器的PCI接口设计,分析驱动代码生成等关键技术。该系统稳定可靠,灵活性高可满足不同语音编码应用的要求,具有较高的实用价值。关键字:语音编码器 EVRC FPGA 指令流水 中图分类号 TN912.3 文件标识码 AThe Implementation of EVRC Cod

2、er and Transmission by PCI Based on FPGAXIE Yan(Electronic Information School, Nothwestern Polytechnical University, Xian ShaanXi China)Abstract: This paper researched the implementation and optimization of EVRC speech coder based on FPGA, through the analysis of EVRC algorithm, top-level design of

3、EVRC coder hardware modules ,data synchronization design and EVRC codec data processing module was given, discussed the EVRC voice PCI Encoder Interface design, analysis-driven code generation and other key technologies. The system is reliable and high flexibility to meet the requirements of differe

4、nt speech coding applications with high practical value.Keywords:Coder EVRC FPGA Pipelining0 引 收稿日期:2011-02-01 基金项目:航空科学基金资助项目( ) 言TIA于上世纪90年代末推出的IS-127标准,是IS-95可选语音服务标准(Service Option 3)和3G移动通信系统CDMA2000 的语音编解码标准,该标准的核心算法是增强型可变速率语音编码器(Enhanced Variable Rate Codec,EVRC)。EVRC语音编码器编码速率可变(1kbps、4kbps或8

5、kbps),编码后语音质量相当于QCELP-13k标准,但比后者具有更好的抗干扰能力。在目前的CDMA 2000系统中,EVRC是综合语音质量和编码速率指标后,最佳的语音编码器。本文主要研究EVRC语音编码器的FPGA实现与数据传输技术,全文安排如下,第1节对EVRC算法进行概述;第2节给出了EVRC 语音编码器的FPGA硬件顶层设计模块、数据同步设计方法以及EVRC编解码模块数据处理流图;第3节讨论了EVRC 语音编码器的PCI总线设计,分析驱动代码生成等关键技术,以使该设计具有更高的实用价值,第4节总结全文。1. EVRC 语音编码器概述EVRC核心算法是一种被称之为广义码激励线性预测(R

6、elaxed Code-Excited Linear Prediction,RCELP)的语音编码算法。传统的码激励线性预测(Code-Excited Linear Prediction,CELP)算法,是让合成语音信号尽量逼近原始语音信号,并由此来选择最佳的激励码本;而EVRC算法却是逼近经过时域变形(Time Warping)的语音残差信号,该残差信号包含了每个语音帧开环计算及线性插值后得到的简化基音信息。虽然该方法会使得语音编码运算量增大,但也使得每帧数据包中基音的比例减小,因此改进语音自然度的激励信号会得到比传统方法更多的比特数,从而起到改善语音质量的作用。EVRC采用抽样频率8KHz

7、/16比特量化的线性脉冲编码调制(Linear Pulse Code Modulation, LPCM)信号作为激励,以20ms/160样点组帧进行语音的编/解码。EVRC不仅能根据语音信号的波形质量,还能根据基音和相邻帧的信号样点等输入信号的特点来选择编码速率。可以采取的编码速率方案为:码率8kbps ,171比特/包)、码率4kbps,80比特/包或码率1kbps,16比特/包。2.EVRC语音编码器的FPGA设计Altera 公司的Cyclone II系列现场可编程门阵列(Field Programmable Gate Array, FPGA)可以集成中央处理器(Central Proc

8、essing Unit ,CPU)和数字信号处理器(Digital Signal Processing,DSP)内核,在一片FPGA上进行软硬件协同设计,为实现片上可编程系统(System On Programmable Chip,SOPC)提供了强大的硬件支持。下面,我们充分利用FPGA强大的并行数据处理能力来设计多通道语音EVRC编码器。系统的顶层设计如图1所示。图1 EVRC 语音编码器编码/解码示意图编码时,FPGA的多通道缓冲串行接口(Multi-Channel Buffer Serial Peripheral,McBSP)并行接收到码率为64kbps 的µ率PCM码流后,

9、将其转换成线性PCM 码流,然后由编/解码内核单元将PCM 码流编码成最大码率为8kbps的码包(packet),最后将编码结果由PCI总线发送出去。解码时,FPGA由PCI总线接收最大码率为8kbps的码包,经过编/解码单元解码为线性PCM码流,最终转换成64kbps的µ率PCM 码流并通过McBSP接口并行发送出去。需要指出的是,设计中虽然采用McBSP和PCI总线在EVRC语音编码器与数据源之间进行数据交互,但是也可以采用其他方式的外部接口,如USB作为双方的通信连接。这里我们设计了两个握手信号用于数据的帧同步处理,第一个是McBSP帧传输握手信号,用来标识McBSP接口接收/

10、发送一帧PCM 数据的结束;第二个是PCI接口传输握手信号,用来标识PCI接口接收/发送一个码包的结束。图2和图3分别为EVRC 语音编码器编码/解码功能流程图34,各部分功能定义明确,对比分析IS-127协议即可具体实现代码,不再赘述。3.EVRC语音编码器PCI接口的设计与实现数据源与EVRC编码器要通过PCI总线通信,就必须在FPGA中实现PCI协议,下面具体论述之。PCI总线是一种不依附于某个具体处理器的局部总线。常见的PCI2.2接口信号如图4所示。图中,左半部分为必要信号,右边为任选信号。图中信号名称右边加一个“”符号表示是低电平有效,未加“”符号的是高电平有效。根据信号的功能划分

11、,可分为系统信号组、地址数据组、接口控制组、仲裁管理组、错误测试组、中断功能组、Cache支持组以及其他功能组。图2 编码器软件流程图 图3 解码器软件流程图图4 PCI引脚图PCI设备驱动程序需完成PCI器件识别、PCI器件资源寻址和PCI器件中断调用等任务。PCI系统BIOS功能提供了BIOS的访问与控制的具体特征,所有软件(设备驱动程序、扩展ROM码)将通过标准中断号1AH调用BIOS功能访问用户外设。PCI设备驱动程序的初始化例程,首先通过指定器件标识码(device_id)、供应商标识码(vendor_id)和索引号(index)来检测到PCI器件,随后通过调用PCI BIOS确认设

12、备存在以及设备的唯一物理位置:总线号、器件号和功能号(设备的寻址标志),最后达到利用该功能号进行PCI设备配置空间寻址6的目的。 初始化结束之后,由PCI驱动程序完成从配置空间各基址所对应的寻址空间中,加载中断号、端口地址范围、I/O方式、存储器地址和存储器映射方式等硬件参数的功能。此外,驱动程序还需要完成端口操作、内存读写、中断设置/响应与调用等数据协调任务,根据系统设计要求不尽相同,这些功能都可使用相关函数去具体实现7,不再赘述。完成PCI设备的驱动程序后,需要利用“INF”文件将开发好的设备驱动程序安装至操作系统。下面的示例代码演示了如何利用“INF”文件指示操作系统识别设备类

13、型和确认设备供应商。VersionClass = EVRC语音编码器_PCI数据传输系统ClassGUID= E-1C4E-25f6-G693-2Mfg%String2%=EVRCInstall, PCIVEN_12BE&DEV_3041StringsString2="PEVRC数据PCI传输设备"设备正常安装后,系统显示设备的相关信息如图5所示。4.小结EVRC语音编码器已广泛应用于3G移动通信之中,本文采用Altera公司Cyclone II系列FPGA设计并实现该语音编解码系统,给出系统的顶层硬件设计结构及其实现机制,并详细讨论了系统PCI总线的实现方法。该语

14、音编码系统符合软件无线电设计思想,结构简洁、性能可靠、易于开发和扩展,并已在实践中获得检验。图5 设备类型图参考文献1 丁琦,王炳锡,“EVRC 语音编码算法的研究和实现”,信息工程大学学报J,第4 卷第3 期,2003 年9 月。2 王炳锡,语音编码M,西安:西安电子科技大学出版社,2002.73 TIA/EIA/IS-127:Enhanced Variable Rate Codec,Speech Service Option 3 for Wideband Spread Spectrum Digital SystemsM,September 19964 TIA/EIA/IS-718:Mini

15、mum Performance Specification for the Enhanced Variable Rate Codec, Speech Service Option 3 for Spread Spectrum Digital SystemsM,1998.75 PCI Special Interest Group, PCI Local Bus Specification Draft Revision 2.2 S, June 8, 1998.6 李贵山.PCI局部总线及其应用M. 西安:西安电子科技大学出版社,20037 Art Baker and Jerry Lozano, The Windows 2000 Device Driv

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论