微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 全面认识USB的技术精髓

全面认识USB的技术精髓

时间:12-12 来源:互联网 点击:
  USB是Universal Serial Bus的简称。它是一种可以同时处理计算机与具有USB接口的多种外设之间通信的电缆总线。这些连接到计算机上的外设共同分享USB的带宽。USB的分时处理机制真正在硬件的意义上实现了计算机外设的即插即用。

  如果留心一下当前市场上的电脑外设,大家会发现采用USB设备的产品正在逐渐增加。键盘、鼠标、MODEM、游戏杆、音箱、扫描仪等,以前插在串行、并行等外部扩展接口上的部件,甚至一些以前要连接到电脑内部扩展槽上的设备,都开始以USB接口的界面出现,USB设备的发展势头正如日中天。

  本文将从技术的角度来探讨一下USB,有关它的实用部分请参阅本刊1999年第5、7和11期的相关文章。

  一个基于计算机的USB系统可以在系统层次上被分为三个部分:即USB主机(USB Host)、USB器件(USB Device)和USB的连接。

  所谓USB连接实际上是指一种USB器件和USB主机进行通信的方法。它包括:

●总线的拓扑(由一点分出多点的网络形式):即外设和主机连接的模式;

●各层之间的关系:即组成USB系统的各个部分在完成一个特定的USB任务时,各自之间的分工与合作;

●数据流动的模式:即USB总线的数据传输方式;

●USB的“分时复用”:因为USB提供的是一种共享连接方式,因而为了进行数据的同步传输,致使USB对数据的传输和处理必须采用分时处理的机制。

一、USB的总线拓扑

  USB的总线拓扑如图1所示,在USB的树形拓扑中,USB集线器(HUB)处于节点(Node)的中心位置。而每一个功能部件都和USB主机形成唯一的点对点连接,USB的HUB为USB的功能部件连接到主机提供了扩展的接口。利用这种树形拓扑,USB总线支持最多127个USB外设同时连接到主计算机系统。

图1 USB的总线拓扑示意图



  一个USB系统仅可以有一个主机,而为USB器件连接主机系统提供主机接口的部件被称为USB主机控制器。USB主机控制器是一个由硬件、软件和固件(Firmware)组成的复合体。一块具有USB接口的主板通常集成了一个称为ROOT HUB的部件,它为主机提供一到多个可以连接其它USB外设的USB扩展接口,我们通常在主板上见到的USB接口都是由ROOT HUB提供的。

  USB器件可以分为两种:即USB HUB和USB功能器件(Function Device)。

  作为USB总线的扩展部件,USB HUB(图2)必须满足以下特征:

●为自己和其它外设的连接提供可扩展的下行和上行(Downstream and Upstream)端口;

●支持USB总线的电源管理机制;

●支持总线传输失败的检测和恢复;

●可以自动检测下行端口外设的连接和摘除,并向主机报告;

●支持低速外设和高速外设的同时连接。

  从以上要求出发,USB HUB在硬件上由两部分组成:HUB应答器(HUB Repeater)和HUB控制器(HUB Controller)。HUB应答器回应主机对USB外设的设置,以及对连接到它下行端口的USB功能部件的连接和摘除(Attached and Detached)的检测、分类,并将其端口信息传送给主机,它也负责如“总线传输失败检测”这样的错误处理;而HUB控制器则提供主机到HUB之间数据传输的物理机制。如同我们所熟知的大多数计算机外设一样,USB HUB也有一个用来向主机表明自己身份的“BIOS”系统。这块位于USB HUB上的ROM,通过USB特征字使主机可以配置这个USB HUB,并监控它的每一个端口。

  USB功能器件即可以为主机系统提供某种功能的USB器件,如一个USB ISDN的调制解调器、或是一只USB接口的数字摄像机、USB的键盘或鼠标等。

图2 USB HUB的结构



图3 一个典型的USB功能器件结构框图



  USB的功能器件作为USB外设(USB Function),它必须保持和USB协议的完全兼容,并可以回应标准的USB操作。同样,用于表明自己身份的“BIOS”系统对于USB外设也是必不可少的,这在USB外设上被称为协议层。在物理机制上,一个USB外设可以由四部分构成(图3):

●用于实现和USB协议兼容的SIE部分;

●用于存储器件特征字、存储实现外设特殊功能程序及厂家信息的协议层(ROM);

●用于实现外设功能的传感器及对数据进行简单处理的DSP部分;

●将外设连接到主机或USB HUB的接口部分。

  根据传输率的不同,USB器件被分为高速和低速两种。低速外设的标准传输率为1.5Mbps,而高速外设的标准传输率为12Mbps。所有的USB HUB都为高速外设,而功能部件则可以根据外设的具体情况设计成不同的传输率,如用于视频、音频传输的外设大都采用12Mbps的传输率,而像键盘、鼠标这样的点输入设备则设计成低速外设。由于USB的数据传输采用数据包的形式,因而使得连接到主机的所有的USB外设可以同时工作而互不干扰。不幸的是,所有这些USB外设必须同时分享USB协议所规定的USB带宽(这个带宽在USB 1.0协议中为12Mbps),虽然USB的分时处理机制可以使有限的USB带宽在各设备之间动态地分配,但如果两台以上的高速外设同时使用这样的连接方法,就会使它们都无法享用到最高的USB带宽,从而降低了性能。这也正是Intel这样的巨头为什么要推出USB 2.0协议的原因(在USB 2.0协议中USB的总线带宽一下子被提高到了480Mbps)。

  用于实现外设到主机或USB HUB连接的是USB线缆(图4)。从严格意义上讲,USB线缆应属于USB器件的接口部分。USB线缆由四根线组成,其中一根是

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top