基于DSP的TETRA話音編碼設(shè)計與實現(xiàn)
現(xiàn)代電子技術(shù) 摘 要:陸上集群無線電通信(tetra)系統(tǒng)是歐洲電信標(biāo)準(zhǔn)協(xié)會(etsi)在專用移動通信(pmr)和公共接入移動通信(pamr)網(wǎng)絡(luò)領(lǐng)域惟一支持無線數(shù)字集群的開放標(biāo)準(zhǔn),本文主要介紹了該系統(tǒng)中話音編碼算法,并討論了其在dsp上實現(xiàn)的具體流程。
關(guān)鍵詞:tetra;話音編碼;acelp;dsp
1 引 言
tetra是etsi制定的一種全新的數(shù)字集群系統(tǒng),他可以提供語音和快速數(shù)據(jù)傳輸業(yè)務(wù)。tetra集成了移動數(shù)據(jù)終端、pmr調(diào)度電話、蜂窩電話和尋呼機的功能,并且可以直接傳送internet協(xié)議報文,支持可視電話功能,而語音又是最主要的業(yè)務(wù)。無線系統(tǒng)中,帶寬是影響語音服務(wù)質(zhì)量最關(guān)鍵的因素,為降低語音傳輸所要求的帶寬,tetra系統(tǒng)采用代數(shù)碼激勵線性預(yù)測編碼(acelp)壓縮算法,保證了高質(zhì)量的語音服務(wù),其編碼速率為4.567 kb/s。
acelp是一種改進型的celp,繼承了傳統(tǒng)celp的主要優(yōu)點,并克服了其缺點。傳統(tǒng)celp用固定的隨機碼本來逼近語音信號的余量信號,缺乏靈活性,不能很好地控制碼本的頻域特性。acelp采用代數(shù)碼本結(jié)構(gòu),不僅降低了碼本的存儲量和搜索量,還提供了頻域控制函數(shù),從而增強了碼字的靈活性和多樣性,能更好地逼近余量信號,具體算法可參見tetra標(biāo)準(zhǔn)ets395-2。2 系統(tǒng)設(shè)計
針對tetra的話音編碼算法實時要求高,運算量 大,核心處理器采用了ti公司的tms320系列的5409芯片,該芯片主要特點有:速度快,處理能力可達到100 mi/s;低功耗,3 v電壓供電,內(nèi)核電壓1.8 v;提供32 kbram,16 kbrom;3個多通道自動緩沖串口(mcbsp)。
a/d轉(zhuǎn)換芯片采用ti公司的aic20芯片,完成模擬話音與數(shù)字話音的轉(zhuǎn)換工作。由于采用了過采樣技術(shù),aic20可提供高分辨率的a/d,d/a 轉(zhuǎn)換;3 v供電,功耗低于30 mw;具有軟件可編程寄存器,配置方便,不改變硬件電路,僅改寫軟件就可滿足多種需求。
存儲芯片選用atmel公司的at49lv001,用于存儲程序,dsp加電便可從flash中引導(dǎo)程序運行。at49lv001讀寫電壓均為3 v,可大大簡化電源設(shè)計,存儲空間為128 kb,足以存儲tetra的話音編碼算法。
2.1 硬件設(shè)計
2.1.1 時鐘電路設(shè)計
這里為5409提供2種時鐘電路設(shè)計方法:
(1)將晶振產(chǎn)生的外部時鐘源直接輸入到x2/clkin引腳,x1懸空。
(2)利用5409內(nèi)部提供的鎖相環(huán)(pll)時鐘產(chǎn)生電路將內(nèi)部時鐘倍頻或分頻得到。
在此采用第二種方法,如圖1所示。在x1和x2/clkin之間接一個16.384 mhz的晶振,同時將clkmd1,clkmd2,clkmd3通過上拉電阻設(shè)置為邏輯0,1,0,即倍頻數(shù)為5,dsp工作在80 mhz,若需改變dsp的工作頻率,可通過軟件修改地址0x58的clkmd寄存器的值設(shè)置倍頻數(shù)?! ?.1.2 dsp與codec接口設(shè)計
5409與aic20接口如圖2所示,由dsp的clkout提供mclk,codec工作在主模式,sclk和fs為輸出,為dsp提供bclk和 bfs。值得注意的是,由于aic20有2個采樣通道,在與dsp串口連接時,為配合codec的時序,dsp串口需配置成接收2個通道的采樣值(即32 b),但只取一個通道的采樣值;串口發(fā)送時,也要向2個通道發(fā)送數(shù)據(jù)。mcbsp中的部分控制比特位配置如下:
當(dāng)aic20工作在主模式時,fs=mclk/(16×p×n×m),通過設(shè)置控制寄存器4可改變p,n,m的值。fs=8 khz,mclk=81.92 mhz,取p=8,n=8,m=10。
2.1.3 dsp與存儲器接口設(shè)計
at49lv001存儲器內(nèi)部以扇區(qū)組織,在對其編程前,必須對相應(yīng)區(qū)域擦除。使用時可根據(jù)需要選擇扇區(qū)擦除或芯片擦除。圖3為5409與 at49lv001的接口示意圖,at49lv001的地址總線和數(shù)據(jù)總線分別接至5409的地址總線和數(shù)據(jù)總線,5409的地址總線a22~a18懸空,數(shù)據(jù)總線d15~d8懸空。ds作為使能信號,xf則控制編程狀態(tài)。應(yīng)當(dāng)注意,at49lv001為8 b存儲器,dsp為16 b處理器,所以每存儲一條dsp指令需2個存儲單元,且高字節(jié)在前。
欲知詳情,請下載word文檔 下載文檔