新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > ISO實(shí)現(xiàn)多媒體流的高速傳輸

ISO實(shí)現(xiàn)多媒體流的高速傳輸

作者: 時間:2013-05-21 來源:網(wǎng)絡(luò) 收藏

通用串行總線(USB)是自1997年末開始為PC主板所采用的一種開放接口標(biāo)準(zhǔn)。1998年,推出了僅有兩個I/O接口,即USB及以太網(wǎng)接口的Apple iMac。最初的USB標(biāo)準(zhǔn)(1.0及1.1)支持的最大傳輸率為每秒1M字節(jié),凈傳輸速率達(dá)12 Mbps。Windows 98是最先支持USB的操作系統(tǒng),它內(nèi)置了各種設(shè)備的驅(qū)動程序,其中包括鼠標(biāo)、鍵盤及揚(yáng)聲器。2000年4月,USB應(yīng)用者論壇(USB-IF成員包括:微軟、英特爾、飛利浦、惠普、康柏、NEC及朗訊)發(fā)布了USB標(biāo)準(zhǔn)2.0。該版本增加了新的率。高速USB傳輸最高速率可達(dá)480 Mbps,比USB 1.1的最高速度快40倍。

傳輸?shù)奶攸c(diǎn)
  
USB支持兩種類型的數(shù)據(jù)傳輸:大數(shù)據(jù)塊(bulk)傳輸方式,對不能容差的數(shù)據(jù)進(jìn)行移動;同步(isochronous,)傳輸方式,對不允許時延的數(shù)據(jù)進(jìn)行移動。數(shù)據(jù)塊傳輸可確保數(shù)據(jù)能可靠傳輸,不會丟失或干擾數(shù)據(jù),但不能確保給定時間內(nèi)的數(shù)據(jù)傳輸量。在沒有其他數(shù)據(jù)流量時,塊數(shù)據(jù)即指那些僅使用總線的填充數(shù)據(jù)。同步傳輸是以主機(jī)PC與設(shè)備相互協(xié)調(diào)確定的速率來進(jìn)行的,但數(shù)據(jù)可能會受到干擾,而且不能持續(xù)傳輸。
  
選擇同步傳輸還是選擇塊數(shù)據(jù)傳輸是非常簡單的。如果數(shù)據(jù)的完整性是最重要的,就采用塊數(shù)據(jù)傳輸;但如果準(zhǔn)時傳輸數(shù)據(jù)比準(zhǔn)確率更重要的話,還是選擇傳輸。雖然乍看起來選擇ISO并不合乎邏輯,因為ISO是用準(zhǔn)時發(fā)送的受干擾數(shù)據(jù)來代替晚發(fā)的正確數(shù)據(jù),但在某些不能及時傳送數(shù)據(jù)的區(qū)域可能會存在數(shù)據(jù)根本不能到達(dá)的情況。電話里的音頻流就是一個簡單例子,丟失了幾小片數(shù)據(jù)總比讓受話方一直落后乃至不能趕上要好。在視頻中也是如此,用戶還是寧愿選擇丟失一個幀以保持圖像的實(shí)時傳輸。
  
USB帶寬被分為每秒1000幀。USB 1.1中的同步傳輸限制在每個幀的每個設(shè)備端點(diǎn)傳輸一個數(shù)據(jù)包。最大的包大小為1023字節(jié),每秒總數(shù)據(jù)傳輸率為1 Mbps。USB 2.0不僅將數(shù)據(jù)率提高到480 Mbps,還將每個幀分成8個微幀,以降低對設(shè)備緩存的需求。USB 2.0還將每個設(shè)備的每個微幀1024字節(jié)的包容量擴(kuò)大到3個數(shù)據(jù)包的容量。這樣USB 2.0中ISO數(shù)據(jù)率從1 Mbps提高到24 Mbps (每秒1000幀 × 每幀8微幀 × 每微幀3個數(shù)據(jù)包 × 每數(shù)據(jù)包1024字節(jié))。

圖1 應(yīng)用帶寬分析圖

ISO傳輸?shù)膽?yīng)用
  
USB 2.0高速ISO推出后支持的最佳產(chǎn)品便是并不昂貴的攝像機(jī)。USB攝像機(jī)早已問世,但全速USB的帶寬限制令人們對圖像的分辨率及幀速率大失所望。全速USB攝像機(jī)的帶寬僅能以每秒5幀的速度傳輸未壓縮CIF (352 × 288)視頻。該設(shè)備需占用90%以上的帶寬,而這個帶寬是系統(tǒng)內(nèi)所有USB設(shè)備共享的。而通過高速ISO,相同攝像機(jī)可以每秒30幀的速度工作,僅占用可用帶寬的10%。作為一個實(shí)例,該技術(shù)已在DV(數(shù)碼視頻)攝像機(jī)中得到了應(yīng)用,以每秒4.5Mbyte的恒定速率傳輸復(fù)合視頻和音頻。高速ISO功能在這類領(lǐng)域中完全游刃有余。圖1所示為各類流協(xié)議所需帶寬與USB1.1全速及USB2.0高速所能利用的ISO帶寬的對比情況。
  
USB的作用并非在數(shù)據(jù)到達(dá)CPU時即告終止。USB 2.0還可以將數(shù)據(jù)由CPU傳輸?shù)酵獠坑脖P、DVD-RAM或CDRW驅(qū)動器等存儲設(shè)備中。如今采用USB 2.0標(biāo)準(zhǔn)的大量數(shù)據(jù)存儲設(shè)備的運(yùn)行速率已高達(dá)20 Mbps,并且有望繼續(xù)提高。
  
Windows支持的USB基于分層結(jié)構(gòu),可使所需的常規(guī)設(shè)備驅(qū)動降至最少,甚至無需常規(guī)設(shè)備驅(qū)動。分層結(jié)構(gòu)的最底層是USBD,即通用串行總線驅(qū)動。位于USBD之上的是類驅(qū)動(class drivers),這種驅(qū)動對于具有類似特性的設(shè)備是通用的。要支持ISO,類驅(qū)動必須采用流類驅(qū)動程序(Stream Class Driver,stream.sys)。音頻和視頻驅(qū)動則位于stream.sys之上。Windows 98包含了對于音頻設(shè)備的支持,而Windows 2000、ME和XP則通過減少其他操作系統(tǒng)任務(wù)延遲音頻數(shù)據(jù)的可能性增強(qiáng)了這種支持功能。Windows(r) 2000、ME和XP還增加了某些支持?jǐn)?shù)碼視頻相機(jī)的功能。USB 2.0高速設(shè)備可利用流驅(qū)動獲得高達(dá)24 Mbps的帶寬。

支持USB 2.0規(guī)范的PCI主機(jī)已在今年四月投放在零售市場上。支持USB 2.0新標(biāo)準(zhǔn)的微控制器現(xiàn)在也已開始發(fā)售。例如Cypress的EZ-USB FX2(tm),這是一種兼容USB 2.0規(guī)范,并能以高達(dá)每秒24Mbyte的持續(xù)速率進(jìn)行ISO傳輸?shù)?位微控制器。該器件采用了靈活的外部接口,從而便于與諸如攝像機(jī)ASIC(專用集成電路)等等的多媒體數(shù)據(jù)源相連接。該器件的開發(fā)工具包中包括了一些固件和驅(qū)動程序范例,這有助于推動ISO的開發(fā),并能夠加快和保證高效的開發(fā)速度。而另一種名為ISD-300的USB 2.0器件使生產(chǎn)商能夠設(shè)計出實(shí)際運(yùn)行速率比共享IDE控制器的驅(qū)動器更快的外部CDRW和DVD驅(qū)動器。



關(guān)鍵詞: ISO 多媒體流 高速傳輸

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉