随着超过三十亿个具备USB接口的电子设备进入市场,USB不仅是消费性应用中成长最快的接口,在工业市场也取得了显著的成长。
然而对于嵌入式解决方案设计人员而言,USB易用、随插即用的功能性和可用性并非完全不需要付出代价,特别是如果他们正在为物联网设计功耗敏感、电池供电的连接设备产品时。对小型、便携式设备来说,增加USB作为通信接口至少要增加一倍的应用电流消耗,并且需要比原先预期更大的电池。
从传统的串行接口通信升级到广受欢迎的USB接口,通常会由于功耗预算的限制而变得难以实行。一般情况下,设计人员不得不在增加双倍电池容量和增加设备成本 (这使其不再那么具吸引力)、或舍弃急需的差异化功能之间做出选择。下面让我们来看看USB标准如何从为所有PC连接提供标准化的梦想,演变为甚至可使IoT小型电池供电设备与任何其他设备通信的最先进技术。
USB简史
如果你曾经研究过1990年代末期生产的桌上型计算机的背面,你或许一眼就能认出为连接不同硬件到计算机而出现的许多标准。这些连接标准包含5引脚的DIN、PS/2、串行端口、并行端口、也许也有一两个SCSI(“scuzzy”)通信端口,如果你是一个游戏玩家,你还会在音效卡上有一个游戏连接端口。
USB早期开发人员意识到了这种纷乱的连接状况,并在1995年开始创造一种机器对机器(M2M)的通用标准,以取代所有其他接口标准。在1990年代末期,当 USB第一次被采用时,它只是作为“另一种连接器”加入到PC。然而在2000年起USB开始迅速发展,并在经过一系列的更新后,它成为目前最被广泛采用 的M2M接口之一。只要看看你的笔记型计算机和手机就能明白USB标准的成功。你的智能手机可能只有一个连接接口:USB。如果你在2010年以后购买了 笔记型计算机,便会发现除了显示器和网络连接器之外,它可能只具有USB接口。此外,用于现今笔记本电脑和平板电脑的触控板、键盘和其他周边设备都透过 USB与主处理器通信。
USB标准的拓扑连接分为设备(device)和主机(host)。主机是发起通信并提供电源的机器;在桌面上,通常就是你的笔记本电脑或台式PC。设备是连接到主机的下游设备,简单的回应主机的任何请求;在桌面上,鼠标和键盘就是常见的USB设备。
关于USB连接器的独特之处是它也可以为连接的设备供电,因此不需要为你的鼠标或外接硬盘驱动器增加额外的电源。USB标准规定主机至少输出100mA的电 流给设备,并且如果设备支援的话,它有可能获得500mA电流。这些供电能力来自最初的USB标准,PC几乎总是作为主机,并且它们一直都是透过墙壁插座获得电源。这个USB标准需求限制了USB在低功耗应用上的发展,尽管对PC应用来说,主电源供应并不成问题。
但是当这种成熟的M2M接口要满足今日电池供电的IoT世界时,会发生什么?当主机也是一个便携式设备时,又有什么影响呢?
对于现今USB硬件的影响
在现今的便携式设备应用中,最常见的术语是“功率预算”。功率预算决定设备能够消耗多少能量,并且它是基于电池容量和所需要的电池使用寿命计算出的。例如, 在一个有250mA电池容量和需要支援两天(48小时)电池使用寿命的应用中,功率预算大约为5mA。这个功率预算必须分布在开发人员所希望设备做的每一 项功能上,包含从传感器撷取和处理到通信和驱动显示。
在过去的二、三十年间,微控制器(MCU)变得越来越小,并且电池容量也有所提升,因此我们看到便携式设备的爆发性成长,这些便携式设备包含从手持风速表和示波器以至于数位呼气酒测器和遥控器。然而随着拥有四核心GHz级处理器的智能手机的出现,现在可看到更多便携式设备以智能手机配件之形式出现,制造商不再担心处理能力或使用者接口方面的问题。这种市场趋势 正推动低价配件的快速成长,例如获得Kickstarter众筹支援、可用于智能手机的Vaavud风速表,以及可插进iPhone中的呼气酒测器,这两个应用都使用HiJack接口,这种特殊接口可以工作于低阶设备,但并不是最佳接口。
为了设计一个真正通用并好用的便携式设备,你应当选择最合适的M2M接口,例如USB。选择USB也能够使你的设计产品做到无主机限制(host- agnostic),这表示如果你想让产品既能支援Mac、Windows手机又能支援Android平板,这都将不再是问题。然而当你想透过USB连接 这些小配件到电池供电的日常用品时,你在原本USB标准中从不关心的“功耗”突然成为了选择USB解决方案的优先考虑问题。你不想仅仅为了与周边设备通信而浪费平板计算机或笔记型计算机的宝贵电池寿命,并且你也不想设计出一个会快速耗尽智能手机电池电量的配件应用产品。
通过正确选择具备USB功能的硬件,将能够开发出耗电极少的设备,同时通用M2M接口也得以消除几乎所有的外部元件。
用于电池供电领域中的USB技术
为了解USB技术如何改善功耗又保持易用和随插即用的功能性,我们首先需要快速浏览一下USB的通信过程。一般情况下,仅有主机能够发起传输。即使没有通信,主机也要每毫秒发送连线(keep-alive)信息给设备。如果设备有可用数据,它会回应。在这种工作模式下,设备可获得高达100mA的能量,并且主机预期设备能够立即回应任何请求。当主机停止发送这些连线信息达到3ms时,设备应进入暂停状态并且立即消减它的电流消耗到3mA以下。
在暂停状态下,大部分设备能被关闭,通常我们能够关闭最耗能的PHY。即使现今的MCU能够轻松实现3mA的暂停电流,我们也没有理由保持在那么高的状态。具备良好能源模式的MCU应能在这种模式下实现小于3μA的电流消耗,包含PHY的电流消耗。
然而在工作模式中,当检测一个正常键盘设备的USB通信时,主动模式不是十分有效的;大多数时候,设备仅仅等待主机发送数据。然而当主机请求设备回应时,回应必须及时;这是为什么大多数实作上会保持USB周边设备一直运行在48MHz以允许足够的回应时间。在这个特别的实例中,97%的时间是空闲的,即使我们进行了列举(enumerated)和启动。
为电池供电应用而最佳化的USB应用需要把这些功耗管理因素考虑在内,并且十分确定何时需要时脉、需要多长时间、哪些其他USB元件能够关闭。Silicon Labs目前拥有两项正在申请中的专利技术,并已获得制造商和客户反馈,使得USB接口在现今电池供电IoT设备中具真正用武之地。即使在工作模式,高能效的通信也能够透过使用无晶振(Crystal-less)USB振荡器和关闭封包通信之间的耗电USB连接元件而实现,如图1所示。这种创新的方法大幅降低了系统级功耗,并且建立出真正通用的、可提供优异能效的M2M接口。
图1:具备低能耗模式(LEM,low-energy mode)键盘传输总线的有效信号表明了何时关闭耗电的USB接口元件。
理所当然,对开发人员和终端使用者来说,低能耗USB应实现于无形之中。透过低能耗模式(LEM),降低能耗是十分明显的,如图2所示。当这种技术与其他空间和成本节省特性(例如无晶振USB应用和时脉恢复)相互结合时,开发人员能够实现真正的超低能耗通用M2M接口,并且不需要额外元件。
图2:一个典型的USB收发器在空闲时处于“接收”模式,浪费3-5mA。透过LEM技术,收发器能够保持在类似暂停的低电流模式。
结论
USB接口已经从一个减少传统桌上型PC杂乱线缆连接的简单需求,发展成为消费性电子设备接口的标准。具备USB功能的便携式设备日益普及,促使整合的USB周边设备提供新的设计要求。
新的智能USB硬件使得成本和功耗得以减少,并延长了电池使用寿命。当与无晶振USB技术相结合时,广泛使用的USB标准将使得所有可连接设备变得更加智能、可连接的、节能。