《電子技術(shù)應用》
您所在的位置:首頁 > 可編程邏輯 > 業(yè)界動態(tài) > 基于OMAP5910的移動媒體播放機設計

基于OMAP5910的移動媒體播放機設計

《電子技術(shù)應用》2007年第2期
2007-12-05
作者:張 石,,常 皓,,佘黎煌,,王艷

摘? 要:一種基于TI雙核處理器OMAP5910,、采用嵌入式LINUX操作系統(tǒng)設計的移動媒體" title="移動媒體">移動媒體播放機,。
關(guān)鍵詞:OMAP5910? 媒體播放機? MP3? MPEG4

?

??? 隨著多媒體和通信技術(shù)的飛速發(fā)展,,人們對多媒體及其視頻應用的需求日益增長,。其中MP3音頻及MPEG4視頻標準已經(jīng)得到廣泛的應用,。研究和開發(fā)一種嵌入式多媒體播放機具有重要的現(xiàn)實意義和實用價值,。
??? OMAP是TI公司近年來提出的面向無線領(lǐng)域和移動媒體的開放式多媒體應用平臺,。它具有獨特的雙核設計,將一個ARM精簡指令處理器和TI C55x高性能,、超低功耗DSP相結(jié)合,,為移動媒體處理提供了強大的動力。目前OMAP處理器被廣泛應用于手持設備,、智能電話及PDA上,。鑒于其對移動媒體的良好支持,OMAP會在3G應用中取得更大的市場份額,。因此,,開發(fā)OMAP平臺的媒體播放機,支持目前主流的MP3,、MPEG4媒體解碼,,對未來在無線通信領(lǐng)域研發(fā)基于OMAP平臺的媒體軟硬件應用具有參考作用。
1 系統(tǒng)設計
??? 目前,,主流媒體文件格式包括AVI,、MOV、RM及WMV等,,其中AVI文件應用最為廣泛,。AVI(Audio Video Interleaved)是一種RIFF(Resource Interchange File Format)文件格式。通常情況下,,一個AVI文件可以包含多個不同類型的媒體流,,典型的情況為MPEG4視頻流加MP3音頻流,。本文介紹一款選擇TI的OMAP 5910平臺設計的媒體播放機,用來播放MP3音頻文件和AVI媒體文件,。
1.1 系統(tǒng)硬件設計
??? 本多媒體播放機以TI OMAP 5910為核心,,通過OMAP 5910集成的總線接口及I/O端口控制器,外擴存儲器,、音頻,、視頻,、通訊和SD卡接口,;通過FPGA擴展了以太網(wǎng)、CF卡接口,;由CPLD進行板級芯片的管理,,使其具備了完整的多媒體播放機的功能。圖1為多媒體播放機的軟硬件結(jié)構(gòu)圖,。

?


1.1.1 存儲器設計
??? 存儲器接口通信控制器(TC)管理的存儲器可分為片外和片內(nèi)兩種,。而TC又有兩個獨立的訪問片外的存儲器接口:
??? (1)快速片外存儲器" title="片外存儲器">片外存儲器接口(EMIFF):與片外SDRAM相連的快速同步接口。在EMIFF接口上,,掛載SDRAM用于運行LINUX操作系統(tǒng),。
??? (2)慢速片外存儲器接口(EMIFS):與片外FLASH、SRAM等存儲器相連的異步接口,。在EMIFS接口上,,分別掛載SRAM和FLASH。
1.1.2 板上CPLD和FPGA設計
??? (1)CPLD,。本系統(tǒng)選用XILINX的95144XL-TQ144作為整個系統(tǒng)的配置,。它負責系統(tǒng)上電后,對OMAP5910進行復位,,對整個板級的器件進行配置,,并作地址譯碼,以給存儲器分配存儲空間,。
??? (2)FPGA,。本系統(tǒng)擴展FPGA主要是為了擴展CF卡和以太網(wǎng)。
????CF卡有多種連接方式,,本設計選擇TRUE IDE方式,,在FPGA中映射出CF卡內(nèi)部相應的寄存器。這樣,,通過控制FPGA內(nèi)部的寄存器產(chǎn)生相應的時序,,寫入CF卡的內(nèi)部控制器,完成相應的操作,。
??? 以太網(wǎng)選用AX88796L芯片,,它具有標準的ISA接口和10Mbps/100Mbps的速度,,通過FPGA進行控制,完全能滿足實際的需求,。
1.1.3 音視頻" title="音視頻">音視頻及人機接口設計
??? (1)LCD顯示,。OMAP 5910內(nèi)部集成了一個TFT LCD控制器,有標準的LCD控制信號,。LCD電源控制,、背光開關(guān)控制、亮度控制,、觸摸屏信號等將由此系統(tǒng)中的CPLD供給,。此設計的集成板選擇的是NEC LCD:NL2432DR22-12B。
??? (2)鍵盤,。出于人機交互的需求,,本系統(tǒng)擴展了3×4的鍵盤。
??? (3)音頻接口,。本系統(tǒng)采用OMAP與TLV320AIC23外部音頻解碼器完成音頻系統(tǒng)的設計,。通過OMAP的兩根I/O線模仿I2C時序來配置音頻芯片,而McBSP1接口用作OMAP對音頻芯片傳輸數(shù)據(jù),。
1.1.4 擴展接口設計" title="接口設計">接口設計
??? (1)存儲卡接口設計,。多媒體播放機需要大數(shù)據(jù)量的存儲設備,此設計選用SD卡,。OMAP 5910內(nèi)部集成了SD卡控制器,,通過對OMAP 5910 SD卡控制器編程,就能完成對SD卡的控制,。
??? (2)USB接口設計,。OMAP 5910內(nèi)部集成了USB Host和USB Function的控制器和接口,方便了USB接口的擴展,。外接PDIUSBP11APW USB收發(fā)器,,將OMAP 5910 USB控制器的信號轉(zhuǎn)換成USB總線的信號。
1.2 系統(tǒng)軟件設計
????軟件系統(tǒng)主要包括MP3,、MPEG4解碼算法" title="解碼算法">解碼算法,,以及使用兩個解碼算法模塊的媒體播放機程序框架。
1.2.1 MP3音頻解碼算法
??? MP3算法是根據(jù)人體心理聲學模型,,利用人耳的掩蔽效應,,去除音頻信號中低于絕對聽閾和掩蔽域的信號,并根據(jù)掩蔽域?qū)κS嘈盘栠M行動態(tài)量化,,結(jié)合子帶編碼,、變換編碼以及哈夫曼編碼等技術(shù),達到大幅縮減音頻文件的大小,同時保證音質(zhì)的目的,。
??? MP3音頻解碼算法是根據(jù)ISO/IEC 11172-3標準編寫的,,并針對TI DSP55x進行部分優(yōu)化。
1.2.2 MPEG4視頻解碼算法
??? MPEG4算法基于對象編碼,,同時更加注重多媒體系統(tǒng)的交互性與靈活性,。基于對象編碼使得對視頻對象的操控成為可能,。MPEG4的一個特點是采用新的,、高效的壓縮算法使壓縮比提高,它可以在速率相對較小的情況下,,獲得高質(zhì)量的畫面效果,。線性MPEG4視頻沒有對象交互的內(nèi)容,僅僅包含需要解碼的視頻流,。
??? MPEG4解碼算法依照ISO/IEC 14496-2編寫,,其中計算過程集中在IDCT、運動補償和VOP重建,,優(yōu)化的重點也放在這三個過程。針對TIDSP55x的特點,,具體優(yōu)化方案如下:
??? (1)使用TI提供的圖像視頻處理庫IMGLIB提高算法性能:獲得了IDCT,、運動補償?shù)人惴▽崿F(xiàn)的最高性能。
??? (2)減少片外存儲器的讀寫:由于DSP對片外存儲器的讀寫速度相對較慢,,因此需要在內(nèi)外部存儲器間建立DMA通道,,由外部存儲器存放解碼幀數(shù)據(jù),再由DMA通道把待解碼宏塊傳送到內(nèi)部存儲器進行高速處理,。
??? (3)優(yōu)化代碼組織:在編寫代碼時,,注意循環(huán)展開、循環(huán)分布以及循環(huán)交換等優(yōu)化技術(shù),,并且針對相應處理器選擇了最優(yōu)的數(shù)據(jù)類型,,使代碼效率達到最高。
1.2.3 媒體播放機軟件設計
??? 媒體播放機軟件設計鑒于OMAP獨特的雙核結(jié)構(gòu)分成MPU端和DSP端兩大部分,。播放機程序就是運行在LINUX操作系統(tǒng)下的一個帶有圖形界面的應用程序,。該應用程序通過調(diào)用DSP設備的驅(qū)動程序,使得MPU與DSP雙方配合完成整個播放功能,。圖2為媒體播放機總體框圖,。

?


(1)MPU端軟件設計
??? 作為MPU的ARM核的任務為:建立底層操作系統(tǒng)和上層與用戶交互的GUI,完成AVI文件數(shù)據(jù)讀取解析以及控制DSP核音視頻解碼,。因此,,可將MPU端軟件工作分為以下幾部分。
??? ①LINUX嵌入式操作系統(tǒng)的移植、設備驅(qū)動的編寫和移植,;
??? ②基于FLTK應用程序圖形用戶界面的設計,。FLTK是一套小型化的多平臺GUI快速開發(fā)工具包,它在LINUX平臺上的移植非常簡便,。使用FLTK開發(fā)的播放機圖形用戶界面如圖3所示,。

?


??? ③AVI文件讀取解析。在用戶選擇某一AVI文件后,,將文件打開,,讀取文件的屬性信息、索引信息及音視頻待解碼數(shù)據(jù)等,,播放完畢后關(guān)閉文件,。
??? ④DSP音視頻解碼的控制。應用程序通過DSP設備驅(qū)動,,啟動DSP核,,開辟與DSP端交互的數(shù)據(jù)緩沖區(qū),建立使用MAILBOX進行的通信機制,。實現(xiàn)了對DSP端解碼進程的控制,。
(2)DSP端軟件設計
??? 在處理器的DSP端,主要負責的工作是對音視頻數(shù)據(jù)的解碼,,并最終完成播放,。這部分主要完成的工作是采用DSP/BIOS和Reference Frameworks 5對音視頻解碼播放進程進行有效組織并完成的同步機制。其中包含的主要模塊為:視頻解碼進程,、音頻解碼進程,、視頻播放進程、音頻播放進程,、音視頻同步控制等,。
1.3 系統(tǒng)關(guān)鍵設計總結(jié)
?? (1)基于TI OMAP5910的移動媒體播放機硬件平臺采用6層PCB設計,模塊完整,,可擴展性強,。
?? (2)參照TI TMS320 DSP ALGORITHMS STANDARD(XDAIS)設計了MP3及MPEG4解碼算法。
?? (3)為TI的OMAP5910處理器移植了嵌入式Linux操作系統(tǒng)及相關(guān)驅(qū)動程序,。
?? (4)設計了基于雙核OMAP5910平臺的媒體播放機軟件系統(tǒng),。該系統(tǒng)中的控制型任務由MPU完成,運算型的工作由DSP處理,,從而最大限度地發(fā)揮了處理器性能,。另外,系統(tǒng)有效組織了存儲器,、DMA通道等資源,,并對程序代碼應用DSP/BIOS和RF5也進行了組織,,使系統(tǒng)的實時性和可靠性得到了保證。
2 測試與結(jié)論
??? 播放機的整體性能選用了四個較有代表性的AVI媒體文件來測試,。測試結(jié)果如表1所示,。

?


??? 從測試結(jié)果看出,對于測試文件1(176×144 128kbps)來說,,音視頻可以流暢播放,,滿足欣賞要求。當視頻尺寸加大時,,由于運算量的加大,,導致視頻流暢度(幀率)下降,同時影響到MP3的實時播放,。對同樣視頻尺寸的文件,,在加大MP3速率時,MP3解碼速度下降,,同樣影響了視頻流暢度,。另外,音視頻同步效果欠佳,。
??? 總體來說,,媒體播放機工作正常,CPU占用率略高,。視頻解碼器性能不是太好,,對于畫面尺寸較大的文件難以實現(xiàn)實時播放。因此,,進一步對解碼模塊進行更細致優(yōu)化非常必要。
參考文獻
[1] 陳 喆,,張福洪.開放式多媒體應用平臺研究[J].杭州電子工業(yè)學院學報,,2002,3:41-44.
[2] International Standard.Information technology coding of?moving pictures and associated audio information:Audio,,1993.ISO/IEC 11172-3.
[3] International Standard.Information technology coding of?audio-visual objects:Visual,1998.ISO/IEC 14496-2.
[4] 鐘玉啄,,王 琪,賀玉文.基于對象的多媒體數(shù)據(jù)壓縮編碼國際標準MPEG-4及其校驗模型[M].北京:科學出版社,,2000.

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點,。轉(zhuǎn)載的所有的文章,、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有,。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認版權(quán)者,。如涉及作品內(nèi)容,、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,,以便迅速采取適當措施,,避免給雙方造成不必要的經(jīng)濟損失。聯(lián)系電話:010-82306118,;郵箱:aet@chinaaet.com,。