嵌入式系统复习提纲
1. 嵌入式系统的含义、特点,嵌入式系统软件特征。 2. 简单介绍嵌入式系统的开发方法。
3. 什么是嵌入式操作系统(RTOS),为什么需要RTOS? 4. RTOS的功能和特点。
5. 嵌入式计算机按照嵌入式处理器的不同,可以分成哪几类?并简要介绍各类处理器的特点。
6. RTOS的体系结构。
7.任务的状态转换图及其相互转换的条件。
1.
含义:嵌入式系统被定义为:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
特点:
嵌入式系统是面向用户、面向产品、面向应用的。嵌入式系统的硬件和软件都必须高效率地设计,量体裁衣、去除冗余,力争在同样的硅片面积上实现更高的性能。嵌入式系统产品一般具有较长的生命周期,其发展也体现出稳定性。 软件特征: (1) (2) (3) (4)
软件要求固态化存储
软件代码高质量、高可靠性
系统软件(OS)的高实时性是基本要求
多任务操作系统是知识集成的平台和走向工业标准化道路的基础
2.
1)崩溃与烧制(Crash and Burn) (1)在宿主机PC上编写代码;
(2)在宿主机PC上编译应用程序,生成可执行程序;
(3)固化(Burn)到目标机的非易失性存储器(EPROM、FLASH等)中; (4)启动运行,若正确则转到(7); (5)不正确则改写代码,纠正错误; (6)返回(2)重复操作; (7)固化成功。 2)ROM监控程序。 (1)编写代码;
(2)编译应用代码;
(3)将代码下载到目标机上的RAM空间; (4)用户使用调试器进行调试; (5)如果程序正常转到第(8)步;
(6)发现程序有问题,在调试器的帮助下定位错误; (7)修改错误,重复(2)到(7)步; (8)将程序固化到目标机上;
3).ROM仿真器
ROM仿真器在一定程度上可以认为是一种用于替代目标机上ROM芯片的设备,仅用于ROM芯片无法获得的情况。ROM仿真器通常和ROM Monitor配合使用。 4)在线仿真器
在线仿真器(ICE)是一种用于替代目标机上CPU的设备。
同时支持软件断点和硬件断点的设置; 设置各种复杂的断点和触发器; 实时跟踪目标程序的运行; 选择性的跟踪程序的运行; 支持“时间邮票(Time Stamp)”; 允许用户设置“定时器”;
提供“Shadow RAM”,能在不中断被调试程序运行的情况下查看内存和变量,即非干扰调试查询。
5)片上调试
片上调试(OCD)是CPU芯片提供的一种调试功能,可以认为是一种廉价的ICE功能。OCD方式的主要优点是:不占用目标机的资源,而调试环境和最终的程序运行环境基本一致;支持软、硬件断点,提供跟踪功能,可以精确计量程序的执行时间,支持时序分析等功能。 OCD方式的主要缺点是:调试的实时性不如ICE强,不支持非干扰调试查询,CPU必须具有OCD功能,OCD存在各种实现且标准不统一。
6)模拟器
模拟器(Simulator)通常是指令级的,相当于在宿主机上虚拟了一台目标机,该目标机可以与宿主机的CPU不同类型。
利用模拟器的最大好处就是可以不用真正的目标机,可以在目标机环境并不存在的条件下开发目标机上的应用系统,并且在调试时可以利用宿主机资源提供更详细的错误诊断信息。 3.
实时多任务操作系统(RTOS)是嵌入式应用软件的基础和开发平台,是一段嵌入在目标代码中的软件,用户的其他应用程序都建立在RTOS之上。RTOS通常包括与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议、图形界面、标准化浏览器Browser等 。RTOS还是一个标准的内核,将CPU时间、中断、I/O、定时器等资源都包装起来,留给用户一个标准的API,并根据各个任务的优先级,合理地在不同任务之间分配CPU时间。 随着应用的复杂化,一个嵌入式控制器系统可能要同时控制/监视很多外设,要求有实时响应,有很多处理任务,各个任务之间有多种信息传递,如果仍采用原来的程序设计方法存在两个问题。一是中断可能得不到及时响应,处理时间过长,这对于一些控制场合是不允许的,对于网络通信方面则会降低系统整体的信息流量。二是系统任务多,要考虑的各种可能也多,各种资源如调度不当就会发生死锁,降低软件可靠性,程序编写任务量成指数增加。 4. 功能:
(1)任务管理:
分时操作系统中的基本调度单位一般是进程(或者线程),而对于实时操作系统,其内核调度的基本单位是任务。任务一般由任务控制块、程序区、数据区、堆栈区组成,堆栈又分为系统堆栈和用户堆栈。任务的驱动一般是基于消息或者事件的,即任务的设计是按照依次处理可能接收到的消息和事件,周而复始轮询循环的。实时操作系统中的任务有四种状态:运
行(Executing),就绪(Ready),挂起(Suspended),冬眠(Dormant)。
(2)任务间同步和通信:
主要实时操作系统的任务间同步和通信的机制有:消息、事件、信号量;少部分实时操作系统仍使用邮箱机制;还有一些实时操作系统提供了共享内存的任务间通信机制。 (3)内存管理:
实时操作系统内存管理模式可以分为实模式与保护模式。目前主流的实时操作系统一般都可以提供两种模式,让用户根据应用自主选择。另外,实时操作系统的内存管理还有对于内存的优化分配,以尽量减少整个系统的内存占有量的要求。 (4)实时时钟服务:
实时时钟是系统调度的基础,也是系统定时服务器的基础。实时时钟服务一般包括定时唤醒(tm_wkafter或者tm_wkwhen)、定时事件(tm_evafter或者tm_evwhen)机制。 (5)中断管理服务:
是操作系统的一个核心和基本的功能。实时操作系统要求中断处理程序更加短小、精悍,以减少中断禁止时间和中断延迟时间。 RTOS的优点:
(1). 保证任务执行的实时性;
(2). 简化多任务切换和资源分配及网络消息管理; (3). 模块化便于软件扩展、移植和再使用; (4). 提高编写出的软件可靠性;
(5). 使软件开发从“小生产阶段”进入到“大生产阶段”。
5.
(1).嵌入式微处理器(Embedded Microprocessor Unit, EMPU)
嵌入式微处理器的基础是通用计算机中的CPU。为了满足嵌入式应用的特殊要求,嵌入式微处理器虽然在功能上和标准微处理器基本是一样的,但在工作温度、抗电磁干扰、可靠性等方面一般都做了各种增强。嵌入式处理器目前主要有Am186/88、386EX、SC-400、Power PC、68000、MIPS、ARM系列等。
(2).嵌入式微控制器(Microcontroller Unit, MCU) 又称单片机 。
嵌入式微控制器一般以某一种微处理器内核为核心,芯片内部集成ROM/EPROM、RAM、总线、总线逻辑、定时/计数器、WatchDog、I/O、串行口、脉宽调制输出、A/D、D/A、Flash RAM、EEPROM等各种必要功能和外设。 (3).嵌入式DSP处理器(Embedded Digital Signal Processor, EDSP) DSP处理器对系统结构和指令进行了特殊设计,使其适合于执行DSP算法,编译效率较高,指令执行速度也较高。 嵌入式DSP处理器有两个发展来源,一是DSP处理器经过单片化、EMC改造、增加片上外设成为嵌入式DSP处理器;二是在通用单片机或SOC中增加DSP协处理器。 (4).嵌入式片上系统SOC(System On Chip)
随着EDI的推广和VLSI设计的普及化,及半导体工艺的迅速发展,在一个硅片上实现一个更为复杂的系统的时代已来临,这就是System On Chip(SOC)。用户只需定义出其整个应用系统,仿真通过后就可以将设计图交给半导体工厂制作样品。这样除个别无法集成的器件以外,整个嵌入式系统大部分均可集成到一块或几块芯片中去,应用系统电路板将变得很简洁,对于减小体积和功耗、提高可靠性非常有利。
6.
1)硬件抽象层(HAL)包含了所有和硬件平台相关的代码,如上下文切换和I/O寄存器访问
等等。它存在于RTOS的最底层,直接访问和控制硬件,对其上层的RTOS的机器无关代码提供访问和控制服务。这样可以简化RTOS内核的移植工作,除了设备驱动程序之外,在移植的时候只需要修改HAL的代码就可以了。
2)RTOS内核(Kernel)是用来为大多数程序乃至OS(网络、文件系统、驱动程序)构建一系列在抽象的文件上工作的抽象机,使用户程序及上层OS组件对系统设备透明。 3)在提供的RTOS接口上需要有对用户程序提供的函数接口,专门为用户定制网络、图形、视频等接口。并且提供驱动程序开发界面,方便开发者对不同需求的设备定制驱动程序。 一般来说,RTOS内核的实现都为微内核的体系结构。所谓微内核技术是指将必需的功能(如进程管理、任务通信、中断处理、进程调度)放在内核中,而将那些不是非常重要的核心功能和服务(文件系统、存储管理、网络通信、设备管理)等等作为内核之上可配置的部分。这样,整个操作系统就是由提供一些基本服务机制的微内核加上一些服务进程构成,系统的各个系统调用和服务都是由内核发消息到不同的服务进程,服务进程执行相应的操作,然后以消息的方式返回内核。
7.
(请用自己的话描述一下)