- 相關(guān)推薦
VoIP語音卡在路由器中的應(yīng)用及硬件設(shè)計(jì)
摘要:介紹了VoIP語音卡在路由器中的應(yīng)用,詳細(xì)描述了一款應(yīng)用于路由器的語音卡的硬件結(jié)構(gòu)及其工作方式。關(guān)鍵詞:VoIPPCIFXS路由器語音壓縮
。保郑铮桑性诼酚善髦械膽(yīng)用
近年來,VoIP(VoiceoverInternetProtocol)給通信市場帶來了強(qiáng)大的沖擊。IP語音業(yè)務(wù)推出后,由于其在通話費(fèi)用上比傳統(tǒng)電話具有突出的優(yōu)勢,因而受到了廣泛歡迎。VoIP技術(shù)在路由器中應(yīng)用,可以大大節(jié)省有多個(gè)部門在不同地方辦公的企業(yè)或機(jī)構(gòu)的電話費(fèi)用。圖1為一個(gè)VoIP路由器在公安分局與派出所間應(yīng)用的方案。
派出所網(wǎng)點(diǎn)的路由器DCR-2501V和DCR-2509V使用FR(幀中繼)或DDN線路同分局的DCR-3660實(shí)現(xiàn)互連,各網(wǎng)點(diǎn)的計(jì)算機(jī)可通過路由器連接分局的局域網(wǎng)或Internet,實(shí)現(xiàn)數(shù)據(jù)通信;同時(shí),DCR-2501V或DCR-2509V通過FXS語音端口連接普通電話機(jī),分局路由器通過E&M接口和PBX連接,這樣既可以實(shí)現(xiàn)內(nèi)部各部門間的數(shù)據(jù)通信,同時(shí)還可進(jìn)行零費(fèi)用的語音通話。
。郑铮桑性谫M(fèi)用上呈現(xiàn)巨大優(yōu)勢的原因在于其利用了計(jì)算機(jī)通訊的分組化、數(shù)字化傳輸技術(shù),先對(duì)語音數(shù)據(jù)按照一定的語音壓縮標(biāo)準(zhǔn)進(jìn)行壓縮編碼處理,然后把這些數(shù)據(jù)按IP相關(guān)協(xié)議打包,再將數(shù)據(jù)包通過IP網(wǎng)絡(luò)傳輸?shù)浇邮斩,接收端將這些以不同順序到達(dá)的數(shù)據(jù)包按其本身順序串起來,并經(jīng)過解碼解壓恢復(fù)出原來的語音信號(hào)。與傳統(tǒng)的語音業(yè)務(wù)相比,VoIP在時(shí)間延遲、話音質(zhì)量等方面存在缺陷?梢圆捎靡恍┫冗M(jìn)的協(xié)議如資源預(yù)留協(xié)議(RSVP)和不同類型服務(wù)(Diffserv)等方案來盡可能的優(yōu)化語音數(shù)據(jù)包的傳輸,以減少傳輸延遲和擁塞。
目前,VoIP的標(biāo)準(zhǔn)主要有國際電信聯(lián)盟技術(shù)部(ITU-T)建議的H.323系統(tǒng)和IETF建議的會(huì)話發(fā)起協(xié)議(SessionInitiationProtocol,SIP)系統(tǒng)兩種。前者主要在電信網(wǎng)絡(luò)上實(shí)現(xiàn)多媒體業(yè)務(wù)制訂,技術(shù)已趨成熟。后者基于動(dòng)態(tài)的Internet模式建網(wǎng),是基于軟交換技術(shù)的面向網(wǎng)絡(luò)會(huì)議和電話的簡單信令協(xié)議。在我國,主要選用H.323技術(shù)標(biāo)準(zhǔn)來實(shí)現(xiàn)VoIP,在H.323系列標(biāo)準(zhǔn)中,音頻壓縮編碼標(biāo)準(zhǔn)有G.711、G.722、G.723和G729等。
本文將介紹一種已經(jīng)應(yīng)用于路由器產(chǎn)品中的VoIP語音卡的硬件設(shè)計(jì)和工作原理。
。玻郑铮桑姓Z音卡硬件結(jié)構(gòu)
該語音卡基于AudioCodes公司的VoPP(VoiceOverPacketProcessor,即語音包處理器)AC48302設(shè)計(jì),采用PCI接口界面,可提供兩個(gè)FXS(ForeignExchangeStation)語音/傳真接口,可以方便靈活地應(yīng)用于本公司開發(fā)的系列路由器中,實(shí)現(xiàn)VoIP功能。其硬件結(jié)構(gòu)框圖如圖2所示,以下介紹各部分硬件的原理和作用。
。玻保校茫山涌
路由器主板與語音卡之間通過PCI總線連接,便于通用。采用了PCI接口芯片PLX9030實(shí)現(xiàn)語音卡本地總線(HPI)與PCI總線之間的轉(zhuǎn)換。由于語音卡上數(shù)據(jù)流量不大,不需要利用如DMA方式主動(dòng)向路由器主板上的Memory空間傳遞數(shù)據(jù)。因此,語音卡工作于PCI的從模式方式,AC48302通過中斷方式接收或發(fā)送語音數(shù)據(jù),PCI總線的數(shù)據(jù)寬度和速度為32位/33MHz。
。玻玻茫校蹋牟糠
。粒茫矗福常埃膊捎茫肝徊⑿械闹魈幚砥鹘涌冢龋校膳c外部CPU(即路由器CPU)進(jìn)行數(shù)據(jù)交換。在本設(shè)計(jì)中,HPI接口與PLX9030的本地總線接口時(shí)序稍有差別,經(jīng)過CPLD進(jìn)行調(diào)整。另外,路由器CPU還可通過CPLD控制CODEC和SLIC芯片。
。玻常粒茫矗福常埃残酒
。粒茫矗福常埃彩牵粒酰洌椋铮茫铮洌澹蠊就瞥龅囊豢畹凸、低價(jià)格的雙通道語音包處理器,其內(nèi)部集成了一個(gè)DSP內(nèi)核。該芯片的主要特性如下:
·支持兩個(gè)通道的語音壓縮編碼,語音壓縮標(biāo)準(zhǔn)包括G.729A、G.723.1、G.727、G.726、G.711。
·兼容T.38或FRF.11傳真中繼(2.4~14.4kbps)。
·呼叫ID產(chǎn)生和檢測,呼叫進(jìn)程和用戶定義語音的檢測和產(chǎn)生。
·兼容G.168的25ms回聲消除。
·高性能的有效語音檢測(VAD)和舒適噪聲產(chǎn)生(CNG)。
·DTMF檢測和產(chǎn)生。
·A律/μ律可選的Codec接口,具有輸入輸出增益控制。
·PCMHighway接口。
·并行的主處理器接口(HPI)。
。粒茫矗福常埃哺鞑糠钟布涌谌鐖D3所示。
圖4AC48302HPI存儲(chǔ)器的映射關(guān)系
。玻常闭Z音接口(VoiceInterface)
語音接口提供未壓縮的語音、傳真數(shù)據(jù)的輸入輸出通道。語音接口對(duì)外提供四根信號(hào)線構(gòu)成PCM總線,直接連接外部CODEC芯片的PCMHighway。這四根信號(hào)線為PCMIN、PCMOUT、PCMCLK、PCMFS。PCMIN輸入從CODEC送來的PCM信號(hào),AC48302內(nèi)部的DSP按照相應(yīng)標(biāo)準(zhǔn)(如G.729)壓縮后從HPI口交給路由器CPU轉(zhuǎn)發(fā)。PCMOUT則相反,AC48302將路由器CPU送來的語音數(shù)據(jù)按照合適的標(biāo)準(zhǔn)解壓縮,然后從PCMOUT口送到外部CODEC,CODEC經(jīng)過數(shù)/模轉(zhuǎn)換后恢復(fù)成語音信號(hào)?熏通過用戶接口送給用戶端。PCMCLK提供2.048MHz的比特同步時(shí)鐘,而PCMFS提供8kHz的幀同步時(shí)鐘。
。玻常玻龋校山涌
在本設(shè)計(jì)中,路由器CPU與AC48302通過HPI口進(jìn)行通信。路由器CPU和DSP通過AC48302的片內(nèi)共享的雙口存儲(chǔ)器實(shí)現(xiàn)數(shù)據(jù)交互。片內(nèi)共享存儲(chǔ)器的映射關(guān)系見圖4。
。龋校山涌诎ǎ备肝粩(shù)據(jù)總線和幾根控制總線。路由器CPU通過三個(gè)寄存器(HPIC、HPIA和HPID)控制AC48302及訪問片內(nèi)存儲(chǔ)空間。HPIC為控制寄存器,用來選擇AC48302的高低字節(jié)順序、產(chǎn)生和接收中斷。HPIA為地址寄存器,用來尋址片內(nèi)的2K存儲(chǔ)空間。HPID為數(shù)據(jù)寄存器,用來緩存每次讀寫的兩個(gè)字節(jié)數(shù)據(jù),外部CPU可以單個(gè)Word或塊數(shù)據(jù)方式訪問HPID,當(dāng)以塊數(shù)據(jù)方式訪問時(shí),HPIA寄存器自動(dòng)累加,這樣可以減少外部CPU寫HPIA寄存器的開銷。AC48302的內(nèi)部寄存器和存儲(chǔ)器為16位寬度,因此外部CPU每次訪問AC48302必須以兩個(gè)字節(jié)為基本單位,信號(hào)線HI/LO用來選擇高低字節(jié),信號(hào)HRS1、HRS0指示當(dāng)前訪問的是哪個(gè)寄存器。
除了以上兩個(gè)重要的接口外,AC48302內(nèi)部還包含一個(gè)PCM時(shí)鐘發(fā)生器、一個(gè)用于測試的JTAG接口以及一個(gè)用于訪問外部SRAM及處理信道輔助信令的Memory&I/O接口。
。玻矗茫希模牛媒涌谛酒
。茫希模牛眯酒(fù)責(zé)對(duì)DSP解壓縮后送來的PCM數(shù)據(jù)進(jìn)行解碼,并將濾波后的模擬語音信號(hào)送到用戶線接口芯片SLIC,SLIC對(duì)其進(jìn)行2-4線轉(zhuǎn)換后送給用戶端;同時(shí),CODEC還負(fù)責(zé)將SLIC送來的模擬語音信號(hào)進(jìn)行PCM編碼,然后送到DSP芯片進(jìn)行壓縮處理。
本設(shè)計(jì)中,CODEC芯片采用IDT公司的4通道PCM編解碼芯片IDT821034。該芯片具有可編程增益設(shè)置、主時(shí)鐘可選(2.048MHz、4.096MHz和8.192MHz)、最大可支持128個(gè)可編程時(shí)隙、A律/μ律可選、內(nèi)置數(shù)字濾波器、串行控制接口、低功耗等特點(diǎn)。本設(shè)計(jì)中選用主時(shí)鐘為2.048MHz(E1幀模式),可劃分為32個(gè)相等的時(shí)隙(Slot0~Slot31),4個(gè)通道的接收和發(fā)送時(shí)隙可通過向串行控制口寫入控制字進(jìn)行動(dòng)態(tài)選擇。各時(shí)隙的位置都以8kHz的幀同步時(shí)鐘信號(hào)為參考,在IDT821034中,時(shí)隙0相對(duì)幀同步脈沖的位置有延遲模式和非延遲模式(圖6即為非延遲模式)。
。校茫椭鲿r(shí)鐘(BCLK)、幀同步時(shí)鐘(FS)、接收數(shù)據(jù)(DR)和發(fā)送數(shù)據(jù)(DX)一起構(gòu)成PCMHighway信號(hào),與AC48302進(jìn)行連接。BCLK與FS分別對(duì)應(yīng)AC48302的PCMCLK和PCMFS,這兩個(gè)時(shí)鐘信號(hào)都由AC48302產(chǎn)生;DR和DX分別對(duì)應(yīng)AC48302的PCMOUT和PCMIN。PCMHighway信號(hào)時(shí)序以及時(shí)隙與幀同步信號(hào)的關(guān)系分別如圖5、圖6所示。為了CODEC與DSP芯片間正確收發(fā)數(shù)據(jù),一般選擇CODEC芯片在BCLK的上升沿發(fā)送數(shù)據(jù)DX,下降沿采樣數(shù)據(jù)DR,而在另一端的AC48302,則在時(shí)鐘下降沿采樣PCMIN,上升沿發(fā)送PCMOUT。
。玻涤脩艟接口(SLIC)芯片
設(shè)計(jì)中為了使語音卡能夠提供FXS接口功能,采用了愛立信公司的新型SLIC芯片PBL83710連接用戶接口。在該芯片內(nèi)部能夠產(chǎn)生高電壓鈴流信號(hào)及提供自動(dòng)電池饋電切換,具有環(huán)流振鈴和地鍵檢測功能及2-4線轉(zhuǎn)換功能。該芯片將許多傳統(tǒng)的振鈴繼電器、鈴流發(fā)生器等器件集成在一個(gè)片內(nèi),節(jié)省了印制板空間和成本。
。常郑铮桑姓Z音卡硬件驅(qū)動(dòng)流程
硬件驅(qū)動(dòng)程序主要完成以下功能:
。ǎ保┏跏蓟校蹋兀梗埃
。靶酒,配置相關(guān)寄存器,選擇本地總線工作方式。
。ǎ玻┏跏蓟粒茫矗福常埃残酒,啟動(dòng)AC48302內(nèi)部的DSP內(nèi)核到正常工作狀態(tài)。AC48302的啟動(dòng)步驟按順序分為以下幾步:核代碼(Kernel)下載;程序代碼(Program)下載;初始化模式;啟動(dòng)運(yùn)行。
。ǎ常(qū)動(dòng)語音卡的正常操作。接收處理摘掛機(jī)中斷,將SLIC置于正確狀態(tài);配置CODEC芯片的各通道收發(fā)數(shù)據(jù)時(shí)隙以及CODEC芯片的增益控制;接收處理AC48302數(shù)據(jù)包處理中斷,AC48302每處理完一個(gè)語音數(shù)據(jù)包就通過中斷方式通知路由器CPU讀取當(dāng)前Buffer中的數(shù)據(jù)或向Buffer?qū)懭胂乱粋(gè)數(shù)據(jù)包。
本文采用的是FXS接口,只要對(duì)CODEC后面部分電路稍加改動(dòng)即可實(shí)現(xiàn)FXO或E&M接口功能。目前,該語音卡方案在路由器產(chǎn)品中已獲廣泛采用。
【VoIP語音卡在路由器中的應(yīng)用及硬件設(shè)計(jì)】相關(guān)文章:
CF卡在手機(jī)測試系統(tǒng)中的應(yīng)用08-06
ISD4004語音芯片在語音報(bào)站器中的應(yīng)用08-06
語音處理芯片AC48105在低速語音編碼設(shè)備中的應(yīng)用08-06
藍(lán)牙芯片ROK 101 007在語音系統(tǒng)中的應(yīng)用08-06
語音識(shí)別在家電遙控器中的應(yīng)用08-06