當(dāng)前位置:首頁(yè) > 模擬 > 模擬
[導(dǎo)讀] MPEG(活動(dòng)圖像專(zhuān)家小組)是ISO/IEC組織的一個(gè)工作小組,負(fù)責(zé)制訂有關(guān)活動(dòng)圖像、音頻及其組合的壓縮和解壓縮處理等方面的技術(shù)標(biāo)準(zhǔn)。MPEG-1 Layer3(即MP3)是MPEG-1國(guó)際音頻標(biāo)準(zhǔn)(ISO/IEC 11172)中的第三層編、解碼算法

 MPEG(活動(dòng)圖像專(zhuān)家小組)是ISO/IEC組織的一個(gè)工作小組,負(fù)責(zé)制訂有關(guān)活動(dòng)圖像、音頻及其組合的壓縮和解壓縮處理等方面的技術(shù)標(biāo)準(zhǔn)。MPEG-1 Layer3(即MP3)是MPEG-1國(guó)際音頻標(biāo)準(zhǔn)(ISO/IEC 11172)中的第三層編、解碼算法,它具有壓縮比高、聲音還原質(zhì)量好、算法復(fù)雜度適中等優(yōu)點(diǎn),采用這種標(biāo)準(zhǔn)制作的MP3格式的音樂(lè)在數(shù)字音頻的存儲(chǔ)、互聯(lián)網(wǎng)上的多媒體音頻傳輸?shù)阮I(lǐng)域得到了廣泛應(yīng)用。

目前基于專(zhuān)用芯片的音頻編解碼方案軟件升級(jí)靈活性不高,基于DSP的音頻編解碼方案又多基于C54x平臺(tái),而解決低功耗的技術(shù)方法是值得研究的問(wèn)題。

基于上述背景,文中提出了基于DSP的音頻解碼系統(tǒng)的研究與實(shí)現(xiàn)這一解決方案。本課題的主要目的是:以TI公司的C5000系列通用型DSP芯片TMS320VC5509為核心,完成系統(tǒng)硬件平臺(tái)的設(shè)計(jì)以及MP3的解碼算法在該硬件平臺(tái)上的實(shí)現(xiàn)。整個(gè)系統(tǒng)的硬件平臺(tái)包括DSP核心模塊、FLA SH存儲(chǔ)器、音頻CODEC,電源等模塊。該系統(tǒng)通過(guò)USB接口與計(jì)算機(jī)通信,下載MP3格式的數(shù)據(jù)流,并將其存儲(chǔ)在Flash中,然后由DSP讀取Flash中的MP3數(shù)據(jù)流,完成解碼工作,并通過(guò)CODEC播放。同時(shí)可以對(duì)DSP進(jìn)行其他解碼算法的軟件編程,實(shí)現(xiàn)多種數(shù)據(jù)流格式的音頻解碼,具有很強(qiáng)的軟件升級(jí)靈活性,還解決了低功耗的問(wèn)題。

1 硬件平臺(tái)的總體設(shè)計(jì)

目前業(yè)界對(duì)MP3解碼系統(tǒng)的解決辦法有兩個(gè)方案:一是使用將解碼算法固化到集成電路中去的專(zhuān)用芯片,這些芯片將一些片外資源集成到芯片內(nèi)部,可以簡(jiǎn)化MP3解碼系統(tǒng)實(shí)現(xiàn)所需的片外電路,便于整個(gè)系統(tǒng)的開(kāi)發(fā),但由于其算法固化到芯片內(nèi)部,不能通過(guò)軟件升級(jí),而且此類(lèi)芯片普遍價(jià)格偏高。另外一個(gè)方案,就是使用通用的DSP來(lái)實(shí)現(xiàn)MP3解碼系統(tǒng),這種解決方案對(duì)設(shè)計(jì)人員的軟硬件技能提出了很高的要求,不過(guò)其有很好的升級(jí)特性,而且可以更方便的改進(jìn)和優(yōu)化解碼算法,從而得到更好的音質(zhì)回放效果,并且和第一種解決方案一樣,其功耗比較低。

綜合各方面的優(yōu)劣條件,我們選擇了第二種解決方案,即基于通用DSP芯片來(lái)實(shí)現(xiàn)整個(gè)解碼系統(tǒng)的硬件平臺(tái)。其硬件系統(tǒng)實(shí)現(xiàn)框圖如圖1所示。

這個(gè)框圖大致的畫(huà)出了解碼系統(tǒng)的基本組成部分。在圖中,我們采用了512 k的串行EEPROM芯片用于實(shí)現(xiàn)bootloader,用CF卡存儲(chǔ)MP3音樂(lè)及解碼程序。核心的處理器采用了TI公司的TMS320VC5509 DSP芯片,考慮到其內(nèi)部的RAM容量有256 kB,而我們的程序大小為80 kB,因此我們?cè)诖嗽O(shè)計(jì)中沒(méi)有外擴(kuò)RAM。

整個(gè)硬件平臺(tái)的工作流程如下:首先通過(guò)USB接口,從PC機(jī)中復(fù)制MP3音樂(lè),拷貝在大容量CF卡中。然后DSP讀取CF卡的MP3數(shù)據(jù)進(jìn)行解碼,還原出PCM信號(hào),再通過(guò)DSP的多通道帶緩沖串口(McBSP)傳送給音頻CODEC芯片,最終播放出MP3音樂(lè)。

1.1 硬件平臺(tái)的具體實(shí)現(xiàn)

1.1.1 核心DSP芯片介紹

本方案采用的x系列是TI公司推出的繼C5000系列C5x、C54x后的新型產(chǎn)品。它采用了增強(qiáng)型的哈佛結(jié)構(gòu),具有專(zhuān)門(mén)的硬件乘法器,使用流水線(xiàn)操作,提供特殊的DSP指令,可用來(lái)快速地實(shí)現(xiàn)各種數(shù)字信號(hào)處理算法。為方便實(shí)際中的應(yīng)用,C55X系列DSP具有各自不同的硬件結(jié)構(gòu),如在片存儲(chǔ)器和片上外設(shè)等,可根據(jù)性?xún)r(jià)比和不同的應(yīng)用場(chǎng)合靈活選用。由于采用了高度并行硬件結(jié)構(gòu)、模塊化設(shè)計(jì),使得C55X系列DSP具有功耗低、速度快等優(yōu)點(diǎn)。主要用在音頻壓縮、無(wú)線(xiàn)通訊等領(lǐng)域。

與5000系列其他芯片相比,TMS320VC5509以其獨(dú)有高性能低功耗和低價(jià)格特性,使得一推出就受到業(yè)內(nèi)用戶(hù)的歡迎。

1.1.2 與計(jì)算機(jī)的接口設(shè)計(jì)

與計(jì)算機(jī)的接口設(shè)計(jì)使用的是當(dāng)今十分流行的USB接口,實(shí)現(xiàn)從計(jì)算機(jī)下載數(shù)據(jù),5509自帶的USB接口完全符合USB2.0全速接口標(biāo)準(zhǔn),可與任何外部微控制器實(shí)現(xiàn)高速并行接口(12M比特/秒)。

1.1.3 存儲(chǔ)器設(shè)計(jì)

CF卡被用來(lái)存儲(chǔ)音樂(lè)和數(shù)據(jù)文件,它通過(guò)DSP的外部存儲(chǔ)器接口(EMIF)與DSP相連,它丁作在True—IDE模式和3.3 V的電壓下。我們可以根據(jù)系統(tǒng)需要選擇任意容量的CF卡。選用Microchip Tethnology公司的64 kB的EEPROM 24LC512存放的是啟動(dòng)程序,每當(dāng)上電時(shí),即將CF卡中的程序調(diào)入內(nèi)存運(yùn)行。

24LC512與DSP的接口采用I2C總線(xiàn)通信。I2C(Inter—Integrated Circuit)總線(xiàn)是一種由PHILIPS公司開(kāi)發(fā)的兩線(xiàn)式串行總線(xiàn),用于連接微控制器及其外圍設(shè)備。I2C總線(xiàn)是由數(shù)據(jù)線(xiàn)SDA和時(shí)鐘線(xiàn)SCL構(gòu)成的串行總線(xiàn),可發(fā)送和接收數(shù)據(jù)。存CPU與被控IC之間、IC與IC之間進(jìn)行雙向傳送,最高傳送速率100 kbps。各種被控制電路均并聯(lián)在這條總線(xiàn)上,但就像電話(huà)機(jī)一樣只有撥通各自的號(hào)碼才能工作,所以每個(gè)電路和模塊都有唯一的地址,在信息的傳輸過(guò)程中,I2C總線(xiàn)上并接的每一模塊電路既是主控器(或被控器),又是發(fā)送器(或接收器),這取決于它所要完成的功能。CPU發(fā)出的控制信號(hào)分為地址碼和控制量?jī)刹糠?,地址碼用來(lái)選址,即接通需要控制的電路,確定控制的種類(lèi);控制量決定該調(diào)整的類(lèi)別(如音量等)及需要調(diào)整的量。這樣,各控制電路雖然掛在同一條總線(xiàn)上,卻彼此獨(dú)立,互不相關(guān)。其時(shí)序圖如圖4所示。

1.1.4 音頻解碼接口設(shè)計(jì)

音頻CODEC芯片采用的是TI公司的。它的主要作用是將DSP解碼后的PCM音頻流通過(guò)D/A變換,轉(zhuǎn)換成模擬聲音信號(hào)進(jìn)行播放。

TLV320AIC23 DSP Codec是德州儀器公司2001年推出的高性能單片立體聲編碼解碼器,數(shù)據(jù)轉(zhuǎn)換字長(zhǎng)16/20/24/32可選,工作電壓與xDSP的核心和I/O電樂(lè)兼容,可實(shí)現(xiàn)與C55x DSP串行口的無(wú)縫連接,功耗很低,帶有的I2C和SPI總線(xiàn)兼容控制接口能使AIC23編碼譯碼器與其他微處理器共同使用。

其主要特點(diǎn)如下:

1)高性能立體聲編碼解碼器:支持8~96 kHz采樣頻率,90DB ADC,100DB DAC轉(zhuǎn)換信噪比,1.42~3.6 V內(nèi)核數(shù)字供電電壓,2.7~3.6 V模擬供電電壓均與C55x DSP兼容。

2)可編程多種串行口數(shù)據(jù)傳輸標(biāo)準(zhǔn):支持I2C和SPI串口數(shù)據(jù)傳輸模式,均可以與C55x DSP的McBSP口兼容。

3)內(nèi)置放大的立體聲輸入輸出(增益可調(diào)節(jié)),耳機(jī)放大模塊輸出((30mW)。

4)低功耗電源管理:錄音重放模式下19 mW,備用狀態(tài)小于150 uW,停止?fàn)顟B(tài)小于15 uW。

音頻CODEC與DSP的硬件接口電路如圖5所示。

由上圖我們可以看出,DSP VC5509與AIC23的接口可分成兩部分:控制接口部分(MeBSP1)和音頻數(shù)據(jù)接口部分(MeBSP0)。其中DSP的McBSP1口完成AIC23的控制部分功能,此控制口配置為常用的SPI接口模式;而McBSP0口完成音頻數(shù)據(jù)的傳輸功能,此數(shù)據(jù)口配置為DSP格式。

AIC23的數(shù)字音頻接口支持4種數(shù)據(jù)格式:Right—Justified;Left—Justified;I2S格式;DSP格式??刂平涌诘腟PI模式時(shí)序以及數(shù)字音頻接口的DSP模式時(shí)序分別如圖6和圖7所示。

1.1.5 電源模塊設(shè)計(jì)

在電源模塊中,我們選用了TI公司的三款芯片,分別是TPS61103,TPS60500,TPS73601。其中TPS61103用于將電池輸入的1到3 V電壓轉(zhuǎn)換為固定的3.3 V,它為DSP的I/O及其他外設(shè)供電。TPS60500用于將3.3 V轉(zhuǎn)換為DSP需要的內(nèi)核電壓1.6 V。此系統(tǒng)當(dāng)通過(guò)USB接口與計(jì)算機(jī)相連時(shí),就可以通過(guò)適當(dāng)?shù)奶€(xiàn)設(shè)置不用接電池,TPS73601用于將USB接口提供的5V電壓轉(zhuǎn)換為3.3V。

2 軟件研究及算法實(shí)現(xiàn)

2.1 文件系統(tǒng)的實(shí)現(xiàn)

由于實(shí)現(xiàn)了FAT32文件系統(tǒng),因此當(dāng)此系統(tǒng)通過(guò)USB連接到PC機(jī)時(shí),在Windows操作系統(tǒng)下將看到它作為一個(gè)獨(dú)立的存儲(chǔ)器出現(xiàn),可是通過(guò)復(fù)制粘貼操作將音樂(lè)文件拷貝到CF卡上。

2.2 MP3解碼算法的實(shí)現(xiàn)

本方案進(jìn)行軟件的開(kāi)發(fā)平臺(tái)是TI公司的C5000系列的集成開(kāi)發(fā)環(huán)境Code Composer Studio 2.0??紤]到MP3解碼軟件的復(fù)雜度和可讀性,整個(gè)解碼軟件采用DSP的C語(yǔ)言編寫(xiě)。DSP的C語(yǔ)言具有與標(biāo)準(zhǔn)ANSI C語(yǔ)言相同的語(yǔ)法特點(diǎn),同時(shí)還和DSP硬件相結(jié)合,能夠直接控制DSP的在片或外圍設(shè)備資源。隨著數(shù)字信號(hào)處理技術(shù)的不斷發(fā)展,DSP的C語(yǔ)言編譯器的編譯效率也越來(lái)越高,5000系列的C語(yǔ)言編譯器效率能達(dá)到

60%~70%,C6x系列的編譯器效率高達(dá)80%。因此采用C語(yǔ)言來(lái)對(duì)DSP進(jìn)行編程是必然的趨勢(shì)。

本方案在LIBMAD的基礎(chǔ)上對(duì)軟件進(jìn)行設(shè)計(jì)。MAD(LIBMAD)是一個(gè)開(kāi)源的高精度MPEG音頻解碼庫(kù),支持MPEG-1(Laver I,Laver II和Laver III)。LIBMAD提供24-hit的PCM輸出,完全是定點(diǎn)計(jì)算,非常適合在沒(méi)有浮點(diǎn)支持的平臺(tái)上使用。使用LIBMAD提供的一系列API,就可以非常簡(jiǎn)單地實(shí)現(xiàn)MP3數(shù)據(jù)解碼工作。在LIBMAD的源代碼文件目錄下的mad.h文件中,可以看到絕大部分該庫(kù)的數(shù)據(jù)結(jié)構(gòu)和API等。

MP3解碼算法雖然復(fù)雜,但是整個(gè)解碼過(guò)程分成各個(gè)模塊進(jìn)行,各個(gè)模塊之間相對(duì)比較獨(dú)立。在整個(gè)解碼軟件的設(shè)計(jì)過(guò)程中,對(duì)各個(gè)模塊采用子函數(shù),各個(gè)模塊之間的聯(lián)系就表現(xiàn)為函數(shù)的參數(shù)傳遞。整個(gè)解碼軟件由一個(gè)主函數(shù)控制,調(diào)度各個(gè)模塊的有序運(yùn)行。

解碼軟件的程序流程如圖9所示。從圖中我們可以看到對(duì)輸入音頻流解碼先經(jīng)過(guò)幀同步,讀入同步頭的信息,得到該MP3碼流的采樣頻率、碼流速率等參數(shù),并記錄現(xiàn)在所解碼的MP3碼流的幀數(shù)。然后獲得粒度信息、主信息及定標(biāo)因子,根據(jù)同步頭中所得的MP3碼流的壓縮類(lèi)型來(lái)讀取信息,獲得對(duì)應(yīng)于各自顆粒中的各自通道的相關(guān)參數(shù)。

然后對(duì)一幀中的兩個(gè)顆粒進(jìn)行解碼,首先是從比特流中獲取每個(gè)顆粒對(duì)應(yīng)的定標(biāo)因子,并對(duì)每個(gè)顆粒下的數(shù)據(jù)進(jìn)行哈夫曼解碼,這個(gè)哈夫曼解碼過(guò)程需要32個(gè)哈夫曼碼表之一來(lái)進(jìn)行解碼,可以根據(jù)邊帶信息中含有每個(gè)顆粒選擇碼表的信息來(lái)進(jìn)行選擇。經(jīng)過(guò)哈夫曼解碼的數(shù)據(jù),接下來(lái)要經(jīng)過(guò)反量化取樣,在這步中,各個(gè)子帶的數(shù)據(jù)根據(jù)所使用窗的類(lèi)型,利用在邊帶信息中獲得的參數(shù)反量化。接下來(lái)就是重排序和立體聲處理模塊,在這個(gè)模塊中根據(jù)MP3碼流所采用的壓縮類(lèi)型來(lái)進(jìn)行相應(yīng)的處理。

這樣當(dāng)處理完一個(gè)顆粒中所有通道的數(shù)據(jù)后,就可以把這一顆粒已解碼好的數(shù)據(jù)輸出到輸出緩沖區(qū)中,當(dāng)把下一顆粒的數(shù)據(jù)解碼完畢并輸出后,這樣一幀數(shù)據(jù)就解碼完成。這幀數(shù)據(jù)就可以輸入到D/A部分進(jìn)行播放,并將輸出緩沖區(qū)清空,等待下一幀的解碼數(shù)據(jù)的輸入。解碼程序一直到在比特流中再也找不到一幀的同步頭時(shí),就完成了這一音頻流的解碼。

3 結(jié)束語(yǔ)

MP3解碼算法比較復(fù)雜,并且市面上大部分便攜式MP3播放器都采用的是硬件解碼器,也就是采用專(zhuān)門(mén)的音頻解碼芯片來(lái)實(shí)現(xiàn)的,然而隨著數(shù)字信號(hào)處理技術(shù)的飛速發(fā)展,使得采用通用數(shù)字信號(hào)處理器(DSP)實(shí)現(xiàn)這一解碼算法成為可能,而且存性?xún)r(jià)比、低功耗和軟件升級(jí)靈活性上都優(yōu)于采用硬件解碼方案的mp3播放器,成為未來(lái)MP3市場(chǎng)的發(fā)展方向。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀(guān)點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車(chē)技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車(chē)工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車(chē)。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶(hù)希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱(chēng),數(shù)字世界的話(huà)語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱(chēng)"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉