新聞中心

        EEPW首頁 > 網絡與存儲 > 設計應用 > 基于IXP421的VoIP網關及其性能測評

        基于IXP421的VoIP網關及其性能測評

        ——
        作者:1、廣東高新興通信設備有限公司 2、清華大學電子工程系 姚啟欣1 唐昆2 黃穩1 時間:2007-01-26 來源:《電子設計應用》 收藏


        引言

        本文引用地址:http://www.104case.com/article/21314.htm

        就voip設備來說,如果語言處理器的功能和其他應用功能由一個處理器來完成,必然能極大地簡化電路,降低成本,intel的ixp421即是這些多功能處理器的其中一種,它的pcm接口使voip設備的硬件結構大大簡化了,其可以通過選擇不同微代碼的方式實現更加靈活的網絡應用。

        intel提供的解決方案是通過軟件dsp實現語音處理,并聲明dsp模塊可同時處理四路pcm窄帶話音,支持多種語音編碼及回波消除等功能,眾所周知,單路單向pcm語音速率為64kbps,單路雙向為128kbps,4路雙向則為512kbps,如何保證語音處理所需要的cpu時間是個關鍵問題。

        另外,回波消除或其他附加功能也會增加處理時間,在設計中還要考慮內存讀寫、任務切換、中斷處理等系統因素造成的影響。

        ixp421簡介

        ixp421是intel公司開發的采用xscale內核的ixp4xx系列處理器之一,主頻為266mhz,ixp421采用多處理引擎和硬件多線程處理機制,它包括了一個處理器內核和兩個并行網絡處理引擎,其中xscale內核微處理器核心,它是以arm v5內核為原形,進行了dsp功能擴展,并優化了16位數據類型的累加和乘法運算,啟動時首先初始化xscale核,然后網絡處理引擎將從內存下載各自的微代碼,以完成外圍網絡接口的鏈路層協議處理,它們的執行是完全并行于xscale內核的,通過內嵌的消息隊列與xscale核同步,先進高速總線(ahb)實現網絡處理引擎和xscale核之間的數據交換,其傳輸速率達到133.32mhz×32bit,完全能夠滿足高速網絡的數據傳輸要求。

        dsp軟件模塊

        intel公司為ixp4xx系列處理器專門開發了dsp軟件包,根據實現的不同功能,運行時的dsp模塊可分為幾個部分,包括網絡端點、編碼器、解碼器、音頻生成器、音頻檢測器、語音播放器、混音器和t.38。如果系統有四路電話,則每一路電話應該分配一個網絡端點,一個音頻生成器,一個音頻檢測器,網絡端點代表每一路電話所需的tdm前端處理功能,用以實現tdm數據的收發、發送增益控制和回波消除,而音頻生成器、音頻檢測器分別實現每一路電話的提示音及dtmf音頻檢測功能,另外,各路電話分享一個編碼器和一個解碼器,語音分流器負責控制網絡端點和編解碼器之間的數據流,語音播放器和混音器可多路共用,也可各路單獨占用一個,具體個數由應用需求決定。

        系統結構

        整個系統由用戶線接口、以太網接口、處理器和通信控制總線組成,如圖1所示。

        處理器即ixp421,它是設備運行的嵌入式操作系統及應用程序的載體,主要功能是:在通話過程中充當語音數字處理并分發語音包給特定的終端,在呼叫建立過程中處理網絡協議;初始化并控制各部分硬件模塊協同工作,提供用戶管理界面,內存芯片容量為64mb,通過pc133內存總線連接ixp421的內存控制器。16mb的intel strata flash芯片通過擴展總線連接ixp421,時鐘電路微處理器提供頻率為33.33mhz參照時鐘,處理器內核及其集成外圍電路的時鐘均由此分頻得到,復位電路微處理器提供上電復位功能,即在系統加電并穩定后復位引腳,保持至少500ms的低電平。

        用戶線接口,以silicon laboratroies公司的si3210型接口芯片為核心,為用戶提供模擬電話連接口功能,這些功能包括:用戶線直流饋電,摘掛機狀態檢測,dtmf檢測、振鈴、回鈴音及各種提示音、音頻采樣及d/a、a/d轉換,以及pcm數據收發等。

        以太網接口,采用intel的以太網接口芯片lxt972,其主要功能有:10baset/100base-tx自適應、自動網絡協商、沖突檢測、鏈路狀態告警,通過mii總線接口,配合ixp421的以太網處理引擎(npe),實現鏈路層功能,承載tcp/ip協議及其他應用層網絡協議。

        串口,為用戶提供基于串口的管理及調試功能。ixp421有兩組串行輸入、輸出接口,分別為uart0和uart1,其中uart0是高速串行通信端口,支持的通信波特率最高達921.6kbps。uart1為console串行通信口,支持的波特率范圍為1200bps-231kbps。

        系統中較為重要的外部總線的作用如下:

        1.hss(high speed serial)總線,連接處理器的wan/語音npe和用戶線接口芯片(slic),有時鐘、幀同步、輸入、輸出4條線,支持同步串行傳輸,可配置時鐘頻率范圍為512khz-8.192mhz,本文應用作為pcm語音信號的傳輸總線,時鐘為2mhz。即總共支持32個時隙,4路slic芯片各占一個時隙進行通信,ixp421的一個專用協處理器(voice npe)負責hss端口的總線數據收發。

        2、mii(media independent interface)總線,連接處理器的以太網npe和以太網phy接口芯片lxt972,分為mii數據總線和mii管理信息總線,ixp421的網絡處理引擎(npea)通過mii收發數據,網絡處理引擎獨立于主pcu內核工作,采用硬件多線程機制,使數據收發不占用主處理器時間,npea運行的微程序可提供對以太網phy設備的簡單控制功能。

        3、控制用戶線接口芯片的串行外圍接口spi(serial peripheral interface)以菊花鏈形式串接,有輸入、輸出、時鐘、片選4根線、占用處理器的4個gpio引腳。以串行8位命令方式讀寫slic的內部寄存器,可以看作slic的控制總線。

        性能測試

        測試方法

        兩路電話同時通話。對端電話保持有說話聲(本地解碼器保持一定的繁忙程度),用測試機一直ping被測設備的以太網地址,并運行etherreal工具軟件,抓取被測設備發送到對端的rtp包,計算出rtp包的時間間隔及抖動的統計值,同時觀察通話語音質量,本設備和對端設備每隔5秒發送rtcp協議的發送者報告,分段丟包率是在發送者報告中給出的統計值。

        測試說明

        空閑時(未建立通話),被測設備處理器占用率為20%;

        通話時打開回波消除,延遲環節設定為1ms延時;

        關閉靜音壓縮;

        對端voip設備采用獨立的dsp芯片(mindspeed:m82510-14);

        網絡環境為100base-tx以太網,傳輸延遲小于1ms。

        測試結果

        時間間隔、抖動及分段丟包率

        分析:表1的統計數據顯示,每種編碼的語音包到達對端的時間,都比規定的時間要提前零點幾個毫秒,這應該是本設備的dsp處理程序為對端的dsp提前預留了處理時間,產生抖動可能是受被側設備系統任務切換時間影響。因為對端設備也在向本端發送rtp包,這就需要本設備的以太網任務、ip協議棧和dsp任務來處理,所以,語音接收和發送過程爭搶cpu時間,從而造成小的抖動,而以太網交換機轉發過程所造成的抖動應該可以忽略。

        結論:由時間間隔和丟包率可見,被測設備沒有因為忙而產生延遲或丟包現象,在測試條件下處理器能力仍有富余,抖動是在設備允許的范圍內。

        語音質量

        分析:如表2所示,測試中g723.1編碼的語音效果有些問題,即對端聽本端的聲音效果很好,這可能是因為intel的sp模塊與mindspeed的dsp芯片的某個編解碼參數不同,畢竟其他編碼方式沒有這一問題,所以g723.1的語音質量給了低分。

        結論:除g.723.1編碼語音質量不理想外,其他幾種常用的編碼效果良好。



        關鍵詞:

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 翼城县| 长岛县| 苗栗市| 临汾市| 民丰县| 金门县| 当雄县| 宿迁市| 扶绥县| 囊谦县| 阿克苏市| 衡阳县| 惠州市| 阳江市| 鄂州市| 昂仁县| 靖边县| 普宁市| 胶南市| 滕州市| 清苑县| 迭部县| 平舆县| 蓝山县| 乌拉特中旗| 崇义县| 涿鹿县| 大方县| 忻州市| 盐津县| 敖汉旗| 北流市| 高平市| 湘潭市| 巴青县| 怀柔区| 古田县| 沙坪坝区| 中西区| 福鼎市| 灵宝市|