基于客户端DSP的数字电话系统
扫描二维码
随时随地手机看文章
目前,模拟电话机产品占据电话终端的主导地位,但模拟电话只能传输语音信号;而数字电话具有高保密、可存储、信号质量好等优点。模拟电话机向数字电话机的过渡是电话终端发展的必然。本文研制出以美国TI公司的客户端数字信号处理器(DSP)为核心的数字电话系统,配置音频AD和DA以及电话线侧信号处理芯片,实现对语音信号的采集和输出、调制和解调、处理和存储等功能。语音信号的处理包括回音相消、自动增益调整(AGC)、自动功率调整(APC)以及数字滤波等功能。该系统具有数字化、小型化和价格低的特点,可以应用于各种保密场合、强噪声现场通信以及各种数据业务。
1 客户端处理芯片
系统的客户端处理采用TMS320C54CST和SI3016芯片实现。TMS320C54CST是美国TI公司最近推出的一款客户端数字信号处理芯片,完全兼容TI公司的C54系列DSP。C54CST内部具有DSP芯片通用的缓冲串口、HPI接口、定时器等片内外设,还具有和客户端相关的直接访问设备(DAA)单元。DAA实际上是一个电话终端数据收发模块。该模块提供一个可编程的接口电路,该接口电路可以直接与全球的电话线连接。DAA的内部结构如图1所示。
DAA由两部分组成:一是DSP片内设备,另一个是与其匹配的片外设备。DAA的片内设备是集成在DSP内部的SI3021模块。该模块和Silicon公司的SI3021芯片的功能完全相同。DSP同SI3021模块之间通过缓冲串口2进行通信;DSP提供时钟信号到SI3021模块。为了与电话时钟兼容,该时钟信号只能是58.9824MHz或者117.9648 MHz。SI3021模块对此时钟进行分频,得到串口通信的位同步时钟和帧同步时钟,再将这些时钟信号返回到DSP。DSP为被动接收方。用户惟一可以直接控制SI3021模块的是DAA的复位信号。该信号可以随时复位SI3021模块,如图1中的DAARESET。DAARESET不是一个实际的引脚,而是DSP内部寄存器中的一位,只能
通过软件来复位SI3021模块。
DAA的片外设备选择Silicon公司的SI3016芯片。SI3016和DSP之间只有一根信号线通过匹配阻容连接。SI3016的内部寄存器全部直接映射到DSP内部。通过对DSP内部寄存器的读写控制,DAA片内设备SI3021自动将这些寄存器的值写入SI3016或者从SI3016中读出。SI3016和电话线侧的连接如图2所示。
图2中,右下方的RING和TIP是两根电话线,通过4个二极管组成的无级性电压变换,最后通过三极管连接到SI3016的DC1引脚,提供电源到SI3016。但待机时,为了降低整机的功耗,三极管处于截止状态,SI3016通过CIB引脚从DSP,取电,摘机时,DSP控制寄存器将SI3016的QB引脚置高,打开三极管,此时SI3016将从两根电话线上取电。这是因为,待机时需要的电压只要1V左右就可以了,而摘机后的电压需要6V左右。SI3016的RNG1和RNG2引脚用于检测振铃信号,RX和Tx引脚用于数据的收发,IGND引脚是一个虚拟的“地”,和真实的“地”使用150pF的电容隔开。
2 系统硬件结构
整个系统由DSP、SI3016、音频AD/DA、液晶、键盘以及Flash组成,硬件结构如图3所示。图3中,DSP是核心控制单元;音频AD用于采集话筒的模拟语音信号,转变成数字语音信号;音频DA将数字语音信号转换成模拟语音信号,输出到耳机或者音箱。音频AD和DA的前端与后端都有放大和滤波电路。一般情况下,音频AD和DA集成到一个芯片上。本系统中使用了TI公司的TLV320AIC10。
SI3016用于收发电话线上的信号;键盘用于拨号和控制;液晶显示来电号码、拨出电话号码以及时间等信息;Flash保存DSP所需要的程序,供DSP上电调用;JTAG是DSP的仿真接口。DSP还提供HPI口。该接口可与计算机连接;可收发计算机的数据文件;将系统的功能进一步扩展,可轻易地实现各种数据业务。
3 系统软件结构
系统的软件结构如图4所示。软件结构中的初始化模块包括系统的初始化、键盘监控的初始化、液晶显示的初始化、通信模块的初始化。在初始化过程中,设置键盘扫描时间、采样频率、显示状态等。
监控模块随时判断各种中断是否到达。其中包括摘机中断、挂机中断、振铃中断、键盘中断、液晶显示定时中断等。监控模块程序完成查询以上工作并调用各个相应的处理子程序。
系统的程序流程如图5所示。在整个程序中,挂机中断具有最高优先权,只要发生挂机中断,程序都将返回到监控状态。尤其是在通话过程中,随时监测挂机中断和对方状态,一旦自身挂机或者对方挂机,将马上中止通信过程。
系统上电后,总是检测有无中断产生。中断包括摘机中断、振铃中断、键盘中断和显示定时中断。中断产生,系统将进入相应的中断处理程序。
4 信号处理算法
信号处理算法主要包括回音相消、自动增益控制、数字滤波等。
(1)回音相消
回音相消处理过程如图6所示。回音主要是通过对不同端的信号采集,得到远端回音信号,作为回音的参考信号;而带有回音的混合信号和参考信号进行自适应减法运算,从而将回音从混合信号中去除。图中虚线框内为回音处理算法。
(2)自动增益控制
语音在采集和传输过程中,由于语音源的差异、信道的衰减以及噪声的干扰,使得信号的幅度相差较大,从而需要自动增益控制。模拟信号中一般很难实现自动增益,而数字电话通过对数字信号幅度的估计,调整信号增益参数,均可以保证在任何情况输出最大幅度,达到最佳的语音质量。
(3)数字滤波
输入和输出的模拟信号都经过一个具有线性相位的FIR带通滤波器。根据语音信号的特点,滤波器的通带在300Hz~3kHz,阻带衰减为-60dB。根据实际情况,滤波器的各种参数可以通过软件调整。信号中的直流分量也可以通过预估均值去除,从而进一步提高语音质量。
结语
经实际验证,基于客户端DSP的数字电话系统运行可靠,是一种比较好的数字电话的解决方案。该系统可以应用于各种保密场合、强噪声现场通信以及各种数据业务。