USB2.0 信號分析技巧
USB有熱插拔的特性,當USB裝置插入主機時(shí),主機會(huì )偵測到,并且軟件會(huì )對其作規劃,即插即用。USB的連接線(xiàn)供應裝置電源,可提供DC +5V的電壓,電流供應約100mA~500mA。USB的連接線(xiàn)共有四條,其中兩條是電源與地線(xiàn),另兩條是訊號線(xiàn),分別是D+與D-。一般情況兩條線(xiàn)的訊號是相反的,若其中一條的訊號為High,則另一條的訊號就為L(cháng)ow。如此的差動(dòng)訊號能提升訊號抗噪聲抗干擾的能力,USB就是利用D+ D-兩條訊號線(xiàn)的差動(dòng)訊號,來(lái)達成高速傳輸的目的。
本文引用地址:http://dyxdggzs.com/article/127891.htmUSB主機端在沒(méi)有裝置連接時(shí),D+ D-上會(huì )有一個(gè)1.5K奧姆的電阻接地,確保這兩條線(xiàn)是在接地狀態(tài)??芍С种?27個(gè)地址,也就是說(shuō),一個(gè)USB系統最多支持127個(gè)裝置,主機會(huì )周期性的探詢(xún)每個(gè)集線(xiàn)器以便得知裝置的連接狀態(tài)。以USB2.0而言,分為低速、全速及高速三個(gè)模式。低速傳輸率為 1.5Mb/s ,全速為 12Mb/s,高速為480Mb/s。高速模式時(shí),每個(gè)bit的寬度約2.08ns。
USB包簡(jiǎn)介
包是組成USB傳輸的最小單位。一個(gè)Transaction通常由三個(gè)包組成,但依傳輸型態(tài)而定,一個(gè)Transaction可能包含一個(gè)、兩個(gè)、三個(gè)包。
Token 包 :每個(gè)Transaction以Token 包做起始,Token 包定義裝置、Endpoint數量,傳輸的方向。其中SOF (Start Of Frame) Token包含目前的frame數,而且會(huì )廣播 (broadcast) 給所有的full-speed裝置知道。SOF也是唯一一個(gè)不指定目標的Token。Token Packet 長(cháng)度固定為4個(gè)Byte。
Data 包 :Data包包含處理此動(dòng)作的數據,一個(gè)Transaction中,Data包最大的資料量為1023個(gè)Bytes,高速模式時(shí)可達1024個(gè)Bytes以上,其中Data0及Data1是兩個(gè)基本的數據包,這些數據包都是接續在A(yíng)ddress之后,且Data0及Data1采取交互出現方式以達到同步與除錯的效果;另外在USB2.0當中更增加了Data2及MData數據包,用于執行高速的實(shí)時(shí)傳輸(Isochronous Transfers)。
Handshake包:除了實(shí)時(shí)型傳輸(Isochronous)之外,所有的傳輸都保證數據的傳遞正確。Handshake包響應資料是否正確的被收到。若執行處理動(dòng)作中發(fā)生錯誤,此處理動(dòng)作將重新執行。
包格式
包是執行所有處理動(dòng)作的機制。圖2是USB包的基本格式。包緊跟在同步序列(Synchronization sequence,SYNC) 之后,使USB裝置能跟包中的位速率同步。包的類(lèi)型由一個(gè)包 ID來(lái)定義。包ID之后是隨著(zhù)包Type而定義的信息,如Address或Data。最后,每個(gè)包以一個(gè)CRC (Cyclic Redundancy Check)做結尾。CRC是用來(lái)確認數據是否正確的傳輸。每個(gè)包始使用EOP (End Of Paekct) 狀態(tài)來(lái)做辨識。
同步序列
圖3是同步序列的波形。同步序列由八個(gè)bit組成,數值是二進(jìn)制的00000001,依照NRZI編碼原理,數據0代表訊號要轉換,所以前七個(gè)0之中的每個(gè)Bit都會(huì )在相對應的Bit時(shí)間中轉換,作用就好像提供了一組可用來(lái)同步的Clock。
模擬信號相關(guān)文章:什么是模擬信號
評論