無線USB協(xié)議的帶寬分析
無線USB是一種新型互連方法,它為現(xiàn)有USB應(yīng)用提供了一種替代的無線方案。無線USB設(shè)備的開發(fā)人員的首要考慮是保證與以往成熟技術(shù)(如USB 2.0)相當?shù)膫鬏斅省1疚膶o線USB 帶寬特性作了詳細分析,并與USB進行了比較。然后,利用分析結(jié)果對幾種單USB 設(shè)備傳輸率需求與一系列有代表性的多USB設(shè)備配置進行建模。這些例子表明,大批潛在的USB 設(shè)備亦可以采用無線USB 技術(shù)實現(xiàn)。本文還有助于讀者理解當前系統(tǒng)實現(xiàn)中可能會出現(xiàn)的瓶頸,以及進一步提升系統(tǒng)流量的可能方案。本文假設(shè)讀者已熟悉了USB 系統(tǒng)架構(gòu)。
介紹
認證無線 USB(Certified Wireless USB)是一種新技術(shù),它提供的無線連接能力建立在強大的 WiMedia 超寬帶(UWB)公共射頻平臺之上。WiMedia UWB 可以提供高達480Mb/s的帶寬,這也是有線USB 2.0的帶寬。因此,它吸引終端用戶與應(yīng)用開發(fā)人員將現(xiàn)有 USB 應(yīng)用遷移到無線領(lǐng)域。USB無線技術(shù)應(yīng)用將使便攜硬盤驅(qū)動、打印機、數(shù)碼相機、以及諸如PDA或手機一類的手持設(shè)備受益。
現(xiàn)在人們對新協(xié)議到底能為應(yīng)用或類驅(qū)動(class driver)提供多大的有效帶寬表示關(guān)注。由于其無線特性,總開銷中必須計入一些額外的部分。無線 USB 能否提供足夠的帶寬以支持應(yīng)用USB的設(shè)備,尤其是那些基于龐大結(jié)構(gòu)和高帶寬要求的應(yīng)用設(shè)備?本文特別關(guān)注無線USB協(xié)議的效率問題。首先,我們將詳細分析降至幀級的無線協(xié)議開銷,并提供其與USB的簡單比較作為參考。接下來,我們將研究幾個應(yīng)用實例。最后,我們會簡單討論系統(tǒng)實現(xiàn)中的潛在瓶頸以及可能的解決方案。
無線USB協(xié)議開銷的分析
由于無線USB的自身特性,與有線USB相比,它要有一些“額外”的開銷。無線 USB 建立在 WiMedia UWB 平臺之上,該平臺包含用于點對點(ad hoc) 個人域網(wǎng)絡(luò)(piconet)的一個 UWB 物理(PHY)層,以及整套的分布式介質(zhì)訪問控制(MAC)協(xié)議。如圖1所示,WiMedia MAC將空中時間劃分成一種65ms的基本時序結(jié)構(gòu),名為超幀(superframe)。然后再進一步劃分為 256個介質(zhì)訪問隙(medium access slot)。每個超幀都開始于一個占16個介質(zhì)分配隙(MAS)的信標期(beacon period)。信標是WiMedia MAC的核心;每個活動的WiMedia設(shè)備嘗試在信標周期內(nèi)傳輸自己的信標時,都必須聆聽其他的信標。換句話說,空中時間的 1/16必須用于WiMedia MAC協(xié)議的信標操作。
圖1 基本時序結(jié)構(gòu)圖
UWB 技術(shù)也不可避免地帶來了數(shù)據(jù)包級的開銷,如前導(dǎo)(preamble)、PHY 與 MAC頭(PLCP 頭)、IFS。所有這些都將考慮在下面的計算中。
需要注意的是,即使是最好的有線 USB 技術(shù),雖然一般情況下比無線技術(shù)要小得多。也同樣存在著通信方法的開銷。一個典型實例就是“位填充”。同樣,從應(yīng)用觀點看,在數(shù)據(jù)包級也存在著一些可以看作開銷的部分,如 SYNC、EOP和CRC等。
無線 USB協(xié)議中的改進
為提高無線USB協(xié)議的效率,引入了事務(wù)類型和流量兩種增強方法。
圖2是無線USB與有線USB之間事務(wù)概念的一個比較圖。在USB 2.0中,傳入或傳出一個設(shè)備當中的任何一個數(shù)據(jù)包都需要來自USB主機的一個令牌。在無線 USB 中,數(shù)據(jù)傳輸則以事務(wù)組(transaction group)的形式完成。事務(wù)組是指微調(diào)度管理指令(MMC)與被分配協(xié)議時間隙的組合,在時間隙期間執(zhí)行一個或多個無線 USB 事務(wù)。即,對無線 USB,并非每個空中傳輸數(shù)據(jù)包都需要一個令牌;一組針對不同端點(EP)管道(甚至是不同設(shè)備)的事務(wù)可以共享同一令牌。
圖2 無線與有線USB事務(wù)概念的比較
無線USB中的傳輸率改進是通過定義一種較大的包尺寸(最大為 3584 應(yīng)用負荷)與數(shù)據(jù)的突發(fā)模式來實現(xiàn)的。通過使用數(shù)據(jù)突發(fā)模式,幀間距可以從 10μs 減小到 1.875μs。另外,還可以使用突發(fā)先導(dǎo)(5.625μs)來代替標準先導(dǎo)(9.875μs)。
無線USB的拓撲結(jié)構(gòu)產(chǎn)生了大的有效帶寬。由于其無線特性,不再需要傳統(tǒng)的“樹”狀拓撲,這樣集線器就被省略了。原來消耗在集線器輪詢上的時間現(xiàn)在可以用于數(shù)據(jù)傳輸。
最后,無線USB 在高級協(xié)議上作了一些優(yōu)化。例如,對bulk-in(批量傳入)事務(wù),無線USB不需要一個主機來發(fā)送獨立的握手包,而是將握手信息嵌入在其后的MMC 中。這樣進一步提高了信道的使用效率。另外,還省略了控制傳輸設(shè)置階段的握手(handshake),如果數(shù)據(jù)段后緊接著控制傳輸,則數(shù)據(jù)段令牌將嵌入到設(shè)置令牌中。
從上述分析可見,無線USB 有一些由于無線特性以及介質(zhì)訪問控制層所帶來的額外開銷,但無線 USB 協(xié)議設(shè)計者亦采用了一些新方法來提升系統(tǒng)傳輸率。因此,需要把全部因素包括進來,以作全面考慮。下面我們將計算無線 USB 的有效帶寬,并作進一步的詳盡描述。
計算應(yīng)用的有效帶寬
下面的計算基于一種單設(shè)備的簡單方案。類似方法也可以分析多設(shè)備的情況。理想情況下,如果一個無線 USB 主機可以將不同設(shè)備的多個事務(wù)安排在單一事務(wù)組中,則能夠大大改進平均傳輸率數(shù)字(因為令牌本身被認為是一種協(xié)議開銷,因此,如果多個事務(wù)能夠共享一個令牌,則能減少總開銷)。
表1是一個標準無線USB數(shù)據(jù)包開銷的計算。
現(xiàn)在,我們看看在事務(wù)級的帶寬特性。此處以批量傳出(bulk-out)事務(wù)為例,批量傳入(bulk-in) 事務(wù)的計算方法與之相似。此外,由于無線USB協(xié)議省略了bulk-in事務(wù)的獨立握手包,因此bulk-in 可以實現(xiàn)比bulk-out更高的流量。(相同的 MMC 可以用于批量傳入(bulk-in)和批量傳出(bulk-out)事務(wù),前提是這些事務(wù)被組合到一個事務(wù)組。)
整個事務(wù)的持續(xù)時間將為:T=2*SIFS+burstsize*(MIFS+Packetduration)+AckDuration+ MMCOUTDuration。握手與 MMC 持續(xù)時間的計算采用一種簡單方法,因為兩種包都是一種預(yù)定義好的格式,有固定的長度。等效有效帶寬的計算方式如下:B = [本次事務(wù)中傳輸?shù)挠行?yīng)用負荷/ T] *15/16。
其中,附加的因數(shù) 15/16 用于消除信標操作的開銷。
表2列出了不同數(shù)據(jù)包與突發(fā)尺寸配置下的有效應(yīng)用帶寬。
應(yīng)用的全部有效帶寬大約為總帶寬的 75%。
注意,上述計算是單純基于事務(wù)級開銷,沒有考慮用于信道保留的 MAC 層共存策略。
USB事務(wù)級的等效帶寬如表3所示。
應(yīng)用的全部有效帶寬大約為總帶寬的88%。
注意,這一計算中尚未包含一些其他因素(雖然不太重要),如SOF和輪詢集線器所消耗的時間。
從USB 轉(zhuǎn)到無線USB有效帶寬的下降是源于射頻的特性:即在發(fā)射(TX)與接收(RX)之間過渡耗時嚴重。
與USB相比,無線USB 更適合于批量數(shù)據(jù)傳輸,而對少量數(shù)據(jù)來說,過渡的成本太高。
另外對 ISO 傳輸,無線USB 定義了一個限制,即把每個同步端點對帶寬的需求限制在不超過 40 Mb/s。這意味著:如果一個同步端點服務(wù)間隔為 4.096ms,帶寬需求為 40Mb/s,則每個服務(wù)間隔內(nèi)可移動 21475字節(jié)。將這個數(shù)字與支持大帶寬端點的USB 2.0(最高 192Mb/s)相比較。在準備實現(xiàn)需要大帶寬的同步傳輸時,要牢記這一點。
應(yīng)用實例
表4是幾個當前使用USB并需要大帶寬的典型應(yīng)用實例。通過分析這些實例的帶寬需求,就能更好地了解這些應(yīng)用是否能夠完美地配合于無線 USB 框架。
總結(jié)
迄今為止我們所見的大多數(shù)應(yīng)用均可以無縫地遷移到無線USB 上。至于海量存儲這種“貪婪”的應(yīng)用,無線USB的性能與USB 2.0相比會受到一些影響。這種情況下必須作進一步研究,從而確保在提供特定應(yīng)用及無線解決方案時,性能的降級程度在可承受范圍內(nèi)。
實現(xiàn)建議
如前所述,無線USB協(xié)議通過傳輸批量數(shù)據(jù)可以獲得更好的帶寬性能,系統(tǒng)設(shè)計者應(yīng)有效地管理緩存,即當主機給出一個用于數(shù)據(jù)傳輸?shù)臅r間窗口(CTA)時,設(shè)備應(yīng)總是保有足夠用于發(fā)送的數(shù)據(jù),或有足夠保存數(shù)據(jù)的緩存空間。緩存管理不僅要考慮來自應(yīng)用的需求,還要考慮無線 USB 的端點成對描述符(endpoint companion descriptor)。否則,主機仍要根據(jù)包尺寸與突發(fā)尺寸來安排一個大的時間窗口,而事實上,設(shè)備實際只用到一部分時間。這也會浪費整體的總線帶寬。
同樣,如果無線USB主機可以積累來自較高層的多個事務(wù)請求,并將它們高效地組織成事務(wù)組,也將提升多設(shè)備配置的總體系統(tǒng)性能。當然,主機實現(xiàn)應(yīng)有充足的本地緩存,以保存該事務(wù)組中發(fā)射或接收的數(shù)據(jù)包。