LOGO第1.1节嵌入式系统概述嵌入式系统的概念嵌入式系统(EmbeddedSystem)是以应用为中心,以计算机技术为基础,并且软硬件可剪裁,适用于对功能、可靠性、成本、体积及功耗等有严格要求的专用计算机系统。嵌入式应用软件嵌入式操作系统嵌入式硬件平台嵌入式处理器嵌入式外设一般而言,整个嵌入式系统的体系结构可以分为4个部分:●嵌入式处理器●嵌入式外围设备●嵌入式操作系统●嵌入式应用软件嵌入式系统概述嵌入式系统与单片机联系:重量级的单片机可视为嵌入式系统。或者说,单片机是嵌入式系统的前身,嵌入式系统是增强型的单片机。区别:在处理能力、存储空间、操作系统、开发及调试方面均有区别:比较内容单片机嵌入式系统硬件资源结构相对固定结构因需求的不同而有很大的不同操作系统早期没有操作系统,后期也只支持简单小型的。一定会有操作系统编程语言早期完全用汇编,后期开始采用C语言。可以采用C/C++、J2ME、汇编等。开发过程开发效率不高,特别是下载采用真正的交叉开发环境,开发效率高。嵌入式微处理器嵌入式系统的核心是嵌入式微处理器(MicroProcessorUnit,MPU)。嵌入式微处理器一般具有以下特点:●实时和多任务处理能力在限定时间内完成多个任务,要求MPU执行代码时间尽可能短。●集成度高嵌入式微处理器把通用处理器中许多由辅助设备完成的任务集成到芯片内,这样有利于嵌入式系统设计的小型化。●低功耗嵌入式设备不具有长时间不间断的电源供应(便携式设备等),所以要求先进的嵌入式微处理器的功耗在mW甚至uW级。嵌入式系统的特点●面向特定应用嵌入式系统的设计和开发必须要考虑特定环境和系统要求。●多种技术相结合将先进计算机技术、半导体技术和电子技术与各个行业的具体应用相结合,也是软件和硬件紧密结合的产物。●软硬件高效剪裁嵌入式系统的软/硬件都必须高效率地设计,量体裁衣、去除冗余,力争在相同的资源条件下实现更高的性能。●高执行速度和高可靠性为了提高系统的执行速度和可靠性,嵌入式系统的软件一般固化在存储器芯片中,而不是存储在外加磁盘等载体中。嵌入式系统的发展●无操作系统阶段嵌入式系统最初的应用是基于单片机的,一般没有操作系统的支持。这些设备虽然已经具有了嵌入式的应用特点,但因为仅仅使用了8位CPU芯片,功能还不丰富。●简单操作系统阶段20世纪80年代,随着微电子工艺水平的提高,IC制造商开始把嵌入式应用中所需要的微处理器、I/O口、串口及RAM、ROM等部件集成到一片VLSI中。与此同时,嵌入式系统程序员开始基于一些简单的“操作系统”开发嵌入式应用软件。●嵌入式操作系统阶段20世纪90年代,在分布控制、数字通信和信息家电等巨大需求的带动下,嵌入式系统进一步飞速发展。随着硬件实时性要求的提高,嵌入式系统的软件规模也在不断扩大,逐渐形成了多任务操作系统(RTOS),并开始成为嵌入式系统的主流。●面向网络应用阶段将嵌入式系统应用到各种网络环境中是一种必然的趋势。嵌入式操作系统的概念嵌入式操作系统是一种支持嵌入式系统应用的操作系统软件,它是嵌入式系统的重要组成部分。嵌入式操作系统具有通用操作系统的基本特点,能够有效管理复杂的系统资源,完成进程管理、处理器调度、存储管理、设备管理、中断处理等操作系统任务。它通常包括与硬件相关的低层驱动软件、系统内核、通信协议、图形界面等软件模块,也能提供库函数、工具集以及应用程序。嵌入式操作系统的分类●从应用角度分(1)通用型实际应用时需要定制。如linux、VxWorks、WindowsCE等。(2)专用型为某种环境专门设计,在具体应用时不需要剪裁或少量剪裁。如SmartPhone、PocketPc、Symbian等。●按实时性分(1)实时型主要面向通信和控制等领域,如:风河公司的VxWorks、ISI公司的pSOS、QNX系统软件公司的QNX、ATI的Nucleus等。(2)非实时型主要是消费类电子产品,如:数字助理(PDA)、移动电话、机顶盒等。微软面向手机应用的SmartPhone操作系统就是典型的非实时嵌入式操作系统。嵌入式操作系统介绍系统的实时性需要软硬件协作支持,操作系统只是其中一部分,它可以帮助创建实时系统,但不能把一个系统变成实时系统。硬实时:保证关键任务按时完成,没有绝大多数高级操作系统的功能,因为这些功能常常将用户与硬件分开,导致难以估计操作所需时间。这种嵌入式操作系统通常没有虚拟内存。软实时:关键任务的优先级要高于其他任务优先级,且在完成之前能保持其高优先级。可抢占型:内核可以抢占正在运行任务的CPU使用权,并将使用权交给进入就绪状态的优先级更高的任务。这类操作系统有:Linux、VxWorks、WindowsCE。不可抢占型:在某个任务运行时,就把CPU的控制权完全交给这个任务,直到它主动把CPU的控制权交出。一个任务的最长执行时间不能确定,所以系统的实时性也就大打折扣。嵌入式操作系统的特点●可定制性嵌入式操作系统一般需要提供可添加或可裁减的内核及其他功能。●可移植性支持尽可能多的微处理器,使用户具有硬件选择的灵活性。●实时性嵌入式操作系统在设计时,目标在于满足基本的实时性要求,而不强求特别高的实时性。比如:WinCE能够满足95%的嵌入式系统的实时性要求。●低资源占有性与普通PC机相比,嵌入式设备一般都配置少量RAM、很小的永久存储空间等。系统资源少的特点决定了嵌入式操作系统必须尽可能地减小资源占有率。高性能的微内核、友好的开发调试环境、广泛的运行支持WindRiver爱国者导弹导航系统、火星探测器EmbeddedLinux开放源代码、软实时(现已加入一些硬实时特征)、多任务------工业控制和手机WindowsCE多线程、多任务的操作系统,模块化设计思想方便开发人员进行系统定制(成本高)Microsoft从掌上电脑到专用的工业控制Symbian由爱立信、诺基亚、摩托罗拉等共同出资,以开发和供应先进、开放以及标准的手机操作系统SymbianOS为目标Symbian手机WindowsXPEmbedded桌面WindowsXP的嵌入式版本,可剪裁。Microsoft工业控制和ATM等有交流电源的环境PalmOS它有开放的操作系统应用程序接口(API),开发商可以根据需要自行开发所需要的应用程序3Com公司PDALOGO第1.3节先修课程先修课程●硬件类《汇编语言》《模拟电子电路》《数字逻辑与数字电路》《计算机组成原理》《计算机体系结构》●软件类《C语言程序设计》《数据结构》《计算机操作系统》●参考书籍《WindowsCE实用开发技术》张冬泉等著电子工业出版社《WindowsCE.net内核定制及应用开发》周毓林等著电子工业出版社《WindowsCE嵌入式系统》何宗键著北京航空航天大学出版社《ARM体系结构与编程》杜春雷著清华大学出版社LOGO