ML7204和PicoBlaze软核处理器实现低速话音编解码系统
对于移动通信来说 最多的信息是语音信号,语音编码的技术在数字移动通信中具有相当关键的作用 ,高质量低速率的语音编码技术是数字移动网的永远的追求。所谓语音编码是信源编码,它是将模拟语音信号变成数字信号以便在信道中传输除了通信带宽的要求外 ,计算机存储容量的限制也要求对语音信号进行压缩 ,以满足海量数据情况下进行实时或准时计算机处理的 目的。
ML7204专用语音处理器可提供多种速率的编解码功能,包括A律和U律2种不同的PCM和G.729A低速压缩话音编解码。该器件内置FIF0缓存器,具有合成语音质量高、抗误码性能好等特点,并在语音通信,特别是VoIP系统中应用广泛。基于8051构架的开源微处理器内核PicoBlaze配合FPGA解决常量编码可编程状态机(KCPSM)问题,可以使系统同时具备处理复杂控制和时序逻辑的能力。这里介绍了ML7204的基本性能和工作原理,微处理器内核PicoBlaze的开发流程及其使用方法,并且给出通过PicoBlaze配置、控制ML7204实现单路G.729A语音编解码的系统设计方案。
1 ML7204功能简介
ML7204具有如下特点:内置640字节FIF0,为数据收发提供缓存;支持ITU的G.711、G.729A等分组语音处理标准;回音抵消和抑制、静音检测和舒适噪音等提高分组语音处理性能;收、发增益控制;以数据、地址总线方式访问控制寄存器。
ML7204分组语音处理器件的接口是从硬件连接和功能两方面考虑,包括语音、PCM、中断、时钟、处理器等接口。其中,语音接口(Voice I/F)模拟话音信号的输入输出,内置可调增益放大器和A/D和D/A转换器;PCM接口(PCM I/F)用于非压缩语音信号的输入输出,为64 kb/s率或a率压扩的PCM信号;中断接口(INT I/F)提供异常状况的信号指示;时钟接口(CLK I/F)既可外置晶体,也可直接输入时钟信号,时钟频率12.288 MHz;处理器接口(MCU I/F)包括8位数据、地址总线以及读、写使能、片选信号,实现微处理器与ML7204的通信,并实现微处理器对ML7204的控制、以及ML7204的状态检测。ML7204有复位、初始化配置、运行3种工作模式,如图1所示。ML7204上电后,复位信号有效(PDNB=0)时,内核重启,则ML7204进入复位模式(Power Down State);初始化配置模式(Initial State)是当复位信号释放(PDNB=1)时,所有状态重置等待处理器配置。处理器通过修改控制寄存器完成器件的初始化配置;初始化完成后器件进入运行模式(OperationState),开始正常运行,此时通过设置PDNB或控制寄存器的软复位信号使ML7204重新进入复位模式等待初始化。
2 微处理器内核PicoBlaze简介
PicoBlaze是8位微处理器,在Xilinx公司的Virtex、Spartan-II系列以上FPGA与CoolRunner-II系列以上的CPLD器件设计中以IP核的方式提供,使用是免费的。PicoBlaze起初命名为KCPSM,是Constant(K) Coded Programmable State Machine的简称,意为常量编码可编程状态机。KCPSM还有个别称叫Ken Chapman's PSM ,Ken Chapman是Xilinx的微控制器设计者之一。PicoBlaze是由VHDL语言在早期开发的小型8位软处理器内核包,其汇编器是简单的DOS可执行文件KCPSM2.exe或KCPSM3.exe,用汇编语言编写的程序经过编译后放入FPGA的块RAM存储器区。在XC3S500E的FPGA中,只用到了96个Silice,也就是只占用到5%的逻辑资源。PicoBlaze执行一条命令需要2个时钟周期,在Spartan3E Starter Kit板上以50MHz时钟为例,PicoBlaze也能达到25MIPS的性能。
相关文章
- 2023-02-22电子汽车衡检定问题的分析与研究
- 2022-06-02PLC在桥式起重机中的应用
- 2023-05-06E+H雷达液位计在化工储罐的应用
- 2024-01-24N型热电偶的特点及二次显示仪表的改制
- 2023-12-01游标卡尺量爪快速修复一例
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。