USB集线器不仅可向下游的USB端口提供数据和电源,还允许主机通过软件对连接到下游端口的设备进行电源管理。USB 2.0集线器系统中的电源分配与管理堪称决定系统是否完全符合USB规范(2.0版)的主要因素。
电源分配
所有连接到USB端口的设备可配置成低功率或高功率,这取决于设备的电压和电流要求(如表1和表2所示)。
首先将所有USB设备枚举为低功率器件。主机在枚举完成后检查设备配置描述符的bMaxPower字段。如果bMaxPower表明该设备属于高功率,并且可提供相应电源,那么主机会允许将该设备转为高功率。
USB设备可被分为自供电和总线供电。图1给出了这两种集线器配置。
群组中包含的任何一个端口出现电源浪涌都会导致集线器关闭群组中所有端口的电源。这种方法中由于多个端口共用一个开关,因此成本比较低。但是,显而易见的缺点是组中一个端口出现浪涌就会使所有端口断电。图3给出了群组模式电源切换的实例。
挂起状态
所有USB设备都应支持挂起状态,从而最大限度地降低功耗。USB设备能够从任何其它USB状态转为挂起状态。若上游数据线路维持空闲状态超过3ms,设备就会进入挂起状态。在挂起状态下,USB集线器需要为D+或D-线路提供电流,从而让其下游设备保持正确状态。总线上的任何活动都会将设备从挂起状态唤醒。在挂起状态下,设备从上游端口最大消耗2.5mA电流。
尽管USB协议是以主机为中心的,但支持远程唤醒的设备也可通知主机让设备退出挂起状态,并恢复事务处理。本文介绍了USB 2.0集线器系统的配置和电源管理等选项,并可作为参考指南,用于设计完全满足USB规范(2.0版)的集线器系统。