基于VoIP處理器與USB接口的IP電話設(shè)計(jì)
關(guān)鍵詞:USB;端點(diǎn);編解碼器
1 引言
隨著VoIP的普及,IP電話的通話質(zhì)量有了明顯改善,與傳統(tǒng)電話相比,已基本沒(méi)有差別。另外,它具有傳統(tǒng)電話無(wú)可比擬的價(jià)格優(yōu)勢(shì),吸引了越來(lái)越多的用戶使用IP電話進(jìn)行通信。目前,有很多廠商開(kāi)發(fā)了軟IP電話終端,但是用它打電話必須使用耳麥,不符合人們打電話的習(xí)慣,而且長(zhǎng)時(shí)間通話無(wú)論從語(yǔ)音質(zhì)量還是從用戶舒適度上都遠(yuǎn)不及傳統(tǒng)電話機(jī),對(duì)于操作電腦不甚熟練的用戶則更感困難。因此大多數(shù)人都更愿意用電話機(jī)而不是電腦來(lái)打電話。根據(jù)這種需要,就出現(xiàn)了一些與主機(jī)的通信接口相聯(lián)的IP電話機(jī)。其中以USB接口的IP電話最為普遍。
通用串行總線(USB)是一種新型接口技術(shù)。它是由Intel等公司研發(fā)與規(guī)劃的一種串行通信標(biāo)準(zhǔn)。USB具有以下特點(diǎn):(1)有較高的傳輸速率。USBl.1支持全速和低速兩種方式,全速速率為12Mbps,低速速率為1.5Mbps;USB2.0除支持USBl.1的兩種速度方式外,還增加了速率可達(dá)480Mbps的高速方式。(2) USB支持即插即用和熱插拔。(3) 提供了對(duì)電話的兩路數(shù)據(jù)支持。USB可支持異步以及等時(shí)數(shù)據(jù)傳輸,使電話可與PC集成。(4)具有高保真音頻。由于USB音頻信息生成于計(jì)算機(jī)外,因此減少了電子噪音干擾聲音質(zhì)量的機(jī)會(huì),從而使音頻系統(tǒng)具有更高的保真度。此外,USB還有可靠性高、成本低、功耗小、易于擴(kuò)展等優(yōu)點(diǎn),倍受歡迎。
2器件選擇
2.1 VoIP處理器選擇
從降低成本、簡(jiǎn)化設(shè)計(jì)及其要具有USB接口的要求出發(fā),我們選擇了Tiger560B VOIP微處理器。它提供了低價(jià)格、高質(zhì)量的IP電話解決方案。它具有以下特點(diǎn):1)實(shí)現(xiàn)了用于網(wǎng)絡(luò)電話的所有需要的VoIP功能和USB接口;2)內(nèi)建支持按鍵鍵盤、LCD、電話接口和震鈴;3)支持H.323和SIP標(biāo)準(zhǔn);4)不需要驅(qū)動(dòng),所有驅(qū)動(dòng)都已內(nèi)嵌在Windows中;5)音頻功能包括:提供了PCM接口,支持各種常用的音頻解碼器:使用微軟音頻USB驅(qū)動(dòng),支持8位μ率編解碼器接口、μ率到PCM16的轉(zhuǎn)換、音量控制、自動(dòng)靜音等;6)支持HID音頻設(shè)備類,可直接使用Microsoft 音頻USB驅(qū)動(dòng),方便了系統(tǒng)的開(kāi)發(fā)。
2.2 編解碼器選擇
W681511是華邦推出的一款單通道語(yǔ)音CODEC芯片,它是與Tiger560B一同推出的一款針對(duì)于網(wǎng)絡(luò)電話市場(chǎng)的低成本且高品質(zhì)芯片組解決方案,相對(duì)于市場(chǎng)上其它解決方案,能提供較好的效能以及競(jìng)爭(zhēng)性的價(jià)格。W681511主要應(yīng)用于網(wǎng)際網(wǎng)絡(luò)、整合服務(wù)數(shù)字網(wǎng)絡(luò)及電話相關(guān)產(chǎn)品上。W681511包含所有華邦CODEC 語(yǔ)音芯片系列產(chǎn)品的特色,提供低功耗(當(dāng)系統(tǒng)處于等待狀態(tài)與停止?fàn)顟B(tài)時(shí),僅需耗費(fèi)10微安與100毫安的電流)和4.5到5.5伏單一電源供電。此外,此款芯片與Motorola MC14LC5480兼容,并在大部分的情況下能直接取代既有的Motorola 芯片。
3 系統(tǒng)實(shí)現(xiàn)
3.1整體電路
IP電話的原理圖如圖1所示。它由Tiger560B和W681511及其外圍設(shè)備和接口組成。主要電路有:語(yǔ)音電路、LCD顯示電路、鍵盤電路。
3.2外圍電路設(shè)計(jì)
LCD模塊:LCD用于顯示話機(jī)狀態(tài)、時(shí)間、主/被叫號(hào)碼等信息。它通過(guò)Tiger560B的通用I/O接口連接。
按鍵電路:Tiger560B可以通過(guò)PIB口直接與4×4或4×8鍵盤相連。
音頻電路:如圖2所示,W681511與Tiger560B的串行端口直接相連。串行端口包含一數(shù)據(jù)時(shí)鐘(DCLK)。一幀同步時(shí)鐘(FSC)和兩條數(shù)據(jù)線(DIN和DOUT)。FSC是8KHZ時(shí)鐘,在一個(gè)FSC周期內(nèi),傳輸和接收8位u-law率音頻數(shù)據(jù)。
3.3 USB工作模式設(shè)計(jì)
Tiger560B實(shí)現(xiàn)了完全兼容的USB 1.1接口,芯片包含USB控制器和標(biāo)準(zhǔn)3.3伏電壓,可直接與USB總線相連。
USB有四種傳輸方式:控制傳輸、批量傳輸、等時(shí)傳輸和中斷傳輸。其中控制傳輸主要用于主機(jī)和設(shè)備間關(guān)于配置、狀態(tài)和控制信息的傳輸。任何USB設(shè)備都必須支持控制傳輸。中斷傳輸用于數(shù)據(jù)量較小、不定時(shí)傳送、允許一定延遲、服務(wù)周期受限的設(shè)備。等時(shí)傳輸用于大數(shù)據(jù)量、實(shí)時(shí)性高、允許一定差錯(cuò)的設(shè)備。
因此,IP電話設(shè)立了4個(gè)端點(diǎn):控制端點(diǎn)0,中斷傳輸端點(diǎn)5和等時(shí)傳輸端點(diǎn)6、7。
USB端點(diǎn)0是Tiger560B上唯一的控制端點(diǎn)
USB端點(diǎn)5用于中斷傳輸,輪詢間隔為1ms,它用于傳輸鍵盤按鍵值。每一次輪詢發(fā)生時(shí),輪詢兩個(gè)字節(jié)到主機(jī)。數(shù)據(jù)的頭一個(gè)字節(jié)為當(dāng)前AUX針的當(dāng)前狀態(tài)值。第二個(gè)字節(jié)是指定源的值,寄存器0x18定義了這個(gè)字節(jié)的地址。設(shè)置寄存器0x18的6、7位為1能使PIB中止?fàn)顟B(tài)輪詢。輪詢操作不會(huì)與任何制造商命令沖突,因?yàn)檩喸冊(cè)诿恳粋€(gè)USB SOB分組時(shí)完成。字節(jié)1表示任何連接到AUX針的中斷線的狀態(tài)。字節(jié)二是外部設(shè)備的中斷狀態(tài)值。
USB 端點(diǎn)6和7用于傳輸16位PCM音頻格式。每一個(gè)USB同步傳輸可能傳送8個(gè)采樣和16字節(jié)數(shù)據(jù)。Tiger560B對(duì)8位u-law率和16位PCM音頻編碼進(jìn)行轉(zhuǎn)換。Tiger560B可以使用USB SET_CUR音量命令來(lái)完成硬件音量調(diào)整。麥克風(fēng)和送話器都支持靜音控制。
3.4 存儲(chǔ)器配置
Tiger560B支持64×16 EEPROM。開(kāi)機(jī)后,在RESET信號(hào)為低期間,如果如果EECS針為高,Tiger560B就會(huì)訪問(wèn)EEPROM,將它的內(nèi)容讀入寄存器。
Tiger560B需要的地址空間為256。其中,內(nèi)部寄存器地址為0x00到0xbf,通過(guò)USB端點(diǎn)進(jìn)行訪問(wèn),來(lái)控制Tiger560B。
4 結(jié)束語(yǔ)
本文介紹了一種新型的VoIP處理器Tiger560B和音頻編解碼器W681511。在此基礎(chǔ)上開(kāi)發(fā)了一套IP電話的原型機(jī)。該機(jī)通過(guò)USB接口與計(jì)算機(jī)相連,在計(jì)算機(jī)上實(shí)現(xiàn)了SIP協(xié)議。結(jié)合基于RTP協(xié)議的服務(wù)質(zhì)量動(dòng)態(tài)控制策略,可以達(dá)到比較滿意的通話質(zhì)量。
參考文獻(xiàn):
[1]王瑞剛,李燕編著 IP電話終端設(shè)備――原理、電路及應(yīng)用。西安電子科技大學(xué)出版社
[2]許永和編著EZ-USB FX系列單片機(jī)USB外圍設(shè)備設(shè)計(jì)與應(yīng)用。北京航空航天大學(xué)出版社
[3]Tigerjet network Inc。Tiger560B Advanced Information
[4]Winbond. W681511 single-channel voiceband codec Advance Data Sheet