從非常簡單的消費類音/視頻播放器到在專業(yè)制作環(huán)境中使用的高度復雜的音視頻捕捉、編輯和回放系統(tǒng),多媒體設備或系統(tǒng)的應用范圍非常廣泛。人們在實現(xiàn)這類應用系統(tǒng)時會使用特殊應用標準產(chǎn)品(ASSP)、專用數(shù)字信號處理器(DSP)、RSIC處理器和可編程邏輯等多種類型的技術。這些技術有各自的獨特優(yōu)勢和局限性。
可編程邏輯的好處是靈活性高,易于擴展,可以采用可重配置技術進行多媒體信號處理。由可編程邏輯構成的典型模塊有乘法器、存儲器、協(xié)議接口和時鐘電路(如PLL)。這些模塊具有可擴展性,能夠適應從簡單到復雜的各種多媒體處理系統(tǒng)。把繁重的計算工作交給FPGA協(xié)處理器,由一個DSP器件和一個FPGA(而不是多達8-10個DSP器件)構成的FPGA高清方案具有更高的性價比。
視頻和嵌入式DSP模塊
創(chuàng)新的消費類需求,如1080p高清電視、多媒體家庭網(wǎng)關、高帶寬效率的機頂盒解碼器,一直在推動視頻和圖像處理應用快速向前發(fā)展。低成本FPGA(如Cyclone III系列)的優(yōu)點是能以ASIC的價格提供DSP性能、高度靈活性和更快的上市速度。Cyclone III系列中成本最低的是EP3C5器件,它擁有的嵌入式乘法器和邏輯資源足以在HDTV 1080p視頻應用中完成實時7x7像素濾波功能。面向更高端產(chǎn)品的Stratix III FPGA中所包含的DSP模塊可以提供600MHz以上性能的18x18乘法器。Stratix III DSP模塊還能以9x9、36x36和新的12x12模式支持可變比特寬度。該DSP模塊可以為每個18x18乘法器提供兩個9x9或一個半12x12乘法器。如圖1所示,級聯(lián)模式可以把一個DSP模塊的輸入傳送到下一級,進而實現(xiàn)更為卓越的整體性能。Stratix III FPGA的邏輯和存儲器結構還針對DSP應用進行了優(yōu)化,可以用MLAB模塊構成抽頭延遲線,用ALM(自適應邏輯模塊)中的快速3輸入加法器構成高效快速的加法器樹。
圖1:采用級聯(lián)模式的Stratix III DSP模塊。
隨著圖像捕捉、顯示器分辯率、高級壓縮技術和視頻智能方面不斷取得重大進展,視頻應用所要求的處理帶寬也在不斷增長。而標準的快速變化和更高的分辨率也促使設計者遠離現(xiàn)成技術。用可編程邏輯實現(xiàn)的模塊化可編程視頻和圖像處理方案具有性能高、靈活、升級方便、開發(fā)成本低等優(yōu)點,當產(chǎn)品成熟和生產(chǎn)批量攀升時,可編程邏輯還可提供轉(zhuǎn)移到更低成本的途徑。
FPGA內(nèi)部的嵌入式數(shù)字信號處理知識產(chǎn)權(IP)可以作為單獨的系統(tǒng)方案,也可以與標準的數(shù)字信號處理器一起作為協(xié)處理器使用。與標準的數(shù)字信號處理器相比,F(xiàn)PGA的主要優(yōu)點是內(nèi)建有高水平的并行處理機制,如圖2所示。而專用的RISC處理器無法滿足許多視頻和成像應用的所有處理要求。
圖2:DSP和FPGA并行處理方案的對比。
由于可以把繁重的計算任務交給FPGA協(xié)處理器來完成,F(xiàn)PGA方案改善了性價比,見圖3。例如,同使用多達8個到10個DSP器件的方案相比,用一個DSP器件和一個FPGA實現(xiàn)的高清方案成本效益更高。ASSP無力支持快速改變和不斷發(fā)展的視頻和成像標準。由于可以方便地通過升級來支持更高的分辨率和最新引入的視頻標準,F(xiàn)PGA可以用作視頻方案的通用平臺。
圖3:DSP與用作協(xié)處理器的FPGA一起使用。
FPGA的可重新編程能力也消除了設計過時的風險。ASIC需要較長的開發(fā)時間,基于ASIC的方案不能像FPGA方案那樣方便高效地進行修改。FPGA縮短了上市時間,消除了NRE(非重復工程)成本,可以通過實時改進來支持新興的標準、新的功能要求或?qū)Ω偁幷甙l(fā)布的新功能做出回應。
一個常見的設計挑戰(zhàn)是視頻分配通道受到帶寬限制。如果利用不同的視頻壓縮算法限制數(shù)字域中的可用帶寬,那么在顯示經(jīng)過解碼的數(shù)據(jù)流時將有不同的表現(xiàn)方式。如果提高視頻壓縮器的壓縮比,模塊式CODEC的離散余弦變換將產(chǎn)生馬賽克噪聲或干擾。使用FPGA對視頻數(shù)據(jù)實現(xiàn)預壓縮和后壓縮可使編碼器更容易實現(xiàn)視頻壓縮,并可進一步改進圖像質(zhì)量,降低傳輸帶寬要求。對于有線、衛(wèi)星、電信和IPTV廣播業(yè)務模型來說,由于必須在狹窄的帶寬條件下滿足高質(zhì)量要求,這種功能的意義更為重大。
預處理可在視頻數(shù)據(jù)進入編碼器之前用2D濾波平滑掉一些高頻成分,從而降低馬賽克噪聲。2D FIR濾波器和中值濾波器功能可以利用3x3、5x5或7x7恒定系數(shù)矩陣提供靈活和高效的2D FIR濾波實現(xiàn)方式。[!--empirenews.page--]
可編程嵌入式處理器
大部分多媒體產(chǎn)品不僅需要進行信號處理,而且需要使用某種類型的微控制器或處理器來完成指令和控制功能或其它日常任務。對于從最小的消費產(chǎn)品到最大的專業(yè)視頻產(chǎn)品的各類多媒體系統(tǒng),基于FPGA的嵌入式處理器(如Nios II)向設計者提供了靈活地定制各種要求的能力。多媒體系統(tǒng)開發(fā)者面臨的一個重大挑戰(zhàn)是選擇合適的(既不降低性能也不減少功能的)處理器。至今有眾多供應商提供了數(shù)百種型號的處理器,其外圍設備、存儲器接口和性能特性也各不相同。
FPGA嵌入式處理器可以降低BOM和PCB版圖成本。在需要多個處理器的情況,開發(fā)工具將允許用戶創(chuàng)建多處理器系統(tǒng),進而提升系統(tǒng)的性能或把軟件應用分成更簡單的任務??梢葬槍ψ畲笙到y(tǒng)性能或最小邏輯使用率對Nios II內(nèi)核進行優(yōu)化,或者在系統(tǒng)性能和邏輯使用率之間取得平衡。該內(nèi)核可以方便地通過配置實現(xiàn)乘法器、用戶設定的高速緩存、定制指令、硬件調(diào)試邏輯等特性以適應特殊的性能需求。
Nios II嵌入式設計套件(EDS)支持創(chuàng)建定制的多內(nèi)核系統(tǒng)。Nios II處理器與超高密度的FPGA(如Stratix III器件系列產(chǎn)品)相結合可以創(chuàng)建出非常理想的高性能多處理器應用系統(tǒng)。Nios II的典型應用如圖4所示。
圖4:NIOS II嵌入式處理器的典型系統(tǒng)應用。
嵌入式存儲器和外部存儲器接口
存儲器是所有視頻處理應用(如視頻壓縮編碼、2D濾波和縮放)都需要的關鍵構建模塊之一?,F(xiàn)在,由于FPGA提供了眾多的內(nèi)部專用存儲器模塊,因此一個FPGA就可以實現(xiàn)完整的多媒體系統(tǒng)。這些內(nèi)部存儲器模塊包括RAM、ROM、FIFO、雙端口存儲器和移位寄存器。大多數(shù)系統(tǒng)通常需要使用存儲器來滿足各種復雜功能(如通訊、數(shù)字信號處理、電子數(shù)據(jù)處理和控制應用)所需要的不同存儲需求。
Stratix器件中包含的TriMatrix存儲器架構提供了多種不同的存儲器結構,可以實現(xiàn)復雜設計中的各種存儲器功能。在存儲器帶寬不夠充裕時,設計師可以使用較小的M512 RAM模塊實現(xiàn)先入先出(FIFO)和時鐘域緩存功能。M-RAM模塊可以使FPGA滿足大型緩存應用(如知識產(chǎn)權包緩存和系統(tǒng)高速緩存)的需求。M4K模塊非常適合為消費多媒體應用(如數(shù)字電視視頻增強)提供中等規(guī)模的存儲器應用。另外,Stratix器件也支持DDR2和DDR3 SDRAM及RLDRAM等多種類型的外部存儲器。
高速接口
帶有內(nèi)建高速差分接口(如LVDS、RSDS、mini-LVDS和PPDS)的FPGA可直接連接到平板LCD或等離子顯示器。典型的平板顯示器通常會聯(lián)合運用可編程器件和ASSP在把圖像提供給顯示器之前進行視頻質(zhì)量增強。
圖5顯示了一個用FPGA實現(xiàn)視頻處理和顯示屏接口的完整LCD模塊。除了差分接口之外,高端FPGA還帶有其它高速串行接口收發(fā)器。對于專業(yè)視頻應用,串行接口可以是SDI、ASI、PCI Express或Serial Rapid IO。
圖5:使用Cyclone III FPGA的典型LCD模塊。
設計工具
Quartus II軟件等設計入門工具是完成高密度和低成本FPGA設計的最快和最高效途徑。它提供了時序分析、功率分析、增量編譯、用于IO分配的引腳規(guī)劃器和TcL腳本接口。DSP Builder等專用視頻處理工具則可以進一步提高用戶的設計效率。DSP Builder是一種數(shù)字信號處理開發(fā)工具,它在設計入門工具Quartus II和MathWorks公司的MATLAB/Simulink之間架起了連接橋梁。
本文小結
從低成本系列(如Cyclone)到高端Stratix系列的可編程邏輯器件可用于實現(xiàn)各類音視頻產(chǎn)品。內(nèi)建的DSP和存儲器模塊提供了完成這些任務所需要的基本單元。Quartus II、SOPC Builder和DSP Builder等用戶友好的設計工具大大提高了工程設計的效率。圖6給出了FPGA的一個數(shù)字電視應用,其中的FPGA包含有嵌入式處理器、存儲器接口、視頻圖像處理、圖像縮放以及用于平板顯示器(FPD)的屏顯(OSD)和時序控制器(TCON)功能。
圖6:典型的數(shù)字電視框圖。