《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計應(yīng)用 > 新型聲碼器CMX638及應(yīng)用設(shè)計
新型聲碼器CMX638及應(yīng)用設(shè)計
ednchina
呂錫釗 肖化
華南師范大學(xué)
摘要: 語音編解碼技術(shù)的迅速發(fā)展,使中低速率語音編碼技術(shù)廣泛應(yīng)用于現(xiàn)代移動通信。初期的脈沖編碼調(diào)制PCM方案傳輸速率為64 Kb/s,占用的頻帶寬,成本高。在實際通信中,有些信道難以擴展且質(zhì)量差,而有些信道正廣泛使用,短期內(nèi)難以更新;有些昂貴的信道,壓縮每一個比特都意味著節(jié)省成本。如何在較窄的帶寬內(nèi)傳送更多的語音數(shù)據(jù),這就要求利用各種壓縮編碼技術(shù)來擴大通信容量。因此,這里給出了基于新型語音編碼器CMX638的應(yīng)用設(shè)計方案。
Abstract:
Key words :

  l 引言

  語音編解碼技術(shù)的迅速發(fā)展,使中低速率語音編碼技術(shù)廣泛應(yīng)用于現(xiàn)代移動通信。初期的脈沖編碼調(diào)制PCM方案傳輸速率為64 Kb/s,占用的頻帶寬,成本高。在實際通信中,有些信道難以擴展且質(zhì)量差,而有些信道正廣泛使用,短期內(nèi)難以更新;有些昂貴的信道,壓縮每一個比特都意味著節(jié)省成本。如何在較窄的帶寬內(nèi)傳送更多的語音數(shù)據(jù),這就要求利用各種壓縮編碼技術(shù)來擴大通信容量。因此,這里給出了基于新型語音編碼器CMX638的應(yīng)用設(shè)計方案。

  2 CMX638簡介

  CMX638是一款高集成,高性能全雙工語音編解碼器,采用魯棒的先進低復(fù)雜性波形插入技術(shù),提供超低位速率下長話級音質(zhì)性能,且具有FEC(前向糾錯)、SDD(軟決策解碼)、DTX(非連續(xù)發(fā)送檢測)、VAD(語音激活檢測)、CNG(舒適噪聲發(fā)生)、STD和DTMF信號檢測功能。因此,該語音編解碼器可廣泛用于語音存儲和回放、VoIP、數(shù)字PMR/LMR、再生數(shù)字語音中繼等領(lǐng)域。

  2.1 主要特性

  CMX638具有以下主要特性:長話級音質(zhì)魯棒先進的低復(fù)雜性波形插入編碼算法:多種壓縮速率模式則為2 050 b/s,2 400 b/s、2 750 b/s或3 600 b/s(帶FEC功能);集成16位A/D和D/A轉(zhuǎn)換器、模擬增益放大器和數(shù)字低通濾波器:數(shù)據(jù)包壓縮時間長度分20 ms,40 ms,60 ms和80 ms;具有VAD、CNG、STD和DTMF功能;+1.8 V和+3.3 V雙電源供電:采用48引腳LQFP(L4)和48引腳VQFN(Q3)封裝;工作溫度范圍為-40℃~+85℃。

  2.2 內(nèi)部結(jié)構(gòu)

  CMX638的內(nèi)部結(jié)構(gòu)包括模擬和數(shù)字兩部分,加圖1所示。當(dāng)端口CSEL輸入低電平時,即選擇使用外部語音解碼器(CODEC),可通過串行接口SSP 與外部器件交換數(shù)據(jù),編碼器和解碼器選擇片外CODEC的數(shù)據(jù)通道,端口EEC和REC輸出分別使能和復(fù)位片外的CODEC;當(dāng)CSEL輸入高電平時,CMX638選用內(nèi)部CODEC模塊,該模塊包括輸入/輸出通道的可編程增益放大器(PGA),16位PCM A/D和D/A轉(zhuǎn)換器以及通帶頻率為4 kHz的低通濾波器,可有效實現(xiàn)模擬信號轉(zhuǎn)換成數(shù)字信號及數(shù)字信號轉(zhuǎn)換成模擬信號的過程。主機通過控制總線C-BUS接口配置內(nèi)部寄存器,實現(xiàn)不同功能;端口SYNC使主機與CMX638同步;語音壓縮編碼器將源信號壓縮成低比特率的數(shù)據(jù)幀,解碼器把數(shù)據(jù)幀解壓縮,恢復(fù)源信號;如果使用FEC功能,開關(guān)則選擇前向糾錯編碼器和解碼器,兩者加入到數(shù)據(jù)的壓縮和解壓縮過程中:STD/DTMF管理模塊提供語音信號的特殊處理功能,實現(xiàn)單音或雙音檢測,提高語音壓縮和解壓質(zhì)量。

CMX638的內(nèi)部結(jié)構(gòu)

  2.3 與AMBE2000相比較

  與同類競爭產(chǎn)品語音壓縮編解碼器件AMBE2000相比CMX638具有以下特點:采用RALCWI算法,速度快,質(zhì)量好且結(jié)構(gòu)簡單;片內(nèi)集成增益放大器,A/D和D/A轉(zhuǎn)換器,低通濾波器,能夠直接處理模擬信號,提高信噪比;可選用外部語音CODEC,具有靈活性;壓縮速率雖無AMBE2000的選項多,但配合壓縮包時間長度和FEC功能,可應(yīng)用于DMR TDMA和DMR FDMA及其他場合;封裝引腳數(shù)少,易于使用和布線,且成本低。表1列出CMX638與AMBE2000的異同點。

CMX638與AMBE2000的異同點

  3 CMX638工作原理

  3.1 編解碼過程

  3.1.1 不帶FEC的簡單幀格式編解碼

  CMX638提供簡單的編解碼數(shù)據(jù)幀格式,其壓縮速率包括2 050 b/s,2 400 b/s,2 750 b/s,此過程不帶FEC,STD和DTMF功能。CMX638每隔20 ms采集160個16位數(shù)據(jù)(A/D轉(zhuǎn)換器的采樣率為8 kHz),當(dāng)?shù)谝粋€20 ms結(jié)束后,開始編碼運算,由于信號的異同會產(chǎn)生不同抖動延時,主機在40 ms的時刻讀取第一幀數(shù)據(jù)。以后每隔20 ms操作一次,形成流水線作業(yè)。在解碼過程中,在0 ms時刻主機向CMX638輸入一幀數(shù)據(jù)后,CMX638開始解碼運算,與編碼相似也會出現(xiàn)算法抖動延時,第一個樣本的輸出時刻由內(nèi)部寄存器IDD決定,其延時應(yīng)確保輸出連續(xù)有效的數(shù)據(jù)。圖2為CMX638簡單幀格式編解碼過程。

CMX638簡單幀格式編解碼過程
  3.1.2 帶FEC的復(fù)雜幀格式編解碼

  CMX638可提供帶前向糾錯的編解碼數(shù)據(jù)幀格式,其數(shù)據(jù)包長度為60 ms,包括3幀數(shù)據(jù),其壓縮速率為3 600 b/s。CMX638在0時刻開始采樣,每隔20 ms進行編碼運算,會出現(xiàn)抖動延時,每隔60 ms插入一次FEC編碼(圖3黑色部分),在80 ms時刻一個數(shù)據(jù)包穩(wěn)定有效,主機讀出數(shù)據(jù),以后每隔60 ms操作一次。在解碼過程中,主機向CMX638輸入數(shù)據(jù)包后,開始對每一幀數(shù)據(jù)解碼運算,并會出現(xiàn)抖動延時,設(shè)置適當(dāng)?shù)膬?nèi)部寄存器IDD,可在延時后輸出連續(xù)有效的數(shù)據(jù)。圖3是帶FEC的復(fù)發(fā)幀格式編解碼過程,其數(shù)據(jù)包壓縮時間為60 ms。

帶FEC的復(fù)發(fā)幀格式編解碼過程
  3.2 數(shù)據(jù)幀格式

  CMX638編碼后輸出的數(shù)據(jù)幀格式較簡單,無幀頭和其他控制標(biāo)志信息,直接輸出有效數(shù)據(jù)。當(dāng)壓縮速率為2 050b/s時,每隔20 ms產(chǎn)生一幀數(shù)據(jù),有效數(shù)據(jù)位為41 bit,占用6字節(jié),主機必須以字節(jié)為單位與CMX638交換數(shù)據(jù),所以應(yīng)該輸入/輸出6字節(jié),其中最高字節(jié)先進先出,7個無效比特位不影響編解碼。當(dāng)壓縮速率為2 400 b/s時,其工作原理與2 050 b/s壓縮速率相同,有效數(shù)據(jù)為48 bit,恰好占用6字節(jié),無無效比特位。當(dāng)壓縮速率為2 750 b/s,有效數(shù)據(jù)為55bit,占用7字節(jié),1個無效比特位,必須輸入/輸出7字節(jié)。當(dāng)壓縮速率為3 600 b/s,帶FEC功能,每隔60 ms產(chǎn)生包括3幀的數(shù)據(jù)包,有效數(shù)據(jù)為216 bit,采用硬比特格式,占用27字節(jié)。而采用軟比特格式時,則占用108字節(jié)。

  3.3 主機與片外CODEC接口

  主機通過C-BUS串行接口與CMX638交換數(shù)據(jù)。寫操作時,CSN為低,先寫入要訪問的寄存器地址,再寫入有效數(shù)據(jù),以字節(jié)為單位,結(jié)束時CSN拉高;讀操作時,先寫入地址,接著讀取數(shù)據(jù)。在CLK上升沿采樣,最大時鐘頻率為5 MHz;每兩次CSN操作應(yīng)至少相隔1μs。

  當(dāng)CMX638選用外部CODEC時,利用SSP接口與外部CODEC交換數(shù)據(jù)。當(dāng)STRB同步脈沖到達,如果是寫操作,SDI輸入16 bit數(shù)據(jù);如果是讀操作,SDO輸出16 bit數(shù)據(jù)。SCLK的最大時鐘頻率為6.6 MHz,時鐘沿采樣輸入數(shù)據(jù)方式取決于內(nèi)部寄存器EXCODECCONT($0B)。

  4 應(yīng)用電路

  4.1 CMX638采集電路設(shè)計

  圖4是基于CMX638的語音采樣、壓縮、解壓縮的應(yīng)用電路,采集麥克風(fēng)的語音信號,直接壓縮;再解壓縮恢復(fù)源語音信號輸出到喇叭。CMX638使用片內(nèi)的語音CODEC,可直接采集模擬信號。輸入/輸出通道分別有兩個可編程增益放大器,通過配置寄存器AIG($05)和AOG($06)確定其增益。當(dāng)輸入/輸出增益較大時,可能出現(xiàn)噪聲,但這些噪聲被片內(nèi)數(shù)字低通濾波器濾除。信號的輸入/輸出端無需接放大電路和濾波電路,提高信噪比。

 

基于CMX638的語音采樣

  麥克風(fēng)和喇叭的輸入/輸出采用差分接法,提高抗干擾性能。晶體振蕩器頻率為12 MHz,對應(yīng)的XTALSEL[3:1]引腳輸入值為“010”,引腳ENABXTAL輸入高電平。由于選用片內(nèi)語音CODEC,引腳CSEL輸入高電平,則與片外語音CODEC通信的數(shù)字接口SDI,SDO,SCLK,STRB必須全部接地。引腳EEC和FEC是輸出端口,可以懸空。C-BUS接口與微控制器對應(yīng)相接,CLK時鐘頻率為1 MHz,通過C-BUS接口先配置內(nèi)部寄存器,確定其工作方式。在編碼正常工作狀態(tài)下,微控制器根據(jù)SYNC端口與CMX638同步,通過IRQN接收中斷信號,讀取壓縮的數(shù)據(jù)幀并存儲為后級處理;在解碼過程中,微控制器向CMX638送入數(shù)據(jù)幀解碼,恢復(fù)源語音信號。

  4.2 CMX638與PCM3500接口電路設(shè)計

  CMX638使用靈活,當(dāng)選用片外語音CODEC時,其典型應(yīng)用是與PCM3500配合使用,圖5為應(yīng)用電路。PCM3500是Burr-Brown公司開發(fā)的16位低功耗A/D和D/A轉(zhuǎn)換器,系統(tǒng)晶體振蕩器時鐘頻率為4.096 MHz,采樣率為8 kHz。端口BCK時鐘頻率為128 kHz。MS端輸入高電平為主動工作模式,F(xiàn)S主動輸出同步信號,BCK輸出時鐘信號。引腳TSC輸入低電平,控制時隙操作模式,當(dāng)同時使用多片 PCM3500時才使能該功能,對應(yīng)的FSO為輸出口,可懸空。引腳LOOP使能A/D轉(zhuǎn)換器與D/A轉(zhuǎn)換器循環(huán)連接。HPFD輸入高電平,取消高通濾波器,可濾除輸入的直流分量。麥克風(fēng)和喇叭采用單端輸入/輸出方式,輸入端接增益為22的放大電路和直流偏置電路,輸出端接上低通濾波器,提高信噪比。數(shù)字接口與CMX638的SPI接口對應(yīng)連接,實現(xiàn)數(shù)據(jù)交換。

  由于CMX638選用片外的語音CODEC,端口CSEL應(yīng)輸入低電平,利用REC連接PCM3500的PDWN端口,對其復(fù)位;模擬輸入/輸出端需要增加相應(yīng)的放大和濾波電路。微控制器配置內(nèi)部寄存器EXCODECCONT($0B)可使CMX638與PCM3500的通信接口工作方式相對應(yīng),如圖5所示。該電路同樣實現(xiàn)麥克風(fēng)的語音信號的采集,直接壓縮;再解壓縮恢復(fù)源信號輸出到喇叭。圖4和圖5都可以靈活應(yīng)用于話音記錄儀,語音通信系統(tǒng),數(shù)字鏈路等領(lǐng)域。

CMX638與PCM3500的通信接口

  5 結(jié)語

  隨著數(shù)字語音通信的高速發(fā)展,要求在極低傳輸速率中保持高質(zhì)量語音信號。改進編碼速率低于4 Kb/s的壓縮算法無疑成為當(dāng)前研究熱點。作為最有潛力的波形內(nèi)插語音編碼算法,其今后研究重點為與其他低速率語音編碼技術(shù)更合理相互補充;特征波形提取和對齊問題。CMX638采用魯棒的先進低復(fù)雜性波形插入技術(shù)的語音編解碼算法,在低速率下保持長話級的語音質(zhì)量,不但節(jié)約存儲資源,而且能夠減小對通信帶寬的要求。聲碼器CMX638集成了A/D和D/A轉(zhuǎn)換器,可直接處理模擬信號,使用靈活,具有廣闊的應(yīng)用前景。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。