基于AMBE-2000的多速率語音通信終端模塊 作者: 時間:2007-03-09 來源:網(wǎng)絡(luò) 加入技術(shù)交流群 掃碼加入和技術(shù)大咖面對面交流海量資料庫查詢 收藏 摘要:介紹一種基于AMBE-2000和DSP芯片的語音通信終端模塊的原理與實現(xiàn)方案。該終端模塊具有設(shè)計簡便、語音編碼速率可變、音質(zhì)優(yōu)、性價比高、功耗小等諸多優(yōu)點,可廣泛應(yīng)用于衛(wèi)星通信、短波、微波通信和軍用保密通信等場合。關(guān)鍵詞:聲碼器 AMBE 前向糾錯編碼(FEC) AMBE-2000是DVSI(Digital Voice System Inc.)公司推出的單片聲碼器芯片。該芯片采用改進的多帶激勵(MBE)算法,能實現(xiàn)可變速率低比特率、高語音音質(zhì)的語音壓縮編碼。本文基于AMBE-2000,設(shè)計并實現(xiàn)了一種語音通信終端模塊。該模塊具有設(shè)計簡便、語音編碼速率可變、音質(zhì)優(yōu)、接口靈活、工作電壓低、功耗小等諸多優(yōu)點,可廣泛應(yīng)用于衛(wèi)星通信、短波、微波通信和保密通信等場合,具有很高的實用價值。 1 AMBE-2000功能概述 1.1 MBE算法介紹 MBE(Multi-Band Excitation)語音編碼技術(shù)是上世紀80年代末提出的一種具有高語音質(zhì)量和強魯棒性的低速率語音編解碼技術(shù)。其改進的IMBE算法成為國際移動衛(wèi)星組織(INMARSAT)和AUSAT移動衛(wèi)星通信的語音編碼標準。EIA/TIA也選擇了MBE作為北美陸地移動通信系統(tǒng)的編碼標準。MBE語音編解碼算法因其在低速率(<4.8kbps)上的優(yōu)越性能,在衛(wèi)星通信、數(shù)字話音存儲和保密通信等領(lǐng)域得到廣泛應(yīng)用。MBE編碼方式在頻域中按基音各諧波頻率,將一幀語音的頻譜劃分為多個頻帶,對每個頻帶作清、濁音(U/V)判決。對濁音帶,以基音為周期的脈沖序列作為激勵信號;對清音帶,則以白噪聲作為激勵信號??偟募钚盘栍筛鲙Ъ钚盘栂嗉訕?gòu)成。用該激勵信號激勵聲道濾波器,最終合成出具有較高自然度的語音。MBE模型使合成語音譜與原語音譜在細致結(jié)構(gòu)上能擬合得很好,因此在低比特率的情況下,其合成語音的音質(zhì)依然能保持較高的自然度。 1.2 AMBE-2000的功能與特點 AMBE-2000芯片是AMBE-1000的改進產(chǎn)品。與AMBE-1000相比,其語音壓縮算法更優(yōu)化,語音質(zhì)量更高,最低編碼速率也由原來的2.4kbps降低到2.0kbps;在硬件和接口方面,也作了若干改進,并提高了其壓縮編碼和前向糾錯編碼(FEC)的效率和可靠性。AMBE-2000主要具有以下一些特點: (1)速率多,語音音質(zhì)高:具有2.0k、2.4k、3.6k、4.0k、4.8k、6.4k、8.0k和9.6kbps八種壓縮速率。當速率在4.0kbps以上時,可得到接近長途電話的話音質(zhì)量;當速率為2.0kbps時,仍然具有較高的可懂度和自然度。 (2)可變速的FEC功能:可根據(jù)信道情況,靈活地選擇FEC的速率。語音和FEC的速率選擇既可以通過硬件管腳設(shè)置,也可通過軟件方式設(shè)置。 (3)芯片內(nèi)集成卷積編碼器和Viterbi譯碼器。 (4)低功耗、低復(fù)雜度。 (5)能產(chǎn)生和識別雙音多頻(DTMF)信號。 (6)具有語音激活檢測(Voice Activity Detection)功能、回波抵消(Echo Cancelling)功能和舒適噪聲(Comfortable Noise)產(chǎn)生功能等。 (7)串行信道接口可設(shè)置為主動和被動方式,傳輸數(shù)據(jù)可設(shè)置成幀結(jié)構(gòu)或非幀結(jié)構(gòu)。 AMBE-2000芯片主要管腳的功能如表1所示。AMBE-2000的工作頻率建議使用16.384MHz,它與晶體有兩種連接方式,如圖1和圖2所示,分別是與有源晶體和無源晶體的連接方法。表1 AMBE-2000主要管腳功能 管 腳 功 能RATE_SEL[4~0]用于選擇編碼速率和FEC速率CHANN_SEL[1~0]選擇信道接口方式(主動、被動、幀結(jié)構(gòu)、非幀結(jié)構(gòu)等)CHAN_RX_DATA,CHAN_TX_DATA,CHAN_RX_CLK,CHAN_TX_CLK,CHAN_RX_STRB,CHAN_TX_STRB串行信道接口引腳,分別為信道接收和發(fā)送數(shù)據(jù)、接收時鐘和發(fā)送時鐘、接收和發(fā)送幀同步脈沖CODEC_SEL[1~0]A/D接口方式選擇(如16its線性量化、A率或μ率量化等)CODEC_RX_DATA,CODEC_TX_DATA,CODEC_RX_CLK,CODEC_TX_CLK,CODEC_RX_STRB,CODEC_TX_STRB與A/D芯片的接口引腳,分別是數(shù)據(jù)接收和數(shù)據(jù)發(fā)送、接收時鐘和發(fā)送時鐘、接收和發(fā)送幀同步信號EPR在芯片復(fù)位后,該引腳有一個跳沿產(chǎn)生,表示第1個編碼幀已準備好,一幀將在20ms后產(chǎn)生ECHOCAN_EN回波抵消使能,高電平有效VAD_ENVAD使能,高電平有效SLEEP_EN標準睡眠方式使能,高電平有效X2/CLKIN時鐘輸入(16.384MHz)RESETN復(fù)位,低電平有效這兩種方式都可以采用,主要看所用的晶體是有源還是無源。 2 系統(tǒng)硬件設(shè)計與實現(xiàn) 2.1 系統(tǒng)框圖與原理 圖3是基于AMBE-2000的語音通信終端模塊的框圖。該通信終端模塊由微控制電路、AMBE-2000、Flash、時序產(chǎn)生電路、A/D、D/A電路等構(gòu)成??刂齐娐凡捎茫裕晒镜模裕停樱常玻埃郑茫担矗埃?眼2?演,用于控制和讀寫AMBE-2000,并與外部交換數(shù)據(jù);Flash為一片Intel公司生產(chǎn)的TE28F008,構(gòu)成1M%26;#215;8bits的存儲空間,用于存儲程序及初始化數(shù)據(jù);時序產(chǎn)生電路由可編程邏輯器件EPM3032S完成,用于產(chǎn)生系統(tǒng)所需的各種時序;A/D、D/A電路則由TLV320AIC10及其外圍電路構(gòu)成。全部器件均工作于3.3V電壓。 A/D、D/A芯片與AMBE-2000的CODEC接口相連,進行PCM數(shù)據(jù)的交換。AMBE-2000的串口則與VC5402的多通道自動緩沖串行口McBSP(Multichannel Buffered Serial Port)相連,進行編碼數(shù)據(jù)的交換;VC5402與外界通過HPI(Host Port Interface)口連接,作為可選方案也可以通過異步串口(XF,BIO)進行數(shù)據(jù)的交換;VC5402與Flash器件間采用外部并行8位BOOT方式進行程序的裝載。圖3 基于AMBE-2000的語音通信終端模塊框圖2.2 硬件設(shè)計 作為微控制器的TMS320VC5402是TI公司的低功耗、高性能定點DSP芯片,其主要特點包括: (1)速度快,功能強。 (2)具有優(yōu)化的CPU結(jié)構(gòu),內(nèi)部有32K字節(jié)的片內(nèi)RAM。VC5402既可用于實現(xiàn)復(fù)雜的DSP算法和運算,也可用作微控制器,進行智能化控制。 (3)工作電壓低、功耗小??梢栽冢常常只颍玻罚蛛妷合鹿ぷ?,在低功耗方式(IDLE1、IDLE2和IDLE3)下可降低功耗,特別適于無線移動設(shè)備。 (4)智能外設(shè)。提供多通道自動緩沖串行口McBSP、與外部設(shè)備通信的HPI接口等智能外設(shè)。McBSP口提供2K字節(jié)數(shù)據(jù)緩沖的讀寫能力,可以降低處理器的額外開銷。指令周期為20ns時,McBSP的最大數(shù)據(jù)吞吐量為50Mbps,即使在IDLE方式下,McBSP也可以全速工作。 VC5402除作為微控制器外,還可用于完成其他一些功能,例如信道編譯碼、加密和解密等,根據(jù)系統(tǒng)的具體要求可以靈活地添加。AMBE-2000可與多種A/D、D/A芯片接口,選用不同的A/D、D/A芯片,管腳CODEC_SEL需要進行不同的設(shè)置,具體如表2所示。表2 A/D、D/A類型設(shè)置 A/D、D/A類型CODEC_SEL[1~0]普通16位線性,8kHz00A/D芯片73311,32kHz01普通μ率,8kHz10普通A率,8kHz11本系統(tǒng)中,A/D、D/A芯片采用TLV320AIC10。TLV320AIC10是TI公司的線性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位線性PCM,其晶體頻率采用16.384MHz,幀同步時鐘和位同步時鐘均由TLV320AIC10產(chǎn)生,并提供給AMBE-2000。 可編程邏輯器件EPM3032S用于產(chǎn)生系統(tǒng)所需的其他各種時序(如AMBE-2000的信道串口時序等)以及片選信號等,EPM3032S是基于E2PROM工藝的PLD器件,器件的規(guī)模為2000門左右,具有在系統(tǒng)可編程(ISP,In-System Programmable)能力,使用方便。在設(shè)計時,應(yīng)預(yù)留下載接口。28F008是Intel公司的1M字節(jié)的Flash存儲器,用于存儲VC5402的程序及初始化數(shù)據(jù)。28F008與VC5402的連接?眼3?演如圖5所示。圖中,28F008作為VC5402的外部數(shù)據(jù)存儲器,地址總線和數(shù)據(jù)總線接至VC5402的外部總線,CE接至VC5402的DS引腳,R/W引腳與MSTRB相或后接至WE,OE引腳接至一個跳線,跳線接低時,Flash 處于讀狀態(tài),跳線接高時,Flash可擦或可編程,此時可向Flash中寫入程序。 3 軟件編程 整個系統(tǒng)的工作過程如下:系統(tǒng)加電、TMS320VC5402復(fù)位后,由其內(nèi)部固化的自引導(dǎo)程序(BOOT)將存于Flash(28F008)中的程序和數(shù)據(jù)搬移至內(nèi)部RAM;然后VC5402復(fù)位AMBE-2000芯片,開始進行語音編解碼。AMBE-2000每20ms完成一幀語音數(shù)據(jù)的編解碼運算,并與VC5402交換一次數(shù)據(jù)。VC5402將編碼后的語音輸出,同時將從信道或其他設(shè)備得到的數(shù)據(jù)送到AMBE-2000進行解碼。 軟件編程主要是對TMS320VC5402進行編程,程序分為主程序模塊、與AMBE-2000間的通信和控制模塊、與外界數(shù)據(jù)通信模塊以及BOOT程序加載模塊等。 主程序模塊。該模塊執(zhí)行程序的初始化,包括對VC5402的接口和寄存器的初始化;對AMBE-2000的復(fù)位和速率設(shè)置,對話音激活檢測、回波抵消功能的設(shè)置;對TLV320AIC10的初始化等,此外還提供對中斷服務(wù)程序的調(diào)度控制。對TLV320AIC10的初始化主要是設(shè)置它的4個控制寄存器,其中控制寄存器1的作用是使能運算放大器,使能或旁路ADC模擬抗混迭濾波器,使能或旁路數(shù)字FIR濾波器,激活軟件復(fù)位等;控制寄存器2的作用是低功耗模式控制,分頻寄存器控制(決定濾波器的時鐘頻率和取樣周期);控制寄存器3的作用是選擇模擬信號自環(huán)和數(shù)字信號自環(huán),控制連續(xù)數(shù)據(jù)傳輸模式等;控制寄存器4的作用是控制輸入和輸出增益(通過控制輸入和輸出可編程增益放大器來實現(xiàn))。 VC5402與AMBE-2000間交換數(shù)據(jù)以標準串行方式進行。VC5402的McBSP接口在結(jié)構(gòu)上可分為一個數(shù)據(jù)通道和一個控制通道。數(shù)據(jù)通道完成數(shù)據(jù)的發(fā)送和接收;控制通道完成通道的選擇與控制等功能。在編寫串行通信子程序時,采用中斷方式。每來一次中斷,執(zhí)行一次數(shù)據(jù)發(fā)送和接收。VC5402與外界通過HPI口連接。HPI為8位并行口,通過它可完成VC5402與外部設(shè)備的數(shù)據(jù)交換,可以采用8位并行方式,也可以采用16位并行方式。HPI接口主要通過三個寄存器,包括控制寄存器、數(shù)據(jù)寄存器和地址寄存器實現(xiàn)數(shù)據(jù)的搬移,程序編寫比較方便。另外作為一種備選方案,也可以通過異步串口,只通過XF和BIO兩根線實現(xiàn)與外部設(shè)備的數(shù)據(jù)交換。 VC5402與Flash器件采用外部并行8位BOOT方式進行程序的裝載。VC5402提供了多種BOOT方法,包括:并行I/O口BOOT、串行口BOOT、HPI口BOOT、外部并行BOOT等。這些不同的BOOT方式可以滿足用戶不同的應(yīng)用場合。在編寫BOOT程序時,需要將VC5402設(shè)置為微計算機工作方式(MP/MC\引腳置低)。這樣DSP復(fù)位后,程序就從內(nèi)部ROM開始運行BOOT程序,將存儲于Flash器件中的程序搬移至內(nèi)部RAM中執(zhí)行。 4 系統(tǒng)實現(xiàn) AMBE-2000的速率設(shè)置采用軟件方式,由VC5402通過串行接口發(fā)送命令字設(shè)置。按本設(shè)計方案實現(xiàn)了系統(tǒng)在將語音速率設(shè)置為2.4kbps、FEC設(shè)置為1.2kbps時,系統(tǒng)能穩(wěn)定地工作于信道誤碼率為4%的環(huán)境中,而且系統(tǒng)能根據(jù)需要很方便地對語音速率和FEC速率進行改變,實現(xiàn)變速率語音通信。
評論