資源描述:
《【8A文】USB2.0協(xié)議知識(shí)詳解.ppt》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。
1、USB2.0協(xié)議詳解1序USB發(fā)展歷史傳統(tǒng)的串口、并口通訊方式逐漸不能滿足現(xiàn)有系統(tǒng)或者設(shè)備的數(shù)據(jù)傳輸速率需求。以Intel為首的七家公司于1994年推出了USB(UniversalSerialBus,通用串行總線協(xié)議)概念,并在隨后的幾年內(nèi)不斷的對(duì)USB協(xié)議進(jìn)行改進(jìn),成功推行USB1.1;2004年底,正式推出了USB2.0協(xié)議。接口與USB1.1兼容;2007秋季,正式推出了USB3.0協(xié)議。2序USB1.1與USB2.0之間的差別3USB2.0協(xié)議USB體系簡(jiǎn)介USB數(shù)據(jù)流模型USB物理規(guī)范USB電氣規(guī)范USB協(xié)議層規(guī)
2、范USB設(shè)備架構(gòu);USB主機(jī):硬件和軟件USBHUB規(guī)范4USB體系簡(jiǎn)介USB是一種支持熱插拔的高速串行傳輸總線,使用差分信號(hào)來傳輸數(shù)據(jù),最高速度可達(dá)480Mb/S。USB支持“總線供電”和“自供電”兩種供電模式。在總線供電模式下,USB2.0設(shè)備最多可以獲得500mA的電流;USB2.0被設(shè)計(jì)成為向下兼容的模式,當(dāng)有全速(USB1.1)或者低速(USB1.0)設(shè)備連接到高速(USB2.0)主機(jī)時(shí),主機(jī)可以通過分離傳輸來支持它們。一條USB總線上,可達(dá)到的最高傳輸速度等級(jí)由該總線上最慢的“設(shè)備”決定,該設(shè)備包括主機(jī)、HUB
3、以及USB功能設(shè)備。5USB體系簡(jiǎn)介USB體系包括“主機(jī)”、“設(shè)備”以及“物理連接”三個(gè)部分。主機(jī)是一個(gè)提供USB接口及接口管理能力的硬件、軟件及固件的復(fù)合體,可以是PC,也可以是OTG設(shè)備。一個(gè)USB系統(tǒng)中僅有一個(gè)USB主機(jī);設(shè)備包括USB功能設(shè)備和USBHUB,最多支持127個(gè)設(shè)備;物理連接即指的是USB的傳輸線。在USB2.0系統(tǒng)中,要求使用屏蔽的雙絞線。USB體系采用分層的星型拓?fù)鋪磉B接所有USB設(shè)備6USB體系簡(jiǎn)介以HOST-ROOTHUB為起點(diǎn),最多支持7層(Tier),也就是說任何一個(gè)USB系統(tǒng)中最多可以允許
4、5個(gè)USBHUB級(jí)聯(lián)。一個(gè)復(fù)合設(shè)備(CompoundDevice)將同時(shí)占據(jù)兩層或更多的層。ROOTHUB是一個(gè)特殊的USBHUB,它集成在主機(jī)控制器里,不占用地址?!皬?fù)合設(shè)備(CompoundDevice)”可以占用多個(gè)地址。所謂復(fù)合設(shè)備其實(shí)就是把多個(gè)功能設(shè)備通過內(nèi)置的USBHUB組合而成的設(shè)備,比如帶錄音話筒的USB攝像頭等。一個(gè)USBHOST最多可以同時(shí)支持128個(gè)地址,地址0作為默認(rèn)地址,只在設(shè)備枚舉期間臨時(shí)使用,而不能被分配給任何一個(gè)設(shè)備,因此一個(gè)USBHOST最多可以同時(shí)支持127個(gè)地址,如果一個(gè)設(shè)備只占用一個(gè)
5、地址,那么可最多支持127個(gè)USB設(shè)備(含USBHUB)。7USB體系簡(jiǎn)介8USB體系簡(jiǎn)介USB采用輪詢的廣播機(jī)制傳輸數(shù)據(jù)所有的傳輸都由主機(jī)發(fā)起,任何時(shí)刻整個(gè)USB體系內(nèi)僅允許一個(gè)數(shù)據(jù)包的傳輸,即不同物理傳輸線上看到的數(shù)據(jù)包都是同一被廣播的數(shù)據(jù)包;USB采用“令牌包”-“數(shù)據(jù)包”-“握手包”的傳輸機(jī)制在令牌包中指定數(shù)據(jù)包去向或者來源的設(shè)備地址和端點(diǎn)(Endpoint),從而保證了只有一個(gè)設(shè)備對(duì)被廣播的數(shù)據(jù)包/令牌包作出響應(yīng)。握手包表示了傳輸?shù)某晒εc否。數(shù)據(jù)包:USB總線上數(shù)據(jù)傳輸?shù)淖钚挝唬⊿YNC、數(shù)據(jù)及EOP三個(gè)部
6、分。其中數(shù)據(jù)的格式針對(duì)不同的包有不同的格式。但都以8位的PID開始。PID指定了數(shù)據(jù)包的類型(共16種)。令牌包即指PID為IN/OUT/SETUP的包。端點(diǎn)(Endpoint):是USB設(shè)備中的可以進(jìn)行數(shù)據(jù)收發(fā)的最小單元,支持單向或者雙向的數(shù)據(jù)傳輸。設(shè)備支持端點(diǎn)的數(shù)量是有限制的,除默認(rèn)端點(diǎn)外低速設(shè)備最多支持2組端點(diǎn)(2個(gè)輸入,2個(gè)輸出),高速和全速設(shè)備最多支持15組端點(diǎn)。910包包的基本格式包結(jié)尾字段(EOP)CRC字段數(shù)據(jù)字段PID字段同步字段(SYNC)USB體系簡(jiǎn)介11令牌(token)包CRC5ENDPADDRP
7、IDSYNC5位4位7位8位8位PIDUSB體系簡(jiǎn)介12數(shù)據(jù)包CRC16DATAPIDSYNC16位0~1023字節(jié)8位8位/32位PIDSYNC8位8位/32位SYNC:Low/Fullspeed為8位;Hi-speed為32位;PID握手包PIDUSB體系簡(jiǎn)介USB體系簡(jiǎn)介管道(Pipe)管道是主機(jī)和設(shè)備端點(diǎn)之間數(shù)據(jù)傳輸?shù)哪P停灿袃煞N類型的管道;無格式的流管道(StreamPipe)有格式的信息管道MessagePipe)。任何USB設(shè)備一旦上電就存在一個(gè)信息管道,即默認(rèn)的控制管道,USB主機(jī)通過該管道來獲取設(shè)備的描
8、述、配置、狀態(tài),并對(duì)設(shè)備進(jìn)行配置。USB設(shè)備連接到HOST時(shí),HOST必須通過默認(rèn)的控制管道對(duì)其進(jìn)行枚舉,完成獲得其設(shè)備描述、進(jìn)行地址分配、獲得其配置描述、進(jìn)行配置等操作方可正常使用。USB設(shè)備的即插即用特性即依賴于此。13USB體系簡(jiǎn)介USB體系四種傳輸類型的控制傳輸:主要用于在設(shè)備連接時(shí)對(duì)設(shè)備進(jìn)行枚