VoIP(Voice over Internet Protocol),即通过IP数据包发送实现的语音业务,是一种利用Internet作为传输载体来实现PC到PC、Phone到Phone、PC到Phone之间话音通信的技术。VoIP终端打电话只需要几分钱,对任何用户都具有不可抵抗的诱惑力,因此作为通信业的革命性产品,VoIP一出现就呈现出强盛的生命力。
VoIP话音通信技术发展很快,随着3G和Wi-Fi网络的快速普及和发展,无线VoIP的应用越来越受到关注,VoIP话音通信技术通过与新型无线宽带的结合,将增加企业和消费者获得更灵活而且实惠的语音服务方式。可以在大街上通过3G手机网络实现VoIP话音通信,走进办公室后,或因3G手机网络信号弱化,呼叫可以转到基于Wi-Fi的WLAN实现VoIP话音通信,构建能在Wi-Fi和3G环境智能切换的无线双模VoIP语音网关。本文采用IP2202 MCU、基于88W8686 SoC芯片的Wi-Fi模块以及基于VIA CBP7.0的H9918 EVDO 3G模块的组合,来实现一种无线双模VoIP语音网关。
1 无线双模VoIP语音网关的原理
网关在VoIP网络中主要扮演协议转换、控制及关守角色,如呼叫控制和呼叫管理等。传统有线的VoIP网关用的是LAN模式或者直接ADSL拨号上网建立连接。笔者曾采用RISC结构的IP2022处理器,构建了IP2022+DSP的VoIP有线网关方案,IP2022处理器带有片上Flash程序存储器,具有在线和离线编程调试功能及单字节时钟周期精简指令集,用4阶段并行流水线方式执行指令,可达极高的代码效率和指令运行速度(120 MIPS),再加上DSP,完全满足低码率的视频VoIP通话的需要。在此基础上,如果考虑增加3G模块和Wi-Fi模块,能否实现基于Wi-Fi、3G环境的无线双模语音网关呢。经过实际的设计改造,方案是可行的。在IP2022+DSP的有线VoIP网关基础上,采用基于VIA CBP7.0的EVDO 3G模块,用CDMA2000的EVDO数据链路取代过去LAN作为宽带连接的方法,实现对无线数据网络的处理,可在CDMA2000 1xEVDO(15~856)和CDMA lxRTT(15~200)环境下拨号无线接入Internet,以及断线自动重拨等功能。另外,采用基于88W8686 SoC芯片的LBWA18HEPZ模块作为Wi-Fi模块实现与WLAN的宽带连接,并做到针对WLAN和3G宽带网络环境随时切换,实现无线双模VoIP语音通信。
2 无线双模VoIP语音网关的硬件设计
无线双模VoIP语音网关实现原理如图1所示。
构成该无线双模语音网关的主要器件如下。
(1)MCU。本网关的核心采用IP2022处理器,它要完成各部件的协同工作,还要做大量的计算处理。如:DSP处理后的编码数据打包通过网络传输,还要将网络传送过来的语音数据解包后经解码处理送到话机。
(2)DSP。完成本网关音频、视频的编解码工作,采用的是Voice Pump公司的VP120。低功耗、高性能DSP-1xx系列混合数字信号处理器是该公司2001年5月推出的专门针对话音处理的低密度语音网关、VoIP的综合接入设备(IAD设备)和其他宽带语音领域的适用产品。它通过主处理器灵活的接口协议,每个语音通道都可以配置多种语音编码和话音应用,再加上已经固化在DPS内部ROM上的各种应用软件,可作为一个接口将传统模拟语音信息和基于包处理的系列主机作无缝连接。
(3)Wi-Fi模块。以IP2022为MCU的无线网关Wi-Fi模块设计,既可以利用IP2002所特有的Wi-Fi套件,也可以采用其他Wi-Fi模块,本设计采用的是LBWA18HEPZ模块,它是一个IEEE标准的WLAN 802.11b/g模块,内部集成了WLAN芯片、电擦除存储器、低压差线性温压器、驱动及功率放大器、晶振、不平衡变压器和单刀双掷开关。其内部结构如图2所示。
对于该模块中应用的88W8686 SoC芯片是Marvell公司生产的一个低成本、低功耗、集成了MAC/基带/射频/IEEE 802.11 a/b/g无线系统的高集成度的单片解决方案,载荷速率适合802.11 a或者802.11 g规定的6 Mb/s~54 Mb/s,也可以满足802.11b所要求的1 Mb/s~11 Mb/s。
(4)EVDO 3G模块。目前,基于EVDO 3G模块有多家解决方案,如高通QSC6085解决方案,这是针对EVDO A版本的方案,国内的华为、中兴都采用的此类方案,其他还有威盛的解决方案,本设计采纳了深圳宏电的H9918 EVDO模块。H9918是一款针对CDMA2000网络的3G模块。
在本方案中,H9918只作为一个3G USB MODEM连接,屏蔽了其他相关功能。H9918 EVDO 3G模块外观图如图3所示。
3.1 语音信号的编解码处理
语音信号的处理由IP2022及DSP相关单元来完成,这部分有相应的软件开发套件来支持功能的实现。IP2022网络处理器主要是通过网络软件开发工具包SDK的软件模块和开发者编写的代码来进行配置,完成对语音信号的编解码处理。为便于开发,本设计使用网络软件开发工具包SDK中Ubicom提供的配置工具。它使得开发者能选择合适的ipModule,并对模块进行设定,确定各模块之间的关系,自动链接到目标代码。
3.2 基于Wi-Fi的UDP语音包的无线发送及接收
本功能是将MCU主控模块IP2022通过SPI总线传输过来的UDP语音包转换成无线帧信号,并经过RF单元发送;接收的过程也为发送的逆过程,并也通过SPI总线送回IP2022处理单元,并最终还原为语音信号,如图5所示。
3.3 基于EVDO 3G模块的UDP语音包的无线发送及接收
VoIP终端通过H9918实现3G无线上网,采用PPP协议(点对点协议),从而实现链路建立、维护、拆除、上层协议协商和认证等过程,具体操作顺序如下。
(1)首先加载H9918模块驱动,操作如下:
(a)把驱动文件(usb-serial.C)放到Linux系统下的某个目录下;
(b)用root用户登录;
(c)用字符命令进入linux下的文件目录,输入make命令,会得到相应的驱动的模块HONGDIANUSBModem.ko;
(d)输入insmod HONGDIANUSBModem.ko加载模块;
(e)可以lsmod查看模块是否加载。
(2)进入附送的PPP拨号文件的/etc/ppp/peers目录,在peers文件夹下,找到cdmadialer文件,输入 “pppd call cdmadialer”进行拨号。
该过程实际就是VoIP设备规定的必须装载的模块,还需加载3G模块的USB驱动以及PPP自动拨号加载,以完成终端的初始化就绪状态。
本方案采用IP2202 MCU、基于88W8686 SoC芯片的Wi-Fi模块的H9918 EVDO 3G模块的组合,构建双模无线VoIP语音网关。经过实际测试,终端在WLAN环境半径50 m范围内,和在有电信CDMA信号的范围,均可以实现畅通无阻的无误码通信,通话质量优良、运行稳定、灵活方便,而且还具有低成本、低功耗等优点,是一种比较有经济和技术价值的设计。
参考文献
[1] 王瑞刚,李燕.IP电话终端设备——原理、电路及应用[M].西安:电子科技大学出版社,2003.
[2] 宋茂强.通信软件设计基础[M].北京:北京邮电大学出版社,2007.
[3] 蒋昌茂,程小辉,刘洪林,等.无线IP语音通信原理[M].北京:电子工业出版社,2010.
[4] 杨晓亮,李广军,郭志勇.基于飞思卡尔射频芯片MC13192的无线语音网关[J].电子产品世界,2006(12):110-112.
[5] 刘洪林,蒋昌茂.AR1688 VoIP话机无线升级方案设计[J].单片机与嵌入式系统,2010(1):44-46.
[6] ANSI/IEEE Std 802.11. Part 11: wireless LAN medium access control(MAC)and physical layer(PHY)Specifications,1999 Edition(R2003)[S].1999.
[7] IEEE Standard. 802.16-2004 Part 16: air interface for fixed broadband wireless access systems[S]. 2004.
[8] Wi-Fi Planet[EB/OL]. http://www.wi-fiplanet.com/.
[9] RF Switch项目[EB/OL]. http://rfswitch.sourceforge.net,2006-12-06.