用定制DSP設(shè)計(jì)MPEG-4無(wú)線視頻產(chǎn)品
這樣得到的工作平臺(tái)與基準(zhǔn)平臺(tái)相比,增加了一個(gè)ALU和四個(gè)MPEG-4 DDCU:比特流DDCU、量化/反量化DDCU、半像素DDCU和DCT/IDCT DDCU(見圖2)。在起始平臺(tái)的基礎(chǔ)上添加這些運(yùn)算單元,目的就是在不增大指令存儲(chǔ)或數(shù)據(jù)存儲(chǔ)的前提下,盡可能降低對(duì)時(shí)鐘速率(MHz)的要求。完成這些操作之后,我們得到了這樣一個(gè)用戶應(yīng)用引擎,該引擎可以用帶寬只有18MHz的DSP完成每秒15幀的CIF格式圖像的解碼,同時(shí)還能滿足這種3G無(wú)線視頻應(yīng)用的其他關(guān)鍵要求(低功率、小晶片尺寸以及低時(shí)鐘速率)。
從圖3中可以看出DDCU對(duì)加快整個(gè)應(yīng)用運(yùn)行速度的作用。圖中第一條表示在標(biāo)準(zhǔn)CU構(gòu)成的基準(zhǔn)平臺(tái)上,整個(gè)運(yùn)算時(shí)間在IDCT、運(yùn)動(dòng)補(bǔ)償(MC)以及可變長(zhǎng)度編碼和反量化(VLD/DQnt)這幾種DDCU之間的分布情況。
可以看出,在這幾種DDCU中,MC部分占用時(shí)鐘周期最多。因此我們?cè)诠ぷ髌脚_(tái)上添加了一個(gè)DDCU來(lái)加速半像素內(nèi)插操作,提高M(jìn)C部分的速度。一旦MC部分所占用的時(shí)鐘周期數(shù)大幅降低,VLD/DQnt馬上就上升成為了限制整個(gè)應(yīng)用性能的最主要因素。針對(duì)這一情況,再添加一個(gè)比特流 DDCU和一個(gè)量化/反量化DDCU,又進(jìn)一步提高了性能。這樣,最初的基準(zhǔn)平臺(tái)已經(jīng)經(jīng)過(guò)了兩次組合。此時(shí),再將IDCT DDCU加入其中,整個(gè)應(yīng)用的性能就得到了更大的提高。圖3中的最后一條給出了三次組合后整個(gè)應(yīng)用需要耗費(fèi)的時(shí)鐘周期。
上面介紹的只是一個(gè)典型案例。一般而言,在無(wú)線視頻應(yīng)用的開發(fā)中,按照以上這幾步進(jìn)行操作,我們就可以快速地構(gòu)造一個(gè)優(yōu)化的引擎,為移動(dòng)電話或PDA設(shè)備開發(fā)出收發(fā)MPEG-4視頻信息的功能。更妙的是,在構(gòu)造起這個(gè)引擎的同時(shí)還可以解放一部分處理器資源,使之有余力去支持其他的一些新興功能,比如MP3音頻、網(wǎng)絡(luò)瀏覽,甚至更多。
評(píng)論