新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 如何为具体应用选择USB总线

如何为具体应用选择USB总线

作者:时间:2012-07-10来源:网络收藏

为了理解为什么会成为如今的通用,让我们看一下早期的PC:它有一个DOS操作系统和一个键盘,但没有图形用户接口(GUI)。绝大多数的PC在机箱内没有硬盘驱动器,也没有外部存储。没有万维网,也无需外部网络连接。因此,除了通常用并口连接的打印机之外,需要的外设很少。

本文引用地址:http://www.eepw.com.cn/article/148795.htm

随着Windows引入GUI,开始需要一个备选的输入设备(HDI)。如今,鼠标变成必需的设备。这种新连接,以及对访问网络的需求,要求PC采用一个串口或COM口。那时,绝大多数PC采用P/S-2或专用接口用于键盘和鼠标。

不过,这些外设接口都有一些缺点。它们无法进行接口扩展,只能连接有限的外设;它们的性能有限;另外也缺乏一个标准的连接。每个外设提供商都必须决定采用什么样的接口,然后提供所需的驱动程序,这对用户来说也是颇为头痛的事情。

最终,每人都需要连接外设到PC,但过程是复杂的和令人糊涂的。绝大多数人不知道该用什么接口,也没有人知道某种接口的限制。最后,导致一批权威的业界领导一起来定义一个新的通用PC外设连接,来替代复杂的传统连接。

该规范定义了一个简单的四线接口,这是一个点对点,使用方便的以主机为目标架构的接口。可以利用一个集线器来实现扩展,并连接到其它的目标设备。另外,定义主机目标架构大大降低了成本,因为绝大部分的“大脑”控制功能包含在采用CPU控制的PC中。

的架构定义

USB是一个以主机为中心的,在这种总线中,由主机发起所有的数据转移,包括出站和入站。该规范定义了三种基本的设备类型:即主机控制器;集线器和功能模块(即外设或目标模块);以及一个复合设备(集线器加“集成”外设)。

内部的物理连接是一个层叠的星型拓扑结构,集线器位于每个星的中心(图1)。每个线段是一个位于主机和集线器或功能块之间的点对点连接,或者是从一个集线器连接到另一个集线器或功能块。由于时序的限制,所允许的最大层数为7层(包括根层)。在主机和任何设备之间,通信信道可以支持最多达5层的非根层集线器。一个复合设备占用两层。复合设备不能依附于第7层,在这一层只能使用功能块,其他将不能用。地址结构允许一个集线器连接的设备最多达127台。集线器和外设可以任意组合。一台复合或混合设备占用两台或更多的设备。

USB主机控制器

在任何的USB系统中都只有一台主机。这与网络架构的定义不同,USB规范只是想实现外设到PC的方便连接。主机的实现的方法可能是硬件,固件或软件的结合。典型的USB主机PC实现是内核逻辑芯片集的一部分。该主控制器设备利用PC CPU来实现其运算功能,利用系统存储器来存储数据和转移,而在总体实现中利用OS。所有的主机需要在系统中集成一个根集线器。

当今的OS已包括各种驱动设备。这就为外设制造商节约了驱动设备的研发成本,维护成本和运输成本。通常常用的驱动设备包括音频、HID、图像、存储、打印机和视频。许多制造商充分利用了这些驱动设备来实现它们的功能,但也会选用一个定制驱动设备或软件来扩展功能。

图1:层叠星形拓扑结构的内部物理连接。

USB集线器

可以将集线器视为一个分配器和转发器的结合。集线器提供USB设备和主机之间的电接口,并直接负责支持USB用户友好方面的许多属性。它提供比主机能够提供的更多的连接点,并将来自上游端口的业务流重播到下游的端口上。集线器检测下游端口的连接和断开,并上报主机。集线器必须能够支持下游端口所连接的USB外设的各种不同速率,并检测和恢复连接中的总线故障。此外,集线器还管理为下游端口提供的电源,并将与此相关的任何问题报告给主机。该规范定义了两种不同的用于集线器的电源类型,即总线和自供电。

总线供电方式从上游端口吸取功率。它只能从供电的上游端口吸取100mA的电流,而最终的配置后的电流可达到500mA。满配置功率在集线器、任一个不可拆卸的功能块或外部端口之间进行分配。它必须为每个下游端口提供100mA。这就限定了总线供电集线器上的下游端口的数量不超过4个。因为每个端口需要100mA,因此四个下游端口需要400mA。因为第五个下游端口也需要100mA,因而为集线器自身留下的电流为0mA。一个总线供电的集线器可以有4个外置下游端口,一个或多于一个的非外置下游端口——假定集线器和所有连接到非外置端口的所有功能块消耗的总电流少于100mA。

自供电的集线器从本地电源(即墙体电源)提取功率。一个自供电的集线器将从其上游端口吸取高达100mA的电流,在集线器的其余部分的电源关断时,允许接口为功能块供电。一个自供电的集线器需要为每个下游端口提供500mA。规范没有限制一个自供电的集线器所能连接的下游端口数量,但出于供电的考虑通常限制到7个或更少一点。一个7端口的集线器必须能够为功能块提供大于3.5A(500mA/每端口)的电流。

USB外设

今天的USB外设包括鼠标,存储器棒,外驱,便携式音频播放器和数码相机。根据规范,一个外设是一个能够执行某项特定功能的逻辑或物理实体。最低级别的外设指的是一个单独的硬件部件(即闪存)。而高级别的外设指的是一系列执行特定功能的硬件部件(即:键盘,生物指纹识别阅读器和显示设备)。

外设支持四种类型的数据发送。控制发送器为主机提供有关所连接的设备的类型和功能。其余的三个(中断,整块(bulk),或同步)也都包含控制发送,不过只是专用于数据发送控制。中断发送在外设需要主机对其进行周期性的轮询以检查是否有数据需要发送时使用。当数据的完整性的重要性高于数据的延迟时,整块发送在主机系统和外设(打印机,存储设备等)之间传递数据。这包括错误校验,以及发现错误后的重发。当数据流的实时性高于其精度(即网络摄影,讲话和麦克风)的情况下,同步发送实时转移数据。

规范中规定了两种供电类型:总线供电和自供电。基于总线供电又被分为低功率和高功率两种。这两种都从上游连接点获取电源。对于低功率,基于总线供电的设备恒定地吸纳100mA电流,而对于高功率设备,在配置之前可以吸纳100mA电流,而在工作期间可以吸纳最高达500mA的电流。对于自供电设备,当从上游连接点提取电流时,的限制与自供电的集线器一样。它们可以吸纳100mA的电流使USB接口能够工作,而其余的功能将会断电。所有其他的功率将由外部电源提供。此外,所有外设必须支持低功耗挂起状态,此时所吸纳的电流小于500uA,该功率足以使计算机能够唤醒挂起的设备。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭