电子文章 | 电子资料下载 | 家电维修 | 维修资料下载 | 加入收藏 | 全站地图
您现在所在位置:电子爱好者维修技术维修教程知识电子制作自动语音记录系统(AVRS)的SOPC设计与实现

自动语音记录系统(AVRS)的SOPC设计与实现

09-08 11:59:29 | http://www.5idzw.com | 电子制作 | 人气:984
标签:电子小制作,http://www.5idzw.com 自动语音记录系统(AVRS)的SOPC设计与实现,http://www.5idzw.com

摘  要:本文基于Altera公司的高性能Stratix器件,利用SOPC Builder、DSP Builder、Matlab和Simulink等软件设计实现了一种新型的自动语音记录系统(AVRS),实现了对多路电话的通话进行同期监控录音,可广泛应用于需要经常性语音记录的部门。
关键词:自动语音记录系统;SOPC;Nios;Stratix

1  引言
    目前各行业对电话进行通话录音变得越来越普遍,如政府机构出于国家安全的原因需要在线录音监控;安全部门对一些重点监控对象的往来通信需要录音和实时监听;责任重大的政府部门及重要生产部门对有些重要指令需录音;金融银行或证券机构及与大宗金钱有关的交易需要录音;而一些商务、服务领域则把录音资料作为语音记录和提高服务质量的一种手段。目前,各行业使用的电话语音记录设备主要包括磁带式电话语音记录设备、基于PC机的电话语音记录设备和基于FLASH芯片的电话语音记录设备。这些电话语音记录设备由于体积过大或记录时间较短等缺点在实际应用时满足不了某些用户的特殊需求,因此亟需一种超大存储容量、性能可靠和体积小巧的语音记录设备。

    针对这种现状,我们研制了一种新型的自动语音记录系统(AVRS),它可对多路电话的通话进行同期监控录音,将通话内容转换为数字信息,以语音文件形式存储于硬盘上,并可通过电话检索方式进行查询,查询到的语音文件可通过电话直接播出。本系统采用FPGA及大容量的笔记本硬盘,集成度高、存储信息大,信息可长期保存于硬盘中,文档管理方便、保密性强。

2  系统结构和功能

    自动语音记录系统(AVRS)的应用结构图如图1所示,它通常由PSTN、交换机、自动语音记录系统、计算机和电话机构成。本文所设计的自动语音记录系统(AVRS)具有如下功能:
    (1)提供了高密度的解决方案,以分机并线方式可进行多达4路到64路的通话录音,支持ADPCM、G.711、G.729压缩格式,可兼容世界主流交换机。
    (2)可以提供多通道通话全程实时录音;提供多种录音启动方式,如摘机控制、连接通话控制或声音控制等;操作人员可在任何时间启动监听功能;实时监听对通话双方及通话质量没有任何影响。
    (3)对于呼叫信息的记录可以实现在录制通话语音文件的同时同步记录呼叫信息,提供完整的呼叫信息记录,包括主叫号码、被叫号码、呼叫方向、通话时间和通话时长等。
    (4)可以实现远程监控管理的功能,通过预留的电话远程拨入,在语音引导下可实时监视所有通道的运行状态;可以按多种查询条件(按通道、日期时间、主叫号码、被叫号码等)查询或删除录音记录;可以实现80,000多个通道小时的在线存储量,录音记录除可存储在自动语音记录系统(AVRS)中的硬盘上,还可通过设备上的USB口传输到计算机中。

3  硬件设计
    自动语音记录系统由Stratix EP1S125、Nios软核处理器、SDRAM、IDE接口笔记本硬盘、PCM编解码电路、配置器件MAX7128S、LCD显示模块、键盘、时钟电路、USB接口电路、电话线接口电路和电源等组成,电路原理框图如图2所示。

3.1  Stratix FPGA
    现代大容量、高速度的FPGA一般都内嵌有可配置的高速RAM、PLL、LVDS以及硬件乘法累加器等DSP模块,用FPGA来实现数字信号处理可以很好地解决并行性和速度问题,而且其灵活的可配置特性,使得FPGA构成的DSP系统非常易于修改、易于测试及硬件升级。

    Altera公司于2002年推出了新一代Stratix FPGA,它采用0.13微米和铜工艺制造,1.5V核心电压,Stratix器件的DSP模块提供了高于DSP处理器的数据处理能力,并且更为灵活和经济。每一Stratix DSP模块可提供多达8个运行在250MHz的并行乘法器,数据吞吐能力高达2GMACS。最大的Stratix器件EP1S125包括28个DSP模块,可完成高达224个并行乘法操作,并提供56GMACS的总线数据吞吐能力,而传统的DSP处理器最多仅可同时进行8个并行乘法操作,数据吞吐量也只有8.8GMACS。除了DSP模块中的专用乘法器以外,还可利用逻辑单元(LE)实现乘法器和DSP功能。例如,可在Stratix器件中利用大约9600个逻辑单元实现一个256阶FIR滤波器。Stratix系列的EP1S120包括大约114,140个逻辑单元,可以容纳11个这样的滤波器。每一滤波器可运行在200MHz,这意味着通过利用LE可提供563GMACS的器件总吞吐能力。结合DSP模块提供的56GMACS数据吞吐能力,Stratix器件可提供高达620GMACS的数据总吞吐能力,因此Stratix器件适用于大数据量数字信号处理[1]。

    本系统的设计中采用了Stratix EP1S125,利用它可完成对多通道通话全程实时监测、录音和存储等功能。

3.2  Nios软核处理器
    Nios软核处理器是一种流水线技术、单指令流的32位RISC内嵌处理器,其性能超过200 DMIPS。它针对Altera的可编程逻辑器件和片上可编程系统的设计思想做了相应优化。作为一种可配置的通用RISC处理器,它可以与用户自定义逻辑结合构成SOC系统,并下载到Altera的可编程器件中去。32位Nios软核处理器结合外部闪存以及大容量存储器,可构成一个功能强大的32位嵌入式处理器系统,其大部分指令可以在一个时钟周期内完成。Nios软核处理器家族包括32位和16位两种版本的体系结构。

3.3  PCM编解码电路
    本系统设计中的PCM编解码电路采用了IDT821064编解码芯片,它提供了4个独立模拟音频通道,适合用于企业和运营商级的网络、无线网络、接入网络市场中的通信设备,具备完善的可编程性而无需外部组件,设计中根据所需要录音的通道数可以通过增加相应的IDT821064即可满足要求。IDT821064可进行阻抗匹配、音调生成、混合线圈平衡响应修正和增益设定,可依据系统结构选择适当的微处理器接口(MPI)或通用通信接口(GCI),它采用64脚的PQFP封装[2]。

    设计中Nios软核需要针对每个IDT821064提供GCI接口控制信号,考虑到控制指令一般只发送一两次,没有必要占用过多的资源,并且为了方便调试,选用了可以独立操作的PIO,通过软件对它们置位和复位来发送控制命令。

    图3是GCI接口时序图,DCL是数据时钟信号,FSC是帧同步信号,DD/DU是数据输出/输入信号。根据此时序图,我们可以编写相关HDL代码实现PCM串行数据的接收和发送。

3.4  IDE硬盘的控制
    IDE接口的硬盘驱动器提供了两种数据传输模式:PIO模式和DMA模式。由于PIO模式控制相对容易,提供了一种编程控制输入输出的快速传输方法。该模式采用了高速的数据块I/O,以扇区为单位,用中断请求方式与CPU进行批量数据交换。在扇区读写操作时,一次按16位长度通过内部的高速PIO数据寄存器实现传输。通常情况下,数据传输以扇区为单位,每传输一扇区数据产生一个中断。

    如果CPU要对硬盘进行写数据操作,首先CPU把必要的参数写入对应的地址寄存器,等待DRDY有效,然后将操作码写入命令寄存器,同时驱动器设置状态寄存器的DRQ位,表示准备好接收数据,CPU通过数据寄存器将数据写入扇区缓冲区,当扇区缓冲区填满后,驱动器清除DRQ位,并置位BSY。驱动器将扇区缓冲区中的数据写入磁盘,当写盘结束,清除BSY位,发中断请求信号INTRQ,CPU接收到中断信号后,读驱动器状态寄存器,同时将中断信号INTRQ清除。

    如果CPU要对硬盘进行读数据操作,首先将参数写入地址寄存器和特性寄存器(如果需要),然后把命令码写入命令寄存器,命令开始执行。这时驱动器置状态寄存器中的BSY=1,同时将硬盘上指定扇区内的数据送入扇区缓冲区。当扇区缓冲区准备好数据后,置位DRQ,清BSY,发中断请求信号INTRQ。CPU检测到中断后,读取状态寄存器,测试ERR位,若等于1则转入出错处理,否则若DRQ位为1,CPU从扇区缓冲区中读取数据,数据读完后,驱动器复位DRQ位,然后驱动器重新设置BSY位[3]。

4  软件设计
    软件设计包括配置生成SOPC系统、嵌入式操作系统的移植、语音压缩算法的设计、应用级代码编写及调试等部分。下面对其作简单介绍。

[1] [2]  下一页

,自动语音记录系统(AVRS)的SOPC设计与实现
关于《自动语音记录系统(AVRS)的SOPC设计与实现》的更多文章