基于ARM的局域网IP电话设计

发布者:Harmonious222最新更新时间:2012-04-10 来源: 21ic 关键字:ARM  局域网  IP电话 手机看文章 扫描二维码
随时随地手机看文章
  前言

  由于计算机网络技术发展与更新比PBX快,设备价格降幅大,建立一个以Internet(或Intranet)为基础的IP电话网络,以替代传统电话设备系统成为企业的目标。

  局域网IP电话

  局域网IP电话使用统一的网络通信设备和布线来传输话音和数据。 在传统的PBX (专用小交换机)系统中,话音呼叫通过与办公PBX连接的一系列标准话音线路进入办公室,即通过一种专用设备在标准的电话配线上接收和疏导话音业务量。然而在LAN电话话音网络中,话音呼叫通过基于IP的PBX进行接收和疏导,而这种IP PBX是与现有的数据网络连接的。IPPBX可以是一种独立的解决方案,也可以分解为几种分散的装置。具体功能框图如图1所示。

  该IP电话的主要优点:

  可方便的移动和增加终端设备;
  支持多媒体终端;
  有利于发展计算机电话集成技术;


图1 局域网IP电话功能模块图



图2 AT75C220的结构框图



图3 IP话机构造图


  硬件平台

  通常硬件的基本设计要求是:高密度、低功耗和低成本。而VoIP的许多性能都对应特定的应用需求,诸如:(1)系统分割,包括分组数据包集合和路由;(2)定义产品功能的软件性能;(3)满足高可用性的网络管理能力。[page]

  LAN电话产品工作在纯IP方式下,所以话机在接入广域网后,在网络管理方面应该是兼容的。本方案的VoIP话机是一种网关下移的终端产品,无需通过网关就可将此设备直接接入以太网中,配置好相关的地址信息就可以使用。 它的开发基于Atmel公司的AT75C220开发板。AT75C220是专为各种因特网应用而设计的高性能处理器芯片。它的核心部件—ARM7TDMI微处理器运行能力为40MIPS,专门用于话音处理的OakDSPCore协处理器(图2中的话音处理芯片),运行能力可达60MIPS。两者之间信息的交互采用高效的双端口mailbox机制。这就决定了AT75C220能综合通用CPU的控制功能和专用CPU的信息处理功能,提高了系统的集成度,同时ARM处理器的操作指令比较简单,降低了开发的复杂度。

  AT75C220开发板除了具备用于连接计算机的标准串行接口和连接电话手柄的RJ11接口外,还有两个标准RJ45以太网接口用于连接网守。ARM7TDMI核心处理器控制整个VoIP话机的运行,并提供通用I/O接口用于连接拨号键盘、液晶显示器和振铃电路。AT75C220的结构框图如图2所示。
AT75C220开发板上装有存储应用程序的闪存(flash)。计算机利用超级终端程序通过开发板上的串行接口可以与AT75C220芯片进行信息交互,实现对flash的应用程序编程和其它软件管理功能。开发AT75C220应用软件的PC机必须启动运行siap-mClinux操作系统。应用程序开发完毕后,通过220software set提供的工具将包含应用程序及操作系统内核的img文件下载到220开发板上的flash中,最终完成系统的开发。

  VoIP话机的构造如图3所示。其用户接口部分与普通话机无异,显示器用来显示相关的信息,如发起呼叫时所拨的号码、来电显示等。此外,VoIP话机可以由串行口与个人数字助理(PDA)设备相连,实现软件升级、自动拨号等功能。话音接口的功能是实现话音模拟信号与标准64Kbit/s PCM信号之间的相互转换。网络接口负责话音分组的发送和接收以及各种呼叫信令的交换。VoIP话机通过RJ45插头与局域网上的网守相连。




  软件实现

  该实现依赖于网络协议栈和实时操作系统(RTOS)。多数应用系统需要RTOS以便同时处理多个流程和呼叫。 采用的RTOS应具有以下特点以满足通信协议的复杂性:系统内核小;中断处理时间短;连续运行时间长;多个毫秒级或微秒级定时器的处理能力。ARM-mClinux是非常优秀的嵌入式实时操作系统,它提供了多种用于实时系统开发、调试、和运行的功能,如多任务机制、内核可裁剪、网络功能、实存储器管理策略等。同时,Linux的内核源代码是完全公开的,这对降低开发成本、提高软件开发的复用度等方面无疑是十分有利的。[page]

  对于网络协议栈,本方案采用标准的H.323协议栈,以便与公网进行互连。从TCP/IP的分层观点来看,H.323是一个应用层协议族,它包含了适用于各种媒体通信和信令控制的协议,建立的基础是TCP或者UDP协议。根据实际的使用需求,本文重点讨论的协议有语音编码方面的G.723.1、G.711等和呼叫控制信令H.225和H.245等。在CPU的正常设计能力下,系统所有的进程将会阻塞在各自的消息队列中,只有处于最低的IDLE进程处于运行状态,消息队列中消息总数处于比较低的数量水平。增加进程可能要增加共用的数据区和内部消息,相应的还要引入复杂的管理机制。

  基于上述软件要求,该VoIP话机要能与符合H.323标准的网关和网守互通,并实现VoIP话机与VoIP话机及VoIP话机与网关所带的普通话机之间的话音通信功能。此外,VoIP话机还应具备一定的录音与重放能力。

  对于IP话机而言,主要软件实现在话机和网守的通信以及话机之间的互通,其呼叫流程如图4。

  上述过程的通道实现机制是TCP或UDP。IP话机在成功登录到网守后,其接续过程完全类似于普通话机之间的接续,摘机后向网守发“呼叫请求”(udp),网守收到后发“是否运行主叫拨号”(tcp),如果不允许的话,提示挂机;若允许的话,主叫在收到拨号音后开始拨号,向网守送“拨号信息”报文(tcp),网守向主叫发送“被叫空闲信息”报文(tcp),然后是分别向主叫和被叫送回铃音和振铃音。等待被叫摘机后,被叫向网守送“被叫摘机”报文(udp),网守向被叫送“停止振铃”(tcp), 网守向主叫送“被叫摘机”报文(tcp),进入通话(udp)状态。有关话音的处理要涉及到220话音处理模块。

网关向网守发送的报文:不管是高层用户端向网守发送的登录报文,还是IP话机或交换机侧向网守发送的呼叫处理报文,都会先放置在名为mqRecvBottom的消息队列中,然后根据报文所采用的传送方式发往以下三个队列:信令的TCP传送_mqSendTCP;信令的UDP传送_mqSendUDP;话音传送_mqSendData(可以通过网守转发,也可以直接在两个网关之间发送),然后再通过socket发送出去。

  几个关键问题的解决

  摘挂机检测与号盘号码接收

  AT75C220提供若干用户自定义的通用I/O接口。只需通过一定的硬件连接和软件编程,就可以实现摘挂机状态的检测与用户所拨号码的接收。

  来话振铃

  AT75C220内部寄存器中有专门指示有无来话的比特位。应用软件定期检测该比特,一旦发现有来话,立即通过某一个事先编程确定的通用I/O口送出振铃指示信号,该信号可作为振铃电路的使能信号。

  话音处理模块

  话音处理的功能均由ARM7TDMI控制OakDSPCore共同完成。

  在进行IP通话时,将模拟前端电路送来的64Kbit/s PCM数字话音信号进行压缩,送至网络接口模块;同时将网络接口模块送来的压缩话音信号进行解压,形成64Kbit/s PCM数字话音信号送至模拟前端。

  通过对OakDSPCore的灵活编程,VoIP话机可以方便地实现语音留言的录音和回放功能。

  在用户从号盘拨号时,通过编程启动OakDSPCore的DTMF信号发生器功能,在用户听筒里产生相应的双音多频信号。如果需要,该DTMF信号还可以象话音信号一样经压缩编码后发送出去。

  话音压缩和解压采用G.723.1算法。为了执行有效的语音压缩,必须考虑很多重要的因素。首先,当所有通道都工作时,必须确保性能没有任何下降。数据包必须是可配置的,以确保最大的灵活性。此外,本课题采用的G.723.1算法采用了话音激活检测技术,VAD技术是自适应增益控制的基础,能进一步实现带宽压缩功能,可以和自适应噪音发生器配套在一起使用。VAD技术使发送端能够检测本地发声的间隙并在此期间不再发送完整的话音帧,而代之以比特量更少的静态插入描述帧,此帧仅含有解码器输入端所需产生噪音的参数,使接收端据此产生适当的背景噪音,从而让通话效果接近真实的条件,进一步降低编码速率。VAD门限值的确定是准确判断有声/无声的关键因子。比如长时间的连续讲话会升高背景噪声的估计值,以及相应的门限,从而使得紧接着发生的低幅值的讲话未被检测到。一个解决办法是当检测到话音时改变低通滤波器的截止频率,也就是在有声/无声时采用了不同的方法估计噪声能量。

  话音质量

  网络延时和抖动是影响语音质量的关键因素。打包也是影响时延的重要因素,打包的实时性和打包效率是一对矛盾,聚集多少信息量再打包与带宽紧密关联,必须找到一个恰当的门限。“抖动”是分组交换的特有现象。消除抖动的方法是接收方采用“抖动缓存器"来弥补分组网络的不可靠。此缓存器可以是一个动态队列,接收方根据RTP时间戳来确定网络的流量状况,从而适时的改变缓存器的大小。具体实现时可建立一个环形队列指针表来管理占用的缓存区。若要简单实现的话可以设定一个固定数目的数组,然后标识几个标志位进行管理控制即可。此外,回波抵消也是重要方面之一,好的回波对消器要具有较短的收敛时间和很小的残留回波,可靠地检测重音,且能处理背景噪声和窄带信号。本课题中运用了DSP中的G.165算法最大限度的消除话音回声。

  结语

  局域网IP电话作为一种新兴通信终端产品,有着很大的发展空间,目前已出现多种样品形式,但总的趋势是:硬件简单、集成度高,软件的实时性、可靠性好,同时还需要支持多种业务类型。文中所提出的设计方案较好的把握了这一趋势。该设备既能对用户保持传统电话的操作流程,又能与广域网进行无缝对接,大大降低了通信成本,具有很强的实用性。
关键字:ARM  局域网  IP电话 引用地址:基于ARM的局域网IP电话设计

上一篇:基于ARM7的无线局域网MAC层上系统架构
下一篇:ARM在数字化远程视频监控系统的应用

推荐阅读最新更新时间:2024-03-16 12:57

expect 移植到ARM
一、环境介绍 1.1 宿主机 Ubuntu 1404 32 位 1.2 嵌入式平台 ATMEL AT91SAM9X25 1.3 交叉工具链 arm-none-linux-gnueabi TCL 与 Expect 源码下载地址 二、交叉编译 2.1 编译 TCL tar xvf tcl8.6.4-src.tar.gz cd tcl8.6.4/ cd unix/ export tcl_cv_type_64bit= long long export ac_cv_c_bigendian=no export tcl_cv_strtod_buggy=1 export ac_cv_func_strstr=yes expor
[单片机]
基于MB86R01的ARM嵌入式开发平台
摘要:文中主要介绍了富士通的系统LSI芯片MB86R01的工作机制,以及集成在单芯片上的ARM926EJ-S核心,图像显示控制器(GDC),车载通信功能,各种媒体接口的功能特点。该芯片可处理来自汽车导航器件或数字仪表板的数据和车载网络的信息,以提高驾驶环境的舒适性,同时实现高质量的图像和视频显示。 关键词:MB86R01;ARM926EJ-S;图像显示控制器MB86296 随着汽车、通信、信息电器、医疗、军事等行业的巨大的智能化需要,嵌入式软件及系统发展迅速。微处理器从8位到16位、32位甚至64位,从支持单一品种的CPU芯片到支持多品种的,从单一内核到除了内核外还提供其它功能模块。而且随着硬件技术的不断革新,硬件平台的处
[工业控制]
基于MB86R01的<font color='red'>ARM</font>嵌入式开发平台
嵌入式机器视觉系统中ARM与DSP的数据通信方法
DSP对数字信号和数值算法具有强大的运算处理能力,因而在信号采集与处理中被广泛应用,但其在任务管理、实时控制、人机交互等方面不占优势。而ARM微控制器则控制功能强大,可以加载嵌入式操作系统,且能够提供良好的人机交互、任务管理、网络通信等方面功能。因此,发挥DSP和ARM处理器各自的优势,采用ARM+DSP结构的设计方案已成为嵌入式系统的研究热点,倍受关注。通过嵌入式机器视觉系统的设计实例,阐述ARM与DSP有机结合的设计思想,重点研究ARM与DSP之间的数据通信。 1 嵌入式机器视觉系统总体方案 采用ARM+DSP结构的机器视觉系统总体结构如图l所示。以三星公司高性能ARM处理器S3C2440作为主控制器,配置并移植Linu
[单片机]
嵌入式机器视觉系统中<font color='red'>ARM</font>与DSP的数据通信方法
基于ARM的微波频率自动测量系统设计
  1.引言   通常微波所指的是分米波、厘米波和毫米波。关于其频率范围,一种说法是:   300MHz ~ 300GHz(1MHz =106Hz,1GHz =109 )相应的自由空间中的波长约为1m~1mm.   微波技术的兴起和蓬勃发展,使得国内大多数高校都开设微波技术课程。但还存在以下问题:测量时,由手工逐点移动探头并记录各点读数,然后手工计算实验结果并绘图。测量项目单一、精度低、测量周期长,操作也较为繁琐。本文主要研究一种实用的基于Labview的速调管微波频率自动测量系统。   2.系统整体结构   系统的整体结构如图2-1所示。由下位机跟上位机构成。微处理器通过驱动电路来控制步进电机,带动谐振式频率计的
[测试测量]
基于<font color='red'>ARM</font>的微波频率自动测量系统设计
基于GPRS的ARM7嵌入式单片机视频报警系统
  利用以单片机应用系统为中心的小型嵌入式设备进行数据采集,并通过网络有效传输数据,已成为数据采集领域的研究焦点。由于嵌入式单片机系统集单片机和嵌入式系统为一体,因此嵌入式单片机系统广泛应用于那些对实时性、高速性和智能性要求很高的应用领域。目前计算机图像处理系统多为CCD摄像头+视频卡+计算机的工作模式,且结构复杂、成本高、体积庞大,受计算机操作系统的限制,图像处理实时性差。针对传统的图像采集系统的缺陷,本文讨论了基于ARM7S3C44BOX系列32位单片机的嵌入式系统在图像采集中的应用。    1 嵌入式影像系统对图像的处理   1.1 ARM7体系结构   ARM处理器是高性能、低功耗嵌入式微处理器,是目前32位、
[嵌入式]
ARM9(S3C2440)的ADC和触摸屏控制——理论知识
概述 10 位CMOS ADC(模/数转换器)是一个8 通道模拟输入的再循环类型设备。其转换模拟输入信号为10 位二 进制数字编码,最大转换率为2.5MHz A/D 转换器时钟下的500 KSPS。A/D 转换器支持片上采样-保持功能和掉电 模式的操作。 触摸屏接口可以控制/选择触摸屏X、Y 方向的引脚(XP,XM,YP,YM)的变换。触摸屏接口包括触摸屏引 脚控制逻辑和带中断发生逻辑的ADC 接口逻辑。 触摸屏接口模式 1. 普通转换模式 单转换模式是最合适的通用ADC 转换。此模式可以通过设置ADCCON(ADC 控制寄存器)初始化并且通过读写 ADCDAT0(ADC 数据寄存器0)就能够完成。 2. 分离的X/Y 方向转换模
[单片机]
ARM牵手香港科技大学,提供嵌入式系统设计培训
位于广东南沙信息科技园的香港科技大学嵌入式系统设计院和ARM公司共同宣布:嵌入式系统设计院成为ARM认证培训中心。嵌入式系统设计院将向大学生和专业人员提供培训课程,帮助他们提高基于ARM技术的设计和开发能力。 作为中国乃至世界最受欢迎的嵌入式系统架构之一,ARM正在成为越来越多的中国设计师在开发系统级芯片(SoC)解决方案时的首选。通过ARM认证培训中心,中国电子工程师可以获得基于ARM技术的片上系统设计和开发的培训,从而促进本地电子设计的创新。 嵌入式系统设计院院长K. David Young博士表示:“珠江三角洲是中国电子制造业的中心。很多公司现在都在开发基于ARM技术的产品,增强产品的竞争力。然而对他们来说最大的挑战之一
[焦点新闻]
ARM中断宏定义
MACRO $HandlerLabel HANDLER $HandleLabel $HandlerLabel sub sp,sp,#4 ;decrement sp(to store jump address) 存贮PC跳转地址 stmfd sp!,{r0} ;PUSH the work register to stack(lr does not push because it return to original address) ldr r0,=$HandleLabel ;load the address of HandleXXX to r0 ldr r0,
[单片机]
<font color='red'>ARM</font>中断宏定义
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved