基于ARM的低功耗语音去噪系统设计
司的TPS79133芯片, 其具有输出电压稳定、纹波小等特点。
2.3 信号调理模块设计
输入为语音信号,经麦克风转换为电压信号,但这种电压信号很徽弱,一般为几十毫伏,需要经过放大才能被A/D有效采集,为了提高放大后信号的信噪比,在放大前端应对信 号进行滤波处理,语音信号分布在300~3400 Hz之间,因此可对输入信号进行低通率波。又由于谱减算法的特性,去噪后信号的幅度较去噪前信号的幅度减小很多,所以对去噪后的语音信号也应当放大和滤波 处理。
本系统采用飞思卡尔半导体公司的MC34119集成运放,该芯片具有宽电压输入(2.0~16 V)、对语音信号具有自适应增益功能以及不需外部加直流偏置等特点。由于LPC1756内部A/D和D/A参考电压为3.3 V,因此运放的输入(参考)电压也应为3.3 V,信号增益是通过反馈电阻与输入电阻之比来确定。即:
Gain=RF/RI (7)
在本系统中,输入增益设为10倍,输出增益设为3倍。低通滤波器采用美信半导体公司MAX7427集成芯片,该芯片具有功耗低(仅需0.8 mA)、外围电路简单等特点,且通过外接振荡电容来计算上限截止频率,适用频率范围1~12000 Hz,符合本系统频率范围。
3 系统整体框架
语音信号频率范围为300~3400Hz,根据奈奎斯特采样定理,采样率至少为信号频率的两倍时,信号才能被不失真采集。在本系统中,采样率是通过 LPC1756内部的32位高精度定时器模块来控制,每间隔125μs对A/D转换结果进行一次读数,即采样率设定为8 000 Hz,读取的数据通过DMA模块传输至预处理地址中,这样提高了CPU的处理效率。同理,为了保证输入输出的同步性,在定时器中断函数里,每采集一个信号 点,就必须输出一个信号点。为了提高CPU利用率,去噪后的语音信号也是通过DMA通道传输。在信号的采集与输出端,均通过放大滤波电路,都是为了提高语 音信号的信噪比。在滤波电路中,截止频率设定为4 000 Hz。其实物的PCB布线如图3所示。
4 系统测试结果
在上述设计的条件下,输入电压为26 V(DC)的情况下,系统正常工作时,所耗电流为20 mA,满足低功耗的要求。对系统去噪效果进行主观试听,分别试听了0 dB、3 dB、5 dB、10 dB和20 dB情况下带噪语音经过系统后的去噪效果,听者都认为系统的去噪效果良好,有较好的语音自然度和清晰度。
3dB带噪语音去噪前后示波器对比图如图4所示。
如图4所示,示波器上通道1(上半部分)显示的是去噪后的语音信号,通道2(下半部分)显示的是去噪前的3dB带噪语音信号。
5 结束语
文中基于ARM处理器,设计出了具有低功耗的语音去噪系统。用C语言编程将谱减算法成功移植到ARM平台上,并且效果较好。谱减算法在语音去噪应用中非常成 熟,因此本文着重介绍了该系统的硬件设计,与传统的基于DSP的系统设计相比,大大降低了系统功耗和成本,为以后的低功耗和高性价比系统设计提供了一种很 好的思路和方法。
- Linux嵌入式系统开发平台选型探讨(11-09)
- 基于ARM体系的嵌入式系统BSP的程序设计方案(04-11)
- 在Ubuntu上建立Arm Linux 开发环境(04-23)
- 达芬奇数字媒体片上系统的架构和Linux启动过程(06-02)
- SQLite嵌入式数据库系统的研究与实现(02-20)
- 革新2410D开发板试用手记(04-21)