




已阅读5页,还剩61页未读, 继续免费阅读
(通信与信息系统专业论文)基于uclinux的温控系统的底层软件开发.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 本文提出了一个a r m + u c l i n u x 的嵌入式解决方案来实现基于模糊逻辑的温 控系统。以往采用的单片机系统,显示界面不友好,很难实现网络、图形用户界 面等高级的应用。该方案采用韩国s a m s u n g 公司的a r m 7 嵌入式微处理器 $ 3 c 4 4 8 0 作为系统控制核心,l c d 加触摸屏作为显示终端,在目标板上应用了 u c l i n u x 操作系统。操作系统是嵌入式设备软件的核心部分,能有效合理的组甥 和管理目标板的软硬件资源,它的存在使得各设备模块的功能得到更好的发挥, 并且为上层应用程序提供一个强大的运行环境。该系统能很好的取代传统单片机 系统实现温度数据采集、曲线显示、模糊逻辑、通信等功能。 本方案中,$ 3 c 4 4 8 0 微处理器的各种资源得到了充分的利用。首先,为了支 持u c l i n u x 操作系统的运行,进行了b o o t l o a d e r b l o b 的移植,具体分析了b o o t l o a d e l 的源代码及其命令接口。其次,利用$ 3 c 4 4 8 0 丰富的片上外设和方便的扩展接 口实现了直接数字控制、l c d 显示、触摸屏输入、基于n a n df l a s h 的固态存储 设备等硬件模块。最后详述了在操作内核内中各驱动程序模块的实现,完成了系 统各硬件模块的功能。 本文详细介绍了整个系统硬件模块的设计和底层驱动的丌发。 关键词:温控系统$ 3 c 4 4 8 0u c l i n u x 驱动程序a r m 7 a b s t r a c t i nt h i s p a t ) e r , a e m b e d d e ds y s t e ms o l u t i o nb a s e do na r m & u c l i n u xi s p r o p o s e d w h i c hc a l lb ei m p l e m e n t e di nt h ef u z z yc o n t r 0 1o fe n v i r o n m e n t a lc h a m b e r d e v i c e i nt h eo l d s i n g l e c h i pb a s e ds y s t e m ,u s e ri i 1 t e r f a c ei sn o tv e r yf r i e n d l y i ti s v e r yh a r dt or e a l i z es o m ec o m p l e xa p p l i c a t i o n ss u c ha sg r a p h i cu s e ri n t e r f a c e 、 n e t w o r kp r o t o c o ls t a c ks u p p o r t e t c t h es o l u t i o n p r o p o s e d i nt h i s p a p e ra d o p t s s 3 c 4 4 8 0 aa i w 7t y p ee m b e d d e dm i c r o p r o c e s s o rf r o ms a m s u n g a st h ec o r eo ft h e s y s t e m ,l c dp l u st o u c hs c r e e np a n e la st h ed i s p l a y & c o n t r 0 1t e r m i n a l a n du s e s u c l i n u xa st h eo p e r a t i n gs y s t e mi nt h et a r g e tb o a r d o p e r a t i n gs y s t e mi st h ec o r e s o f t w a r ei 1 1e m b e d d e dd e v i c e s w i t l li tt h es o f t w a r ea n dh a r d w a r er e s o u r c e sc a nb ew e l l o r g a n i z e da n de f f e c t i v e l yu s e d ,i t se x i s t e n c ec a r lm a k ee a c hd e v i c eg a i nab e t t e r p e r f o r m a n c e ,a n do p e r a t i n gs y s t e mc a r lp r o v i d et h et o pl e v e la p p l i c a t i o n sw i t has t r o n g m a n i n ge n v i r o n m e n t s y s t e m s w h i c hb a s e do nt h i ss o l u t i o nc a nr e p l a c et h e t r a d i t i o n a l s i n g l e c h i ps y s t e m st oc o m p l e t et h et a s k ss u c h a sd a t ac o l l e c t i o no f t e m p e r a t u r e ,r u n t i m ec u r v ed i s p l a y , c o m m u n i c a t i o n ,e t c t h er e s o u r c e si ns 3 c 4 4 8 0a r es u f f i c i e n t l yn t i l i t i e di nt h i ss y s t e m f i r s t i no r d e rt o s u p p o r tt h es t a r t - u po ft h eu c l i n u xk e m e l ,ab o o t l o a d e r , b l o b ,i sp o r t e dt ot h et a r g e t b o a r d ,i t sc o m m a n di n t e r f a c ei si n t r o d u c e da n dt h es o u r c ec o d ei s a n a l y s e d a f t e r w a r d s ,h a r d w a r em o d u l e si n c l u d i n gd i r e c td i g i t a lc o n t r o l ,l c dd i s p l a y , t o u c h s c r e e ni n p u t ,s o l i d s t o r a g ed e v i c ea r er e a l i z e db a s e do nt h ea b u n d a n to n c h i p p e r i p h e r a l sa n dc o n v e n i e n te x t e n di m e r f a e eo fs 3 c 4 4 8 0 i nt h ee n d e a c hd e v i c ed r i v e r i nt h ek e m e li se x p l a i n e dw i t hd e t a i l t h ed e s i g no fh a r d w a r em o d u l ea n dd e v e l o p m e n to fl o wl e v e ld r i v e ra r ef u l l y i n t r o d u c e di nt h i sp a p e r k e y w o r d :t e m p e r a t u r ec o n t r o ls y s t e m s 3 c 4 4 8 0 u c l i n u x d e v i c ed r i v e r a r m 7 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作和取得的 研究成果,除了文中特别加以标注和致谢之处外,论文中不包含其他人已经发表 或撰写过的研究成果,也不包含为获得苤鲞盘堂或其他教育机构的学位或证 书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中 作了明确的说明并表示了谢意。 学位论文作者签名:签字日期:伽,厂年p 月瞄日 学位论文版权使用授权书 本学位论文作者完全了解墨洼盘堂有关保留、使用学位论文的规定。 特授权盘室盘堂可以将学位论文的全部或部分内容编入有关数据库进行检 索,并采用影印、缩印或扫描等复制手段保存、汇编以供查阅和借阅。同意学校 向国家有关部门或机构送交论文的复印件和磁盘。 ( 保密的学位论文在解密后适用本授权说明) 学位论文作者签名t 摊 导师签名 力 瑚诅 签字日期:枷b f 年月仃同 签字日期:埘阵。月m 日 第一章交变湿热箱组成及。作原理 第一章温度控制系统的组成及工作原理 在温度控制的嵌入式应用中,基于单片机硬件平台的方案己远远不能满足瓤 型控制器在智能化、图形化、网络化等方面的要求。本文提出了一种基于u c l i n u ) l 操作系统的嵌入式温度控制器实现方案,采用a r m 7 核心的$ 3 c 4 4 8 0 作为嵌入 式微处理器,l c d 加触摸屏作为显示终端,具有良好的人机交互界面,以模糊 逻辑作为控制器核心算法,并且采用直接数字控制技术,提高了系统的控制效 果和控制精度。嵌入式微处理器及嵌入式操作系统的应用极大地解决了传统的 单片机控制器系统在速度、存储容量、通讯方式和单任务程序设计低效性等方面 的问题,提高了系统设计的性能。 1 1 系统组成及工作原理 11 1 系统组成 图1 1 温控系统结构原理 1 加热器2 风机3 冷机 温控箱结构原理如图1 1 所示。它的箱体全部用不锈钢材料组成,里面放置 需要检测的机械或电子元器件,有风道和外部的加热装置相连,系统运行时随控 第一章温度控制系统的组成及工作原理 在温度控制的嵌入式应用中,基于单片机硬件平台的方案己远远不能满足新 型控制器在智能化、图形化、网络化等方面的要求。本文提出了种基于u c l i n u x 操作系统的嵌入式温度控制器实现方案,采用a r m 7 核心的$ 3 c 4 4 8 0 作为嵌入 式微处理器,l c d 加触摸屏作为显示终端,具有良好的人机交互界面,以模糊 逻辑“o 作为控制器核心算法,并日采用直接数字控制技术,提高了系统的控制效 果和控制精度。嵌入式微处理器及嵌入式操作系统的应用极大地解决了传统的 单片机控制器系统在速度、存储容量、通讯方式和单任务程序设计低效性等方面 的问题提高了系统设计的性能。 1 1 系统组成及工作原理 11 1 系统组成 图1 1 温控系统结构原理 】加热器2 风机3 冷机 温控箱结构原理如图1 - 1 所不。它的箱体全部用不锈钢材料组成,里面放置 需要检测的机械或电子元器件,有风道和外部的加热装置相连,系统运行时随控 需要检测的机械或电子元器件,有风道和外部的加热装置相连,系统运行时随控 第一章交变湿热箱组成及。作原理 制量的改变,箱体内的温度也随之改变。箱内顶部中央位置放有温度传感器, 用来检测系统的实际温度,以提供反馈输入。有的系统箱体内有一个冷机在系统 运行时总是处于开的状态,以用来调节系统的控制品质( 此方式又称为b t h c 方式) 。整个控制系统的组成如图1 2 所示: 1 1 2 工作原理 图1 2 控制系统的组成 系统启动,经过初始化后,即进入运行阶段。此时,处于箱体顶部中央的温 度传感器采集到的箱内实际温度经由系统的定时检测程序启动a d 模块的驱动 程序,将模拟量转换成数字量后输入嵌入式控制器,经过一定的预处理后,再和 系统的给定曲线( 由用户在系统初始化阶段选择) 相减产生一个误差信号,此误 差信号作为输入量输入系统的控制器核心,控制器经过一定规则判断后,产生控 制量,从而超到控制系统温度的作用。当系统处于给定温度曲线的下降阶段时, 采用片上的i o 口对夹层的冷机进行分档控制( 即不连续调节) 。 1 2 直接数字控制技术原理及实现 在一个控制系统中,执行机构的驱动部分对系统整体性能有很大影响,如果 第一章交变湿热箱组成及t 作原理 它的控制特性不好,无论系统的控制器核心设计的多么完美,都将无法实现。早 期温控箱系统加热器的控制元件一般是双向可控硅。双向可控硅从原理上可看作 一对并在一起的晶闸管( 但不完全相同,如每周的关断时间及换流特性等) ,其 触发电路有很多中,都是通过控制可控硅的导通角来实现,简单的也是常用的是 r 、c 移相电路。但因为我们一般用三相交流电加热,对相移的精度要求较高, 简单的r 、c 移相电路一般很难满足要求。即使是单相加热回路,如果用这种简 单的r 、c 移相电路也有很大问题。而且,这种简单的移相电路抗干扰能力很差, 致使很难获得很好的控制特性。本设计采用新型开关器件s s r ( s o l i d s t a t er e l a y ) 固态继电器来解决这个问题。 s s r ( 一般分为z 型、过零触发型和p 型、调相触发型,触发电路大体相同) 是可控硅的发展,如图1 3 所示: 瓣令奔 功率控制 图1 3z 型s s r 结构图 s s r 的触发电路通常采用数字电路设计,这为直接数字控制技术提供了可 能。在上图中,只要能够精确控制b 端的低电平占空时间,就可以精确控制交 流电的导通时间。 s s r 控制交流电的输出功率不像双向可控硅那样,通过控制交流电的每周导 通角,而是通过控制交流电每秒导通的周波数来实现,因此,只要控靠0s s r 的 触发端b 的低电平时间就可以控制每秒中交流电的导通周波数,进而达到控制 输出功率( 电加热或电加湿功率) 的目的。比如在b 端加的低电平时间为4 5 0 秒,则交流周波每秒的导通数应为4 1 5 0 x 5 0 = 4 个。 由于s s r 是通过使交流电每秒导通多少周波的方法来控制输出功率,不但使 控制精度得以提高,而且减少了可控硅每周期只有部分导通的非线性谐波,提高 了系统的使用寿命。更为重要的一点是s s r 的触发电路可以采用直接数字控制, 从而提高了系统执行器件驱动电路的抗干扰能力和控制精度。直接数字控制技术 是实现上述设计思想的关键。 直接数字控制是指将控制器输出的结果( 数字量) 直接作为执行部件的输入 来控制执行元件的动作。在本系统中s s r 的触发端b 是由$ 3 c 4 4 8 0 片上的p w m 定时器输出的p w m 信号直接控制的。 第一章交变湿热箱组成及工作原理 1 2 1 $ 3 c 4 4 8 0 中的p w m 定时器8 $ 3 c 4 4 8 0 有6 个1 6 b i t 定时器,每个都能工作在基于中断或d m a 的模式, 其中定时器o 、l 、2 、3 、4 具有p w m ( 脉冲宽度调制) 功能。定时器5 是一个 内部定时器,没有输出引脚。 旷一 户一 图1 4 定时器2 、3 内部结构图 定时器0 和1 共用一个8 b i t 预分频器,定时器2 和3 共用一个( 见图1 4 ) , 定时器4 和5 共用一个。除了4 、5 ,每个定时器对应一个时钟分频器,定时器2 、 3 对应的分频器能提供五种分频( 1 2 ,1 4 ,1 8 ,l 1 6 ,1 1 3 2 ) 输出。定时器4 、 5 对应的分频器能提供四种分频( 1 2 ,1 4 ,1 8 ,1 1 6 ) 输出以及一个 t c l k e x t c l k 输出。每个定时器从分频器得到自己的时钟信号,而分频器又从 相应的预分频器获得时钟信号。8 b i t 预分频器是可以编程的,能够根据从定时器 控制寄存器t c f g 0 t c f g i 里加载的值对m c l k 信号进行分频。8 b i t 预分频器和 4 b i t 分频器组合起来可以产生如表1 1 所示的定时器时钟输出。 表1 1 定时器频率输出组合( m c l k 为6 6 m h z 时) 4 - b i t ,j - 叫f j 一贮最”怕j _ ;_l i i oj j - ! j + ;i ! “一曩j 弘 f p r e s c a l e r :1 lp r e s e a l e r = 2 5 5 )t c n t b n = 6 5 5 3 5 j 1 趁f m c l k = 6 6 m h z l 00 3 0 i j s ( 3 3 0m h z )77 5u s f 5 86k h z l05 08 e c 1 搏f m c l k = 6 e m h z j00 6 0 i i s f l 65m h z )1 55 1 1 8 5 88k h z 10 2s g c 1 馆f m c l k = 6 6 m h z -0 1 2 1u s f 8 2 5m h z l3 10u s f 2 93k h z i20 3s o c i 1 6 jm c l k = 6 6m h z02 4 2u s f 4 1 3 m h z l6 2 1u s f l 46k h 7 i4 0 78 e c 1 3 2 fm c l k :6 6m h z l0 4 8 5 s f 20 6 埘h :11 2 5u 5 f 73 2k h z )8 1 3s e c 定时器计数缓冲寄存器( t c n t b n ) 有一个初始值,当定时器启动后此值被 加载到递减计数器( t c n t n ) 。定时器比较缓冲寄存器( t c m p b n ) 的初始值加 载到比较寄存器用来与递减计数器( t c n t n ) 的值进行比较。t c n t b n 与t c m p b n 的这一双缓冲特性使得当频率和占空比变化时,定时器仍然能产生稳定的输出。 基本定时器操作 匪黯 翌 第一章交变湿热箱组成及一r 作原理 图1 5 定时器操作 定时器的操作如图1 5 。当定时器计数器递减到0 ,定时器自动重载操作就会 发生,但重载发生之前t c n t b n 的初始值还未定义过。在这种情况下,要通过 手动更新位来载入t c n t b n 中的初始值。一般启动定时器的步骤如下: 1 ) 将初始值写入到t c n t b n 和t c m p b n ;设置对应定时器的手动更新位。 2 ) 设置对应定时器的启动位来启动定时器( 同时,清除手动更新位) 。 每个定时器都有自己的1 6 b i t 递减计数器,由定时器的时钟信号驱动。当递 减计数器到达零时,一个时钟中断请求就会产生,通知c p u 定时器的操作已经 完成。当定时器的计数器到达零时,对应的t c n t b n 值自动重载到递减计数器 从而继续下一步操作。然而,如果在处于运行模式时清除t c o n n 的启动位从而 使定时器停止的话,t c n t b n 的值不会被重新加载到计数器。 t c m p b n 的值用于p w m 信号的产生。当递减计数器的值与比较寄存器里的 值匹配时,定时器控制逻辑改变输出电平极性。因此,比较寄存器能够决定输出 的p w m 信号的打开关闭时间。 1 21 本课题的主要任务 研制基于u c l i n u x 的新型嵌入式智能温控系统,完成系统的软硬件设计,主 要任务包括: 1 系统底层软件开发:u c l i n u x 的b o o t l o a d e r ( 启动加载程序) 的移植以及 命令模块的添加;定制u c l i n u x 内核,针对目标应用确定各内核模块, 第一章交变湿热箱组成及 “:作原理 编写设备驱动程序; 2 基于u c l i n u x 操作系统上的上层软件开发:图形用户界面库m i n i g u i 在 u c l i n u x 上的移植以及m i n i g u i 输入引擎的编写:基于图形用户界面库的 应用程序的开发,主要包括:温度采集模块、工程量转换模块、模糊算 法模块、数据存储及显示模块、网络通信模块等。 3 系统联调:在硬件平台稳定可靠、底层软件完备的基础上,实现系统的 开环运行。 本系统集成了l i n u x 、嵌入式系统等多项新技术,以此为基础,可迅速开发 出多种基于u c l i n u x 的新型嵌入式温控产品系列。u c l i n u x 操作系统是整个软件 系统的核心部分,它的稳定、高效运行是上层应用软件e 常运行的必要前提,而 底层软件( 启动加载程序以及设备驱动程序) 的开发起着非常关键的作用,是本 项目的重要组成部分。 第二章基于a r m + u c i i n u x 的嵌入式系统 第二章基于a r m + u c l i n u x 的嵌入式系统 2 1 嵌入式系统概述【6 l 嵌入式系统一般定义为:以应用为中心,以计算机技术为基础,软硬件可裁 减,从而能够适应实际应用中对功能、可靠性、成本、体积、功耗等严格要求的 专用计算机系统。 嵌入式系统无处不在,如移动电话、微波炉、办公室里的打印机、汽车罩的 燃油控制系统以及数码相机、数码摄影机、个人数字助理( p d a ) 等,都属于使 用嵌入式技术进行开发的产品。可以看出嵌入式系统在数量上远远超出了各种通 用计算机,甚至在一台通用计算机的外部设备中就有若干个嵌入式微处理器。嵌 入式系统应用领域非常广泛,在制造工业、通信设备、仪器仪表、航空航天、军 事装备、家电、消费类电子产品等方面都有用武之地。 嵌入式系统是将先进的计算机技术、半导体技术和电子技术与各个行业的具 体应用相结合后的产物,这决定了它是一个技术密集、不断创新的知识集成系统。 嵌入式系统工业的基础是以应用为中心的芯片设计和面向应用的软件产品开发。 与通用计算机不同,嵌入式系统是面向用户、面向产品、面向应用的,嵌入 式微处理器在功耗、体积、成本、可靠性、处理能力等方面均受到应用要求的制 约,必须针对用户具体需求,对芯片进行具体配置裁减,力争在同样的硅片面积 上达到更为理想的性能。 嵌入式处理器的软件是实现嵌入式系统功能的关键,对系统软件和应用软件 的要求也和通用计算机有很大不同: 1 软件要求固化存储。为了提高执行速度和系统可靠性,嵌入式系统中的 软件一般都固化在非易失性存储器芯片如闪存中。而不是用于p c 里的磁盘等机 械存储设备。 2 代码要求高质量和高可靠性。尽管随着半导体技术的发展,制造工艺越 来越先进,能在同样面积的存储芯片上得到更大的容量,但在大多数应用中,存 储空间仍然是紧缺的,因此要求代码编写和编译工具的效率要高,以减少二进制 代码长度,提高执行速度。 3 系统软件的实时性。在多任务的嵌入式系统中,系统的实时性是一个重 要的指标,对各个重要性不同任务的合理调度是保证每个任务及时执行的关键, 而进行任务调度是嵌入式操作系统的重要功能,使重要的任务能尽快得到执行。 第一章基丁a r m + u c l in u x 的嵌入式系统 嵌入式系统通常由嵌入式处理器、外围设备、嵌入式操作系统和应用程序等 组成。 嵌入式处理器式核心部件,一般都面向特定的应用领域。如今世界上有1 0 0 0 多种嵌入式处理器芯片,其中比较流行的有a r m 、m i p s 、p o w e r p c 等体系结构 的芯片。 外围设备是指嵌入式系统中用于存储、接口、通信显示等功能的其他硬件部 件,主要包括存储器、各种外围接口、显示部件。 22a r m 微处理器的应用领域及特点【7 a r m 公司是专门从事基于r i s c 技术芯片设计开发的公司,作为知识产权供 应商,本身不直接从事芯片生产,靠转让设计许可由合作公司生产各具特色的芯 片,即世界各大半导体生产商从a r m 公司购买其设计的a r m 微处理器核,根 据各自不同的应用领域,加入适当的外围电路,从而形成自己的a r m 微处理器 芯片。目前,全世界有几十家大的半导体公司都使用a r m 公司的授权,因此既 使得a r m 技术获得更多的第三方工具、制造、软件的支持,又使整个系统成本 降低,使产品更容易进入市场被消费者所接受,更具有竞争力。 到目前为止,a r m 微处理器及技术的应用几乎已经深入到各个领域: 1 、工业控制领域:作为3 2 的r i s c 架构,基于a r m 核的微控制器芯片不 但占据了高端微控制器市场的大部分市场份额,同时也逐渐向低端微控制器应用 领域扩展,a r m 微控制器的低功耗、高性价比,向传统的8 位1 6 位微控制器提 出了挑战。 2 、无线通讯领域:目前已有超过8 5 的无线通讯设备采用了a r m 技术, a r m 以其高性能和低成本,在该领域的地位臼益巩固。 3 、网络应用:随着宽带技术的推广,采用a r m 技术的a d s l 芯片正逐步 获得竞争优势。此外,a r m 在语音及视频处理上行了优化,并获得广泛支持, 也对d s p 的应用领域提出了挑战。 4 、消费类电子产品:a r m 技术在目前流行的数字音频播放器、数字机顶盒 和游戏机中得到广泛采用。 5 、成像和安全产品:现在流行的数码相机和打印机中很大部分采用a r m 技 术。手机中的3 2 位s i m 智能卡也采用了a r m 技术。 除此以外,a r m 微处理器及技术还应用到许多不同的领域,并会在将来取 得更加广泛的应用。 第二章基于a r m + u c l i n u x 的嵌入式系统 传统的c i s c ( c o m p l e xi n s t r u c t i o ns e tc o m p u t e r ,复杂指令集计算机) 结构 有其固有的缺点,即随着计算机技术的发展而不断引入新的复杂的指令集,为支 持这些新增的指令,计算机的体系结构会越来越复杂,然而,在c i s c 指令集的 各种指令中,其使用频率却相差悬殊,大约有2 0 的指令会被反复使用,占整 个程序代码的8 0 。而余下的8 0 的指令却不经常使用,在程序设计中只占2 0 ,显然,这种结构是不太合理的。 基于以上的不合理性,1 9 7 9 年美国加州大学伯克利分校提出了r i s c ( r e d u c e di n s t r u c t i o ns e tc o m p u t e r ,精简指令集计算机) 的概念,r i s c 并非只 是简单地去减少指令,而是把着眼点放在了如何使计算机的结构更加简单合理地 提高运算速度上。r i s c 结构优先选取使用频最高的简单指令,避免复杂指令; 将指令长度固定,指令格式和寻地方式种类减少;以控制逻辑为主,不用或少用 微码控制等措施来达到上述目的。 一般认为,r i s c 体系结构应具有如下特点: 一采用固定长度的指令格式,指令归整、简单、基本寻址方式有2 3 种。 一使用单周期指令,便于流水线操作执行。 一大量使用寄存器,数据处理指令只对寄存器进行操作,只有加载存储指 令可以访问存储器,以提高指令的执行效率。 采用r i s c 架构的a r m 微处理器一般具有如下特点: 1 、体积小、低功耗、低成本、高性能; 2 、支持t h u m b ( 1 6 位) a r m ( 3 2 位) 双指令集,能很好的兼容8 位1 6 位 器件; 3 、大量使用寄存器,指令执行速度更快; 4 、大多数数据操作都在寄存器中完成; 5 、寻址方式灵活简单,执行效率高; 6 、指令长度固定; 除此以外,a r m 体系结构还采用了一些特别的技术,在保证高性能的前提 下尽量缩小芯片的面积,并降低功耗: 一所有的指令都可根据前面的执行结果决定是否被执行,从而提高指令的 执行效率。 一可用加载存储指令批量传输数据,以提高数据的传输效率。 一可在一条数据处理指令中同时完成逻辑处理和移位处理。 一在循环处理中使用地址的自动增减来提高运行效率。 a r m 微处理器目前包括下面几个系列,除了具有a r m 体系结构的共同特点 第二章基丁a 1 w + u c li n u x 的嵌入式系统 以外,每一个系列都有各自的特点和应用领域。 一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 l 的x s c a l 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 个通用处理器系列,每一个 系列提供一套相对独特的性能来满足不同应用领域的需求。s e c u r c o r e 系列专门 为安全要求较高的应用而设计。 a r m 7 系列微处理器为低功耗的3 2 位r i s c 处理器,最适合用于对价位和功 耗要求较高的消费类应用。a r m 7 微处理器系列具有如下特点: 一具有嵌入式i c e r t 逻辑,调试丌发方便。 一极低的功耗,适合对功耗要求较高的应用,如便携式产品。 一能够提供0 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 x 、p a l mo s 等。 一指令系统与a r m 9 系列、a r m 9 e 系列和a r m l 0 e 系列兼容,便于用户 的产品升级换代。 一主频最高可达1 3 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 ,支持片上断点和调试点; 本系统采用的嵌入式微处理器$ 3 c 4 4 8 0 就是基于a r m 7 t d m l 内核的。 2 3a r m 微处理器的编程模型 第二章基丁a p n i + u c li n u x 的嵌入式系统 从编程的角度看,a r m 微处理器的工作状态一般有两种,并可在两种状态 之间切换: 一第一种为a r m 状态,此时处理器执行3 2 位的字对齐的a r m 指令; 一第二种为t h t m a b 状态,此时处理器执行1 6 位的、半字对齐的t h u m b 指令。 当a r m 微处理器执行3 2 位的a r m 指令集时,工作在a r m 状态;当a r m 微处理器执行16 位的t h u m b 指令集时,工作在t h u m b 状态。在程序的执行过 程中,微处理器可以随时在两种工作状态之间切换,并且处理器工作状态的转变 并不影响处理器的工作模式和相应寄存器中的内容。 a r m 微处理器中支持字节( 8 位) 、半字( 1 6 位) 、字( 3 2 位) 三种数据类 型,其中,字需要4 字节对齐( 地址的低两位为0 ) 、半字需要2 字节对齐( 地 址的最低位为0 ) 。 2 31a r m 体系结构的存储器格式 作为3 2 位的微处理器,a r m 体系结构所支持的最大寻址空问为4 g b ( 2 ”字 节) ,可以用两种方法存储字数据,称之为大端格式和小端格式。 大端格式中,字数据的高字节存储在低地址中,而字数据的低字节则存放在 高地址中,如图2 1 所示: 图2 - 1 以大端格式存储字数据 与大端存储格式相反,在小端存储格式中,低地址中存放的是字数据的低字 节,高地址存放的是字数据的高字节。如图2 2 所示: 第二章基于a r m + u c i n u x 的嵌入式系统 23 2 处理器模式 图2 - 2 以小端格式存储字数据 a r m 微处理器支持7 种运行模式,分别为: 一用户模式( u s r ) :a r m 处理器f 常的程序执行状态 一快速中断模式( f i q ) :用于高速数据传输或通道处理 一外部中断模式( i r q ) : 用于通用的中断处理 一管理模式( s v c ) :操作系统使用的保护模式 一数据访问终止模式( a b t ) :当数据或指令预耿终止时进入该模式,可用于 虚拟存储及存储保护。 一系统模式( s y s ) :运行具有特权的操作系统任务。 一未定义指令中止模式( u n d ) :当未定义的指令执行时进入该模式,可用于 支持硬件协处理器的软件仿真。 a r m 微处理器的运行模式可以通过软件改变,也可以通过外部中断或异常 处理改变。大多数的应用程序运行在用户模式下,当处理器运行在用户模式下 时,某些被保护的系统资源是不能被访问的。 除用户模式以外,其余的所有6 种模式称之为非用户模式,或特权模式 ( p r i v i l e g e dm o d e s ) ;其中除去用户模式和系统模式以外的5 种又称为异常模式 ( e x c e p t i o nm o d e s ) ,常用于处理中断或异常,以及需要访问受保护的系统资源 等情况。 2 3 3 寄存器组织 a r m 微处理器共有3 7 个3 2 位寄存器,其中3 1 个为通用寄存器,6 个为状 态寄存器。但是这些寄存器不能被同时访问,具体哪些寄存器是可编程访问的, 取决于微处理器的工作状态及具体的运行模式( 如图2 3 ) 。但在任何时候,通用 寄存器r 1 4 r 0 、程序计数器p c 、一个或两个状态寄存器都是可访问的。 通用寄存器 通用寄存器包括r 0 r 1 5 ,可以分为三类: 一未分组寄存器r 0 r 7 ; 一分组寄存器r 8 r 1 4 一程序计数器p c ( r 1 5 ) 第二章基于a r m + u c l i n u x 的嵌入式系统 寄存器r 1 3 在a r m 指令中常用作堆栈指针,但这只是一种习惯用法,用户 也可使用其他的寄存器作为堆栈指针。而在t h u m b 指令集中,某些指令强制性 的要求使用r 1 3 作为堆栈指针。 由于处理器的每种运行模式均有自己独立的物理寄存器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 l 子程序调用指令时,r 1 4 中得到r 1 5 ( 程序计数器p c ) 的备份。其他 情况下,r 1 4 用作通用寄存器。与之类似,当发生中断或异常时,对应的分组寄 存器r 1 4s v c 、r 1 4i r q 、r 1 4、和 用来保存r 1 5 的返回值。_ f i q r 1 4a b tr 1 4u n d 由于a r m 体系结构采用了多级流水线技术,对于a r m 指令集而言,p c 总 是指向当前指令的下两条指令的地址,即p c 的值为当前指令的地址值加8 个字 节。 a r i i 状态下的调用寄存器与程序计数器 自,对枷su $ o i f i q s i i p e r v i r , o r b m ni r gt l n d t i n e d r t ; r 1 融 r 3 r 4 r 5 r 6 r 7 r 8 r r “i r i i r 1 r 停 r l d r 1 5 j p c r 0 r 1 r 2 r 3 剐 r 5 r 6 r 7 r s 呐 hr 9 棚 k 1 0 i m kr 1 1l l q r 伫* q 刚,nc : kr 1 4 协 r 博f 0 c 、 r 0 r r 2 r 3 r 4 r 5 r 6 r r 8 h 9 r c h 1 1 kz 、q 计5 c ka c r 0 r 1 r 2 r 3 r 4 r 5 r b r 7 r 3 r , r i o h 1 r 1 2 h r 似n 、刚 h f r 1 5i p f l l p - 5 陌 町 m 蝌 i r l | l n 1 1 h 1 2 1 、3 。i 州 、r u n d r 1 p c , 腿赦态f 的程序状态寄存嚣 匠 霉 圆 田二匠 互 b x ! ! 翌塑lb 墨! 塑:竺| k ! ! 矍坐l ! ! 塑- 璺睦耍! 塑型| b 一廿蛆# # 图2 3a r m 状态下的寄存器组织 在a r m 状态下,任一时刻可以访问以上所讨论的1 6 个通用寄存器和一到两 个状态寄存器。在非用户模式( 特权模式) 下,则可访问到特定模式分组寄存器, 图2 3 说明在每一种运行模式下,哪一些寄存器是可以访问的。 寄存器r 1 6 用作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 ,当前程序状态寄存 器) ,c p s r 可在任何运行模式下被访问,它包括条件标志位、中断禁止位、当前 第二章基于a r i - i + u c li n u x 的嵌入式系统 处理器模式标志位,以及其他一些相关的控制和状态位。 每一种运行模式下又都有一个专用的物理状态寄存器,称为s p s r ( s a v e d p r o g r a ms t a t u sr e g i s t e r ,备份的程序状态寄存器) ,当异常发生时,s p s r 用于保 存c p s r 的当前值,从异常退出时则可由s p s r 来恢复c p s r 。 由于用户模式和系统模式不属于异常模式,他们没有s p s r ,当在这两种模 式下访问s p s r ,结果是未知的。 程序状态寄存器 a r m 体系结构包含一个当前程序状态寄存器( c p s r ) 和五个备份的程序状 态寄存器( s p s r s ) 。备份的程序状态寄存器用来进行异常处理,其功能包括: 一保存a l u 中的当前操作信息 一控制允许和禁止中断 一设置处理器的运行模式 程序状态寄存器的每一位的安排如图2 - 4 所示: 事件鹤标志彘冒拧制证 2 34 异常( e x c e p t i o n s ) 图2 4 程序状态寄存器格式 当正常的程序执行流程发生暂时的停止时,称之为异常。在处理异常之前, 当前处理器的状态必须保留,这样当异常处理完成之后,当前程序可以继续执行。 处理器允许多个异常同时发生,它们将会按固定的优先级进行处理。 a r m 体系结构中的异常,与8 位1 6 位体系结构的中断有很大的相似之处, 但异常与中断的概念并不完全等同。a r m 体系结构所支持的异常及具体含义如 表2 3 所示。 表2 1a r m 体系结构所支持的异常 异常类型具体含义 复位当处理器的复位电平有效时,产生复位异常,程序跳转到 复位异常处理程序处执行。 未定义指令当a r m 处理器或协处理器遇到不能处理的指令时,产生 第二章基于a r m + u c ii n u x 的嵌入式系统 未定义指令异常。可使用该异常机制进行软件仿真。 软件中断该异常由执行s w i 指令产生,可用于用户模式下的程序 调用特权操作指令。可使用该异常机制实现系统功能调 用。 指令预取中止若处理器预取指令的地址不存在,或该地址不允许当前指 令访问,存储器会向处理器发出中止信号,但当预取的指 令被执行时,才会产生指令预取中止异常。 数据中止若处理器数据访问指令的地址不存在,或该地址不允许当 前指令访问时,产生数据中止异常。 i r q ( 外部中断请当处理器的外部中断请求引脚有效,且c p s r 中的i 位为 求) 0 时,产生i r q 异常。系统的外设可通过该异常请求中断 服务。 f i q ( 快速中断请当处理器的快速中断请求引脚有效,且c p s r 中的f 位为 求) 0 时,产生f i q 异常。 异常发生后,程序计数器p c 会被强制指向异常类型对应的固定存储器地址 ( 从0 开始的一段连续地址) ,开始异常的处理,异常向量表如表2 5 所示。 表2 2 异常向量表 地址异常进入模式 0 x 0 0 0 0 0 0 0 0复位管理模式 0 x 0 0 0 0 ,0 0 0 4未定义指令未定义模式 0 x 0 0 0 0 。0 0 0 8软件中断管理模式 0 x 0 0 0 0 ,0 0 0 c中止( 预取指令)中止模式 0 x 0 0 0 0 0 0 1 0中止( 数据)中止模式 0 x 0 0 0 0 ,0 0 1 4保留保留 0 x 0 0 0 0 ,0 0 18i r qi r q 0 x 0 0 0 0 0 0 1 cf i qf i q 24 基于a r m 7 内核的嵌入式微处理器s 3 c 4 4 b o x f 8 】 2 41 简介 s 3 c 4 4 b o x 是s a m s u n g 公司推出的3 2 位i l i s c 处理器,为手持设备和一般 类型应用提供了高性价比和高性能的微处理器解决方案。它提供了丰富的片上外 设,包括:8 k bc a c h e ,内部s r a m ,l c d 控制器,带自动握手的2 通道u a r t , 第二章基于a r m + u c li n u x 的嵌入式系统 4 通道d m a ,系统管理器( 片选逻辑,f p e d o s d r a m 控制器) ,带有p w m 功 能的5 通道定制器,i o 端口
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年虚拟现实行业技术创新与市场应用前景分析报告
- 2025年电子行业智能家居设备市场前景研究报告
- 2025年医疗科技行业远程医疗发展前景分析报告
- 2025年工业设计行业工业设计创新与应用前景研究报告
- 商场保洁安全作业培训总结课件
- 南京市2025江苏南京市产品质量监督检验院招聘编外工作人员11人笔试历年参考题库附带答案详解
- 云阳县2025二季度重庆云阳县事业单位考核招聘98人笔试历年参考题库附带答案详解
- 2025河北唐山瑞丰钢铁春季校园招聘招38人笔试参考题库附带答案详解
- 2025广东中山长虹电器有限公司招聘散件工艺工程师等岗位3人笔试参考题库附带答案详解
- 2025年福建福州市鼓楼区城投集团招聘18人笔试参考题库附带答案详解
- 冲压质量培训
- 2025年辽宁交投集团招聘笔试参考题库含答案解析
- 设备维护与保养手册
- 喷雾干燥塔操作规程模版(3篇)
- 《天疱疮诊断及治疗》课件
- 学校教代会代表换届选举方案
- 现代交换原理第二章
- 2024版工业润滑油销售协议范例版
- 企业级智能数据分析系统开发与服务合同
- 2024数据要素典型案例
- Unit 3 She has long hair. (教学设计)-2024-2025学年湘鲁版英语五年级上册
评论
0/150
提交评论