




已阅读5页,还剩57页未读, 继续免费阅读
(通信与信息系统专业论文)μcosⅡ的移植与堆栈改进.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
武汉碑j 大学硕 学位论文 摘要 随着计算机和通信技术的快速发展,嵌入式系统以其简洁、高效等优点越 来越多地受到人们的广泛关注。嵌入式产品已经成为了信息产业的主流,被广泛 应用于移动计算设备、网络设备、工摔设备、信息家电、汽车电子、娱跞没施、 仪器仪表等领域。 开发一个嵌入式应用系统需要嵌入式硬件、实时操作系统及相应的软件一l : 具。其中一个非常重要的步骤,就是操作系统在微处理器上的移植。本文的重 点便是操作系统c o s 1 1 在s 3 c 4 4 b o x 微处理器上的移植及系统测试。 a r m 微处理作为目前嵌入式市场上应用最广泛的嵌入式微处理器,有着很 多不同的种类,本课题采用的便是其中的一种:a r m 7 t d m i 。本课题采用的嵌 入式硬件是基于a r m 架构的s a m s t m gs 3 c 4 4 b o x 芯片。它一方面具有a r m 处 理器的所有优点:低功耗、高性能,同时又具有非常丰富的片上资源,非常适 合嵌入式产品的开发。 本课题选用的是源代码公开的实时操作系统pc o s l i 。此操作系统移植性 好,易剪裁,属于可剥夺的实时多线程内核,面且源代码公开。 本文首先将介绍嵌入式系统的历史、现状、发展方向和一些基本概念。接 着对a r m 核:吝片的应用领域、a r m 指令集、寄存器组织做洋细介绍。然后将 洋细分析u c o s i i 的特点与相关系统结构、任务的状态与调度、系统的通信机 制。接下来将简单介绍硬件开发环境和l a c o s 1 i 硬件和软件体系结构,提出移 植过程中存在的主要问题,并给出pc o s i i 在s 3 c 4 4 b o x 微处理器上的移植过 程。移植过程主要集中在三个文件的重新编写上:1 个头文件o sc p u h ,1 个汇 编文件o sc p ua a s m 和1 个c 代码文件o sc p u c 。文章将给出相关函数的 模型和源代码,并附上注释和详细说明。 移植完成后,本文将设计应用程序对移植后的系统进行测试,以保证系统 能正常运行。在确保系统正常运幸亍的情况下,本文还提出了一种任务堆栈的改 进方法,并给出了流程图。该方法是将任务堆栈和中断堆栈分离,可减小系统 对于r a m 的需求。 最后,本文将总结pc o s i i 在不同:吝片上进行移植的一般方法和应该注意 的相关问题。 关键字:“c o s 一1 i ,a r m ,s 3 c 4 4 b o x ,移植,嵌入式系统 武汉理_ 【大学硕士- f 寸论文 a b s t r a c t w i t ht h er a p i dd e v e l o p m e n to fc o m p u t ea n dc o m m u n i c a l i o n st e c h n o l o g y ,t h e e m b e d d e ds y s t e mr e c e i v e sm o r ea n dm o r ep e o p l e se x t e n s i v en o t i c e ,i th a saf e wo f v i r t u e ,f o re x a m p l e ,s u c c i n c t ,h i g h e f f i c i e n te t c a tt h es a m et i m ee m b e d d e dp r o d u c t s h a st u r n e di n t ot h em a i n s t r e a mo fi n f o r m a t i o ni n d u s t r y ,w h i c hh a sb e e nw i d e l y a p p l i e dt om a n yf i e l d s ,s u c ha sm o b i l ec o m p u t i n gd e v i c e ,n e t w o r kd e v i c e ,i n d u s t r i a l d e v i c e ,i n f o r m a t i o na p p l i a n c e s ,a u t o m o b i l ee l e c t r o n i c ,a m u s e m e n te s t a b l i s h m e n t , a p p a r a t u sa n di n s t r u m e n t s ,e t c d e v e l o p i n g a l le m b e d d e da p p l i c a t i o np r o g r a mn e e de m b e d d e dh a r d w a r e , r e a l t i m eo p e r a t i n gs y s t e ma n dc o r r e s p o n d i n gs o f t w a r et o o l ,a n dav e r yi m p o r t a n t s t e pi st h ep o r to f a no p e r a t i n gs y s t e mo i lt h em i c r o p r o c e s s o r t h i st h e s i sl a y sas t r o n g e m p h a s i so nt h ep o r to ft h er e a l t i m eo p e r a t i n gs y s t e m uc o s i io ns 3 c 4 4 b o x m i c r o p r o c e s s o ra n ds y s t e mt e s l a r mi su s e da st h em o s te x t e n s i v ee m b e d d e dm i c r o p r o c e s s o ro ft h ee m b e d d e d m a r k e ta tp r e s e n lt h e r ea r em a n yd i f f e r e n tk i n d s ,w h a tt h i ss u b j e c ta d o p t si so n ek i n d a m o n gt h e m :a r m 7 d m i t h ee m b e d d e dh a r d w a r e t h a t t h i ss u b j e c ta d o p t si s s a m s u n gs 3 c 4 4 b o xc h i pb u i l tu po nt h eb a s i so fa r m t h ec h i ph a sa l lt h ev i r t u e s o ft h ea r mp r o c e s s o r :l o wp o w e rw a s t ea n dh i 曲- p e r f o r m a n c e a n dt h i sc h i ph a s a b u n d a n c eo fo n c h i pr e s o u r c e ,t h e r e f o r e ,i t sv e r yf i tf o re m b e d d e dp r o d u c t d e v e l o p i n g t h i ss u b j e c ts e l e c t st h er e a l t i m eo p e r a t i n gs y s t e mt ac o s 一1 i ,w h i c hi sah i g h l y p o r t a b t e ,v e r ys e a l a b l e ,p r e e m p t i v er e a l t i m e ,m u l t i t a s k i n gk e r n e l a n di t ss o u r c e c o d ei so p e n f i r s t l y , t h i sa r t i c l ed e s c r i b e st h eh i s t o r y , c u r r e n ts t a t u s ,t h ed e v e l o p m e n ta n d s o m ee s s e n t i a lc o n c e p t i o n so fe m b e d d e ds y s t e m s e c o n d l y , t h ea p p l i c a t i o nf i e l d so f 、 t h ea r m c h i p s ,t h ea r m i n s t r u c t i o ns e ta n dr e g i s t e r sw i l lb es p e c i f i c a l l yi n t r o d u c e d a n dt h ea n a l y s i so ft h ef e a t u r e so ft h euc o s 1 1w i l lb ep r o v i d e d :t h es y s t e m a r c h i t e c t u r e ,t a s ks t a t u s ,s c h e d u l e ra n dc o m m u n i c a t i o nm e t h o d t h e nas i m p l e 武汉坶j ,大学硕十学位论文 i n t r o d u c t i o n ,w h i c hi sa b o u th a r d w a r ee n v i r o n m e n ta n dg c o s 1 1h a r d w a r e m d s o f t w a r ea r c h i t e c t u r e ,w i l lb eg i v e n t h ea u t h o rw i l lp u tf o r w a r ds o m ep r o b l e m si n t h ep o r t p r o c e d u r e ss e q u e n f l y t h e hc o s l l p o r tp r o c e d u r e st os 3 c 4 4 b o x m i c r o p r o c e s s o rw i l lb ep r o v i d e d t h ep r o c e d u r e sc o n c e n t r a t eo nt h r e ef i l e s :ah e a d f i l e so s c p u h ,aa s s e m b l yf i l e so s c p u a a s ma n dacf i l e so sc p u c ,n e t h e s i s w i l lp r o v i d et h ef u n c t i o nm o d e la b o u tt h ep r o c e d u r ea n dr e s o u r c ec o d ew i t h s p e c i f i cc o m m e n t a r y a f t e rt h a t ,t h ep a p e rw i l ld e s i g ns o m ep r o g r a m st ot e s tt h ep e r f o r m a n c eo ft h e s y s t e m w h e nt h es y s t e mc a nf u n c t i o nw e l l ,t h ea u t h o rw i l lp r o v i d eam e t h o df o r i m p r o v e m e n to f t h es t a c k a n dt h ef l o wc h a r t n l em e t h o ds e p a r a t et h ei n t e r r u p ts t a c k f r o mt a s ks t a c k i tw i l lr e d u c e 出er e q u i r e m e n to ft h es y s t e mf o rr a m f i n a l l y ,t h eg e n e r a lr u l eo f t h e 斗c o s i ip o r tp r o c e d u r e sw i l lb ec o n c l u d e d k e yw o r d s :uc o s 一1 i ,a r m ,s 3 c 4 4 b o x ,p o r t ,e m b e d d e ds y s t e m i 此页若属实请申请人及导师签名。 独创性声明 本人声明,所呈交的论文是我个人在导师指导下进行的研究工作及取得的研 究成果。据我所知,除了文中特别加以标注和致谢的地方外,论文中不包含兑 他人已经发表或撰写过的研究成果,也不包含为获得武汉珲j :大学或其它教育 机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的仔伺 贡献均已在论丈中作了明确的说明并表示了谢意。 研究牛签名 关于论文使用授权的说明 本人完令了解武汉理工大学有关保留、使崩学位论文的规定,i l l l - 学校有敬 保留送交论文的复印件,允许论文被查阅和借阅;学校可以公布论文的全部内 容,可以采用影印、缩印或其他复制手段保存论文。 ( 保密的论文在解密后应遵守此规定) 麟雌私:丝副“签轮一蛐k 一日期逊厶 疆:请将此声明装订在论文的目录前。j 武汉珲丁大学硕 学化论殳 1 1 嵌入式系统简介 第1 章绪论 嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪, 适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机 系统。它一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的 应用程序等四个部分组成。由于具有体积小,结构紧凑的特点,它通常作为 个部件埋藏于所控制的装置中,可提供用户接 、管理有关信息的输入输出、 监控设备工作,使设备及应用系统有较高智能和性价比。 1 1 1 嵌入式系统的主要用途 嵌入式系统主要用于各种信号处理与控制,目前已在国防、国民经济及社 会生活各领域普及应用,用于企业、军队、办公室、实验室以及个人家庭等各 种场所j 。 军用各种武器控制( 火炮控制、导弹控制、智能炸弹制导引爆装置) 、 坦克、舰艇、轰炸机等陆海空各种军用电子装备,雷达、电子对抗军事通信装 备,野战指挥作战用各种专用设备等。 家用我国各种信息家电产品,如数字电视机、机顶盒,数码相机,v c d 、 d v d 音响设备,可视电话,家庭网络设备,洗衣机,电冰箱,智能玩具等。 工业用各种智能测量仪表、数控装置、可编程控制器、控制机、分布 式控制系统、现场总线仪表及控制系统、工业机器人、机电一体化机械设备、 汽车电子设备等。 商用 各类收款机、p o s 系统、电子秤、条形码阅读机、商用终端、银 行点钞机、i c 卡输入设备、取款机、自动柜员机、自动服务终端、防盗系统、 各种银行专业外围设备。 办公用复印机、打印机、传真机、扫描仪、激光照排系统、安全监控 没备、手机、寻呼机、个人数字助理( p d a ) 、变频空调设备、通信终端、程控 交换机、网络设备、录音录象及电视会议设备、数字音频广播系统等。 武汉理j 人碗 学化论文 医用电子设备各种医疗电子仪器,x 光机、超声诊断仪、计算机断层 成像系统、心脏起博器、监护仪、辅助诊断系统、专家系统等。 目前微处理器微控制器产量几亿到1 0 多亿片远远大于个人计算机通用台 式机。e l 前世界嵌入式系统硬件和软件开发二i :具市场约2 0 0 0 亿美元,嵌入式系 统带来的 业年产值达一万亿美元。随着全球信息化的发展嵌入式系统市场将 进一步增长。 1 1 2 嵌入式系统的发展历史 嵌入式操作系统伴随着嵌入式系统的发展经历了4 个比较明显的阶段。 ( 1 ) 第阶段是无操作系统的嵌入算法阶段。 这一阶段是以单:矗片为核心的可编程控制器形式的系统,同时具有与监测、 伺服、指示设备相配合的功能。这种系统大部分应用于一些专业性极强的工业 控制系统中,一般没有操作系统的支持,通过汇编语言编程对系统进行直接控 制,运行结束后清除内存。这阶段系统的主要特点是:系统结构和功能都相 对单一,处理效率较低,存储容量较小,几乎没有用户接口。 ( 2 ) 第:二阶段是以嵌入式c p u 为基础、以专用操作系统为核心的嵌入式系统。 这个时期,实时应用较简单,实时性要求也不高。应用程序、实时监控程 序和硬件运行平台往往是紧密联系在一起的。这一阶段系统的主要特点是:c p u 种类繁多,通用性比较差;系统开销小,效率高;一般配备系统仿真器,操作 系统具有“一定的兼容性和扩展性;应用软件比较专业,用户界面不够友好;系 统主要用来控制系统负载以及监控应用程序运行,一般只能适用于特定的硬件 环境,且缺乏严格的评测,移植性也不太好。 ( 3 ) 第三阶段是通用的嵌入式实时操作系统阶段。 在各种专用r t o s 中,一些多任务的机制如基于优先级的调度、实时时钟管 理、任务间的通信、同步互斥机构等基本上是相同的,不同的只是面向各自的 硬件环境与应用目标。实际上,相同的多任务机制是能够共享的,因而可以把 这部分很好地组织起来,形成一个通用的实时操作系统内核。这阶段系统的 二芒要特点是:嵌入式操作系统能运行于各种不同类型的微处理器上,兼容性好, 操作系统内核小、效率商,并且具有高度的模块化和扩展性;具备文件和目录 锷理、设备支持、多任务、网络支持、图形窗口以及用户界面等功能:具有大 武汉理l 大学硕士位论文 量的应片j 程序接口( a p l ) ,开发应用程序简单;嵌入式应用软件丰富。 ( 4 ) 第四阶段是以基于i n t e r n e t 为标志的嵌入式系统。 这是一个i f 在迅速发展的阶段。目前大多数嵌入式系统还孤立于i n t e m e t 之 外,但随着i n t e m e t 的发展以及i n t e m e t 技术与信思家电、1 业控制技术等结合 目益密切,嵌入式设备与i n t e m e t 的结合将代表着嵌入式技术的真诈未来l 孙。 1 1 3 嵌入式系统的基本组成 嵌入式系统主要是由硬件核心和软件核心两部分组成。 嵌入式硬件包括处理器、存储器、外设和i o 端口等。其中嵌入式处理器是 核心,对实时多任务具有很强的支持能力,能完成多任务并有较短的中断响应 时间:具有功能很强的存储区保护功能:拥有可扩展的处理器结构,且功耗很 低n 嵌入式软件部分主要包括嵌入式操作系统和应用软件,是整个嵌入式系统 的应用核心。有时设计人员把这两种软件组合在一起。应用程序控制着系统的 运作和行为;丽操作系统控制着应用程序编程与硬件的交互作用【引。 1 2 国内外文献综述 1 2 1 嵌入式微处理器综述 目前据不完全统计,全世界嵌入式处理器的品种总量已经超过1 0 0 0 多种, 流行体系结构有3 0 几个系列。目前主要有a m l 8 6 1 8 8 、3 8 6 e x 、s c 一4 0 0 、p o w e r p c 、 6 8 0 0 0 、m i p s 、a r m 系列等。其中基于a r m 技术的微处理器应用约占据了3 2 位r i s c 微处理器7 5 以上的市场份额,遍及工业控制、消费类电子产品、通信 系统、网络系统、无线系统等各类产品市场。 a r m ( a d v a n c e d r i s c m a c h i n e s ) ,既可以认为是一个公司的名字,也可以 认为是对一类微处理器的通称,还可以认为是一种技术的名字。1 9 9 1 年a r m 公 司成立于英国剑桥,主要出售芯片设计技术的授权。专门从事基于r i s c 技术芯 片设计开发的公司,作为知识产权供应商,本身不直接从事芯片生产,靠转让 设计许可由合作公司生产各具特色的芯片,世界各大半导体生产商从a r m 公司 购买其设汁的a r m 微处理器核,根据各自不同的应用领域,加入适当的外围电 武汉珲i :大学硕学侮论文 路,从1 u 形成自己的a r m 微处理器芯片进入市场。a r m ( a d v a n c e dr i s c m a c h i n e s ) 设计了人量高性能、廉价、耗能低的r i s c 处理器、相关技术及软件, 其技术具有性能高、成本低和能耗省的特点,适用于多种领域1 6 1 1 7 1 。 本课题选用的便是基于a r m 架构的微处理器s a m s u n gs 3 c 4 4 b o x 。 1 2 - 2 嵌入式实时操作系统综述 作为实时操作系统( r t o s ,r e a lt i m eo p e r a t i n gs y s t e m ) 是嵌入式系统目 前最主要的组成部分。 目前,嵌入式操作系统的种类繁多,大体上可分为两种商用型和免费 型。商用型的实时操作系统功能稳定、可靠,又有完善的技术支持和售后服务, 但往往价格比较昂贵。比如v x w o r k s ,p a l mo s ,免费型的实时操作系统在价格 方面具有优势,目前主要有l i n u x 和p c o s 1 1 1 6 j 。 uc o s i i ( m i c r oc o n t r o lo p e r a t i o ns y s t e mt w o ) 是一种源代码公开的嵌入式 操作系统,程序绝大部分是用c 语言写的,带有少量的汇编程序,并且有详细 的说明和示例,可移植性好、易调试,稳定性与可靠性高,功能也比较完善。 u c o s l l 和其他大部分的嵌入式操作系统的内核都是占先式内核,被分为最高优 先级的任务一旦准备就绪,立刻就能得到c p u 的控制权,可以剥夺低优先级任 务的c p u 使用权,处理系统最紧急的事务1 8 l 。 本课题选用的就是实时操作系统pc o s i i 。 1 3 本课题的研究内容 试。 本课题研究的内容包括以下几个方面: ( 1 ) 对a r m 基本结构、原理研究以及uc o s 1 1 实时操作系统进行详细介绍。 ( 2 ) 将hc o s i i 移植到基于a r m 芯片的s 3 c 4 4 8 0 x 巴,并对该系统进行测 ( 3 ) 对uc o s 1 1 进行功能扩展,提出一种任务堆栈的改进方法。 4 武汉理 :大学硕士学位论文 第2 章a r m 的介绍 这一章将对a r m 系列嵌入式微处理器的具体特性作进- 步的介绍,蕾要包 括a r m 微处理器的特点、系列介绍、主要结构、寄存器、指令等。 2 1a r m 微处理器的特点 采用r i s c 架构的a r m 微处理器一般具有如下特点1 9 】: ( 1 ) 体积小、低功耗、低成本、高性能; ( 2 ) 支持t h u m b ( 】6 位) a r m ( 3 2 位) 双指令集,能很好的兼容8 位1 6 位器件: ( 3 ) 大量使用寄存器,指令执行速度更快; ( 4 ) 大多数数据操作都在寄存器中完成; ( 5 ) 寻址方式灵活简单,执行效率高; ( 6 ) 指令长度固定; 2 2a r m 微处理器系列 a r m 微处理器目前包括下面几个系列,以及其它厂商基于a r m 体系结构 的处理器,除了具有a r m 体系结构的共同特点以外,每一个系列的a r m 微处 理器都有各自的特点和应用领域。 a r m 7 系列 a r m 9 系列 a r m 9 e 系列 a r m l 0 e 系列 s e c u r c o r e 系列 i n t e ! 的x s c a t e i n t e l 的s t r o n g a r m 其中,a r m 7 、a r m 9 、a r m 9 e 和a r m l 0 为4 个通用处理器系列,每个 武汉理i 一大学硕 学怔论文 系列提供一套相对独特的住能来满足小i 司应月】领域的需求。s e c u r c o r c 系列0 为安令要求较高的应用而设计f 8 】。下面我们着重介绍下a r m 7 系列。 2 2 1a r m 7 系列 a r m 7 系列微处理器为低功耗的3 2 位r i s c 处理器,最适合用于对价位和 功耗要求较高的消费类应用。a r m 7 微处理器系列具有如下特点: 具有嵌入式i c e r t 逻辑,调试开发方便。 极低的功耗,适合对功耗要求较高的应用,如便携式产品。 能够提供o 9 m i p s m h z 的三级流水线结构。 代码密度高并兼容1 6 位的t h u m b 指令集。 对操作系统的支持广泛,包括w i n d o w sc e 、l i n u ) 【、p a l mo s 等。 指令系统与a r m 9 系列、a r m 9 e 系列和a r m l 0 e 系列兼容,便于用广 的产品升级换代。 主频最高可达l3 0 m i p s ,高速的运算处理能力能胜任绝大多数的复杂应 用。 a r m 7 系列微处理器的主要应用领域为:工业控制、i n t e r n e t 设备、网络和 凋制解调器设备、移动电话等多种多媒体和嵌入式应用。 a r m 7 系列微处理器包括如下几种类型的核:a r m 7 t d m i 、a r m 7 t d m i s 、 a r m 7 2 0 t 、a r m 7 e j 。其中,a r m 7 t m d i 是目前使用最广泛的3 2 位嵌入 式r i s c 处理器,属低端a r m 处理器核。 t d m i 的基本含义为: t :支持1 6 为压缩指令集t h u m b ; d :支持片上d e b u g ; m :内嵌硬件乘法器( m u l t i p l i e r ) i :嵌入式i c e ,支持片上断点和调试点; 本课题使用到的s a m s u n g 公司的s 3 c 4 4 b o x 即属于a r m 7 t m d i 系列的处 理器。 2 3a r m 微处理器的寄存器结构 a r m 处理器共有3 7 个寄存器,这些寄存器包括: 武汉理f 。大学硕士学位论文 3 1 个通用寄存器,包括程序计数器( p c 指针) ,均为3 2 位的寄存器:6 个 状态寄存器,用以标识c p u 的丁作状态及程序的运行状态,均为3 2 佗,h 自h 只 使用了其中的一部分。 同时,a r m 处理器又有7 种不同的处理器模式,在:每一种处理器模式卜均 有一组相应的寄存器与之对应。即在任意一种处理器模式下,可访问的寄存器 包括l5 个通用寄存器( r o r 1 4 ) 、一至二个状态寄存器和程序计数器。在所有 的寄存器t p ,有些是在7 种处理器模式f 共用的同一个物理寄存器,而有些寄 存器则是在不同的处理器模式f f 有不同的物理寄存器。具体情况见图2 1 。 2 3 1 通用寄存器 图2 1a r m 状态下的寄存器组织 通用寄存器包括r 0 r 1 5 ,可以分为三类: 未备份寄存器( t h eu n b a n k e dr e g i s t e r s ) r 0 r 7 备份寄存器( t h eb a n k e dr e g i s t e r s ) r 8 r 1 4 武汉理丁大学硕十学位论文 程序讨数器p c ( r i5 ) ( 1 ) 末备份寄存器r 0 r 7 : 在所有的运行模式下,未备份寄存器都指向同一个物理寄存器,他们来被系 统用作特殊的用途,因此,在中断或异常处理进行运行模式转换时,由_ 0 i 同的 处理器运行模式均使用相同的物理寄存器,可能会造成寄存器中数据的破坏。 ( 2 ) 备份寄存器r s r 1 4 : 对于备份寄存器,他们每一次所访问的物理寄存器与处理器当前的运行模 式有关。 对于r 8 r 1 2 来说,每个寄存器对应两个不同的物理寄存器,当使用f i q 模 式时,访问寄存器r 8f i q r 1 2f i q ;当使用除抽模式阻外的其他模式时,访问 寄存器r 8u s r r 1 2t l s r 。 对于r 1 3 、r 1 4 来说,每个寄存器对应6 个不同的物理寄存器,其中的一个 是用户模式与系统模式共用,另外5 个物理寄存器对应于其他5 种不同的运行 模式。 采用以下的记号来区分不同的物理寄存器: r 1 3 一 r 1 4 一 其中,m o d e 为以下几种模式之:u s r 、f i q 、i r q 、s v c 、a b t 、u n d 。 寄存器r 1 3 在a r m 指令中常用作堆栈指针,但这只是一种习惯用法,用户也 可使用其他的寄存器作为堆栈指针。 由于处理器的每种运行模式均有自己独立的物理寄存器r 1 3 ,在用户应用程 序的初始化部分,一般都要初始化每种模式下的r 1 3 ,使其指向该运行模式的栈 空间,这样,当程序的运行进入异常模式时,可以将需要保护的寄存器放入r 1 3 所指向的堆栈,而当程序从异常模式返回时,则从对应的堆栈中恢复,采用这 种方式可以保证异常发生后程序的正常执行。 r 1 4 也称作子程序连接寄存器( s u b r o u t i n el i n kr e g i s t e r ) 或连接寄存器l r 。 当执行b i 子程序调用指令时,r 1 4 中得n m 5 ( 程序计数器p c ) 的备份。其他情 况下,r 1 4 用作通用寄存器。与之类似,当发生中断或异常时,对应的分组寄存 器r 1 4 一s v e 、r 1 t i r q 、r 1 4f i q 、r 1 4 _ a b t 和r 1 4 u n d 用来保存r 1 5 的返回值。 ( 3 ) 程序计数器p c ( r 1 5 ) 寄存器r 1 5 用作程序计数器( p c ) 。在a r m 状态下,位【l :0 1 为0 ,位 3 l :2 】用 武汉理1 人产硕 学住论文 1 i 保存p c ;。 h 丁a r m 体系结构采用_ r 多级流水线技术,对于a r m 指令集而苦,p c 总是 指向当前指令的下两条指令的地址,目l j p c 的值为当前指令的地址值加8 个字节。 2 3 2 程序状态寄存器 a r m 体系结构包含一个当前程序状态寄存器( c p s r ) 和五个备份的程序状 态寄存器( s p s r ) 。备份的程序状态寄存器用来进行异常处理,其功能包括: 保存a l u 中的当前操作信息 控制允许和禁止中断 设置处理器的运行模式 c p s r ( c u r r e n tp r o g r a ms t a t u sr e g i s t e r ,当前程序状态寄存器) 可在任何运行 模式下被访问,它包括条件标志位、中断禁l i 位、当前处理器模式标志位,以 及其他一些相关的控制和状态位。 图2 - 2 程序状态寄存器格式 当异常发生时,s p s r 用于保存c p s r 的当前值,从异常退出时则可由s p s r 来恢复c p s r 。 由于用户模式和系统模式不属于异常模式,他们没有s p s r ,当在这两种模 式下访问s p s r ,结果是未知的。 程序状态寄存器的每一位的安排如图2 2 所示。 武汉珲i :大学硕 学他论义 2 4a r m 微处理器的指令系统 2 4 1a r m 微处理器的指令结构 a r m 微处理器的在较新的体系结构中支持两种指令集:a r m 指令集和 t h u m b 指令集。其中,a r m 指令为3 2 位的长度,t h u m b 指令为1 6 位长度。t h u m b 指令集为a r m 指令集的功能子集,但与等价的a r m 代码相比较,可节省3 0 4 0 以上的存储空闻,同时具备3 2 位代码的所有优点。 2 4 2a r m 微处理器的指令的分类与格式 a r m 微处理器的指令集是加载存储型的,也即指令集仅能处理寄存器中的 数据,而且处理结果都要放回寄存器中,而对系统存储器的访问则需要通过专 门的加载存储指令来完成。 a r m 微处理器的指令集可以分为跳转指令、数据处理指令、程序状态寄存 器( p s r ) 处理指令、加载,存储指令、协处理器指令和异常产生指令六大类, 具体的指令及功能如表2 - l 所示( 表中指令为基本a r m 指令,不包括派生的a r m 指令) j 。 表2 - 1a r m 指令及功能描述 助记符 指令功能描述 a d c 带进位加法指令 a d d 加法指令 a n d 逻辑与指令 b 跳转指令 b i c 位清零指令 b l 带返回的跳转指令 b l x 带返回和状态切换的跳转指令 b x 带状态切换的跳转指令 c d p 协处理器数据操作指令 c m n 比较反值指令 c m p 比较指令 e o r 异或指令 l d c 存储器到协处理器的数据传输指令 l d m 加载多个寄存器指令 武汉理1 1 大学硕i 学位论叟 7 l d r存储器到寄存器的数据传输指令 m c r 从a r m 寄存器到协处理器寄存器的数据传输指令 m l a 乘加运算指令 m o v 数据传送指令 m r c 从协处理器寄存器到a r m 寄存器的数据传输指令 m r s传送c p s r 或s p s r 的内容到通用寄存器指令 m s r 传送通用寄存器到c p s r 或s p s r 的指令 m u l 3 2 钽乘法指令 m l a 3 2 位乘加指令 _ f 、仆】 数据取反传送指令 o r r 逻辑或指令 r s b 逆向减法指令 r s c 带借位的逆向减法指令 s b c 带借位减法指令 s t c 协处理器寄存器写入存储器指令 s t m 批量内存字写入指令 s t r 寄存器到存储器的数据传输指令 s u b 减法指令 s w i 软件中断指令 s w p 交换指令 t e q相等测试指令 t s t 位测试指令 武议理丁尢学颁j :学亿论文 第3 章嵌入式实时操作系统 作为嵌入式系统极为重要的组成部分的嵌入式操作系统( e m b e d d e d o p e r a t i n gs y s t e m ) ,通常包括与硬什相关的底层驱动软件、系统内核、设备驱动 接口、通信协议、图形界面、标准化浏览器等。嵌入式操作系统具有通用操作 系统的基本特点,如能够有效管理越来越复杂的系统资源;能够把硬件虚拟化, 使得开发人员从繁忙的驱动程序移植和维护中解脱如来;能够提供库函数、驱 动程序、t 具集以及应用程序。 3 1 嵌入式实时操作系统介绍 3 1 1 实时操作系统的概念 实时系统是对外来事件在限定时间内能做出反应的系统。实时操作系统 ( r e a lt i m eo p e r a t i n gs y s t e j l ) 是根据操作系统的r 作特性而言的。实时是指物 理进程的真实时间。实时操作系统是指具有实时性,能支持实时控制系统工作 的操作系统。首墨任务是调度一切可利用的资源完成实时控制任务,其次才着 眼于提高计算机系统的使用效率,重要特点是要满足对时间的限制和要求”i 。 3 1 2 实时操作系统应具有的功能 实时操作系统应其有如下的功能” : ( 1 ) 任务管理( 多任务和基于优先级的任务润度) ( 2 ) 任务间同步和通信( 信号量和邮箱等) ( 3 ) 存储器优化管理( 含r o m 的管理) ( 4 ) 实时时钟服务 ( 5 ) 中断管理服务 3 1 3 嵌入式实时操作系统的优点 嵌入,实时操作系统在目前的嵌入,e 应用中用得越来越厂。泛,尤其在功能 嵌入式实时操作系统在目前的嵌入式应用中用得越来越广泛,尤其在功能 武汉坶_ _ i 大学硕学他论文 复杂、系统庞大的应片j 中显得愈来愈重要。 ( i ) 嵌人式实时操作系统提i 亩了系统的可靠性。 ( 2 ) 提高了开发效率,缩短了开发周期。 ( 3 ) 嵌入式实时操作系统充分发挥了3 2 位c p u 的多任务潜力。 3 2 常用嵌入式实时操作系统介绍 目前,嵌入式实时操作系统的种类繁多,f 面就介绍一f 常见的几种嵌入 式实时操作系统f “1 。 3 2 1v x w o r k s v x w o r k s 操作系统是美国w i n d r i v e r 公司于1 9 8 3 年设计开发的一种嵌入式 实时操作系统( r t o s ) ,是嵌入式开发环境的关键组成部分。良好的持续发展能 力、高性能的内核以及友好的用户开发环境,在嵌入式实时操作系统领域占据 席之地。它以其良好的可靠性和卓越的实时性被广泛地应用在通信、军事、航 空、航天等高精尖技术及实时性要求极高的领域中,如卫星通讯、军事演习、弹 道制导、飞机导航等。在美国的f 一1 6 、f a 】8 战斗机、b 一2 隐形轰炸机和爱国者 导弹上,甚至连1 9 9 7 年4 月在火星表面登陆的火星探测器上也使用到了 v x w o r k s 。 3 2 2q n x 位于加拿大首府渥太华的q n x 软件系统有限公司成立于1 9 8 0 年,是创新t 导型公司。在2 0 多年的时间里,q n x 公司与时俱进,不断推出代表时代技术水 平的实时搡作系统,包括q n x 2 、q n x 4 和当前q n x 6 ,是当之无愧的行业领袖。 3 2 3p s o s y s t e m p s o s y s t e m 是集成系统有限公司( i n t e g r a t e ds y s t e m s ,i n c 简称i s i 公司) 研发的 产品。该公司成立于1 9 8 0 年,产品在成立后不久推出,是世界上最早的实时系 统之一。p s o s y s t e m 推出的时间较早,因此它比较成熟,目前可以支持很多类型 的处理器,同时支持i s 0 9 6 6 0 、m s d o s 、n f s 等多种文件系统。目前全球大约 有3 5 0 0 万个设备上使用的该操作系统。p s o s y s t e m 在中国的市场占有率是最高 武汉理i 大学硕十学位论文 的,卞要应用领域包括通信、航天、信息家电以及t 业控制。 3 2 4p c o s i i uc o s i i 是由美国人j e a nj l a b r o s s e 编写的个公开源代码的,微内核嵌 入式实时操作系统,其实时性能和内核的健壮性早已经在大量的实际应用中得 到了证实。程序开发人员可以改写源代码,使之符台自己的要求。裁减掉不需 要的部分,使操作系统变得d , x 5 、灵活,并且能满足用户特定操作系统的需要。 hc o s i l 对于学校研究完全免费,只有在应用于盈利项目时才需要支付少量的 版权费,特别适合一般使用者的学习、研究和开发。 uc o s i i 有如下特点5 1 : 公开源代码,且源代码中有详细的注释,源代码清晰易读且结构协调、 组织有序,对实时操作系统的基本原理做了非常详细的解释,简单易懂。 移植性好,uc o s - 1 1 的源代码绝大部分是用a n s ic 编写的,与微处理 器相关的部分是用汇编语言写的,使得uc o s l i 便于移植到其它处理器上。 可裁剪,用户可以根据自己的寄存器空间的夫小和实际需要,只保留u c o s i i 中应用程序需要的那些系统服务。 稳定性和可靠性高,抗干扰能力强。 uc o s i i 完全是占先式的实时内核。这意味着pc o s i i 总是运行就绪 条件下优先级最高的任务。 l ac o s i i 每个任务的优先级必须是不同的,这意味着“c o s i i 不支持 时闻片轮转调度法( r o u n d r o b i ns c h e d u l i n g ) 。 全部l ac o s i i 的函数调用与服务的执行时间具有其可确定性。 uc o s i i 提供很多系统服务,例如邮箱、消息队列、信号量、块大小 固定的内存的申请与释放、时间相关函数等。 3 4uc o s i i 的介绍 3 4 1 临界段 代码的临界段也称为临界区,指处理时不可分割的代码。一旦这部分代码 _ 旰始执行,则不允许任何中断打入。为确保i 临界段代码的执行,在进入临界段 之前要关中断,而临界段代码执行完以后要立即开中断。 武汉理u t 大学顾十学位论文 和其它内核1 样,c o s l i 为了处理临界段代码需要关中断,处理完毕 j 冉 开中断。这使得uc o s 1 1 能够避免同时有萸它任务或中、断服务进入临界段代码, uc o s i i 定义两个宏( m a c r o s ) 来关中断和开中断,以便避开不同c 编译器 厂商选择不同的方法来处理关中断和开中断。t ic o s 一1 1 中的这两个宏调用分别 是:o se n t e rc r i t i c a l ( ) 和o se x i tc r i t i c a l ,0 。因为这两个宏的定义取 决于所用的微处理器,故在文件o sc p u h 中可以找到相应宏定义i l “。 3 4 2 任务 一个任务,也称作一个线程,是一个简单的程序,该程序可以认为c p u 完 全只属该程序自己。实时应用程序的设计过程,包括如何把问题分割成多个任 务,每个任务都是整个应用的某一部分,每个任务被赋予一定的优先级,有它 自己的一套c p u 寄存器和自己的栈空间。 多任务运行的实现实际上是靠c p u ( 中央处理单元) 在许多任务之间转换、调 度。c p u 只有一个,轮番服务于一系列任务中的某个。多任务运行使c p u 的 利用率得到最大的发挥,并使应用程序模块化。在实时应用中,多任务化的最 大特点是开发人员可以将很复杂的应用程序层次
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 黄皮活动策划方案
- 集体倒数活动方案
- 西安酒会活动策划方案
- 锅炉证考试题及答案
- 工程画图考试题及答案
- 儿科洗澡考试题及答案
- (正式版)DB15∕T 3656.2-2024 《马铃薯实生种子育苗移栽和直播技术规程 第2部分:苗钵直播》
- (正式版)DB15∕T 3404.5-2024 《全民所有自然资源资产清查技术指南 第5部分:湿地资源》
- 东鹏培训考试题及答案
- 电子高考试题及答案
- 夫妻忠诚协议书8篇
- 2025年信用管理专业题库- 信用管理对企业市场风险的控制
- 新教科版小学1-6年级科学需做实验目录
- 第二章-环境管理的理论基础课件
- 旅游服务礼仪PPT第4版高职PPT完整全套教学课件
- 第五版-FMEA-新版FMEA【第五版】
- EPC模式承包人建议书与承包人实施方案
- 江苏省临检中心 临床化学继教班 7.质控规则及IQCP概述欧元祝
- StarterUnits 1-3学历案 人教版七年级英语上册
- 自来水厂操作规程手册范本
- 碾压式土石坝施工技术规范
评论
0/150
提交评论