×
嵌入式开发 > 详情

USB的总线结构

发布时间:2020-07-06 发布时间:
|
USB总线结构是采用阶梯式星形(tiered star)的拓扑(topology)结构,如图1和图2所示。每一个星形的中心是集线器,而每一个设备可以通过集线器上的接口来加以连接。从图中可以看到USB的设各包含了两种类型:USB集线器与USB设各。位于最顶端的就是Host(主机端)。从Host的联机往下连接至Hub(集线器),再由集线器按阶梯式以一层或一阶的方式往下扩展出去,连接在下一层的设各或另一个集线器上。事实上,集线器也可视为一种设各。而其中最大层数为6层(包括计算机内部的根集线器)。每一个星形的外接点的数目可加以变化,一般集线器具有2、4或7个接口。

图1 USB总线的阶梯式星形结构

图2 USB总线的拓扑结构

在此的主机端通常是指PC主机。当然,主机端因具有根集线器,因此也含有集线器的功能。而集线器是在USB规范中特别定义出来的外围设备,除了扩增系统的连接点外,还负责中继(repeat)上端/下端的信号以及控制各个下端端口的电源管理。至于另一个设备,即是用户常见的外围设各。但在USB规范书中,称这种设各为“功能”(functiONs),意味着此系统提供了某些“能力”,例如具有键盘或鼠标等功能。当然不同的外围设各可以具有不同的功能。但基于使用上的习惯,用户在本书中都以设各称之。通过这种阶梯式星形的连接方式,最多可同时连接到127个设备。

此外,当USB 2.0与1.1的设各与集线器在一起使用时,如何才能呈现出最佳的USB 2.0高速带宽的特性?如图3所示,当USB 2.0与1.1规范的设各混合使用时,整个总线上交杂着高速/全速的设各与集线器。而如图4所示,惟有在USB 2.0集线器与USB 2.0设各的连接下,才具备高速总线带宽的特性。

图3 USB 1.1、USB 2.0设备与集线器-起工作的拓仆结构

图4 具备USB 2.0高速总线特性连接示意图

但用户可以试想一下,当PC主机开机前,已有一些外围设各连接上USB总线,那么PC是如何对所有连接至主机端的外围设各加以区分并寻址呢?

首先,PC一接上电源时,所有连接上USB的设各与集线器都会预设为地址0。此时,所有的下端端口的连接器都处于禁用且为失效的状态。然后,PC主机就会向整个USB总线查询。若发现第1个设各,比方说是鼠标,就将地址1分配给鼠标。然后再往下寻找第2个地址,且目前仍为0的设各或集线器。若发现是集线器,就将地址2分配给此集线器,并激活其所扩充的第1个下端端口的连接器。而后再沿此连接器一直往下寻找第3个地址,且仍为0的设各或集线器。这样重复地寻找与分配地址,直到所有的外围设各都赋予了新的地址,或已达到127个外围设各的极限为止。

这种过程类似于将各个设备分别加以列举的程序,称之为设各列举。当然,主机在配置新地址的同时,PC主机还要为每个新设各或集线器加载其所使用的驱动程序。

若在此时一个新的设各被接上,PC主机就会预设此设各为地址0,且PC就会确认并加载其相对应的驱动程序,并分配一个尚未使用到的新地址给它。而一旦某个设备突然被拔离后,PC可经过D+或D-差动信号线的电压变化来检测此设各被移除掉,然后就将其地址收回,并列人可使用的地址数值中。



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
MSP430单片机硬件知识-复位