阅读:1620回复:3
USB特性
USB总线简介
通用串行总线USB(Universal Serial Bus)是由Intel等厂商制定的连接计算机与具有USB接口的多种外设之间通信的串行总线。目前,带USB接口的设备越来越多,如鼠标、键盘、数码相机、调制解调器、扫描仪、摄像机、电视及视频抓取盒、音箱等。 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)。最近推出了USB2.0标准,其速度比USB1.0/1.1快40倍,达480Mb/s。USB是基于令牌的总线,类似于令牌环网络或FDDI基于令牌的总线。USB主控制器广播令牌,总线上设备检测令牌中的地址是否与自身相符,通过接受或发送数据给主机来响应。USB通过支持悬挂/恢复操作来管理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个同步字段开始。 主机,也被成为根、根结或根Hub。它做在主板上或作为适配卡安装在计算机上。主机包含有主控制器和根集线器,控制着USB总线上的数据和控制信息的主流。每个USB系统只能有一个根集线器,它连接在主控制器上。 集线器是USB结构中的特定成分,它提供叫做端口(Port)的点将设备连接到USB总线上,同时检测连接在总线上设备,并为这些设备提供电源管理,负责总线的故障检测和恢复。集线器或是为总线提供能源,或是为自身提供能源(从外部得到电源),自身提供能源的设备可插入总线提供能源的集线器中,但总线提供能源的设备插入自身提供能源的集线器或支持超过4个的下游端口中。总线提供能源设备的需要超过100mA电源时,不能同总线提供电源的集线器连接。 功能设备通过端口与总线连接。USB设备同时可做Hub使用。例如,USB监视器可以提供USB鼠标和USB键盘的端口。USB集线器使用A类集线器,设备使用B类连接器。 USB特点: (1) USB具有真正的“即插即用”特性,用户可以很容易地对外设实行安装和拆卸,主机可按外设的增删情况自动配置系统资源,同时用户可以在不关机的情况下进行外设的更换,外设装置的驱动程序的安装、删除将实现自动化。 (2) USB具有很强的连接能力,最多可以链接形式连接127个外设到同一系统,这时一般的计算机系统是足够的了。 (3) 低成本。一方面使外设的设计制造过程比较简单,因为所有系统的智能机制都驻留在主机中,另一方面USB从1996年4月起并入了Intel芯片组,从而是设备制造的开销降低。 (4) 空间的节省。USB的引入减轻了对目前PC机中所有标准端口的需求,从而也减少了对PC记插槽的需求。 (5) USB与ETDN(Enhanced Time Multiplexing,增强型时分多路转换)特性可以支持诸如ISDN等高速数字电话信息通路接口,USB再加上Windows Telephone API后,为今后PC机同电话的集成提供了良好的基础。 (6) 连接电缆亲瞧轻巧、电源体积缩小。USB使用的4芯电缆和+5V的直流电源给USB的用户和厂商带来了方便。 (7) USB是一种开放性的不具专利版权的理想工业标准,由150多家企业组成的“USB实施者论坛”是一个标准化组织,它所指定的任何标准不为哪一家公司所独有,不存在专利版权问题,所有USB组织的成员只要交付一定的会费即可。这一点也正是USB规范具有强大生命力之处。开放性是当前计算机技术能得到飞速发展的重要原因之一。 USB系统组成 完整的USB体系如图所示 USB体系 最低层的是USB设备,往上就是USB主机控制器,这些是USB的硬件部分。然后就是软件部分,首先是USB主机控制器驱动程序。其他,不一定需要操作系统支持,只要主板芯片组开发商提供了南桥的USB驱动程序就可以使用USB设备。再往上是USB设备驱动。最后就是USB应用程序。 USB的软件结构 USB通信模块的基本流程如图所示 主机 互连 设备 USB通信模块基本流程 设备上的相应接口根据不同的仪器而不同。主机和设备间的通信最终发生在物理线上,但在每一水平之间存在着逻辑接口。主机中客户程序软件与设备功能间的通信代表了设备需求与设备能力之间的约定。 每个USB只有一个主机,它包括以下几层: (1)USB总线接口 USB总线接口处理电气层与协议曾得互连。从互连的角度来看,相似的总线接口由设备及主机同时给出,例如串行接口机(SIE)。USB总线接口由主控制器实现。 (2)USB系统 USB系统用主控制器管理主机与USB设备之间的数据传输。它与主控制器间的接口依赖于主控制器的硬件定义。同时,USB系统有3个基本组件: 主控制器驱动程序(HCD)能够更容易地将不同主控制器设备映射到USB系统中。因此,客户可以在不知其设备连接哪个主控制器的情况下与设备相互作用。HCD与CSB间的接口叫HCDI,特定的HCDI由支持不同主控制器的操作系统定义。通用主控制器驱动程序(UHCD)处于软结构的最低层,由它来管理和控制主控制器。USB主控制器定义了一个标准硬件接口,以提供一个统一的主控制器可编程接口。UHCD实现了与USB主控制器通信和控制USB主控制器的一些细节,并且它对系统软件的其他部分是隐蔽的。系统软件中更高层通过UHCD的软件接口与主控制器通信。 USB驱动程序(USBD)位于UHCD之上。它提供驱动程序级的接口,满足现有设备驱动程序设计的要求。USBD所实现的准确细节随操作系统环境的不同而有所不同,但USBD在不同操作系统环境下完成的是一样的工作。USBD以I/O请求包(IRPs)的形式提供数据传输架构,它由通过特定管道(Pipe)传输数据的需求组成。此外,USBD使客户端出现设备的一个抽象,以便于抽象和管理。作为抽象的一部分,USBD拥有缺省的管道。通过它可以访问所有的USB设备以进行标准的USB控制。该缺省管道描述了一条USBD和USB设备间通信的逻辑通道。 主机软件在某些操作系统中,没有提供USB系统软件。这些软件本来是用于向设备驱动程序提供配置信息和装卸结构的。在这些操作系统中,设备驱动程序将应用提供的接口而不是直接访问USBDI(USB驱动程序接口)结构。 (3)USB客户软件 它位于软件结构的最高层,负责处理特定USB设备的设备驱动器。客户程序层描述了所有直接作用于设备的软间接口。当设备被系统检测到后,这些客户程序将直接作用于外围硬件。这个共享的特性将USB系统软件置于客户和它的设备之间,就是说,一个客户程序不能直接访问硬件设备,而要根据USBD在客户端形成的设备映象由客户程序对它进行处理。 总体上说,主机各层有以下功能: .检测连接和移去的USB设备; .管理主机和USB设备间的数据流; .连接USB状态和活动统计; .控制主控制器和USB设备间的电气接口,包括限量能量供应。 控制信息可能以带内方式或带外方式在主机和设备间传输。带内方式将控制信息与数据混在一个管道内;带外方式将控制信息与数据放在分离管道内。 每个连上的USB设备都有一个被称为缺省管道的消息管道,并在USB设备和主机之间建立逻辑关联。缺省管道为所有的设备提供了一个标准的接口。缺省通道也用于设备通信,由USBD作为中介,USBD拥有所有设备的缺省通道。 特别的USB设备允许使用附加的消息管道传输具体设备的控制信息。这些管道使用相同的通信协议作为缺省通道,但传输的信息必须具体到特定的设备,而不被规范标准化。USBD支持其客户共享它拥有和使用的缺省通道,它也可以访问其他设备的控制管道。 基于不同级别的抽象,HCDT和USBD提供不同的软件接口。它们被希望以某种特殊的方式一起工作来满足所有USB系统的需求。USB系统的需求主要体现为对USBDI的需求。USBD和HCD间任务的区分没有定义,然而,在特定的操作系统中支持多主控制器设备是HCDI必须满足的需求。 HCD提供了主控制器的抽象和通过USB传输的数据的主控制器视角的一个抽象。USBD提供了USB设备的抽象和USBD客户与USB功能间数据传输的一个抽象。总之,USB系统促进客户和功能间的数据传输,并作为USB设备的规范接口的一个控制点。USB系统提供缓冲区管理能力并允许数据传输同步与客户和功能的需求。 USB上的数据流传输 主控制器负责主机和USB设备间数据流的传输。这些传输数据被当作连续的比特流。每个设备提供了一个或多个可以与客户程序通信的接口,每个接口由0个或多个管道组成,这些管道分别独立地在客户程序和设备的特定终端间传输数据。USBD为主机软件的实现需求建立了接口和管道,当提出配置请求时,主控制器根据主机软件提供的参数提供服务。 USB支持四种基本的数据传输模式:控制传输、等时传输,中断传输及数据块传输。每种传输模式应用到具有相同名字的终端,则具有不同的性质。控制传输类型支持外设与主机之间的控制、状态、配置等信息的传输,为外设与主机之间提供一个控制通道。每种外设都支持控制传输类型,这样,主机PC与外设之间就可以传送配置和命令/状态信息。 等时(Isochronous)传输类型支持周期性、有限的时延和带宽且数据传输速率不变得外设与主机间的数据传输。该类型无差错校验,故不能保证正确的数据传输,支持像计算机-电话集成系统(CTI)和音频系统与主机的数据传输。 中断传输类型支持像游戏手柄、鼠标和键盘等人机输入设备,这些设备与主机间数据传输量小、无周期性,但对响应时间敏感,要求马上响应。 数据块(Bulk)传输类型支持打印机、扫描仪、数码相机等外设,这些外设与主机间传输的数据量很大,USB在满足带宽的情况下才进行该类型的数据传输。 USB采用分块带宽分配方案,若外设超过当前带宽分配或潜在地要求,则拒绝进入该设备。同步和中断传输类型的终端保留带宽,并保证数据按一定的速率传送。集中和控制终端按可用的最佳带宽来传输数据。但是,10%的带宽慰批量处理和控制传送而保留,数据块传输仅在带宽满足要求的情况下才会出现。 USB的即插即用 USB的一个主要优点就是支持设备的热插拔,用户不需要关闭电源就可以接上和使用USB设备。USB集线器驱动程序检测设备,并通知系统设备就绪。USB设备使用描述符来识别设备及其使用协议。串口号产生P&P用的ID,端口地址指明设备连接的端口和集线器。若设备不提供串口号,则USB使用设备端口地址。 当一新设备被USB集线器接测到后,马上通知主系统,系统软件即查询该设备,自动确定所需设备驱动软件和总线带宽,然后对其进行配置。系统软件装载了合适的驱动软件后,用户马上就可以使用新设备。 ![]() ![]() |
|
沙发#
发布于:2003-05-12 20:46
very good!!! :P
|
|
|
板凳#
发布于:2004-03-04 13:07
好文章
|
|
|
地板#
发布于:2004-07-02 16:29
good
|
|