采用OMAP3的視頻解碼器的通用解碼方案介紹
④程序結構的考慮。DSP的片內內存速度最快,但是非常有限,所以必須將片外的數據倒入內存。由于目前的編碼方式全都是采用基于宏塊的,每個(gè)宏塊至多16×16,所以比較通用的辦法是采用,DMA方式將要用到的數據提前倒入片內。DMA傳送速度很快,所以可以并行也可以串行傳送。本文引用地址:http://dyxdggzs.com/article/148968.htm
?、蒈浖铀俚目紤]??梢苑抡誌MGLIB的編寫(xiě)規則用匯編語(yǔ)言對耗時(shí)最多的部分進(jìn)行重寫(xiě),同時(shí)結合TI公司的數據手冊進(jìn)行C語(yǔ)言級以及匯編級的程序優(yōu)化。由于TI公司編譯器的編譯效率一直在提高,從通用及可讀性的角度上講,推薦采用C語(yǔ)言。
3 實(shí)時(shí)視頻解碼在OMAP上的軟件實(shí)現
在OMAP上開(kāi)發(fā)程序通常分為兩部分:ARM端負責控制、顯示等;DSP端負責數據處理。采用TI公司提供的DSP開(kāi)發(fā)工具CCS在這兩端分別開(kāi)發(fā),視頻解碼流程如圖2所示。

ARM端:初始化整個(gè)OMAP3530芯片,包括ARM、DSP、TC等的時(shí)鐘設置,DSP的開(kāi)啟關(guān)閉以及復位,LCD、定時(shí)器等各個(gè)外設的初始化。在啟動(dòng)完成后,ARM內核就一直查詢(xún)共享內存中的某一標志位,當查詢(xún)到一幀解碼結束時(shí),就啟動(dòng)LCD專(zhuān)用DMA,在LCD上進(jìn)行顯示。
DSP端:負責壓縮的解碼。將壓縮碼流放置在SDRAM中。與基于PC的解碼程序的主要區別在于,由于DSP的片內內存有限,所以不可能將當前幀以及參考幀都放在片內,所以以宏塊為單位在SDRAM與片內內存之間進(jìn)行數據傳遞。另外,由于在液晶屏上顯示時(shí)需要轉換成RGB圖像,所以,在每一幀結束后都要通過(guò)YUV轉RGB來(lái)實(shí)現實(shí)時(shí)顯示。
4 實(shí)驗結果
在0MAP3530平臺上實(shí)現了AVS解碼,表4給出了OMAP3530上的實(shí)驗數據。

結語(yǔ)
TI公司提出的0MAP體系結構開(kāi)放性好,在這種體系結構下編寫(xiě)的程序移植方便,適合于多媒體平臺的應用。越來(lái)越多的廠(chǎng)商選用OMAP芯片作為移動(dòng)多媒體視頻的載體,OMAP與流行的視頻標準的結合在移動(dòng)通信與多媒體信號處理方面也將有良好的應用前景。
評論