當前位置:首頁 > 電源 > 數(shù)字電源
[導(dǎo)讀]本文詳細描述了在TI (Texas Instruments) C55x系列DSP平臺上集成實時實現(xiàn)0.3kbps至16kbps多種速率語音編解碼算法的方法,及在現(xiàn)有C語言源代碼基礎(chǔ)上優(yōu)化匯編指令的技巧。

文摘:本文詳細描述了在TI (Texas Instruments) C55x系列DSP平臺上集成實時實現(xiàn)0.3kbps至16kbps多種速率語音編解碼算法的方法,及在現(xiàn)有C語言源代碼基礎(chǔ)上優(yōu)化匯編指令的技巧。介紹了在編寫C55x系列DSP匯編程序中的關(guān)鍵技術(shù),諸如函數(shù)調(diào)用中的參數(shù)傳遞,指令優(yōu)化,標志位設(shè)置,宏使用等。文章同時給出了一種采用TI C55x系列DSP設(shè)計實現(xiàn)的能運行多種語音編解碼算法硬件系統(tǒng)平臺。最后介紹了該硬件平臺的動態(tài)調(diào)整功耗設(shè)計,使系統(tǒng)的功耗在休眠狀態(tài)下最低僅為155.1mW。

Abstract:This paper detailed describes how to implement the real time multi-rate speech encoding and decoding algorithms between 0.3kbps to 16kbps on TI (Texas Instruments) C55x series DSP platform, and introduces methods of optimizing assembly language instructions based on the original C language source code. We introduce the key techniques during writing assembly programs like parameter transferring during function calling; instruction optimizing; status bits setting and macro application. The paper also design a hardware platform for general speech encoding and decoding based on C55x series DSP of TI Company. At last, the adaptive power design of the platform is presented, which reduce power of the system down to 155.1mW when in sleep running mode.

Keyword: Speech Coding; C55x; Assembly language

近二十年來,全球半導(dǎo)體產(chǎn)業(yè)的飛速發(fā)展帶動相關(guān)的軟件、硬件設(shè)計水平迅速提高,這些發(fā)展使得一大批性能優(yōu)良的復(fù)雜的數(shù)字信號處理算法可以實時實現(xiàn)并在日常通信系統(tǒng)中得到廣泛應(yīng)用,極大地提高了現(xiàn)有通信系統(tǒng)的可靠性和效率。因此,研究語音處理技術(shù)并將其用基于DSP芯片硬件系統(tǒng)實現(xiàn)有著非常重要的現(xiàn)實意義和廣闊的市場前景。本文介紹了語音編解碼硬件平臺的設(shè)計思路和編解碼算法在硬件平臺上的實現(xiàn)和優(yōu)化過程,同時給出了硬件平臺結(jié)構(gòu)和低功耗設(shè)計思路。

1        平臺中語音編解碼算法簡述

本文在TI C55x系列DSP上實現(xiàn)了0.3kbps至16kbps的多種不同速率的語音編解碼算法。其中16kps速率采用連續(xù)可變增量調(diào)制(CVSD)的波形編碼算法,8kps速率采用了ITU-T公布的G.729a標準算法。而低速率編解碼采用了正弦激勵線性預(yù)測(SELP)算法。SELP算法是建立在傳統(tǒng)的線性預(yù)測模型的基礎(chǔ)上,其中清音成分用白噪聲擬合,濁音成分在每個諧波處用一個頻率變化的正弦信號合成,整個激勵的濁音部分由一組不同幅度的正弦疊加而成,這也是SELP模型不同于傳統(tǒng)的線性預(yù)測的一個非常的重要方面,即激勵信號采用分帶混合正弦激勵。

2        語音編解碼算法在DSP數(shù)字處理芯片上的實現(xiàn)和優(yōu)化

由于在DSP上運行的聲碼器必須要達到實時化的要求,而直接編譯的C程序遠無法達到。因此需要編寫和優(yōu)化C55x的匯編代碼來提高聲碼器的運行效率。下面介紹幾點在算法硬件實現(xiàn)過程中的關(guān)鍵技術(shù):

2.1 C程序和匯編程序的混編,函數(shù)的調(diào)用和參數(shù)傳遞

把一個模塊改寫為匯編函數(shù),然后在C程序或者匯編程序中調(diào)用它。在C55x的開發(fā)中,函數(shù)的調(diào)用機制是這樣的:首先記錄下函數(shù)傳遞來的參數(shù),和返回地址SP向低位移。然后再在堆棧中開出本地變量常量所需要的空間,SP再次向低位移。

(1)匯編函數(shù)的聲明:在匯編函數(shù)中定義的函數(shù)如果要想在C代碼中被調(diào)用,必須用.global語句加以聲明,這樣,對象或函數(shù)被定義為外部的(external)。比如:

    .global _Rem_Dc

_Rem_Dc:

    ……

(2)參數(shù)傳遞:在函數(shù)調(diào)用的過程中,C代碼傳來的參數(shù)按照以下規(guī)則存放在特定的寄存器中:即16或23位的數(shù)據(jù)指針,先后存放在(X)AR0-(X)AR4中。16位的數(shù)據(jù),先后存放在T0,T1,AR0-AR4中,32位的數(shù)據(jù),先后存放在AC0,AC1和AC2中。如果參數(shù)個數(shù)超過寄存器個數(shù),則存放在堆棧中。同時,函數(shù)的返回值如果是短整型(short)則存放在T0中,如果是長整型(long)則存放在AC0中,如果是指針則存放在(X)AR0中。

例如:

①int fn(int i1, long l2, int *p3);

則fn->T0; il->T0, l2->AC0, p3->AR0

②long fn(int *p1, int i2, int i3, int i4);

則fn->AC0, p1->AR0, i2->T0, i3->T1, i4->AR1

③void fn(long l1, long l2, long l3, long l4, int i5);

則l1->AC0, l2->AC1, l3->AC2, l4->堆棧, i5->T0

④void fn(long l1, long l2, long l3, int *p4, int *p5, int *p6, int *p7, int *p8, int i9, int i10);

則l1->AC0,l2->AC1,l3->AC2,p4->AR0,p5->AR1, p6->AR2, p7->AR3, p8->AR4, i9->T0,i10->T1

2.2 標志位的設(shè)置

    標志位是DSP芯片在計算時設(shè)置一些位置。它們存放在ST0_55~ST3_55中,在運算中主要用到的幾個有:

    FRCT,當其值等于1時,乘法運算的結(jié)果將左移一位。等于零時,運算結(jié)果不變。

SATD,當其值等于1時,運算發(fā)生溢出時作飽和處理

SXMD,當其值等于1時,輸入操作數(shù)有符號擴展

SMUL,當其值等于1時,飽和模式開

他們分別存儲在ST1_55和ST3_55寄存器的位置如圖1所示:

圖1 C55x DSP關(guān)鍵標志位在寄存器中的位置

    這幾個操作位的設(shè)置不對的話,會出現(xiàn)運算結(jié)果的錯誤。所以要根據(jù)程序的需要正確設(shè)置操作位,同時要在程序的前后保護和還原其初值。

psh *(ST1_55)

psh *(ST3_55)

……

pop *(ST3_55)

pop *(ST1_55)

3        語音編解碼硬件平臺簡述

本文設(shè)計的多模式語音編解碼系統(tǒng)基于C55x系列DSP和MCU的雙處理器設(shè)計,主芯片采用了TI公司的TMS320VC5510A數(shù)字信號處理器。其時鐘周期最高為200MHz。擁有160KWord片上RAM(其中包括8塊4KWord的DARAM和32塊4KWord的SARAM)、16KWord片上ROM、8MWord的最大擴展尋址能力。微控制器(MCU)選用TI公司的MSP430F149,主要完成系統(tǒng)啟動,電源管理,狀態(tài)監(jiān)控,DSP程序加載,聲碼器二進制碼流位置重排等功能,并和DSP配合實現(xiàn)系統(tǒng)級加密機制。另外,硬件平臺的音頻編解碼芯片選用TLV320AIC10,而程序存儲部分采用的是SST39VF160 Flash,容量為1MWord,用來儲存程序和數(shù)據(jù)。本硬件平臺的框架結(jié)構(gòu)圖如圖2所示。

圖2  多速率語音編解碼系統(tǒng)硬件平臺框架結(jié)構(gòu)圖

4        低功耗設(shè)計

在數(shù)字集成電路設(shè)計中,CMOS電路的靜態(tài)功耗很低,與其動態(tài)功耗相比基本可以忽略不計,故暫不考慮。其動態(tài)功耗計算公式為:

               (1)

式中Pd為CMOS芯片的動態(tài)功耗;CT為CMOS芯片的負載電容;V為CMOS芯片的工作電壓;f為CMOS芯片的工作頻率。本硬件平臺的低功耗設(shè)計從選用有可變電壓和多電壓的器件、動態(tài)功耗管理、動態(tài)頻率控制三個方面入手。

4.1 選用有可變電壓和多電壓的器件

    首先在文中的系統(tǒng)中,選用的單片機芯片TI公司的MSP430系列MCU是一款功耗相當?shù)偷钠骷?,供電電?.8V~3.6V,運行模式下功耗280μA/MHz,待機模式下功耗1.6μA/MHz,禁用模式下功耗0.1μA/MHz。其次選用的DSP芯片TI的C5510 DSP采用兩種驅(qū)動電壓,內(nèi)核電壓1.6V,I/O電壓3.3V,根據(jù)(1)式,IC器件的功耗和供電電壓的平方成正比,1.6V供電的器件比3.3V供電器件能降低一半以上的功耗。IC設(shè)計中通常都將降低電壓作為控制功耗的最直接的手段,通過采用低電壓供電的DSP,既能有效地降低內(nèi)核動態(tài)功耗,還能兼顧I/O的電平兼容性。

4.2動態(tài)功耗管理

PCM編解碼芯片TLV320AIC11可以單獨將A/D或D/A部分禁用。當話筒PTT沒有按下時,表示沒有話音輸入,此時可以將A/D部分置為IDLE狀態(tài)。同樣的,當MODEM的CD信號為高時,表示沒有有效的數(shù)字碼流輸入聲碼器,故在此時可以將D/A部分設(shè)為IDLE狀態(tài)。通過將該芯片配置成低功耗模式,降低了系統(tǒng)的功耗。另外,C5510 DSP芯片內(nèi)部劃出了五個獨立的IDLE域,分別負責(zé)CPU、DMA、CACHE、外設(shè)、時鐘生成器、EMIF接口的配置。每個域可以獨立地將該域管轄的多個部件設(shè)置成活動模式或IDLE模式以此降低DSP的功耗。針對本文設(shè)計,由于沒有使用到DMA、CACHE、時鐘生成器三個域中的外設(shè),故將這三個域設(shè)置成了IDLE模式。EMIF域在DSP和MSP交換數(shù)據(jù)(為了調(diào)整發(fā)送和接收的比特流)時才被置為活動,其他時候被置為IDLE。通過這樣的設(shè)置,更加有效地控制了整個系統(tǒng)的運算功耗。

4.3動態(tài)頻率控制

根據(jù)(1)式,IC器件的功耗和頻率成正比,因此,將IC器件的頻率控制在剛剛好滿足運算處理要求的情況,可以大大減小系統(tǒng)功耗。這種方法的關(guān)鍵是算法運算量的大小,動態(tài)的調(diào)整芯片的運行頻率,從而達到節(jié)省功耗的目的。在本文設(shè)計的平臺上運行的六種速率的低速率語音編解碼算法中,600bps、1200bps、2400bps、8000bps、16kbps的峰值運算量分別為37.4MIPS、59.2MIPS、44.8MIPS、18.6MIPS、<1MIPS,因此將DSP的工作頻率分別設(shè)置在40.096MHz、65.536MHz、49.152MHz、24.576MHz。這樣處理能夠很有效地降低DSP的內(nèi)核功耗,最大限度地有效利用運算資源。

通過以上幾個方面的優(yōu)化設(shè)計,我們達到了應(yīng)用場合對功耗的要求。表1是本系統(tǒng)在不同運行模式下的功耗統(tǒng)計。

表1  不同模式下DSP功耗

工作方式

功耗

全速運行(80MHz)

521.4mW

低速運行(2MHz)

264mW

低速運行/DSP外設(shè)休眠

214.5mW

低速運行/DSP外設(shè)休眠/外圍芯片休眠

155.1mW

5        小結(jié)

本文中介紹了針對語音編解碼算法在TI C55x系列DSP上的實現(xiàn)方法。結(jié)合作者在實際開發(fā)過程中的經(jīng)驗與體會總結(jié)了編寫匯編程序中的主要技巧。目前C55x的高性能低功耗特點能大幅度提高便攜式設(shè)備的處理能力和電池的使用壽命,將會廣泛應(yīng)用于語音處理的各個領(lǐng)域。本文介紹的方法和經(jīng)驗具有廣闊的推廣價值。

本文的創(chuàng)新點:1.指出了多種在TI C55x系列DSP平臺上匯編語言的開發(fā)經(jīng)驗與技巧。2.實現(xiàn)了一個可同時加載多種速率制式語音編解碼的嵌入式硬件平臺。 3.采用多種方案實現(xiàn)了對該硬件平臺的低功耗設(shè)計,很大程度上節(jié)約了系統(tǒng)的運行功耗。

 

參考文獻 (References)
[1]    田秋玲,崔慧娟,唐昆. 高質(zhì)量0.6Kb/s聲碼器的TMS320VC55x實現(xiàn)[J]. 電聲技術(shù),2005,8:50-53
[2]    詹杰,唐昆,崔慧娟. 基于TMS320VC5510的低功耗加密型語音硬件平臺的設(shè)計與實現(xiàn)[J],微計算機信息,2005/25:63-65
[3]    TMS320C55x DSP Programmer’s Guide (spru376a) [R]. Texas Instruments, July 2001
[4]    TMS320C55x DSP Mnemonic Instruction Set Reference Guide (spru374g) [R]. Texas Instruments, October 2002
[5]    趙永剛,高攀峰,崔慧娟,等.聲碼器通用硬件平臺的實現(xiàn)[J].電聲技術(shù),2004,7:24-26.
[6]    荊元利,樊曉椏,高德遠,等.一種數(shù)字信號處理器的動態(tài)功耗管理方案[J]. 微電子學(xué)與計算機,2003,9:60-63.
[7]    TI. MSP430X1XX FAMILY USER GUIDE. [R]. Texas Instruments, January 2003

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

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

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

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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