利用平臺FPGA器件進行多媒體、視頻和圖像應用設計
對于多媒體壓縮來說,人們可能會問,到底哪些功能是計算密集的呢?信息理論的基礎告訴我們,無損失壓縮就是在信源編碼過程中不影響圖像集的數(shù)值。在現(xiàn)在的多媒體壓縮編碼解碼器中,這是通過可變長度編碼和算術編碼實現(xiàn)的。在圖像本身所提供的信息量之外則進入不相干信息處理領域,通常利用運算預測(MotiON ESTimation)算法來消除暫時冗余,通過離散余弦變換(DCT)或離散小波變換(DWT)進行能量壓縮,對視頻流中包含的高頻項進行比例壓縮。這兩項都會影響到解碼序列的質(zhì)量,因為對于有損壓縮來說,理想的圖像重構是不可能的。對于MPEG編碼,MOPS和運算圖像預測算法以及結果的質(zhì)量目標之間影響很大。運算圖像預測需要從一個幀搜索下一個幀(圖3)以找到空間元素的最小誤差,從而來確定運動向量。這一運動向量加上不同的數(shù)據(jù)被一起編碼,這可大大提高壓縮比、降低位速率。
圖2 MOPS數(shù)值變化
圖 3 暫時冗余和運動預測
在多媒體系統(tǒng),多媒體接口也扮演了相當?shù)慕巧?。ANSI/SMPTE 259M-1997標準規(guī)定了如何通過視頻同軸電纜串行傳輸數(shù)字視頻內(nèi)容。通常稱為SDI的這一標準現(xiàn)在被廣泛用來在電視演播室和視頻生產(chǎn)中心通過原來用于傳輸模擬視頻的視頻同軸電纜來傳輸數(shù)字視頻數(shù)據(jù),數(shù)字音頻被插入數(shù)字視頻流的非活動部分。計算出的錯誤檢測數(shù)據(jù)包(EDH)也被插入視頻數(shù)據(jù)流中。然后,數(shù)字視頻內(nèi)容被編碼、串行化并通過同軸電纜發(fā)送。在接收端,數(shù)據(jù)和時鐘從串行位流中恢復出來,位流被解碼、成幀和去串行化。最后,在對數(shù)字視頻數(shù)據(jù)解碼以前,對位流進行錯誤檢測和分析。
多媒體解決方案
在今天成本敏感的環(huán)境中設計多媒體系統(tǒng)是一項頗具挑戰(zhàn)性的任務。從技術的觀點來看,芯片邏輯門密度不斷提高可支持更復雜的算法。更多嵌入式功能也降低了系統(tǒng)設計師所面臨的設計挑戰(zhàn)。新的芯片集成努力也似乎可將最終設計的尺寸降到盡可能小。 要找到一個合適的解決方案需要理解計算、存儲器和接口方面存在的各種選擇。
多媒體處理對計算性能的要求從數(shù)千MPOS至數(shù)萬MOPS不等。如果我們考察一下可用于完成計算功能的芯片解決方案,我們可以看到有通用處理器、DSP、媒體處理器、FPGA、SIC和ASSP。集成多媒體擴展功能的通用處理器可達到數(shù)百MOPS的性能,當應用中不需要太強的計算能力時,通用處理器提供了一個很好的解決方案。當多媒體僅是整個系統(tǒng)環(huán)境中需要提供的眾多功能中的一項時,通用處理器非常具有吸引力。數(shù)字信號處理器可提供5000 MOPS左右的性能,應用范圍更廣,并且可很好地在嵌入式應用中工作。媒體處理器的計算能力更進一步,達到約2萬MOPS,而很多嵌入式功能專門針對多媒體處理器而優(yōu)化。此類功能的例子有芯片中做為硬件加速器而集成的嵌入式位處理器和特殊的MPEG功能。FPGA的計算性能可達到10萬MOPS,并可處理高速接口。計算能力的提升源于分布式邏輯、MAC和本地存儲器,可以根據(jù)特殊應用高效率地使用這些資源。通過在平臺FPGA中引入嵌入式處理器(如PowerPC),代碼可編程能力和硬件可編程能力都是可能的。ASIC可達到數(shù)十萬MOPS的計算性能,并曾廣泛用于嵌入式應用。但是,ASIC也有缺點,那就是ASIC需要極高的NRE成本,因此僅適用于大批量應用。ASSP專門針對一種特定應用,如果應用于其它應用中,則通常在質(zhì)量方面會有所折扣。
多媒體應用對存儲器的需求依據(jù)應用不同可能從數(shù)千字節(jié)到數(shù)M字節(jié)。大多數(shù)應用都可以按照需要存儲的幀數(shù)來衡量。作為參考,720x480x24位的一幀NTSC數(shù)據(jù)需要341 KB的存儲空間。如果僅需要存儲少量幀的話,片上集成的存儲器大概可以滿足要求。高分辨率720行逐行掃描(1280x720x24)需要900 kb才能存儲一幀數(shù)據(jù),而 1080i (1080x1920x24)的一幀將需要2.025 MB的存儲空間。大體上,一旦達到數(shù)兆字節(jié)的存儲量,那么就需要外部存儲器了。目前,外部存儲器的流行選擇是同步DRAM和ZBT存儲器。ZBT存儲器的優(yōu)點是可交叉訪問、存儲器控制器簡單,但容量較小,只有2~8MB,而且相應地,其成本也比DRAM要高。同步DRAM在讀寫間切換時有延遲,需要更復雜的存儲器控制器。其容量為32~128MB,有雙倍和四倍數(shù)據(jù)速率的產(chǎn)品型號,可以提高連續(xù)數(shù)據(jù)猝發(fā)讀取時的存儲器帶寬。
多媒體應用設計工具
芯片邏輯門密
度的提高對于設計工具行業(yè)提出了困難的挑戰(zhàn)。隨著100萬門的設計非常普通,而1000門的設計也已達到,工程師如何應付設計單塊芯片上的一億邏輯門系統(tǒng)這些樣的設計復雜性?對于通用處理器和數(shù)字信號處理器來說,軟件編程環(huán)境為設計人員提供了一個很好的環(huán)境,幫助他們利用所提供的計算能力。對于多媒體系統(tǒng),問題變得更為復雜,因為緩存尺寸變得更大,而且還要滿足更強的實時處理要求。我們期望多媒體擴展處理能力變得更為普遍,從而使設計人員從實現(xiàn)實時處理目標所需要的細節(jié)中解脫出來。額外的IP庫對于減輕與設計復雜性相關的問題也扮演了一個關鍵的角色。媒體處理器的嵌入式功能在通用編程環(huán)境中的使用稍微困難一些。FPGA和ASIC的吸引力在于其計算能力提升了數(shù)個量級,這要歸功于其并行機制。充分發(fā)揮其計算能力的關鍵在于能否擁有一個高效率的編程環(huán)境。C語言和邏輯設計工具的最新發(fā)展,以及幾家供應商新發(fā)布的工具承諾在明年可解決這一問題。
評論