用定制DSP設計MPEG-4無線視頻產品
MPEG-4是一種新興的視頻標準,其彈性糾錯能力和可支持小屏幕的特性使之在移動通信市場上受到廣泛關注,幾乎所有移動電話生產商和PDA開發(fā)商都對其表示出極大的興趣。然而這種視頻標準對處理器的要求卻非常高。在整個移動通信結構中,僅MPEG-4處理器這一部分就會毫不客氣地吞掉大量的資源。因而要想真正實現無線視頻應用這一夢想,首先就必須解決MPEG-4信號處理問題。
工程師們已經嘗試過采用固定編碼邏輯和通用型DSP來完成這一龐然大物般的MPEG-4處理,但結果均不理想。固定編碼邏輯雖然能夠提供較高的性能,但設計和實現所需的時間太長,而且得到的設計結果不夠靈活,無法滿足將來修改的需要。而通用可編程數字信號處理器(DSP)盡管很適合有限沖擊響應(FIR)濾波和其他一些MAC密集的應用,但對于可變長度解碼和離散余弦變換等視頻編解碼中固有的算法卻又無法有效實現。
那么怎樣才能設計出滿足要求的處理器呢?本文給出了一種方案:采用定制DSP。工程師們可以利用數字DSP IP核并結合一些新的設計方法,設計一種用戶化的引擎來完成所需的MPEG-4功能,從而將無線視頻應用變?yōu)楝F實。
本方案的第一步,要開發(fā)一種應用軟件來執(zhí)行MPEG-4視頻標準,然后對該軟件進行優(yōu)化和校驗,以保證其滿足MPEG-4視頻標準的要求。第二步,在這個應用軟件得到優(yōu)化之后,將其編譯至一個通用型DSP引擎,仔細分析它在應用中可能出現的性能瓶頸。通過分析,構造一組由設計者定義的計算單元(DDCU),有針對性地解決應用中的計算瓶頸問題。這組DDCU構成一個庫,利用這個庫,設計者可以為不同的產品和產品域創(chuàng)建不同的用戶應用DSP引擎。例如,在一個支持QCIF(四分之一普通接口格式)和CIF幀格式的PDA中,可以通過簡單等級(SP)和高級簡單等級(ASP)創(chuàng)建一個簡單的定制 DSP來實現低速編解碼。
此外,通過恰當的設計規(guī)劃,設計者還可以使引擎的性能剛好滿足目標產品的要求——例如針對CIF格式設計出幀處理速度為每秒15幀的 DSP引擎——這樣就能降低對時鐘速率、指令長度和存儲映像的要求,從而實現低功率和低成本。但是若想支持更大尺寸的幀并支持高級分析,就需要創(chuàng)建一種性能更高的DSP引擎。這種DSP引擎內部并行度更高,可用資源量更大,因而運行速度也更快。
最后一步,將定制DSP融入多處理器內核,通過兩者的共同作用來達到進一步規(guī)劃高端應用性能的目的。在當今的通信行業(yè)中,產品推向市場的速度越來越快,以上談到的方法和工具恰好為快速分析和創(chuàng)建定制DSP從而加快產品設計提供了一種較好的方案。
下面讓我們看看定制DSP是如何創(chuàng)建的。
可定制的VLIW(超長指令字)引擎
引擎指一組資源的集合,通過對這種資源編程,可以使之以某種給定的順序實現一系列操作。通常,設計中最主要的處理工作是由數據通道資源-即我們所說的計算單元-來完成的。
計算單元可以對其輸入進行一系列操作,并輸出一個或多個計算結果。RISC(精簡指令集計算機)和DSP是兩種由計算單元組成的處理器。其中,RISC處理器每次(每時鐘周期)只能執(zhí)行一個操作,而典型的多媒體和DSP應用卻可以在每個時鐘周期內執(zhí)行多項操作。這是因為大部分這種高級DSP 的結構都具有某種形式的指令級并行處理能力。
本文給出的方案中,針對MPEG-4應用而設計的DSP引擎能夠達到固定編碼邏輯和通用型DSP都無法達到的性能。該引擎之所以如此成功,主要原因之一就是采用了VLIW結構。VLIW是一種非常適合多媒體應用的結構。它支持指令級并行性,這就使得采用它的DSP引擎可以在單時鐘周期內執(zhí)行多項操作。不但如此,它還支持應用程序編譯過程中的并行性,這又避免了為龐大的視頻處理耗費過長的運行時間或增加過大的晶片體積。與VLIW類似的超標量體系結構也具備這一特性。
評論