用L9320實(shí)現(xiàn)ADPCM語(yǔ)音編解碼
關(guān)鍵詞:語(yǔ)音編碼器;編解碼;ADPCM;PCM;L9320
L9320是LANWAVE 公司生產(chǎn)的一款自適應(yīng)音頻脈沖編碼(ADPCM)編解碼芯片,它所采用的語(yǔ)音壓縮編解碼方法符合國(guó)際電話與電報(bào)顧問(wèn)委員會(huì)(CCITT)的G.721和G.726標(biāo)準(zhǔn),同時(shí)也兼容CCITT的G.714標(biāo)準(zhǔn)。L9320 可以將模擬話音轉(zhuǎn)化成速率為32、24或16kB/s的數(shù)字信號(hào);并可將相同速率的數(shù)字信號(hào)進(jìn)行逆變換以形成模擬話音信號(hào)。L9320具有ADPCM編解碼器和PCM編解碼器/濾波器的雙向信號(hào)通道,除具有正常的ADPCM編解碼模式外,還具有PCM編解碼模式、電源測(cè)試模式和編解碼器測(cè)試模式。應(yīng)用L9320的不同速率信道可實(shí)現(xiàn)不同的倍增比,從而有效提高信道的利用率。
1 L9320的主要功能
1.1 概述
L9320帶有可預(yù)設(shè)的串行端口(SSP),該端口可與16字節(jié)的狀態(tài)設(shè)置寄存器進(jìn)行接口。微控制器能夠從SSP接口獲得內(nèi)部的數(shù)據(jù)。另外,該芯片由于包含有帶PCM編碼解碼濾波器的輸出放大器,因而能夠?qū)δM接口進(jìn)行簡(jiǎn)單控制。L9320主要具有以下特點(diǎn):
●能在2.7~5.25V電壓范圍內(nèi)全雙工工作;
●主時(shí)鐘頻率為10.24MHz?
●內(nèi)部集成有14bits的A/D和D/A轉(zhuǎn)換器;
●可完成μ律和A律壓縮;
●可以對(duì)32、24和16kB/s的數(shù)據(jù)進(jìn)行ADPCM編碼,編碼后的數(shù)據(jù)可以達(dá)到128?2048kbps;
●具有可編程的發(fā)射增益、接收衰減和側(cè)音增益控制功能;
●采用28腳DIP或SOP封裝。
1.2 引腳功能
L9320的引腳排列如圖1所示。
2 L9320內(nèi)部原理
圖2給出了L9320的內(nèi)部功能原理框圖。該器件包括∑-Δ編解碼濾波、電源管理、DSP處理和寄存器狀態(tài)控制四個(gè)子系統(tǒng)。
2.1 電源管理
L9320的電源管理系統(tǒng)主要由一組專(zhuān)為模擬信號(hào)處理單元供電的5V電源和一組專(zhuān)為數(shù)字信號(hào)處理單元供電的3V電源組成。除了輸出功率放大器AX0和PO外,所有的模擬電路都由這組5.5V電源供電。值得注意的是,AX0和PO的驅(qū)動(dòng)電流由VEXT引腳提供。當(dāng)VEXT為+5V5%時(shí),VDD應(yīng)該與VEXT直接相連,而沒(méi)有必要使用充電電容C1+和C1-。但此時(shí)BRO?b2?必須設(shè)置為“1”,以使充電電流泵電路關(guān)閉。當(dāng)VEXT為2.7~5.25V時(shí),VDD是電流泵電路的輸出電壓,因此不能與VEXT相連接,而應(yīng)通過(guò)0.1μF的電容耦合到Vss。全數(shù)字電路應(yīng)通過(guò)VDSP由3V供電,不管VEXT上的電壓如何變化,數(shù)字電路部分均由VDSP供電,這樣能夠降低芯片的總功耗。要注意的是,VDSP應(yīng)該通過(guò)0.1μF的電容耦合到Vss。此外,其它的模擬參考電壓,如RO、AX0和PO上的電壓大小均可由BR0?b2?決定,一般為2.5V或VEXT/2。
2.2 ∑-Δ編解碼濾波
通常在PCM通信系統(tǒng)中,當(dāng)語(yǔ)音信號(hào)進(jìn)入PCM編碼器之前,必須經(jīng)過(guò)一個(gè)300~3400Hz的濾波器,以濾除語(yǔ)音中的高頻分量,從而防止抽樣過(guò)程中可能出現(xiàn)的混疊現(xiàn)象,這個(gè)濾波器也稱(chēng)為前置去混疊濾波器。由于PCM解碼器的輸出信號(hào)是階梯波形,因此必須采用一個(gè)具有x/sinx補(bǔ)償因子的300~3400Hz 的低通濾波器,才能恢復(fù)出原語(yǔ)音信號(hào)。但是,音頻模擬濾波器的小型化始終是一個(gè)難題,在此頻段,采用LC濾波器進(jìn)行設(shè)計(jì)是最不可取的,而RC有源濾波器雖然可使電路體積減小,但在靈敏度、穩(wěn)定性和精度方面也不能令人滿(mǎn)意。因此,設(shè)計(jì)時(shí)應(yīng)盡量采用L9320內(nèi)部集成的開(kāi)關(guān)電容濾波器,它的準(zhǔn)確性和溫度穩(wěn)定性都很高。
L9320內(nèi)部本身帶有采用∑-Δ技術(shù)的線性14bit PCM編解碼濾波器。L9320可分為發(fā)射通道和接收通道。對(duì)于發(fā)射通道,當(dāng)來(lái)自麥克風(fēng)的模擬信號(hào)送入功率放大器后,其放大增益可以通過(guò)增益控制模塊由軟件進(jìn)行控制,范圍為0~7dB,步進(jìn)量為1 dB?!疲ふ{(diào)制功能模塊以1.024MHz的頻率對(duì)輸入的模擬信號(hào)進(jìn)行過(guò)采樣,下一級(jí)的抗混疊濾波器可將采樣頻率降到32kHz,接著再對(duì)其進(jìn)行4倍抽取而得到8kHz。這樣經(jīng)過(guò)各種濾波處理后,A/D后的14bits數(shù)據(jù)便可以送入DSP處理模塊以進(jìn)行進(jìn)一步的處理。對(duì)于接收通道,來(lái)自DSP處理模塊中Rx衰減控制部分的14bits線性數(shù)字信號(hào)首先送入數(shù)字抗混疊內(nèi)插濾波器,以完成與發(fā)射通道相反的功能,采樣率也將從8kHz(14bits)提高到1.024MHz(14bits),∑-Δ解調(diào)功能模塊則將14 bits采樣(1.024MHz)轉(zhuǎn)換為1bit采樣(1.024MHz)。輸出的數(shù)字信號(hào)送入開(kāi)關(guān)電容低通濾波器,再經(jīng)平滑濾波器消除由電容濾波器所引起的其它頻譜成分,同時(shí)恢復(fù)出原語(yǔ)音信號(hào)。最后,再將輸出的模擬信號(hào)送入功率放大器RO輸出。
需要說(shuō)明的是,L9320中另一個(gè)功率放大器PO采用的是推挽式結(jié)構(gòu)。AX0和PO在不同的應(yīng)用電路中有不同的配置方式,其中AX0主要用于便攜式領(lǐng)域,而PO主要用于高增益范圍,此時(shí)的增益范圍可以通過(guò)外部的兩個(gè)電阻來(lái)調(diào)節(jié)。
2.3 DSP處理模塊
DSP處理模塊是L9320中最核心的部分,同樣也可以分為發(fā)射通道和接收通道。發(fā)射通道主要完成側(cè)音增益處理、μ/A律壓縮以及ADPCM編碼和音調(diào)編碼。而在側(cè)音增益部分,輸入采樣將反饋到接收通道并和數(shù)字接收增益輸出相加,然后將A/D后的結(jié)果依次存入BR9?b7?b0?和BR10?b7?b2?寄存器。ADPCM編碼/音調(diào)編碼到底是提供16kbps?24kbps、32kbps的ADPCM數(shù)據(jù),還是提供64kbps的PCM數(shù)據(jù),應(yīng)根據(jù)所傳輸?shù)膸问絹?lái)決定。幀長(zhǎng)代表的是幀同步FST為“1”時(shí)(即FST有效時(shí))BCLK的上下降沿的個(gè)數(shù)。由于幀同步時(shí)鐘為8kHz,因此,每125μs應(yīng)進(jìn)行一次編碼中斷請(qǐng)求。
在接收通道,L9320通常在BCLK和FSR的控制下從DR接收來(lái)自串行數(shù)據(jù)口的數(shù)據(jù)。同樣,由于接收幀同步時(shí)鐘為8kHz,因此,每125μs應(yīng)發(fā)一次解碼中斷請(qǐng)求;而ADPCM解碼/音調(diào)解碼不但可以提供16kbps、24kbps或32kbps的ADPCM數(shù)據(jù),而且可以提供64kbps的PCM數(shù)據(jù)。L9320的數(shù)字接收增益靈敏度范圍可以通過(guò)SSP端口的BR3(b0:b0)進(jìn)行選擇和控制。為了消除噪聲影響,還可以通過(guò)設(shè)置BR7(b6)使能噪聲檢測(cè)算法來(lái)檢測(cè)干擾雜音,以便在必要的情況下采取降噪措施。把重建后的線性PCM數(shù)據(jù)進(jìn)行同步并送入SSP端口的BR11(b7?b0),可進(jìn)行G.726 CCITT標(biāo)準(zhǔn)調(diào)整。合成后的PCM數(shù)據(jù)將和發(fā)射通道側(cè)音增益模塊的反饋信號(hào)進(jìn)行疊加,然后再送入Rx衰減增益控制模塊以保護(hù)輸出驅(qū)動(dòng)器和避免失真;Rx衰減增益可以通過(guò)SSP端口的BR2(b2?b0)寄存器來(lái)進(jìn)行選擇和控制,其衰減范圍為0dB~-7dB,增益步進(jìn)量為1dB。
圖2
2.4 時(shí)序和控制
L9320的時(shí)序和控制部分主要用來(lái)提供諸如∑-Δ編解碼濾波所需的1.024MHz和8kHz等時(shí)鐘信號(hào)。DSP處理部分的MCLK主時(shí)鐘可以異步于其它部分的時(shí)鐘,它在無(wú)線應(yīng)用中的典型值為10.24MHz或16.384MHz?!疲ぞ幗獯a濾波可以直接利用BCLKR來(lái)作為1.024MHz輸入時(shí)鐘,但是它的上升沿必須和FST的上升沿基本保持一致。如果選用這種模式,則應(yīng)由BCLKT控制ADPCM的收發(fā)工作,這可以通過(guò)配置SSP端口的BR0?b7?寄存器來(lái)實(shí)現(xiàn)。
此外,有兩種方法可以降低芯片的總功耗。第一種方法是使PDI/RESET保持為0,這樣可使硬件電路處于低功耗狀態(tài)。第二種方法是利用軟件來(lái)實(shí)現(xiàn),即當(dāng)BR0(b1)設(shè)置為模擬低功率狀態(tài)時(shí),所有的模擬信號(hào)處理時(shí)鐘將停止工作;而當(dāng)BR0(b0)設(shè)置為1時(shí),所有的數(shù)字信號(hào)處理時(shí)鐘將停止工作。如果芯片處于低功耗狀態(tài),那么,VAG、TG、RO、PO、AXO、DT和SSP Tx的輸出均為高阻態(tài);而當(dāng)功耗模式被重新激活時(shí),ADPCM算法便復(fù)位到CCITT初始狀態(tài)。
3 L9320的應(yīng)用
將L9320編解碼器用于典型的無(wú)線便攜式產(chǎn)品時(shí),VEXT可以采用2.7~5.25V的電池供電,電路的連接方法如圖3所示。要注意的是,這里的VDD和VDSP不能用來(lái)對(duì)外部系統(tǒng)供電,而且在這種模式下,SSP端口的BR0(b2)寄存器必須首先清零。L9320可以廣泛應(yīng)用于低成本無(wú)線語(yǔ)音通信產(chǎn)品中,筆者所在的科研小組曾用L9320成功開(kāi)發(fā)出了無(wú)線會(huì)議系統(tǒng)的ADPCM語(yǔ)音編解碼電路,該系統(tǒng)中,L9320編解碼器的控制是由MCS-51系列單片機(jī)完成的。此外,L9320也可以廣泛應(yīng)用于公共電話交換網(wǎng)中。
圖3
4 結(jié)束語(yǔ)
L9320音頻脈沖編解碼器具有ADPCM編解碼器和PCM編解碼器/濾波器的雙向信號(hào)通道,它除具有正常的ADPCM編解碼模式外,還有PCM編解碼模式、電源測(cè)試模式和編解碼器測(cè)試模式。因此,應(yīng)用L9320的不同速率可在各信道實(shí)現(xiàn)不同的倍增比,從而有效提高信道的利用率。L9320有兩個(gè)主要應(yīng)用領(lǐng)域:一是無(wú)線電話系統(tǒng),二是在公共電話交換網(wǎng)中進(jìn)行線路對(duì)話量的增容。此外,L9320還可用于便攜式、低功耗無(wú)線通信產(chǎn)品中,比如無(wú)線會(huì)議系統(tǒng)等。
評(píng)論