伊人大杳蕉在线影院75_一点不卡v中文字幕在线_黄桃AV无码免费一区二区三区_中文字幕人妻互换激情

設(shè)為主頁(yè)  加入收藏
 
·I2S數(shù)字功放IC/內(nèi)置DSP音頻算法功放芯片  ·馬達(dá)驅(qū)動(dòng)IC  ·2.1聲道單芯片D類功放IC  ·內(nèi)置DC/DC升壓模塊的D類功放IC  ·鋰電充電管理IC/快充IC  ·無(wú)線遙控方案  ·直流無(wú)刷電機(jī)驅(qū)動(dòng)芯片
當(dāng)前位置:首頁(yè)->方案設(shè)計(jì)
N903A晶心科技處理器的MP3解決方案與Andes平臺(tái)的MP3移植
文章來(lái)源: 更新時(shí)間:2010/11/20 23:42:00
在線咨詢:
給我發(fā)消息
張代明 3003290139
給我發(fā)消息
姚紅霞 3003214837
給我發(fā)消息
鄢先輝 2850985542
13713728695
 

隨著人們對(duì)于音頻電子產(chǎn)品功能的需求越來(lái)越高,8位及16位MCU逐漸向32位MCU轉(zhuǎn)型已經(jīng)成為市場(chǎng)趨勢(shì)。晶心科技(Andes)作為亞洲首家原創(chuàng)性32位微處理器IP與系統(tǒng)芯片開發(fā)平臺(tái)的設(shè)計(jì)公司,面向32位MCU市場(chǎng)推出了Andes Core N9系列低功耗高性價(jià)比的32位處理器軟硬核IP。基于該系列處理器,晶心科技針對(duì)不同音頻應(yīng)用提供了多種解決方案。其中包括將多種音頻格式的編、解碼器(開源),例如MP3、AAC、WMA、G729等移植到Andes平臺(tái)上。并且利用nds32(基于Andes Core)架構(gòu)的優(yōu)勢(shì)和針對(duì)音頻效能的擴(kuò)展指令集,以及算法上的改進(jìn),對(duì)這些編解碼器做了進(jìn)一步的優(yōu)化,使其不僅占用的空間較小而且具備了較高的運(yùn)行性能。本文以MP3解碼器為例,介紹如何將madplay移植到Andes平臺(tái),以及晶心科技基于N903A處理器提供的MP3解決方案。

 

1.MP3簡(jiǎn)介

MPEG-1 Audio Layer3(簡(jiǎn)稱MP3)是一種有損音頻編碼方式,它利用掩蔽效應(yīng)(一種心理聲學(xué)模型),將脈沖編碼調(diào)制(Pulse Code Modulation)音頻數(shù)據(jù)中人耳聽覺(jué)系統(tǒng)無(wú)法察覺(jué)的那部分?jǐn)?shù)據(jù)去掉,使得MP3能夠在音質(zhì)丟失很小的情況下把音樂(lè)文件壓縮到很小的程度(1:10 甚至 1:12 的壓縮率)。因?yàn)槠潴w積小、音質(zhì)高的特點(diǎn),MP3已經(jīng)成為當(dāng)今最為流行的音頻格式。madplay是目前使用較為廣泛的一種MP3的解碼器,下面將詳細(xì)介紹如何使用Andes提供的AndeSight集成開發(fā)工具將madplay移植到Andes平臺(tái)。

 

2.環(huán)境及軟件介紹

 

2.1系統(tǒng)環(huán)境:

 

Linux:Fedora 8。

 

2.2開發(fā)環(huán)境:

 

AndeSight v1.4。

 

AndeSight是晶心科技提供的一種基于nds32架構(gòu)開發(fā)嵌入式工程的圖形化的集成開發(fā)環(huán)境。主要由AndeSight IDE, AndESLive和nds32工具集3個(gè)部分組成。

 

AndeSight IDE為工程師提供了各種友好的界面,包括對(duì)嵌入式工程做編輯,編譯,運(yùn)行,調(diào)試或者評(píng)測(cè)等等操作。

 

AndESLive提供了基于nds32架構(gòu)的仿真器和一種圖形化的虛擬SoC構(gòu)建模型,它與AndeSight IDE相結(jié)合為用戶提供了一個(gè)虛擬的硬件平臺(tái)。這個(gè)虛擬評(píng)估平臺(tái)提供Andes自行定義ISA的多組系列32位CPU IP以及各種外圍設(shè)備IP,并且支持用戶自定義IP模型。

 

AndESLive配合AndeSight IDE不僅使得SoC設(shè)計(jì)者能在計(jì)劃初期就開始軟件設(shè)計(jì)、偵錯(cuò)、最優(yōu)化等工作,并對(duì)系統(tǒng)架構(gòu)及功能進(jìn)行檢驗(yàn),而且使硬件工程師和軟件工程師具有一樣的能力去制作和修改他們各自的系統(tǒng)模型,可以有效的控制NRE(NonRecurring Engineering)成本,讓軟件工程師在拿到硬件原型之前,即可以進(jìn)行軟件的開發(fā)和優(yōu)化。

 

nds32工具集提供了一套在Andes平臺(tái)上開發(fā)嵌入式應(yīng)用程序所需要的標(biāo)準(zhǔn)工具,例如編譯器、調(diào)試器、鏈接器等。

 

2.3交叉編譯器:

 

nds32le-linux-gcc。

 

nds32工具集中對(duì)應(yīng)不同的Andes Core型號(hào),不同的系統(tǒng)函數(shù)庫(kù)以及大小端形式等條件,提供了各種對(duì)應(yīng)的交叉編譯器。這里我們選用nds32le-linux-gcc。

 

2.4軟件包:

 

除了源碼外,madplay還需要MP3的解碼庫(kù)libmad,以及zlib和libid3tag來(lái)正確的讀取MP3頭段信息。這四個(gè)軟件包都可以在開源網(wǎng)站上獲得。其中,madplay-0.15-1b.tar.gz、libmad-0.15.1b.tar.gz、libid3tag-0.15.1b.tar.gz可以在http://sourceforge.net/project/showfiles.php?group_id=12349獲取,zlib-1.2.4.tar.gz可以在http://zlib.net/獲取。

3.Madplay的移植

 

3.1編譯函數(shù)庫(kù)

 

3.1.1編譯libmad

 

進(jìn)入libmad目錄,首先將如下nds32架構(gòu)的信息加入到配置文件config.sub中(可加到第675行):

nds32*)

basic_machine=nds32-elf

os=-linux

;;

然后依次執(zhí)行:

 

#CC=nds32le-linux-gcc ./configure --prefix=$PREFIX/MP3_Decoder --host=nds32-elf --disable-debugging --disable-shared

#make

#make check

#make install

 

編譯成功后,可以在$PREFIX/MP3_Decoder($PREFIX是用戶設(shè)定的路徑)目錄下的included和lib目錄里找到相應(yīng)的.h文件和.a文件。

 

3.1.2編譯zlib和libid3tag

 

需要先編譯zlib。進(jìn)入zlib目錄后,依次執(zhí)行:

 

#CC=nds32le-linux-gcc ./configure --prefix=$PREFIX/MP3_Decoder

#make

#make install

 

然后編譯libid3tag。先將nds32架構(gòu)信息加入到文件config.sub中(方法同libmad),然后執(zhí)行如下命令,編譯libid3tag時(shí)需要用到編譯zlib生成的頭文件和庫(kù)文件:

 

#CC=nds32le-linux-gcc ./configure --prefix=$PREFIX/MP3_Decoder --disable-debugging --disable-shared CPPFLAGS="-I/tmp/MP3_Decoder/include" LDFLAGS="-L/tmp/MP3_Decoder/lib" --host=nds32-elf

#make

#make install

 

同樣,在編譯成功后libid3tag的相關(guān)文件也保存在$PREFIX/MP3_Decoder目錄下面。

 

3.2在AndeSight中生成madplay

 

在進(jìn)入AndeSight圖形化集成開發(fā)環(huán)境之前,需要先對(duì)madplay源碼中的makefile進(jìn)行配置。首先同樣需要將nds32架構(gòu)信息加入到config.sub文件中,然后執(zhí)行如下配置:

 

#CC=nds32le-linux-gcc ./configure --disable-debugging --disable-shared --host=nds32-elf CPPFLAGS="-I$PREFIX/MP3_Decoder/include -lmad -lid3tag -lz" LDFLAGS="-L$PREFIX/MP3_Decoder/lib" --prefix=/Andestech/AndeSight14/ide/workspace/MP3decoder_madplay

 

接著打開AndeSight v1.4,建立一個(gè)STD C(標(biāo)準(zhǔn)C)工程mp3decoder,并將madplay目錄下的所有文件導(dǎo)入工程中。選擇Project菜單欄選擇Build Project一項(xiàng),成功進(jìn)行編譯和鏈接后,在指定的目錄下就會(huì)生成madplay的可執(zhí)行文件,如圖1所示。這樣madlpay就成功移植到Andes平臺(tái)上了。

 

 

基于晶心科技N903A處理器的MP3解決方案與Andes平臺(tái)的MP3移植(電子工程專輯)
圖1:成功進(jìn)行編譯和鏈接后,在指定的目錄下就會(huì)生成madplay的可執(zhí)行文件。

3.3測(cè)試與驗(yàn)證

 

為了驗(yàn)證移植的正確性,這里我們采用在虛擬的Andes硬件平臺(tái)上運(yùn)行的方式,也就是在AndeSight中通過(guò)AndESLive提供的虛擬SoC平臺(tái)進(jìn)行仿真。這里選用Andes_demo.vep這個(gè)虛擬開發(fā)平臺(tái),它與真實(shí)的Andes demo開發(fā)板是一樣的。

選取一首MP3格式的歌曲“test.mp3”拷貝到工程mp3decoder的目錄下,然后在運(yùn)行視窗的Arguments選項(xiàng)中加入指定輸入文件和輸出的文件的格式:

 

 

基于晶心科技N903A處理器的MP3解決方案與Andes平臺(tái)的MP3移植(電子工程專輯)
圖2:在虛擬SoC平臺(tái)上運(yùn)行madplay。

 

在虛擬開發(fā)平臺(tái)上運(yùn)行madplay。運(yùn)行結(jié)束后,在工程目錄下會(huì)看到“test.wav”文件,如圖2所示。這個(gè)文件可以在Windows Media Player進(jìn)行播放,這樣就驗(yàn)證了madplay移植到Andes平臺(tái)上的正確性。

 

4.晶心科技在MCU層級(jí)的mp3解決方案

 

晶心科技基于Andes Core N903A處理器對(duì)MCU層級(jí)的音頻應(yīng)用提供了全方位的解決方案,包括硬件平臺(tái)和軟件包支持。圖3展示了晶心科技提供的完整的音頻開發(fā)平臺(tái)。

 

--output=wave:PATH1/test.wav PATH2/test.mp3(輸出格式還可以為.pcm)。

 

 

 

基于晶心科技N903A處理器的MP3解決方案與Andes平臺(tái)的MP3移植(電子工程專輯)
圖3:晶心科技提供的音頻開發(fā)平臺(tái)。

 

 

考慮到從8位MCU升級(jí)到32位帶來(lái)的硬件成本的增加,晶心科技推出了N903A低功耗高性價(jià)比的32位處理器。N903A提供了完全可配置的處理器IP核,包括可配置的I/D cache大小,I/D local memory大小,GPR數(shù)量,硬件乘法器等等。這樣,客戶可以根據(jù)自己產(chǎn)品的需求,以最小的硬件成本獲得較8位系統(tǒng)更為優(yōu)化的系統(tǒng)性能。在指令方面,N903A不僅包含了晶心科技自主知識(shí)產(chǎn)權(quán)的一套高效指令集,而且加入了為提高音頻數(shù)據(jù)處理能力而特別設(shè)計(jì)的四十余條音頻擴(kuò)展指令。另外,針對(duì)現(xiàn)有及可預(yù)期未來(lái)的大多數(shù)軟硬件應(yīng)用特性,晶心科技還提供一種16bit/32bit混合指令集形式,在提供功能之余,縮小了程序所需的內(nèi)存空間,從而進(jìn)一步實(shí)現(xiàn)降低成本的效益。

 

軟件方面,晶心科技同樣提供了全方面的支持。包括操作系統(tǒng)、設(shè)備驅(qū)動(dòng)、開發(fā)工具、中間件、函數(shù)庫(kù)以及上層的各種應(yīng)用程序。對(duì)于MP3的編解碼器,晶心科技對(duì)其代碼大小做了進(jìn)一步的優(yōu)化,并利用nds32架構(gòu)的優(yōu)勢(shì)以及音頻擴(kuò)展指令集,使其在Andes平臺(tái)上運(yùn)行的性能達(dá)到很高的水平。以48KHz/128Kbps的MP3歌曲為例,晶心科技優(yōu)化的madplay解碼器正朝著10MHz的工作頻率邁進(jìn)。表1為晶心科技優(yōu)化的MP3編解碼器在N903A處理器上運(yùn)行的結(jié)果。

 

 

 

基于晶心科技N903A處理器的MP3解決方案與Andes平臺(tái)的MP3移植(電子工程專輯)
表1:晶心科技提供的MP3編解碼器數(shù)據(jù)。

 
 
 
    相關(guān)產(chǎn)品  
 
 
·藍(lán)牙音箱的音頻功放/升壓/充電管
·單節(jié)鋰電內(nèi)置升壓音頻功放IC選型
·HT7179 12V升24V內(nèi)置
·5V USB輸入、三節(jié)鋰電升壓型
·網(wǎng)絡(luò)主播聲卡專用耳機(jī)放大IC-H
 
M12269 河北發(fā)電機(jī)組 HT366 ACM8629 HT338 

業(yè)務(wù)洽談:手機(jī):13713728695(微信同號(hào))   QQ:3003207580  EMAIL:panbo@szczkjgs.com   聯(lián)系人:潘波

地址:深圳市寶安西鄉(xiāng)航城大道航城創(chuàng)新創(chuàng)業(yè)園A5棟307/309

版權(quán)所有:深圳市永阜康科技有限公司  備案號(hào):粵ICP備17113496號(hào)