USB音频设备的设计与实现

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

USB音频设备的设计与实现

Design and Implementatio n of USB Audio Device

(江西理工大学)吴君钦

(Jiangxi University of Science and Technology)Wu,Junqin 摘要:在介绍USB音频设备及其驱动程序结构的基础上,对USB Audio功能节点、USB Audio描述符、USB Audio请求、码流同步等设计重要方面进行了详细论述,提出了一种准同步USB码流速度匹配方法。使用准同步法,在一对USB ISO端点上,成功地实现了实时全双工USB音频通信功能,简化了时钟同步系统的设计。

关键词:USB音频,驱动程序, 准同步通信

Abstract:Introduce the structure of USB audio device and the structure of USB audio driver, discuss the function endpoints of USB audio peripheral, the USB audio descriptors,the USB audio request and the synch mechanism for USB audio stream detailly, bring out a new synch method called p lesiochronous communication for USB audio stream speed matching. U sing the p lesiochronous communication model , implement duplex audio communication functions on twain USB ISO endpoints, simplify the design of clock synch system .

Key words:USB Audio; Device driver; P lesiochronous communication

1 引言

随着USB接口的推广和普及,越来越多的电脑外部设备采用USB接口, 在便携电脑中,有采用USB口扩展外设取代PCMCIA总线接口的趋势。特别是USB2.0的数据传输速率达480bps,USB实时同步数据传输模式适合于传送高速实时音视频数据流。MP3播放器、U盘等设备的流行,使USB接口的应用更为广泛,若能为这些便携设备增加USB音频功能,MP3等设备将成为语音聊天、网络电话等通信终端设备,大大拓展了应用领域,为此本文对USB音频外部设备的体系结构、工作原理及音频数据码流同步方法等设计的重要方面做详细论述。

2 USB设备与驱动程序

一般,USB外部设备包含一个USB设备控制器(USB peripheral Controller),设备控制器与通信另一端主控制器(USB Host Controller)的端点(Endpiont)管道(Pipe)之间的实现逻辑联接[1][2]。主机端驱动软件包含USB主控器驱动程序、设备驱动程序和应用软件三部分,主控制器驱动程序由操作系统提供支持,USB设备开发人员一般只需编写USB设备驱动程序和用户应用程序两部分,以实现特定的功能。但设备端所有功能的驱动软件必须由开发商完成,关于一般USB设备的设计请参阅文献[1][4][5]。

虽然USB音频流媒体设备各部分与标准USB设备各部件间的逻辑关系相一致,但USB 音频设备(USB Audio Device)有其殊性, 它的结构和实现机制更为复杂。图1是微软推荐的标准USB音频设备WDM驱动序各部分之间的逻辑层次关系[2]。图1 USB音视频流类驱动程序(AVStream Class Driver,USBAudio.sys)运行在USB主机控制器驱动驱动程序之上, 属于USB设备驱动程序范畴。图1黑体部分是与USB Audio有关的驱动和应用程序模块,而其他模块则与USB Audio无关。

如果硬件设备按照USB标准音频设备规范[3]设计,设备开发商无须编写特定的USB设备驱动程序,用户可直接使用Win98、Win2000或后续版本中绑定的标准USB Audio驱动程序,在其他操作系统中也有相应的标准驱动程序,节省了大量的开发时间,所以本文不详细讨论USB Audio驱动程序的设计问题,而重点讨论USB音频设备的设计。此外标准USB音频设备可以与现有的各种音频播放软件、VOIP通信软件实现无缝联接。

图1 Windows 音频设备驱动程序模块关系图

3 USB 音频设备设计

3.1 USB 音频功能节点

USB 音频设备是由若干功能节点组成的。在设计USB Audio 设备前,需要了解组成USB Audio 设备的功能节点(Audio Function )。Audio Function 包括:输入终端(Input Terminal ,IT )、输出终端(Output Terminal,OT )、混音器(Mixer Unite,MU)、选择器(Selector Unit,SU)、调音器(Feature Unite )、处理单元(Process Unite )、扩展单元(Extention Unite )以及辅助接口等。下面介绍几个主要的功能节点:

IT 是Function 外部与Audio Function 的接口,相当于音频信息流入功能节点的一个“插座”。USB 的OUT 端点代表了一种流入音频信息的逻辑通道(USB OUT IT),而Line in 插座代表了一种非USB 的 IT (Non USB IT )。

OT 是Audio Function 内部与外部(其他设备)的接口,相当于音频信息流出功能节点的一个“插座”。USB 的IN 端点代表了一种音频信息流出Audio Function 的逻辑通道(USB IN OT ),而Speak Out 插座代表了一种非USB 的音频信息流出OT (Non USB OT )。

MU:是把多个音频输入流混合成单一逻辑输出流的USB Audio Functon ,输入通道被组合成一个或多个通道族,每个族通过一条输入脚流入MU 单元,而逻辑输出通道也组合成一个通道族通过一条输出脚流出MU 单元。

SU 是从多个输入音频通道族中选择一族到输出通道族中。图2 是IT 、OT 、 MU 和SU 等USB Audio Function

节点的逻辑符号。

图2 IT 、OT 、 MU 和SU 符号

3.2 USB 音频设备拓扑结构

简单的USB 设备可以只有一个IT 和一个OT 构成,比如单声道USB 音箱,而复杂的USB 音频设备可以含所有类型的功能节点。图3是一个包含录音、放音和混音功能的USB Audio 设备的拓扑结构图,MIC 和USB OUT AudioStream 通过混音器输出到SPK ,MIC AudioStream 也同时流入USB IN 端点到达主机。

相关文档
最新文档