中国普天信息技术研究院协议简介USB是一种协议总线,即主机与设备之间的通信需要遵循一系列约定。协议内容较多,这里仅作一些简单介绍,深入学习,可参看USB规范(.usb.org)。为了理解协议中的名称,先看图10.32。该图突出了主机上的客户软件和USB逻辑设备(编程涉及的设备)之间的通信流(CommunicationFlow),该通信流跨越了USB驱动程序USBD、主控制器驱动程序UHCD、主控制器等硬件接口及其连接。端点(Endpoints)是USB设备的惟一可识别的部分,是主机和设备之间通信流的终点。每一个逻辑设备有若干个独立端点,每一个端点在设计时被分配一个惟一的由设备确定的标识符,称之为端点号。如图10.32所示,将用于通信流流动的通道称为管道(Pipe),这是忽略了许多中间环节的很形象的称呼,对于理解USB系统中的信息传输很有帮助。图中把3个端点看成了一个接口,关于接口的说明安排在后面。中国普天信息技术研究院协议中国普天信息技术研究院(一)USB2.0的背景•COMPAQ、HewlettPackard、Intel、Lucent、Microsoft、NEC和PHILIPS这7家厂商联合制定了USB2.0接口标准•USB2.0规范是由USB1.1规范演变而来的,USB2.0将设备之间的数据传输速度增加到480Mbps,折算为MB为60MB/S,比USB1.1标准快40倍左右.•USB2.0与USB1.1可以互相兼容,USB2.0设备可以工作在USB1.1接口上,USB1.0设备也可以工作在USB2.0接口,USB1.1设备的速度不会因为安装在USB2.0接口上而有任何提高,同样安装在USB1.1接口上的USB2.0设备的速度也会被限制在12mbps(1.5MB/S)以下.USB2.0和USB1.1使用的连接电缆及端口均相同.中国普天信息技术研究院(二)USB2.0协议规范目的•USB2.0规范描述了总线属性,协议定义,处理类型,总线管理和编程接口,以满足设计和构建符合该标准的系统和外设的要求.•USB2.0规范的主要目标用户是外设开发者和系统OEM.•USB2.0规范的目标是使不同厂商的器件可以在开放的结构中相互操作中国普天信息技术研究院(三)USB应用分类符合USB1.1规范的标志符合USB2.0规范的标中国普天信息技术研究院(四)USB2.0的结构体系•USB系统•物理层接口•电源•总线协议•健壮性•系统配置•数据流类型•USB设备•USB主机-----硬件和软件•体系结构的扩展中国普天信息技术研究院系统•USB2.0系统主要被定义为三个部分:1.USB的互连;2.USB的设备;3.USB的主机USB的互连是指USB设备与主机之间进行连接和通信的操作,主要包括以下几方面:1.总线的拓扑结构:USB设备与主机之间的各种连接方式;2.内部层次关系:根据性能叠置,USB的任务被分配到系统的每一个层次;3.数据流模式:描述了数据在系统中通过USB从产生方到使用方的流动方式;4.USB的调度:USB提供了一个共享的连接。对可以使用的连接进行了调度以支持同步数据传输,并且避免的优先级判别的开销.中国普天信息技术研究院的主机在任何USB系统中,只有一个主机。USB和主机系统的接口称作主机控制器,主机控制器可由硬件、固件和软件综合实现。根集线器是由主机系统整合的,用以提供更多的连接点.2.USB2.0的设备USB的设备如下所示:1.网络集线器,向USB提供了更多的连接点;2.功能器件,为系统提供具体功能,如ISDN的连接,数字的游戏杆或扬声器;USB设备提供的USB标准接口的主要依据:1.对USB协议的运用;2.对标准USB操作的反馈,如设置和复位;3.标准性能的描述性信息;中国普天信息技术研究院•USB2.0总线布局技术USB连接了USB设备和USB主机,USB的物理连接是有层次性的星型结构。每个网络集线器是在星型的中心,每条线段是点点连接。从主机到集线器或其功能部件,或从集线器到集线器或其功能部件.中国普天信息技术研究院的物理接口USB的物理接口分为总线的电气规范和机械特性.1.电气特性USB在一条4线的电缆上传输信号和电源.信号在两条点对点连接线上传输.USB2.0支持3种数据数率:.USB高速信号位速率是480Mb/s.USB全速信号位速率是12Mb/s.USB低速信号位速率是1.5Mb/sUSB2.0主机控制器和集线器提供了一种性能,使全速和低速数据可以在主机控制器和HUB之间高速传输,而HUB和设备之间以全速或低速传输,这种性能将全速和低速设备对高速设备可用带宽的影响减到最小.低速模式用于支持例如鼠标等数量有限的低宽带设备,因为使用太多这种设备将降低总线的利用率.时钟与差动数据一起编码传送,时钟是以带位填充的NRZI方式编码,以保证有足够的跳变沿.接收器用每个包前面的SYNC场同步它们的位恢复时钟.每段电缆还有向设备提供电源的VBUS和GND线.VBUS在源极的标称值是+5V.通过选择适当的导线规格来匹配指定的IRdrop和其它一些特性,如设备能源预算和电缆适应度.为了保证足够的输入电压和终端阻抗。重要的终端设备应位于电缆的尾部。在每个端口都可检测终端是否连接或分离,并区分出高速,或低速设备.中国普天信息技术研究院电缆中国普天信息技术研究院中国普天信息技术研究院机械特性电缆和连接器的机械特性将在机械特性章节详述。所有设备都有一个上行的连接。上行连接器和下行连接器是不可简单的互换,这样就避免了集线器间的非法的循环往复的连接,电缆中有四根导线:一对互相缠绕的标准规格线,一对符合标准的电源线,连接器有四个方向,具有屏蔽层,以避免外界干扰,并有易拆装的特性。中国普天信息技术研究院电源主要包括两方面:·电源分配:即USB的设备如何通过USB分配得到由主计算机提供的能源;·电源管理:即通过电源管理系统,USB的系统软件和设备如何与主机协调工作.1.电源分配每个USB单元通过电缆只能提供有限的能源。主机对那种直接相连的USB设备提供电源供其使用。并且每个USB设备都可能有自己的电源。那些完全依靠电缆提供能源的设备称作“总线供能”设备.相反,那些可选择能源来源的设备称作“自供电”设备.而且,集线器也可由与之相连的USB设备提供电源。受一定布局限制的带有“总线供能”集线器的体系结构将在集线器部分讨论。在图中,键盘,输入笔和鼠标均为“总线供能”设备.中国普天信息技术研究院中国普天信息技术研究院电源管理USB主机与USB系统有相互独立的电源管理系统。USB的系统软件可以与主机的能源管理系统结合共同处理各种电源子件如挂起、唤醒,并且有特色的是,USB设备应用特有的电源管理特性,可让系统软件和控制其电源管理.USB的电源分配和电源管理特性使之可以被设计在电源传感系统中,如采用电池的笔记本电脑.典型USB外设的电源供应中国普天信息技术研究院总线协议USB总线属一种轮讯方式的总线,主机控制端口初始化所有的数据传输.每一总线执行动作最多传送三个数据包。按照传输前制定好的原则,在每次传送开始时,主机控制器发送一个描述传输运作的种类、方向,USB设备地址和终端号的USB数据包,这个数据包通常称为标志包(tokenpacket)。USB设备从解码后的数据包的适当位置取出属于自己的数据。数据传输方向不是从主机到设备就是从设备到主机。在传输开始时,由标志包来标志数据的传输方向,然后发送端开始发送包含信息的数据包或表明没有数据传送。接收端也要相应发送一个握手的数据包表明是否传送成功。发送端和接收端之间的USB数据传输,在主机和设备的端口之间,可视为一个通道。存在两种类型的通道:流和消息。流的数据不像消息的数据,它没有USB所定义的结构,而且通道与数据带宽、传送服务类型,端口特性(如方向和缓冲区大小)有关。多数通道在USB设备设置完成后即存在。USB中有一个特殊的通道——缺省控制通道,它属于消息通道,当设备一启动即存在,从而为设备的设置、查询状况和输入控制信息提供一个入口。事务预处理允许对一些数据流的通道进行控制,从而在硬件级上防止了对缓冲区的高估或低估,通过发送不确认握手信号从而阻塞了数据的传输速度。当不确认信号发过后,若总线有空闲,数据传输将再做一次。这种流控制机制允许灵活的任务安排,可使不同性质的流通道同时正常工作,这样多种流通常可在不同间隔进行工作,传送不同大小的数据包。中国普天信息技术研究院健壮性USB健壮性的特征在于:·使用差分的驱动接收和防护,以保证信号完整性;·在数据和控制信息上加了循环冗余码(CRC);·对装卸的检测和系统级资源的设置;·对丢失或损坏的数据包暂停传输、利用协议自我恢复;·对流数据进行控制,以保证同步信号和硬件缓冲管理的安全;·数据和控制通道的建立,使功能部件的相互不利的影响独立开,消除了负作用.1.错误检测USB传输介质产生的错误率是与自然界的异常现象的概率相吻合,是瞬时一现的,因此就要在每个数据包中加入检测位来发现这些瞬时的错误,并且提供了一系列硬件和软件设施来保证数据的正确性。协议中对每个包中的控制和数据位都提供了循环冗余码校验,若出现了循环冗余码的错误则被认为是该数据包已被损坏,循环冗余码可对一位或两位的错误进行100%的修复。2.错误处理协议在硬件或软件级上提供对错误的处理。硬件的错误处理包括汇报并重新进行上一次失败的传输、传输中若遇到错误,USB主机控制器将重新进行传输,最多可再进行三次。若错误依然存在,则对客户端软件报告错误,客户端软件可用一种特定的方法进行处理中国普天信息技术研究院系统配置USB设备可以随时的安装和折卸,因此,系统软件在物理的总线布局上必须支持这种动态变化.1.USB设备的安装所有的USB设备都是通过端口接在USB上,网络集线器知道这些指定的USB设备,集线器有一个状态指示器指明在其某个端口上,USB设备是否被安装或拆除了,主机将所有的集线器排成队列以取回其状态指示。在USB设备安装后,主机通过设备控制通道激活该端口并以预设的地址值给USB设备.主机对每个设备指定唯一的USB地址。并检测这种新装的USB设备是集线器还是功能部件。主机为USB设备建立了控制通道,使用指定的USB的地址和零号端口.如果安装的USB设备是集线器,并且USB设备连在其端口上,那上述过程对每个USB设备的安装都要做一遍.如果安装的设备是功能部件,那么主机中关于该设备的软件将因设备的连接而被引发.中国普天信息技术研究院设备的拆卸当USB设备从集线器的端口拆除后,集线器关闭该端口,并且向主机报告该设备已不存在。USB的系统软件将准确进行处理,如果去除的USB设备上集线器,USB的系