一种嵌入式VOWiFi电话终端设计
扫描二维码
随时随地手机看文章
引 言
下一代网络(Next Generation Network),又称为次世代网络。主要思想是在一个统一的网络平台上以统一管理的方式提供多媒体业务,整合现有的市内固定电话、移动电话的基础上(统称FMC),增加多媒体数据服务及其他增值型服务。其中话音的交换将采用软交换技术,而平台的主要实现方式为IP技术,逐步实现统一通信其中voip将是下一代网络中的一个重点。为了强调IP技术的重要性,业界的主要公司之一思科公司(Cisco Systems)主张称为IP-NGN
下一代网络NGN(Next Generation Network)已经成为通信网络发展的方向,VoIP(Voice over Internet Protocol)简而言之就是将模拟声音讯号(Voice)数字化,以数据封包(Data Packet)的型式在 IP 数据网络 (IP Network)上做实时传递。 VoIP最大的优势是能广泛地采用Internet和全球IP互连的环境,提供比传统业务更多、更好的服务。 VoIP可以在IP网络上便宜的传送语音、传真、视频、和数据等业务,如统一消息、虚拟电话、虚拟语音/传真邮箱、查号业务、Internet呼叫中心、Internet呼叫管理、电视会议、电子商务、传真存储转发和各种信息的存储转发等。 在未来的3到5年,2009年的中国VoIP市场流量将达到9950亿分钟,而具有更强大实力的新VoIP服务供应商也会涌入市场。无线VoIP在不久的将来会与传统无线通信实现并存和竞争的关系,而不是对传统无线通信的一种廉价替代物。
与此同时无线局域网(WLAN)技术发展迅速。
WLAN主流技术标准已从802.11发展到802.11a/b/g,接入速率已从最高l Mbps发展到54 Mbps,而且技术成熟,成本低,普及率提高迅速,迎合了便携式终端的发展要求,已得到大量国际厂商的支持和市场的广泛认同。无线局域网络(Wireless Local Area Networks; WLAN)是相当便利的数据传输系统,它利用射频(Radio Frequency; RF)的技术,取代旧式碍手碍脚的双绞铜线(Coaxial)所构成的局域网络,使得无线局域网络能利用简单的存取架构让用户透过它,达到「信息随身化、便利走天下」的理想境界。对于局域网络管理主要工作之一,对于铺设电缆或是检查电缆是否断线这种耗时的工作,很容易令人烦躁,也不容易在短时间内找出断线所在。再者,由于配合企业及应用环境不断的更新与发展,原有的企业网络必须配合重新布局,需要重新安装网络线路,虽然电缆本身并不贵,可是请技术人员来配线的成本很高,尤其是老旧的大楼,配线工程费用就更高了。因此,架设无线局域网络就成为最佳解决方案。
1 技术方案
嵌入式VoWiFi电话是能够在802.11a/b/g无线局域网上进行电话通信的设备。为了能在802.1la/b/g上实现电话通信,必须采用VoIP技术,本系统VoIP标准可以选择更灵活的SIP协议。为了能实现各种通信协议,完成各种控制和管理工作,满足今后进一步开发需要,需采用基于微控制器的嵌入式系统。为了提高硬件设计的灵活性和软件代码在平台间的可移植性,本系统软硬件的设计采用了模块化的方法。在硬件上,把系统划分为以太网接口、USB无线网卡接口、音频接口、串行接口等几个功能单元;在软件上,利用嵌入式操作系统分离底层硬件平台和上层应用。
2 硬件设计
2.1 总体方案
VoWiFi电话硬件技术方案如图1所示。ARM9处理器是整个终端的核心部分,外围包括802.11b/g无线模块、语音信号处理模块、键盘和LCD电路。ARM嵌入式系统是VoWiFi电话通信控制和管理的核心,它负责操作系统的运行、资源的管理和分配、信息数据的处理以及与外部扩展单元的通信,完成与各个模块的接口和通信、TCP/IP协议和SIP协议的操作等。
802.11b/g无线模块实现空中无线接口和无线局域网接入功能。选用VIA威盛公司的VT6656 USB无线网卡,VT6656 wLAN控制器包括1个IEEE802.11a/b/gMAC,并集成了一枚基带处理器支持USB2.O。
在ARM9开发板内部含有1个USB2.O接口控制器,接口电路如图2所示。共有3个LISB接口(2个Host和1个Device),通过选择开关SW800进行选通控制。74HC08作为4个二输入与门逻辑电路,负责控制信号的逻辑组合。
语音信号处理模块用于对语音信号的数字化处理。本终端的音频接口由I2S音频总线接口和UDAl341TS音频编解码器组成,I2S接口采用DMA的数据传输模式。UDAl341TS是一款经济型音频编解码器,它通过I2S数字音频接口实现音频信号的数字化处理。图3是EP9302与UDAl341TS的引脚连接示意简图。
LCD显示器和4×4键盘用于人机接口,在ARM嵌入式系统支持下实现各种人机操作。考虑到LCD显示器主要用于号码以及各种状态标识显示,因此采用背光的128×64图形点阵LCD模块。LCD( Liquid Crystal Display),对于许多的用户而言可能是一个并不算新鲜的名词了,不过这种技术存在的历史可能远远超过了我们的想像 -早在19世纪末,奥地利植物学家就发现了液晶,即液态的晶体,也就是说一种物质同时具备了液体的流动性和类似晶体的某种排列特性。在电场的作用下,液晶分子的排列会产生变化。从而影响到它的光学性质,这种现象叫做电光效应。利用液晶的电光效应,英国科学家在上世纪制造了第一块液晶显示器即LCD。今天的液晶显示器中广泛采用的是定线状液晶,如果我们微观去看它,会发现它特象棉花棒。与传统的CRT相比,LCD不但体积小,厚度薄(目前14.1英寸的整机厚度可做到只有5厘米),重量轻、耗能少(1到10 微瓦/平方厘米)、工作电压低(1.5到6V)且无辐射,无闪烁并能直接与CMOS集成电路匹配。由于优点众多,LCD从1998年开始进入台式机应用领域。
3 软件设计
本嵌入式WLAN SIP电话终端的软件结构如图4所示。具体来说,需要如下的软件。
(1)嵌入式操作系统嵌入式操作系统
提供了嵌入式应用软件的基础和开发平台,具有将CPU时间、中断、I/0、定时器等资源包装起来而留给用户标准的API系统调用,对任务进行合理调度以保证实时性和可靠性等功能。
(2)SIP协议
SIP协议主要用于呼叫控制,包括呼叫的建立、维护和终结,以及根据呼叫进展情况动态调整和修改相关属性。SIP协议的相关操作包括:SIP消息的发送和接收、消息的生成与分析、状态机的保存与转换、SIP对话的管理、SIP事务处理机制的运行、SDP消息的构造、解析和双方媒体协商处理,以及终端的注册等功能。SIP是类似于HTTP的基于文本的协议。SIP可以减少应用特别是高级应用的开发时间。由于基于IP协议的SIP利用了IP网络,固定网运营商也会逐渐认识到SIP技术对于他们的深远意义。SIP(Session Initiation Protocol)是一个会话层的信令控制协议。用于创建、修改和释放一个或多个参与者的会话。这些会话可以好似Internet多媒体会议、IP电话或多媒体分发。会话的参与者可以通过组播(multicast)、网状单播(unicast)或两者的混合体进行通信。
(3)语音处理软件
语音处理软件用于实现用户间完整的语音交互,可进一步划分为:
①语音处理模块。负责语音数据的采集、编解码和播放,这里采用全世界的电路电话交换网中使用的G.711语音编码技术。
②实时媒体传输模块。完成数据包的RTP封装与分解,以及数据包的发送和接收。SIP协议和语音处理是两个独立的过程,按照建立SIP会话在前、建立媒体流连接在后,拆除媒体流连接在前、拆除SIP会话在后的顺序工作。
(4)硬件设备驱动
硬件设备驱动包括无线网卡、键盘和LCD驱动。将驱动程序编译成内核的一个可载入模块并链入内核,生成新的可以在目标板上运行的内核,然后将内核烧入目标板的Flash中,使它们能正常使用。
(5)终端应用程序
终端应用程序实现终端程序的初始化,创建线程;管理程序中各模块信息,为它们分配资源;通过与用户的交互,负责在全局上控制和管理其他各模块的工作及模块间的通信;并作为SIP用户代理的运行平台,实现整个系统的呼叫发起、呼叫响应及呼叫结束的功能。
在整个系统的工作过程中,包括信令控制协议的传输、信令控制功能的使用、建立连接之后的语音传输、实时媒体的传输与控制,都是采用UDP方式实现的。语音数据要求比较高的实时性及处理速度,而且语音数据质量对可能出现的因可靠性问题而产生的丢包现象不是很敏感,所以使用UDP作为语音数据的传输载体。
在整个会话过程中,用来保障实时数据传输的协议是RTP协议。RTP算法并不作为一个独立的网络层来实现,而是作为应用程序代码的一部分。
4 工作过程与实验测试
4.1 工作过程
采用嵌入式VOWiFi电话终端、无线AP和基于PC机的SIP软电话为实验环境。VoWiFi终端工作过程为:音频信号首先经过MIC后送入音频处理单元,完成声音信号的模/数转换,再经过语音编解码自上而下分别以RTP协议、UDP协议、IP协议将数据封装。ARM9处理器则通过I2S总线由DMA方式把封装后的数据读取到片外缓存单元SDRAM,当所开辟的缓存区域存满后,运行无线网卡驱动,把IP包通过无线网卡发送出去。在PC上运行的SIP软电话收到发送过来的数据后,通过应用层软件把IP包中的音频数据取出,然后调用PC声卡驱动,并把数据送入声卡还原成模拟话音。反方向的数据传输类似,只是数据是由运行于宿主机上TCP/IP的客户端程序发送。
4.2 实验测试
经过对终端的注册、呼叫、撤销呼叫、语音通信等功能进行测试,终端可以对SIP信令过程进行很好的控制,从而实现注册、呼叫等基本功能。在语音传输方面,本终端可以与被叫RTP通道进行实时语音传输,在局域网环境内语音质量较好,延迟较小。
结 语
在介绍VoIP原理的基础上,设计了基于ARM9平台的嵌入式VoWiFi电话终端的软硬件。该设计采用当前最流行的嵌入式开发平台和开源的Linux操作系统实现了无线局域网上VoIP语音通话功能。创新点在于:在802.11a/b/g无线局域网(wLAN)上,采用VoIP技术实现VoWiFi电话终端语音通话功能。
QICK