??? 摘? 要: 介紹一種基于AMBE-2000和DSP芯片的語(yǔ)音通信終端" title="通信終端">通信終端模塊的原理與實(shí)現(xiàn)方案,。該終端模塊具有設(shè)計(jì)簡(jiǎn)便,、語(yǔ)音編碼速率可變,、音質(zhì)優(yōu),、性?xún)r(jià)比高,、功耗小等諸多優(yōu)點(diǎn),可廣泛應(yīng)用于衛(wèi)星通信,、短波,、微波通信和軍用保密通信等場(chǎng)合,。?
??? 關(guān)鍵詞: 聲碼器? AMBE? 前向糾錯(cuò)編碼(FEC)
?
??? AMBE-2000是DVSI(Digital Voice System Inc.)公司推出的單片聲碼器芯片,。該芯片采用改進(jìn)的多帶激勵(lì)(MBE)算法,能實(shí)現(xiàn)可變速率低比特率、高語(yǔ)音音質(zhì)的語(yǔ)音壓縮編碼,。本文基于AMBE-2000,設(shè)計(jì)并實(shí)現(xiàn)了一種語(yǔ)音通信終端模塊,。該模塊具有設(shè)計(jì)簡(jiǎn)便、語(yǔ)音編碼速率可變,、音質(zhì)優(yōu),、接口靈活,、工作電壓低、功耗小等諸多優(yōu)點(diǎn),可廣泛應(yīng)用于衛(wèi)星通信,、短波,、微波通信和保密通信等場(chǎng)合,具有很高的實(shí)用價(jià)值。?
1 AMBE-2000功能概述?
1.1 MBE算法介紹?
??? MBE(Multi-Band Excitation)語(yǔ)音編碼技術(shù)是上世紀(jì)80年代末提出的一種具有高語(yǔ)音質(zhì)量和強(qiáng)魯棒性的低速率語(yǔ)音編解碼技術(shù),。其改進(jìn)的IMBE算法成為國(guó)際移動(dòng)衛(wèi)星組織(INMARSAT)和AUSAT移動(dòng)衛(wèi)星通信的語(yǔ)音編碼標(biāo)準(zhǔn),。EIA/TIA也選擇了MBE作為北美陸地移動(dòng)通信系統(tǒng)的編碼標(biāo)準(zhǔn)。MBE語(yǔ)音編解碼算法因其在低速率(<4.8kbps)上的優(yōu)越性能,在衛(wèi)星通信,、數(shù)字話(huà)音存儲(chǔ)和保密通信等領(lǐng)域得到廣泛應(yīng)用,。?
??? MBE編碼方式在頻域中按基音各諧波頻率,將一幀語(yǔ)音的頻譜劃分為多個(gè)頻帶,對(duì)每個(gè)頻帶作清、濁音(U/V)判決,。對(duì)濁音帶,以基音為周期的脈沖序列作為激勵(lì)信號(hào)" title="激勵(lì)信號(hào)">激勵(lì)信號(hào);對(duì)清音帶,則以白噪聲作為激勵(lì)信號(hào),。總的激勵(lì)信號(hào)由各帶激勵(lì)信號(hào)相加構(gòu)成,。用該激勵(lì)信號(hào)激勵(lì)聲道濾波器,最終合成出具有較高自然度的語(yǔ)音,。MBE模型使合成語(yǔ)音譜與原語(yǔ)音譜在細(xì)致結(jié)構(gòu)上能擬合得很好,因此在低比特率的情況下,其合成語(yǔ)音的音質(zhì)依然能保持較高的自然度。?
1.2 AMBE-2000的功能與特點(diǎn)?
??? AMBE-2000[1]芯片是AMBE-1000的改進(jìn)產(chǎn)品,。與AMBE-1000相比,其語(yǔ)音壓縮算法更優(yōu)化,語(yǔ)音質(zhì)量更高,最低編碼速率也由原來(lái)的2.4kbps降低到2.0kbps;在硬件和接口方面,也作了若干改進(jìn),并提高了其壓縮編碼和前向糾錯(cuò)編碼(FEC)的效率和可靠性,。AMBE-2000主要具有以下一些特點(diǎn):?
??? (1)速率多,語(yǔ)音音質(zhì)高:具有2.0k、2.4k,、3.6k,、4.0k、4.8k,、6.4k,、8.0k和9.6kbps八種壓縮速率。當(dāng)速率在4.0kbps以上時(shí),可得到接近長(zhǎng)途電話(huà)的話(huà)音質(zhì)量;當(dāng)速率為2.0kbps時(shí),仍然具有較高的可懂度和自然度,。?
??? (2)可變速的FEC功能:可根據(jù)信道情況,靈活地選擇FEC的速率,。語(yǔ)音和FEC的速率選擇既可以通過(guò)硬件管腳設(shè)置,也可通過(guò)軟件方式設(shè)置。?
??? (3)芯片內(nèi)集成卷積編碼器和Viterbi譯碼器,。?
??? (4)低功耗,、低復(fù)雜度。?
??? (5)能產(chǎn)生和識(shí)別雙音多頻(DTMF)信號(hào),。?
??? (6)具有語(yǔ)音激活檢測(cè)(Voice Activity Detection)功能,、回波抵消(Echo Cancelling)功能和舒適噪聲(Comfortable Noise)產(chǎn)生功能等。?
??? (7)串行信道接口可設(shè)置為主動(dòng)和被動(dòng)方式,傳輸數(shù)據(jù)可設(shè)置成幀結(jié)構(gòu)或非幀結(jié)構(gòu),。?
??? AMBE-2000芯片主要管腳的功能如表1所示,。AMBE-2000的工作頻率建議使用16.384MHz,它與晶體有兩種連接方式,如圖1和圖2所示,分別是與有源晶體和無(wú)源晶體的連接方法。?
?
?
?
?
??? 這兩種方式都可以采用,主要看所用的晶體是有源還是無(wú)源,。?
2 系統(tǒng)硬件設(shè)計(jì)與實(shí)現(xiàn)?
2.1 系統(tǒng)框圖與原理?
??? 圖3是基于AMBE-2000的語(yǔ)音通信終端模塊的框圖,。該通信終端模塊由微控制電路,、AMBE-2000、Flash,、時(shí)序產(chǎn)生電路,、A/D、D/A" title="D/A">D/A電路等構(gòu)成,??刂齐娐凡捎肨I公司的TMS320VC5402[2],用于控制和讀寫(xiě)AMBE-2000,并與外部交換數(shù)據(jù);Flash為一片Intel公司生產(chǎn)的TE28F008,構(gòu)成1M×8bits的存儲(chǔ)空間,用于存儲(chǔ)程序及初始化數(shù)據(jù);時(shí)序產(chǎn)生電路由可編程邏輯器件EPM3032S完成,用于產(chǎn)生系統(tǒng)所需的各種時(shí)序;A/D、D/A電路則由TLV320AIC10及其外圍電路構(gòu)成,。全部器件均工作于3.3V電壓,。?
?
?
??? A/D、D/A芯片與AMBE-2000的CODEC接口相連,進(jìn)行PCM數(shù)據(jù)的交換,。AMBE-2000的串口" title="串口">串口則與VC5402的多通道自動(dòng)緩沖串行口McBSP(Multichannel Buffered Serial Port)相連,進(jìn)行編碼數(shù)據(jù)的交換;VC5402與外界通過(guò)HPI(Host Port Interface)口連接,作為可選方案也可以通過(guò)異步串口(XF,BIO)進(jìn)行數(shù)據(jù)的交換;VC5402與Flash器件間采用外部并行8位BOOT方式進(jìn)行程序的裝載,。?
2.2 硬件設(shè)計(jì)?
??? 作為微控制器的TMS320VC5402是TI公司的低功耗、高性能定點(diǎn)DSP芯片,其主要特點(diǎn)包括:?
??? (1)速度快,功能強(qiáng),。?
??? (2)具有優(yōu)化的CPU結(jié)構(gòu),內(nèi)部有32K字節(jié)的片內(nèi)RAM,。VC5402既可用于實(shí)現(xiàn)復(fù)雜的DSP算法和運(yùn)算,也可用作微控制器,進(jìn)行智能化控制。?
??? (3)工作電壓低,、功耗小,。可以在3.3V或2.7V電壓下工作,在低功耗方式(IDLE1,、IDLE2和IDLE3)下可降低功耗,特別適于無(wú)線(xiàn)移動(dòng)設(shè)備,。?
??? (4)智能外設(shè)。提供多通道自動(dòng)緩沖串行口McBSP,、與外部設(shè)備通信的HPI接口等智能外設(shè),。McBSP口提供2K字節(jié)數(shù)據(jù)緩沖的讀寫(xiě)能力,可以降低處理器的額外開(kāi)銷(xiāo)。指令周期為20ns時(shí),McBSP的最大數(shù)據(jù)吞吐量為50Mbps,即使在IDLE方式下,McBSP也可以全速工作,。?
??? VC5402除作為微控制器外,還可用于完成其他一些功能,例如信道編譯碼,、加密和解密等,根據(jù)系統(tǒng)的具體要求可以靈活地添加。AMBE-2000可與多種A/D,、D/A芯片接口,選用不同的A/D、D/A芯片,管腳CODEC_SEL[1~0]需要進(jìn)行不同的設(shè)置,具體如表2所示,。?
?
?
??? 本系統(tǒng)中,A/D,、D/A芯片采用TLV320AIC10。TLV320AIC10是TI公司的線(xiàn)性PCM編解碼芯片,芯片內(nèi)部具有ADC模擬抗混迭濾波器和數(shù)字FIR濾波器,有良好的抗混迭和抗噪聲能力,具有可編程的輸入輸出增益控制,、可編程的ADC和DAC轉(zhuǎn)換速率控制,工作電壓為3.3V~5V,還具有低功耗工作模式,。?
????AMBE-2000與TLV320AIC10的連接如圖4所示。CODEC_SEL[1~0]在硬件上接地,設(shè)置A/D方式為16位線(xiàn)性PCM,其晶體頻率采用16.384MHz,幀同步時(shí)鐘和位同步時(shí)鐘均由TLV320AIC10產(chǎn)生,并提供給AMBE-2000,。?
?
?
????可編程邏輯器件EPM3032S用于產(chǎn)生系統(tǒng)所需的其他各種時(shí)序(如AMBE-2000的信道串口時(shí)序等)以及片選信號(hào)等,EPM3032S是基于E2PROM工藝的PLD器件,器件的規(guī)模為2000門(mén)左右,具有在系統(tǒng)可編程(ISP,In-System Programmable)能力,使用方便,。在設(shè)計(jì)時(shí),應(yīng)預(yù)留下載接口,。?
??? 28F008是Intel公司的1M字節(jié)的Flash存儲(chǔ)器,用于存儲(chǔ)VC5402的程序及初始化數(shù)據(jù)。28F008與VC5402的連接[3]如圖5所示,。圖中,28F008作為VC5402的外部數(shù)據(jù)存儲(chǔ)器,地址總線(xiàn)和數(shù)據(jù)總線(xiàn)接至VC5402的外部總線(xiàn),R/W引腳與
跳線(xiàn)接低時(shí),Flash 處于讀狀態(tài),跳線(xiàn)接高時(shí),Flash可擦或可編程,此時(shí)可向Flash中寫(xiě)入程序,。?
?
?
3 軟件編程?
??? 整個(gè)系統(tǒng)的工作過(guò)程如下:系統(tǒng)加電、TMS320VC5402復(fù)位后,由其內(nèi)部固化的自引導(dǎo)程序(BOOT)將存于Flash(28F008)中的程序和數(shù)據(jù)搬移至內(nèi)部RAM;然后VC5402復(fù)位AMBE-2000芯片,開(kāi)始進(jìn)行語(yǔ)音編解碼,。AMBE-2000每20ms完成一幀語(yǔ)音數(shù)據(jù)的編解碼運(yùn)算,并與VC5402交換一次數(shù)據(jù),。VC5402將編碼后的語(yǔ)音輸出,同時(shí)將從信道或其他設(shè)備得到的數(shù)據(jù)送到AMBE-2000進(jìn)行解碼。?
??? 軟件編程主要是對(duì)TMS320VC5402進(jìn)行編程,程序分為主程序模塊,、與AMBE-2000間的通信和控制模塊,、與外界數(shù)據(jù)通信模塊以及BOOT程序加載模塊等。?
??? 主程序模塊,。該模塊執(zhí)行程序的初始化,包括對(duì)VC5402的接口和寄存器的初始化;對(duì)AMBE-2000的復(fù)位和速率設(shè)置,對(duì)話(huà)音激活檢測(cè),、回波抵消功能的設(shè)置;對(duì)TLV320AIC10的初始化等,此外還提供對(duì)中斷服務(wù)程序的調(diào)度控制。對(duì)TLV320AIC10的初始化主要是設(shè)置它的4個(gè)控制寄存器" title="控制寄存器">控制寄存器,其中控制寄存器1的作用是使能運(yùn)算放大器,使能或旁路ADC模擬抗混迭濾波器,使能或旁路數(shù)字FIR濾波器,激活軟件復(fù)位等;控制寄存器2的作用是低功耗模式控制,分頻寄存器控制(決定濾波器的時(shí)鐘頻率和取樣周期);控制寄存器3的作用是選擇模擬信號(hào)自環(huán)和數(shù)字信號(hào)自環(huán),控制連續(xù)數(shù)據(jù)傳輸模式等;控制寄存器4的作用是控制輸入和輸出增益(通過(guò)控制輸入和輸出可編程增益放大器來(lái)實(shí)現(xiàn)),。?
??? VC5402與AMBE-2000間交換數(shù)據(jù)以標(biāo)準(zhǔn)串行方式進(jìn)行,。VC5402的McBSP接口在結(jié)構(gòu)上可分為一個(gè)數(shù)據(jù)通道和一個(gè)控制通道。數(shù)據(jù)通道完成數(shù)據(jù)的發(fā)送和接收;控制通道完成通道的選擇與控制等功能,。在編寫(xiě)串行通信子程序時(shí),采用中斷方式,。每來(lái)一次中斷,執(zhí)行一次數(shù)據(jù)發(fā)送和接收。?
??? VC5402與外界通過(guò)HPI口連接,。HPI為8位并行口,通過(guò)它可完成VC5402與外部設(shè)備的數(shù)據(jù)交換,可以采用8位并行方式,也可以采用16位并行方式,。HPI接口主要通過(guò)三個(gè)寄存器,包括控制寄存器、數(shù)據(jù)寄存器和地址寄存器實(shí)現(xiàn)數(shù)據(jù)的搬移,程序編寫(xiě)比較方便,。另外作為一種備選方案,也可以通過(guò)異步串口,只通過(guò)XF和BIO兩根線(xiàn)實(shí)現(xiàn)與外部設(shè)備的數(shù)據(jù)交換,。?
??? VC5402與Flash器件采用外部并行8位BOOT方式進(jìn)行程序的裝載。VC5402提供了多種BOOT方法,包括:并行I/O口BOOT,、串行口BOOT,、HPI口BOOT、外部并行BOOT等,。這些不同的BOOT方式可以滿(mǎn)足用戶(hù)不同的應(yīng)用場(chǎng)合,。在編寫(xiě)B(tài)OOT程序時(shí),需要將VC5402設(shè)置為微計(jì)算機(jī)工作方式(MP/MC引腳置低)。這樣DSP復(fù)位后,程序就從內(nèi)部ROM開(kāi)始運(yùn)行BOOT程序,將存儲(chǔ)于Flash器件中的程序搬移至內(nèi)部RAM中執(zhí)行,。?
4 系統(tǒng)實(shí)現(xiàn)?
??? AMBE-2000的速率設(shè)置采用軟件方式,由VC5402通過(guò)串行接口發(fā)送命令字設(shè)置,。按本設(shè)計(jì)方案實(shí)現(xiàn)了系統(tǒng)在將語(yǔ)音速率設(shè)置為2.4kbps、FEC設(shè)置為1.2kbps時(shí),系統(tǒng)能穩(wěn)定地工作于信道誤碼率為4%的環(huán)境中,而且系統(tǒng)能根據(jù)需要很方便地對(duì)語(yǔ)音速率和FEC速率進(jìn)行改變,實(shí)現(xiàn)變速率語(yǔ)音通信,。?
參考文獻(xiàn)?
1 AMBE-2000TM Vocoder Chip User's Manual Version 3.0.Digital Voice Systems Inc. 2000?
2 Digital Signal Processing Applications with the TMS320?Family: Theory,Algorithms,and Implementations,Volume 1.Texas Instruments,1989?
3 張雄偉,曹鐵勇. DSP芯片的原理與開(kāi)發(fā)應(yīng)用. 北京:電子工業(yè)出版社, 2000