0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于IXP421处理器实现VoIP设备更加灵活的网络应用

电子设计 来源:电子设计应用 作者:姚启欣,唐昆,黄稳 2021-06-15 15:03 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

就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编码语音质量不理想外,其他几种常用的编码效果良好。

责任编辑:gt

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 处理器
    +关注

    关注

    68

    文章

    20159

    浏览量

    247673
  • dsp
    dsp
    +关注

    关注

    559

    文章

    8220

    浏览量

    364237
  • 编码器
    +关注

    关注

    45

    文章

    3907

    浏览量

    141551
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Cortex-A9处理器的精妙应用

    板及嵌入式设备硅成本的前提下最大效率地提升处理效率。通过结合这种先进的技术,ARM Cortex-A9处理器微架构设计能使嵌入式开发板及嵌入式设备的时钟频率超过1GHz,而且提供了较高
    发表于 11-03 17:02

    Core8051处理器有什么特点?

    解决方案。爱特公司通过扩大Core8051的支持范围,使得开发便携嵌入应用的设计人员能够充分利用基于8051处理器的强大的开发生态系统和丰富的代码资源,并全面发挥Actel FPGA的灵活性优势。
    发表于 09-24 07:45

    怎样去设计一种基于IXP421VoIP网关?

    IXP421是什么?怎样去设计一种基于IXP421VoIP网关?如何对VoIP网关进行测试验证?
    发表于 05-28 07:20

    RK3399处理器与AR9201处理器有哪些不同之处呢

    RK3399处理器与AR9201处理器有哪些不同之处呢?hi3559A处理器与RV1126处理器有哪些不同之处呢?
    发表于 02-21 07:29

    Sitara AM62处理器的资料分享

    和预测性维护),有助于赋予HMI全新的意义,而不是仅限于实现人机交互的界面。AM62处理器能够以低功耗实现边缘器件的分析功能(挂起状态功耗低至7mW且无需特殊考虑散热设计),支持工程师灵活
    发表于 11-03 06:11

    IXP系列网络处理器的并行原理及应用

    网络处理器的体系结构入手,在线程和微引擎层次上对IXP系列网络处理器的并行环境进行抽象分析,在线程方面阐述了顺序和非顺序情况下不同的编程方
    发表于 04-20 09:20 13次下载

    基于ARM的PC/104处理器模块设计

    提出了一种低成本的PC/104处理器模块的设计。该模块硬件上以ARM处理器为核心实现了PC/104处理模块的基本结构、总线接口,软件上构建了嵌入式Linux操作系统。以ARM
    发表于 08-25 10:36 20次下载

    基于网络处理器的高速网络测试设备设计

    论文介绍了网络处理器结构及其技术特点,在深入探讨网络测试技术的基础上,提出了用网络处理器实现
    发表于 03-01 13:51 12次下载

    网络处理器IXP2400及应用

    本文介绍了INTEL网络处理器IXP2400的硬件结构特点,描述了浩通科技(FLEXCOMM)研发的硬件平台FIDS2400的硬件特性,并以FIDS2400为例介绍了IXP2400在千
    发表于 03-11 13:20 1646次阅读
    <b class='flag-5'>网络</b><b class='flag-5'>处理器</b><b class='flag-5'>IXP</b>2400及应用

    Intel 64位处理器,Intel 64位处理器结构原理

    Intel 64位处理器,Intel 64位处理器结构原理 现在人们广泛使用的是由32位微处理器构成的计算系统,但是32位的计算和操作系统不能支持
    发表于 03-26 15:07 3491次阅读

    基于NiosII 32位处理器的LED大屏幕显示系统设计

    本文提出了一种基于NiosII32位处理器的设计方案,能有效地实现单屏幕多窗口的任意位置显示,使得显示方式更加灵活方便。
    发表于 09-07 11:50 2133次阅读
    基于NiosII 32位<b class='flag-5'>处理器</b>的LED大屏幕显示系统设计

    苹果a6处理器怎么样_a6处理器参数

    苹果正式发布iphone5,iphone5采用A6处理器,那么A6处理器怎么样?a6处理器参数是什么呢?a6处理器四核的吗?带着这些疑问,我们来一起了解下A6
    发表于 09-13 14:29 2.6w次阅读

    麒麟9000处理器和高通骁龙875处理器相比如何?

    随着华为mate10系列的发布,华为最后一代旗舰处理器,麒麟9000也就此亮相,大家对于麒麟9000处理器十分的看好。因为麒麟9000处理器在安兔兔的跑分竟然高达72万分,较上一代麒麟990
    的头像 发表于 11-03 11:31 6611次阅读

    rk3566处理器属于什么档次?

    rk3566处理器属于什么档次? RK3566处理器是一款由瑞芯微公司推出的高性能处理器,在硬件配置和性能上都表现出了很强大的实力。目前市场上已经有了很多的RK3566处理器,相信大多
    的头像 发表于 08-15 17:25 3.7w次阅读

    RV1109处理器概述

    ),为用户提供了高效的多任务处理能力和灵活的编程环境。ARM Cortex-A7核心以其出色的能效比和广泛的应用基础,确保了处理器处理复杂应用时的稳定性与可靠性;而RISC-V MC
    的头像 发表于 02-08 17:04 1936次阅读