e小白網址:www.e-xiaobai.com
【資料圖】
USB1.0和USB1.1只有低速模式(Low-Speed?Mode)和全速模式(Full-Speed?Mode),理論上最大傳輸速率分別為1.5Mbps和12Mbps。USB2.0引入了傳輸速度更快的高速模式(High-Speed?Mode),理論上最大傳輸速率為480Mbps。
1.術語
在USB?2.0協議中經常會看到以下術語:Chirp?K、KJ序列、SE0。這里的狀態是根據低速、全速/高速下設備D+和D-上不同的電平信號來決定的,如下圖所示。
2.低速和全速設備的識別
主機的D+和D-都接有15K下拉電阻。全速USB設備的數據線D+接有1.5K的上拉電阻,一旦接入主機,主機的D+被拉高;低速USB設備的數據線D-接有1.5K的上拉電阻,一旦接入主機,主機的D-會被拉高,如下圖所示。因此,主機就可以根據檢測到自己的D+為高還是D-為高,從而判斷接入的設備是一個全速還是低速設備。
由于全速和高速設備,都是D+接上拉電阻,因此無法通過D+被拉高來區分全速或高速設備。
3.全速和高速設備的識別
主機檢測到全速設備連接上之后,對設備進行復位,設備收到復位信號,如果設備是高速設備,則會主動發起高速模式的握手協議進行速度識別。接下來,就取決于主機端了,如果主機支持高速模式傳輸,則主機會與該高速設備交互完成高速模式握手協議,之后,兩者都工作在高速模式下;如果主機不支持高速模式傳輸那么握手協議就會失敗,設備端也不會切換到高速模式,之后兩者都工作在全速模式下。
如果是一個全速設備接到高速主機,設備端沒法發起高速握手協議,所以,最終設備和主機都會工作在全速模式下。
4.實測波形分析
插入設備后,首先D+被拉高,主機識別設備為非低速設備,如下圖所示:
然后主機對設備復位,設備檢測到SE0,準備發起高速握手協議,如下圖所示。
設備檢測到SE0后,通過內部的電流源向D-線持續灌大小為17.78mA電流。主機端D+和D-掛載45Ω的等效終端電阻,產生約800mV的電壓(45Ω*17.78mA),這就是Chirp?K信號。Chirp?K信號的持續時間至少是1ms,如下圖所示。
設備發送Chirp K信號結束后,總線恢復到SE0狀態,如下圖所示。至此,主機識別設備為高速設備。
主機發送3對KJ序列,告訴設備,主機支持高速傳輸,如下圖所示。
當得知主機也支持高速傳輸后,主機和設備兩端的D-和D+都會掛載45Ω的等效終端電阻,并會斷開D+上的1.5K上拉電阻。這兩個45Ω電阻并聯之后約為22.5Ω,因而可以在D+或者D-數據線上形成約為400mV(22.5Ω*17.78mA)的KJ序列,如下圖所示。
最近更新