




已阅读5页,还剩67页未读, 继续免费阅读
(通信与信息系统专业论文)h323终端电话的实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
中文摘要 随着通信技术以及i n t e m e t 的发展,人们已不满足仅仅利用i n t e m e t 传送数 据业务。下一一代网络( n g n ) 的提出,使得在i n t e m e t 或专有i p 网上传送的语 音信号( v o i p ) 与p s t n 网传送的语音信号互通成为可能。文章首先对v o i p 的 现状进行分析,提出了v o i p 系统中i p 终端的一种解决方案 l 3 2 3 终端电话。 随后,对整个设计方案从硬件设计到软件实现,包括操作系统、h 3 2 3 协议栈以 及上层应用程序的设计进行了论证。 h 3 2 3 终端电话的核心硬件采用精简指令集处理器a r m ( a d v a n c e dr i s c m a c h i n e ) :芯片+ 数字信号处理器d s p ( d i g i t a ls i g n a lp r o c e s s o r ) 芯片的方案实现。 a r m 芯片用于操作系统的承载以及上层协议栈的支持,d s p 芯片用于实现语音 压缩编码。 h 3 2 3 终端电话的软件分为两部分,一部分是操作系统,部分是h 3 2 3 协 议栈及上层软件。文章详细介绍了u c l i n u x 操作系统,比较了它与标准l i n u x 操 作系统的异同。针对三星公司的a r m 芯片s 3 c 4 5 1 0 b ,讲述了u c l i n u x 移植 以及对其内核进行裁减的过程。 最后,介绍了h 3 2 3 协议族,并详细描述了h 3 2 3 终端电话的基本协议过程, 包括呼叫发起、呼叫建立、带宽修改以及呼叫释放等过程。针对这几个基本协议 过程,给出了调用h 3 2 3 协议栈a p i 接口函数部分的软件流程图并对其进行了详 细说明。 经过软、硬件调试,h 3 2 3 终端电话达到各项预定指标的要求,采用 a r m + d s p 方案实现的硬件平台做到了成本最小化,在未来v o i p 市场具有很强 的竞争力。 关键词:v o i p ,h 3 2 3 ,a r m ,$ 3 c 4 5 1 0 b ,u c l i n t l x a b s t r a c t w i t ht h ed e v e l o p m e n to f i n t e m e t ,p e o p l eh o p e t ot r a n s m i tn o to n l yd a t ab u ta l s o v o i c em e s s a g e st h r o u g hi n t e m e t a n dw i t ht h ep r o m o t i o no fn g n ( n e x tg e n e r a t i o n n e t w o r k ) ,i t sp o s s i b l et o r e a l i z ev o i c ec o m m u n i c a t i o nb e t w e e ni pn e t w o r k sa n d p s t n t h r o u g ht h ea n a l y s i so ft h ec u r r e n t s t a t u so fv o i p , t h i sp a p e rb r i n g so u ta s o l u t i o nf o ri pe n d p o i n t h 3 2 3e n d p o i mp h o n e t h i sp a p e ri n t r o d u c e si t sh a r d w a r e a n ds o f t w a r es o l u t i o n si nd e t a i l ,i n c l u d i n gt h eo p e r a t i n gs y s t e m ,h 3 2 3s t a c ka n d a p p l i c a t i o ns o f t w a r e t h eh a r d w a r es o l u t i o nf o rh 3 2 3 e n d p o i n tp h o n ei s r e a l i z e d b yt h em e t h o d “a r m + d s p ”a r m ( a d v a n c e dr i s cm a c h i n e ) i sr e s p o n s i b l e f o r r u n n i n g t h e o p e r a t i n gs y s t e m a n d s u p p o r t i n gt h eh 3 2 3s t a c k w h i l ed s p i sr e s p o n s i b l ef o rc o d i n g a n d d e c o d i n go f v o i c es i g n a l s t h e r ea r et w os o f t w a r ep a r t so fh 3 2 3e n d p o i n tp h o n e ,o p e r a t i n gs y s t e m ,h 3 2 3 s t a c ka n di t a p p l i c a t i o ns o f t w a r e b yc o m p a r i s o nw i t hl i n u x ,t h i sp a p e ri n t r o d u c e s u c l i n u xo p e r a t i o ns y s t e m i n c l u d i n gh o wt op o r ti tt os a m s u n g s $ 3 c 4 5 10 ba r m c o r ec h i pa n dh o wt om o d i f yi t sk e m e ls o u r c ec o d e i nt h ee n d t h i sp a p e ri n t r o d u c e st h eh 3 2 3p r o t o c o lf a m i l y , a n dd e s c r i b e st h e p r o c e s s o fab a s i ch 3 2 3 c a l l ,i n c l u d i n g t h ec a l l r e q u e s t ,c a l ls e t u p ,b a n d w i d t h m o d i f i c a t i o n ,c a l lr e l e a s ea n ds oo n a c c o r d i n gt o t h e s ep r o c e s s e s ,t h i sp a p e ra l s o i n t r o d u c e st h ea p if u n c t i o n so fh 3 2 3s t a c k ,a n dt h ea p p l i c a t i o ns o u r c ec o d ew h i c h c a l l st h e s ea p if u n c t i o n s h3 2 3e n a p o i n tp h o n eh a sb e e nt e s t e dt oh a v em e tt h er e q u i r e m e n t s f u r t h e r m o r e i t sh a r d w a r ep l a t f o r ma c h i e v e st h em i n i m a lc o s tr e q u i r e m e n t ,a n d t h i sa d d si t s a t t r a c t i o ni nt h ef u t u r ev o i pm a r k e t k e yw o r d s :v o l p ,h 3 2 3 ,a r m ,$ 3 c 4 5 1 0 b ,u c l i n u x 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作和取得的 研究成果,除了文中特别加以标注和致谢之处外,论文中不包含其他人已经发表 或撰写过的研究成果,也不包含为获得苤盗盘堂或其他教育机构的学位或证 书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中 作了明确的说明并表示了谢意。 学位论文作者签名:签字日期:年月同 学位论文版权使用授权书 本学位论文作者完全了解叁洼蕉堂有关保留、使用学位论文的规定。 特授权苤连盘茎可以将学位论文的全部或部分内容编入有关数据库进行检 索,并采用影印、缩印或扫描等复制手段保存、汇编以供查阅和借阅。同意学校 向国家有关部门或机构送交论文的复印件和磁盘。 ( 保密的学位论文在解密后适用本授权说明) 学位论文作者签名:瓠铿勿导师签名 丁翮彬 签字日期:聊y 月r 吾日 签字l j i ;| 期:a 帕年乙月矿日 犬津大学硕十学位论文 第章绪论 第一章绪论 1 1v o l p ( 基于i n t e m e t 传送语音) 的提出 v o l p 是一种基于i p ( i n t e m e t p r o t o c 0 1 ) 的、为了满足话音通信需求的新型解 决方案。它采用分组交换技术取代了传统的电路交换来传送语音信号。 随着i n t e m e t 在全球范围内的兴起和话音编码技术的发展,v o l p 获得了突破 性的进展和实际应用,而且正在逐步占领传统电话业务的市场,所有这些都是由 v o l p 所具有的独特应用优势所决定的:价格低廉;可以非常灵活的提供多种增值 业务;特别适合被企业用来建立高效的企业综合应用服务平台;有利于运营商丌 拓新的业务市场:能直接推动宽带网络技术的发展。 v o l p 是一个系统级的概念,它由很多子系统组成,包括承载话音通信的i p 网络( i n t e r n e t 或专有i p 网络) ,负责交换控制的网守,负责各种语音编码方式转 换的媒体网关,负责i p 与传统p s t n 网络互通的信令网关,以及终端设备如 l 3 2 3 终端、s i p ( 会话发起协议) 终端等。 1 2v o l p 业务迅速发展的原因 1 2 1 语音和数据综合 随着i n t e m e t 的发展,只进行带有静态图像的文本交互已不能满足用户的需 求,这就要求w e b 服务器必须具有与用户进行数据、语音和视频图像交互的能力。 这将势必引起语音业务和数据业务的综合。 相对于电信网,i p 网络的通信能力正以前所未有的速度发展着。密集波分复 用( d w d m ) 技术大大增加了光纤的通信容量,提高了核心路由器的传输能力。 从而降低了i p 通信传输和交换的成本,分组语音业务得到迅猛发展。基于t d m 的p s t n 话音网必将和分组交换数据网融合,形成可以传递话音和数据业务的新 一代网络。 1 2 2 带宽合并 电话交谈中。一般有相当长的静音期( 即电话用户在交谈中,停下来思考的时 天津人学硕士学位论文 第一。章绪论 问及轮流讲话中间的停顿时间等) ,在p s t n 网中,语音信道一旦建立,就被用户 所独占,即使用户不讲话的时间也要占用带宽,而通过i n t e m e t 传送的语前比务就 无需如此。通过静音检测技术,可以有效地提高资源利用率。 而且,i n t e m e t 语音业务还可以通过压缩算法,消除语音巾存在的2 0 左右的 冗余,传统的p s t n 网没有这一优势。 目前使用的p s t n 网电话信道都运行在6 4 k b p s 。利用先进的模拟一数字转换 技术,一条高质量的分组语音信道只需运行在4 8 k b p s 8 k b p s 。将来,分组语音速 率还有望进一一步下降,假设压缩后的语音速率为8 k b p s ,那么消耗的带宽仅仅是 p s t n 网电话的1 8 。 1 2 3 价格因素 使用i p 电话可绕过公用交换电话网,而使用因特网的骨干网进行长途业务。 这样可以避免长途通信在电话网上的高额收费。 1 - 2 4i p 的普遍存在 i p 及其相关协议在用户和网络设备中已经大量存在。并且i p 已经占领了大量 的用户终端设备。 1 2 5 技术的成熟 成熟的技术使i p 电话切实可行。数字信号处理器d s p ( d i g i t a ls i g n a lp r o c e s s o r ) 的大规模使用使语音压缩编码的实现成为可能。现在d s p 已可以大规模生产而且 价格相对便宜,大量用于低价位的消费电子产品中。 1 3v o l p 技术现状 v o l p 本身并不能有效地传送语音,它必须和实时协议r t p ( r e a lt i m e p r o t o c 0 1 ) 、媒体网关控制协议m g c p ( m e d i ag a t e w a y c o n t r o lp r o t o c 0 1 ) ,资源预留 协议r s v p ( r e s o u r c er e s e r v m i o np r o t o c 0 1 ) ,h 3 2 3 、会话发起协议s i p ( s e s s i o n i n i t i a lp r o t o c 0 1 ) 以及其他协议一起才能为用户提供一个“v o l p 平台”。 目前,v o l p 技术还没有主叫用户识别,呼叫转移等电话业务。而且,i p 电话 在话音质量上还存在诸如时延、断线、话音抖动等缺陷。这些问题产生的原因与 i n t e m e t 网有关。 天津大学硕士学位论文第一章绪论 1 3 1i n t e m e t 是一个不可管理的网络 i n t e m e t 是一个全球性、玎放性的基于t c p i p 技术的网络。这个网络最大的特 点就是不可管理和不可控制。这样,人们很难对i n t e m e t 的性能进行控制,也无法 确认i n t e r n e t 的时延、抖动和丢包率是否能满足话音业务的需求。所以,未来的 i p 运营商更趋向于建立专有的i p 网络用于传送语音。 1 3 2i n t e r n e t 是一个无连接的网络 i n t e r a c t 采用无连接网络技术,每一个话音包在网络中传输时会经过很多路由 器,在每一个路由器中,所有的话音包都需要排队等待处理,路由器查看每一个 话音包的包头确定将该包送往目的地方向的下一个节点。这样话音包的传送就可 能会经历很长的时间,话音时延也可能达到无法容忍的地步。同时,每一个包经 历的路径不同,就会造成很大的时延变化,即话音抖动。 另外,在网络拥塞的时候,一些包还会被丢弃或等待很长的时间才被处理。 由此可见,话音业务的传递与网络情况关系很大。取决于路径跳数、链路类型、 速率以及业务量的多少等因素。 1 - 3 3i n t e m e t 的u d p 协议不能保证话音的正确传送 在i m e m e t o o ,话音业务以包的形式传送,包在传送过程中会因物理线路、超 时和网络拥塞等情况而引起丢包,虽然话音业务对于丢包率具有较高的容忍度, 但是i n t e m e t 在网络拥塞的情况下会大量丢包,同时又由于话音业务采用u d p 协 议,不能进行纠错和重发,大量丢包会严重影响话音通信的质量。 1 , 4 解决途径 随着话音处理技术的不断提高以及i n t e m e t 传输机制的改进,v o l p 的这些不足 之处必将被克服。 1 4 1 话音压缩技术 i p 电话技术的基础是话音压缩技术。g 7 2 9 标准可以仅) 帚8 k b p s 传输话音,而 且话音质量与3 2 k b p sa d p c m ( 自适应差分脉冲编码调制) 相同。a d p c m 在全 球的公共电话网络中被用于提供长话级话音( t o l lq u a l i t yv o i c e ) 。g 7 2 9 的算法 被称作对生结构代数码激线性预测c s a c e l p ( c o n j u g a t es t r u c t u r e d - a l g e b r a i c c o d ee x c i t e dl i n e a rp r e d i c t i v e ) ,它构成 g 7 2 9 标准的基础。c s a c e l p 在标准 天律大学硕士学位论文第一章绪论 p c m 或线性p c m ( p u l s e dc o d em o d u l a t i o n ,脉冲编码调制) 的话音采样基础上, 每1 0 m s 生成个l o 字节长的话音帧。这个算法提供了优秀音质,且延时很小。 c s a c e l p 要求强大的运算处理能力。 g 7 2 9 标准后来在1 9 9 6 年又得到了进一步的优化改进。现在g 7 2 9 是最重要的 晤音压缩标准其他的话音压缩技术还有儿种,采用较多的是g 7 2 9 和 ( 1 7 2 3 g 7 2 3 】。 1 4 2 静噪抑制技术 所谓静噪抑制技术,是指检测到通话过程或传真过程中的安静时段,并在这 些安静时候停止发送语音包。大量的研究表明,在一路全双工电话交谈中,只有 3 6 4 0 的信号是活动的或有效的。当一方在讲话时,另一方在听,而且讲话过 程中有大量显著的停顿。通过静噪抑制技术,大量的网络带宽节省下来用于其他 话音或数据通信。 1 4 3 回声消除技术 在p b x 或局用交换机侧,2 线一4 线转换的不匹配,形成回声。如果打电话者 离p b x 或交换机不远,回声返回很快,人耳听不出来,这种情况下无关紧要。但 是当回声返回时间超过1 0 m s 时,人耳就可听到明显的回声了。为了防止回声, 一般需要回声消除技术,在处理器中有特殊的软件代码监听回声信号,并将它从 听话人的语音信号中消除。般i p 网络的时延很容易就达到4 0 5 0 m s ,所以对于 i p 电话设备,回声消除技术是十分重要的。 1 4 4 话音抖动处理技术 i p 网络的一个特征就是网络延时与网络抖动,这可能导致i p 电话音质下降。 网络延时是指一个i p 包在网络上传输平均所需的时间。网络抖动是指i p 包传输时 间的长短变化。当网络上的话音延时( 加上声音采样、数字化、压缩、延时) 超 过2 0 0 m s b , 寸,通话双方一般就愿意倾向采用半双工的通话方式,方说完后另一 方再说。另一方面,如果网络抖动较严重,那么有的话音包因迟到被丢弃,会产 生话音的断续及部份失真,严重影响音质。 为了防止这种抖动,人们采用了抖动缓冲技术,即在接收方设定一个缓冲池, 话音包到达时首先进入缓冲池暂存,系统以稳定平滑的速率将话音包从缓冲池中 取出、解压、播放给受话者。这种缓冲技术可以在一定限度内有效处理话音抖动, 并提高音质。 天津大学硕十学位论文 第一章绪论 1 4 5 话音优先技术 话音通信实时性要求较高。为了保证提供高音质的i p 电话通信,在广域网带 宽不足( 拥挤) 的i p 网络上,一一般需要话音优先技术。 当w a n 带宽低于5 1 2 k b p s 时,一般在i p 网络路由器中设定话音包的优先级为 最高,这样,路由器一旦发现话音包,就会将它们插入_ 至j j i p 包队列的最前面优先 发送。这样,网络的延时与抖动情况对话音通信的影响均将得到改善。 另一种技术是采用资源预留协议( r s v p ) 为话音通信预留带宽。只要有话 音呼叫请求,网络就根据规则为话音通信预留出设定带宽,直到通话结束,带宽 才释放。 目前,i p 技术已经能够做到:每天平均每条话音中继线的通信量仅占1 k b p s 2 k b p s ,是6 4 k b p s p s t n 话音通信带宽的3 。这也正是i p 电话比传统p s t n 电话省 钱的原因。 1 4 6i p 包分割技术 有时网络上有长数据包,一个包上千个字节,这样的长包如果不加限制,在 某些情况下也会影响话音质量。这时就需要对长包进行截断,分成许多短包。 1 4 7v o l p 前向纠错技术 v o l p 网关采用另一项保证音质的技术,前向纠错技术f e c ( f o r w a r de r r o r c o r r e c t i o n ) 。 i p 包在传送过程中有可能损坏或被丢失丢弃,如果话音包丢失损坏率较低, i p 电话的音质不会受到明显损害。公共i n t e r n e t 网络往往有较高的丢包率。在这种 情况下,f e c 技术就能够发挥重要作用。 f e c 技术有两级,第一级是i n t r a p a c k e t ,第二级是e x t r a p a c k e t 。第一级是 在同一包内加冗余数据,以便接收方纠错、恢复、还原话音数据,保证音质。第 二级是在每一个话音包中存放后续包的冗余数据,以便接收方从已经接收到的包 中恢复出错或丢失的话音包。 f e c 可以吸收1 0 2 0 的丢包率,保持高音质。但是f e c 要多消耗多达 3 0 的网络带宽,因此在企业网内部一般不采用f e c 。 以上的i p 电话技术使得解决i p 电话时延、断线等问题得以解决,对i p 电话发 展必将起到极大推动作用。根据v o l p 系统的功能划分,这些改进措施可以在媒体 网关或i p 终端电话中实现。 天津人学硕十学何论文第章绪论 1 5i p 电话 i p 电话,也就是1 p 终端设备,负责用户与i p 网络的接口。 i p 电话的基本原理是:由专门设备或软件将呼叫方的话音传真信号采样并 数字化、压缩、打包,经过i p 网络传输到对方。对方的专门设备或软件接收到话 音包后,解压缩,还原成模拟信号送给电话听筒或传真机。 由于话音压缩技术和i p 网络的发展,以及特有的应用优势,v o l p 越来越受到 广大用户和电信厂商的关注。目前,各大通信设备公司都在致力于v o l p 系统设备 的研究, 随着微电子工业的发展,3 2 位嵌入式处理器芯片以更低的价格得到越来越广 泛的应用。更多专为嵌入式处理器而设计的小型化操作系统也层出不穷。数字信 号处理器d s p 的普及,使高速率语音压缩编码的实现成为可能。本课题正是在这 个背景下提出来的。 1 6 本课题的任务 本课题的任务是研制出h 3 2 3 终端电话。要求具有网络接口,采用g 7 2 9 语音压缩编码,支持h 3 2 3 协议栈。功能上要求能够与w i n d o w s 的n e t m e e t i n g 软件进行语音通信。包括硬件平台的设计及实现,软件平台的选择及实现,h 3 2 3 协议栈的选择及修改,以及应用层程序的编写等。 天津大学硕十学位论文 第二章系统总体设计 第二章系统总体设计 经过多方论证,采用分层次、分模块的方式来实现h 3 2 3 终端电话。 2 1 系统框图 系统各功能模块之间的关系如下 图2 1 系统框图 a r m ( a d v a n c e dr i s cm a c h i n e s ) 模块与d s p 模块构成了i p 电话的硬件平 台。a r m 模块负责与i n t e m e t 或专有i p 网接口,并且承载操作系统。d s p 模块 负责g 7 2 9 编、解码功能的实现。 操作系统提供了进程管理机制,以及t c p u d p 、i p 的功能实现。 h 3 2 3 协议栈与终端程序一起,实现了h 3 2 3i p 电话的应用层功能。 大津人学硕士学位论文 第二章系统总体设计 2 2 系统细分 2 2 1 硬件 a r m 模块选用s 3 c 4 5 l o b 芯片作为系统的主处理器,负责与i p 网络的接l j 以及承载操作系统。d s p 模块选用t m s 3 2 0 c 5 4 0 2 芯片作为系统的从处理器,实 现g 7 2 9 编、解码功能。a r m 模块以及d s p 模块的具体硬件设计见第三章。 2 2 2 操作系统 选用u c l i n u x 作为操作系统。u c l i n u x 的源代码是丌源的,适用于需要根据硬 件平台对操作系统进行裁减与嵌入的场合。它带有t c p 及u d p 协议,可以省去 这部分的开发周期。 2 2 3 软件实现 采用“w w w o p e n h 3 2 3 o r g ”组织提供的免费h 3 2 3 协议栈j o p e n h 3 2 3 ”的 l i n u x 版本。根据u c l i n u x 与l i n u x 在系统调用上的不同之处修改协议栈。并根据此协 议栈提供的a p i 接口,编写终端应用程序。 2 3 成本估算 由于主要软件部分( 操作系统及协议栈) 均采用开源组织提供的代码进行 修改。只须编写终端程序,成本仅仅集中在硬件实现上。 硬件部分决定成本的器件主要是$ 3 c 4 5 1 0 b 以及t m s 3 2 0 c 5 4 0 2 。经过调查, 用该两种器件实现的i p 电话能够做到最小成本,控制在2 0 0 元以内。 犬泮大学硕士学位论文 第三章硬件设计 3 1a r m 体系结构 第三章硬件设计 a r m 具有领先的技术和优越的产品性能。由于a r m 技术方案架构具备低功 耗、高效能、低成本以及小体积等特性,使得a r m 得到了众多用户。a r m 的1 6 3 2 位嵌入式处理器技术是世界上应用最为普遍的微处理器结构。 3 1 1a r m 7 t d m i s 处理器 a r m 7 t d m i - s 处理器是a r m 通用3 2 位微处理器家族的成员之一。a r m 处理 器具有优异的性能,且功耗低,使用门的数量少。a r m 结构基于精简指令集计 算机( r i s c ) 原理而设计,指令集和相关的译码机制比复杂指令集计算机( c i s c ) 要简单得多。这样的简化实现了高的指令吞吐量、出色的实时中断响应以及高性 价比的处理器宏单元。 3 1 2 指令流水线 a r m 7 t d m i s 处理器使用流水线来增加处理器指令流的速度。这样可使几 个操作同时进行。流水线使用3 个阶段:取指、译码以及执行。如图所示: a r mt h u m b p c 一4 p c 8 搦令从存储中取h 列捐令使用的寄存器进j 泽码 从寄存器组| _ | ,读出寄存器 执行移位和a l u 操作 寄存器写回到寄存器鳓 图3 - 1 指令流水线 图3 1 中程序计数器( p c ) 指向的是被取指的指令,而不是指向正在执行的指 令。正常操作过程是在执行一条指令的同时,对下一条指令进行译码,并将第三 甲囊 2 4 _ c c c p p p 天津大学硕士学位论文 第二章硬件设计 条指令从存储器中取出。 3 1 3 存储器访问 a r m 7 t d m i s 处理器使用了冯诺依曼( v o n n e u m a n n ) 结构。指令和数据共 用一条3 2 位总线,只有装载存储和交换指令可以对存储器中的数据进行访问。数 据可以是8 位字节、1 6 位半字、或者3 2 位字。字必须分配为占用4 字节,而半字必 须分配为占用2 字节。 3 1 4 存储器接口 a r m 7 t d m i s 处理器利用存储器接口以减少存储器的使用,仅使对速度有 严格要求的控制信号使用流水线,这样系统控制功能能够以标准的低功耗逻辑实 现。 a r m 7 t d m i s 处理器的存储器周期有4 种基本类型:内部周期、非连续周期、 连续周期以及协处理器寄存器传输周期。 3 1 5 指令结构 a r m 7 t d m i s 处理器有两个指令集:3 2 位a r m 指令集以及1 6 位t h u m b 指令 集。 3 1 5 1 指令压缩 对于传统的微处理器结构,指令和数据有相同的带宽。用3 2 位结构的指令处 理3 2 位数据比用1 6 位结构的指令处理3 2 位数据具有更高的性能,而且可寻址空间 更大。而1 6 位结构指令比3 2 位结构指令具有更高的代码密度,且性能超过3 2 位结 构的5 0 。因此,t h u m b 在3 2 位结构上实现了1 6 位的指令集。这样可提供比1 6 位 结构更高的性能,同时又能提供比3 2 位结构更高的代码密度。 3 1 5 2 指令长度 a r m 状态下,指令长度为3 2 位;t h u m b 状态下,指令长度为1 6 位。 3 1 5 3t h u m b 指令集 t h u m b 指令集是最通用的a r m 指令予集。t h u m b 指令长度为16 位,每条指 令都对应一条3 2 位a r m 指令。t h u m b 指令使用标准的a r m 寄存器配置进行操 作。这样a r m 和t h u m b 状态之间具有极好的互用性。 在执行方面,t h u m b 具有3 2 位内核所有的优点:3 2 位地址空问、3 2 位寄存 器、3 2 位移位器和算术逻辑单元( a l u ) 以及3 2 位存储器传输。t h u m b f e 码仅为 a r m 代码规模的6 5 ,但其性能却相当于连接到1 6 位存储器系统的a r m 处理器 天津人学硕+ 学位论文 第二章硬什设计 性能的1 6 0 。因此,t h u m b 使a r m 7 t d m i s 处理器非常适用于那些只有有限的 存储器带宽,并且代码密度很高的嵌入式应用。 3 1 6 处理器操作状态 a r m 7 t d m i s 处理器有两种操作状态。一种是a r m 状态:3 2 位,以字方式 执行:另一种是t h u m b 状态:1 6 位,以半字方式执行。而且,a r m 和t h u m b 状态 问的切换并不影响处理器模式或寄存器内容。 在t h u m b 状态中程序计数器p c 使用位1 来选择切换半字。 所有的异常处理都在a r m 状态中执行,如果异常发生在t h u m b 状态中处理 器会返回a r m 状态,在异常处理返回时自动切换回t h u m b 状态。使用b x 指令可 将a r m 7 t d m i s 内核的操作状态在a r m 状态和t h u m b 状态之间进行切换。 3 1 7 存储器格式 a r m 7 t d m i s 处理器将存储器看作是一个从0 开始的线性递增的字节集合。 字节o n 3 保存第1 个存储的字,字节4 到7 保存第2 个存储的字,字节8 到1 1 保存第3 个存储的字。a r m 7 t d m i s 处理器可以将存储器中的字以大端( b i g e n d i a n ) 格 式或小端( l i t t l e e n d i a n ) 格式存储。 3 1 7 1 大端格式 在大端格式中a r m 7 t d m i s 处理器将最高位字节保存在最低地址字节,最 低位字节保存在最高地址字节,因此存储器系统字节0 连接到数据线3 1 2 4 。如图 3 2 所示: i 逶地如i : t 低地川: 3 12 42 31 61 58 7 0 地_ | 1 891 01 1 4567 o123 图3 2 字内字节的大端地址 3 1 7 2 小端格式 在小端格式中,一个字当中最低地址的字节被看作是最低位字节,最高地址 字节被看作是最高位字节,因此存储器系统字节0 连接到数据线7 0 。如图3 - 3 所 示: 天津人学硕士学位论文 第三章硬件设计 l 岛地川: t 低地址 3 12 42 31 61 58 7 o 地址 1 11 098 7654 320 3 1 8 工作模式 图3 3 字内字节的小端地址 a r m 7 t d m i s 处理器具有7 种操作模式: 1 用户模式u s r ( u s e r ) :这是a r m 程序通常执行的状态,用于执行大多数 应用程序。 2 快速中断模式f i q ( f i q ) :支持数据传输或通道处理。 3 中断模式i r q ( i r q ) :用于通用中断处理。 4 超级用户模式s v c ( s u p e r v i s o r ) :是操作系统一种受保护的模式。 5 中止模式a b t ( a b o u t ) :在数据或指令预取指中止( a b o u t ) 时进入该模 式。 6 系统模式s y s ( s y s t e m ) :是操作系统一种特许的用户模式。 7 未定义模式u n d ( u n d e f i n e d ) :当执行未定义的指令时进入该模式。 除了用户模式之外其它模式都被归为特权模式,用于服务中断异常或者访问 受保护的资源。 3 1 9 寄存器 a r m 7 t d m i s 处理器总共有3 1 个3 2 位通用寄存器以及6 个状态寄存器。这些 寄存器并不是在同一时间全都可以被访问的。由处理器状态和操作模式决定程序 员可以访问哪些寄存器。 3 1 9 1a r m 状态寄存器集 在a r m 状态中1 6 个通用寄存器和1 个或2 个状态寄存器可在任何时候同时被 访问。a r m 状态特权模式中,与模式相关的分组寄存器可以被访问。图3 - 4 所示 为a r m 状态下,每种模式所能访问的寄存器。 天津大学硕士学位论文 第二章硬什设计 a r m 状态通用寄存器和程序寄存器c p s r ) 系统和用户 快速中断n q 超级用户s v c中止a b t 中断i r q未定义u n d r 0 r 1 r 2 r 3 r 4 r 5 r 6 r 7 r 8 r 9 r 1 0 r 1 1 r 1 2 r 1 3 r 1 4 r 1 5 ( p c ) r o r 1 r 2 r 3 1 :t 4 r 5 r 6 r 7 kr b q 瓠r 9 _ f i q 瓤r 1 0 j i q & r 1 1j i q 氛尺1 2 q kr 1 3 q kr 1 4 a q r 1 5 ( p c ) m r 1 r 2 r 3 1 :1 4 r 5 r 6 r 7 r 8 1 :1 9 r 1 0 r 1 1 只1 2 k r 1 3 _ s v o k r 1 4 _ s v c r 1 5 ( p c ) r 0 r 1 r 2 r 3 r 4 r 5 r 6 r 7 r 8 r 9 r 1 0 r 1 1 r 1 2 k r 1 3a b t 瓤r 1 4 _ a b t r 1 5 ( p c ) a r m 程序状态寄存器( s p s r ) f c f s r f c p s r f g p s r ff c p s r ff c p s r f c p s r f k ! 堕堂! l 鲢堕坠坚i 逛堕坠坐l 选! 呈墅篓i 过! ! 坠塑l 医= 分组寄存器 图3 - 4 a r m 寄存器组 a r m 状态寄存器集包含1 6 个可真接访问的寄存器r o r 1 5 ,当前程序寄存器 c p s r ( 包含条件代码标志) ,和当前模式位寄存器。r 0 r 1 3 为保存数据或地址值 的通用寄存器,r 1 4 和r 1 5 具有两个特殊功能。 r 1 4 具有连接寄存器的功能。r 1 4 作为一个子程序连接寄存器l r ,当执行连接 分支b l 指令时,r 1 4 接收r 1 5 的备份。在其它时候可将r 1 4 当成一个通用寄存器。 对应的分组寄存器r 1 4s v c ,r 1 4i r q ,r 1 4 f i q ,r 1 4a b t 和r 1 4u n d 功能与之相似,当 发生中断和异常,或者当中断或异常子程序中的b l 指令执行时,用于保存r 1 5 的 返回值。 r 1 5 可用于保存程序计数器p c 的值。在a r m 状态中r 1 5 中的b i t s 1 :0 1 为o , b i t s 3 1 :2 】包含p c 值。在t h u m b 状态b i t 0 为0 b i t s 3 l :1 】包含p c 值。 在特权模式中被保存的程序状态寄存器s p s r 可以被访问。它包含了条件代 码标志和作为异常结果所保存的模式位,此异常导致进入当前模式。 由图3 4 可知,n q 模式有7 个分组寄存器,分别映劓至f j r 8 _ f i q 至r 1 4 一f i q 。在a r m 状态中大多数f i q 处理程序都不必保存任何寄存器。用户i r q 、超级用户、中止、 刚融鼢附晒隅附髓附啪m眦一一一陟一刚一勉一鹏一斛一瞄一瞄一时一鼬一阱一附一州一眦一一一一 天津大学硕士学位论文 第三章硬件殴计 和未定义模式各有2 个分组寄存器分别映射到订3 和r 1 4 。每种模式允许有个专 用的堆栈指针平 i l r 。 3 , 1 9 2t h u m b 状态寄存器集 t h u i l l b 状态寄存器集是a r m 状态寄存器集的子集。程序员可直接访问8 个通 用寄存器r o - r 7 、p c 、堆栈指针s p 、连接寄存器l r 以及c p s r 。每个特权模式都有 分组的s p 、l r ;和s p s r 。该寄存器集如图3 5 所示: t h u m b 状态通用寄存器和程序寄存器( c p s r ) 系统和用户 快速中断f i q 超级用户s v c r 0 r 1 r 2 r 3 r 4 r 5 r 6 r 7 s p l r p e r o r 1 r 2 r 3 r 4 r 5 r 6 r 7 ks p j i q kl 哪q p c r o r 1 r 2 r 3 r 4 r 5 r 6 r 7 k s p _ s v g k l r _ s v c p c t h u m b 程序状态寄存器( s p s r ) 中断i r q未定义u n d r 0 r 1 r 2 r 3 r 4 r 5 r 6 r 7 瓤s p _ i m kl 时r q p c r 0 r 1 r 2 r 3 r 4 只5 r 8 1 :1 7 瓠s p _ u n d k l r _ u n d p c i c p s r ii c p s r ll c p s r ll c p s r li c p s r l 途! ! ! 墅! i 醚竖垦竺i 鲢! ! 堕堕i 陵! ! 坠! 婴j 跹! ! 坠蜊j 分组寄存器 图3 5t h u m b 寄存器组 3 , 1 9 3a r m 寄存器与t h u m b 寄存器的关系 t h u m b 状态寄存器与a r m 状态寄存器的关系如图3 6 所示: a t h u m b 状态寄存器r 0 一r 7 与a r m 状态寄存器r 0 一r 7 相同。 b t h u m bc p s r 及s p s r 与a r m c p s r 及s p s r f i 同。 c t h u m bs p 、l r 及p c 分别直接映射成a r m 状态寄存器的r 1 3 、r 1 4 及r 1 5 。 d t h u m b 状态下,寄存器r 8 一r 1 5 不是标准寄存器集的一部分,但可用于汇编 编程中快速存储。可以使用m o v 指令的特殊变量,将一个值从低寄存器r 0 一r 7 转移至i r 8 一r 1 5 ,或者从高寄存器转移到低寄存器。c m p 指令可用于比较高寄存 器和低寄存器的值。a d d $ 旨令可用于将高寄存器的值与低寄存器的值相加。 天津大学硕士学位论文第三章硬件设计 t h u m b 状态a r m 状态 r 0r 0 r 1r 1 r 2r 2 r 3r 3 r 4 r 4 r 5r 5 r 6 r 6 r 7r 7 r 8 r 9 r 1 0 r 1 1 r 2 s t a c kp o i n t e r ( s p ) s t a c kp o i n t e r ( r 1 3 ) l i n kr e g i s t e r ( l r ) l i n kr e g i s t e r ( r 1 4 ) p r o g r a mc o u n t e r ( p c ) p r o g r a mc o u n t e r ( r 15 ) c p s rc p s r s p s rs p s r 图3 6t h u m b 寄存器与a r m 寄存器的关系 3 1 1 0 程序状态寄存器c p s r a b m 7 t d m i s 内核包含1 个c p s r 和5 个s p s r 供异常处理程序使用。 程序状态寄存器c p s r ,用于保持条件代码标志、控制中断的使能和禁止及 设置处理器操作模式。位的分配如图3 - 7 所示: 翟薯上上 厂_ r _ j - 图3 7 程序状态寄存器c p s r 低寄存器 a 垦岢1 i # 盐 iill-1jlij 天津大学硕十学位论文 第三章硬件致计 3 1 1 0 1 条件代码标志 n ,z ,c 和v 位都是条件代码标志。可以通过算术和逻辑操作来设置这些位, 这些标志还可通过m s r 和l d m 指令进行设置。a r m 7 t d m i s 处理器对这些位进 行测试,以决定是否执行一条指令。在a r m 状态中所有指令都可按条件来执行。 在t h u m b 状态中只有分支指令可按条件执行。 3 1 1 0 2 控制位 p s r 的最低8 位为控制位,它们分别是:中断禁止位,t 位及模式位。当发生异 常时控制位改变。处理器在特权模式下可用软件操作这些位。 3 1 1 0 3 中断禁止位 i j l l f 位都是中断禁止位。当i 位置位时,i r q q 6 断被禁止。当f 位嚣位时,f i q 中断被禁止。 3 1 1 0 4 t 位 t 位反映了正在操作的状态。当t 位置位时处理器正在t h u m b 状态下运行。当 t 位清零时处理器正在a r m 状态下运
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 河南省豫西南部分示范性高中2026届高一化学第一学期期末教学质量检测试题含解析
- 期货行业面试实战模拟题库:投资策略与风险管理篇
- 2026届湖南明德中学化学高一上期末预测试题含解析
- 高潜力职业规划:建造师面试题库主题文档
- 10月10日世界精神卫生日主题教育课件
- 胸腔骨骼结构详解
- 新概念频率副词全英讲解
- 物理治疗学三体位转移技术
- 填词岗位面试实战模拟题
- 八年级生物上册总复习课件
- 2025上海市八年级升九年级数学暑假提升讲义:相似三角形压轴题(六大题型)原卷版
- 2025年工业互联网工程技术人员考核试题题库及答案
- 供货组织方案范文
- 农行OCRM系统讲解
- 2025年《药品经营和使用质量监督管理办法》培训试题及答案
- 2024年云南省县乡教师选调考试《教育学》真题汇编带解析(原创题)
- 工贸安全员考试题库及答案大全
- 羊肚菌栽培及其管理课件
- 2025全国农业(水产)行业职业技能大赛(水生物病害防治员)选拔赛试题库(含答案)
- 网约车停运损失赔偿协议书范文
- 产前筛查规范化流程和质量控制侯巧芳 课件
评论
0/150
提交评论