VoIP的應(yīng)用趨勢(shì) 作為NGN(下一代網(wǎng)絡(luò))中的重要組成部分,VoIP是面向未來(lái)、可持續(xù)發(fā)展的語(yǔ)音解決方案,可以為商業(yè)和家庭用戶提供質(zhì)優(yōu)價(jià)廉的IP語(yǔ)音服務(wù)。隨著 NGN網(wǎng)絡(luò)技術(shù)的快速發(fā)展,VoIP的通信量也已得到快速增長(zhǎng),并以其低廉的價(jià)格優(yōu)勢(shì)迅速占有市場(chǎng)。 VoIP語(yǔ)音技術(shù)與傳統(tǒng)電話的區(qū)別 VoIP(又稱IP PHONE)是建立在IP技術(shù)上的分組化、數(shù)字化語(yǔ)音傳輸技術(shù)。其基本原理是:通過(guò)語(yǔ)音壓縮算法對(duì)語(yǔ)音數(shù)據(jù)進(jìn)行壓縮編碼處理,然后把這些語(yǔ)音數(shù)據(jù)按IP等相關(guān)協(xié)議進(jìn)行打包,經(jīng)過(guò)IP網(wǎng)絡(luò)把數(shù)據(jù)包傳輸?shù)浇邮盏,再把這些語(yǔ)音數(shù)據(jù)包串起來(lái),經(jīng)過(guò)解碼解壓處理后,恢復(fù)成原來(lái)的語(yǔ)音信號(hào),從而達(dá)到由IP網(wǎng)絡(luò)傳送語(yǔ)音的目的。VoIP系統(tǒng)把傳統(tǒng)電話的模擬信號(hào)轉(zhuǎn)換成計(jì)算機(jī)可聯(lián)入因特網(wǎng)傳送的IP數(shù)據(jù)包,同時(shí)也將收到的IP數(shù)據(jù)包轉(zhuǎn)換成聲音的模擬電信號(hào)。經(jīng)過(guò)VoIP系統(tǒng)的轉(zhuǎn)換及壓縮處理,每個(gè)普通電話傳輸速率約占用8~11kbit/s帶寬,因此在與普通電信網(wǎng)同樣使用傳輸速率為64kbit/s的帶寬時(shí), VoIP線路數(shù)是原來(lái)的5~8倍。同時(shí),IP技術(shù)允許多個(gè)用戶共用同一帶寬資源,改變了傳統(tǒng)電話由單個(gè)用戶獨(dú)占一個(gè)信道的方式,節(jié)省了用戶使用單獨(dú)信道的費(fèi)用。 VoIP的基本結(jié)構(gòu)由網(wǎng)關(guān)(GW)和網(wǎng)守(GK)兩部分構(gòu)成。網(wǎng)關(guān)的主要功能是信令處理、H.323協(xié)議處理、語(yǔ)音編解碼和路由協(xié)議處理等,對(duì)外分別提供與PSTN網(wǎng)連接的中繼接口以及與IP網(wǎng)絡(luò)連接的接口。網(wǎng)守的主要功能是用戶認(rèn)證、地址解析、帶寬管理、路由管理、安全管理和區(qū)域管理。VoIP的核心與關(guān)鍵設(shè)備是VoIP網(wǎng)關(guān)。 基于嵌入式技術(shù)的VoIP功能實(shí)現(xiàn)框圖 1、VoIP實(shí)現(xiàn)原理框圖:(如圖1) 2、嵌入式系統(tǒng)中VoIP的工作過(guò)程: ① 在單個(gè)獨(dú)立的嵌入式系統(tǒng)內(nèi)部進(jìn)行語(yǔ)音通信時(shí),該系統(tǒng)實(shí)現(xiàn)功能的過(guò)程如下:用戶話音脈沖通過(guò)SLIC和CODEC電路產(chǎn)生PCM流,載入語(yǔ)音處理器 AC4880XC-C中,通過(guò)片內(nèi)DSP進(jìn)行語(yǔ)音壓縮、成幀(包括地址等用戶信息及語(yǔ)音信息),AC4880XC-C再將數(shù)據(jù)包通過(guò)HPI口傳送到主系統(tǒng),完成交換功能后,認(rèn)定目的地是本系統(tǒng)的另一個(gè)用戶,將處理過(guò)的話音數(shù)據(jù)包傳給AC4880XC-C,AC4880XC-C進(jìn)行解壓縮后,以PCM流返回到CODEC部分,根據(jù)目的地址信息驅(qū)動(dòng)目的用戶。 ② 在嵌入式系統(tǒng)之間進(jìn)行語(yǔ)音通信時(shí),過(guò)程如下:AC4880XC-C將話音數(shù)據(jù)包通過(guò)HPI口傳給本系統(tǒng)后,本系統(tǒng)的交換功能認(rèn)定目的地是另一個(gè)嵌入式系統(tǒng)的一個(gè)用戶,本系統(tǒng)將數(shù)據(jù)包重組后,通過(guò)I/O端口傳給目的系統(tǒng),由目的系統(tǒng)自動(dòng)完成解壓縮,驅(qū)動(dòng)目的用戶的功能。 系統(tǒng)設(shè)計(jì)實(shí)現(xiàn) 硬件設(shè)計(jì)為以下六塊組成 1、SLIC(用戶線接口電路)部分 采用AMD公司生產(chǎn)的AM79R70PLCC芯片,通過(guò)該芯片產(chǎn)生輸入、輸出話音脈沖和鈴音脈沖。 2、CODEC(編解碼)部分 采用AMD公司生產(chǎn)的AM79Q021JC編解碼芯片,通過(guò)該芯片產(chǎn)生的PCM流送到語(yǔ)音處理芯片處理。 3、語(yǔ)音處理部分 作為本系統(tǒng)中的核心部分,語(yǔ)音處理采用以色列AudioCodes公司生產(chǎn)的專用多通道語(yǔ)音處理芯片AC4880XC-C。它具有以下特點(diǎn): ⊙ 支持ITU的G.711、G.723.1、G.726、G.729A等分組語(yǔ)音處理標(biāo)準(zhǔn); ⊙ 支持回波抵制和抵消、靜音檢測(cè)和舒適噪音等提高分組語(yǔ)音處理性能的配套模塊; ⊙ 高質(zhì)量壞幀插補(bǔ); ⊙ 支持2.4"14.4 kbps的T.38和FRF.11的功能傳真業(yè)務(wù); ⊙ 支持各種信令,如DTMF等; ⊙ 提供語(yǔ)音、傳真、數(shù)據(jù)或信令等PCM高速接口; ⊙ 可選擇 或o 律; ⊙ 輸入輸出增益控制; ⊙ 提供同步HPI、PCM、時(shí)鐘、存儲(chǔ)器以及I/O和仿真測(cè)試接口(如圖2); ⊙ 144pin,TQFP封裝,1.8V內(nèi)核電壓,3.3V芯片電壓。 4、CPLD部分 AC4880XC-C采用8位并行的主處理器接口HPI接口與主系統(tǒng)進(jìn)行數(shù)據(jù)交換。鑒于嵌入式系統(tǒng)中接口邏輯繁雜,選用CPLD實(shí)現(xiàn)接口適配功能。主 CPU可通過(guò)CPLD控制實(shí)現(xiàn)CODEC 和SLIC部分的功能。 [table][/table] 5、HPI接口部分 本設(shè)計(jì)中,嵌入式系統(tǒng)CPU與AC4880XC-C通過(guò)HPI接口進(jìn)行數(shù)據(jù)通信,CPU通過(guò)AC4880XC-C片內(nèi)共享的雙口存儲(chǔ)器與其片內(nèi)DSP實(shí)現(xiàn)數(shù)據(jù)交互。HPI接口包括1根8位數(shù)據(jù)總線和11根控制總線。主系統(tǒng)CPU通過(guò)三個(gè)寄存器(HPIC、HPIA和HPID)控制AC4880XC-C及訪問(wèn)片內(nèi)存儲(chǔ)空間。HPIC為控制寄存器,用來(lái)選擇AC4880XC-C的高低字節(jié)順序。HPIA為地址寄存器,用來(lái)尋址片內(nèi)的2K存儲(chǔ)空間。HPID為數(shù)據(jù)寄存器,用來(lái)緩存每次讀寫(xiě)的兩個(gè)字節(jié)數(shù)據(jù),外部CPU以單個(gè)Word或塊數(shù)據(jù)訪問(wèn)HPID。以塊數(shù)據(jù)方式訪問(wèn)時(shí),HPIA寄存器自動(dòng)累加,可減少外部 CPU寫(xiě)HPIA寄存器的開(kāi)銷。AC4880XC-C的內(nèi)部寄存器和存儲(chǔ)器為16位,外部CPU每次訪問(wèn)AC4880XC-C必須以兩個(gè)字節(jié)為基本單位,信號(hào)線HI/LO用來(lái)選擇高低字節(jié),信號(hào)HRS1、HRS0指示當(dāng)前訪問(wèn)的是哪個(gè)寄存器。 6、語(yǔ)音接口部分 語(yǔ)音接口提供未壓縮語(yǔ)音、傳真數(shù)據(jù)的I/O通道。語(yǔ)音接口對(duì)外提供四根信號(hào)線PCMIN、PCMOUT、PCMCLK、PCMFS構(gòu)成PCM總線,直接連接外部CODEC芯片的PCM Highway。PCMIN輸入從CODEC送來(lái)的PCM信號(hào),AC4880XC-C內(nèi)部的DSP按照相應(yīng)標(biāo)準(zhǔn)壓縮后從HPI口交給主系統(tǒng)CPU 處理。PCMOUT則相反,AC4880XC-C將主系統(tǒng)CPU送來(lái)的語(yǔ)音數(shù)據(jù)按照合適的標(biāo)準(zhǔn)解壓縮,然后從PCMOUT口送到外部 CODEC,CODEC經(jīng)過(guò)數(shù)/模轉(zhuǎn)換后恢復(fù)成語(yǔ)音信號(hào)再通過(guò)用戶接口送給用戶端。PCMCLK提供2.048MHz的比特同步時(shí)鐘,而PCMFS提供 8kHz的幀同步時(shí)鐘。PCM主時(shí)鐘(BCLK)、幀同步時(shí)鐘(FS)、接收數(shù)據(jù)(DR)和發(fā)送數(shù)據(jù)(DX)一起構(gòu)成PCM Highway信號(hào),與AC4880XC-C進(jìn)行連接。BCLK與FS分別對(duì)應(yīng)AC4880XC-C的PCMCLK和PCMFS,這兩個(gè)時(shí)鐘信號(hào)都由 AC4880XC-C 產(chǎn)生;DR和DX分別對(duì)應(yīng)AC4880XC-C的PCMOUT和PCMIN。PCM Highway信號(hào)時(shí)序以及時(shí)隙與幀同步信號(hào)的關(guān)系分別如圖3、圖4所示。為了CODEC與DSP芯片間正確收發(fā)數(shù)據(jù),一般選擇CODEC芯片在BCLK 的上升沿發(fā)送數(shù)據(jù)DX,下降沿采樣數(shù)據(jù)DR,而在另一端的AC4880XC-C,則在時(shí)鐘下降沿采樣PCMIN,上升沿發(fā)送PCMOUT。 軟件設(shè)計(jì)部分 該系統(tǒng)軟件主要用于對(duì)AC4880XC-C進(jìn)行控制,實(shí)現(xiàn)讀寫(xiě)等操作。 1、編寫(xiě)芯片AC4880XC-C的讀寫(xiě)函數(shù) 主要是基于嵌入式ARM處理器,通過(guò)HPI接口實(shí)現(xiàn)對(duì)AC4880XC-C及相關(guān)芯片的讀寫(xiě)操作。流程圖如圖5所示: 2、配置AC4880XC-C內(nèi)部設(shè)置 首先通過(guò)處理器對(duì)CODEC和CPLD進(jìn)行配置,并調(diào)用AudioCodes 公司提供的初始化內(nèi)核程序?qū)C4880XC-C進(jìn)行復(fù)位初始化。復(fù)位成功后,寫(xiě)入內(nèi)核程序,然后寫(xiě)入工作程序,最后再將這些程序通過(guò)AC4880XC- C的HPI接口寫(xiě)入到AC4880XC-C,芯片即開(kāi)始工作。 結(jié)語(yǔ) 嵌入式系統(tǒng)作為一種功能強(qiáng)大的軟硬件操作開(kāi)發(fā)平臺(tái),很適合基于嵌入式ARM處理器的VoIP的開(kāi)發(fā)。AC4880XC-C是一款功能強(qiáng)大語(yǔ)音處理芯片,本方案利用該芯片作為核心芯片,配以其他功能芯片實(shí)現(xiàn)了基于嵌入式技術(shù)的VoIP網(wǎng)關(guān)。該網(wǎng)關(guān)已應(yīng)用于嵌入式綜合實(shí)驗(yàn)平臺(tái),效果十分理想,在IP電話和多媒體通信領(lǐng)域的應(yīng)用前景非常廣泛。 |