新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于ARM L i nux QT的掌上多媒體系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)

基于ARM L i nux QT的掌上多媒體系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)

作者: 時(shí)間:2009-11-24 來源:網(wǎng)絡(luò) 收藏

2.4 影音錄制
影音錄制的系統(tǒng)框架見圖2。通過擴(kuò)展用于視頻錄制的Philips的視頻解碼芯片SAA7113和ADI的JPEG壓縮芯片來。首先輸入的模擬視頻信號經(jīng)過SAA7113轉(zhuǎn)換為數(shù)字信號,然后傳輸給ADI的JPEG壓縮芯片JPEG2000,壓縮為JPEG圖像信號,并通過擴(kuò)展的總線接口傳輸?shù)较到y(tǒng)上。音頻信號則直接通過音頻輸入接口送到音頻解碼芯片,并轉(zhuǎn)化為數(shù)字信號進(jìn)行編碼。編寫應(yīng)用程序使傳到的音視頻數(shù)字信號一起轉(zhuǎn)化為Motion JPEG編碼的AVI格式的多媒體文件,并存入擴(kuò)展的存儲(chǔ)設(shè)備(微硬盤或者M(jìn)MC/SD卡),這樣就可以被Mplayer播放。

本文引用地址:http://butianyuan.cn/article/152272.htm


3 性能優(yōu)化
盡管9處理器主頻可以高達(dá)200MHz以上,但是為了降低功耗,本系統(tǒng)在保證滿足實(shí)時(shí)播放的前提下,對系統(tǒng)進(jìn)行優(yōu)化。所以,在一個(gè)資源受限的處理器上要多媒體文件的實(shí)時(shí)播放,性能優(yōu)化成為關(guān)鍵。本系統(tǒng)主要通過解碼程序優(yōu)化,打開Cache等措施來提高系統(tǒng)性能。
3.1 對解碼程序的優(yōu)化
由于解碼過程絕大部分是計(jì)算,以MP3音頻文件為例,其解碼過程主要是高精度乘法和矢量運(yùn)算,其中80%的CPU時(shí)間用于數(shù)值計(jì)算,因此對于解碼部分主要采用了以下方法進(jìn)行優(yōu)化:
(1)整數(shù)運(yùn)算。在沒有硬件浮點(diǎn)單元的CPU上,浮點(diǎn)運(yùn)算是仿真方式,因此解碼代碼中應(yīng)直接采用整數(shù)運(yùn)算方式編碼,而避免浮點(diǎn)運(yùn)算;
(2)通過查表方式代替很多運(yùn)算式獲取計(jì)算結(jié)果,對調(diào)用頻繁的小函數(shù)采用inline修飾;
(3)關(guān)鍵代碼采用匯編語言編程,以獲得更高效的目標(biāo)代碼,來提高系統(tǒng)的運(yùn)行性能。
3.2 打開Cache
9處理器帶有獨(dú)立的16 kB數(shù)據(jù)Cache和16 kB的指令Cache。本系統(tǒng)中,打開指令Cache肯定能在一定程度上提高性能。至于數(shù)據(jù)Cache,由于從SD卡或者U盤讀進(jìn)來解碼的數(shù)據(jù)使用完畢后就再也不會(huì)使用了,解碼產(chǎn)生的數(shù)據(jù)也是一樣,使用一次就會(huì)被丟棄,因此數(shù)據(jù)訪問的時(shí)間局限性基本是不存在的。但是,系統(tǒng)在訪問數(shù)據(jù)時(shí)存在很強(qiáng)的空間局限性,所以打開數(shù)據(jù)Cache后可以提高性能,因?yàn)椋?br /> (1)Cache和IDRAM之間通過Burst方式傳遞數(shù)據(jù),提高了總線帶寬,從而降低讀數(shù)據(jù)的延遲。
(2)Cache一次讀128bit或256bit,當(dāng)讀已在Cache中的數(shù)據(jù)時(shí)就會(huì)命中。
(3)通過WriteBuffer或WriteBack方式讀內(nèi)存時(shí),沒有寫DRAM的延遲。
但是這樣也會(huì)帶來數(shù)據(jù)不一致的問題,主要是DMA造成數(shù)據(jù)的不一致,因?yàn)镾D卡或USB的傳輸是通過DMA進(jìn)行的,其傳輸過程無需CPU干預(yù),DMA操作直接訪問內(nèi)存,但不會(huì)跟新Cache和寫緩存相應(yīng)的內(nèi)容,這樣就造成了數(shù)據(jù)的不一致,可用以下方法解決:
(1)將SD卡或USB和CPU共享的控制數(shù)據(jù)空間設(shè)置為uncachable,否則無法保證CPU讀到的Cache中的數(shù)據(jù)是最新數(shù)據(jù),從而可能造成系統(tǒng)運(yùn)行錯(cuò)誤。
(2)SD卡或USB輸入模塊通過DMA像主存?zhèn)鬏斘募?shù)據(jù)時(shí),寫數(shù)據(jù)的緩沖區(qū)是由文件系統(tǒng)提供的。該緩沖區(qū)的特點(diǎn)是存儲(chǔ)空間比較大而且是順序訪問的,可將其設(shè)置為cachable。
經(jīng)過上述方法的優(yōu)化以后,系統(tǒng)性能得到了大幅度的提高。經(jīng)過測試表明,優(yōu)化后解碼所需的時(shí)間為優(yōu)化前的15%左右,均小于正常播放所需的時(shí)間,完全滿足實(shí)時(shí)播放的要求。


4 結(jié)束語
本系統(tǒng)以9處理器為核心建立嵌入式,并在其上移植Mplayer播放器,擴(kuò)展其功能,使mpeg-1、mpeg-2、avi等視頻格式以及MP3、WMA等音頻格式都能在其上流暢地播放,并了影音錄制功能。在測試中各模塊工作正常,達(dá)到了能全屏播放視頻,流暢播放音頻,能夠?qū)z像頭拍到的視頻傳送到Mplayer進(jìn)行播放,能讀取外接U盤或者SD卡中的多媒體文件進(jìn)行播放,能從網(wǎng)絡(luò)下載多媒體文件到擴(kuò)展存儲(chǔ)設(shè)備被Mplayer播放的要求。隨著多媒體技術(shù)的廣泛應(yīng)用,多功能媒體播放器會(huì)有更廣闊的應(yīng)用前景。


上一頁 1 2 3 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉