無線USB(Wireless USB)是一種新型互連方法,它為現有USB應用提供了一種替代的無線方案。無線USB設備的開發人員主要考慮的是保證與先前成熟技術如USB 2.0相當的傳輸率(Throughput)。本文將對無線USB頻寬特性進行分析,並與USB進行比較。然後,利用分析結果對幾種單USB設備傳輸率需求與一系列有代表性的多USB設備配置進行配置。這些例子表明,大量潛在的USB設備也可以採用無線USB技術,同時還有助於理解當前系統實現中可能會出現的瓶頸,以及進一步提升系統流量的可能方案。
認證無線USB(Certified Wireless USB)是一種新技術,它提供的無線連接能力建立在WiMedia超寬頻(UWB)公共射頻平台之上。WiMedia UWB可以提供高達480Mbit/s的頻寬,這也是有線USB 2.0的頻寬,因此,它吸引終端用戶與應用開發人員將現有USB應用遷移到無線領域。USB無線技術應用將使可攜式硬碟(Portable Hard Disk Drive)、印表機、數位相機以及PDA或手機之類的手持設備受益。
現在人們非常關注新無線USB協議到底能為應用或類別驅動(Class Driver)提供多大的有效頻寬,以及能否提供足夠的頻寬以支援應用USB的設備,尤其是那些以龐大架構和高頻寬要求為基礎的應用設備。首先,本文將詳細分析降至訊框層級(Frame Level)的無線協議經常性開銷(Overhead),並提供其與USB的簡單比較作為參考。接下來,將研究幾個應用實例。最後,會簡單討論系統實現中的潛在瓶頸以及可能的解決方案。
無線USB經常性開銷高於有線USB
由於無線USB的自身特性,與有線USB相比,它需要額外的開銷。無線USB建立在WiMedia UWB平台之上,該平台包含用於點對點(Ad Hoc)微網(Piconet)的一個UWB實體(PHY)層,以及整套的分布式媒體存取控制(MAC)協議。WiMedia MAC將空中時間劃分成一種65毫秒的基本時序架構,名為超訊框(SuperFrame)。然後再進一步劃分為兩百五十六個媒體存取槽(Medium Access Slot, MAS)。每個訊框都開始於一個占十六個MAS的訊標期(Beacon Period)。訊標是WiMedia MAC的核心;每個運作中WiMedia設備嘗試在訊標周期內傳輸自己的訊標時,都必須聆聽其他的訊標。換句話說,空中時間的1/16必須用於WiMedia MAC協議的訊標操作。超訊框相關運作如圖1。
|
圖1 超訊框相關運作圖 |
UWB技術也不可避免地帶來了封包級的開銷,如前置碼(Preamble)、PHY與MAC頭--實體層收斂協定頭(PLCP頭)、IFS,這些都將考慮在計算中。
值得一提的是,即使是最好的有線USB技術,也同樣存在著通訊方法的開銷,雖然一般情況下它比無線技術要小得多。一個典型實例就是位元填塞(Bit Stuffing)。同樣,從應用觀點看,在封包級也存在著一些可以看作開銷的部分,如同步(SYNC)、封包結束(EOP)、循環冗餘核對(CRC)等。
無線USB傳輸效率再升級
為提升無線USB協議的效率,引入了一些增強方法,包括處置動作(Transaction)類型與傳輸率等。
圖2是無線USB與有線USB之間交互作用的一個比較圖。在USB 2.0中,傳入或傳出一個設備當中的任何一個封包都需要來自USB主機的一個標記(Token)。在無線USB中,數據傳輸則以處置動作組(Transaction Group)的形式完成。處置動作組是指微調度管理指令(MMC)與被分發協議時間槽的組合,在時間槽期間執行一個或多個無線USB動作。
|
圖2 有線與無線USB交互作用比較圖 |
同樣地,對無線 USB,並非每個空中傳輸封包都需要一個標記;一組針對不同端點(EP)管道,甚至是不同設備的動作都可以共享同一標記。
無線USB中的傳輸率改進是透過定義一種較大的封包尺寸,最大為 3,584應用負荷(Payload),與數據的突發模式來實現。透過使用數據突發模式,訊框間距可以從10微秒減小到1.875微秒。另外,還可以使用突發前文(5.625微秒)來代替標準前文(9.875微秒)。
無線USB的拓撲架構具有較大的有效頻寬。由於無線USB的無線特性,因而不再需要傳統的樹狀拓撲,可省略集線器的使用,進而讓原來消耗在集線器輪詢上的時間可以用於數據傳輸。
最後,無線USB在高級協議上作了一些最佳化。例如,對批量傳入(Bulk-in)動作,無線USB不需要一個主機來發送獨立的交握封包(Handshake Packet),而是將交握訊息嵌入在其後的MMC中。這樣進一步提升了通道(Channel)的使用效率。另外,還省略了控制傳輸設置階段的交握,如果數據段後緊接著控制傳輸,則數據段標記將嵌入到設置訊號中。
從上述分析可見,無線USB有一些由於無線特性以及媒體存取控制層所帶來的額外開銷,但無線USB協議設計者亦採用了一些新方法來提升系統傳輸率。因此,需要把全部元素包括進來,來作全面考慮。下面我們將計算無線USB的有效頻寬,並作進一步的詳盡描述。
有效頻寬斤斤計較
下面的計算基於一種單設備的簡單方案,類似方法也可以分析多設備的情況。理想情況下,如果一個無線USB主機可以將不同設備的多個動作安排在單一動作組中,則能夠大大改進平均傳輸率。理由是因為標記本身被認為是一種協議開銷,因此,如果多個動作能夠共享一個標記,則能減少經常性開銷。
首先,來查看在無線USB封包級上的開銷。圖3是一個標準無線USB封包的詳細分解圖。其開銷的計算見表1。
|
圖3 無線USB封包分解圖 |
表1 無線USB開銷計算表 |
Bulk長度 |
FCS |
TKID |
Rev |
EO |
SFN |
無線USB頭 |
MIC |
總計 |
512 |
4 |
3 |
1 |
2 |
6 |
2 |
8 |
538 |
1,024 |
4 |
3 |
1 |
2 |
6 |
2 |
8 |
1,050 |
1,536 |
4 |
3 |
1 |
2 |
6 |
2 |
8 |
1,562 |
2,048 |
4 |
3 |
1 |
2 |
6 |
2 |
8 |
2,074 |
2,560 |
4 |
3 |
1 |
2 |
6 |
2 |
8 |
2,586 |
3,072 |
4 |
3 |
1 |
2 |
6 |
2 |
8 |
3,098 |
3,584 |
4 |
3 |
1 |
2 |
6 |
2 |
8 |
3,610 |
在計算頻寬時將需要封包傳輸的持續時間,透過下列公式,可得計算結果如表2。
表2 封包傳輸所需時間比較表 |
封包大小 \ 數據速率 |
538 |
1,050 |
1,562 |
2,074 |
2,586 |
3,098 |
3,610 |
3.3 |
94.5375 |
171.3375 |
248.1375 |
324.9375 |
401.7375 |
478.5375 |
555.3375 |
80 |
67.4 |
118.6 |
169.8 |
221 |
272.2 |
323.4 |
376.4 |
106.7 |
53.83125 |
92.23125 |
130.63125 |
169.03125 |
207.43125 |
245.83125 |
284.23125 |
160 |
40.2625 |
65.8625 |
91.4625 |
117.0625 |
142.6625 |
168.2625 |
193.8625 |
200 |
31.085 |
51.565 |
72.045 |
92.525 |
113.005 |
133.485 |
153.965 |
320 |
22.94375 |
35.74375 |
48.54375 |
61.34375 |
74.14375 |
86.94375 |
99.74375 |
400 |
20.23 |
30.47 |
40.71 |
50.95 |
61.19 |
71.43 |
81.67 |
480 |
18.42083333 |
26.95416667 |
35.4875 |
44.020833 |
52.5541667 |
61.0875 |
69.620833 |
封包持續時間(微秒)﹦PSDU+PLCP+PT
至於在交互作用級的頻寬特性。此處以批量傳出(Bulk-out)處置動作為例,Bulk-in處置動作的計算方法與之相似。此外,由於無線USB協議省略了Bulk-in處置動作的獨立交握封包,因此Bulk-in可以實現比Bulk-in更高的流量。
要補充的是,相同的MMC可以用於批量傳入和批量傳出處置動作,前提是這些動作被組合到一個處置動作組。
整個處置動作的時間將為︰
T=2×SIFS+burstsize×(MIFS+Packetduration)+AckDuration+MMCOUTDuration
交握與MMC持續時間的計算採用一種簡單方法,因為兩種封包都是一種預先定義好的格式,有固定的長度。
等效有效頻寬的計算模式如下︰
B=[本次動作中傳輸的有效應用負荷/T]×15/16
附加的因數15/16用於消除訊標操作的開銷。傳輸的主從關係如圖4。
|
圖4 無線USB主從應用圖 |
表3則列出了不同封包與突發尺寸配置下的有效應用頻寬。其應用全部有效頻寬大約為總頻寬的 75%。而前述計算是單純以處置動作級為基礎的開銷,沒有考慮用於頻道保留的MAC層共存策略。
表3 有效應用頻寬比較表 單位:Mbit/s |
突發 \ 封包尺寸 |
538 |
1,050 |
1,562 |
2,074 |
2,586 |
3,098 |
3,610 |
1 |
48 |
87 |
119 |
146 |
169 |
188 |
205 |
2 |
77 |
131 |
172 |
203 |
228 |
249 |
266 |
3 |
96 |
158 |
202 |
234 |
259 |
278 |
294 |
4 |
109 |
176 |
221 |
253 |
277 |
296 |
311 |
5 |
119 |
189 |
234 |
266 |
290 |
308 |
322 |
6 |
127 |
198 |
244 |
275 |
298 |
316 |
330 |
7 |
133 |
206 |
251 |
282 |
305 |
322 |
336 |
8 |
139 |
212 |
257 |
288 |
310 |
327 |
341 |
9 |
143 |
217 |
262 |
293 |
315 |
331 |
344 |
10 |
146 |
221 |
266 |
296 |
318 |
334 |
347 |
11 |
149 |
224 |
269 |
299 |
321 |
337 |
350 |
12 |
152 |
227 |
272 |
302 |
323 |
339 |
352 |
13 |
154 |
230 |
275 |
304 |
325 |
341 |
353 |
14 |
156 |
232 |
277 |
306 |
327 |
343 |
355 |
15 |
158 |
234 |
279 |
308 |
329 |
344 |
356 |
16 |
160 |
236 |
280 |
310 |
330 |
346 |
357 |
表4比較了USB處置動作級的等效頻寬,其應用的全部有效頻寬大約為總頻寬的88%。要注意的是,這一計算中尚未包含一些其他元素,如SOF和輪詢集線器所消耗的時間。而從USB轉到無線USB有效頻寬的下降是源於射頻的特性,即在發射(TX)與接收(RX)之間過渡耗時嚴重。與USB相比,無線USB更適合批量數據傳輸,而對少量數據來說,過渡的成本太高。
表4 USB處置動作等效頻寬比較表 |
數據負荷 |
最大頻寬(Mbit/s) |
每次傳輸的微幀頻寬 |
最大流量 |
保留位元組 |
每個微幀的可用位元組 |
1 |
8.512 |
1% |
133 |
52 |
133 |
2 |
16.768 |
1% |
131 |
33 |
262 |
4 |
32.512 |
1% |
127 |
7 |
508 |
8 |
60.928 |
1% |
119 |
3 |
952 |
16 |
107.52 |
1% |
105 |
25 |
1,680 |
32 |
176.128 |
1% |
86 |
18 |
2,752 |
64 |
258.048 |
2% |
63 |
3 |
4,032 |
128 |
327.68 |
2% |
40 |
180 |
5,120 |
256 |
393.216 |
4% |
24 |
36 |
6,144 |
512 |
425.984 |
8% |
13 |
129 |
6,656 |
另外對ISO傳輸,無線USB定義了一個限制,即把每個同步端點對頻寬的需求限制在不超過40 Mbit/s。這意味著如果一個同步端點服務間隔為4.096毫秒,頻寬需求為40Mbit/s,則每個服務間隔內可移動21,475個位元組。將這個數字與支援大頻寬端點的USB 2.0(最高192Mbit/s)相比較,並在準備實現需要大頻寬的同步傳輸時,牢記這一點。
無線USB大頻寬應用有望
從幾個當前使用USB並需要大頻寬的典型應用實例來看,透過分析這些實例的頻寬需求,就能進一步了解這些應用是否能夠完美地配合無線USB框架(表5)。
表5 USB應用所需頻寬 |
USB 2.0應用 |
負荷頻寬 (bit/s) |
USB 2.0 行動硬碟 |
~400M |
16x DVD-ROM |
177.28M |
4xDVD 燒錄機 |
44.32M |
MPEG2 視訊 |
6~15M |
MPEG4 數據流 |
2.254M |
MPEG4-AVC/H.264 視訊 |
1M |
5聲道音訊 |
320K |
WLAN 802.11a 卡 |
54M |
HSDPA modem |
~7.2M |
迄今為止我們所見的大多數應用均可以無縫遷移到無線USB上。至於大量儲存這種應用,無線USB的性能與USB 2.0相比會受到一些影響。這種情況下必須作進一步研究,進而確保在提供特定應用及無線解決方案時,性能的降級程度會在可承受範圍內。
如前所述,無線USB協議透過傳輸批量數據可以獲得更好的頻寬性能,系統設計者應有效地管理緩存,即當主機給出一個用於數據傳輸的時間窗口(CTA)時,設備應總是保有足夠用於發送的數據,或有足夠保存數據的緩存空間。緩存管理不僅要考慮來自應用的需求,還要考慮無線USB的端點成對描述訊息(Endpoint Companion Descriptor)。否則,主機仍要根據封包尺寸與突發尺寸來安排一個大的時間窗口,而事實上,設備實際只用到一部分時間。這也會浪費整體的匯流排頻寬。
同樣,如果無線USB主機可以累積來自較高層的多個處置動作請求,並將它們高效組織成處置動作組,也將提升多設備配置的總體系統性能。當然,主機實現應有充足的本地緩存,以保存該處置動作組中發射或接收的封包。
(本文作者任職於恩智浦半導體)