本文采用数字语音技术,设计了电话网信息查询系统中的声讯子系统,实现了随时录放语音的功能。
1声讯系统的基本工作原理
排队器接收用户呼入,经过排队等待后,分配到查号座席。座席上话务员应答,沟通话路,与用户通话、询问、并通过计算机查询,再由座席自动将话务员所选信息通知给用户。
声讯系统是座席计算机内的一块插卡,即座席卡。它通过2B+D数字接口与排队器相连,是沟通座席与排队器的桥梁。D通道接收排队器的命令,并发送座席状态;B通道用来完成话务员与用户通话和座席自动报号。声讯子系统充分利用了两个B通道,实现了座席同时为两个用户服务的功能。
2声讯系统的设计
2.1电路设计
声讯系统主要由数字用户接口电路MT8972B、数字话机电路MT8995、高级数据协议控制器MT8952B和相关的外围电路组成,如下图所示。
数字用户接口电路MT8972B完成2B+D信号PCM码流的互相转换,实现座席与排队器的接口,同时提取帧同步信号FOi和4.096MHz时钟信号C4,分别加到MT8952B、MT8995的时钟输入端CKi和帧同步输入端FOi。数字话机电路MT8995完成模拟话音与PCM信号的转换,实现话务员与用户的通话。而高级数据协议控制器MT8952B可存储或发送某一时隙的PCM信号,供计算机读写,实现计算机与排队器通信和计算机录放语音。
2.2报号功能的实现
MT8952B设置在透明数据输出方式,且中断允许,并设置为当FIFO输出寄存器只剩4个字节数据时产生中断,中断请求输出端IRQ接至计算机的IRQ2端。计算机定期将语音数据写到MT8952B的FIFO缓冲区,由MT8952B自动地将FIFO缓冲区内的数据插入到PCM码流,PCM码流通过MT8972转换为2B+D信号送往排队器。
在查号程序的开始先将常用的语音数据调入计算机内存,对MT8972B、MT8952B以及MT8995初始化,置中断向量,然后便进入查号主程序。报号程序框图如下图所示。
当话务员查询到某一号码需要报号时,或需要报出礼貌语时,计算机只需算出相应的语音数据在内存的位置,设置好相应的MT8952B的工作方式,打开中断即可,报号工作由中断程序自动完成。而此时查询主程序继续运行,为下一个用户查号。当MT8952B的FIFO输出寄存器只剩下4个字节数据时,中断请求输出端IRQ向CPU申请中断。中断服务程序将内存中的语音数据写到FIFO输出寄存器中。这样保证了计算机在为一个用户查询的同时,自动为前一个用户’报号,实现多任务并行操作。
2.3录音功能的实现
语音信号经滤波后输入到数字电话电路MT8955,完成取样、量化、编码,形成PCM信号后输出至ST-BUS总线。MT8972B工作在自环方式,使输出ST-BUS总线上的PCM信号加至MT8972B后又环回到输入ST-BUS总线上。输入的PCM信号加到MT8952B的CD通道输入端。MT8952B设置在透明数据输入方式,且中断允许,并设置为当FIFO输入寄存器已接收了15个字节数据时产生中断,中断请求输出端IRQ接至计算机的IR02端。
录音程序框图如上图所示,在程序的控制下,首先对MT8972B、MT8952B以及MT8995初始化。当MT8952B的19个字节的FIFO寄存器已接收了15个字节数据时,中断请求输出端IRQ向CPU申请中断。在计算机内存设置两块地址连续的缓冲区,设一缓冲区为2K字节。中断服务程序将FIFO寄存器中的数据交替地读到计算机的两块缓冲区中。如某块缓冲区数据满,则做上标志。而在主程序中监视缓冲区的标志,哪块缓冲区满,便将其中的数据以文件形式存入硬盘。从而实现录音功能。话音的采样频率为每秒8K字节。
本系统目前已在全国十多个城市的电信局和菲律宾等国的电话网中开通使用。系统中,常用语音数据存放在查号计算机网络服务器的硬盘中,座席进入系统后,将其调入内存,其他消息语音数据放在查号座席本地硬盘中,随报随取,并可随时录音。