当前位置:首页 > 嵌入式 > 嵌入式教程
[导读]基于ARM9微处理器S3C2410的IP电话通信设计

摘要:介绍了一种基于SIP协议的IP电话通信系统的组成原理,给出了一种独立式IP电话设计方案。该方案通过在S3C24lO微处理器上移植μC/0S-II操作系统来完成多任务管理,可使用一个RJ-45以太网接口直接连接Internet来实现和其他IP电话的通话。
关键词:IP电话;SIP协议;ARM9微处理器;μC/0S-11

0 引言
    IP电话以其通话费率低、方便集成和智能化等优势而得到了众多消费者的极大认可,并因此而对原有固定电话运营者的长途电话和国际电话业务造成了巨大冲击。因此,随着以太网接口的直接入户,开发出一种带有RJ-45以太网接口并直接连入因特网,从而使使用更加方便的IP电话非常需要。利用这种IP电话,用户可以直接拨叫远端的电话号码,并通过关守(gate keeper)把所拨的电话号码转换成远端IP电话的IP地址,从而建立通话连接。事实上,新型IP电话终端已经可以直接把输入语音信号数字化,并按照G.728或G.729等一定的语音压缩编码算法来完成对输入语音信号的实时压缩,使带宽从64kbps降低到8kbps,从而大大提高了信道的利用率。IP电话终端通常遵循SIP(或者H.323)协议,并通过网关(gate way)实现IP电话和普通电话的互通。

1 IP电话系统组成
    IP电话通信的基本原理是利用数字通信技术来对语音信号进行数字压缩编码处理,然后按TCP/IP标准进行打包,再经过互联网络把数据包发送到接收地。同时在接收端将这些语音数据包串起来。再经过解码解压处理,以使其恢复成原来的语音信号,从而达到由互联网传送语音的目的。IP电话的基本组成原理如图l所示。


    IP电话系统一般有网络电话机(IPPhone)、网关(Gateway)、多点控制单元MCU(MultipointControl Unit)和网闸(Gatekeeper)等四个基本组件。其中网络电话机是IP电话的客户终端,多以硬件形式出现,它可以直接连接在IP网上,以便进行实时的语音或多媒体通信;网关是通过IP网络提供PHONE-TO-PHONE语音通信的关键设备。是IP网络和PSTN/ISDN/PRX网络接口设备;多点控制单位(MCU)的功能在于利用IP网络实现多点通信,以使IP电话能够支持诸如网络会议这样一对多的通信;至于网闸,有时也称为网守或关守,主要用来提供对整个电话系统端点和呼叫的管理。
    网闸的主要功能包括地址翻译、呼叫接纳控制、呼叫管理以及呼叫权限等。在H.323建议中,网闸是一个可选部分,但是对于实际运行的局域网IP电话系统来说,网闸则是一个重要部件。本系统中,网闸设立在IP地址的一个终端上。通过网闸可对所有终端用户的姓名和IP地址进行统一登记和管理,并预先给每个终端用户分配一个类似电话分机的虚拟电话号码,以便其他终端用户进行呼叫。主叫用户无需知道被叫用户终端的IP地址,只需要输入其对应的虚拟电话号码或真实姓名即可。[!--empirenews.page--]

2 IP电话单机的硬件设计
    IP电话分为接收方和呼叫方。发起通话请求的一端称为呼叫方,另一端为接收方。根据不同的应用场景,呼叫方和接收方可以调换角色,也就是说,任意一方都可以发起通话请求,呼叫方发起通话请求并输入接收方的IP地址,两方通过网络连接成功后,利用麦克风和听筒就可以进行谈话了。
    IP通话的主要工作在网络电话机单机部分。随着现在ARM微处理器技术的高度发达和日趋成熟,设计中选择了ARM9微处理器S3C2410和μC/0S-II搭建平台来制作网络电话单机部分。一般单机的基本工作框图如图2所示。


    在图2中,CPU内核模块是搭建一个带CPU及存储器的工作核心。其中的微处理器采用的就是三星公司的S3C2410(ARM920T),Flash采用的
是SST公司的SST39VFl60的NOR Flash,SDRAM则采用hynix公司的HY57V641620HG;以太网接口主要帮助CPU完成TCP/IP数据包的接收和发
送。本设计采用的RTL8019AS是一种全双工的即插即用型以太网控制器,它兼容RTL8019控制软件和NE2000 8bit或16bit的传输,并支持UTP、
AUI、BNC和PNP自动检测模式,同时支持外接闪烁存储器读写操作以及I/0口地址的完全解码,此外,它还具有LED指示功能,其接口符合Ethernet2和E802.3、10Base5、lOBase2、10BaseT等标准。
    系统中的显示模块采用一块普通数显LCD,主要用来完成电话号码的显示及一些本机工作状态的显示;键盘模块和EEPROM主要提供网络电
话机的拨号键盘,以完成拨号和电话机的功能设置。EEPROM主要用于系统参数的设置和存储。语音模块可选用飞利浦半导体公司的UDAl341TS
音频编解码器。另外,系统中的上位机接口主要完成一些参数的设定和一些已经被记录的参数的读取。

3 系统软件设计
    软件方面的工作主要是驱动程序的编写、任务的划分和任务的编写等三个方面。由于μC/OS-II基本上不提供API接口库或者需要额外购
买,因此,网络电话中需要编写的主要驱动软件有包括TCP/IP、液晶驱动、EEPROM驱动、键盘驱动、IO驱动、USB驱动等程序。这些驱动程序的编写一般都有固定的模式和套路。一般情况下,IP电话软件应包括完成语音通话所需的所有功能。该软件按功能可划分为图3所示的四部分。


3.1 呼叫处理模块
    呼叫处理模块主要完成呼叫的建立与拆除功能。呼叫控制可采用SIP协议建立会话。呼叫建立过程通常是先由一个SIP终端向本地的代理服务器发出呼叫请求,本地的代理服务器则通过查询本地的重定向服务器来查找下一个代理服务器的地址,并向其转发呼叫请求。当下一个代理服务器收到呼叫请求后,首先通过定向服务器查找被叫所在网络的代理服务器,然后向该代理服务器转发呼叫请求。被叫所在网络的代理服务器确定被叫终端后,再向被叫终端转发呼叫请求。最后由被叫终端应答,从而实现连接。
3.2 语音编码/解码模块
    虽然语音采集所得到的PCM编码数据能够提供较好的长途通信语音质量,但其速率往往过高,因而占用网络带宽资源过高。为此,一般都需要对语音数据进一步压缩,以降低语音编码的速率。这样,相应的,在接收端也就需要同样的解压算法来恢复原始语音数据。编制这部分代码可采用现在比较成熟的语音编解码算法,并进行一定的改进,以提高语音通话质量。
3.3 数据封包/拆包模块
    数据封包/拆包软件模块主要对压缩编码后的语音数据进行打包,包括添加包头、时标和其他信息,以使其形成语音包。在接收时。则应进行相应的拆包,并提取语音压缩包。
3.4 数据传输模块
    该模块主要完成语音包的发送和接收。因为把音频数据实时地传输给对方才是保证实时语音通信的关键。所以,在考虑可靠性和实时性方面,更应注重速度和实时性。故在选择协议时,可采用UDP协议,并在编程时使用对应的数据报套接字。

4 结束语
    IP电话通信系统是利用现有计算机网络资源组成的电话通信系统,它无需铺设电话线和购置电话通信网络设备,故可节省大量建设电话网络的设备费、线路费和工程费用,可在不需要铺设电话线的情况下,方便地实现电话通信,增加电话用户,缩短安装工程周期,提高计算机网络资源的利用率,扩大电话的普及范围,同时可加大信息传递量,因而具有良好的社会和经济效益。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

在这篇文章中,小编将为大家带来微控制器的相关报道。如果你对本文即将要讲解的内容存在一定兴趣,不妨继续往下阅读哦。

关键字: 微控制器 微处理器 CPU

2022年6月17日,爱普特微电子受邀参加由Aspencore主办的全球MCU生态发展大会。此次会议以“国产创新 智能应用”为主题,汇聚了MCU 业内知名技术、应用专家和 MCU 产业链上下游企业,共同探讨最新MCU技术...

关键字: 爱普特微电子 MCU 微处理器

数字居民时代,半导体芯片几乎贯穿于我们生活的各个环节。不管是从微波炉到电脑、手机、计算机中央处理器等电子设备上都安装有各种各样的芯片。当代微处理器或图形处理器上可容纳超过500亿个晶体管,故障率仅接近十亿分之一。为了达到...

关键字: 半导体 芯片 微处理器

在这篇文章中,小编将为大家带来微控制器MCU的相关报道。如果你对本文即将要讲解的内容存在一定兴趣,不妨继续往下阅读哦。

关键字: 微控制器 MCU 微处理器

今天,小编将在这篇文章中为大家带来开发板嵌入式微处理器的有关报道,通过阅读这篇文章,大家可以对它具备清晰的认识,主要内容如下。

关键字: 开发板 微处理器 嵌入式微处理器

随着卫星运营商在轨获取的数据越来越多,他们更愿意在载荷上处理这些数据并提取有价值的信息,而不是将大量数据下行传送到地面的云上进行后处理。现有宇航级半导体技术和/或射频带宽限制了可实时处理的数据量。我知道一些客户由于下行链...

关键字: Teledyne e2v 微处理器 FPGA

1969年,美国数字设备公司研制出了第一台可编程逻辑控制器--PDP14。并在美国通用汽车公司的生产线上试用成功,取代生产线上的继电器控制系统,开创了工业控制的新纪元。

关键字: 微处理器 网络通信

现场可编程门阵列(FPGA)、片上系统(SoC)和微处理器等数据处理IC不断扩大在电信、网络、工业、汽车、航空电子和国防系统领域的应用。这些系统的一个共同点是处理能力不断提高,导致原始功率需求相应增加。设计人员很清楚高功...

关键字: ADI FPGA SoC 微处理器

芯片组(英语:Chipset)是一组共同工作的集成电路“芯片”,并作为一个产品销售。它负责将计算机的核心——微处理器和机器的其它部分相连接,是决定主板级别的重要部件。

关键字: 芯片组 微处理器 机器

嵌入式教程

6897 篇文章

关注

发布文章

编辑精选

技术子站

关闭