- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
基于嵌入式处理器的VoIP双模语音网关设计
2.3 电话接口(FXS)
SLIC接口电路主要是模拟PSTN电压电平。检测电话挂机还是摘机,并生成高达120 V的振铃电压,本设计采用英国Silver Telecom公司的带有DC-DC变换的Ag1170 系列SLIC接口模块。其网关连接示意图如图3所示。
2.4 用户线接口(FXO)
FXO接口由两部分组成:
(1)编解码电路。这部分的功能和前面FXS中的编解码功能完全一样,也是由DSP芯片VP120提供服务,并由主CPU根据线路实际情况进行FXS和FXO功能切换,以便判定语音信号是走互联网络还是PSTN线路;
(2)数据存取装置(DAA)。其重要作用是去除高电压直流偏置,将PSTN环路关闭,从而仅传送来自PSTN的模拟交流信号。本设计采用Clare的CPC 56XX系列产品作为DAA功能的设计。CPC 56XX系列产品号称是为工业上首创的单封装的DAA(数据存取装置),它包括一个芯片内的隔离势垒(额定均方根值1 500 V), 这种DAA还提供正常的交流和直流电话线端接、二至四线混合功能、挂机和摘机检测、呼叫人身份识别,半波和全波振铃检测电路,可支持大部分编解码器和DSP器件。适合于机顶盒和电话应用的这种芯片可取代磁变压器和各式各样的其他分立元件,从而减少占用板上空间和成本,在本网关的设计中采用的是Clare公司推出的32脚SoC封装的CPC 5622A。
3 基于SIP协议的双模网关软件设计
3.1 SIP协议栈的开发
为了设备互通、网络互连等,需要开发相应的基于应用层的SIP协议栈。目前开源(开放源代码)的SIP协议栈中比较常用的有VOCAL与OSIP,它们都是比较成熟和可商业化的SIP协议栈,其特点如表1所示。
本设计采用Libosip2进行程序开发,它是一种 GNU oSIP库,OSIP封装较好,操作简单、可读性较好,缺点是BUG较多,需调试时改进。
3.2 网关应用软件设计方案
软件部分主要由嵌入式操作系统和应用层软件组成,可完成协议栈处理、路由处理和其他控制功能,软件方案层次结构如图4所示。
应用层的软件主要由SIP协议栈处理模块、路由处理模块和DSP控制模块组成。SIP协议栈负责呼叫控制和信令、音频处理和媒体实时传输等功能。本系统采用开放源代码的OSIP协议栈作为参考,应用层上的功能模块都是基于该协议栈研发的[5]。
路由寻址模块主要负责路由寻址和路由管理,确定目的网关的IP地址,并选择最好路由将IP数据包经过IP网络传送到目的网关。DSP控制模块主要是在应用程序中根据通话流程编写相应的控制程序来控制DSP120的操作。网管模块提供了Web网管和CLI命令行界面,很容易对双模网关进行配置和维护[6]。
在SIP协议处理上直接采用OSIP所给出的函数调用,实现基本的SIP 协议功能,屏蔽了协议处理的内部细节。VP120 DSP处理器直接采用所提供的函数库,可实现对DSP 的初始化和编解码算法, 语音编解码类型包括G.723.1、G.729、G.711a和G.711u。网关软件主程序处理流程如图5所示,网关语音包数据处理流程如图6所示。
本文设计的VoIP双模语音网关,其硬件利用高性能嵌入式微处理器IP2022和专用语音处理芯片DSP120为核心构成,软件采用Libosip2程序开发及开源SIP协议栈为主,通过测试证明了其可行性。随着目前无线WiFi的流行,本方案也可以直接升级为WiFi应用,通过采用IP2K系列所配备的无线开发套件,可以开发出适合802.11 a/b/g功能的无线网关,在无线应用领域,值得参考和借鉴。
作者:蒋昌茂 刘洪林 来源:电子技术应用
上一篇:使用新SRAM工艺实现嵌入式ASIC和SoC的存储器设计
下一篇:IPv6技术在泛在网感知延伸层的应用及标准化现状