1.高速差动1与差动0
当主机与设各传输高速的数据是位于高速差动1与差动0时,则存在这两种总线状态。这如同低速与全速的总线状态一样,高速差动1是当d+是逻辑高电位,以及d-是逻辑低电位。反之,高速差动0是当d+是逻辑低电位,以及d-是逻辑高电位。
2.高速数据j与k状态
高速数据j与k状态的定义,与全速的定义一样。
3.chirp j与chirp k状态
这两种状态是usb2.0规范中所新增加的。因此,chirp j与chirp k状态是仅存于在高速时,用来检测握手情况。chirp j与chirp k状态都被定义为dc差动电压。在chirp j中,d+是正电压的,相对的,在chirp j中,d-则是负电压的。
当高速设备第一次接上usb总线时,其必须以全速设各来加以激活或进行设备列举的工作。所以说,高速检测的握手信号将可使能高速设各去告诉2.0集线器,其需支持高速的协议。这样,即可在稍后进行高速的通信工作。
当2.0集线器被置于下端的总线部分,若发生重置状态时,就会产生chirp j与chirp k状态。当具有高速能力的设各检测到重置时,它即会送出1~7 ms的chirp k状态给集线器。紧接着,以高速方式与上端通信的2.0集线器也就做出反应,检测到chirp k状态。此时2.0集线器就会切换地送出chirp k与chirp j状态序列。一直到重置状态结束之前,这个序列会简短地持续着。在这个重置结束时,集线器就会将外
围接口置于高速使能的状态中。
但用户需注意的是,当设各检测到chirp k与chirp j状态序列时,就会脱离连接至d+的全速提升电阻,以使能其高速传输,以及进人高速预设的状态中。当然,对于1.x的集线器会忽略设备的chirp k状态(只对2.0集线器有效)。所以若高速设备送出chirp k状态给1.x集线器,当它没有看到任何的响应序列时,就知道了必须仍然维持全速的总线速度。
以下,将设备重置与chirp序列整合一起说明。当软件检测到全速设各被连接上去时,它即会通过重置接口(resetport)的命令来送出重置给集线器。这样,即会导致集线器去驱动单端0的状态达10 ms以上。如果街上一个高速兼容的外围设备时,chirp的序列就开始产生,如图1所示。
图1 用来监测与高速兼容设备的chirp序列信号
以下,将按照步骤依序地列出chirp序列所产生的方式:
(1)集线器针对chirp状态,在t0时驱动一个重置状态。
(2)高速设各检测到重置状态时,会发出chirp k信号。这个chirp k信号能够通过高速电流驱动器所产生的电流以送至d-引线的方式来加以实现。而这个chirp k信号必须被发出达1 ms以上,且在t0之后维持不超过7 ms的时间。
(3)当驱动全速的重置状态后,集线器的高速接收器将被激活,并且等待chirp k的检测。而这高速的集线器必须在chirp k发生后的2.5 μs后,检测到一个有效的chirp k。注意到,如果集线器没有检测到chirp k,它就必须实现全速的重置,并且停留在全速信号模式下。
(4)在从设备终止chirp k后的100 μs内,集线器会回传chirp k与chirp j交互切换的序列。这个序列具有下列的特性:
·在这个序列间隔中,没有任何的总线闲置状态是被允许的。
·必须在500 μs内终止,且不可慢于在重置状态结束之前的100 μs。
·每一个chirp k与j是大于40 μs与小于60 μs之间的间隔。
·在chirp序列结束后,重置状态会持续着。
(5)一旦重置时间结束后,集线器会通过其全速驱动器来连续地驱动单端0的状态。
(6)在设各检测到6个chirp(3组kj)后,它即需在500 μs内转换为高速的操作。这个转换需要以下的条件:
·将连接至d+的提升电阻器脱离。
·使能高速的终端器。
·进入高速的预设状态。
用户需注意到,高速设各必须在其自己的chirp结束后的1~2.5 ms之间,检测到有效的chirp序列。反之,如果没有检测到chirp序列,这个高速设各也就需持续地在全速下操作。
4.高速闲置状态
在高速闲置状态时,没有任何高速驱动器被激活,且低速与全速的驱动器确认单端0状态。此时,d+与d-信号是介于-10~+10 mv之间。
5.高速封包的起始
高速封包的起始(start-of-high-speed package,hssop)总线状态存在于总线要从高速闲置状态改变至高速的数据k或j状态时。顾名思义,每一个高速封包都以hssop来加以开始。