基于DSP的通用語(yǔ)音編譯碼器設(shè)計(jì)與實(shí)現(xiàn)
摘要:實(shí)現(xiàn)了一種基于DSP的通用語(yǔ)音編譯碼器實(shí)驗(yàn)平臺(tái)。在該平臺(tái)上通過(guò)軟件重構(gòu)可以實(shí)現(xiàn)常用語(yǔ)音信號(hào)的編譯碼。詳細(xì)介紹了應(yīng)用DSP實(shí)現(xiàn)通用語(yǔ)音編譯碼中的關(guān)鍵技術(shù),包括硬件平臺(tái)設(shè)計(jì)、軟件結(jié)構(gòu)和接口擴(kuò)展等。由于硬件和軟件采用模塊和結(jié)構(gòu)化設(shè)計(jì),通過(guò)開放的模塊接口和子程序使得該設(shè)計(jì)具有擴(kuò)展和升級(jí)容易、學(xué)生參與度高等優(yōu)點(diǎn)。最后通過(guò)實(shí)際測(cè)試驗(yàn)證了設(shè)計(jì)的正確性。
關(guān)鍵詞:語(yǔ)音信號(hào)處理;DSP;編碼器;解碼器;實(shí)驗(yàn)系統(tǒng)
0 引言
語(yǔ)音信號(hào)處理在通信系統(tǒng)中占有重要地位,也是通信工程專業(yè)的重要課程。由于課程內(nèi)容比較抽象,如果只是停留在理論教學(xué),會(huì)使學(xué)生不易理解并且感到枯燥乏味,同時(shí)也不容易體現(xiàn)它的實(shí)現(xiàn)原理以及在實(shí)際通信系統(tǒng)的位置和作用。語(yǔ)音編譯碼器的實(shí)現(xiàn)主要有三種方法:專用芯片、基于DSP和混合方法。其中,DSP5000系列以其內(nèi)含硬件乘法器、硬件加法器和FFT運(yùn)算器特別適合用于語(yǔ)音信號(hào)處理。文獻(xiàn)提出一種基于DSP的多制式語(yǔ)音編解碼器,文獻(xiàn)給出一種可變速率的通用語(yǔ)音編解碼實(shí)現(xiàn)技術(shù),但都不適合實(shí)驗(yàn)教學(xué)。本文在文獻(xiàn)的基礎(chǔ)上,結(jié)合實(shí)驗(yàn)教學(xué)特點(diǎn)設(shè)計(jì)一種語(yǔ)音編譯碼器實(shí)驗(yàn)平臺(tái),其設(shè)計(jì)思想是采用通用的DSP,CPLD,控制器和PC機(jī)將語(yǔ)音信號(hào)處理過(guò)程在硬件、軟件、接口和PC機(jī)管理幾個(gè)方面實(shí)現(xiàn)模塊化和開放接口設(shè)計(jì)。通過(guò)PC機(jī)或控制器,可以設(shè)置編碼方式、調(diào)用不同的子程序?qū)崿F(xiàn)不同的編碼算法,同時(shí)也設(shè)置了計(jì)算機(jī)數(shù)據(jù)接口來(lái)實(shí)現(xiàn)編解碼器的通用性,方便直觀地了解語(yǔ)音信號(hào)的處理過(guò)程,易于不同層次、不同目的的學(xué)生參與,具有方便實(shí)現(xiàn)設(shè)計(jì)性、系統(tǒng)性、綜合性和創(chuàng)新性實(shí)驗(yàn)等優(yōu)點(diǎn)。該平臺(tái)可以實(shí)現(xiàn)G.711,G.721,G.729和△M四種符合國(guó)際標(biāo)準(zhǔn)的編解碼。為了觀察信號(hào)的處理過(guò)程,在硬件電路的關(guān)鍵點(diǎn)都設(shè)置有測(cè)試點(diǎn);其次,在軟件設(shè)計(jì)上也盡量將程序分解成子程序由主程序調(diào)用,如初始化子程序、命令解
析子程序、信號(hào)采集與輸出子程序、編譯碼子程序、數(shù)據(jù)接收與發(fā)送子程序等。每個(gè)子程序的人口都有相應(yīng)的函數(shù)名、要傳遞的參數(shù)和返回的結(jié)果,這樣便于學(xué)生參與各個(gè)算法子程序的設(shè)計(jì)。文中給出了詳細(xì)的硬件電路設(shè)計(jì)和軟件流程圖,最后對(duì)實(shí)驗(yàn)平臺(tái)進(jìn)行了測(cè)試,結(jié)果正確且工作穩(wěn)定可靠。
1 系統(tǒng)結(jié)構(gòu)與硬件電路設(shè)計(jì)
在硬件設(shè)計(jì)上根據(jù)功能分了6個(gè)模塊,包括濾波器與放大模塊、A/D與D/A轉(zhuǎn)換器模塊、DSP處理器模塊、FPGA與數(shù)據(jù)接口模塊、MCU控制器與PC機(jī)接口模塊、鍵盤/顯示器模塊。為了防止干擾和方便學(xué)生觀察信號(hào),各模塊之間的控制線通過(guò)通用底板相連,而信號(hào)通過(guò)各個(gè)模塊的信號(hào)線相連。系統(tǒng)結(jié)構(gòu)如圖1所示。
圖1中,抗混疊濾波器采用二階有源低通濾波器;音頻接口芯片選擇TI公司性價(jià)比較高的A/D轉(zhuǎn)換芯片TLV320AIC23,它可以在8~96 kHz的采樣頻率范圍內(nèi)提供16 b,20 b,24 b和32 b的采樣數(shù)據(jù),其DSP Mode是TI公司特有的與DSP連接模式,使音頻接口設(shè)計(jì)非常簡(jiǎn)單,如對(duì)于PCM編碼則根據(jù)AIC23的數(shù)據(jù)手冊(cè)只需在其時(shí)鐘輸入端MCLK引腳外接一個(gè)12.288 MHz的有源晶振,配置AIC23的采樣率控制寄存器的SR3~SR0= 0011,即可得到AIC23的A/D和D/A的采樣率為8 kHz;DSP選擇TI公司的TMS320VC5416,它采用增強(qiáng)的多總線和優(yōu)化的CPU設(shè)計(jì)結(jié)構(gòu),內(nèi)含三個(gè)多通道緩沖串口McBSP和8/16 b的增強(qiáng)型HPI口,不但可以滿足語(yǔ)音編譯碼算法處理的需求,也方便實(shí)現(xiàn)主機(jī)訪問(wèn);SRAM和FLASH分別采用常用的芯片CY7C1041CV33和SST39VF400(兩者存儲(chǔ)空間均為256K×16 b),外擴(kuò)存儲(chǔ)器的控制時(shí)序通過(guò)CPLD(EPM3128ATC100)實(shí)現(xiàn);控制器采用AT89C52,它通過(guò)DSP的HPI口與DSP相連,其優(yōu)點(diǎn)是可以通過(guò)DSP內(nèi)部的雙口RAM訪問(wèn)DSP內(nèi)部的各種資源,而不會(huì)影響DSP的運(yùn)行。同時(shí),控制器擴(kuò)展了鍵盤/顯示和RS 232接口(預(yù)留了USB接口),不但方便用戶使用,也實(shí)現(xiàn)了上位機(jī)軟件與編譯碼器的通信。
系統(tǒng)工作原理如下:首先來(lái)自用戶的語(yǔ)音信號(hào)先經(jīng)過(guò)抗混疊濾波器模塊完成信號(hào)的濾波和放大,然后送A/D、D/A模塊將模擬語(yǔ)音信號(hào)轉(zhuǎn)換成相應(yīng)標(biāo)準(zhǔn)速率(如8 kHz)和采樣精度(如16 b)的數(shù)字信號(hào),數(shù)字化的語(yǔ)音信號(hào)通過(guò)多通道緩沖串口McBSP0送給DSP信號(hào)處理板,信號(hào)處理板將語(yǔ)音數(shù)據(jù)信號(hào)送到DSP內(nèi)部緩沖區(qū),在緩沖區(qū)內(nèi)按用戶選擇的方法調(diào)用編碼算法編成特定碼率的碼流,再將得到的標(biāo)準(zhǔn)數(shù)字碼流送數(shù)據(jù)接口模塊輸出;另一方面,來(lái)自數(shù)據(jù)接口的碼流送數(shù)據(jù)處理模塊,數(shù)據(jù)處理模塊由其多通道緩沖串口McBSP2接收至DSP的內(nèi)部接收緩沖區(qū),然后由DSP對(duì)其進(jìn)行解碼處理,解碼后的數(shù)字化語(yǔ)音通過(guò)多通道緩沖串口McBSP0傳送給D/A轉(zhuǎn)換器模塊轉(zhuǎn)換成模擬語(yǔ)音信號(hào)后送信號(hào)濾波和放大模塊,從而實(shí)現(xiàn)語(yǔ)音信號(hào)的采集、編碼、發(fā)送和接收、解碼等功能。
低通濾波器相關(guān)文章:低通濾波器原理
評(píng)論