關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > 基于晶心科技N903A處理器的MP3解決方案與Andes平臺的MP3移植

        基于晶心科技N903A處理器的MP3解決方案與Andes平臺的MP3移植

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

        1.MP3簡介

        MPEG-1 Audio Layer3(簡稱MP3)是一種有損音頻編碼方式,它利用掩蔽效應(一種心理聲學模型),將脈沖編碼調制(Pulse Code Modulation)音頻數據中人耳聽覺系統無法察覺的那部分數據去掉,使得MP3能夠在音質丟失很小的情況下把音樂文件壓縮到很小的程度(1:10 甚至 1:12 的壓縮率)。因為其體積小、音質高的特點,MP3已經成為當今最為流行的音頻格式。madplay是目前使用較為廣泛的一種MP3的解碼器,下面將詳細介紹如何使用Andes提供的AndeSight集成開發工具將madplay移植到Andes平臺。

        2.環境及軟件介紹

        2.1系統環境:

        Linux:Fedora 8。

        2.2開發環境:

        AndeSight v1.4。

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

        AndeSight IDE為工程師提供了各種友好的界面,包括對嵌入式工程做編輯,編譯,運行,調試或者評測等等操作。

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

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

        nds32工具集提供了一套在Andes平臺上開發嵌入式應用程序所需要的標準工具,例如編譯器、調試器、鏈接器等。

        2.3交叉編譯器:

        nds32le-linux-gcc。

        nds32工具集中對應不同的Andes Core型號,不同的系統函數庫以及大小端形式等條件,提供了各種對應的交叉編譯器。這里我們選用nds32le-linux-gcc。

        2.4軟件包:

        除了源碼外,madplay還需要MP3的解碼庫libmad,以及zlib和libid3tag來正確的讀取MP3頭段信息。這四個軟件包都可以在開源網站上獲得。其中,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/獲取。



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 洪洞县| 郴州市| 霍邱县| 清苑县| 吴堡县| 衢州市| 台湾省| 孝感市| 英超| 晋州市| 凤台县| 盐源县| 巍山| 寿阳县| 遵义市| 马关县| 大邑县| 中卫市| 千阳县| 惠东县| 遵义市| 余干县| 依安县| 新沂市| 通榆县| 迁安市| 凤翔县| 南阳市| 城市| 巴马| 武夷山市| 屏东市| 岚皋县| 缙云县| 伽师县| 泊头市| 武夷山市| 宝丰县| 惠东县| 平远县| 岑溪市|