摘 要:USB作为一种新型的
接口技术,以其简单易用、速度快等特点而备受青睐。本文简要介绍USB 接口的特点、硬件结构、数据流传送以及外设控制器的实现方式。并详细说明利用51单片机结合PHILIPS公司的PDIUSBD12带并行总线的USB接口器件设计带DMA工作模式的可供视频信号传输的多功能USB接口电路的过程。
引 言
USB的英文全称为Universal Serial Bus,中文含义是通用串行总线,它是一种快速的,双向的,同步传输的廉价的并可以进行热拔插的串行接口。USB接口使用方便,它可以连接多个不同的设备,而过去的串口和并口只能接一个设备。速度快是USB技术的突出特点之一。全速USB接口的最高传输率可达12Mb/s,比串口快了整整100倍,而执行USB2.0标准的高速USB接口速率更是达到了480Mb/s.这使得高分辨率、真彩色的大容量图象的实时传送成为可能。USB接口支持多个不同设备的串列连接,一个USB接口理论上可以连接127个USB设备。连接方式也十分灵活,既可以使用串行连接,也可以使用集线器(Hub)把多个设备连接在一起,再同PC机的USB接口相接。普通的使用串口、并口的设备都需要单独的供电系统,而USB设备则不需要。正是由于USB的这些特点,使其获得了广泛的应用。到目前为止,USB已经在PC机的多种外设上得到应用,包括扫描仪,数码相机,数码摄像机、音频系统、显示器、输入设备等。对于广大的工程设计人员来说,USB是设计外设接口时理想的总线。
对于USB接口芯片,通常分为普通和DMA(直接存储器存取)两种工作模式。相对于普通模式,DMA数据传输模式传输速率更快,更适合于视频数字信号等高速、实时信号的传送。但遗憾的是,国内市场上提供的各种USB接口电路板大部分仅工作在普通模式,缺少对DMA工作模式的支持,不能直接用于象CCD数字摄像机USB接口这样的需要工作在DMA模式下的设计开发。为了解决这个问题,我们对USB的原理进行了研究,尝试着利用51单片机结合PHILIPS公司的PDIUSBD12带并行总线的USB接口器件设计带DMA工作模式的可供视频信号传输的多功能USB接口电路,现已设计出了完整的硬件电路。
1、USB概述
由于多媒体技术的发展对外设与主机之间的数据传输率有了更高的需求,因此,USB总线技术应运而生。USB(Universal Serial Bus)翻译为中文就是通用串行总线,是由Conpaq、DEC、IBM、Inter、Microsoft、NEC和Northen Telecom等公司为简化PC与外设之间的互连而共同研究开发的一种免费的标准化连接器,它支持各种PC与外设之间的连接,还可实现数字多媒体集成。现在生产的PC几乎都配备了USB接口,Microsoft 的Windows98、NT以及MacOS、Linux、FreeBSD等流行操作系统都增加了对 USB的支持。
USB的主要优点:
l 使用方便。连接外设不必再打开机箱;允许外设热插拔,而不必关闭主机电源。
l 速度快。USB支持三种设备传输速率:1.5 Mb/s(低速设备)、12 Mb/s(中速设备)和480 Mb/s(高速设备)。
l 独立供电。USB接口提供了内置电源。
l 连接灵活。一个USB口理论上可以连接127个USB设备。连接的方式也十分灵活,既可以使用 串行连接,也可以使用集线器Hub,把多个设备连接在一起,再同PC机的USB口相接。
l 成本低。为了把外设连接到PC上,USB提供了一种低成本的解决方案。
现在满足USB要求的外设有:调制解调器,键盘,鼠标,光驱,游戏手柄,软驱,扫描仪,音箱等。USB总线标准由1.1版升级到2.0版后,传输率由12Mbps增加到了480Mbps,更换介质后连接距离由原来的5米增加到近百米。基于这点,USB也可以做生产ISDN以及基于视频的产品。USB 总线结构简单,信号定义仅由2条电源线,2条信号线组成。
2、USB结构与工作原理
一个USB系统可以从三个方面加以描述
(1)USB互联。
(2)USB设备。
(3)USB主机。
USB互联是指一个USB设备与USB主机相联并和其通信的方式,它包括:
(1)总线拓扑结构:USB主机和USB设备的连接模型。
(2)层间关系:USB在系统中的每一层都要完成一定的任务。
(3)数据流模型:USB系统中信源和信息之间的数据传送方式。
(4)任务规划:USB提供可以共享的互联机制。通过规划对互连机制的访问,可以支
持同步数据传输。
下面简要讨论USB硬件结构和数据流传输。
2.1 USB硬件结构
一个USB系统包含三类硬件设备: USB主机(USB HOST)、 USB设备(USB DEVICE)、USB集线器(USB HUB)。参见图2-1。
(1)USB HOST
在一个USB系统中,当且仅当有一个USB HOST时,USB HOST有以下功能:
◇ 管理USB系统;
◇ 每毫秒产生一帧数据;
◇ 发送配置请求对USB设备进行配置操作;
◇ 对总线上的错误进行管理和恢复。
(2)USB DEVICE
在一个USB系统中,USB DEVICE和USB HUB总数不能超过127个。USB DEVICE接收USB总线上的所有数据包,通过数据包的地址域来判断是不是发给自己的数据包:若地址不符,则简单地丢弃该数据包;若地址相符,则通过响应USB HOST的数据包与USB HOST进行数据传输。
(3)USB HUB
USB HUB用于设备扩展连接,所有USB DEVICE都连接在USB HUB的端口上。一个USB HOST总与一个根HUB (USB ROOT HUB)相连。USB HUB为其每个端口提供100mA电流供设备使用。同时,USB HUB可以通过端口的电气变化诊断出设备的插拔操作,并通过响应USB HOST的数据包把端口状态汇报给USB HOST。一般来说,USB设备与USB HUB间的连线长度不超过5m,USB系统的级联不能超过5级(包括ROOT HUB)。
USB总线最多可支持127个USB外设连接到计算机系统。USB的拓扑是树形结构,有1个USB根集线器(root hub),下面还可有若干集线器。1个集线器下面可接若干USB接口。USB线缆包括4条线:Vbus(USB电源)、D+(数据)、D-(数据)和 Gnd(USB地)。线缆最大长度不超过5m。USB1.1的传输速率最高为12Mb/s(低速外设的标准速率为1.5Mb/s,高速外设的标准速率为 12Mb/s)。图2-1是典型的USB功能器件结构框图,图2-3是高速外设的USB线缆与电阻的连接图。图2-3中:FS为全速(高速);LS为低速;R1=15kΩ,R2=15kΩ。USB外设可以采用计算机里的电源(+5V,500mA),也可外接USB电源。在所有的USB信道之间动态地分配带宽是USB总线的特征之一,这大大地提高了USB带宽的利用率。当一台USB外设长时间(3ms以上)不使用时,就处于挂起状态,这时只消耗0.5mA 电流。按USB1.0/1.1标准,USB的标准脉冲时钟频率为12MHz,而其总线时脉冲时钟为1ms(1kHz),即每隔1ms,USB器件应为 USB线缆产生1个时钟脉冲序列。这个脉冲系列称为帧开始数据包(SOF)。高速外设长度为每帧12000bit(位),而低速外设长度只有每帧 1500bit。1个USB数据包可包含0~1023字节数据。每个数据包的传送都以1个同步字段开始。
2.2 USB的数据流传输
主控制器负责主机和USB设备间数据流的传输。这些传输数据被当作连续的比特流。每个设备提供了一个或多个可以与客户程序通信的接口,每个接口由0个或多个管道组成,它们分别独立地在客户程序和设备的特定终端间传输数据。USBD为主机软件的现实需求建立了接口和管道,当提出配置请求时,主控制器根据主机软件提供的参数提供服务。
USB支持四种基本的数据传输模式:控制传输,等时传输,中断传输及数据块传输。每种传输模式应用到具有相同名字的终端,则具有不同的性质。
控制传输类型:支持外设与主机之间的控制,状态,配置等信息的传输,为外设与主机之间提供一个控制通道。每种外设都支持控制传输类型,这样主机与外设之间就可以传送配置和命令/状态信息。
等时传输类型:支持有周期性,有限的时延和带宽且数据传输速率不变的外设与主机间的数据传输。该类型无差错校验,故不能保证正确的数据传输,支持像计算机-电话集成系统(CTI)和音频系统与主机的数据传输。
中断传输类型:支持像游戏手柄,鼠标和键盘等输入设备,这些设备与主机间数据传输量小,无周期性,但对响应时间敏感,要求马上响应。
数据块传输类型:支持打印机,扫描仪,数码相机等外设,这些外设与主机间传输的数据量大,USB在满足带宽的情况下才进行该类型的数据传输。
USB采用分块带宽分配方案,若外设超过当前带宽分配或潜在的要求,则不能进入该设备。同步和中断传输类型的终端保留带宽,并保证数据按一定的速率传送。集中和控制终端按可用的最佳带宽来传输传输数据。