葛海江
(杭州職業(yè)技術(shù)學(xué)院 信電系,浙江 杭州 310018)
在無線VoIP數(shù)據(jù)通訊中存在的主要問題是由于干擾造成數(shù)據(jù)包的丟失,產(chǎn)生了間斷數(shù)據(jù)流,使得語音信號中斷。因此,在VoIP的無線數(shù)據(jù)通訊中,研究者需要穩(wěn)健性較高的解決方案來適應(yīng)不間斷數(shù)據(jù)流的需要[1]。目前大多數(shù)的無線VoIP通訊采用的是單天線設(shè)計,這樣在無線通訊時容易造成數(shù)據(jù)包丟失,使得聲音出現(xiàn)斷續(xù)現(xiàn)象,筆者提出了一種雙天線的設(shè)計方式來實現(xiàn)無線音頻信號的傳送。在音頻編碼上,傳統(tǒng)方法采用的是PCM編碼方式,這種方式對音頻信號的存儲和傳輸都存在著非常大的冗余度,考慮到聲波信號的連續(xù)性,筆者提出了一種PCM轉(zhuǎn)換成ADP?CM的編碼方式來壓縮音頻信號。在無線通訊中,WirelessUSB[2-3]技術(shù)在抗干擾性能上優(yōu)于其他2.4 GHz解決方案,而且其運行穩(wěn)定性也比價格更昂貴的藍牙與DECT解決方案高,通信協(xié)議設(shè)計更為簡潔,能縮短產(chǎn)品開發(fā)周期;在語音編解碼上,華邦的W681360音頻編/解碼器具有線性轉(zhuǎn)換、低功耗、無干擾信號傳輸?shù)忍攸c,從而確保音頻編/解碼器獲得出色的信號質(zhì)量。
鑒于此,本研究提出一種將華邦的W681360[4]與WirelessUSB組合的方式來實現(xiàn)短距離的無線音頻通訊;采用這種方式實現(xiàn)的無線VoIP發(fā)射器和接收器將具有高穩(wěn)健性、低功耗、成本低等優(yōu)點。
無線VoIP發(fā)射器和接收器的硬件設(shè)計介紹如下:
(1)無線VoIP發(fā)射器和接收器由兩個部分組成:發(fā)射端(Remote)、接收端(Bridge)。
(2)在發(fā)射部分設(shè)計中,主控和RF芯片采用了Cypress公司的CY7C60323和CYRF6936。音頻編解器采用華邦公司的W681360,射頻部分還采用了兩路射頻開關(guān)芯片UPG2012TB,其功能是在帶寬允許的范圍內(nèi),實現(xiàn)雙路無線通訊。此外本研究采用了BQ24080的充電芯片,給鋰電池進行充電,鋰電池供電輸出經(jīng)過TPS79133低壓差電壓轉(zhuǎn)換芯片得到3.3 V的工作電壓,給后面模塊進行供電。主控芯片與音頻編解器、無線通訊芯片通過SPI接口進行通訊,通過W_CS及RF_CS進行片選。
發(fā)射部分的具體模塊如圖1所示。
圖1 無線VoIP發(fā)射器硬件模塊圖
(3)在接收部分設(shè)計中,主控和RF芯片采用了Cy?press公司的CY7C64215和CYRF6936。USB接口供電輸出5.0 V電壓經(jīng)過TPS79133得到3.3 V電壓,作為上述芯片供電輸入。
接收部分的具體模塊如圖2所示。
圖2 無線VoIP接收器硬件模塊圖
對于有線CD音質(zhì)的立體聲采樣率為44.1 ksps或者48 ksps,對于7.5 kHz帶寬的音頻信號采樣率為16 ksps。本研究考慮到無線通訊的信號帶寬為250 kbps,CPU工作頻率為12 MHz及SPI通訊的工作要求,對語音信號的采樣率設(shè)置為8 ksps,已能滿足單一語音信號的無線通訊要求。
該設(shè)計中有兩個音頻信號通路:
(1)從USB到SPKR,主機通過USB接口傳送16-bit PCM的音頻信號,經(jīng)過Bridge,將16-bit PCM轉(zhuǎn)換成4-bit ADPCM,然后無線傳送給Remote端;在Re?mote端將4-bit ADPCM還原成15-bit PCM,然后經(jīng)過13-bit音頻編解碼器,輸出音頻信號驅(qū)動揚聲器(SP?KR)發(fā)聲。
(2)從MIC到USB,與上述類似。
本研究為了簡化操作,音頻數(shù)據(jù)從主機到SPKR端時,將USB的16-bit PCM,在Bridge上轉(zhuǎn)換為15-bit的數(shù)據(jù)流,然后再進行ADPCM編碼。同樣音頻數(shù)據(jù)從MIC到主機端時,ADPCM編碼在Bridge上還原出15-bit數(shù)據(jù)流后,還需要完成16-bit的PCM數(shù)據(jù)轉(zhuǎn)換,然后通過USB接口傳送給主機。
此外與揚聲器和麥克風(fēng)的接口音頻編、解碼器是13-bit的,在進行ADPCM之前,要將它轉(zhuǎn)換成15-bit的PCM碼。由于音頻信號的前后自相關(guān)性,這樣的轉(zhuǎn)換并不會造成聲音信號的弱化。
PCM到ADPCM編、解碼,如圖3所示。
圖3 PCM到ADPCM編/解碼
ADPCM編碼充分利用了聲波在連續(xù)的采樣中具有很高的前后相關(guān)性,使得后續(xù)聲波的采樣能夠被預(yù)測,而不是只對當前的采樣進行編碼。ADPCM對預(yù)見的聲波采樣和當前的采樣進行差分編碼。這種方法不僅提高了聲波的壓縮率,同時也能保持完整的聲音質(zhì)量[5-6]。此外,文獻[6]詳細闡述了DPCM、DM、ADM與ADPCM的壓縮算法原理及算法實現(xiàn)流程,通過實驗,給出了每個算法的特征,實驗結(jié)果進一步證實了ADPCM算法既能夠有效的壓縮語音,又能還原出高質(zhì)量的語音。
臨離開美食街,忽然看見藕稀飯,明明吃飽了,還是條件反射買了一碗?;孛妹猛瑢W(xué)家吃起來,藕塊,略硬,頗掛喉。要等到秋風(fēng)起了,寒霜降了,江南的藕才可口,煮出鐵銹紅色,軟糯芬芳,糯米粥煮得發(fā)亮,上面飄著厚厚一層粥油。寒冬的時候,坐在街頭,喝一碗,可暖一下午,也暖了一輩子。
ADPCM算法是建立在IMA組織為了提高數(shù)字化語音兼容性應(yīng)用的基礎(chǔ)之上的。IMA提供了ADPCM參考算法,它通過簡化許多操作和查表的方式來減少運算的復(fù)雜性,將16-bit PCM壓縮成4-bit。
在圖3中,編碼器(Encoder)將輸入的采樣值(Xn)和預(yù)測值Xp(n)進行差分d(n),將差分的值送入量化器(Quantizer)來產(chǎn)生4-bit的c(n)。c(n)通過反向量化器輸出dq(n)和舊的預(yù)測值Xp(n)相加,產(chǎn)生新的Xp(n)。理想狀態(tài)下,d(n)=dq(n),新舊Xp(n)值也相等。
在這里Xp(n)為解碼器解碼后的值。如果解碼器中的Predic和StepSize值跟編碼器都相同,那么解碼器的解碼和編碼器的Xp(n)計算是相同的。對于StepSize是對4-bit的c(n)值進行增加或者減少。文獻[7]提出了通過克隆重組方法來快速優(yōu)化ADPCM的多參數(shù)。
通過ADPCM編碼壓縮的方法,編碼器設(shè)置和更新它的Predic和StepSize值,解碼器在數(shù)據(jù)流中來捕捉這兩個值。只要沒有數(shù)據(jù)丟失,編碼器和解碼器就具有相同的Predict和StepSize值。然而在無線傳輸中,系統(tǒng)無法保證數(shù)據(jù)包不丟失,因此解碼器并不能總是跟蹤編碼器的Predict值和StepSize的值。在這里本研究給每個數(shù)據(jù)包設(shè)置3 ms的長度,同時每個數(shù)據(jù)包中都包含了Predict和StepSize的值,讓每個數(shù)據(jù)包被單獨處理,然而3 ms數(shù)據(jù)包的丟失,并不會讓人覺察到語音信號的失真。
本研究設(shè)置USB的PCM速率為8 ksps,每個PCM為16位,通過將音頻數(shù)據(jù)的PCM轉(zhuǎn)換成ADPCM,使得音頻數(shù)據(jù)被壓縮了3/4,有效實現(xiàn)了音頻數(shù)據(jù)的壓縮。
為了防止在無線傳送過程中數(shù)據(jù)包的丟失,造成聲音信號的中斷。在無線通訊上,本研究在硬件上采用了雙天線設(shè)計,提供了兩個無線數(shù)據(jù)通路,通過無線高頻開關(guān)進行天線的切換工作。此外在無線射頻電路的參數(shù)匹配上,要得到最大的功率傳遞,源阻抗與負載阻抗必須相匹配[8],通過采用“逐個優(yōu)化參數(shù)”的方法[9]來盡量匹配射頻參數(shù),以此來提高射頻電路的發(fā)射功率,通過該方法使得兩邊的無線通訊距離可達15 m以上。
文獻[10]中簡要介紹了無線音頻無線數(shù)字/模擬音頻傳輸系統(tǒng)的設(shè)計,在天線設(shè)計方面,它采用的是單天線設(shè)計,這樣使得音頻數(shù)據(jù)在無線傳輸過程中,如果造成數(shù)據(jù)包的丟失,則在接收端將無法重現(xiàn)丟失的信號。因此本研究采用了雙天線的設(shè)計。這里設(shè)計的天線A和天線B在Remote端,同樣也可以設(shè)置在Bridge端,設(shè)計中將128 kbps的無線帶寬分成兩個64 kbps帶寬。一個數(shù)據(jù)包使用64 kbps通過天線A進行傳送,這個數(shù)據(jù)包的復(fù)制包使用另外的64 kbps通過天線B進行傳送。這樣Bridge端就有兩個無線數(shù)據(jù)通路。此外Bridge端也傳送兩個同樣的數(shù)據(jù)包給Re?mote端,天線A接收第一數(shù)據(jù)包,天線B接收復(fù)制的數(shù)據(jù)包。
通過這種方式,將有效地減少數(shù)據(jù)包的丟失。因為只有兩個無線通路上都丟失數(shù)據(jù),數(shù)據(jù)才會丟失。
無線通訊數(shù)據(jù)包中有15個字節(jié),其中包含了24個ADPCM編碼,時間為3 ms;24 samples/8 ksps=3 ms。采用了8-bit step和12-bit Predict值。
圖4 無線VoIP數(shù)據(jù)包
軟件設(shè)計流程為:
(1)軟件設(shè)計有兩個部分:發(fā)射器部分和接收器部分。
(2)發(fā)射器的主程序流程圖如圖5所示。
圖5 發(fā)射器主程序流程圖
(3)接收器的主程序流程圖如圖6所示。
圖6 接收器主程序流程圖
在3 ms的數(shù)據(jù)包中,包含有24單獨的中斷,每125 μs就有一個中斷,每個750 μs中包含了6個中斷。研究者可以采用中斷序號的方式來確定每個中斷服務(wù)程序的內(nèi)容。
本研究通過對2.4 GHz的無線VoIP發(fā)射器和接收器的應(yīng)用研究,實現(xiàn)了音頻信號短距離的無線雙向通訊。筆者對該無線發(fā)射器和接收器進行無線語音通訊測試,在有效距離15 m以內(nèi),無間斷數(shù)據(jù)流產(chǎn)生,語音信號通訊流暢。該方案通過自適應(yīng)差分編碼方式實現(xiàn)了聲波的有效壓縮,壓縮率達1/4;通過雙天線的設(shè)計方法解決了數(shù)據(jù)包丟失的問題;通過引入“逐個優(yōu)化參數(shù)”的方法來提高發(fā)射的功率及接收靈敏度;通過采用華邦的W681360編解碼器與WirelessUSB組合來實現(xiàn)VoIP的軟、硬設(shè)計,具備了無線VoIP的低功耗、高穩(wěn)健性特點,而且相比藍牙方案,成本較低。
該方案可廣泛應(yīng)用于無線VoIP耳機、無線多媒體輔助應(yīng)用等短距離的無線音頻數(shù)據(jù)通訊的場合。
(References):
[1] DAS S K,LEE E,BASU K,et al.Performance optimization of voip calls over wireless links using H.323 protocol[J].IEEE Transactionson Computers,2003,52(6):742-752.
[2] Cypress Corporation.Wireless USB 2-Way HID Systems-AN4003[EB/OL].[2011-05-13].http://www.cypress.com/?docID=29040.
[3] 劉連浩,楊 杰,沈增暉.2.4 GHz無線USB技術(shù)的開發(fā)與應(yīng)用[J].計算機工程,2009,35(3):152-154.
[4] Winbond Electronics Corporation.W681360 Data Sheet[EB/OL].[2005-01-01].http://datasheet.eeword.com.cn/pdf/20017/-WINBOND.W681360.html.
[5] 李文華,徐 剛.利用ADPCM進行網(wǎng)絡(luò)環(huán)境下實時多點語音通信[J].計算機工程與應(yīng)用,2004,40(36):127-130.
[6] 廖廣銳,劉 萍.基于ADPCM的語音壓縮算法研究[J].計算機與數(shù)字工程,2007,35(7):39-41.
[7] 張 剛,謝克明,郭紅波,等.基于N進制編碼的克隆重組方法應(yīng)用于快速優(yōu)化ADPCM的多參數(shù)[J].通訊學(xué)報,2006,27(3):28-31.
[8] 黃煜梅,葉菁華,朱 臻,等.2.4 GHz、增益可控的CMOS低噪聲放大器[J].固體電子學(xué)研究與進展,2004,24(4):498-504.
[9] 葛海江,陶 姍,吳弋旻,等.2.4 GHz無線鼠標的多信道控制方法研究[J].計算機工程與應(yīng)用,2009,45(9):77-79.
[10] 湯煒偉,孫新亞,吉吟東.基于nRF24Z1的無線數(shù)字/模擬音頻傳輸系統(tǒng)[J].電子技術(shù)應(yīng)用,2007(4):41-43.