USB的傳輸類型簡(jiǎn)介
表 USB規(guī)范中各種傳輸類型的特性與使用方式 基本上針對(duì)不同設(shè)各的應(yīng)用特性,應(yīng)個(gè)別地執(zhí)行中斷傳輸、批量傳輸或等時(shí)傳輸。并不是都一定要支持這些傳輸類型,只不過在這之前都須預(yù)先執(zhí)行控制傳輸,并執(zhí)行下一章所要介紹的設(shè)各列舉,以了解這個(gè)設(shè)各的特性并設(shè)置地址。換而言之,也即是每一個(gè)設(shè)各都須支持控制傳輸。而在USB 1.x規(guī)范時(shí),若PC主機(jī)同時(shí)連接了多種不同特性的設(shè)備時(shí),這4種傳輸類型就同時(shí)分布于1 ms的幀內(nèi)。至于各種傳輸類型是如何分配這1 ms的帶寬呢?如圖1所示,為在1.x規(guī)范時(shí),各種傳輸或設(shè)備在總線上分享帶寬的情形。
圖1 各種傳輸類型或設(shè)備共享寬帶的示意圖
根據(jù)第1章所描述的主機(jī)控制器的類型(通用式主機(jī)控器UI-IC與開放式主機(jī)控制器OHC),各種傳輸所放置的順序與帶寬是略有不同的。以下針對(duì)這兩種主機(jī)控器來分別介紹。
1.通用式主機(jī)控制器UIIC
如圖2(a)所示,周期性的傳輸(如中斷傳輸與等時(shí)傳輸)放置于最前端,后面再緊接著控制傳輸與批量傳輸。要特別注意的是,控制傳輸至少要分配10%的總線帶寬,因此周期性的傳輸最多能使用90%的總線帶寬。所以中斷傳輸與等時(shí)傳輸是以予先聲明好的帶寬執(zhí)行于端點(diǎn)描述符中來加以設(shè)置。而批量傳輸才根據(jù)整個(gè)總線剩下自帶寬,隨時(shí)動(dòng)態(tài)地調(diào)整傳輸速率。因此,不具同步與實(shí)時(shí)性。 圖2 兩種主機(jī)控制器的傳輸排序的差異圖
2.開放式主機(jī)控制器0HC
如圖2(b)所示,最前面放置的是非周期性傳輸,緊接著中間放人周期性傳輸,至最后才又執(zhí)行非周期性傳輸。而如同通用式主機(jī)控制器,10%的總線帶寬仍須預(yù)留外周期性的傳輸即中斷傳輸與等時(shí)傳輸也至多能分配90%的總線帶寬。如果仍有剩余的帶寬,則再另外分配給非周期性傳輸,如批量傳輸。
因此,雖然在這兩種主機(jī)控制器中,各種傳輸類型執(zhí)行的先后順序有所不同,但卻執(zhí)行相同的工作。目前,幾乎都支持通用式主機(jī)控制器。而Windows操作系統(tǒng)都支持這兩種主機(jī)控制器。在USB 2.0規(guī)范中,新增了新的主機(jī)控制器接口。這個(gè)EHCI(Enhanced Host Controller Interface)標(biāo)準(zhǔn)是由Intel、Compaq、NEO、Lucent與Microsoft等主要的公司所提出的。在這個(gè)增強(qiáng)型主機(jī)控制器接口(EHCI)規(guī)范中,描述了針對(duì)USB 2.0的主機(jī)控制器的緩存器層接口。此外,也涵蓋了介于系統(tǒng)軟件與控制器硬件之間的硬件/軟件接口的敘述。
評(píng)論