多媒體應(yīng)用處理器簡稱MAP,,是一種適用于便攜式數(shù)字音視頻設(shè)備的新型嵌入式應(yīng)用處理器。
文中介紹了MAP的主要性能特點,,給出了基于MAP芯片ATJ2135的嵌入式MP3播放器的硬件設(shè)計,、MP3解碼流程、實時操作系統(tǒng)設(shè)計,、系統(tǒng)軟硬件調(diào)試過程等嵌入式系統(tǒng)設(shè)計與實現(xiàn)。
1 引 言
采用 MPEG 標準Layer3算法進行壓縮處理后的文件統(tǒng)稱為MP3文件,,能夠?qū)P3文件進行解碼并還原聲音的系統(tǒng)都可以被稱為MP3播放器,。作為消費類電子產(chǎn)品的代表,,MP3不斷增長的消費要求也促使生產(chǎn)廠家采用更先進的技術(shù)來提高自己產(chǎn)品的競爭力。針對MP3 ,、MP4以及智能手機上的數(shù)字音視頻應(yīng)用,,SOC芯片廠商如國外的SIGMATEL、國內(nèi)的珠海炬力集成電路公司均推出了基于MAP的解決方案,。
MAP,,即Multimedia application processors,是多媒體應(yīng)用處理器的簡稱。它是在低功耗CPU的基礎(chǔ)上擴展音視頻功能和專用接口的超大規(guī)模SOC集成電路,,是一種新型的嵌入式應(yīng)用處理器,。MAP的主要應(yīng)用領(lǐng)域是便攜式消費類電子。MAP要求低功耗,,體積微小,,并具備盡可能高的性能。因此,,許多微電子和IT領(lǐng)域的最新技術(shù)均用到了MAP中,。例如用90和45納米工藝提高速度和集成度,并采用前后臺工作的雙核和多核CPU和DSP提升性能,。
MAP分為全軟件模式與全硬件模式兩種,。全軟件模式采用嵌入式中央處理器加數(shù)字信號處理器,即CPU+DSP,。MAP中的嵌入式CPU作為一個通用的硬件平臺,,運行一個通用的操作系統(tǒng)。MAP中的嵌入式DSP是另一個核心器件,,它的任務(wù)是完成復(fù)雜的高速信息處理,。全硬件模式則采用的是CPU+ASIC,由專用集成電路完成音視頻解碼功能,。
下面給出基于珠海炬力公司的全軟件模式專用SOC多媒體應(yīng)用處理器芯片ATJ2135的用于一款智能玩具的MP3播放器嵌入式系統(tǒng)設(shè)計與實現(xiàn)方案,。
2 MP3系統(tǒng)硬件設(shè)計
播放器核心是炬力的ATJ2135芯片,主要組成包括電源單元,、顯示單元,、鍵盤輸入電路、FM收音機單元,、外部存儲器,、功放及揚聲器單元等。系統(tǒng)總體框圖如圖1,。主控MAP中的嵌入式DSP對MP3文件進行音頻解碼,,解碼后的序列經(jīng)MAP中DAC輸出至功放及揚聲器或耳機。
主控MAP中的嵌入式CPU運行實時操作系統(tǒng)管理包括鍵盤與LCD、文件系統(tǒng),、FM模塊,,并實現(xiàn)MP3的數(shù)據(jù)管理、娛樂游戲,、通信等功能,。
2.1 主控芯片
ATJ2135是真正理想的“一片解決”SOC數(shù)字多媒體處理芯片,為用戶提供了一個非常靈活而且價格適宜的嵌入式音頻解決方案,。選用32位RISC 的MIPS核,,并集成24位嵌入式DSP,構(gòu)成雙核結(jié)構(gòu),。其中DSP用于音頻解碼算法,,CPU用于播放器的操作系統(tǒng)。ATJ2135還集成了時鐘,、內(nèi)部存儲器BROM,,以及SDRAM、鍵盤和YUV2RGB顯示接口,,ADC,、DAC、電源管理PMU,、紅外接口等外圍控制組件,。
2.2電源設(shè)計
合適的低功耗電源是便攜式系統(tǒng)關(guān)鍵設(shè)計之一。本硬件系統(tǒng)平常采用鋰離子充電電池供電,。而在系統(tǒng)與外部PC機交換數(shù)據(jù)時,,系統(tǒng)電源將采用USB供電模式,同時鋰電池將停止供電,。所以電路應(yīng)具有完成電源切換,、穩(wěn)壓及充放電等功能。由于元件工作在降壓模式,,選用了XC62系列穩(wěn)壓芯片XC6206P152M,、XC6219B182MR和RCR3402等器件來實現(xiàn)。
2.3輸入輸出組件
2.3.1 A/D式線控鍵盤接口設(shè)計
為了適應(yīng)MP3應(yīng)用的特殊性,,ATJ2135提供另外一種我們在其他嵌入式應(yīng)用中很少見的鍵盤結(jié)構(gòu)——A/D式線控鍵盤,。這種鍵盤可以進一步減少I/O口的使用數(shù)量.利用串聯(lián)電阻網(wǎng)絡(luò)在不同的按鍵按下時輸出不同的電壓值,然后進行A/D轉(zhuǎn)換求出其對應(yīng)的數(shù)字量,,從而根據(jù)軟件設(shè)定確定是哪一個按鍵按下,。為了減小誤差和提高軟件識別率,分壓電阻應(yīng)采用誤差范圍為1%的高精度電阻,,軟件可以設(shè)定適當(dāng)寬的范圍來區(qū)分每一個按鍵值,。ATJ2135內(nèi)部提供一個4位低分辨率A/D轉(zhuǎn)換器,,可以很方便的配置成線控按鍵模式。
2.3.2 LCD顯示輸出
由于ATJ2135芯片沒有自帶 LCD Controller ,,因此需要選用帶 LCD Controller 的 LCD (液晶屏),。本系統(tǒng)選擇KGM281E0作為液晶顯示屏,。KGM281E0是一個240xRGBx320點陣TFT-LCD顯示模塊,,它可以配置為16位或18位并行數(shù)據(jù)輸入方式,可支持視頻播放,,顯示效果非常出色,。顯示屏的背光驅(qū)動需要較高的電壓,并且要求根據(jù)需要調(diào)節(jié)背光的亮度,,因此就需要一個高效的升壓電路來實現(xiàn)這一功能,,為此ATJ2135提供了一個背光控制,它可以按照軟件的設(shè)定值輸出8種不同頻率的脈沖,通過改變輸出頻率值來改變背光亮度,。
2.4系統(tǒng)存儲器
本播放器采用一塊512 M NAND FLASH作為片上存儲單元,,寫入速度較快,具有良好的抗震能力,,體積,、重量較小,尤其適合便攜式系統(tǒng)的要求,。另外本系統(tǒng)還集成了SD卡插槽以方便用戶升級存儲空間,。Flash芯片采用Hynix的HY27UT084G NAND Flash Memory,其工作電壓為1.8或3.3伏,。而為了提高系統(tǒng)運行速度,,適應(yīng)視頻播放及游戲時的數(shù)據(jù)處理,還擴展有外部SDRAM存儲芯片,。存儲器接口方式采三總線連接方式,。
3 系統(tǒng)軟件設(shè)計
3.1 MP3解碼流程
MP3采用了較為復(fù)雜的比特流結(jié)構(gòu),所有MPEG的比特流都被分割成了單獨的幀,。對于MPEG圖2音頻,,每秒都傳送固定數(shù)目的幀,也就是說,,當(dāng)比特率和采樣率固定時,,每一幀具有相同的大小,并攜帶有相同數(shù)目的樣本,。解碼算法由嵌入式DSP軟件實現(xiàn),,流程如圖2所示。
3.2嵌入式實時操作系統(tǒng)設(shè)計
ATJ2135采用μCOS-Ⅱ操作系統(tǒng)進行軟件移植設(shè)計,。μCOS-Ⅱ是一個源代碼公開的嵌入式實時操作系統(tǒng),,具有小內(nèi)核,、多任務(wù)、豐富的系統(tǒng)服務(wù),、容易使用等特點并且非常穩(wěn)定,、可靠。而由于其極小的內(nèi)核,,就特別適用于對程序代碼存儲空間要求極其敏感的嵌入式MP3應(yīng)用系統(tǒng)開發(fā),。本系統(tǒng)采用可剝奪型多任務(wù)內(nèi)核,其任務(wù)層設(shè)計及任務(wù)流程如圖3所示,。
3.3 嵌入式系統(tǒng)軟件編譯與調(diào)試
系統(tǒng)所采用ATJ2135的嵌入式開發(fā)工具為cygwin,。cygwin軟件是cygnus solution公司開發(fā)的,是一個在Windows平臺運行的Unix模擬環(huán)境,。其中,,USDK13O 提供最主要的調(diào)試手段。它需要在調(diào)試的代碼段添加打印語句,,而運行則是觀察超級終端上的打印輸出,,以此來診斷程序是否符合設(shè)計邏輯。通過打印輸出來調(diào)試程序是一種簡單實用的調(diào)試手段,。它可以在不打斷系統(tǒng)運行的情況下獲知其運行過程,。超級終端提供日志功能,只要點擊傳送菜單下的捕獲文字項,,然后設(shè)置日志所在的目錄,,這樣輸出的所有信息都將記錄在日志文件中,便于后續(xù)的分析和查找,。當(dāng)程序存在設(shè)計或編碼的缺陷時,,系統(tǒng)運行會崩潰,并在終端輸出異常信息,。此時可以將異常出現(xiàn)的地址比對 USDK130 提供的空間分配表來查找導(dǎo)致異常的模塊,,然后可以找到該模塊對應(yīng)的 IST 文件來定位錯誤所在的位置,從而完成調(diào)試過程,。
3.4固件生成
軟件編譯和調(diào)試完成后,,會生成一些*.app應(yīng)用程序和*.drv驅(qū)動文件,應(yīng)該將這些文件打包,,生成后綴為fwu的固件文件,,借助于量產(chǎn)工具下載到嵌入式Mp3裸機上。
4 系統(tǒng)調(diào)試
由于嵌入式MP3對信號要求較高,,在布線時要充分考慮外界信號的干擾,,因此將PCB采用四層板。PCB 板的布局按照功能模塊分區(qū),,把模擬信號與數(shù)字電路及噪聲源部分(如 DC-DC 等)合理地分開,,使相互間的信號耦合為最小,,盡量減少相互之間的交叉。電源走線應(yīng)盡量做到由小電流到大電流最后到供電電源的負極(地)和正極處,。電源走線應(yīng)注意線徑,,信號線從起點到終點應(yīng)保持同一線寬,不要有粗細變化,。
在整機電流正常的情況下,,測量關(guān)鍵點電壓,一切正常后才可將樣機接電腦,。若電路正常,,PC操作系統(tǒng)應(yīng)該會提示發(fā)現(xiàn)新的硬件設(shè)備,,此時用量產(chǎn)工具打開固件文件將固件下載到系統(tǒng)中,,然后對各個功能進行逐個測試,對發(fā)現(xiàn)的問題加以糾正,。
5 結(jié)束語
本文給出了基于多媒體應(yīng)用處理器SOC芯片ATJ2135實現(xiàn)MP3播放器的嵌入式應(yīng)用,。該MP3被用于一款智能玩具中,表現(xiàn)出了強大的功能與優(yōu)異的性能,。ATJ2135的全軟件工作模式使得該MP3播放器只需將嵌入式DSP執(zhí)行的音頻解碼算法調(diào)整為視音頻解碼算法就可以迅速變身為MP4,,而不需要改動硬件結(jié)構(gòu)。而針對實時操作系統(tǒng)的改動也是同樣的,。這樣就為屬于消費類電子的便攜式數(shù)字音視頻設(shè)備快速升級換代以適應(yīng)市場需求變化提供了保證,。本款產(chǎn)品已于07年投入生產(chǎn)并產(chǎn)生經(jīng)濟效益約一百萬元。
本文作者創(chuàng)新點:
通過嵌入式MP3播放器的MAP應(yīng)用設(shè)計實踐可以表明嵌入式MP3設(shè)計比較好的結(jié)構(gòu)是采用CPU+DSP,,即在MAP的嵌入式CPU上安裝實時操作系統(tǒng)運行應(yīng)用程序并處理用戶數(shù)據(jù),,利用嵌入式DSP中的軟件算法對付各類格式繁雜的視音頻信號,可以獲得強大的性能并能很容易進行產(chǎn)品的升級換代,。