AMBE2000和AD73311在多模式電臺(tái)中的應(yīng)用
當(dāng)前,無(wú)論軍用還是民用電臺(tái),都在朝著多模式的方向發(fā)展。這就要求電臺(tái)的語(yǔ)音處理模塊能夠適應(yīng)多種調(diào)制方式以及多種數(shù)據(jù)速率。dvsi公司的ambe2000是一款實(shí)現(xiàn)了ambe語(yǔ)音壓縮、解壓縮軟件算法的芯片;adi公司的ad73311是一款16位語(yǔ)音a/d/a轉(zhuǎn)換芯片。二者的共同特點(diǎn)是配置靈活、接口簡(jiǎn)單高效,配合使用能夠在多種調(diào)制方式、多種數(shù)據(jù)速率下獲得優(yōu)良的語(yǔ)音質(zhì)量。本文介紹二者的功能特點(diǎn)及內(nèi)部結(jié)構(gòu),在此基礎(chǔ)上給出多模式電臺(tái)中語(yǔ)音處理模塊的實(shí)現(xiàn)方案。
本文引用地址:http://m.butianyuan.cn/article/21459.htmambe2000介紹
主要特點(diǎn)
壓縮數(shù)據(jù)率在2kbps~9.6kbps范圍內(nèi)可調(diào)節(jié)。當(dāng)速率在4kbps以上時(shí),可得到接近長(zhǎng)途電話的話音質(zhì)量;當(dāng)速率為2kbps時(shí),仍然具有較高的可懂度和自然度;
可變速的fec(前向糾錯(cuò))功能,可根據(jù)信道情況,靈活地選擇fec的速率;
低功耗(65mw@3.3v,0.11mw深度睡眠)、低復(fù)雜度;
具有語(yǔ)音激活檢測(cè)(vad--voice activity detection)功能、舒適噪聲(cn--comfortable noise)產(chǎn)生功能、回聲抵消(ec--echo canceling)功能;
具有dtmf信號(hào)檢測(cè)和產(chǎn)生功能;
可以通過(guò)配置管腳、寫(xiě)控制字的方式來(lái)設(shè)置工作狀態(tài);
通過(guò)串口進(jìn)行語(yǔ)音數(shù)據(jù)、壓縮數(shù)據(jù)、控制字的交換,簡(jiǎn)單高效。
基本結(jié)構(gòu)和主要管腳
如圖1所示,ambe2000可以分為獨(dú)立的兩部分--編碼器和譯碼器。編碼器從語(yǔ)音串行接口接收語(yǔ)音數(shù)據(jù)(可以是16bit線性、8 bit a律或8 bit u律),從信道串行接口輸出壓縮數(shù)據(jù);反之,譯碼器把從信道串行接口接收到的壓縮數(shù)據(jù)還原為語(yǔ)音數(shù)據(jù),從語(yǔ)音串行接口輸出。編碼器和譯碼器是完全異步的。語(yǔ)音串行接口和信道串行接口通常分別接a/d/a轉(zhuǎn)換器和微處理器,這里我們分別選用adi公司的ad73311和ti公司的tms320vc5416。
配置方法加電后首先對(duì)芯片進(jìn)行硬件復(fù)位(將管腳resetn置低),復(fù)位結(jié)束(管腳resetn由低變高)后的200ms內(nèi),芯片會(huì)根據(jù)各控制管腳的電平來(lái)設(shè)定自身的工作狀態(tài)。這200ms內(nèi)各控制管腳的電平必須是穩(wěn)定的,200ms之后,控制管腳電平的變化不會(huì)影響芯片的工作狀態(tài)(除非再次復(fù)位),欲改變芯片的工作狀態(tài),可以通過(guò)信道串行接口往芯片寫(xiě)控制字。
ad73311
主要特點(diǎn)
采樣率64khz、32khz、21.33khz、16khz、12.8khz、8khz可選;
可變?cè)鲆娴妮斎耄?~38db)、輸出(+6~-15db)放大器pga(programmable gain amplifier);
通過(guò)串口傳遞語(yǔ)音數(shù)據(jù)、接收控制命令,簡(jiǎn)單高效;
最大功率50mw@2.7v。
基本結(jié)構(gòu)和主要管腳:
輸入的模擬信號(hào)經(jīng)過(guò)可變?cè)鲆娣糯笃?、a/d轉(zhuǎn)換器后轉(zhuǎn)換為數(shù)字信號(hào),通過(guò)串口輸出;反之,來(lái)自串口的數(shù)據(jù)流被轉(zhuǎn)換為模擬信號(hào)后,經(jīng)過(guò)可變?cè)鲆娣糯笃鬏敵觥?
配置方法
ad73311的主要工作模式有兩種--編程模式和數(shù)據(jù)模式。芯片復(fù)位之后處于默認(rèn)的編程模式,這時(shí)可以通過(guò)串口往芯片內(nèi)的控制寄 存器寫(xiě)控制字,來(lái)設(shè)定工作狀態(tài)。設(shè)定完成后,還要寫(xiě)“進(jìn)入數(shù)據(jù)模式”的命令,以進(jìn)行正常的數(shù)據(jù)交換。
從以上描述可看出,ambe2000和ad73311的主時(shí)鐘都為16.384mhz,并且可以通過(guò)配置codec_sel[1..0]將ambe2000的語(yǔ)音接口設(shè)置成專門與ad73311通信,所以ambe2000和ad73311配合使用,會(huì)使得電路設(shè)計(jì)十分簡(jiǎn)單。
基于ambe2000和ad73311的語(yǔ)音處理模塊實(shí)現(xiàn)方法
實(shí)現(xiàn)方案
基于ambe2000和ad73311的語(yǔ)音處理模塊,能夠兼容多種調(diào)制方式、多種數(shù)據(jù)速率,芯片簡(jiǎn)單高效的接口也簡(jiǎn)化了電路的設(shè)計(jì),其實(shí)現(xiàn)方案如圖3所示。該語(yǔ)音處理模塊的靈活性主要體現(xiàn)在:
2、復(fù)位之后,dsp可以通過(guò)寫(xiě)控制字來(lái)設(shè)置ambe2000和ad73311的工作狀態(tài);
3、fpga切換數(shù)據(jù)交換的路徑,從而適應(yīng)不同的調(diào)制方式。在模擬調(diào)制方式(如am、fm等)下,數(shù)據(jù)在ad73311的串口、dsp的多通道緩沖串口0(mcbsp0)之間交換,無(wú)需經(jīng)過(guò)語(yǔ)音編、解碼;而在數(shù)字調(diào)制方式(如psk、fsk等)下,數(shù)據(jù)在ad73311的串口、ambe2000的語(yǔ)音串行接口、ambe2000的信道串行接口和dsp的多通道緩沖串口1(mcbsp1)之間交換。
工作過(guò)程
總體工作流程如圖4所示。首先進(jìn)行dsp的初始化,其中包括mcbsp0和mcbsp1的初始化,然后對(duì)ambe2000、ad73311進(jìn)行復(fù)位(之后的200ms內(nèi)ambe2000將自行完成工作狀態(tài)的設(shè)置),再通過(guò)fpga的切換將ad73311的串口與mcbsp0相連,把dsp的控制命令通過(guò)串口送入ad73311,主要是設(shè)定采樣速率、輸入和輸出增益,最后還要進(jìn)入數(shù)據(jù)模式。若電臺(tái)工作在數(shù)字調(diào)制方式下,還需在ad73311的設(shè)置完成后將ad73311的串口與ambe2000的語(yǔ)音接口相連。最后進(jìn)入空循環(huán),等待dsp的串口中斷,在串口中斷中完成數(shù)據(jù)的交換。dsp與ad73311的數(shù)據(jù)交換沒(méi)有嚴(yán)格的幀格式,只需按照串口時(shí)序傳輸即可,這里不再贅述,下面著重討論dsp與ambe2000的數(shù)據(jù)交換。
ambe2000的壓縮數(shù)據(jù)格式
ambe2000的壓縮數(shù)據(jù)格式有兩種:格式化和非格式化,這里選擇格式化,因?yàn)槠潇`活性更強(qiáng)。格式化模式下,編碼器約每20ms生成一個(gè)壓縮數(shù)據(jù)包,并通過(guò)信道串行接口進(jìn)行一次集中傳輸。數(shù)據(jù)包由24個(gè)字組成,每個(gè)字16比特,前12個(gè)字由幀頭、狀態(tài)及控制信息組成;后12個(gè)字是信道數(shù)據(jù),當(dāng)壓縮數(shù)據(jù)率低于9.6kbps時(shí),前面為有效數(shù)據(jù),后面填零。同樣,要對(duì)解調(diào)數(shù)據(jù)進(jìn)行譯碼,信道應(yīng)該約每20ms向譯碼器提供一個(gè)壓縮數(shù)據(jù)包,這時(shí)可以通過(guò)向ambe2000寫(xiě)適當(dāng)?shù)目刂谱謥?lái)改變由管腳設(shè)定的工作狀態(tài)。數(shù)據(jù)包傳輸時(shí)序如圖5所示。結(jié)構(gòu)如表1所示。
因?yàn)閍mbe2000的編碼數(shù)據(jù)包有一個(gè)幀頭0x13ec,所以考慮在mcbsp1接收中斷中通過(guò)匹配幀頭來(lái)定位有效數(shù)據(jù)。另外,第2~6個(gè)字為壓縮數(shù)據(jù)率特征字,在特定的數(shù)據(jù)率下,這5個(gè)字也是確定的。比如,在壓縮數(shù)據(jù)率為4kbps(2.4kbps語(yǔ)音數(shù)據(jù)+1.6kbps前 向糾錯(cuò))時(shí),第2~6個(gè)字分別為:0x1030、0x0001、0x0000、0x341a、0x6750,所以可以采用多幀頭匹配的方法來(lái)提高有效 數(shù)據(jù)定位的可靠性。4kbps的壓縮數(shù)據(jù)率下,有效數(shù)據(jù)為每幀的第12~16個(gè)字。dsp取數(shù)流程如圖6所示。
dsp送數(shù)、ambe2000解碼解碼時(shí),ambe2000要求dsp每20ms主動(dòng)向其提供一包數(shù)據(jù)。這里由fpga產(chǎn)生一個(gè)周期為20ms的中斷/int1,dsp在這個(gè)中斷中將指針置零并打開(kāi)發(fā)送串口,在串口中斷中按照解碼幀格式向ambe2000送數(shù)。前12次串口中斷發(fā)送幀頭、控制字,可以改變ambe2000的工作狀態(tài);第13~17次中斷中依次發(fā)送解調(diào)數(shù)據(jù);第18~24次中斷發(fā)送零,第24次中斷還需關(guān)閉發(fā)送串口。dsp送數(shù)流程如圖7所示。
結(jié)束語(yǔ)
本 文在介紹ambe2000和ad73311功能特點(diǎn)和基本結(jié)構(gòu)的基礎(chǔ)上,詳細(xì)講解了二者在多模式電臺(tái)中的應(yīng)用。二者配合使用,不僅語(yǔ)音效果好、電路設(shè)計(jì)簡(jiǎn)單,而且能夠適應(yīng)多種調(diào)制方式、多種數(shù)據(jù)速率,滿足多模式的要求。
評(píng)論