我们知道,USB全速外设(FS)和低速外设(LS)是通过在D+或D-数据线上上拉1.5K的电阻予以区别,D+上拉为全速外设,D-上拉为低速外设。高速外设的识别则比较复杂,需要通过主机与高速外设握手才能识别。本篇对高速USB握手进行图解说明。
数据采集设备:HD-USB480-II协议分析仪
相关知识
1、 高速外设最初以全速外设的形式出现,即:高速外设在插入USB HUB/HOST时D+数据线上拉1.5K的电阻;
2、 高速握手成功之后,外设与主机进入高速模式。如果握手不成功,则返回全速模式;
3、 在高速握手过程中,USB HUB/HOST要判定与其相连的外设是否支持高速模式,外设也要判定USB HUB/HOST是否支持高速模式。
下图是通过“HD-USB480-II型USB2.0协议分析仪”采集的某品牌U盘的高速握手过程。
1、【Index13】:USB HUB/HOST检测到插入的外设为全速外设,即:D+数据线被上拉;
2、【Index14】:USB HUB/HOST检测到插入的外设为全速外设后,复位总线。即:向总线发送SE0。此SE0的持续时间不得小于2.5微秒。本例的SE0持续时间为3.63微秒;
3、【Index15】:高速外设检测到总线上SE0的持续时间不小于2.5微秒后,向总线发送Chirp K信号。此Chirp K信号的持续时间不小于1毫秒且不大于7毫秒。本例的Chirp K信号持续时间为2毫秒;
4、【Index16】:高速外设发送Chirp K信号结束后,总线回复到SE0状态。如果USB HUB/HOST支持高速模式,则必须在Chirp K信号结束后100微秒内做出响应。本例中USB HUB/HOST在Chirp K信号结束后58.23微秒时做出了响应;
5、【Index17-22】:HUB/HOST在Chirp K信号结束后100微秒内做出了响应,向总线发送连续的Chirp K/J对,每个Chirp K信号或Chirp J信号的宽度不小于40微秒且不大于60微秒(本例为50-60微秒之间),每2个相邻的Chirp K和Chirp J信号之间的间隔不应大于2.5微秒。
6、【Index23-25】:高速外设在检测到连续的最少3对Chirp K/J对后,在500微秒内必须断开D+上的上拉电阻,并连接D+和D-上对地的高速端接电阻,完成高速握手,进入高速传输模式。
以上即为高速USB握手的全过程,通过USB协议分析仪对数据进行采集,可以清楚分析高速握手的每个步骤。
用户1378806 2010-8-27 17:43