FPGA保證家庭網絡的服務質量
引言
家庭網絡正在成為視頻、語音和數據快速傳送的“中央火車站”。視頻由標準清晰提升至高清晰,因此需要越來越高的數據速率,這表明家庭網絡系統(tǒng)必須隨著新興視頻標準的發(fā)展而發(fā)展。目前,多媒體家庭網絡技術采用了各種有線和無線網絡接口標準,但是目前這些標準還無法確保家庭內部現場多媒體傳輸的服務質量(QoS)。
挑戰(zhàn)
首先面臨的挑戰(zhàn)是設計可靠的多媒體家庭網絡平臺,以足夠的QoS傳送互聯(lián)網協(xié)議(IP)包,并且沒有明顯的失真。另一挑戰(zhàn)是設計人員怎樣以較高的性價比實現這一切,使消費者能夠用得起。
專業(yè)廣播行業(yè)已經采用了多項技術來解決第一個挑戰(zhàn)。在消費類低成本FPGA中采用這些技術后,設計人員也能夠解決第二個挑戰(zhàn)。
圖1 矩陣排列實例
* 實時傳送協(xié)議
實時傳送協(xié)議(RTP)主要用于在互聯(lián)網上傳輸和分配音頻以及視頻,例如視頻會議和視頻流等應用。然而,該協(xié)議具有時間戳和數據包丟失或者重排探測等功能,因此,也可以用于在條件有限的環(huán)境中通過以太網進行視頻分配,例如家庭多媒體網絡等。
互聯(lián)網工程任務組(IETF)的音頻/視頻傳送(AVT)工作組定義了IP音頻和視頻實時傳輸的RTP。它最初由RFC文檔RFC3350進行定義,被IETF互聯(lián)網工程指導組(IESG)在2004年3月批準為全標準。AVT工作組也在負載格式、誤碼糾正以及安全方面開發(fā)了大量的支持標準。
* MPEG/MPEG-2視頻的RTP負載格式
RTP是一種適合多種傳送應用的通用協(xié)議。經過其他規(guī)范的擴展,它還可以用于更專業(yè)的應用。RFC2250定義了MPEG和MPEG-2視頻的RTP負載格式,詳細規(guī)定了MPEG-2傳送流(TS)數據的封包,并成為Practice #3 (CoP3) Pro-MPEG碼和數字視頻廣播(DVB)-IP手冊的參考。
* UDP/IP
RTP是傳送協(xié)議。它一般在主機至主機層采用用戶數據報協(xié)議(UDP,由IETF RFC768定義),互聯(lián)網層采用IP(由IETF RFC791定義)。與傳輸控制協(xié)議(TCP)不同,UDP不面向連接,不采取措施對數據進行排序,不保證可靠的數據包交付。這一特性使其比TCP更快更簡單,效率更高,因此,同RTP結合后,更適合寬帶視頻分配。
* Practice #3 FEC的Pro-MPEG碼
數據不論是通過有線還是無線網絡進行傳送,在噪聲、時鐘抖動以及網絡鏈路飽和的影響下,都會出現劣化,表現為數據包丟失或者視頻像素丟失。在這方面,壓縮視頻流要比未經壓縮的視頻流表現更明顯。
Pro-MPEG論壇是廣播公司、節(jié)目制作方、設備生產商以及元件供應商組成的協(xié)會,旨在根據廣播公司和最終用戶的要求來實現專業(yè)電視設備的互用性。Pro-MPEG廣域網(WAN)工作組重點研究怎樣在WAN上利用IP交換高質量節(jié)目內容的系統(tǒng)之間建立互用性。該工作組制定了在IP網絡上傳輸專業(yè)MPEG-2 TS數據的實用碼,建議了傳輸協(xié)議(例如,RTP/UDP/IP映射)和前向糾錯(FEC)方案,還討論了時序恢復、抖動容限和延時等問題。盡管可以選擇使用RTP來支持基于UDP/IP的已有標準,IP承載視頻參考設計遵從傳輸協(xié)議建議。
在IP網絡環(huán)境中保證最低數據完整性的一個方法是采用負載預知處理技術。負載預知處理技術涉及到IP封裝、時序糾正以及應用層FEC?,F場視頻傳輸不能使用數據包重發(fā)機制。因此,利用FEC,接收器迅速重新構建丟失或者錯誤的數據,而不需要申請重新傳輸。電纜、衛(wèi)星和地面數字視頻傳輸采用了各種類型的FEC方案。對于IP視頻網絡,Pro-MPEG論壇建議了FEC算法,它使用異或(XOR)方法來產生冗余數據,進行誤碼糾正。該標準被稱為Pro-MPEG COP3第2版(CoP3r2)。FEC主要用于MPEG-2和H.264等壓縮視頻流。
圖2 典型的多媒體家庭網絡
Pro-MPEG FEC是二維XOR算法,有幾種可能性來確定數據矩陣的大小。FEC要求矩陣列數應至少有一列,但不超過20列,行數至少有四行,但不超過20行。而且,一個矩陣中的數據包總數不能超過100個。為理解這一簡單的FEC概念,假設A和B是RTP數據包,那么,F=AB是和{A, B}保護集相關的FEC數據包。F是RTP數據包逐字節(jié)XOR運算的結果。XOR運算符的特點是如果F=AB,那么A=BF,B=AF。如果A或者B丟失,那么可以利用F FEC數據包來恢復A或者B。圖1所示為Pro-MPEG矩陣排列,得到的FEC開銷數據以綠色表示。
解決方案
Altera IP承載視頻參考設計從幾個輸入中接收MPEG TS數據,對其進行封裝,在基于以太網的IP網絡上進行傳輸。設計使用業(yè)界標準UDP/IP網絡封裝,也可以選用RTP封裝和Pro-MPEG CoP3 FEC。設計支持100Mbps (全雙工)和1Gbps以太網連接,能夠處理256個獨立數據流。通過硬件封裝,設計可以達到千兆以太網(GbE)線路速率,并且傳輸延遲很小。
設計還可以從以太網中接收256個獨立數據流,恢復為TS數據。對于RTP封裝的數據,設計含有接收器緩沖,來消除網絡抖動,對數據包重新排序和重復進行糾正。也可以使用可選的CoP3 FEC丟失數據包恢復功能。
可以提供大部分關鍵構建模塊,下載至FPGA系統(tǒng)設計中使用。也可以使用FPGA設計工具中的現有構建模塊來進行設計。大部分設計工具含有FIFO、內部存儲器、外部存儲控制器、計數器、鎖相環(huán)(PLL)以及其他簡單邏輯等模塊。圖2是一個典型的多媒體家庭網絡設計,它使用FPGA作為接口橋接,例如USB 2.0和FireWire,還支持今后的視頻接口協(xié)議。利用Altera的IP承載視頻參考設計能夠將輸入視頻映射至IP網絡。Cyclone系列等低成本FPGA可用于實現完整的設計,系統(tǒng)非常靈活,具有更新能力,可滿足今后的需求。
IP承載視頻參考設計(圖3所示)基于SOPC Builder系統(tǒng),提供以下關鍵構建模塊:
* RTP發(fā)射器
* RTP接收器
* UDP/IP功能
* PHY接口
* Nios II嵌入式處理器,用于設計控制
* FEC生成器和接收器緩沖外部RAM的仲裁邏輯以及存儲控制器
圖3 IP承載視頻參考設計
結語
利用廣播業(yè)的現有技術,簡化了多媒體家庭網絡的服務質量問題。采用Altera的低成本Cyclone系列FPGA,通過IP承載視頻參考設計,可以輕松實現這些技術。在新興的家庭多媒體網絡市場上,存在著各種不同的標準,因此,可編程邏輯將扮演越來越重要的角色。
評論