就VoIP設(shè)備來(lái)說(shuō),如果語(yǔ)言處理器的功能和其他應(yīng)用功能由一個(gè)處理器來(lái)完成,必然能極大地簡(jiǎn)化電路,降低成本,Intel的IXP421即是這些多功能處理器的其中一種,它的PCM接口使VoIP設(shè)備的硬件結(jié)構(gòu)大大簡(jiǎn)化了,其可以通過(guò)選擇不同微代碼的方式實(shí)現(xiàn)更加靈活的網(wǎng)絡(luò)應(yīng)用。
Intel提供的解決方案是通過(guò)軟件DSP實(shí)現(xiàn)語(yǔ)音處理,并聲明DSP模塊可同時(shí)處理四路PCM窄帶話(huà)音,支持多種語(yǔ)音編碼及回波消除等功能,眾所周知,單路單向PCM語(yǔ)音速率為64Kbps,單路雙向?yàn)?28kbps,4路雙向則為512Kbps,如何保證語(yǔ)音處理所需要的CPU時(shí)間是個(gè)關(guān)鍵問(wèn)題。
另外,回波消除或其他附加功能也會(huì)增加處理時(shí)間,在設(shè)計(jì)中還要考慮內(nèi)存讀寫(xiě)、任務(wù)切換、中斷處理等系統(tǒng)因素造成的影響。
IXP421簡(jiǎn)介
IXP421是Intel公司開(kāi)發(fā)的采用XSCALE內(nèi)核的IXP4xx系列處理器之一,主頻為266MHz,IXP421采用多處理引擎和硬件多線(xiàn)程處理機(jī)制,它包括了一個(gè)處理器內(nèi)核和兩個(gè)并行網(wǎng)絡(luò)處理引擎,其中XSCALE內(nèi)核微處理器核心,它是以ARM V5內(nèi)核為原形,進(jìn)行了DSP功能擴(kuò)展,并優(yōu)化了16位數(shù)據(jù)類(lèi)型的累加和乘法運(yùn)算,啟動(dòng)時(shí)首先初始化XSCALE核,然后網(wǎng)絡(luò)處理引擎將從內(nèi)存下載各自的微代碼,以完成外圍網(wǎng)絡(luò)接口的鏈路層協(xié)議處理,它們的執(zhí)行是完全并行于XSCALE內(nèi)核的,通過(guò)內(nèi)嵌的消息隊(duì)列與XSCALE核同步,先進(jìn)高速總線(xiàn)(AHB)實(shí)現(xiàn)網(wǎng)絡(luò)處理引擎和XSCALE核之間的數(shù)據(jù)交換,其傳輸速率達(dá)到133.32MHz×32bit,完全能夠滿(mǎn)足高速網(wǎng)絡(luò)的數(shù)據(jù)傳輸要求。
DSP軟件模塊
Intel公司為IXP4xx系列處理器專(zhuān)門(mén)開(kāi)發(fā)了DSP軟件包,根據(jù)實(shí)現(xiàn)的不同功能,運(yùn)行時(shí)的DSP模塊可分為幾個(gè)部分,包括網(wǎng)絡(luò)端點(diǎn)、編碼器、解碼器、音頻生成器、音頻檢測(cè)器、語(yǔ)音播放器、混音器和T.38。如果系統(tǒng)有四路電話(huà),則每一路電話(huà)應(yīng)該分配一個(gè)網(wǎng)絡(luò)端點(diǎn),一個(gè)音頻生成器,一個(gè)音頻檢測(cè)器,網(wǎng)絡(luò)端點(diǎn)代表每一路電話(huà)所需的TDM前端處理功能,用以實(shí)現(xiàn)TDM數(shù)據(jù)的收發(fā)、發(fā)送增益控制和回波消除,而音頻生成器、音頻檢測(cè)器分別實(shí)現(xiàn)每一路電話(huà)的提示音及DTMF音頻檢測(cè)功能,另外,各路電話(huà)分享一個(gè)編碼器和一個(gè)解碼器,語(yǔ)音分流器負(fù)責(zé)控制網(wǎng)絡(luò)端點(diǎn)和編解碼器之間的數(shù)據(jù)流,語(yǔ)音播放器和混音器可多路共用,也可各路單獨(dú)占用一個(gè),具體個(gè)數(shù)由應(yīng)用需求決定。
系統(tǒng)結(jié)構(gòu)
整個(gè)系統(tǒng)由用戶(hù)線(xiàn)接口、以太網(wǎng)接口、處理器和通信控制總線(xiàn)組成,如圖1所示。
處理器即IXP421,它是設(shè)備運(yùn)行的嵌入式操作系統(tǒng)及應(yīng)用程序的載體,主要功能是:在通話(huà)過(guò)程中充當(dāng)語(yǔ)音數(shù)字處理并分發(fā)語(yǔ)音包給特定的終端,在呼叫建立過(guò)程中處理網(wǎng)絡(luò)協(xié)議;初始化并控制各部分硬件模塊協(xié)同工作,提供用戶(hù)管理界面,內(nèi)存芯片容量為64MB,通過(guò)PC133內(nèi)存總線(xiàn)連接IXP421的內(nèi)存控制器。16MB的Intel Strata Flash芯片通過(guò)擴(kuò)展總線(xiàn)連接IXP421,時(shí)鐘電路微處理器提供頻率為33.33MHz參照時(shí)鐘,處理器內(nèi)核及其集成外圍電路的時(shí)鐘均由此分頻得到,復(fù)位電路微處理器提供上電復(fù)位功能,即在系統(tǒng)加電并穩(wěn)定后復(fù)位引腳,保持至少500ms的低電平。
用戶(hù)線(xiàn)接口,以Silicon Laboratroies公司的Si3210型接口芯片為核心,為用戶(hù)提供模擬電話(huà)連接口功能,這些功能包括:用戶(hù)線(xiàn)直流饋電,摘掛機(jī)狀態(tài)檢測(cè),DTMF 檢測(cè)、振鈴、回鈴音及各種提示音、音頻采樣及D/A、A/D轉(zhuǎn)換,以及PCM數(shù)據(jù)收發(fā)等。
以太網(wǎng)接口,采用Intel的以太網(wǎng)接口芯片LXT972,其主要功能有:10BASET/100BASE-TX自適應(yīng)、自動(dòng)網(wǎng)絡(luò)協(xié)商、沖突檢測(cè)、鏈路狀態(tài)告警,通過(guò)MII總線(xiàn)接口,配合IXP421的以太網(wǎng)處理引擎(NPE),實(shí)現(xiàn)鏈路層功能,承載TCP/IP協(xié)議及其他應(yīng)用層網(wǎng)絡(luò)協(xié)議。
串口,為用戶(hù)提供基于串口的管理及調(diào)試功能。IXP421有兩組串行輸入、輸出接口,分別為UART0和UART1,其中UART0是高速串行通信端口,支持的通信波特率最高達(dá)921.6Kbps。UART1為CONSOLE串行通信口,支持的波特率范圍為1200bps-231Kbps。
系統(tǒng)中較為重要的外部總線(xiàn)的作用如下:
1.HSS(High Speed Serial)總線(xiàn),連接處理器的WAN/語(yǔ)音NPE和用戶(hù)線(xiàn)接口芯片(SLIC),有時(shí)鐘、幀同步、輸入、輸出4條線(xiàn),支持同步串行傳輸,可配置時(shí)鐘頻率范圍為512KHz-8.192MHz,本文應(yīng)用作為PCM語(yǔ)音信號(hào)的傳輸總線(xiàn),時(shí)鐘為2MHz。即總共支持32個(gè)時(shí)隙,4路SLIC芯片各占一個(gè)時(shí)隙進(jìn)行通信,IXP421的一個(gè)專(zhuān)用協(xié)處理器(VOICE NPE)負(fù)責(zé)HSS端口的總線(xiàn)數(shù)據(jù)收發(fā)。
2、MII(Media Independent Interface)總線(xiàn),連接處理器的以太網(wǎng)NPE和以太網(wǎng)PHY接口芯片LXT972,分為MII數(shù)據(jù)總線(xiàn)和MII管理信息總線(xiàn),IXP421的網(wǎng)絡(luò)處理引擎(NPEA)通過(guò)MII收發(fā)數(shù)據(jù),網(wǎng)絡(luò)處理引擎獨(dú)立于主PCU內(nèi)核工作,采用硬件多線(xiàn)程機(jī)制,使數(shù)據(jù)收發(fā)不占用主處理器時(shí)間,NPEA運(yùn)行的微程序可提供對(duì)以太網(wǎng)PHY設(shè)備的簡(jiǎn)單控制功能。
3、控制用戶(hù)線(xiàn)接口芯片的串行外圍接口SPI(Serial Peripheral Interface)以菊花鏈形式串接,有輸入、輸出、時(shí)鐘、片選4根線(xiàn)、占用處理器的4個(gè)GPIO引腳。以串行8位命令方式讀寫(xiě)SLIC的內(nèi)部寄存器,可以看作SLIC的控制總線(xiàn)。
性能測(cè)試
測(cè)試方法
兩路電話(huà)同時(shí)通話(huà)。對(duì)端電話(huà)保持有說(shuō)話(huà)聲(本地解碼器保持一定的繁忙程度),用測(cè)試機(jī)一直ping被測(cè)設(shè)備的以太網(wǎng)地址,并運(yùn)行EtherReal工具軟件,抓取被測(cè)設(shè)備發(fā)送到對(duì)端的RTP包,計(jì)算出RTP包的時(shí)間間隔及抖動(dòng)的統(tǒng)計(jì)值,同時(shí)觀(guān)察通話(huà)語(yǔ)音質(zhì)量,本設(shè)備和對(duì)端設(shè)備每隔5秒發(fā)送RTCP協(xié)議的發(fā)送者報(bào)告,分段丟包率是在發(fā)送者報(bào)告中給出的統(tǒng)計(jì)值。
測(cè)試說(shuō)明
空閑時(shí)(未建立通話(huà)),被測(cè)設(shè)備處理器占用率為20%;
通話(huà)時(shí)打開(kāi)回波消除,延遲環(huán)節(jié)設(shè)定為1ms延時(shí);
關(guān)閉靜音壓縮;
對(duì)端VoIP設(shè)備采用獨(dú)立的DSP芯片(MindSpeed:M82510-14);
網(wǎng)絡(luò)環(huán)境為100BASE-TX以太網(wǎng),傳輸延遲小于1ms。
測(cè)試結(jié)果
時(shí)間間隔、抖動(dòng)及分段丟包率分析:表1的統(tǒng)計(jì)數(shù)據(jù)顯示,每種編碼的語(yǔ)音包到達(dá)對(duì)端的時(shí)間,都比規(guī)定的時(shí)間要提前零點(diǎn)幾個(gè)毫秒,這應(yīng)該是本設(shè)備的DSP處理程序?yàn)閷?duì)端的DSP提前預(yù)留了處理時(shí)間,產(chǎn)生抖動(dòng)可能是受被側(cè)設(shè)備系統(tǒng)任務(wù)切換時(shí)間影響。因?yàn)閷?duì)端設(shè)備也在向本端發(fā)送RTP包,這就需要本設(shè)備的以太網(wǎng)任務(wù)、IP協(xié)議棧和DSP任務(wù)來(lái)處理,所以,語(yǔ)音接收和發(fā)送過(guò)程爭(zhēng)搶CPU時(shí)間,從而造成小的抖動(dòng),而以太網(wǎng)交換機(jī)轉(zhuǎn)發(fā)過(guò)程所造成的抖動(dòng)應(yīng)該可以忽略。
結(jié)論:由時(shí)間間隔和丟包率可見(jiàn),被測(cè)設(shè)備沒(méi)有因?yàn)槊Χa(chǎn)生延遲或丟包現(xiàn)象,在測(cè)試條件下處理器能力仍有富余,抖動(dòng)是在設(shè)備允許的范圍內(nèi)。
語(yǔ)音質(zhì)量
分析:如表2所示,測(cè)試中G723.1編碼的語(yǔ)音效果有些問(wèn)題,即對(duì)端聽(tīng)本端的聲音效果很好,這可能是因?yàn)镮ntel的SP模塊與MindSpeed的DSP芯片的某個(gè)編解碼參數(shù)不同,畢竟其他編碼方式?jīng)]有這一問(wèn)題,所以G723.1的語(yǔ)音質(zhì)量給了低分。
結(jié)論:除G.723.1編碼語(yǔ)音質(zhì)量不理想外,其他幾種常用的編碼效果良好。
責(zé)任編輯:gt
-
處理器
+關(guān)注
關(guān)注
68文章
19388瀏覽量
230572 -
dsp
+關(guān)注
關(guān)注
554文章
8058瀏覽量
349649 -
編碼器
+關(guān)注
關(guān)注
45文章
3655瀏覽量
134953
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論