新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于DSP的USB语音传输接口设计方案

基于DSP的USB语音传输接口设计方案

作者:时间:2012-07-05来源:网络收藏

1 引 言
把所有的输入和输出外设都置于机箱之外,而不用任何扩展槽。他是快速、双向、同步、动态连接且价格低廉的串行接口,可以满足PC机发展的现在和未来的需要。本设计就是充分发挥了这些优点,利用当今先进的电子技术研制出来的一种新型的高性能的接口装置。

本文引用地址:http://www.eepw.com.cn/article/257385.htm

本设计选用TI公司的TMS320VC5402(以下简称,Digital Signal Processor)作为本设计的主控制器芯片,NS公司的N9603(以下简称USB,Universal Serial Bus)作为USB控制器芯片,NEWAVE公司的NWl034(以下简称CODEC)作为语音编解码器芯片,MITEI。公司的MH88634(以下简称COIC)作为电话机接口芯片。


2 和USB简介

TMS320VC5402是定点芯片TMS320C54X系列的一种,是为实现低功耗和高性能而专门设计的定点芯片,主要应用在无线通信和语音处理等方面。TMS320VC5402的主要特点包括:处理性能好,运算速度达100MI/s;优化的CPU结构,内部有1个40b的算术逻辑单元,2个独立的40b的加法器,1个17×17的的乘法器和1个40b的桶形移位寄存器,有4条内部总线和2个地址产生器;低功耗方式,可以在3.3VI/O电压和1.8V内核电压下工作;智能外设,除了标准的串行口和时分复用(TDM)串行口外,TMS320VC5402还提供了自动缓冲串行口BSP(auto-Buffered Serial Port)和与外部处理器通信的HPI(Host Port Interface)接口;内部有16k片内RAM和4k片内ROM。

TMS320VC5402其独特的高性能、低功耗和低价格优势,是我们选择他作为本设计的主处理器的原因。

USB自1995年实现标准化后,经过了数年的飞速发展,已经从最初1.0规范发展到现在的2.o规范,最大传输速率可达480Mb/s。本设计使用的USBN9603支持USBl.1规范,低速传输速率为1.5Mb/s,全速传输速率为12Mb/s。USB提供了4种传输方式,以适应各种设备的需要。这4种传输方式分别是控制传输、等时传输、中断传输和批量传输。

NS的USBN9603是一个集成的USB端点控制器,具有增强的DMA功能。USBN9603集成了一个带有3.3V的调节器的收发器,1个SIE(串行接口引擎),1个8 b并行接口,1个时钟发生器和1个MICROWIRE/PLUS接口。USBN9603可以进行7个端点的数据传输,除了端点。必须为控制传输端点以外,其他的6个端点可以被配置成中断传输端点、批量传输端点或者等时传输端点;每一个端点都有一个专门的FIFO,控制端点的FIFO长度为8B,其他的为64B。8 b并行接口可以支持多路复用或者非多路复用2种与CPU的接口方式。USBN9603的突出特点为:低EMI(电磁干扰),低等待电流,24M晶振,增强的DMA功能;可使用5V或3.3V电源;总线操作具有异步唤醒的全速静态HALT模式;改进的3.3V电压输入的电压调节器,所有非双向端点都有64B的FIFO;外部控制器接口简单,编程方便。


3 的思想

本设计的目的是给普通电话机和PC机之间提供一个数字接口。在本设计中,PC机是主机,DSP系统是USB设备。

当有来电时,COIC向DSP申请中断,DSP收到中断后就使用USB的中断传输向主机报告有来电,主机应用软件会弹出一个对话框要求用户选择摘机还是拒接,同时耳机或音箱里会传出电话铃声,如果选择摘机,主机就会使用USB的控制传输发送一个摘机命令给DSP,DSP在接到命令后就会接通电话,同时启动CODEC,然后语音数据就通过USB的等时传输(也叫同步传输)进行双向传送,而主机用户插上耳机(或音箱)和话筒就可以与电话另一端通话,通话完毕,主机发送一个挂机命令给DSP。如果选择拒接,主机就发送一个拒接命令给DSP,DSP会执行相应的动作。

当用户需要往外拨号时,也无需拿起电话机,只要在应用软件中选择拨号功能,输入被叫号码,点击确认键即可。剩下来的执行过程与有来电时的情况是一样的。


4 电路原理设计

本设计由DSP构成核心控制器,控制对象是USB,CODEC和COIC。图1是整个系统的硬件框图。


本设计的USB部分使用了USB的3种传输方式:

(1)控制传输
用于实现设备枚举主机的标准请求还有厂商自定义请求(即主机命令)。

(2)中断传输
用于实现设备对主机的唤醒,是惟一的设备主动向主机发送数据的传输方式。

(3)等时传输
用于实现语音数据的双向同步传输。

图2是USB与DSP的接口原理图,如图所示,USB使用24M晶振,本设备是全速(高速)设备,所以在D+上加0.5kΩ上拉电阻,如果是低速设备,则在D一上加1.5kΩ上拉电阻。MODE0和MODEl是选择8b并行接口方式的,本设计中选用非多路复用方式,所以MODE0和Model都接地,如果要选择成多路复用方式,则使MODE0接3.3V电源,MODEl接地即可。


CLKOUT是时钟输出,可供测试用,正常上电复位后,CLKOUT就应该输出4MHz的方波。然后可以在主程序中对USB的时钟寄存器进行配置,以产生需要的时钟,然后用示波器就可以在CLKOUT上看到相应的输出,可以用来判断读写操作是否正确等。

CODEC与DSP的接口为标准的串行通信接口。COIC把普通电话的两线制转换为四线制后实现与CODEC的无缝连接,另外和DSP接口只需几根简单的控制线即可实现。


5 系统软件的设计

系统软件主要由3个部分组成:Firmware,USB驱动程序,主机应用软件。图3是系统软件框图。


5.1 Firmware

固件程序,是写在DSP的ROM中的程序,由主程序和中断服务程序组成。使用TI提供的CCS(Code Composer Studio)来完成Firmware的编写。CCS是TI推出的代码编译调试的集成环境,调试方便、易于使用,为本设计的顺利进行创造有利条件。

(1)主程序

图4为主程序流程图。主程序只做初始化和检测一些状态位的变化,以转入相应的处理子程序中。


(2)中断服务程序

包括COIC的中断服务程序、CODEC的中断服务程序和USB中断服务程序3部分。Firmware的大部分工作是在中断服务程序中完成的。

COIC只有一个中断,就是把振铃信息传送给DSP。

CODEC有3个中断:首先是接收振铃信息,在振铃中断服务子程序中,把振铃标志位置位;然后是接收中断,在中断服务子程序中把从电话接收到的语音数据装载到相应的FIFO中去;还有就是发送中断,在中断服务子程序中把从PC机侧发过来的语音数据发送至电话终端。

USB有4个中断,所有的数据交换都是在中断服务子程序中完成的,而且除中断传输外每次传输都是由客户启动的,主机应用软件调用USB功能驱动程序开始一个传输过程,然后USB产生一个中断请求,向DSP申请中断,在得到DSP的响应之后才进人中断服务子程序进行数据的接收或者发送。

5.2 USB驱动程序

USB的驱动程序属于WDM(Windows Driver Model)类型,Windows 98/2000等操作系统均支持该类型的驱动程序。WDM首先定义了一个基本的核心驱动程序模型,处理所有类型的数据,使驱动程序模型的内核实现更加的固定。WDM驱动程序还是一种分层的程序结构,可以看做是Windows NT驱动程序的改进,WDM驱动程序支持即插即用、电源管理和WMI(Windows Management Instrument)特性。Windows 98/2000提供了一系列的系统驱动程序,他们具有为许多标准类型设备服务所需的所有基本功能。图5是USB的WDM接口框图(也是USB驱动程序总体框图)。


Windows提供了USB的系统类驱动程序,他处理USB上的所有底层通信,这样其他驱动程序就有了一个定义好的接口可以使用。图5中USB类驱动程序使用UHCD.SYS或OHCI.SYS分别驱动两种类型的控制器UHCI(USB Host Controller Driver)和OHCI(Open Host Controller Interface)。当PCI枚举器发现USB主机控制器后,就会装入相关的驱动程序。

需要自己做的驱动程序实际上是USB功能驱动程序(也叫客户驱动程序),他控制一个给定的USB功能设备,例如我们的设备。连接到USB设备的每一种类型的功能单元都必须要有功能驱动程序。这些功能单元不知道和USB传输机制相关的细节,而且必须依赖于USB的主机应用软件才能管理他们基于USB的能力和限制的传输请求。功能驱动程序的理想实现是基于设备类而定义的。功能驱动程序把USB设备看作是一个司以被访问的端点的集合,他可以被控制并与他的功能单元进行通信。USB功能驱动程序可以在VC++下编写,但需使用微软提供的NTDDK(Windows NT Driver Develop Kit)来编译驱动程序。

5.3 主机应用软件

主机应用软件所完成的主要工作为:打开和关闭USB设备;读取设备描述符等;向设备发送摘机、挂机和拨号等命令;主动向用户发声并弹出对话框提示有来电;进行拨号;拨号或摘机后的双向语音同步传输。

主机应用软件在VC++6.0下完成,应用软件所操作的对象就是USB功能驱动程序,由于功能驱动程序提供与应用软件的接口,因此编写应用软件的难度要远远低于功能驱动程序的开发难度。


6 结 语

在当今的数字化时代背景下,DSP已成为通信、计算机、消费类电子产品等领域的基础器件,被誉为信息社会革命的旗手。USB为PC外围设备输入输电提供了新的接口标准。他使得设备具有了热插拔、即1插即吊、自动配置的能力,并标准化了设备连接。USB的级联星型拓扑结构大大扩充了外设数量,使增加、使用外设更加便捷、快速。

本文所介绍的USB设备其实是一个数字电话机的模型,本系统软硬件都具有模块化特性,易于改造成其他应用场合的语音控制系统:从大的方面讲,可以组成数字电话网:从小的方面讲,在一个局域网内部,所有成员就都可以通过局域网方便地接听和拨打电话,而无需大量的分机。该设计节省了大量的人力和物力,具有较强的使用价值和推广意义



关键词: DSP USB 语音传输

评论


相关推荐

技术专区

关闭