基于DSP的音频信令处理模块实现
2012-07-31张迎春倪永婧
张迎春,倪永婧
(1.中国电子科技集团公司第五十四研究所,河北石家庄050081;
2.河北科技大学信息科学与工程学院,河北石家庄050000)
0 引言
在数字通信系统中接入话音是很常见的,话音通信的进程不同,通信系统中就需要产生不同的信令音。信令音的产生是话音通信不可缺少的一部分,信令音能使话音通信的操作员清楚地了解到通信的进展情况,从而根据通信进展的各个不同阶段而做出不同的操作。
在程控交换机、话音邮政等通信设备中,信令音的产生也是一个独立且必须的功能组成部分。目前数字信号处理器(DSP)的发展使开发者能快速、准确实现各种复杂算法,这就使基于DSP的音频信令处理模块得以实现。
1 方案设计
1.1 硬件设计
基于DSP的音频信令处理模块作为一个独立的插件,其基本组成框图如图1所示。
图1 音频信令处理模块组成框图
该模块主要完成音频信令的检测及产生,硬件实现简单,其基本组成框图如图1所示。DSP选用电路 TMS320VC5509,复位管理电路选用IMP809SEUR,电源管理电路选用TPS72116DBVT。
1.2 软件设计
音频信令处理模块的软件流程如图2所示。
图2 音频信令处理流程图
该软件是以模块化的方式实现,主要包括初始化模块、音频处理模块、HPI收发模块以及McBSPs收发模块。各模块主要功能如下:
①初始化模块:系统加电初始化、自检;
②音频处理模块:根据控制接口收到的命令选择相应的音频信号检测器,对从多通道缓冲型串行接口(McBSPs)收到的PCM音频数据进行数字滤波、频谱分析及能量判决,产生音频信号报告;选择音频信号发生器,产生相应的音频信号;
③McBSPs收发模块:完成PCM音频数据流接收和发送;
④HPI收发模块:完成所在系统的控制器单元与音频处理单元之间的消息接收和发送。
2 需解决的问题
2.1 音频信令检测器
由于音频信令处理模块接收与处理的数据流是8 kHz采样的A律编码的2 Mbps的PCM数字码流,因此整个识别过程就是A律解码、数字滤波及双音多频/信号音译码。
2.1.1 A 律解码
A律解码是将A律13折线非线性码线性化。对于8 bit的A律码(a1a2a3a4a5a6a7a8)2,其解码算法如下:判断a1之值,确定符号;取出a1a2a3,乘以相应段落码起始值得x1;取出a4a5a6a7,乘以相应段内阶梯得x2;将x1与x2相加,并依据之前所得符号性质进行修正,就恢复出了线性码。
2.1.2 数字滤波
数字滤波是识别双音多频/信号音译码的核心部分,采用Goertzel算法,其推导如下:
令:
按照该式的变形可以推导出系统函数的二阶递归计算流图如图3所示。
图3 系统函数的二阶递归计算流图
式中,n=0,1,…,N - 1 ,
由于系数是实数,而 -1可以由减法代乘法,所以实现此系统极点只要2次乘法和4次加法。又由于只要求系统所处状态能使yk[N]为可计算的,所以实现零点要求的与-WkN相乘的运算不必每步都作,而只要在第N步作一回即可。所以总的计算量为2N次实数乘法与4N次实数加法,比起式(4)直接记算的方法效率提高1倍。
2.1.3 双音多频/信号音译码
信号音有 450 Hz、1 100 Hz、2 100 Hz可能出现的频率点,检测时用上述算法依次检测信号中这3个频率分量的幅值,选择一定的门限对单音所在频带能量进行判断,如果超过门限即判其为单音。
双音多频信号中有8个可能出现的频率点,每次检测时用上述算法依次检测信号中这8个频率分量的幅值,并根据其大小判断信号存在的2个频率分量,进行查表就可以完成译码。
2.2 音频信令发生器
2.2.1 双音多频发生器
双音多频(DTMF)发生器主要是通过2个可编程的二阶数字正弦振荡器组成,其中一个是行振荡器,另一个是列振荡器,这样的2个振荡器就代替了8个振荡器。对于每个DTMF数字编码,只要给2个振荡器赋予相应的系数和初始条件,产生相应的频率,通过8 kHz采样输出。
2.2.2 信号音发生器
信号音的产生依赖于正弦信号的产生,每一个音频信号的产生都可由二阶正弦波数字振荡器完成。为适应不同频率的单音的产生,信号音发生器设计为一个可编程数字正弦振荡器,根据所要产生的信号音,赋予合适的系数和初始条件,产生相应的频率,通过8 kHz采样输出。
2.2.3 2FSK 发生器
2FSK发生器主要是通过2个可编程的数字正弦振荡器组成,赋予相应的系数和初始条件,产生相应的频率,通过8 kHz采样,根据调制数据“1”、“0”,接通相应的正弦振荡器输出。
3 关键技术
3.1 数字信号处理器配置
数字信号处理器外接10 MHz的晶振,通过配置时钟模式选择管脚配置成10倍的倍频,提高软件的运算速度。
模拟的音频信号经过系统的A/D变换模块后变成数字信号,音频信令模块接收该数字信号经DSP处理后把运算解码后的结果通McBSPs送给D/A变换模块,再把变换后的音频信号送给音频设备。该设计只使用第1路McBSPs,McBSPs硬件工作条件是:
①串口接收时钟(BCLKR0)、串口发送时钟(BCLKX0)配置成输入方式,时钟频率为2.048 MHz;
②接收帧同步脉冲(BFSR0)、发送帧同步脉冲(BFSX0)频率为8 kHz;
③McBSPs在BCLKR0的下降沿对串口输入数据(BDR0)进行采集,在BCLKX0的上升沿输出数据(BDX0);
④McBSPs工作在中断方式。
3.2 McBSPs采样时序
McBSPs接口的各管脚逻辑必须严格遵循一定的对应关系才可以做到无误码地接收和发送PCM音频数据码流,从而才可以准确地实现音频信令检测和DTMF检测。
与音频信令检测模块连接的音频PCM编解码设备遵循的采用时序也要与音频信令检测模块McBSPs接口的采用时序相同。
4 结束语
基于DSP的音频信令处理模块能产生满足YDN065-1997《邮电部电话交换设备总技术规范书》标准的信令音,同时能对满足该标准的DTMF和信令音进行检测。
在实际的话音应用系统中,有时电话交换设备产生的信令音的频率有偏差,只需对该设计中DSP的软件算法的参数进行修改即可实现。
该模块体积小,只需以单排插针即可接入应用的目标系统,使用非常方便。
[1]常新华,林春勋.高频信号发生器原理、维修与检定[M].北京:电子工业出版社,1996.
[2]姜艳波.数字信号处理器DSP应用100例[M].北京:化学工业出版社,2009.
[3]苏涛.DSP接口电路设计与编程[M].西安:西安电子科技大学出版社2003.
[4]周霖.DSP系统设计与实现[M].北京:国防工业出版社,2003.
[5]谷萩隆嗣.数字滤波器与信号处理[M].北京:科学出版社,2003.
[6]徐盛,胡剑凌.数字信号处理开发实践[M].上海:上海交通大学出版社,2003.