ML7204和PicoBlaze软核处理器实现低速话音编解码系统-设计应用_第1页
ML7204和PicoBlaze软核处理器实现低速话音编解码系统-设计应用_第2页
ML7204和PicoBlaze软核处理器实现低速话音编解码系统-设计应用_第3页
ML7204和PicoBlaze软核处理器实现低速话音编解码系统-设计应用_第4页
ML7204和PicoBlaze软核处理器实现低速话音编解码系统-设计应用_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

精品文档-下载后可编辑ML7204和PicoBlaze软核处理器实现低速话音编解码系统-设计应用

对于移动通信来说多的信息是语音信号,语音编码的技术在数字移动通信中具有相当关键的作用,高质量低速率的语音编码技术是数字移动网的永远的追求。所谓语音编码是信源编码,它是将模拟语音信号变成数字信号以便在信道中传输除了通信带宽的要求外,计算机存储容量的限制也要求对语音信号进行压缩,以满足海量数据情况下进行实时或准时计算机处理的目的。

ML7204专用语音处理器可提供多种速率的编解码功能,包括A律和U律2种不同的PCM和G.729A低速压缩话音编解码。该器件内置FIF0缓存器,具有合成语音质量高、抗误码性能好等特点,并在语音通信,特别是VoIP系统中应用广泛。基于8051构架的开源微处理器内核PicoBlaze配合FPGA解决常量编码可编程状态机(KCPSM)问题,可以使系统同时具备处理复杂控制和时序逻辑的能力。这里介绍了ML7204的基本性能和工作原理,微处理器内核PicoBlaze的开发流程及其使用方法,并且给出通过PicoBlaze配置、控制ML7204实现单路G.729A语音编解码的系统设计方案。

1ML7204功能简介

ML7204具有如下特点:内置640字节FIF0,为数据收发提供缓存;支持ITU的G.711、G.729A等分组语音处理标准;回音抵消和抑制、静音检测和舒适噪音等提高分组语音处理性能;收、发增益控制;以数据、地址总线方式访问控制寄存器。

ML7204分组语音处理器件的接口是从硬件连接和功能两方面考虑,包括语音、PCM、中断、时钟、处理器等接口。其中,语音接口(VoiceI/F)模拟话音信号的输入输出,内置可调增益放大器和A/D和D/A转换器;PCM接口(PCMI/F)用于非压缩语音信号的输入输出,为64kb/s率或a率压扩的PCM信号;中断接口(INTI/F)提供异常状况的信号指示;时钟接口(CLKI/F)既可外置晶体,也可直接输入时钟信号,时钟频率12.288MHz;处理器接口(MCUI/F)包括8位数据、地址总线以及读、写使能、片选信号,实现微处理器与ML7204的通信,并实现微处理器对ML7204的控制、以及ML7204的状态检测。ML7204有复位、初始化配置、运行3种工作模式,如图1所示。ML7204上电后,复位信号有效(PDNB=0)时,内核重启,则ML7204进入复位模式(PowerDownState);初始化配置模式(InitialState)是当复位信号释放(PDNB=1)时,所有状态重置等待处理器配置。处理器通过修改控制寄存器完成器件的初始化配置;初始化完成后器件进入运行模式(OperationState),开始正常运行,此时通过设置PDNB或控制寄存器的软复位信号使ML7204重新进入复位模式等待初始化。

2微处理器内核PicoBlaze简介

PicoBlaze是8位微处理器,在Xilinx公司的Virtex、Spartan-II系列以上FPGA与CoolRunner-II系列以上的CPLD器件设计中以IP核的方式提供,使用是的。PicoBlaze起初命名为KCPSM,是Constant(K)CodedProgrammableStateMachine的简称,意为常量编码可编程状态机。KCPSM还有个别称叫KenChapman'sPSM,KenChapman是Xilinx的微控制器设计者之一。PicoBlaze是由VHDL语言在早期开发的小型8位软处理器内核包,其汇编器是简单的DOS可执行文件KCPSM2.exe或KCPSM3.exe,用汇编语言编写的程序经过编译后放入FPGA的块RAM存储器区。在XC3S500E的FPGA中,只用到了96个Silice,也就是只占用到5%的逻辑资源。PicoBlaze执行一条命令需要2个时钟周期,在Spartan3EStarterKit板上以50MHz时钟为例,PicoBlaze也能达到25MIPS的性能。

PicoBlaze微处理器接口从数据和控制两方面考虑,包括复位、时钟、读信号、写信号、数据输入、数据输出等接口。如图2所示。

复位接口(reset)是异步复位、高有效、清除PicoBlaze内核所有状态,但不清除程序代码;时钟接口(clk)是输入主时钟,速率35MHz;地址总线接口(port_id[7:0])为PicoBlaze内核的地址总线,持续2个时钟节拍有效;数据总线接口(out_port[7:0])是PicoBlaze内核的数据总线,持续2个时钟节拍有效;读信号接口(read_strobe)是读脉冲信号,当该信号为高时,port_id[7:0]输出有效数据;写信号接口(write_strobe),写脉冲信号,当该信号为高时,port_id[7:O]输入有效数据。

3系统硬件设计

图3为基于PicoBlaze软核处理器和ML7204编解码器的单路低速话音编解码系统的框图。

该系统主要由话音信号处理、系统逻辑控制、传输复分接、时钟处理4个单元组成。其中,话音信号处理单元主要由ML7204和简单外围器件组成,完成模拟话音信号与G.729A压缩编码信号之间的相互转换;系统逻辑控制单元由PicoBlaze内核组成,完成与ML7204的数据传输;传输复分接单元由FPGA片内逻辑单元组成,完成拆、组帧及并、串转换。时钟处理单元为ML7204提供高稳定时钟信号。

由话机模拟电路输出的模拟话音信号经话音信号处理单元,实现PCM编码、G.729A压缩编码,再通过并行MCUI/F接口输出速率为8kHz的G.729A压缩编码数据,系统逻辑控制单元读取压缩编码数据,并送往传输复分接单元,进行组帧、并串转换,终输出成帧的串行码流。相应地成帧的串行码流先进入传输复分接单元进行帧同步检测,读取真正的话音数据,串并转换后,再传输至系统逻辑控制单元,由PicoBl-aze内核将并行话音数据发送至话音信号处理单元,话音数据经解压缩、PCM解码,恢复模拟话音信号。

ML7204的数据传输采用总线方式,即A[7:0]、D[7:0]分别是8位数据、地址总线;FROB、FRlB、INTB、CSB、RDB、WRB分别为读使能、写使能、中断、片选、读信号、写信号。ML7204有10ms帧和20ms帧两种数据帧格式,这里采用10ms帧格式。ML7204以10ms为周期全双工并行工作。每隔10ms,ML7204拉低读使能信号FROB,表示已经准备好完整的一帧数据,外部PicoBlaze微处理器通过连续10次拉低片选信号CSB、读信号RDB读出一帧数据。相应,每隔10ms,ML7204拉低写使能信号FRlB,表示解码处理新的一帧数据,外部PicoBlaze微处理器可以通过连续10次拉低片选信号CSB、写信号WRB写入一帧数据。图4是ML7204电路原理图。

4系统软件设计

该系统软件主要是对ML7204初始化配置、工作状态控制。ML7204的配置方式是修改控制寄存器。工作时,FPGA内嵌PicoBlaze内核首先对ML7204复位,复位成功后,PicoBlaze内核通过MCUI/F接口修改控制寄存器,设置其工作方式,包括语音编码方式、语音信号幅度、数据帧长度等,FPGA内部逻辑处理单元配合PicoBlaze内核完成分组语音数据的读写及传输。ML7204共有48个控制寄存器CR0~CR47,分别对应于地址00H~2FH,每个控制寄存器有8bit数据,分别标识不同的配置选项。保留地址80H、81H分别对应分组话音编解码数据的读、写地址。图5为软件工作流程。

以下给出软件程序的代码:

5结束语

ML7204是一个功能强大的语音信号处理器,可提供多种速率语音编解码功能,操作方便。PicoBlaze是一个典型的8位软核处理器,便于在各种FPGA上实现,设计灵活。本文采用PicoBlaze与ML7204协同工作。构建低速率语音通信的编解码系统。相比传统的语音编解码系统设计方案,此方案无需单独微处理器、Flash、SDRAM、PCM编解码等器件,只需单片ML7204和单片小容量FPGA即可完成全部功能,设计简单、成本低廉、合成语音质量高,能有效提高带宽利用率,在

温馨提示

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

评论

0/150

提交评论