《嵌入式系统》复习总结

上传人:油条 文档编号:2732859 上传时间:2017-07-27 格式:PPTX 页数:43 大小:794KB
返回 下载 相关 举报
《嵌入式系统》复习总结_第1页
第1页 / 共43页
《嵌入式系统》复习总结_第2页
第2页 / 共43页
《嵌入式系统》复习总结_第3页
第3页 / 共43页
《嵌入式系统》复习总结_第4页
第4页 / 共43页
《嵌入式系统》复习总结_第5页
第5页 / 共43页
点击查看更多>>
资源描述

《《嵌入式系统》复习总结》由会员分享,可在线阅读,更多相关《《嵌入式系统》复习总结(43页珍藏版)》请在金锄头文库上搜索。

1、1.嵌入式系统2.嵌入式处理器3.嵌入式操作系统,第一章嵌入式系统概述,嵌入式系统的概念,目前,对嵌入式系统的定义多种多样,但没有一种定义是全面的。下面给出两种比较合理定义: 从技术的角度定义:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。,嵌入式系统的概念,目前,对嵌入式系统的定义多种多样,但没有一种定义是全面的。下面给出两种比较合理定义: 从系统的角度定义:嵌入式系统是设计完成复杂功能的硬件和软件,并使其紧密耦合在一起的计算机系统。,嵌入式系统示例,汽车控制系统,1.3 嵌入式操作系统,概述,监控程序,操作系统,实时

2、操作系统,分时操作系统,多道批处理操作系统,时 间 先 后,实时操作系统是我们介绍的重点,1.3 嵌入式操作系统,实时操作系统的特点,IEEE 的实时UNIX分委会认为实时操作系统应具备以下的几点: 异步的事件响应 切换时间和中断延迟时间确定 优先级中断和调度 抢占式调度 内存锁定 连续文件 同步,总的来说实时操作系统是事件驱动的,能对来自外界的作用和信号在限定的时间范围内作出响应。它强调的是实时性、可靠性和灵活性, 与实时应用软件相结合成为有机的整体起着核心作用, 由它来管理和协调各项工作,为应用软件提供良好的运行软件环境及开发环境。 从实时系统的应用特点来看实时操作系统可以分为两种:一般实

3、时操作系统和嵌入式实时操作系统。,一般实时操作系统应用于实时处理系统的上位机和实时查询系统等实时性较弱的实时系统,并且提供了开发、调试、运用一致的环境。 嵌入式实时操作系统应用于实时性要求高的实时控制系统,而且应用程序的开发过程是通过交叉开发来完成的,即开发环境与运行环境是不一致。嵌入式实时操作系统具有规模小(一般在几K几十K 内)、可固化使用实时性强(在毫秒或微秒数量级上)的特点 。,1.3 嵌入式操作系统,基本概念,对基于芯片的开发来说,应用程序一般是一个无限的循环,可称为前后台系统或超循环系统。 很多基于微处理器的产品采用前后台系统设计,例如微波炉、电话机、玩具等。在另外一些基于微处理器

4、应用中,从省电的角度出发,平时微处理器处在停机状态,所有事都靠中断服务来完成。,前后台系统,基本概念,中断服务程序处理异步事件,这部分可以看成前台行为,前台也叫中断级。时间相关性很强的关键操作一定是靠中断服务程序来保证的。,循环中调用相应的函数完成相应的操作,这部分可以看成后台行为,后台也可以叫做任务级。这种系统在处理的及时性上比实际可以做到的要差。,前后台系统,1.3 嵌入式操作系统,基本概念,任务的优先级是表示任务被调度的优先程度。每个任务都具有优先级。任务越重要,赋予的优先级应越高,越容易被调度而进入运行态。,任务优先级,1.3 嵌入式操作系统,基本概念,中断是一种硬件机制,用于通知CP

5、U有个异步事件发生了。中断一旦被识别,CPU保存部分(或全部)上下文即部分或全部寄存器的值,跳转到专门的子程序,称为中断服务子程序(ISR)。中断服务子程序做事件处理,处理完成后,程序回到:1. 在前后台系统中,程序回到后台程序;2. 对非占先式内核而言,程序回到被中断的任务;3. 对占先式内核而言,让进入就绪态的优先级最高的任务开始运行。,中断,1.3 嵌入式操作系统,基本概念,中断,1.嵌入式系统 概念理解2.嵌入式处理器 概念理解3.嵌入式操作系统 基本概念的掌握和常见系统的了解,本章小结,1.ARM简介2.ARM7TDMI3.ARM的模块、内核和功能框图4.ARM处理器状态5.ARM处

6、理器模式,ARM7体系结构,6.ARM内部寄存器7.当前程序状态寄存器8.ARM体系的异常、中断及其向量表9.ARM体系的存储系统,2.1 ARM简介,ARM公司简介,ARM是Advanced RISC Machines的缩写,它是一家微处理器行业的知名企业,该企业设计了大量高性能、廉价、耗能低的RISC (精简指令集)处理器。 公司的特点是只设计芯片,而不生产。它将技术授权给世界上许多著名的半导体、软件和OEM厂商,并提供服务。,2.1 ARM简介,ARM公司简介,将技术授权给其它芯片厂商,形成各具特色的ARM芯片,2.2 ARM7TDMI,三级流水线,ARM处理器使用流水线来增加处理器指令

7、流的速度,这样可使几个操作同时进行,并使处理和存储器系统连续操作,能提供0.9MIPS/MHz的指令执行速度。,ARM7TDMI的流水线分3级,分别为:,取指,译码,执行,正常操作过程中,在执行一条指令的同时对下一条(第二条)指令进行译码,并将第三条指令从存储器中取出。,在ARM状态下,流水线上各指令的地址为:,在Thumb状态下,流水线上各指令的地址为:,2.2 ARM7TDMI,三级流水线结构的指令执行顺序,周期2,周期1,周期3,周期4,处理器执行一条指令的三个阶段,执行ADD PC,PC,#4指令后,PC的值为多少?,2.2 ARM7TDMI,思考题,ADD,程序计数器R15(PC)总

8、是指向“正在取指”的指令,而不是指向“正在执行”的指令或“正在译码”的指令。,一般来说,人们习惯性约定将“正在执行”的指令作为参考点,则:PC值当前程序执行位置8 注:ARM状态时,每条指令为4字节长。,PC指向0x4000地址,取指ADD指令。,PC指向0x4004地址,译码ADD指令。,PC指向0x4008地址,执行ADD指令,所以指令执行的结果为: PC=PC+40x400840x400C。,2.4 ARM处理器状态,处理器状态,ARM7TDMI处理器内核包含2套指令系统,分别为ARM指令集和Thumb指令,并且各自对应1种处理器的状态:ARM状态:32位,处理器执行字方式的ARM指令,

9、处理器默认为此状态;Thumb状态:16位,处理器执行半字方式的Thumb指令。,注意:两个状态之间的切换并不影响处理器模式或寄存器内容。,2.4 ARM处理器状态,状态切换的一个例子,使用BX指令将ARM内核的操作状态在ARM状态和Thumb状态之间进行切换。,ARM指令集,Thumb指令集,CODE32LDRR0, =Lable+1BX R0CODE16Lable MOV R1, #12,CODE16LDR R0, =LableBX R0CODE32LableMOV R1, #10,执行完BX指令,处理器切换到Thumb状态,开始执行Thumb指令,程序代码,指令集关系,从ARM状态切换到

10、Thumb状态的程序代码如下:,从Thumb状态切换到ARM状态的程序代码如下:,执行完BX指令,处理器切换到ARM状态,开始执行ARM指令,2.8 ARM体系的异常,异常简介,只要正常的程序流被暂时中止,处理器就进入异常模式。例如在用户模式下执行程序时,当外设向处理器内核发出中断请求导致内核从用户模式切换到异常中断模式。 如果同时发生两个或更多异常,那么将按照固定的顺序来处理异常。,异常入口/出口汇总,下表所示为异常返回地址值以及退出异常处理程序所推荐使用的指令。,注意:“MOVS PC,R14_svc”是指在管理模式执行MOVS PC,R14 指令,同样类似的指令还有“MOVS PC,R1

11、4_und”、“SUBS PC,R14_abt,#4”等。,课后题,1.FIQ模式的进入和退出过程(可以用自己的语言进行描述)?2.为何在返回时地址要PC-4?,第3章ARM7TDMI(-S)指令系统,1. ARM处理器的寻址方式;2. ARM指令的特点;3. ARM指令的种类,它能完成哪些功能。,本章学习重点,第3章ARM7TDMI(-S)指令系统,1. ARM处理器的寻址方式;2. ARM指令的特点;3. ARM指令的种类,它能完成哪些功能。,本章学习重点,3.1 ARM处理器寻址方式,寻址方式分类,寻址方式是根据指令中给出的地址码字段来实现寻找真实操作数地址的方式。ARM处理器具有8种基

12、本寻址方式。1.寄存器寻址;2.立即寻址;3.寄存器移位寻址;4.寄存器间接寻址;5.基址寻址;6.多寄存器寻址;7.堆栈寻址;8.相对寻址。,所以可以组合出四种类型的堆栈方式:满递增:堆栈向上增长,堆栈指针指向内含有效数据项的最高地址。指令如LDMFA、STMFA等; 空递增:堆栈向上增长,堆栈指针指向堆栈上的第一个空位置。指令如LDMEA、STMEA等; 满递减:堆栈向下增长,堆栈指针指向内含有效数据项的最低地址。指令如LDMFD、STMFD等;空递减:堆栈向下增长,堆栈指针向堆栈下的第一个空位置。指令如LDMED、STMED等。,3.1 ARM处理器寻址方式,寻址方式分类堆栈寻址,思考与

13、练习,?,1.MOV指令与LDR指令都是往目标寄存器中传送数据,但是它们有什么区别吗?,思考与练习,?,1.用R1寄存器的最低字节替换掉R2寄存器的最低字节,并不影响条件标志位?,BYTE0,BYTE0,第3章 ARM7TDMI(-S)指令系统练习题,1. ARM指令集与Thumb指令集的关系2. 寻址方式分类有哪些?,LDMIA R1!,R2-R4,R6,四种类型的堆栈方式:满递增:空递增:满递减:空递减:,3. 寻址方式分类堆栈寻址,ARM指令的基本格式如下:,4. 请对ARM指令集的指令格式,逐一进行说明, S ,5.MOV指令与LDR指令都是往目标寄存器中传送数据,但是它们有什么区别吗

14、?,3.2 指令集介绍,ARM存储器访问指令多寄存器存取,装载指令:LDM,存储指令:STM,LDM/STM指令搭配不同的后缀实现不同方式地址增长方式:,第四章习题,1.LPC2000系列简介2.引脚描述3.存储器寻址4.系统控制模块5.存储器加速模块 (MAM)6.外部存储器控制器(EMC)7.引脚连接模块8.GPIO,LPC2000系列ARM硬件结构,9.向量中断控制器10.外部中断输入11.定时器0和定时器112.SPI接口13.I2C接口14.UART(0、1)15.A/D转换器16.看门狗17.脉宽调制器(PWM)18.实时时钟,4.3.1 片内存储器,片内Flash编程方法有哪些?

15、,片外Flash编程方法,什么是存储器映射与重映射,画出时钟系统结构,描述各个部件功能,空闲模式与掉电模式的区别,请写出存储器加速模块的原理什么是管脚复用?什么是VIC?外部中断类型及分类有哪些?定时器的功能有哪些?I2C总线规范写出复合格式UART通信的特点是什么?看门狗的工作原理PWM的输出类型及设置原理实时时钟的两种中断类型说明,4.3.2 片外存储器,片外Flash编程方法,Flash的擦写操作需要配合一段符合Flash编程时序的代码,这段代码称为装载程序,一般由用户编写。,程序代码(源),程序代码(目标),Loader,下载用户代码时,首先得在CPU内运行装载程序,通过它把从串口(或其它接口)接收的代码写到片外Flash中。,1.最小系统2.总线接口设计3.UART接口电路4.RS-485接口电路5.CAN-bus接口电路6.GPRS DTU接口电路7.GPRS Modem模块8. ZLG500系列读卡模块,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号