




已阅读5页,还剩38页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
武汉科技大学硕士学位论文第1 页 摘要 嵌入式系统是以应用为中心,以计算机技术为基础,软件硬件均可裁剪,能满足应用 系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。随着计算机技术 和网络通信技术的发展,嵌入式系统进入了一个新的历史发展阶段。目前广泛应用于工业 控制、信息家电、娱乐设施、航空、军事等领域,具有很好的市场前景。 控制领域是嵌入式系统一个非常重要的应用领域,从嵌入式系统的发展历史可以看 出,嵌入式系统最早应用于工业控制系统。随着微电子技术和软件技术的不断创新与进步, 嵌入式系统取得了快速发展,基于嵌入式实时操作系统的嵌入式控制系统广泛地应用于工 业控制领域,与通用型可编程控制p l c 系统以及基于工业p c 的控制系统相比嵌入式控制系 统功能强大、功耗低、可靠性高、性能价格比高,支持多控制任务的实时并发执行,而且 占用空间小,效率高,可根据需要灵活定制软件,能够很好的满足控制应用的需求。 本课题实现了一个基于a r m 芯片的嵌入式系统平台。通过这一平台进行进一步的软件 开发,就可以满足很多工业控制方面的需要。 关键词:嵌入式系统、a r m 、l p c 2 2 9 0 、t 业控制 第1 j 页 武汉科技大学硕士学位论文 a b s t r a c t e m b e d d e ds y s t e mi sas p e c i a lc o m p u t e rs y s t a nw h o s ep u r p o s ei sf o rs p e c i a la p p l i c a t i o n s b a s e do nc o m p u t e rt e c h n o l o g y ,t h eh a r d w a r ea n ds o f t w a r eo fe m b e d d e ds y s t e mc a nb e c u s t o m i z e d w i t ht h e d e v e l o p m e n to fc o m p u t e rt e c h n o l o g ya n dn e t w o r kc o m m u n i c a t i o n t e c h n o l o g y , t h ee m b e d d e ds y s t e mh a se n t e r e dan e wd e v e l o p i n gs t a g e hh a sb e e nw i d e l ya p p l i e d t om a n yf i e l d s ,s u c ha si n d u s t r yc o n t r o l ,d c c 昀1 1 i ch o u s e h o l d a p p l i a n c e s ,a m u s e m e n t s ,a v i a t i o n , m i l i t a r ya f f a i r s ,e t c i th a ss t r o n gp o t e n t i a lm a r k e t c o n t r o lr e a l n li sa l li m p o r t a n tr e a l mo fe m b e d d e ds y s t e ma p p l i c a t i o n e m b e d d e ds y s t e mi s f i r s t l ya p p l i e di ni n d u s t r yc o n t r o ls y s t e m w i t ht h ed e v e l o p m e n t , e m b e d d e ds y s t e mm a k e sa g r e a ta d v a n c e m e n t e m b e d d e dc o n t r o ls y s t e mi n t e g r a t i n gr e a l t i m eo si sw i d e l yu s e di nc o n t r o l r e a l m s e m b e d d e dc o n t r o ls y s t e mi sm o r ep o w e r f u l ,s u p p o r t i n gm u l t ir e a l t i m et a s k sa n d u t i l i z i n gl e s sm e m o r y i tc 趾b ec o n f i g u r e dw i t hd i f f e r e n tr e q u i r e m e n t s s a t i s f y i n gt h ec o n t r o l a p p l i c a t i o n s t h i ss u b j e c th a sr e a l i z e da ne m b e d d e ds y s t e mb a s e do na r m c h i p t h a ts y s t e mc a ns a t i s f y s o m en e e do f i n d u s t r i a lc o n t r o l 谢t hf u r t h e rs o f t w a r ed e v e l o p m e n t k e y w o r d s :e m b e d d e ds y s t e m 、a r m 、l p c 2 2 9 0 、i n d u s t r i a lc o n t r o l 武汉科技大学硕士学位论文第1 页 1 1 嵌入式系统概述 第一章绪论 嵌入式系统( e 曲e d d e ds y s t e m s ) 是根据应用的要求,将操作系统和功能软件集成于计 算机硬件系统之中,从而实现软件与硬件一体化的计算机系统。嵌入式系统出现于6 0 年 代晚期,它最初被用于控制机电电话交换机,如今已被广泛的应用于工业制造、过程控制、 通讯、仪器、仪表、汽车、船舶、航空、航天、军事装备、消费类产品等众多领域。嵌入 式系统在数量上远远超过了各种通用计算机系统,计算机系统核心c p u ,每年在全球范围 内的产量大概在二十亿颗左右,其中超过8 0 9 6 应用于各类专用性很强的嵌入式系统。 一般的说,凡是带有微处理器的专用软硬件系统都可以称为嵌入式系统。和通用的计 算平台相比,嵌入式系统往往具有功能单一、体积小、功耗低、可靠性高、剪裁性好、软 硬件集成度高、计算能力相对较低等特点。 即使不可见,嵌入式系统也无处不在。嵌入式系统在很多产业中得到了广泛的应用并 逐步改变着这些产业。在日常生活中,人们使用各种嵌入式系统,但未必知道它们的存在。 事实上,几乎所有带有一点“智能”的家电都是嵌入式系统。嵌入式系统广泛的适应能力 和多样性,使得视听,工作场所甚至健身设备中到处都有嵌入式系统的影子。 目前,对嵌入式系统的定义多种多样,但没有一种定义是全面的。下面给出的两种比 较合理的定义: 从技术的角度定义:以应用为中心,以计算机技术为基础,软件硬件可裁减,适 应应用系统对功能,可靠性,成本,体积,功耗严格要求的占用计算机系统。 从系统的角度定义:嵌入式系统是设计完成复杂功能的硬件和软件,并使其紧密 耦合在一起的计算机系统。术语嵌入式反映了这些系统通常是更大系统中的一个完整的部 分,称为嵌入的系统。嵌入的系统中可以共存多个嵌入式系统。 l 1 1 嵌入式处理器 早期的嵌入式系统通常使用普通的个人计算机( p c ) 中的通用处理器。近年来,随着 大量先进的微处理器制造技术的发展,越来越多的嵌入式系统用嵌入式处理器建造,而不 是用通用目的的处理器。这些嵌入式处理器可以大致分为以下四类: 1 嵌入式微处理器 嵌入式微处理器的基础是通用的计算机中的c p u 。在应用中,将微处理器装配在专门 设计的电路板上,只保留和嵌入式应用有关的母板功能,这样可以大幅度减少系统体积和 功耗。为了满足嵌入式应用的特殊要求,嵌入式微处理器虽然在功能上和标准微处理器基 本一致,但在工作温度,抗电磁干扰,可靠性等方面一般都做了各种增强。 和工业控制计算机相比,嵌入式微处理器具有体积小,重量轻,成本低,可靠性高的 第2 页武汉科技大学硕士学位论文 优点,但是在电路板上必须包括r o m ,r a l i ,总线接口,各种外设等器件,从而降低了系统 的可靠性,技术保密性也比较差。嵌入式微处理器及其存储器,总线,外设等安装在一块 电路板上,称为单板计算机。如s t d - b u s ,p c i 0 4 等。 2 嵌入式微控制器 嵌入式微控制器又称单片机,它是将整个计算机系统集成到一块芯片中。嵌入式微控 制器一般以一种微处理器内核为核心,芯片内部集成了r o m e p r o m ,r a m ,总线,总线逻辑, 定时计数器,w a t c h d o g ,i o ,串行口等各种必要功能和外设。为适应不同应用的需要, 一般一个系列的单片机具有各种衍生产品,各种衍生产品的处理器内核都是一样的,不同 的是存储器和外设的配置以及封装。这样可以使单片机最大限度的与应用需求相匹配。功 能不多不少,从而减少了功耗和成本。 和嵌入式微处理器相比,微控制器的最大特点是单片化,体积大大减少,从而使功耗 和成本下降,可靠性提高。微控制器是目前嵌入式系统工业的主流。微控制器的片上外设 资源一般比较丰富,适合于控制,因此称作微控制器。 嵌入式微控制器目前的品种和种类很多,比较有代表性的通用系列包括8 0 5 1 ,p 5 l 】( a , m c s - 2 5 1 以及数目众多的a r m 芯片等。目前m c u 占嵌入式系统约7 0 9 6 的市场份额。 3 嵌入式d s p 处理器 d s p 处理器对系统结构和指令进行了特殊的设计,使其适合于执行d s p 算法,编译效 率较高,指令执行速度也较高。在数字滤波,f f t ,谱分析等方面d s p 算法正在大量进入 嵌入式领域,d s p 应用正从在通用单片机中以普通指令实现d s p 功能,过渡到采用嵌入式 d s p 处理器。 嵌入式d s p 处理器比较有代表性的产品是t e x a si n s t r u m e n t s 的t m s 3 2 0 系列和 m o t o r o l a 的d s p 5 6 0 0 0 系列。t m s 3 2 0 系列处理器包括用于控制的c 2 0 0 0 系列,移动通信的 c 5 0 0 0 系列,以及性能更高的c 6 0 0 0 和c 8 0 0 0 系列。d s p 5 6 0 0 0 目前已经发展成为d s p 5 6 0 0 0 , d s p 5 6 1 0 0 ,d s p 5 6 2 0 0 和d s p 5 6 3 0 0 等几个不同系列的处理器。 4 嵌入式片上系统( s 0 c ) 随着e d a 的推广和v l s i 设计的普及化及半导体工艺的迅速发展,在一个硅片上实现 一个更为复杂的系统的时代已经来临,这就是s y s t e mo nc h i p ( s o c ) 。各种通用处理器内 核将作为s o c 设计公司的标准库,和许多其它嵌入式系统外设样,成为v l s i 设计中一 种标准的器件,用标准的v h d l 等语言描述,存储在器件库中。用户只需定义出其整个应 用系统,仿真通过后就可以将设计图交给半导体工厂制作样品。这样除个别无法集成的器 件以外,整个嵌入式系统大部分均可集成到一块或几块芯片中去,应用系统电路板将变得 很简洁,对于减小体积和功耗,提高可靠性非常有利。 s 0 c 可以分为通用和专用两类。通用系列包括i n f i n e o n 的t r i c o r e ,m o t o r o l a 的 m c o r e ,某些a r m 系列器件,e c h e l o n 和m o t o l o l a 联合研制的n e u r o n 芯片等。专用s o c 一般专用于某个或某类系统中,不为一般用户所知。一个有代表性的产品是p h il i p s 的 s m a r t x a ,它将x a 单片机内核和支持超过2 0 4 8 位复杂r s a 算法的c c u 单元制作在块硅 武汉科技大学硕士学位论文第3 页 片上,形成一个可加载j a v a 或c 语言的专用的s o e ,可用于公众互联网安全方面。 1 1 2 嵌入式操作系统 计算机系统由硬件和软件组成,在发展初期没有操作系统这个概念,用户使用监控程 序来使用计算机。随着计算机技术的发展,计算机系统的硬件,软件资源也愈来愈丰富, 监控程序已不能适应计算机应用的要求。于是在六十年代中期监控程序又进一步发展形成 了操作系统( o p e r a t i o ns y s t e m ) 。发展到现在,广泛使用的三种操作系统即多道批处理 操作系统,分时操作系统以及实时操作系统,如图1 1 示。 图1 1 嵌入式操作系统分类 嵌入式实时操作系统在目前的嵌入式应用中用得越来越广泛,尤其在功能复杂,系统 庞大的应用中显得愈来愈重要。在嵌入式应用中,只有把c p u 嵌入到系统中,同时又把操 作系统嵌入进取,才是真正的计算机嵌入式应用。叫使用实时操作系统主要有以下几个因 素: 嵌入式实时操作系统提高了系统的可靠性; 提高了开发效率,缩短了开发周期; 嵌入式实时操作系统充分发挥了3 2 位c p u 的多任务潜力。 常见的嵌入式实时操作系统主要有:嵌入式l i n u x 、w i n d o w sc e 、v x w o r k s 、1 1c o s i i 等。 1 2 嵌入式系统在工业控制中的应用 随着i n t e r n e t 的飞速发展,网络应用越来越广泛,对各种工业控制设备的网络功能 第4 页武汉科技大学硕士学位论文 要求也越来越高。当前的要求是希望工业控制设备能够支持t c p i p 以及其它i n t e r n e t 协 议,从而能够通过用户熟悉的浏览器查看设备状态、设置设备参数,或者将设备采集到的 数据通过网络传送到w i n d o w s 或u n i x l i n u x 服务器上的数据库中。这就要求工控系统必 须具备两方面的功能:一是要在现场完成复杂的测控任务,因为通常一些任务都具有一定 的实时性要求:二是要求测控系统能够与某类型的控制网相连,以实现远程监控。在目 前应用的大多数测控系统中,嵌入式系统的硬件采用的是8 1 6 位单片机:软件多采用汇编 语言编程,由于这些程序仅包含一些简单的循环处理控制流程。因此,单片机与单片机或 上位机之间的通信通常通过r s 2 3 2 、r s 4 8 5 来组网。这些网络存在通信速度慢、联网功能 差、开发困难等问题。工业以太网已逐步完善,在工业控制领域获得越来越多的应用。工 业以太网使用的是t c p i p 协议,因而便于联网,并具有高速控制网络的优点。 1 3 本次研究的主要目的 由前面可以了解到,现代工业控制中需要的是一种支持多种通讯协议并且具备良好用 户界面的嵌入式系统。所以此次研究的主要目的,是希望能够构建起一个具有普遍适用性 的平台,为更进一步的应用程序开发打下基础。这个平台必须具有以下特点: 可裁减。 支持多种通讯协议 具有良好的用户界面 所以,此次研究需要解决的主要问题是: 第一:设计硬件电路,使系统具有较好的通用性,并且做到可裁减。 第二:编写模块化的中间层程序。 第三:为次系统移植一个嵌入式实时操作系统,以便实现对多种通讯协议的支持。 本文的以下几章就围绕这三个问题进行介绍。另外,需要注意的一点是,本文中硬件 系统的核心处理器芯片为l p c 2 2 9 0 ,移植的操作系为“c o s i i 。 武汉科技大学硕士学位论文第5 页 第二章硬件结构 此章首先介绍了a r m 核心的技术规范( 更详细的规范可以参看a r m 公司的文档) ,然 后以实际芯片l p c 2 2 9 0 为核心处理器,搭建起一个可裁减的嵌入式硬件系统,以解决绪论 中提出的第一个问题。 2 1a r m 7 体系结构 a r m 是a d v a n c e dr i s cm a c h i n e s 的缩写,是微处理器行业的一家知名企业,该企业设 计了大量廉价,高性能,低功耗的r i s c 处理器,以及相关技术及软件。a 跚公司的处理器 具有性能高,成本低和能耗小的特点,适用于多种领域,如嵌入式控制,消费教育类多媒 体,d s p 和移动式应用等。 a r m 将其技术授权给世界上许多著名的半导体,软件和o 脚厂商,每个厂商得到的都 是一套独一无二的a r m 相关技术及服务。利用这种合作关系,a r m 很快成为许多全球性r i s c 标准的缔造者。 目前,共有3 0 家半导体公司与a r m 签订了硬件技术适用许可协议,其中包括i n t e l , i b m ,l g 半导体,n e c ,s o n y ,p h i l i p s 和国家半导体这样的大公司。至于软件系统的合作 伙伴人,则包括微软,升阳和m r i 等一系列知名公司。a r m 架构是面向低预算市场设计的 第一款r i s c 微处理器。 a r m 是精简指令集计算机( r i s c ) ,其设计实现了外形小但性能高的结构。a r m 处理器 结构的简单使a r m 的内核非常小,这样使器件的功耗也非常低。它集成了非常典型的r i s c 结构的特性: 一个大而统一的寄存器文件。 装载保存结构,数据处理的操作只针对寄存器的内容,而不直接对存储器进行操 作。 简单的寻址模式,所有装载保存的地址都只由寄存器内容和指令域决定。 统一和固定长度的指令域,简化了指令的译码。 此外,a r m 体系结构还提供: 每一条数据处理指令都对算数逻辑单元( a l u ) 和移位器控制,以实现对a l u 和移 位器的最大剩用。 地址自动增加和自动减少的寻址模式实现了程序循环的优化。 多寄存器装载和存储指令实现最大数据吞吐量。 所有指令的条件执行实现最快速的代码执行。 从a r m 系列最初开发到现在,a r m 指令集体系结构有了巨大的改变,并在不断的完善 和发展。为了清楚的表达每个a r m 应用实例所使用的指令集,a r m 公司定义了5 种主要的 a r m 指令集体系结构版本,以版本号v 1 一v 5 表示。a r m 7 基于a r m 体系结构v 4 版本,是目 第6 页武汉科技大学硕士学位论文 前低端的a r m 核( 并非芯片,a r m 核与其他部件如r a m ,r o m ,片内外设组合在一起才构成 现实的芯片) ,具有广泛的应用,其最显著的应用为数字移动电话。 下面将介绍a r m 7 体系结构的一些特点。 2 1 1 存储器访问 a r m t t d m i 处理器使用了冯诺依曼( y o nn e u m a n n ) 结构,指令和数据共用一条3 2 位总线。只有装载,存储和交换指令可以对存储器中的数据进行访问。 数据可以是8 位字节,1 6 位半字或者3 2 位字。字必须分配为占用4 字节,而半字必 须分配为占用2 字节。 2 1 2 处理器状态 a 蕊7 t d m i 处理器内核使用a 蹦v 4 t 结构实现,该结构包含3 2 位a r m 指令集和1 6 位 t h u m b 指令集。因此,a r m 7 t d m i 处理器有两种操作状态: a r m 状态3 2 位,这种状态下执行的是字方式的a r m 指令。 t h u m b 状态1 6 位,这种状态下执行的是半字方式的t h u m b 指令。 所有的异常处理都在a r m 状态中执行。如果异常发生在t h u m b 状态中,处理器会切换 到a r m 状态。在异常处理返回时,自动切换回t h u m b 状态。 2 1 3 处理器模式 a r m 体系结构支持7 种处理器模式:用户模式,快中断模式,中断模式,管理模式, 中止模式,未定义模式和系统模式。a r m 7 t d m i 完全支持这7 种模式。如表2 1 。除用户模 式外,其它模式均为特权模式。a r m 内部寄存器和一些片内外设在硬件设计上只允许( 或 可选为只允许) 特权模式下访问。此外,特权模式可以自由的切换处理器模式,而用户模 式不能直接切换到别的模式。 武汉科技大学硕士学位论文第7 页 表2 1 处理器模式 赴理器模式说明 备注 用户( i 啊)正常程序工作模式不能直接切换到其它模式 快中断( f i q )支持高速数据传输及通道处理h o 异常响应时,进入此模式 中断( i r q )用于通用中断处理m q 异常响应时- 进入此模式 管理( s w )操作系统保护代码系统复位和软件中断响应时进入此模式 中止( h )甩于支持虚拟内存和域存储器保护在a p m 删没有大用处 未定义( 1 m d )支持硬件协处理器的软件仿真 未定义指令异常响应时,进入此模式 系统( s ”)用于支持操作系统的特权任务与用户类似。但具有可以直接其它模式的特权 有5 种处理器模式称为异常模式,它们是快中断模式,中断模式,管理模式,中止模 式和未定义模式。它们除了可以通过程序切换进入外,也可以由特定的异常进入。当特定 的异常出现时,处理器进入相应的模式。每种模式都有某些附加的寄存器,以避免异常退 出时,用户模式的状态不可靠。 至于系统模式,它与用户模式一样,不能由异常进入,且使用与用户模式完全相 同的寄存器。然而它是特权模式,不受用户模式的限制。有这个模式。操作系统要访问用 户模式的寄存器就比较方便。同时,操作系统的一些特权任务可以使用这个模式,以访问 一些受控的资源,而不必担心异常出现时的任务状态变得不可靠。 2 1 4 内部寄存器 在a 跚7 处理器内部有3 7 个用户可见的寄存器。它们可以分为两组:一组是3 1 个通 用3 2 位寄存器,在 跏公司的文件中它们的名称分别为r o r 1 5 ,r 1 3 s v e ,r 1 4 s v c , r 1 3 _ a b t ,r 1 4 _ a b t ,r 1 3 _ u n d ,r 1 4 u n d ,r 1 3 - i r q ,r 1 4 一i r q 和r s _ f i q r 1 4 f i q , 另一组 是6 个状态寄存器,在a 跚公司的文件中它们的名称为c p s r s p s r s v c ,s p s r a b t , s p s r u n d ,s p s r - i r q 和s p s r f i q 。 这些寄存器并不是全都可以在同一时间被访问的。处理器状态和操作模式决定了程序 员可以访问哪些寄存器。这些寄存器的具体功能和访问方式如下: 1 各模式可访问的寄存器 在a r m 状态中,1 6 个通用寄存器和1 个或2 个状态寄存器可在任何时候同时被访问。 在特权模式中,与模式相关的分组寄存器可以被访问。其具体对应关系如表2 2 所示。 需要注意的是图中括号内为a t p c s ( t h ea r m t h u m bp r o c e d u r ec a l ls t a n d a r d ) 中寄存器 的命名。由a r m 公司提供的a r m 开发软件a d s l - 2 中,可以直接使用这些名称。 第8 页武汉科技大学硕士学位论文 表2 2 内部寄存器 备模式实际访闩的寄存嚣 寄存器寄存器在汇编 类别 中的名称 用户系统管理中止来定义中断快中断 r o ( a i ) r l ( a 2 )r i r 2 ( 酊)r 2 l u ( 0 4 )m r 4 ( v i )r 4 通 用 r j ( v 2 )” 寄 存 r 6 ( v 3 ) “ 器 和 l t 7 ( v 4 ) r 7 程 序 计 r s ( v 5 ,髓 r s f i q 数 器 r 9 ( s b ,v 6 )r 9 鼬且 r i o ( s l ,v 7 )r 1 0 r f o - f i q r l i ( f p ,v 8 )r l l r 1 1 f 蛔 r 1 2 ( m )r 1 2 r 1 2 q r 1 3 ( s p )r 1 3r 1 3s v cr l3a mr 1 3l 1 d r 1 3 - 岫 r l 小q r 1 4 ( l r ) r 1 4r 1 4mr 1 4 。b tr 1 4l m d r 1 4 _ 岫r j 4 6 q r 1 5 ( p c )r 1 5 c p s rc 陌r 状态 寄存器 s p s r无s p s rs v cs p s ra b ls p s ru i - ds p s r i r qs p s r q 2 一般的通用寄存器 在汇编语言中,寄存器r 0 一r 1 3 为保存数据或地址值的通用寄存器。其中寄存器r o r 7 为未分组的寄存器。这意味着对于任何处理器模式,它们中的每一个都对应于相同的3 2 位物理寄存器。它们是完全通用的寄存器,不会被体系结构作为特殊的用途,并且可以用 于任何使用通用寄存器的指令。 寄存器r 8 一r 1 4 为分组寄存器。它们所对应的物理寄存器取决于当前的处理器模式。 武汉科技大学硕士学位论文第9 页 几乎所有允许使用通用寄存器的指令都允许使用分组寄存器。 寄存器r 8 一r 1 2 有两个分组的物理寄存器。一个用于除f i o 模式之外的所有寄存器模 式( r 8 - r 1 2 ) ,另一个用于f i q 模式( r 8 一f i q r 1 2 f i q ) 。 寄存器r 8 一r 1 2 在a 跚体系结构中没有特定的用途。不过对于那些只使用r 8 一r 1 4 就足 够处理的简单中断来说,f i q 多单独使用的这些寄存器可实现快速的中断处理。 寄存器r 1 3 和r 1 4 分别有6 个分组的物理寄存器,一个用于用户和系统模式,其余的 5 个分别用于5 种异常模式。 3 堆栈指针r 1 3 寄存器r 1 3 通常作为堆栈指针s p 。在a 叫指令集中,由于没有以特殊方式使用r 1 3 的 指令或其它功能,只是习惯上都这样使用。 每个异常模式都有其自身的r 1 3 分组版本,它通常指向由异常模式所专用的堆栈。在 入口处,异常处理程序通常将其它要使用的寄存器的值保存到这个堆栈。通过返回时将这 些值重装到寄存器中,异常处理程序可确保异常发生时的程序状态不会被破坏。 4 链接寄存器r 1 4 寄存器r 1 4 ( 也称为链按寄存器或l r ) 在结构上有两个特殊的功能: 1 )在每种模式下,模式自身的r 1 4 版本用于保存子程序的返回地址。 2 )当异常发生时,将r 1 4 对应的异常模式版本设置为异常返回的地址( 有些异常 有一个小常量的偏移) 。异常返回的执行类似于子程序的返回,只是使用稍微不同的指令 来确保被异常中断的程序状态能够完全恢复。 3 )寄存器r 1 4 在其它任何时候都可作为一个通用寄存器。 5 程序计数器r 1 5 寄存器r 1 5 保存程序计数器p c ,总是用于特殊用途。在汇编指令中,它经常用于通用 寄存器r o r 1 4 所使用的位置( 即在指令编码中r 1 5 于r 0 一r 1 4 的地位一样,只是指令执行 的结果不同) ,因此可以认为它是一个通用寄存器。但是对于其使用还有许多于指令相关 的限制或特殊的情况,如果r 1 5 的使用方式超出了这些限制,那么指令将是不可预测的。 6 程序状态寄存器c p s r 和s p s r a r m 7 t 蹦i 内核包含1 个c p s r 和5 个供异常处理程序使用的s p s r 。a 哪t 蹦i 内核所有 处理器状态都保存在c p s r 中c p s r 包含: 4 个条件代码标志( 负n ,零z ,进位c 和溢出v ) 2 个中断禁止位,分别用于一种类型的中断。 5 个对应当前处理器模式进行编码的位 1 个用于指示当前执行的命令( a r m 还是t h u m b ) 的位。 每个异常模式还带有一个程序状态保存寄存器( s p s r ) ,它用于保存任务在异常发生 之前的c p s r 。c p s r 和s p s r 通过特殊指令进行访问。 第1 0 页武汉科技大学硕士学位论文 2 1 5 异常 只要正常的程序流被暂时终止,处理器就进入异常模式。例如相应一个来自外设的中 断。在处理异常之前,a r m 7 t d m i 内核保存当前的处理器状态,这样当处理器程序结束时, 可以恢复执行原来的程序。 1 进入异常 当处理异常时,a 跚7 t 叫i 内核会: 1 )在适当的l r 中保存下条指令的地址( 当前p c + 4 或p c + 8 ,取决于异常的类型) 。 2 )将c p s r 复制到适当的s p s r 。 3 )根据异常将c p s r 模式位强制设为某一值。 4 )强制p c 从相关的异常向量处取指。 5 ) 在中断异常时,置位中断禁止标志,这样可j 荮止不受控制的异常嵌套。 异常总是在 删状态中进行处理。当处理器处于t h 岫b 状态时发生了异常,在异常向 量地址装入p c 时,会自动切换到a 跚状态。 2 退出异常 当异常结束时,异常处理程序必须: 6 )将l r 中的值减去偏移量后移入p c 。偏移量根据异常的类型而有所不同。 7 )将s p s r 的值复制会c p s r 。 8 )清零在入口置位的中断标志。 3 异常向量 表2 3 列出了异常向量的地址。其中i 和f 表示先前的值。 表2 3 异常向量表 地址异常 进入时的模式进入时i 的状态 进入时f 的状态 佩0 0 0 0 0 0 复位管理禁止禁止 o x 删4 未定义指令 未定义 i f 帆删8 软件中断管理禁止 f 0 ,0 0 0 0 0 0 0 c中止( 预取)中止if o x 0 0 0 0 0 0 1 0 中止( 数据)中止 if 0 x 0 0 0 0 0 0 1 4 保留保留 0 x 0 0 0 0 0 0 1 8 i r q中断 禁止f o x 0 0 0 0 0 0 l c f i q快中断禁止禁止 武汉科技大学硕士学位论文第1 1 页 4 异常优先级 当多个异常同时发生时,一个固定的优先级系统决定它们被处理的顺序:复位( 最高 优先级) 一数据中止一f i q i r q 一预取中止一未定义指令一s w i ( 最低优先级) 有些异常不能一起发生: 未定义的指令和s w i 异常互斥。它们分别对应于当前指令的一个特定译码。 当f i q 使能,并且在发生f i q 的同时产生了一个数据中止,内核进入数据中止 处理程序,然后立即跳转到f i q 向量。从f i q 的正常返回使数据中止处理程序恢复执行。 数据中止的优先级必须高于f i q ,以确保数据转移错误不会被漏过。 2 1 6 复位 当n r e s e t 信号被拉低时( 一般外部复位引脚电平的变化和芯片的其它复位源会改变 这个内核信号) ,a r m 7 t 叫i 处理器放弃正在执行的指令。 当n r e s e t 信号再次变为高电平时。a 跳处理器执行下列操作: 强制m 4 :o 变为b 1 0 0 1 1 ( 管理模式) ; 置位c p s r 中的i 和f 位; 清零c p s r 中的t 位; 强制p c 从地址o x 0 0 开始对下一条指令进行取址; 返回到a 跚状态并恢复执行。 在复位后,除p c 和c p s r 之外的所有寄存器的值都不确定。 2 2 硬件系统设计 一个嵌入式处理器自己是不能独立工作的,必须给它供电,加上时钟信号,提供复位 信号,如果芯片没有片内存储器,则还要加上存储器系统,然后嵌入式处理器芯片才可能 工作。 l p c 2 2 9 0 是基于一个支持实时仿真和跟踪的1 6 3 2 位a 跚7 t 阴i s 飞p u 。对代码规模有 严格控制的应用可使用1 6 位t h u b 模式将代码规模降低超过3 0 ,而性能的损失却很小。 由于l p c 2 2 9 0 的1 4 4 脚封装、极低的功耗、多个3 2 位定时器、8 路1 0 位a d c 、2 路 c a n 、p 州通道以及多达9 个外部中断使它们特别适用于汽车、工业控制应用以及医疗系 统和容错维护总线。通过配置总线,l p c 2 2 9 0 最多可提供7 6 个g p i o 。嘲 第1 2 页武汉科技大学硕士学位论文 2 3 2 电源设计 根据l p c 2 2 9 0 的技术手册,此芯片需要的电压如表2 4 所示: 表2 4i 肛2 2 9 0 所需电压 电压类型用途 v 3 3 a 引脚用模拟电源 v 3 3 d 引脚用数字电源 v 1 8 a 内核用模拟电源 v 1 8 d 内核用数字电源 从表中可以看出,l p c 2 2 9 0 所需电源的种类较多,引脚与内核不同,模拟与数字也不 相同。但是,考虑到l p c 2 2 9 0 所带的a d 功能不强,其可转换的电压范围较小,实际应用 中作用不大。所以,模拟电源和数字电源将采用同一组电源信号,以简化供电电路的设计。 另一方面,通过技术手册可知,l p c 2 2 9 0 微控制器1 8 v 消耗电流的极限值为7 0 i i i a 。 为了能够保证电源的可靠性并为以后电路的升级留下余量,则设定电源系统i 8 v 能够提 供的电流在3 0 0 i i l a 以上。同样,设定整个系统3 3 v 电源所提供的电流需在6 0 0 n l a 以上。 在了解了功率消耗以后,需要选择合适的器件。因为系统对这两组电压的要求比较高, 特别是对于误差的要求。同时整个电路的功耗不是很大,所以考虑使用低压差模拟电源 ( l d o ) 。合乎技术参数的l d o 芯片很多,在这里选择的是s p x i l l 7 。 s p x l l l 7 为一个低功耗正向电压调节器,其可以用在一些高效率,小封装的低功耗设 计中。这款器件非常适合便携式电脑及电池供电的应用。s p x l l l 7 有很低的静态电流,在 满负载时其低压差仅为1 1 v 。当输出电流减少时,静态电流随负载变化,并提高效率。 s p x i l l 7 可调节,以选择1 5 v ,1 8 v ,2 5 v ,2 8 5 v ,3 o v ,3 3 v 及5 v 的输出电压。s p x l l l 7 提供多种3 引脚封装:s o r r 一2 2 3 ,t o - 2 5 2 ,t o - 2 2 0 及t o - 2 6 3 。一个l o u f 的输出电容可有效地 保证稳定性,然而在大多数应用中,仅需一个更小的2 2 u f 电容。 还需要考虑的一点是,尽管s p x i l l 7 允许的输入电压可达2 0 v ( 参考芯片的数据手册) , 但太高的电压使芯片的发热量上升,将会影响芯片的性能。这样,就需要采用分级设计的 方法,将供电电路分为两级,如图2 1 所示。第一级的电压输出为5 v ,第二级的电压输出 为3 v 和1 8 v 。 武汉科技大学硕士学位论文第1 3 页 图2 i 两级供电 选择5 v 作为前极的输出有三个原因: 这个电压满足s p x l l l 7 的要求; 目前很多器件还是需要5 v 供电的,这个5 v 可以兼作前极和末级; 市场上5 v 的供电电源非常普遍,必要的时候可以直接用外部5 v 电源给第二级供 电。 2 3 3 复位及芯片配置设计 复位电路可以使用简单的阻容复位,如图2 2 所示。这个电路成本低廉,基本上可以 忽略不计。但它不能保证任何情况下均能产生稳定可靠的复位信号,所以绝大多数场合都 会采用专门的复位芯片来产生复位信号“”。 3 3 v 图2 2 阻容复位 第1 4 页武汉科技大学硕士学位论文 常用的复位专用芯片有c a t a l y s t 公司的c a t 8 0 0 系列,s i p e x 公司的s p 7 0 0 系列和 s p 8 0 0 系列。为了适应嵌入式系统的应用,这些公司还推出了带有e e p r o m 存储器和看门狗 的复位芯片,这可以降低系统成本和缩小产品体积,减少元件的数量也有利于系统的稳定 性。 选择复位芯片应注意以下几点: 复位芯片的复位门槛电压,一般应当选择微控制器的i o 口供电电压范围为标准; 芯片是否支持手动复位,高电平有效或是低电平有效; 芯片的抗干扰性能( 主要是抵抗电压毛刺干扰) 。 我们选择使用的复位芯片是c a t l 0 2 5 ,它具有以下特点: 具有2 k 字节e e p r o m 存储器,采用i z c 总线接口; 具有高,低电平复位信号。k 低至1 v 时复位仍然有效; 手动复位输出。 另一方面,微控制器在复位后可能有多种初始状态。具体复位到哪种出示状态是在复 位的过程中决定的。复位逻辑可能通过片内只读存储器中的数据决定具体的初始状态,但 更多的是通过复位期间的引脚状态决定,也可通过两者共同决定。用引脚状态配置复位后 的初始状态没有统一的方法,需要根据相关芯片的手册决定。 对于l p c 2 2 9 0 来说,采用的是依靠复位时引脚的状态来决定初始化状态。具体见图2 3 ( 具体的状态可参考技术手册) 。 p 2 2 6 与 器的来 p 1 3 1 p 1 2 6 作为调试端口 图2 3 与初始化有关的引脚 用 口 武汉科技大学硕士学位论文第1 5 页 2 3 4 存储器系统设计 由图2 5 可看出。l p c 2 2 9 0 内部集成了1 6 k 字节的静态r a l ,地址为0 x 4 0 0 00 0 0 0 到 0 x 4 0 0 10 0 0 0 ,同时l p c 2 2 9 0 芯片预留了四组外部存储器接口,这四组外部存储器接口分 别对应芯片的四个片选引脚( c s 0 - c s 3 ) 。 基于这四个存储器接口,我们选择三种存储介质来组成存储系统,它们分别是:ps r a m ,n o rflas h ,n a n dfl as h 。同时,还包括片内集成的静态r a m 。这几种存储介质的功能以及在系统中的作用如下: 片内静态r a m :即普通的r a m ,易失性存储器。由于其处于芯片内部,读写 速度要比外部存储器接口处的ram 速度快。所以,根据这一特性,将其作为程序执行时, 芯片各个工作模式所需要的栈空间。 psr a m ( 伪随机静态存储器) :易失性存储器,读写速度与普通的r a m 相比 稍慢一些,但是由于生产时采用了特殊的工艺,使其具有单位成本低,体积小的特点,容 易在一块芯片上达到很大的容量。在存储系统中,把它作为程序运行时的存储空间。 norf lash :非易失性存储器,其特点是具有完整的数据线以及地址线 从而可以支持程序的在线执行。但是,由于生产工艺的问题,单位成本较高,单片难以集 成很大的容量。其在存储系统中的作用是:中转程序的存储和执行处。 nandfla s h :非易失性存储器,与n o r fl as h 不同的是不支 持程序的在线执行。且这种flash 的数据,地址,命令都使用同一组总线,所以,对 它的读写需要有程序控制,也即需要驱动程序。但是由于于no r f lash 工艺不同, 单位成本很低,单片容量可以很大。根据上述特点,其在系统中的作用是:存储所有程序 的执行镜像( 中转程序除外) 以及掉电后需要保存的数据。 第1 6 页武汉科技大学硕士学位论文 系统上屯后,n o rf l a s h 中的中转程序耨 主程序的可执行镜像拷贝到此然后中转 程序跳转到p s r a m ,c p u 从此处取指,开 始执行主程序掉电后程序丢失 片内r a m 主程序开始瓴行后,作为 堆栈,于主程序进行数据 的交换。掉电后数据丢失 图2 4 存储系统工作示意 根据上面的安排所构成的存储系统,在程序执行时存储系统各芯片的关系如图2 4 所 示。 还需要考虑到的一点是,此处所使用的三重片外存储器占据了lp c 2290 的三个 片选信号,只剩一个片选信号留给其它外设,影响了系统的可扩展性。所以,在存储系统 中,可以考虑增加一个译码芯片,通过使用一个或两个片选信号与几个地址信号相结合译 码产生的信号作为存储器的片选,这榉做虽然会影晌存储系统的容量,但增加了系统的可 扩展性。这种存储容量与可扩展性之问的矛盾,需要根据世纪的情况权衡决定。其具体细 节就不详细介绍了。 武汉科技大学硕士学位论文第1 7 页 4 o g b 3 。7 5 g b 3 5 g b 3 o g b a h b 外设 v p b 岁b 设 保留地址空间 外部存储器b a n k 3 外部存储器h a n k 2 外部存储器b a n k i 外部存储器b a n k 0 b o o t 块 保留地址空问 1 6 k 字节片内静态r a m 保留地址空间 图2 5l p c 2 2 9 0 地址映射 2 3 5 时钟设计以及调试与测试接口设计 仍【f f f ff i 下f 0 x f 0 0 00 0 0 0 o ) c e f f f f f f f 0 x e 0 0 00 0 0 0 岫f f ff f f f 0 x 蝴0 0 0 0 0 ,【8 3 f ff f f f o x 8 3 0 00 0 0 0 o x 8 2 f ff f f f o x 8 2 0 00 0 0 0 0 x 8 l f ff f f f 0 x 8 1 0 0 0 0 o x 8 0 f ff f f f o x 8 0 0 00 0 0 0 0 x 7 f f ff f f 0 ,【7 f f f e o 敷7 f f fd f f f 0 ,4 0 0 l0 0 0 0 0 x 4 0 0 03 f f f 0 x 4 0 0 00 0 0 0 o x 3 f f ff f f 0 】0 c 啪o o 时钟系统和调试与测试接口在现代的嵌入式系统中是必不可少的一部分,正因为如 此,绝大多数的嵌入式处理器都将这些功能集成在芯片之中。以l p c 2 2 9 0 为例,其芯片内 部已经集成了晶体振荡器,同时也提供了专门
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工地小工劳务合同模板5篇
- 2025便利店商品采购合同模板
- 2025个人信用借款担保合同
- 2025版劳动合同书(愿)
- 2025中外合作开发合同(中国)
- 2025深圳市公益事业捐赠合同
- 合同有效期内权益确保承诺书9篇范文
- 农业种质资源共享与使用合同书
- 公司廉洁自律合规经营承诺函9篇
- 采购合同模板及审批流程规范
- 义务教育信息科技课程标准(2022年版)解读
- 空调维保项目进度保障计划
- 既有建筑混凝土结构改造设计规范DBJ-T 15-182-2020
- 放射科室风险评估报告
- 各类组织架构图课件
- 创伤性窒息护理课件
- 人口老龄化对寿险产品需求结构的影响
- 最常用2000个英语单词-电子表格版
- 《解决方案营销》节选版
- 秋季慢性病知识讲座
- 2024年全国高考体育单招考试语文试卷试题(含答案详解)
评论
0/150
提交评论