嵌入式系统概述 1.嵌入式系统 2.嵌入式处理器 3.嵌入式操作系统 1.1 嵌入
式系统 • 概述 经过几十年的发展,嵌入式系统已经在很大程度 改变了人们的生活、工作和娱乐方式,而且这些改变 还在加速。嵌入式系统具有无数的种类,每类都具有 自己独特的个性。例如,MP3、数码相机与打印机就 有很大的不同。汽车中更是具有多个嵌入式系统,使 汽车更轻快、更干净、更容易驾驶。 • 现实中的嵌入式系统 即使不可见,嵌入式系统也无处不在。嵌入式系 统在很多产业中得到了广泛的应用并逐步改变着这些 产业,包括工业自动化、国防、运输和航天领域。例 如神州飞船和长征火箭中肯定有很多嵌入式系统,导 弹的制导系统也是嵌入式系统,高档汽车中也有多达 几十个嵌入式系统。 在日常生活中,人们使用各种嵌入式系统,但未 必知道它们。事实上,几乎所有带有一点“智能”的 家电(全自动洗衣机、电脑电饭煲…)都是嵌入式系 统。嵌入式系统广泛的适应能力和多样性,使得视听、 工作场所甚至健身设备中到处都有嵌入式系统。 • 现实中的嵌入式系统 • 嵌入式系统的概念 目前,对嵌入式系统的定义多种多样,但没有一 种定义是全面的。下面给出两种比较合理定义: ●从技术的角度定义:以应用为中心、以计算机技 术为基础、软件硬件可裁剪、适应应用系统对功能、 可靠性、成本、体积、功耗严格要求的专用计算机 系统。 ●从系统的角度定义:嵌入式系统是设计完成复杂 功能的硬件和软件,并使其紧密耦合在一起的计算 机系统。术语嵌入式反映了这些系统通常是更大系 统中的一个完整的部分,称为嵌入的系统。嵌入的 系统中可以共存多个嵌入式系统。 • 嵌入式系统示例 ——汽车控制系统 • 嵌入式系统示例 ——汽车控制系统 前车门控 制系统 发动器控 制系统 后车门控 制系统 尾灯控制 系统 所有的控 制系统都 是一个完 整的嵌入 式系统 马达 座椅控制 系统 控制器 车灯 • 嵌入式系统的未来 早在1990年之前,嵌入式系统通常是很简单的且 具有很长的产品生命周期的自主设备。近些年来,嵌 入式工业经历了巨大的变革。 个 月。
产品市场窗口现在预计翻番的周期狂热到6~9
互联现在是一个需求而不是辅
全球重新定义市场的机会和膨胀的应用空间。
助性的,包括用有 线和刚刚显露头角的无线技术。 嵌入式系统产生新的依赖网络基础设施的应 用。
基于电子的产品更复杂化。 互联
微处理器的处理能力按莫尔定律
(Moore’s L aw) 预计的速度在增加。该定律认为集成电路和晶体管 个数每18
个月翻一番。 嵌入式系统概述 1.嵌入式系统 2.嵌入式处理器 3.嵌入式操作
系统 • 简介 早期的嵌入式系统通常使用普通个人计算机(PC) 中的通用处理器。近年来,随着大量先进的微处理器 制造技术的发展,越来越多的嵌入式系统用嵌入式处 理器建造,而不是用通用目的的处理器。 这些嵌入式 处理器可以大致分为以下几类: 嵌入式处理器的尺寸、能耗和价格。应用于 PDA等不注重计算的设备; 理器的性能。应用于路由器等计算 密集型的设备;
注重
注重嵌入式处
注重嵌入式处理器的性能、尺寸、
能耗和价格。 应用于蜂窝电话等设备; 1.2 嵌入式处理器 • 分类 嵌入式处理器可以分为以下几大类:
嵌入式微处理器;
嵌入式微控制器;
嵌入式DSP处理器;
嵌入
式片上系统(SOC)。 • 嵌入式微处理器 嵌入式微处理器的基础是通用计算机中的CPU。在应用中,将 微处理器装配在专门设计的电路板上,只保留和嵌入式应用有关的 母板功能,这样可以大幅度减小系统体积和功耗。为了满足嵌入式 应用的特殊要求,嵌入式微处理器虽然在功能上和标准微处理器基 本是一样的,但在工作温度、抗电磁干扰、可靠性等方面一般都做 了各种增强。 和工业控制计算机相比,嵌入式微处理器具有体积小、重量轻、 成本低、可靠性高的优点,但是在电路板上必须包括ROM、RAM、 总线接口、各种外设等器件,从而降低了系统的可靠性,技术保密 性也较差。嵌入式微处理器及其存储器、总线、外设等安装在一块 电路板上,称为单板计算机。如STD-BUS、PC104等。 ROM RAM 外设1 CPU 外设2 单板计算机 • 嵌入式微控制器 嵌入式微控制器又称单片机,它是将整个计算机系统集成到一 块芯片中。嵌入式微控制器一般以某一种微处理器内核为核心,芯 片内部集成ROM/EPROM、RAM、总线、总线逻
辑、定时/计数器、 WatchDog、I/O、串行口、脉宽调制输出、A/D、D/A、Flash RAM、 EEPROM等各种必要功能和外设。为适应不同的应用需求,一般一 个系列的单片机具有多种衍生产品,每种衍生产品的处理器内核都 是一样的,不同的是存储器和外设的配臵及封装。这样可以使单片 机最大限度地和应用需求相匹配,功能不多不少,从而减少功耗和 成本。 和嵌入式微处理器相比,微控制器的最大特点是单片化,体积 大大减小,从而使功耗和成本下降、可靠性提高。微控制器是目前 嵌入式系统工业的主流。微控制器的片上外设资源一般比较丰富, 适合于控制,因此称微控制器。 嵌入式微控制器目前的品种和数量最多,比较有代表性的通用 系列包括8051、P51XA、MCS-
251、MCS-96/196/296、C166/167、 MC68HC05/11/12/16、68300、数目众多ARM芯片等。目前MCU 占嵌入式系统约70%的市场份额。 • 嵌入式DSP处理器 DSP处理器对系统结构和指令进行了特殊设计,使其适合于执行 DSP算法,编译效率较高,指令执行速度也较高。在数字滤波、FFT、 谱分析等方面DSP算法正在大量进入嵌入式领域,DSP应用正从在通 用单片机中以普通指令实现DSP功能,过渡到采用嵌入式DSP处理器。 嵌入式DSP处理器比较有代表性的产品是Texas Instruments的 TMS320系列和Motorola的DSP56000 系列。TMS320系列处理器包括 用于控制的 C2000系列,移动通信的C5000系列,以及性能更高的 C6000和C8000系列。DSP56000目前已经发展成为DSP56000, DSP56100,DSP56200和DSP56300等几个不同系列的处理器。另外 PHILIPS公司近年也推出了基于可重臵嵌入式DSP结构低成本、低功 耗技术上制造的R. E. A. L DSP处理器,特点是具备双Harvard结构和 双乘/累加单元,应用目标是大批量消费类产品。 • 嵌入式片上系统(SOC) 随着EDA的推广和VLSI设计的普及化及半导体工艺的迅速发展, 在一个硅片上实现一个更为复杂的系统的时代已来临,这就是 System On Chip(SOC)。 从狭义角度讲,它是信息系统核心的芯片集成,是将系统的关
键 部件集成在一块芯片上;从广义角度讲, SoC是一个微小型系统,如果 说中央处理器(CPU)是大脑,那么SoC就是包括大脑、心脏、眼睛和 手的系统。国内外学术界一般倾向将SoC定义为将微处理器、模拟IP 核、数字IP核和存储器(或片外存储控制接口)集成在单一芯片上,它 通常是客户定制的,或是面向特定用途的标准产品 注:IP核(Intellectual Property core)是一段具有特定电路功能 的硬件描述语言程序,该程序与集成电路工艺无关,可以移植到不 同的半导体工艺中去生产集成电路芯片。 嵌入式系统概述 式系统
2.嵌入式处理器
1.嵌入
3.嵌入式操作系统 1.3 嵌入式操作系统 • 概述 计算机系统
由硬件和软件组成,在发展初期没有 操作系统这个概念,用户使用监控程序来使用计算机。 随着计算机技术的发展,计算机系统的硬件、软件资 源也愈来愈丰富,监控程序已不能适应计算机应用的 要求。于是在六十年代中期监控程序又进一步发展形 成了操作系统(Operating System)。发展到现在,广泛 使用的有三种操作系统即多道批处理操作系统、分时 操作系统以及实时操作系统。 1.3 嵌入式操作系统 • 概述 适用于计算中心等较大 的计算机系统 适用于多个用户共享系 统资源 适用于嵌入式设备和有 实时性要求的系统中 实时操作系统是我 们介绍的重点 多道批处理操作系统 监 控 程 序 操 作 系 统 分时操
作系统 实时操作系统 时 间 先 后 1.3 嵌入式操作系统 • 实时操作系统的特点 IEEE 的实时UNIX分委会认为实时操作系统应具 备以下的几点: 中断延迟时间确定
优先级中断和调度
抢占式调度
异步的事件响应 内存锁定
切换时间和
同步
连续文件
1.3 嵌入式操作系统 总的来说实时操作系统是事件驱动的,能对来自 外界的作用和信号在限定的时间范围内作出响应。它 强调的是实时性、可靠性和灵活性, 与实时应用软件相 结合成为有机的整体起着核心作用, 由它来管理和协调 各项工作,为应用软件提供良好的运行软件环境及开发 环境。 从实时系统的应用特点来看实时操作系统可以分 为两种:一般
实时操作系统和嵌入式实时操作系统。 1.3 嵌入式操作系统 一般实时操作系统应用于实时处理系统的上位机 和实时查询系统等实时性较弱的实时系统,并且提供 了开发、调试、运用一致的环境。 嵌入式实时操作系统应用于实时性要求高的实时 控制系统,而且应用程序的开发过程是通过交叉开发 来完成的,即开发环境与运行环境是不一致。嵌入式 实时操作系统具有规模小(一般在几K~几十K 内)、可 固化使用、实时性强(在毫秒或微秒数量级上)的特点 。 1.3 嵌入式操作系统 • 基本概念 ——前后台系统 对基于芯片的开发来说,应用程序一般是一个无 限的循环,可称为前后台系统或超循环系统。 很多基于微处理器的产品采用前后台系统设计, 例如微波炉、电话机、玩具等。在另外一些基于微处 理器应用中,从省电的角度出发,平时微处理器处在 停机状态,所有事都靠中断服务来完成。 • 基本概念 循环中调用 相应的函数完成 相应的操作,这 部分可以看成后 台行为,后台也 可以叫做任务级。 这种系统在处理 的及时性上比实 际可以做到的要 差。 ——前后台系统 后台 前台 中断服务程 序处理异步事件, 这部分可以看成 前台行为,前台 也叫中断级。时 间相关性很强的 关键操作一定是 靠中断服务程序 来保证的。 中断服务程序 时 间 ISR ISR ISR ISR 1.3 嵌入式操作系统 • 基本概念 ——操作系统 操作系统是计算机中最基本的程序。操作系统负 责计算机系统中全部软硬资源的分配与回收、控制与 协调等并发的活动;操作系统提供用户接口,使用户 获得良好的工作环境;操作系统为用户扩展新的系统 功能提供软件平台。 用户程序 操作系统 硬件驱动 硬件 1.3 嵌入式操作系统 • 基本概念 ——实时操作系统(RTOS) 实时操作系统是一段在嵌入式系统启动后首先执 行的背景程序,用户的应用程序是运行于RTOS之上的 各个任务,RT
OS根据各个任务的要求,进行资源(包 括存储器、外设等)管理、消息管理、任务调度、异常 处理等工作。在RTOS支持的系统中, 每个任务均有 一个优先级,RTOS根据
各个任务的优先级,动态地切 换各个任务,保证对实时性的要求。 1.3 嵌入式操作系统 • 基本概念 ——内核 多任务系统中,内核负责管理各个任务,或者说 为每个任务分配CPU时间,并且负责任务之间的通信。 内核提供的基本服务是任务切换。使用实时内核可以 大大简化应用系统的设计,是因为实时内核允许将应 用分成若干个任务,由实时内核来管理它们。内核需 要消耗一定的系统资源,比如2%~5%的CPU运行时 间、RAM和ROM等。 内核提供必不可少的系统服务,如信号量、消息 队列、延时等。 1.3 嵌入式操作系统 • 基本概念 ——调度 调度是内核的主要职责之一。调度就是决定该轮 到哪个任务运行了。多数实时内核是基于优先级调度 法的。每个任务根据其重要程序的不同被赋予一定的 优先级。基于优先级的调度法指CPU总是让处在就绪 态的优先级最高的任务先运行。然而究竟何时让高优 先级任务掌握CPU的使用权,有两种不同的情况,这 要看用的是什么类型的内核,是非占先式的还是占先 式的内核。 1.3 嵌入式操作系统 • 基本概念 ——非占先式内核 非占先式内核要求每个任务自我放弃CPU 的所有 权。非占先式调度法也称作合作型多任务,各个任务 彼此合作共享一个CPU。异步事件还是由中断服务来 处理。中断服务可以使一个高优先级的任务由挂起状 态变为就绪状态。但中断服务以后控制权还是回到原 来被中断了的那个任务,直到该任务主动放弃CPU的 使用权时,另一个高优先级的任务才能获得CPU的使 用权。 1.3 嵌入式操作系统 • 基本概念 ——占先式内核 当系统响应时间很重要时,要使用占先式内核。 因此绝大多数商业上销售的实时内核都是占先式内核。 最高优先级的任务一旦就绪,总能得到CPU的控制权。 当一个运行着的任务使一个比它优先级高的任务进入 了就绪状态,当前任务的CPU使用权就被剥夺了,或 者说被挂起了,那个高优先级的任务立刻得到了CPU 的控制权。如果是中断服务子程序使一个高优先级的 任务进入就绪态,中断完成时,中断了的任务被挂起, 优先级高的任务开始运行。 1.3 嵌入式操作系统 • 基本概念 ——任务优先级 任务的优先级是表示任务被调度的优先程度。每 个任务都具有优先级。任务越重要,赋予的优先级
应 越高,越容易被调度而进入运行态。 1.3 嵌入式操作系统 • 基本概念 ——中断 中断是一种硬件机制,用于通知CPU有
个异步事 件发生了。中断一旦被识别,CPU保存部分(或全部) 上下文即部分或全部寄存器的值,跳转到专门的子程 序,称为中断服务子程序(ISR)。中断服务子程序做 事件处理,处理完成后,程序回到: 1. 在前后台系统中,程序回到后台程序; 2. 对非占先式内核而言,程序回到被中断了的任务; 3. 对占先式内核而言,让进入就绪态的优先级最高 的任务开始运行。 1.3 嵌入式操作系统 • 基本概念 ——中断 任务 A ISR 任务 任务 B 任务 C 前后台系统 ISR 任务 A 任务 B 任务 C ISR 非占先操作系统 占先操作系统 1.3 嵌入式操作系统 • 基本概念 ——时钟节拍 时钟节拍是特定的周期性中断。这个中断可以看 作是系统心脏的脉动。中断之间的时间间隔取决于不 同应用,一般在10ms到200ms之间。时钟的节拍式中 断使得内核可以将任务延时若干个整数时钟节拍,以 及当任务等待事件发生时,提供等待超时的依据。时 钟节拍率越快,系统的额外开销就越大。 1.3 嵌入式操作系统 • 使用实时操作系统的必要性 嵌入式实时操作系统在目前的嵌入式应用中用得 越来越广泛,尤其在功能复杂、系统庞大的应用中显 得愈来愈重要。在嵌入式应用中,只有把CPU嵌入到 系统中,同时又把操作系统嵌入进去,才是真正的计 算机嵌入式应用。使用实时操作系统主要有以下几个 因素: 了系统的可靠性。
提高了开发效率,缩短了开发周期。
嵌入式实时操作系统提高嵌入式实时操作系统充分发
挥了32位CPU的多任务潜力。 1.3 嵌入式操作系统 • 实时操作系统的优缺点 优点:在嵌入式实时操作系统环境下开发实时应用程序 使程序的设计和扩展变得容易,不需要大的改动就可以增 加新的功能。通过将应用程序分割成若干独立的任务模块, 使应用程序的设计过程大为简化;而且对实时性要求苛刻 的事件都得到了快速、可靠的处理。通过有效的系统服务, 嵌入式实时操作系统使得系统资源得到更好的利用。 缺点:但是,使
用嵌入式实时操作系统还需要额外的 ROM/RAM开销,2~5%的CPU额外负荷,以及内核的费 用。 1.3 嵌入式操作系统 • 常见的嵌入式操作系统 ——嵌入式Linux uClinux是一个完全符合GNU/GPL公约的操作系统, 完全开放代码。uClinux从Linux 2.0/2.4内核派生而来, 沿袭了主流Linux的绝大部分特性。它是专门针对没有 MMU的CPU,并且为嵌入式系统做了许多小型化的工 作。适用于没有虚拟内存或内存管理单元(MMU)的处 理器,例如ARM7TDMI。它通常用于具有很少内存或 Flash的嵌入式系统。它保留了Linux的大部分优点:稳 定、良好的移植性、优秀的网络功能、完备的
对各种 文件系统的支持、以及标准丰富的API等。 1.3 嵌入式操作系统 • 常见的嵌入式操作系统 ——Win CE Windows CE是微软开发的一个开放的、可升级的 32位嵌入式操作系统,是基于掌上型电脑类的电子设 备操作,它是精简的Windows 95。Windows CE的图形 用户界面相当出色。Win CE具有模块化、结构化和基 于Win32应用程序接口以及与处理器无关等特点。Win CE不仅继承了传统的Windows图形界面,并且在Win CE平台上可以使用Windows 95/98上的编程工具(如 Visual Basic、Visual C++等)、使绝大多数的应用软件 只需简单的修改和移植就可以在Windows CE平台上继 续使用。 1.3 嵌入式操作系统 • 常见的嵌入式操作系统 ——VxWorks VxWorks操作系统是美国 公司于 1983年设计开发的一种嵌入式实时操作系统(RTOS), 是嵌入式开发环境的关键组成部分。良好的持续发展 能力、高性能的内核以及友好的用户开发环境,在嵌 入式实时操作系统领域占据一席之地。它以其良好的 可靠性和卓越的实时性被广泛地应用在通信、军事、 航空、航天等高精尖技术及实时性要求极高的领域中, 如卫星通讯、军事演习、弹道制导、飞机导航等,甚 至在1997年4月登陆火星表面的火星探测器上也使用到 了VxWorks。 1.3 嵌入式操作系统 • 常见的嵌入式操作系统 ——μC/OS-II μC/OS-II是一个源码公开、可移植、可固化、可 裁剪、占先
式的实时多任务操作系统。其绝大部分源 码是用ANSI C写的,使其可以方便的移植并支持大多 数类型的处理器。μC/OS-II通过了联邦航空局(FAA) 商用航行器认证。自1992年问世以来,μC/OS-II已经 被应用到数以百计的产品中。μC/OS-II占用很少的系 统资源,并且在高校教学使用是不需要申请许可证。
因篇幅问题不能全部显示,请点此查看更多更全内容