25.1 USB体系介绍

25.1  USB体系介绍

USBUniversal Serial Bus)是一个总线协议标准,最初是由IntelNECCompaqDECIBMMicrosoft等公司联合制定的。到目前为止,USB共有1.01.12.03个标准,主要区别是传输速率不同,体系结构也有一些差别。

25.1.1  USB设计目标

USB的设计目标是对现有的PC体系进行扩充,但是目前不仅是PC,许多的嵌入式系统都开始支持USB总线和接口标准。USB设计主要遵循下面几个原则。

q      易于扩充外部设备:USB支持一个接口最多127个设备。

q      灵活的传输协议:支持同步和异步数据传输。

q      设备兼容性好:可以兼容不同类型的设备。

q      接口标准统一:不同的设备之间使用相同的设备接口。

USB标准在发展过程中出现了3个版本1.01.12.0标准。其中已经在应用的有1.12.0标准。USB 1.1标准的最大数据传输率是12Mbps,而USB 2.0的最大数据传输率是480Mbps,并且USB 2.0接口标准向下兼容USB 1.1接口标准。从USB接口标准的传输率看出,USB接口可以支持多种数据传输率。实际上,USB接口标准把USB设备分成了低速、中速和高速设备。请参考表25-1

25-1  USB设备按照速率划分

   

   

   

   

低速设备

1020kbps

键盘、鼠标等输入设备

易用,支持热插拔,价格低

中速设备

500kbps10Mbps

宽带网络接入设备

易用,支持热插拔

高速设备

25500Mbps

音视频设备、磁盘

易用,带宽高,支持热插拔

从表25-1中可以看出,USB 1.1接口标准可以覆盖低速设备和中速设备,而高速设备需要支持USB 2.0接口标准。USB接口标准具有下面几个方面的特色:

1.易用性

USB虽然有不同的接口标准,但是对用户来说,使用了相同的连接电缆和接口连接头,便于不同设备之间的互联。此外,USB总线屏蔽了接口的电器特性,并且支持自动检测外部设备、设置驱动等,方便了用户操作。

2.应用广泛

USB接口标准适用于不同设备,传输率从几百比特到几百兆比特,覆盖了绝大多数的计算机外部设备。USB支持在同一条线路上同时使用同步和异步两种数据传输模式,多个设备可以同时操作。在主机和设备之间可以传输多个数据流和信息流。

3.健壮性

USB接口标准在传输协议中支持出错处理和差错恢复机制,对于热插拔操作,用户的感觉完全是实时操作。另外,USB接口标准支持对缺陷设备的认定。

25.1.2  USB体系概述

USB接口标准支持主机和外部设备之间进行数据传输。在USB体系结构中,主机预定了各种类型外部设备使用的总线带宽。当外部设备和主机在运行时,USB总线允许添加、设置、使用和拆除外设。

USB体系结构中,一个USB系统可以分成USB互联、USB设备和USB主机3个部分。USB互联是USB设备和USB主机之间进行连接通信的操作,主要包括:

q      总线拓扑结构:USB主机和USB设备之间的连接方式。

q      数据流模式:描述USB通信系统中数据如何从产生方传递到使用方。

q      USB调度USB总线是一个共享连接,对可以使用的连接进行了调度以支持同步数据传输,并且避免优先级判定的开销。

USB的物理连接是一个有层次的星形结构,如图25-1所示。

25-1  USB体系拓扑结构

从图25-1中可以看出,在一个节点上连接多个设备需要使用USB集线器(USB HUB),每个USB集线器在星形的中心,每条线段都是点点连接。从主机到USB集线器或者设备,以及USB集线器到设备都是点点连接。

USB体系结构规定,在一个USB系统中,只有唯一的一个主机。USB和主机系统的接口称做主机控制器,主机控制器由主机控制器芯片、固件程序和软件共同实现的。USB设备包括USB集线器和功能器件。其中USB集线器的作用是扩展总线端点,向总线提供更多的连接点;功能器件是用户使用的外部设备,如键盘,鼠标等。USB设备需要支持USB总线协议,对主机的操作提供反馈并且提供设备性能的描述信息。

25.1.3  USB体系工作流程

USB总线采用轮询方式控制,主机控制设置初始化所有的数据传输。USB总线每次执行传输动作最多可以传输3个数据包。每次开始传输时,主机控制器发送一个描述符描述传输动作的种类和方向,这个数据包称做标志数据包(Token Packet)。USB设备收到主机发送的标志数据包后,解析出数据包的数据。

USB数据传输的方向只有两种:主机到设备或者设备到主机。在一个数据传输开始时,由标志包标示数据的传输方向,然后发送端开始发送包含信息的数据。接收端发送一个握手的数据包表明数据是否传送成功。在主机和设备之间的USB数据传输可以看做一个通道。USB数据传输有流和消息两种通道。消息是有格式的数据,而流是没有数据格式的。USB有一个默认的控制消息通道,在设备启动的时候被创建,因此设备的设置查询和输入控制信息都可以使用默认消息控制通道完成。

你可能感兴趣的:(IBM,Microsoft,嵌入式,扩展,token,磁盘)