您好,欢迎访问三七文档
USB基础知识吉林大学通信工程学院王世刚随着计算机微处理器芯片性能的飞速发展,计算机逐渐在各种领域承担起各种各样的复杂任务,伴随着这种广泛应用,随之而来的问题就是计算机本身软硬件资源的严重不足。软件方面包括操作系统对中断以及,I/O口的分配,硬件方面则是用户必须面对如何使用有限的主板插槽来合理地接口必要的适配器,而且最大的不便就是在每一次插入或拔除板卡时,都不得不重复执行关闭机器、插入板卡、启动机器、安装驱动、进行调试等一系列繁杂的步骤。有没有一种简单易行的接口既能够最大限度地节省计算机的软硬件资源,又能方便使用呢?答案是肯定的,就是USB接口。USB快速的发展过程1.萌芽Philips与数字设备公司(DigitalEquipmentCorporation)借鉴IICsynchronicsbus的优点,联合制定出了Access.bus规范。思路是让计算机的低速外围设备,如键盘、鼠标等,以简单的线缆插入式的连接方法来进行低速(10Obit/S)的工作。它将各种设备进行分类,如键盘、指示设备、文字设备、显示设备等。Access.busUSB的基础,与主机的连接只4条线:电源线地线一条数据线(DataWire)一条脉冲线(ClockWire)同时,它使用了开放收集器(Open-cellector)驱动,这就形成了USB的发展雏形。2.成长1996年1月,在Compaq、Intel、Microsoft、NEC等4家公司的联合努力下,USB1.0的白皮书问世了,这是USB发展史上具有里程碑意义的一页。经过近两年的完善与修改工作,一个完整的、可行的USB1.1规范于1998年9月完成。至此,许多开发商己经可以依据USB1.1规范内容来进行相关产品的开发了令人欣喜的是,这4家公司同意任何人都可免费使用USB1.1的白皮书版本。这与其他组织开发的标准相比无疑是一个明智的创举,也正是基于此,使得USB产品的开发在短暂的时间内获得了迅猛的发展。USB规范的发展历程如表1·13.对抗性的竞争促进了其发展没有竞争就没有发展,USB在诞生之初,便面对着许多已趋成熟的计算机接口的挑战,这就要求它必须具有明显的优势,并不断完善,才可能被用户所接受。USB及其他常用接口IEEE-1394接口与USB一样,其设计的最初目的便是方便微机用户简捷地连接外围设备到主机上,因此,在目前很多微型计算机上也携带有IEEE-1394接口。正是由于1394在速度上的优势,才使得制定USB标准的7家公司(Compaq、Intel、Microsoft、NEC、Hewlett-Packard、Lucent、Philips)又转入高速USB版本的开发,以对抗1394接口。在USB2.0推出之时,IEEE-1394也推出了相应的IEEE-1394.b标准,将速率提高到了3.2Gbit/s。在这样的竞争下,USB接口仍然需要向前不断发展。许多新生事物在其产生之初都有不尽完善之处,USB也一样,所以,USB2.0仍然在不断推出其修订手册最新的补丁发布于2002年4月USB的优势真正的即插即用1.自动地检测与设置然而现在有了USB接口,只需要将配有USB接口的外设插入相应的计算机机箱上的接口,剩下的事情便完全由其和主机完成。Windows98及其以上版本中才会支持USB接口。Windows2000中加入了对USB接口的支持,最新的WindowsXP是基于Windows2000的,所以也支持USB。2.通用的接口USB在诞生之初,便以尽可能方便用户使用为目的。因此,其接口的通用性必然是其特点之一。由于越来越多的用户对USB的认可,使得许多计算机设备制造商都在其产品中加入了对USB接口的支持。因此,在市场上可以方便地得到有USB接口的键盘、鼠标、光驱、硬盘、摄像头等一系列的外围设备。3.系统资源的节省由于不同的外设可以使用同一个USB接口,因此,操作系统不需为每种设备都配置不同的中断和I/0口,从而最大限度地节省了计算机系统资源。4.简易的电缆基于Access-bus的构想,USB同样只使用4根线缆便完成了其繁重的数据传输。它们分别是电源线(+5V)、地线、两条差分的数据线(D+、D-),这就使得我们所接触的USB接头相当小巧单独的一条USB线可支持的传输距离,利用集线器,可达30m。5.不需要单独电源由于USB接口中携带了电源线和地线,因此,它可直接从主机的接口或集线器上得到电源的供给。在中等电源供应的条件下,它完全可以满足设备的需求。速度的提升传输速率在对USB1.1版本的长期实践与改进基础上推出了USB2.0,它在数据传输速率上有了一个飞跃,已经达到了480Mbit/s的理论速率。在USB体系中,总共有3种数据传输速率:低速(Low-Speed):1.5Mbit/s全速(FullSpeed):12Mbit/s高速(HighSpeed):480Mbit/s和许多接口一样,USB接口是向下兼容的,也就是说,最新的高速版本与USB1.1接口在机械电气等方面是兼容的。其他方面1.价格的优势与其他接口相比USB的接口在线缆和机械方面实现起来简单易行,这就使其在价格上具有较大的优势。2.性能的稳定为了使USB接口在工作时具有最大可能的稳定性,USB协议从多方面考虑了保障措施。接口的初始化,在第一次将USB设备连入主机时,协议规定了要经过设备与主机的两次初始化链接,才能完成接口的接入过程。当然,这两次的链接是用户感觉不到的。与主机进行通信的保障,这种保障来自于以下两个方面:(1)数据传输协议的保证在数据传输过程中,要使用严格的错误检测机制,一旦发现错误,要能够做到通知发送者,并进行重传。(2)硬件设计的保证在USB的发送器、接收器、线缆等硬件规范中,都有关于检测错误及减少干扰的规定。3.其他在电源的管理、电气的连接等各个方面,USB接口都具有相应的功能以保证其工作的可靠与稳定重要的概念智能化的接口USB设备按严格意义上来分,将其划分为两大部分,即接口部分和设备部分。接口部分设备与主机连接通信的指挥中心,它负责整个主机与设备的信息流的交换,而且与其他计算机板卡最大的不同是USB接口部分本身必须具有“智能”指挥中心-CPU。这是因为普通的板卡都是直接与主机板相连的,因此,普通板卡的数据线、地址线及电源线等都是由主机板控制的,并无条件地接受主机的指令。USB设备则有所不同,它与主机的通信便是两条差分的数据线,所有的地址、数据、控制信号全部都是以差分信号的方式进行双向传输的。必须在USB设备接口中加入智能控制中心,也就是CPU芯片,才能完成信息的分类与解释。经过分类、解释的信号才能真正地成为USB设备(例如硬盘、鼠标等)所能接受的信息。设备部分真正意义的特定功能的外设,如硬盘、鼠标、光驱等外设“主机HOST”的概念USB设备与主机的关系是否等同于两台微机间的通信呢?事实上这两者并不能做完全的类比。在处理主机与设备间的通信时,所有的请求、数据与控制信号只能被主机响应后才能实现其功能。例如:在数据传输类型之一的中断传输中,接口控制器可以向主机提供中断传输数据请求,只有在主机轮到该设备所在的端口时,该请求才能被响应。USB设备与主机的结构1.主机的职能主机在与外设进行通信时,始终占据着主动的地位,因此,对USB接口来说,主机最主要的功能便是对数据总线的管理。检测设备:对于USB接口设备来说,主机在带电的前提下,能够对该种设备的连入与拔除做出自动的检测。主机检测设备的过程称为识别。在识别过程中,主机会从设备中读取一系列必须的信息,并为设备分配所需的资源,例如:地址、中断等。管理数据流:连入主机的设备绝不可能只有一个,主机在与每一设备建立了正确的连接之后,便需要协调其与每一设备间的通信。在众多设备同时请求数据传送时,主机将数据通道按时间分割为帧或微帧,然后按帧或微帧分配给每个设备。有特定带宽要求的设备,在识别过程中便会提出申请。主机将根据具体情况,或是不允许通信,或是将申请的带宽分配给该设备。有些设备还可以降低要求,仅申请带宽的一部分来适应传输。错误检查:数据传送过程中,错误检测是必须的。不同的设备协议有着不同的校验方法。–主机向设备传送的数据中加入错误检测位,设备会在收到数据后按照一定的规则进行检测。如果有错误,则返回否认信息,主机收到该信息后,便知道需要重新发送数据。–设备在向主机发送数据时,也要在其中加入相应的检测位,主机在接收数据的同时进行校验。提供电源:对USB设备来说,主机还需给USB设备的电源线提供+5V电压及连接地线。–协议规定的最大电流为500mA,而在某些情况中一些由电池供电的微机端口和集线器只能支持低功耗的设备,其电流也被限定在了1000mA以内。因此,有的设备需要自己提供电源,只是在初始通信时使用主机电源。2.USB设备的职能如果说主机是微机与设备通信的控制中心,那么,USB设备的控制器则可以作为信息的中继站。–它接收从主机来的信息,处理外设的响应,并使两者能够协调工作。因此,USB设备控制器要既能处理设备与主机的通信,又能够独立地完成相应的任务。(1)检测直接到芯片的通信在总线中流动的数据信息总是携带着相应的目的地址,每一个外设都能收到该信息,设备在侦听到地址信息后,便要与自己相应的地址作比较,如一致则接受并执行相应的动作,如不同则丢弃–在所有的控制器芯片中,这一系列动作都是自动完成的,且响应信息也是自动发出的。(2)与主机交换数据在与主机进行了正确的连接后,设备与主机的数据交换便是主要任务。–设备可以向主机提出数据请求,同样,主机也可以向设备发送数据通信请求,这一请求可以是定时的(例如,特定程序中的定时数据传送),也可以是不定时的,而请求的类型由设备的驱动程序和应用程序共同决定。对于主机的请求设备4种方式进行响应设备4种方式进行响应ACK:响应正常。NAK:设备忙,请稍后再发。STALL:非法请求、请求失败、终端失败。不响应:表示数据出现错误。(3)USB中标准请求的响应在主机对设备进行识别的过程中,会要求设备给予相应的响应。在USB中规定的标准请求有11种,这11种请求是对设备能力各状态的查询及相应的配置请求设备只需将所响应的信息置于相应的缓冲区中即可。(4)错误检测检测的思路和方法与主机对数据错误的检测类似。(5)管理电源在整个工作过程中,控制器在不断监视着USB总线的工作状态,如果在一定的时间间隔内没有总线的活动时,设备便会首先进入低功耗状态。同时,保持对总线状态的监控,如总线恢复活动,则退出低功耗阶段。总线活动停止一定时间以上时,设备便进入挂起状态,并限制其从总线中获取电流。这样,USB设备的功耗将被降低到了最小的限度。USB的端口通常意义上的计算机端口被定义为用于连接其他电路的可寻址的地址,计算机对端口的访问与对内存的访问采用的是不同的指令。普通的端口之间其地址是相互独立的,连接到该端口上的设备单独地享用自己的数据通道,设备数据的发送与接受在设备间是独立的。在PC机上,也许有几个USB接口,但是它们并不像通常所看到的那样彼此独立,而是汇总到一个叫作根集线器(RootHub)的地方,并由一个主机控制器所控制并共享一个数据通道。通常把每个USB接口称为一个端口。也许在每一端口上我们都接入了USB设备,但在实际工作中,在某一时刻,只有一个设备与主机进行通信。每个设备只能等候主机轮到与自己通信时才能占用数据通道。连接到主机上的设备越多,那么,每个设备的可用通信时间也就越少。计算机系统中,这样共享数据通道的接口还有Firewire,和SCSI。“Function”的意义在USB中将为主机提供单个功能的设备定义为一个Function,意思是此设备为主机提供了某些附加的功能,大多数的设备具有单一功能,例如硬盘、鼠标等。然而也有的设备集成了几种功能,例如常见的带轨迹球的键盘。Hub的意义在USB中Hub被定义为:包含有一个或多个
本文标题:USB基础知识
链接地址:https://www.777doc.com/doc-2853651 .html