- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
如何为具体应用选择USB总线
随着Windows引入GUI,开始需要一个备选的输入设备(HDI)。如今,鼠标变成必需的设备。这种新连接,以及对访问网络的需求,要求PC采用一个串口或COM口。那时,绝大多数PC采用P/S-2或专用接口用于键盘和鼠标。
不过,这些外设接口都有一些缺点。它们无法进行接口扩展,只能连接有限的外设;它们的性能有限;另外也缺乏一个标准的连接。每个外设提供商都必须决定采用什么样的接口,然后提供所需的驱动程序,这对用户来说也是颇为头痛的事情。
最终,每人都需要连接外设到PC,但过程是复杂的和令人糊涂的。绝大多数人不知道该用什么接口,也没有人知道某种接口的限制。最后,导致一批权威的业界领导一起来定义一个新的通用PC外设连接,来替代复杂的传统连接。
该规范定义了一个简单的四线接口,这是一个点对点,使用方便的以主机为目标架构的接口。可以利用一个集线器来实现总线扩展,并连接到其它的USB目标设备。另外,定义主机目标架构大大降低了成本,因为绝大部分的“大脑”控制功能包含在采用CPU控制的PC中。
USB的架构定义
USB是一个以主机为中心的总线,在这种总线中,由主机发起所有的数据转移,包括出站和入站。该规范定义了三种基本的设备类型:即主机控制器;集线器和功能模块(即外设或目标模块);以及一个复合设备(集线器加“集成”外设)。
内部的物理连接是一个层叠的星型拓扑结构,集线器位于每个星的中心(图1)。每个线段是一个位于主机和集线器或功能块之间的点对点连接,或者是从一个集线器连接到另一个集线器或功能块。由于时序的限制,所允许的最大层数为7层(包括根层)。在主机和任何设备之间,通信信道可以支持最多达5层的非根层集线器。一个复合设备占用两层。复合设备不能依附于第7层,在这一层只能使用功能块,其他将不能用。地址结构允许一个集线器连接的设备最多达127台。集线器和外设可以任意组合。一台复合或混合设备占用两台或更多的设备。
USB主机控制器
在任何的USB系统中都只有一台主机。这与网络架构的定义不同,USB规范只是想实现外设到PC的方便连接。主机的实现的方法可能是硬件,固件或软件的结合。典型的USB主机PC实现是内核逻辑芯片集的一部分。该主控制器设备利用PC CPU来实现其运算功能,利用系统存储器来存储数据和转移,而在总体实现中利用OS。所有的主机需要在系统中集成一个根集线器。
当今的OS已包括各种驱动设备。这就为外设制造商节约了驱动设备的研发成本,维护成本和运输成本。通常常用的驱动设备包括音频、HID、图像、存储、打印机和视频。许多制造商充分利用了这些驱动设备来实现它们的功能,但也会选用一个定制驱动设备或应用软件来扩展功能。
图1:层叠星形拓扑结构的内部物理连接。