(信息与通信工程专业论文)基于飞思卡尔mcf5235和ecos操作系统的voip终端设计.pdf_第1页
(信息与通信工程专业论文)基于飞思卡尔mcf5235和ecos操作系统的voip终端设计.pdf_第2页
(信息与通信工程专业论文)基于飞思卡尔mcf5235和ecos操作系统的voip终端设计.pdf_第3页
(信息与通信工程专业论文)基于飞思卡尔mcf5235和ecos操作系统的voip终端设计.pdf_第4页
(信息与通信工程专业论文)基于飞思卡尔mcf5235和ecos操作系统的voip终端设计.pdf_第5页
已阅读5页,还剩93页未读 继续免费阅读

(信息与通信工程专业论文)基于飞思卡尔mcf5235和ecos操作系统的voip终端设计.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 摘要 v o i p 技术是h n 锄c t 技术与传统电话技术相结合而兴起的一种实用技术,相 对于传统的电信业务,v 0 口具有话费用低廉的优势,从而对传统电信业务造成 了强有力的冲击,市场前景非常广阔。v o i p 技术依托于一系列相关技术,这些技 术包括多媒体技术、网络技术、d s p 技术等。伴随着n g n 的到来,传统电信网络 将逐步成为分组骨干网的边缘部分,那种一个网络只能提供一种业务的情况将会 逐渐消失。取而代之的将是,在一个基于分组的网络上能够提供所需要的全部业 务而基于s i p 协议的v o i p 技术恰好符合了n g n 的要求,它基于包交换,可扩展 性强,并且随着s i p 协议扩展文档的不断发布,它可以支持越来越多的新业务, 这一点正好与n g n 的目标相吻合。 本文介绍的是v o i p 技术的一个分支- v 0 i p 终端设计,详细介绍了一种基 于飞思卡尔m c f 5 2 3 5 平台的v 0 i p 终端的设计方案。本设计将v 0 i p 技术应用到了 廉价的3 2 位嵌入式平台上,并实现了全部主流功能,因此具有较大的经济价值和 理论价值。 本文首先介绍了v o i p 各种相关知识,包括信令控制技术、媒体传输技术以及 语音编解码技术,在这里以信令控制协议s i p 协议为主;本文还详细介绍了 v 0 i p 终端的设计方案,从系统架构入手,分析了各个软件模块的接口以及各种 v o i p 业务的实现方案;本文还给出v 0 i p 终端的全部测试方案以及测试结果,测 试结果表明,该v o i p 终端能够较好得完成预期的设计功能;最后提出了一种本终 端在其它网络的应用方案。 关键词:基于球协议的语音通信会话初始协议终端 a b s t r a c t v o i pi san c w t e c l l l l o i o g yw h i c hc o m b i n st h ei n t e m e t t c c h n o l o g ya n dt r a d i t i o n a l t c l e c o mt c c h n o l o g y c 0 m p a r e dw i mt 豫d i t i o n a lt e l e c o mt e c l l i l o l o g y v o i pi sac h c a p c r t c c h l o g yw i t hb r i g l i t e rp m s p c d n i st c c h n o l o g yi sb 弱c do nas e f i 器o fo t h c r t c c h n o l o g y s u c h 弱d s em u l t i m c d i a 卸di i l t c m e t 卸ds 0 彻n g nc m w i l lc o m cs 0 0 n , t r a d j t j 伽a l t e l c c o mn c m o r kw i l ls i n ki d t od c p m v i t y i tw i l ib c c o m et ot h cv c r g co f t h e c o r cn c 惭o r k t h cs i f u a t i o nt h a tan c t 、加r ko n l yc a np r o v i d c s c r v i c cw i l ld i s a p p c a r a l l 弱t ,a i i dan c 晰o r l ( b a s e do np a c k e ts w i t c hw h i c hc a np r o v i d ea l ls c r v i c c sn c e d e d w i i li n s t c a do fi t v o i pt e c h n o l o g yw h i c hb a s c do ns i pp r o t o c o lj u s ts a t i s f j e st h c n g n sn e e d ,t h i st c c l l l l o l o g yb a s e so np a c k e ts w i t c ha n di sv e r ye 硒yt oe x p a n d n o w m o f ca l l dm o r cs c r v i c c si ss u p p o r t e db ys i p p r o t o c 0 1 n i sp a p e ri n t m d u c c sap r o s p c c to fv o l pt c c h i l o l o g y ,w h i c hi sl a l o w n 舔v 0 口 t c m i n i 1 t h i st e 珊i n a lu s cf f c e s c a l em c f 5 2 3 5 勰i t sh a r d w a r cp l a t f o 哑t h i sd e s i 龃 r e a l i z e da l lm a i ns e r v i c co fv o i p0 nt h cl o w - c o s t3 2 b i t se m b c d d c dp l a t f 0 咖,s oi ti s v a l u e a b l ei nb o t he c o n o m yp f o s p e c ta n dl e c h n o i o g yp m s p e d a if i r s t ,t h i sp a p e ri n t r o d u c ev o i pk n o w l e d g e ,w h i c hi n d u d c sc a l lc o n t r o l t c c h n o l o g y ,m c d i at r a n s p o nt c c h n o l o g y 柚d 卸d i oc o d c c t h e nt h i sp a p c fd e s c r i b c st h c d c s i 印a t i 吼o ft h cv o l pt 锄i n a i ,w h i c hi n c l u d e ss y s t c ma r c h i t c c h t u 碍d 髂i 印,s o 置t 玳 m o d u l ei n t e 响c e sd e s i 印孤dt h cr c a l i z a t i o no fa l l r v i c 鹤0 fv o mt l l l c nt h i sp a p c r d e s 嘶b e st h et e s tp i 柚a n dt h er e s u i t a il a s t ,t h j sp a p c ri n t f o d u c e sas u g g c s t i o nt o a p p i yt h i sd e s i g i li no t h e r t y p co fn c 柳o r k l 勰t ,f a n h e rr e s e a f c h e sd i r e c t i o ni sp o i m e d0 u ti nt h ce n d 研w o r d s ; s e 铀i o nl n i t i a t i o np r o t o l ,v o 妣o v i e rl p ,u 辩ra g c n t u 图目录 图目录 图2 1m c f 5 2 3 5 框图一 图2 2c c o s 图形化配置工具界面 图3 1 g 7 1 1 编码器处理过程 图3 2g 7 1 1 解码器处理过程 图3 3i l b c 与其它编解码方式在丢包情况下的性能比较1 6 图3 - 4 s 邛交互示例 图3 - 5s i p 注册过程2 0 图3 6s i p 网络模型 图4 - 1e c o s 图形配置工具的界面 图4 1 2 在图形配置工具中使用模板 图禾3 配置完成后e c o s 图形配置工具的界面。 图5 1 v o i p 终端软件结构 2 9 。二3 0 图5 2v o l p 终端应用程序主要结构 图5 - 3 应用程序和砌噜线程的调度关系 图5 - 4r t p 线程的结构 图5 5 应用程序和c p t 线程的调度关系4 1 图5 6v o i p 终端中键盘的连接电路4 3 图5 - 7 v o i p 终端中l c d 的连接电路4 5 图5 8 初始化模块处理过程示意图 图5 9 基本呼叫业务的s i p 信令交互。5 0 图5 1 0 终端设计的具体细节 图5 1 1 呼叫转移的s l p 信令流程5 2 v u h 图目录 图5 1 2v o i p 终端对呼叫转移的处理过程5 3 图5 1 3 呼叫保持的s i p 信令流程5 4 图5 1 4v 0 i p 终端对呼叫保持的处理过程5 5 图5 1 5 短消息服务的s i p 信令流程5 5 图5 1 6v o i p 终端处理短消息服务的过程5 6 图5 1 7 三方通话中的s l p 信令流程5 7 图5 1 8v o l p 终端处理三方通话的过程5 9 图5 1 9 注册的s i p 信令流程 图5 2 0v o i p 终端处理注册服务的过程6 0 图5 2 1v o i p 终端中h r r p 服务器的密码输入页面6 3 图5 2 2v o l p 终端中 r r r p 服务器的功能选择页面6 3 图5 2 3v o l p 终端中h t l p 服务器的设置页面 图5 2 4 话机设置模块的使用界面 6 4 6 4 图5 2 5v 0 i p 终端处理即时设鬣模块的过程6 5 图5 2 6v o i p 终端对c a l i n e w 事件的处理过程6 6 图6 1e t h c r e a l 软件界面 图6 2 终端和服务器的连接拓扑图。 6 9 7 0 图6 - 3 功能测试的硬件平台。7 2 图6 4 去电时的屏幕显示7 2 图6 - 5 来电时的屏幕显示。7 3 图6 6 基本业务测试中a 的执行结果7 3 图每7 基本业务测试中b 的执行结果7 3 图6 8 呼叫转移业务测试中a 的执行结果7 4 图6 9 呼叫转移业务测试中b 的执行结果 v m 图目录 图6 1 0 呼叫转移业务测试中c 的执行结果7 5 图6 1 1 呼叫保持业务测试中a 的执行结果7 5 图6 1 2 呼叫保持业务测试中b 的执行结果7 6 图6 1 3 注册测试中a 的执行结果7 6 图6 1 4 短消息业务测试中a 的执行结果7 7 图6 1 5 短消息业务测试中b 的执行结果7 7 图7 1z i g b e e 电话系统的功能示意图。7 9 图7 2z i g b e e 电话系统中两个系统的网络层次示意图8 0 图7 3 网关应用程序的基本结构8 1 图7 - 4 手持设备的应用程序结构8 3 表目录 表目录 表3 1 各种编码技术性能比较1 6 表4 一l0 s i p e x o s i p 软件结构2 5 表4 2 用于替换的a p i 2 8 表5 一l 各种事件类型代表的含义4 9 表6 一l 局域网q o s 测试结果7 0 表6 2 局域网q o s 测试结果7 1 表6 3 话机测试结果7 7 表7 一lc a l lc o n t r o l 协议的帧格式8 l x 缩略词表 缩略词 v o i p s i p 住1 1 甲 h 册 n g n d h c p t f r p t c p r f c 0 s i u a u d p s d p q o s m o s 缩略词表 英文名称 v o i a f m s e s s i o ni i l i t i a t i o np r o t o l h t e m c te n g i n r i n gt a s kf o 啮 h y p c rt c x tt r a n s n l i s s i 彻p m m o c o l n e x tg e n e n n c t d y n a m i ch o 吼c o n f i 呻t i o np f o t o 。o l 嘣“a lf n et m s f c rp r o t o l t r a n 锄i s s i c o n l r o lp i o t o i r e q u e s tf o fc o m m c n 协 o p c ns y s 忙m sh t c r c 0 蚰e c t i o n u s e f a g c n t u s c rd a t a g 姗p r o o c o l s e i d e r i b cp 删 o u a l i t vo fs e n ,i c c m e 柚o o i n i o ns c o x 中文名称 基于l p 协议的语音通信 会话初始协议 因特网工程任务组 超文本传输协议 下一代网络 动态主机配置协议 简单文件传送协议 传输控制协议 请求评注 开发系统互连 用户代理 用户数据报协议 会话描述协议 服务质量 平均主观值 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究 工作及取得的研究成果。据我所知,除了文中特别加以标注和致谢 的地方外,论文中不包含其他人已经发表或撰写过的研究成果,也 不包含为获得电子科技大学或其它教育机构的学位或证书而使用 过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论 文中作了明确的说明并表示谢意。 签名:盗之地壶,日期: 年月日 关于论文使用授权的说明 本学位论文作者完全了解电子科技大学有关保留、使用学位论 文的规定,有权保留并向国家有关部门或机构送交论文的复印件和 磁盘,允许论文被查阅和借阅。本人授权电子科技大学可以将学位 论文的全部或部分内容编入有关数据库进行检索,可以采用影印、 缩印或扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后应遵守此规定) 日期:年月日 第一章绪论 第一章绪论 1 1v o i p 技术背景及研究现状 v o 口技术是1 i l t c m c t 技术与传统电话技术相结合而兴起的一种实用技术,相 对于传统的电信业务,v o i p 具有通话费用低廉的优势,从而对传统电信业务造 成了强有力的冲击,市场前景非常广阔。在过去,我们都依赖公共电话网( p s t n ) 进行话音通讯,有一条固定的线路分配给双方,这条线路可能存在多余的频宽,但 其他信息不能同时传递。但是今天我们可以利用v o i p 技术在同一条数据线上同时 进行数据、话音和传真通讯。v o i p 是v o i c eo v e ri n t e r n e tp r o t o c o l 的缩写,指 的是将模拟的声音讯号以数据封包的形式在i p 网络的环境进行语音讯号的传输。 目前,我国六大电信运营商都能提供功能完善的i p 电话业务。其使用方便,通话 费用低廉的特性也得到了用户的认可i l l 。 由于传统基于电路交换的电信网络只能支持单一业务,而下一代网络中,基 于分组的网络可以支持所有的业务,使得传统电话网络成为在这个基于分组的骨 干网络的边缘部分。这一目标必然要求业务与呼叫控制分离以及呼叫控制与承载 分离以实现相对独立的业务体系:并且让分组网络成为所有公共业务的共同平台。 而为这些公共业务提供支撑就是一个非常重要的环节【烈 早期的i p 电话中的信令控制协议h 3 2 3 是基于传统的电信概念提出的。在适 应通信的新的发展上具有较多不足之处。表现在:协议复杂、成本高、不能与n o 7 信令集成、不适于组建大规模网络、没有拥塞控制机制、服务质量不能得到保证、 效率和扩展性较差等。 m t f 所提出的基于互联网的信令控制协议s i p 协议具有简单灵活、实现 成本低廉、适用于分布式控制并且易于扩展的优点。目前,s i p 的应用研究正迅 速地向前发展,并且随着m e m e t 传输质量的提高,利用u d p 传输的基于s i p 协 议口电话的语音质量会得到很好的改善。不过目前s i p 的实用技术还不太成熟, s 口终端互通性较差,因此有必要进行进一步的研究1 3 l1 4 i 。 各国政府对i p 电话基本上都采取了支持的态度。传统电信部门也积极介入, 以寻求将来的发展空间。每个网络业务的提供者都开始瞄准电话公司的核心业务, 电子科技大学硕士学位论文 i s p 、增值网络公司和传统电信经营公司都在窥视i p 电话市场。a t & t 公司购并 t c i 之后,从2 0 0 0 年底开始从使用电缆的本地电话服务转向包交换的i n t e m c t 服 务,同时通过其w o r l d n c ti l l t 啪c t 服务和全球i s p 一起推动i p 电话应用的发展。 美国的全球通公司( g i o b a l i j n k ) 与3 c o m 公司签订了合作意向书,指定3 c o m 为 其部署和安装名为“g l o b a l h l t e m e t w o r k ”的全球规模的口电话系统目前 g l o b a l “n k 公司已在3 5 个国家开通i p 业务。 自1 9 9 4 年4 月,我国就开始进行i p 电话试验,最先进行试验的包括中国电 信、中国联通。中国网通于1 9 9 9 年8 月成立,并于同年l o 月开通试验网。2 0 0 0 年4 月1 日我国正式开通口电话业务,现有中国电信、中国网通、中国移动和中 国联通等i p 电话运营商。目前各个运营商的l p 电话网已覆盖了全国大多数大中 城市,可通达欧洲、北荚和亚洲近两百个国家和地区。 n g n 通常是指p s t n 、i s d n 、第二代移动通信阶段之后的网络发展。它采用 开放接口和分层结构,是一种能够逐步生产、实施及管理各种创新业务的平台。 它是一个十分广泛的概念。简而言之,n g n 可以概括为采用统一的口分组网络 技术为核心来搭建适合所有多媒体综合业务的网络。也就是说,电信业长期以来 的依不同业务而独立建网的局面将被根本改变原有的公共的话音、视频和数据 类别的业务不仅可以多网合一地承载、管理和运营:而且更为重要的是可以用同 一接入手段在统一的网络技术平台上提供融合话音、视频和数据应用的综合的、 多媒体的新型业务。分组网对各种多媒体业务不加区分的认为是分组数据网络上 的某一个应用。n g n 是可以提供包括话音、数据和多媒体等各种业务在内的综合 开放的网络构架。目前i p 电话已进入商业化阶段。但是其服务质量还低于传统电 话,业务种类有待于发展。随着n g n 到来,和软交换技术的兴起。传统的v o l p 电话的组网方式和控制技术受到了严峻的挑战。 1 2 论文的研究内容和目标 本文作者参与了“基于c o i d f i r cm c f 5 2 3 5 平台的开源v 0 1 p 电话”项目,本 项目的目标是在c o l d f i f em c f 5 2 3 5 e v b 开发板上开发一个v o l p 终端,支持各种 典型的v o i p 业务,各种功能的描述详见第五章。 本项目是一个典型的嵌入式网络应用,包含应用程序开发、协议栈移植、语 音编解码实现与优化和嵌入式操作系统移植等工作,本文作者在本项目中负责 2 第一章绪论 s i p 协议栈的移植、应用程序的开发以及一部分语音编解码的优化,由于应用程 序的开发在本项目中也担当了系统各模块的集成的角色,因此本文对其他模块也 有所涉及,另外由于语音编解码优化与本文重点关系不大,故不做过多分析。 本论文的工作内容和目标为: 移植开源s 口协议栈到e c o s 操作系统 依据r f c 3 2 6 1 实现各种v 0 i p 主流业务,实现完整的信令系统 系统架构设计以及各个模块的集成 将应用程序在m c f 5 2 3 5 e 开发板上实现,并将其固化到开发板上 在局域网、校园网以及公网上对v o i p 终端进行功能测试 对本v 0 口终端在其他类型网络中的应用提出建议 3 电子科技大学硕士学位论文 第二章m c f 5 2 3 5 处理器和e c o s 操作系统概述 在本项目中使用的硬件平台为飞思卡尔公司的m c f 5 2 3 5 e v b ,而使用的操作 系统是嵌入式可配置操作系统( c c o s ) ,本章将对这两部分内容进行详细的介绍。 2 1 处理器m c f 5 2 3 5 贪绍 2 1 1m c f 5 2 3 5 概述 m c f 5 2 3 5 是一颗高度集成的3 2 位微处理器,它基于c o l d f i r c 第二代微架构 核,核内有一个增强的乘加单元。除此之外,m c f 5 2 3 5 还集成了s l t a m 、s d r d d r s d r a m 控制器、1 0 1 0 0 m 以太网控制器等片上外设。m c f 5 2 3 5 的框图如图2 1 所示【5 1 。 图2 - 1 m c f 5 2 3 5 框图 4 第二章m c f 5 2 3 5 处理器和e c b s 操作系统概述 t 2 1 2m c f 5 2 3 5 核概述 v 2c o l d f 饥核心可在1 6 6 m h z 的时钟频率下提供1 5 9 m 口s 的处理能力1 6 】; 3 2 3 2 位的增强型乘加运算单元( c m a c ) 和硬件除法器; 8 k b 或1 6 k b 的可定义指令数据缓存; 丰富的外设接口; 一个1 0 1 0 0 m 以太网通讯控制模块: 可供选择的u s b 2 o 全速模块; 三个通用异步串行口( 1y a r d ; 硬件加密模块,适用于i 州g ,d e s 、3 d e s 、a e s 、b c e 、m d 5 、s h a 1 、 h m a c 、h a s ha c c e l c 阳t o f 等算法; 2 2e g o s 操作系统分析 2 2 1e c 0 s 操作系统概述 c c 0 s 是一种嵌入式可配置实时操作系统。适合于深度嵌入式应用。主要应用 对象包括消费电子、电汛、车载设备以及其他一些低成本和便携式应用。它的内 核只占用几十到几百k b 。e c o s 使用了多任务抢占机制,具有最小的中断延迟。 支持嵌入式系统所需的所有同步原语,并拥有灵活的调度策略和中断处理机制。 e c 幻s 还提供了普通嵌入式应用中所需要的全部功能。包括设备驱动程序、内存 管理、例外处理、标准c 、数学库等等。除了这些对系统运行时的支持外,e c o s 所提供的支持还包括开发嵌入式应用所需的所有工具。如e c o s 配置和编译工具, 基于g u n 的编译器,汇编器,链接器、调试器和模拟器。 c c o s 通过提供以实时内核为核心的一些核心组件来实现嵌入式开发工具的 标准功能。这些核心组件包括: 硬件抽象层( l a l ) :对硬件平台进行抽象,为上层软件对硬件的控制和访问 提供一个标准接口硬件抽象层的实现保证了c c 蕊系统具有良好的可移植性。 内核:内核包含了中断和例外处理机制、多线程机制i 同步机制、可供选择 的多种调度机制、定时机制和计数器等。 l s oc 和数学库;提供与标准兼容的函数和调用。 电子科技大学硕士学位论文 设备驱动程序:对一些典型的设备提供驱动程序支持,包括串口驱动程序、 以太网驱动程序、f 1 嬲hr o m 驱动程序、u s b 驱动程序和p c m c l a 驱动程序等 等 g n ud e b u g g c “g d b ) 支持:为目标平台上的软件与g d b 主机之间提供通信 机制,实现对目标平台硬件和软件的调试 c c o s 是一种开放源代码的软件,它的源代码和开发工具、配置工具都可以从 e c o s 网站上免费下载。 c c 挑有两种可选择的开发环境:一种是建立在w i n d o w s 下的开发环境:另 一种是基于l i n u x 或u n i x 的开发环境。在w i n d o w s 环境下,e c o s 开发环境的建 立需要三种工具和环境,分别是c y g w i n 、g n u 交叉编译工具和c c o s 配置工具。 因为e c o s 是一种开发源代码的软件,它的开发环境所依赖的基础是l i n u x 。在 w i n d o w s 环境下,开发e c o s 系统要使用l i n u x 模拟环境c y g w i n 。c y g w i n 是运行 在w i n d o w s 平台上的一个u n i ) ( l i n u x 模拟环境。也是本文作者用以进行硬件调 试的主要工具。它由两部份组成: 动态链接库c y g w i n d 1 1 它是w i n d o w s 环境下的u n i x 脚n u x 模拟层,提供 标准的u n i ) ( ,l i n u x a p l 函数。 一组u n i x ,l i n u x 工具集。使得用户可以在w i n d o w s 环境下使用u n i ) ( ,l i n u x 环境所提供的各种工具。 c y g w i n 提供的组功能强大的工具可以帮助开发人员将应用程序从 u n l l i n u x 移植到w i n d o w s 平台上,它提供了标准自由软件g n ug c c 编译器 和g d b 调试工具。除此之外,它还为w i n d d s 提供一个包括a p l 和命令s h e l l 在内的标准i ,n ,i j n u x 开发环境。 e c o s 是一个抢占式多任务实时操作系统。它的基本运行单位是线程。是一个 多线程系统。在某一段时间内,系统中可以存在多个活动线程。但是在某一时刻 只有一个线程被执行。多个线程的运行可以通过可配置的两种调度策略进行调度 川。 2 2 2e c o s 操作系统主要系统调用 同l i 删x 或者其他主流操作系统一样,c c o s 提供一系列a p i 用来实现进程管 理、定时器操作、设备管理等操作,在这里主要介绍一些在本项目中需要使用到 的重要系统调用。 6 第二章m c f 5 2 3 5 处理器和e c o s 操作系统概述 1 线程创建: c y “h r c a d - a e a t e ( 参数略) 该a p i 用于创建一个新的线程,用户需要提供入口函数、入口函数参数、优 先级、栈以及栈的大小等数据,调用本函数之后一个新的线程被创建,此时的线 程并未被调度运行。 2 线程运行: c y g _ m e a d _ r c 蛐m “参数略) 这个函数指定某线程重新运行,当一个线程创建之后,必须通过该函数来运 行被创建的线程。 3 线程挂起: c 3 r g j h r e a ds l l s p e n d ( 参数略) 这个函数可以挂起指定的线程 4 线程释放 c y g j h r e a d j e l e a s e ( 参数略) 这个函数可以将处于阻塞状态的线程释放出来。 5 线程退出: c j ,“h 确甜e x i t ( 参数略) 这个函数可以退出一个线程,但是为该线程分配的资源并没有被释放。 6 线程删除: c y g j l l r c a d d e l e t e ( 参数略) 这个函数用来删除一个已经退出的线程,并且释放已经分配的资源。 7 读设备 c y “o _ r c a d ( 参数略) 这个函数用来将设备中的数据读出并保存到缓冲区中。 8 写设备 c y g - i o j m t “参数略) 这个函数用来将缓冲区中的数据写入到设备中。 9 查找设备 c y “啦k u p ( 参数略) 这个函数用来查找一个设备并为找到的设备创建一个线程及分配堆栈。 1 0 标志位操作 c y g _ n a g _ w a i t 、c y g - f l a g - m a s k b i t s 、c y g - f l a g - u n m a s k b i t s 电子科技大学硕士学位论文 这三个函数为标志位操作函数,分别为等待标志位、置位标志位、取消置位 标志位,这三个函数通常用在驱动程序中阻塞加【8 】o 2 3 基于e c o s 操作系统的程序开发 2 3 1e c o s 开发环境的建立 在2 2 1 节中简单介绍了开发环境c y g w i n 。c y g w i n 可以从其官方网站: 丛t p :w w c y 鲤i n c 伽上下载并安装最新版本。下载并安装c y g w i n 后,一个虚 拟的u n i x l i n u x 环境就被建立起来了,而进行e c o s 开发,还需要下载并编译g n u 交叉编译工具。g n u 交叉编译工具源码可以从g n u 网站上下载: h 主主乜;g :g 翌坠:q ! g 。 以上两部分均完成之后,则需要下载e c o s 的源码和配置工具。e c o s 是一个 可配置的嵌入式操作系统,用户自定义操作系统,在e c o s 图形化配置工具中用户 可以选择自己需要的组件进行编译。e c o s 图形化配置工具的界面如图2 2 所示【8 j 。 图2 - 2e c o s 图形化配置工具界面 8 第二章m c f 5 2 3 5 处理器和e c o s 操作系统概述 在窗口的左边列出了操作系统的组件,用户可以向其中添加新的组件并修改 它们的属性。配置完毕后,单击u i l d ) 1 i b r a r y ”即可| 开始操作系统的编译。 编译完毕的e c o s 库包含三个文件夹,其中名为“x x x x - i n s t a l l ”的文件夹对于 e c o s 操作系统下的应用程序非常重要。将在下一节中详细介绍。 2 3 2 基于e c o s 操作系统的应用程序开发 2 3 1 节介绍了e c o s 开发环境的建立,本节将介绍基于e c o s 操作系统的应 用程序的开发。 e c o s 操作系统编译完毕后,在文件夹中会出现“x x x x - i n s t a l l ”的文件夹, 在这个文件夹中,包括个i n c l u d e 目录,在程序编译时的头文件目录应该设置 成这个i n c l u d e 目录。同时还包括一个l i b 目录,1 i b 目录中l i b t a r g e t a 、 1 i b e x t r a s a 、t a r g e t 1 d 、e x t r a s o 、v e c t o r s o 等五个文件,其中前两个是操 作系统编译生成的库,第三个包括一些链接信息和内存布局信息在编译应用程 序,需要链接t a r g e t 1 d ,这样就可以链接到编译好的操作系统了。 在e c o s 操作系统下开发应用程序,在编译好程序代码后,然后还需要编写 帕k e “l e 脚本,再到c y g r i n 环境中编译链接即可生成可执行文件,最后下载运 行即可 下面是一个嘲k e f i l e 的例子: 9 皇至型垫查堂堡主堂堡丝壅 最后一句是要执行的命令。当在c y 胛i n 中输入“啪k es o f t p h o n e ”则开始执 行这条命令。 通过这样编译执行后的应用程序是e l f 格式的文件,下载后可以通过在固化 在f l a s h 中的d b u g 程序输入g o 命令执行。 2 4 小结 本章介绍了本设计使用的软硬件平台,即飞思卡尔m c f 5 2 3 5 和e c o s 操作系 统,本章是本论文的基础。对于本v o l p 终端的全部设计方案,必须首先考惠硬 件平台和操作系统的实际情况。首先,对于硬件平台,飞思卡尔m c f 5 2 3 5 是一 种廉价的3 2 位嵌入式处理器,处理能力有限,因此在处理器资源的分配问题上必 须充分考虑。其次,e c o s 操作系统是一种可配置的操作系统,因此在使用时一定 要考虑选择必要的组件,防止不必要的浪费。 第三章v o m 终端相关技术与协议 第三章v o ip 终端相关技术与协议 在本论文第一章中已经简单介绍v 0 口的基本概念。v o 口技术的实现要比这 些概念复杂得多,它需要依托一系列技术来实现,这些技术包括:各种网络协议, 即t c p 佃协议、负责信令控制的s i p 协议、负责语音传输的r 1 1 p 协议等;各种 语音编解码技术,比较典型的有r r u - t 制定的g 7 1 1 、g 7 2 9 以及i 翻陌制定的i l b c 等。在本节将对这些技术的一些基本知识进行详细地介绍。 3 。l 语音传输协议r t p 协议介绍 实时传输协议r t p 在v o 口技术中用于语音数据传输,在标准的t c p i p 网 络模型中,它处在应用层之下,传输层之上。它将应用层产生的编码后的语音数 据封装成r t p 包交由传输层处理,这里说的传输层协议一般是u d p 协议,通过 u d p 协议的封装来利用u d p 协议的差错校验及多路复用功能。r t p 协议设计的 目的是提供实时信息传输中的时间信息及其流同步功能。r t p 本身并没有为及时 传送提供任何机制或其它质量服务o o s 保证,但它依赖于低层服务去实现这一 过程。r t p 并不能保证传送过程或防止无序传送,也不能确定底层网络的可靠性。 r t p 实行有序传送,r t p 中的序列号允许接收方重建发送方的包序列 r t p 由两个相近链接部分组成:r t p 协议用于传送具有实时属性的数据: r t p 控制协议r t c p 用于监控服务质量并传送正在进行的会话参与者的相关信 息。 r t p 的数据部分提供对实时应用的支持( 例如语音、视频这类连续媒体) , 包括定时重建、丢失检测、安全保障以及内容确认等。一般一个r 胛包包含 1 m 3 0 m s 的语音数据。 r 仰控制协议r t c p 采用与数据包相同的分发机制,将控制包周期性传输到 所有会话参与者中。底层协议必须提供数据和控制包的多路发送,例如使用不同 的u d p 端口号。l 盯c p 主要完成四个功能服务: 1 r t l ,提供数据分发质量反馈信息。这是r t p 作为传输协议的部分功能 并且它涉及到了其它传输协议的流控制和拥塞控制。 1 l 电子科技大学硕士学位论文 2 r 卫c p 为r t p 源携带一个持久性传输层标识符,称为规范名或 c 删e 。由于一旦发现冲突或程序重启时,s s r c 标识符会随之改变,所以 接收方需要a 姨m e 来跟踪每一个参与者。同时接收方还要求a q a h 侥能够与 一组相关r t p 会话中来自于给定参与者的多重数据流相关联,钢如同步视频和 音频。 3 上述前两个功能要求所有的参与者都要发送r t c p 包,因此必须控制速 率以便r t p 按比例增加大量的参与者。通过每一个参与者发送各自的控制包给 其它所有参与者,每一个参与者能够独立观察到参与者数量,该数量可用来计算 控制包的发送速率。 4 o p l r i o n a l 功能用于传送最少会话控制信息,例如在用户界面显示参与 者标识。这对于“松散受控”会话( 在没有成员控制或阐述协商的情况下,参与 者可以加入或退出该会话) 是非常有用的。 此外,在r 皿协议中还定义了对时延抖动的处理。由于每个r 什包到达目 的地所用的时间并不相同,因此需要一种技术来减小时延抖动造成的影响。r t p 采用的办法是定义一个缓冲区,收到的r t p 包不是马上交由应用层处理,而是首 先放到缓冲区中,应用层在固定的时间从缓冲区的头部取出一个r t p 包处理。这 种技术成败的关键在于缓冲区大小的选择,无疑缓冲区过小使得缓冲区失效,缓 冲区过大则会引入新的时延。实验表明,在一般的网络环境下,缓冲区设置为 8 0 1 0 0 m s 会获得比较好的效果i 钒。 3 2 语音编解码技术 在v o i p 技术中使用的语音编解码技术一般来说有两个要求:尽可能少的占 用网络带宽以及具备尽可能强的能力来处理网络对语音数据的影响。对于第一个 要求,例如n u t 制定的g 7 1 1 标准码率为6 4 k b i 帕,加上r t _ p 、u d p 等协议的 负荷,实际占用网络的带宽会更高,为了缩减带宽,就可以考虑使用i t u - t 制定 的其他编解码标准例如g 7 2 9 或者g 7 2 3 ;对于第二个要求,还是以g 7 1 1 举例, g 7 1 1 最初版本不具备处理网络丢包的问题,当丢包发生时,接收端只能用一个 虚假的数据替换,这样的效果比较差,在处理连续丢包时尤其差,因此可以使用 g 7 n 的a p p e n d i x 可以处理网络丢包的问题。当然,算法的复杂度也是另外一 个要考虑的方面,过于复杂的算法会延长每帧语音数据处理的时间,甚至会影响 第三章v 0 口终端相关技术与协议 到数据的实时处理。本节将介绍几种典型的在v 0 口技术中使用的语音编解码技 术。 3 2 1 玎u t g 7 1 1 介绍 g 7 1 1 的采样频率为8 k h z ,码率为“k b i 怕。g 7 1 1 是传统电话中使用的编解 码标准,它定义了和a 律两种非线性压扩技术。它将1 3 位( p 律) 或“位( a 律) 的p c m 编码转换成8 位_ i l 律或a 律的压扩编码,质量相当于1 2 比特的线形 量化。同时它还规定了律和a 律之问的转换关系。它最常用于数字电话的语音 编码中,此外还可以用于可视电话或会议电视的语音编码中【1 0 1 。 g 7 1 1a p p d i xi 用于处理丢帧的情况网络中丢包会降低语音的质量,而 a p p e n d i ) 【i 是一种高效的处理丢帧的算法。它在通信的接收端使用,通过它的处 理,即使在丢包率高达3 0 的网络环境中,语音仍然是可理解的,因此这种算法 非常适合基于包交换的通信。 丢帧隐藏( p l c ) 算法的目标是产生一个合成的语音用来代替数据流中丢掉 的数据。理想情况下,这种合成的语音应该与丢掉的语音具有相同的音色和频谱 特性【1 1 1 g 7 1 1a p p c n d i xn 是一种减少语音数据的码率的算法由于在实际语音通信 中,活动的语音即人声仅占全部语音的一部分,实际上传输的数据很多都是白噪 声即背景音。在这种情况下,可以考虑在非活动语音的时候传输白噪声的频谱参 数,而在活动的时候再传输通过“或a 律的编码数据。 g - 7 1 la p p c n d 奴n 编码器一端的操作过程为:输入的语音数据首先通过w 圆 来判决是否为活动的语音数据,如果是则进行p c m 编码,此时的帧类型为3 ,如 果不是则交由d 1 处理,d t x 用来获得白噪声的参数并与以前的参数比较,在 参数有显著变化的情况下,则交由c n g 编码器产生一个新的c n g 帧,此时的帧 类型为2 ,否则什么都不传送。编码器处理过程如图3 1 所示。 电子科技大学硕士学位论文 图3 1g 7 1 l 编码器处理过程 同样的,在解码器一端,首先检查帧类型,如果类型为3 ,则交由p c m 解码, 如果为2 ,则交由c n g 根据新的参数产生出新的白噪声,否则使用以前的输出作 为当前输出。解码器处理过程如图3 2 所示1 1 2 1 。 3 2 2i e l 限i u 3 c 介绍 图3 2 g 7 n 解码器处理过程 3 2 2 1i l b c 编解码器介绍 i l b c 是为专为提供稳健的i p 语音通信而开发的语音编解码技术,以窄带语 音为设计基础,具有8 k h z 的采样率。i l b c 支持两种基本的帧长度:1 3 3k b p s 比 特率下编码帧长度为3 0m s ;而1 5 2k b p s 比特率下编码帧长度则为2 0m s 。i l b l c 是一种窄带语音编解码技术,使用了整个4 k h z 频带,而大多数标准低比特率编 1 4 第三章v o m 终端相关技术与协议 解码技术只利用从3 0 0h z 到3 4 0 0 h z 的频带。这一点对音质的影响是相当明显的。 此外,i l b c 语音编码的频谱特性精确模拟了原始信号的特性,其语音比标准低比 特率c o d c c

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论