有了新的便携联网选件与高速传输选件,越来越多的嵌入式设备设计师正在采用USB作为外设接口并用它传输数据。 要点 ·在数据传输速率高达480Mbps的情况下,USB 2.0可为嵌入式系统设计师提供全面的连接性。
·USB OTG附则降低了总线功耗,并使外围设备无需与台式PC相连即可进行数据交换。
·设备设计师可以将USB与现成的模块、IC、带有控制器的微处理器或IP组合在一起。
虽然USB技术在台式计算领域的地位已经稳如磬石,但由于其以主机为中心的拓扑结构、软件复杂性以及较高的功率要求,所以在嵌入式设备中的应用一直举步维艰。很多设计师宁愿沿用原来的串行或者分立I/O接口,而不愿触及复杂的USB。但是,业内的一些工作小组最近对USB规范进行了修改,允许使用替代的连接方法,对主机电源要求有所降低,并可选用480Mbps的数据传输速率。这些修改,再加上有数百种现成的廉价外围设备可供使用,使人们对在嵌入式设备中使用USB的兴趣与日俱增。
除了有很多现成的外围设备可供使用之外,USB还给嵌入式设备设计师带来额外若干好处。例如,在投入生产之前,USB设备都要经过测试和验证,以保证
接口特性符合有关规范,并且在所有制造商之间都是一致的。USB支持"即插即用"操作,主机软件将会自动检测已连接的外围设备,并且安装适当的驱动程序。为了节省系统电源,还可以远程对USB设备进行休眠和唤醒操作。同样地,为了节约小型系统的硬件空间,一个嵌入式连接器可以利用外部USB集线器与多达127个外围设备进行通信。因为现成的固件或芯片包含低级并行/串行转换、误差校验和数据流控制算法等功能,USB还可以简化嵌入式设计工作。
一个产业联盟在1996年制订了最初的USB规范,并定期对其进行修改,以便跟上当前的技术发展。你可在USB实施者论坛(USB Implementers Forum)网站
www.usb.org下载最新的长达650页的2.0版技术规范及其附则。顾名思义,USB是一种由一个主机通过类似于以太网的分层星形拓扑结构对所有事务处理进行控制的串行总线。USB数据可按三种速率传输,视主机和外围设备的处理能力而定。1.5Mbps的低数据速率对大多数价格敏感的用户输入设备(例如键盘和鼠标等)而言已绰绰有余;12Mbps的全数据速率可以满足大多数其它外设数据传输要求;而最近推出的480Mbps高数据速率则在某些宽带设备中与IEEE 1394a形成了直接的竞争。
USB开发人员试图通过规定每一个电缆末端的连接器来简化电缆连接的复杂性。这种做法消除了数据串扰问题,并且保证电缆只要连接上就是正确安装的。USB互连电缆包括4条屏蔽线,分别为电源线、地线和一对双绞差分数据信号线。电源信号的标称电压为5V,必须由主机或者插入集线器提供。USB数据收发器使用一种位填充的非归零反相(NRZI)编码发送数据。位填充技术就是在数据流中插入额外的零位,保证发送的信号流周期性地改变状态,以使接收器的时钟信号重新同步。
三种主机控制器 所幸的是,所有低级位处理、误差校验、数据成帧以及联络流程控制等,均由一个专用USB控制器来完成。事实上,共有三种主机控制器,每一种都有自己的规范和软件驱动程序。主机控制器与每个已连接的设备内的一个或多个端点进行通信。Intel公司制订了UHCI(通用主机控制器接口)规范,并将硬件和软件任务分割开来,以简化所需要的芯片。由Compaq公司(现已被惠普兼并)、微软公司和国家半导体公司领导的一个小组,采取了不同的方法,将更多的处理任务转移给符合OHCI(开放主机控制器接口)规范的硬件去处理。随着具有高速数据率的USB 2.0的推出,所有参与者都同意使用EHCI(增强型主机控制器接口)规范。
USB规范定义了符合主机控制器与所连外设之间数据传输特殊要求的若干个协议。控制传输是最基本的,你可以利用控制传输来建立并配置远端设备。每个设备必须有至少一个控制端点,主机利用控制传输来实现计数、命令和状态等操作。批量传输包括误差检测和重发功能,但它们以异步方式进行,而且不能保证传递时间。中断传输与批量传输相似,只是轮询间隔由远端设备确定。最后一种传输类型是同步传输,它以特定的速率进行数据传输而不进行误差校验,主要用于流式传输音频与视频数据。
由于认识到基于主机的拓扑结构对诸如手机、PDA、数码相机以及其他嵌入式设备等便携设备来说有种种局限性,USB规范制订小组在2001年下半年发布了OTG(On-The-Go)附则。OTG允许将某个外围设备临时用作主机,并与另一个外围设备进行数据交换。它消除了人们经常提及的USB需要一台台式机或者类似的设备作为主机的局限性。例如,一部符合OTG双重功能外围设备规范的数码相机可以充当一台主机将照片直接传送到打印机。而同