利用平臺FPGA器件進行多媒體、視頻和圖像應用設計
當今生活的時代,多媒體通信的出現和流行是大勢所趨。隨著數字電視(DTV)、IP視頻傳輸、數字相機、無線視頻、醫(yī)療圖像和視頻監(jiān)控等應用的興起,目前提供音頻和數據服務的許多系統(tǒng)都會隨實時視頻技術的應用而有不同程度的擴展。在最近的技術發(fā)展表明,芯片邏輯門密度和嵌入式功能的極大提高為多媒體處理設計提供了激動人心的設計可能性。同時,還可以利用可重配置芯片所提供的額外靈活性來提供具有吸引力的解決方案。本文中,我們將考察多媒體系統(tǒng)的要求以及多媒體處理所需要的一些基本構建模塊。然后,我們將討論將實時視頻應用的抽象描述轉換為采用FPGA技術有效實現的設計所需要的設計流程。最后,我們將考察新興壓縮標準JPEG2000和MPEG-4的需求。在多媒體處理解決方案領域,FPGA技術能夠以合適的價位點提供實現下一代多媒體算法所需要的帶寬、設計工具和芯片,從而滿足多媒體設計人員的要求。
本文引用地址:http://www.ex-cimer.com/article/189796.htm多媒體通信
由于新興壓縮和通信技術的快速應用,對多媒體通信的需求每年都在提高。這些技術大部分都被ISO、ITU、SMTPte和IEEE等標準機構所采納。多媒體壓縮對于有效地使用可用的存儲和帶寬資源非常關鍵。ISO MPEG和J
PEG工作組和ITU一起開發(fā)了可滿足音頻、視頻和系統(tǒng)壓縮需求的標準。兩個最近完成的標準JPEG2000 和 AVC (高級視頻編碼解碼器, MPEG-4 Part 10/H.264)標準,提供了前所未有的性能水平,但密集的計算需求比較有利于FPGA技術,而不是傳統(tǒng)基于處理器的解決方案。
這些壓縮標準致力于滿足范圍廣泛的應用領域,并按運算的類(profile)和級(level)來劃分。類定義了編碼解碼器中所使用的標準算法功能集合。級則定義了特定類中的參數選擇集合,如幀大小和速率。這些標準服務的多樣化市場包括數字視頻廣播、IP多媒體傳輸、無線多媒體傳輸、視頻監(jiān)控、醫(yī)療圖像和數碼相機。這些市場在采集、計算和顯示方面有著非常不同的要求。
壓縮芯片市場預計到2006年時將從目前的15億美元增長到28億美元。這一發(fā)展趨勢與1990年代音頻無線應用大變革時的情況類似。今天的許多系統(tǒng)都提供音頻和數據服務,我們在文中將考察視頻服務的興起,以及新帶來的計算需求挑戰(zhàn)。
多媒體系統(tǒng)的要求
多媒體系統(tǒng)的要求高度依賴于最終應用。例如,視頻點播(VOD)對延遲的要求相對較高,而視頻會議則對延遲有精確的高要求。視頻監(jiān)控在延遲方面的要求則介于在這兩個極端之間。實時多媒體系統(tǒng)可能需要也可能不需要實時編碼。MPEG標準的開發(fā)主要著眼于降低解碼器的復雜性,以提供成本經濟的方案。相對而言,MPEG編碼器的復雜程度是MPEG解碼器的10倍左右。不需要實時效果的應用,如視頻點播可以采用兩步算法進行離線編碼以獲得最佳的效果。視頻監(jiān)控和視頻會議則是需要實時編碼的例子。在針對多媒體壓縮的標準中,解碼器功能規(guī)定了嚴格的標準兼容性規(guī)則,而編碼器相對則自由多了。換句話來說,視頻編碼器只要能夠生成符合標準的正確位流就可以,而兼容解碼器則必須能夠解釋標準定義的特定類和級中所允許的任何正確位流。
圖像數據庫存儲要求與壓縮視頻傳輸的要求絕緣不同。ISO JPEG工作組通常以壓縮比率來衡量不同的壓縮方案,而ISO MPEG通常采用固定位速率做為衡量參數。只要我們談到多媒體通信,這些系統(tǒng)在數據傳輸過程中都需要通信信道能夠保證固定的位速率。這導致一個問題,因為壓縮比率是序列相關的,因此為了獲得可接受的結果,必須在質量方面有所折衷。很明顯,在編碼器方面如果嚴格遵循固定位速率生成數據位流,那么就會導致幀之間質量的變化,有時可能會變得無法接受。這一問題可以通過下面的方法來減輕,在類編碼器的后面指定一個緩沖存儲區(qū),這樣就可允許編碼器以可變數據速率填充緩沖區(qū),而通信信道則可以以固定速率讀取并清空緩沖區(qū)。這意味著多媒體壓縮系統(tǒng)需要存儲器。為了提高或增強質量所需要的額外預處理和后處理也提高了對存儲器的需求。例如,在MPEG-4編碼器的情況下,典型情況下需要3~10 MB的存儲器,而解碼器只需要1~3 MB。
對任何系統(tǒng)來說,一個主要的要求是為達到實時操作而需要的每秒運算次數。對于多媒體壓縮來說,這確實是一個需要量化的具有挑戰(zhàn)性的數字。由于工作點很多,計算所需要的MOPS數值可能很大。圖1 給出了幾個MPEG-4類以及達到這些工作點所需要的相對MOPS數值,其中一級簡單類歸一化值為1。一個分辨率為640x480、每秒30幀的JPLEG2000視頻監(jiān)控應用視頻流大約需要4200 MOPS,而分辨率為1024x1024、 每秒 60幀的醫(yī)療圖像無失真碼流在采用JPEG2000標準編碼時則需要29000 MOPS。利用JPEG200
0標準的4096x2048分辨率24 幀每秒的數碼相機需要93000 MOPS。使問題更復雜的是,在整個視頻流運算過程中,所需要的MOPS數值并不是固定值,而是依賴于圖像內容的。在圖2中我們看到在視頻序列的播放過程中,峰值MOPS數值是需要確定的關鍵要求。
圖1 不同MPEG類編碼所需要的計算MOPS要求
評論