新闻中心

EEPW首页 > 网络与存储 > 设计应用 > 基于IXP421的VoIP网关及其性能测评

基于IXP421的VoIP网关及其性能测评

——
作者:1、广东高新兴通信设备有限公司 2、清华大学电子工程系 姚启欣1 唐昆2 黄稳1 时间:2007-01-26 来源:《电子设计应用》 收藏


引言

本文引用地址:https://www.eepw.com.cn/article/21314.htm

就voip设备来说,如果语言处理器的功能和其他应用功能由一个处理器来完成,必然能极大地简化电路,降低成本,intel的ixp421即是这些多功能处理器的其中一种,它的pcm接口使voip设备的硬件结构大大简化了,其可以通过选择不同微代码的方式实现更加灵活的网络应用。

intel提供的解决方案是通过软件dsp实现语音处理,并声明dsp模块可同时处理四路pcm窄带话音,支持多种语音编码及回波消除等功能,众所周知,单路单向pcm语音速率为64kbps,单路双向为128kbps,4路双向则为512kbps,如何保证语音处理所需要的cpu时间是个关键问题。

另外,回波消除或其他附加功能也会增加处理时间,在设计中还要考虑内存读写、任务切换、中断处理等系统因素造成的影响。

ixp421简介

ixp421是intel公司开发的采用xscale内核的ixp4xx系列处理器之一,主频为266mhz,ixp421采用多处理引擎和硬件多线程处理机制,它包括了一个处理器内核和两个并行网络处理引擎,其中xscale内核微处理器核心,它是以arm v5内核为原形,进行了dsp功能扩展,并优化了16位数据类型的累加和乘法运算,启动时首先初始化xscale核,然后网络处理引擎将从内存下载各自的微代码,以完成外围网络接口的链路层协议处理,它们的执行是完全并行于xscale内核的,通过内嵌的消息队列与xscale核同步,先进高速总线(ahb)实现网络处理引擎和xscale核之间的数据交换,其传输速率达到133.32mhz×32bit,完全能够满足高速网络的数据传输要求。

dsp软件模块

intel公司为ixp4xx系列处理器专门开发了dsp软件包,根据实现的不同功能,运行时的dsp模块可分为几个部分,包括网络端点、编码器、解码器、音频生成器、音频检测器、语音播放器、混音器和t.38。如果系统有四路电话,则每一路电话应该分配一个网络端点,一个音频生成器,一个音频检测器,网络端点代表每一路电话所需的tdm前端处理功能,用以实现tdm数据的收发、发送增益控制和回波消除,而音频生成器、音频检测器分别实现每一路电话的提示音及dtmf音频检测功能,另外,各路电话分享一个编码器和一个解码器,语音分流器负责控制网络端点和编解码器之间的数据流,语音播放器和混音器可多路共用,也可各路单独占用一个,具体个数由应用需求决定。

系统结构

整个系统由用户线接口、以太网接口、处理器和通信控制总线组成,如图1所示。

处理器即ixp421,它是设备运行的嵌入式操作系统及应用程序的载体,主要功能是:在通话过程中充当语音数字处理并分发语音包给特定的终端,在呼叫建立过程中处理网络协议;初始化并控制各部分硬件模块协同工作,提供用户管理界面,内存芯片容量为64mb,通过pc133内存总线连接ixp421的内存控制器。16mb的intel strata flash芯片通过扩展总线连接ixp421,时钟电路微处理器提供频率为33.33mhz参照时钟,处理器内核及其集成外围电路的时钟均由此分频得到,复位电路微处理器提供上电复位功能,即在系统加电并稳定后复位引脚,保持至少500ms的低电平。

用户线接口,以silicon laboratroies公司的si3210型接口芯片为核心,为用户提供模拟电话连接口功能,这些功能包括:用户线直流馈电,摘挂机状态检测,dtmf检测、振铃、回铃音及各种提示音、音频采样及d/a、a/d转换,以及pcm数据收发等。

以太网接口,采用intel的以太网接口芯片lxt972,其主要功能有:10baset/100base-tx自适应、自动网络协商、冲突检测、链路状态告警,通过mii总线接口,配合ixp421的以太网处理引擎(npe),实现链路层功能,承载tcp/ip协议及其他应用层网络协议。

串口,为用户提供基于串口的管理及调试功能。ixp421有两组串行输入、输出接口,分别为uart0和uart1,其中uart0是高速串行通信端口,支持的通信波特率最高达921.6kbps。uart1为console串行通信口,支持的波特率范围为1200bps-231kbps。

系统中较为重要的外部总线的作用如下:

1.hss(high speed serial)总线,连接处理器的wan/语音npe和用户线接口芯片(slic),有时钟、帧同步、输入、输出4条线,支持同步串行传输,可配置时钟频率范围为512khz-8.192mhz,本文应用作为pcm语音信号的传输总线,时钟为2mhz。即总共支持32个时隙,4路slic芯片各占一个时隙进行通信,ixp421的一个专用协处理器(voice npe)负责hss端口的总线数据收发。

2、mii(media independent interface)总线,连接处理器的以太网npe和以太网phy接口芯片lxt972,分为mii数据总线和mii管理信息总线,ixp421的网络处理引擎(npea)通过mii收发数据,网络处理引擎独立于主pcu内核工作,采用硬件多线程机制,使数据收发不占用主处理器时间,npea运行的微程序可提供对以太网phy设备的简单控制功能。

3、控制用户线接口芯片的串行外围接口spi(serial peripheral interface)以菊花链形式串接,有输入、输出、时钟、片选4根线、占用处理器的4个gpio引脚。以串行8位命令方式读写slic的内部寄存器,可以看作slic的控制总线。

性能测试

测试方法

两路电话同时通话。对端电话保持有说话声(本地解码器保持一定的繁忙程度),用测试机一直ping被测设备的以太网地址,并运行etherreal工具软件,抓取被测设备发送到对端的rtp包,计算出rtp包的时间间隔及抖动的统计值,同时观察通话语音质量,本设备和对端设备每隔5秒发送rtcp协议的发送者报告,分段丢包率是在发送者报告中给出的统计值。

测试说明

空闲时(未建立通话),被测设备处理器占用率为20%;

通话时打开回波消除,延迟环节设定为1ms延时;

关闭静音压缩;

对端voip设备采用独立的dsp芯片(mindspeed:m82510-14);

网络环境为100base-tx以太网,传输延迟小于1ms。

测试结果

时间间隔、抖动及分段丢包率

分析:表1的统计数据显示,每种编码的语音包到达对端的时间,都比规定的时间要提前零点几个毫秒,这应该是本设备的dsp处理程序为对端的dsp提前预留了处理时间,产生抖动可能是受被侧设备系统任务切换时间影响。因为对端设备也在向本端发送rtp包,这就需要本设备的以太网任务、ip协议栈和dsp任务来处理,所以,语音接收和发送过程争抢cpu时间,从而造成小的抖动,而以太网交换机转发过程所造成的抖动应该可以忽略。

结论:由时间间隔和丢包率可见,被测设备没有因为忙而产生延迟或丢包现象,在测试条件下处理器能力仍有富余,抖动是在设备允许的范围内。

语音质量

分析:如表2所示,测试中g723.1编码的语音效果有些问题,即对端听本端的声音效果很好,这可能是因为intel的sp模块与mindspeed的dsp芯片的某个编解码参数不同,毕竟其他编码方式没有这一问题,所以g723.1的语音质量给了低分。

结论:除g.723.1编码语音质量不理想外,其他几种常用的编码效果良好。



关键词:

评论


相关推荐

技术专区

关闭