首頁(yè)>>>技術(shù)>>>VoIP

一種基于嵌入式技術(shù)的VoIP網(wǎng)關(guān)設計

劉波 吳學(xué)智 林海濤 何如龍 2008/08/20

  作為目前熱門(mén)的嵌入式技術(shù),開(kāi)發(fā)基于嵌入式技術(shù)的voip網(wǎng)關(guān)有助于進(jìn)一步拓寬嵌入式技術(shù)的應用范圍。本文介紹了基于嵌入式arm處理器的voip網(wǎng)關(guān)模塊的設計思路,并結合核心芯片ac4880xc-c詳細介紹了該模塊的設計流程、軟硬件結構及其工作方式。

voip的應用趨勢

  作為ngn(下一代網(wǎng)絡(luò ))中的重要組成部分,voip是面向未來(lái)、可持續發(fā)展的語(yǔ)音解決方案,可以為商業(yè)和家庭用戶(hù)提供質(zhì)優(yōu)價(jià)廉的ip語(yǔ)音服務(wù)。隨著(zhù)ngn網(wǎng)絡(luò )技術(shù)的快速發(fā)展,voip的通信量也已得到快速增長(cháng),并以其低廉的價(jià)格優(yōu)勢迅速占有市場(chǎng)。

voip語(yǔ)音技術(shù)與傳統電話(huà)的區別

  voip(又稱(chēng)ip phone)是建立在ip技術(shù)上的分組化、數字化語(yǔ)音傳輸技術(shù)。其基本原理是:通過(guò)語(yǔ)音壓縮算法對語(yǔ)音數據進(jìn)行壓縮編碼處理,然后把這些語(yǔ)音數據按ip等相關(guān)協(xié)議進(jìn)行打包,經(jīng)過(guò)ip網(wǎng)絡(luò )把數據包傳輸到接收地,再把這些語(yǔ)音數據包串起來(lái),經(jīng)過(guò)解碼解壓處理后,恢復成原來(lái)的語(yǔ)音信號,從而達到由ip網(wǎng)絡(luò )傳送語(yǔ)音的目的。voip系統把傳統電話(huà)的模擬信號轉換成計算機可聯(lián)入因特網(wǎng)傳送的ip數據包,同時(shí)也將收到的ip數據包轉換成聲音的模擬電信號。經(jīng)過(guò)voip系統的轉換及壓縮處理,每個(gè)普通電話(huà)傳輸速率約占用8~11kbit/s帶寬,因此在與普通電信網(wǎng)同樣使用傳輸速率為64kbit/s的帶寬時(shí), voip線(xiàn)路數是原來(lái)的5~8倍。同時(shí),ip技術(shù)允許多個(gè)用戶(hù)共用同一帶寬資源,改變了傳統電話(huà)由單個(gè)用戶(hù)獨占一個(gè)信道的方式,節省了用戶(hù)使用單獨信道的費用。

  voip的基本結構由網(wǎng)關(guān)(gw)和網(wǎng)守(gk)兩部分構成。網(wǎng)關(guān)的主要功能是信令處理、h.323協(xié)議處理、語(yǔ)音編解碼和路由協(xié)議處理等,對外分別提供與pstn網(wǎng)連接的中繼接口以及與ip網(wǎng)絡(luò )連接的接口。網(wǎng)守的主要功能是用戶(hù)認證、地址解析、帶寬管理、路由管理、安全管理和區域管理。voip的核心與關(guān)鍵設備是voip網(wǎng)關(guān)。

基于嵌入式技術(shù)的voip功能實(shí)現框圖

  1、voip實(shí)現原理框圖:(如圖1)

  2、嵌入式系統中voip的工作過(guò)程

  ① 在單個(gè)獨立的嵌入式系統內部進(jìn)行語(yǔ)音通信時(shí),該系統實(shí)現功能的過(guò)程如下:用戶(hù)話(huà)音脈沖通過(guò)slic和codec電路產(chǎn)生pcm流,載入語(yǔ)音處理器ac4880xc-c中,通過(guò)片內dsp進(jìn)行語(yǔ)音壓縮、成幀(包括地址等用戶(hù)信息及語(yǔ)音信息),ac4880xc-c再將數據包通過(guò)hpi口傳送到主系統,完成交換功能后,認定目的地是本系統的另一個(gè)用戶(hù),將處理過(guò)的話(huà)音數據包傳給ac4880xc-c,ac4880xc-c進(jìn)行解壓縮后, 以pcm流返回到codec部分,根據目的地址信息驅動(dòng)目的用戶(hù)。

  ② 在嵌入式系統之間進(jìn)行語(yǔ)音通信時(shí),過(guò)程如下:ac4880xc-c將話(huà)音數據包通過(guò)hpi口傳給本系統后,本系統的交換功能認定目的地是另一個(gè)嵌入式系統的一個(gè)用戶(hù),本系統將數據包重組后,通過(guò)i/o端口傳給目的系統,由目的系統自動(dòng)完成解壓縮,驅動(dòng)目的用戶(hù)的功能。

系統設計實(shí)現

  硬件設計為以下六塊組成

  1、slic(用戶(hù)線(xiàn)接口電路)部分

  采用amd公司生產(chǎn)的am79r70plcc芯片,通過(guò)該芯片產(chǎn)生輸入、輸出話(huà)音脈沖和鈴音脈沖。

  2、codec(編解碼)部分

  采用amd公司生產(chǎn)的am79q021jc編解碼芯片,通過(guò)該芯片產(chǎn)生的pcm流送到語(yǔ)音處理芯片處理。

  3、語(yǔ)音處理部分

  作為本系統中的核心部分,語(yǔ)音處理采用以色列audiocodes公司生產(chǎn)的專(zhuān)用多通道語(yǔ)音處理芯片ac4880xc-c。它具有以下特點(diǎn):

  4、cpld部分

  ac4880xc-c采用8位并行的主處理器接口hpi接口與主系統進(jìn)行數據交換。鑒于嵌入式系統中接口邏輯繁雜,選用cpld實(shí)現接口適配功能。主cpu可通過(guò)cpld控制實(shí)現codec 和slic部分的功能。

  5、hpi接口部分

  本設計中,嵌入式系統cpu與ac4880xc-c通過(guò)hpi接口進(jìn)行數據通信,cpu通過(guò)ac4880xc-c片內共享的雙口存儲器與其片內dsp實(shí)現數據交互。

  hpi接口包括1根8位數據總線(xiàn)和11根控制總線(xiàn)。主系統cpu通過(guò)三個(gè)寄存器(hpic、hpia和hpid)控制ac4880xc-c及訪(fǎng)問(wèn)片內存儲空間。hpic為控制寄存器,用來(lái)選擇ac4880xc-c的高低字節順序。hpia為地址寄存器,用來(lái)尋址片內的2k存儲空間。hpid為數據寄存器,用來(lái)緩存每次讀寫(xiě)的兩個(gè)字節數據,外部cpu以單個(gè)word或塊數據訪(fǎng)問(wèn)hpid。以塊數據方式訪(fǎng)問(wèn)時(shí),hpia寄存器自動(dòng)累加,可減少外部cpu寫(xiě)hpia寄存器的開(kāi)銷(xiāo)。ac4880xc-c的內部寄存器和存儲器為16位,外部cpu每次訪(fǎng)問(wèn)ac4880xc-c必須以?xún)蓚(gè)字節為基本單位,信號線(xiàn)hi/lo用來(lái)選擇高低字節,信號hrs1、hrs0指示當前訪(fǎng)問(wèn)的是哪個(gè)寄存器。

  6、語(yǔ)音接口部分

  語(yǔ)音接口提供未壓縮語(yǔ)音、傳真數據的i/o通道。語(yǔ)音接口對外提供四根信號線(xiàn)pcmin、pcmout、pcmclk、pcmfs構成pcm總線(xiàn),直接連接外部codec芯片的pcm highway。pcmin輸入從codec送來(lái)的pcm信號,ac4880xc-c內部的dsp按照相應標準壓縮后從hpi口交給主系統cpu 處理。pcmout則相反,ac4880xc-c將主系統cpu送來(lái)的語(yǔ)音數據按照合適的標準解壓縮,然后從pcmout口送到外部codec,codec經(jīng)過(guò)數/模轉換后恢復成語(yǔ)音信號再通過(guò)用戶(hù)接口送給用戶(hù)端。pcmclk提供2.048mhz的比特同步時(shí)鐘,而pcmfs提供8khz的幀同步時(shí)鐘。pcm主時(shí)鐘(bclk)、幀同步時(shí)鐘(fs)、接收數據(dr)和發(fā)送數據(dx)一起構成pcm highway信號,與ac4880xc-c進(jìn)行連接。bclk與fs分別對應ac4880xc-c的pcmclk和pcmfs,這兩個(gè)時(shí)鐘信號都由ac4880xc-c 產(chǎn)生;dr和dx分別對應ac4880xc-c的pcmout和pcmin。pcm highway信號時(shí)序以及時(shí)隙與幀同步信號的關(guān)系分別如圖3、圖4所示。為了codec與dsp芯片間正確收發(fā)數據,一般選擇codec芯片在bclk的上升沿發(fā)送數據dx,下降沿采樣數據dr,而在另一端的ac4880xc-c,則在時(shí)鐘下降沿采樣pcmin,上升沿發(fā)送pcmout。

軟件設計部分

  該系統軟件主要用于對ac4880xc-c進(jìn)行控制,實(shí)現讀寫(xiě)等操作。

  1、編寫(xiě)芯片ac4880xc-c的讀寫(xiě)函數

圖5 軟件流程圖

  主要是基于嵌入式arm處理器,通過(guò)hpi接口實(shí)現對ac4880xc-c及相關(guān)芯片的讀寫(xiě)操作。流程圖如圖5所示:

  2、配置ac4880xc-c內部設置

  首先通過(guò)處理器對codec和cpld進(jìn)行配置,并調用audiocodes 公司提供的初始化內核程序對ac4880xc-c進(jìn)行復位初始化。復位成功后,寫(xiě)入內核程序,然后寫(xiě)入工作程序,最后再將這些程序通過(guò)ac4880xc-c的hpi接口寫(xiě)入到ac4880xc-c,芯片即開(kāi)始工作。

結語(yǔ)

  嵌入式系統作為一種功能強大的軟硬件操作開(kāi)發(fā)平臺,很適合基于嵌入式arm處理器的voip的開(kāi)發(fā)。ac4880xc-c是一款功能強大語(yǔ)音處理芯片,本方案利用該芯片作為核心芯片,配以其他功能芯片實(shí)現了基于嵌入式技術(shù)的voip網(wǎng)關(guān)。該網(wǎng)關(guān)已應用于嵌入式綜合實(shí)驗平臺,效果十分理想,在ip電話(huà)和多媒體通信領(lǐng)域的應用前景非常廣泛。

《世界電子元器件》



相關(guān)鏈接:
VoIP應用準備 NetQoS網(wǎng)絡(luò )管理架構介紹 2008-08-20
Adhearsion-下一個(gè)Ruby殺手級應用? 2008-08-18
CIO應關(guān)注統一通信(UC) 為企業(yè)管理鋪路 2008-08-15
VoIP不是UC的必由之路 2008-08-13
網(wǎng)吧成本為先 VOIP擴展技術(shù)助網(wǎng)吧創(chuàng )新增值服務(wù) 2008-08-12

分類(lèi)信息:        
亚洲精品网站在线观看不卡无广告,国产a不卡片精品免费观看,欧美亚洲一区二区三区在线,国产一区二区三区日韩 长宁区| 海淀区| 平安县| 寿宁县| 天长市| 定远县| 特克斯县| 长子县| 卓尼县| 深圳市| 安徽省| 海原县| 义马市| 定州市| 定陶县| 贡觉县| 额敏县| 九龙城区| 咸宁市| 曲松县| 云阳县| 汝州市| 海南省| 合阳县| 会泽县| 墨竹工卡县| 福鼎市| 灵璧县| 清河县| 金华市| 永丰县| 庆安县| 房山区| 富顺县| 丰台区| 肥西县| 武冈市| 体育| 自治县| 运城市| 分宜县| http://444 http://444 http://444 http://444 http://444 http://444