嵌入式系统概述new_第1页
嵌入式系统概述new_第2页
嵌入式系统概述new_第3页
嵌入式系统概述new_第4页
嵌入式系统概述new_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第一章 嵌入式系统概述1. 嵌入式系统的定义从技术的角度定义:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 从系统的角度定义:嵌入式系统是设计完成复杂功能的硬件和软件,并使其紧密耦合在一起的计算机系统。术语嵌入式反映了这些系统通常是更大系统中的一个完整的部分,称为嵌入的系统。嵌入的系统中可以共存多个嵌入式系统。2. 嵌入式处理器的分类嵌入式微处理器;嵌入式微控制器;嵌入式DSP处理器;嵌入式片上系统(SOC)3. 嵌入式操作系统的基本概念及特点 一般实时操作系统应用于实时处理系统的上位机和实时查询系统等实时性较弱的实时

2、系统,并且提供了开发、调试、运用一致的环境。 嵌入式实时操作系统应用于实时性要求高的实时控制系统,而且应用程序的开发过程是通过交叉开发来完成的,即开发环境与运行环境是不一致。嵌入式实时操作系统具有规模小(一般在几K几十K 内)、可固化使用实时性强(在毫秒或微秒数量级上)的特点 4.实时操作系统的基本概念及特点 总的来说实时操作系统是事件驱动的,能对来自外界的作用和信号在限定的时间范围内作出响应。它强调的是实时性、可靠性和灵活性, 与实时应用软件相结合成为有机的整体起着核心作用, 由它来管理和协调各项工作,为应用软件提供良好的运行软件环境及开发环境。从实时系统的应用特点来看实时操作系统可以分为两

3、种:一般实时操作系统和嵌入式实时操作系统IEEE 的实时UNIX分委会认为实时操作系统应具备以下的几点: 异步的事件响应;切换时间和中断延迟时间确定;优先级中断和调度;抢占式调度;内存锁定;连续文件;同步;5. 操作系统的内核有哪两种,各自的特点非占先式内核:非占先式内核要求每个任务自我放弃CPU 的所有权。非占先式调度法也称作合作型多任务,各个任务彼此合作共享一个CPU。异步事件还是由中断服务来处理。中断服务可以使一个高优先级的任务由挂起状态变为就绪状态。但中断服务以后控制权还是回到原来被中断了的那个任务,直到该任务主动放弃CPU的使用权时,那个高优先级的任务才能获得CPU的使用权。占先式内

4、核:最高优先级的任务一旦就绪,总能得到CPU的控制权。当一个运行着的任务使一个比它优先级高的任务进入了就绪状态,当前任务的CPU使用权就被剥夺了,或者说被挂起了,那个高优先级的任务立刻得到了CPU的控制权。如果是中断服务子程序使一个高优先级的任务进入就绪态,中断完成时,中断了的任务被挂起,优先级高的那个任务开始运行。6. 任务优先级的概念任务的优先级是表示任务被调度的优先程度。7. 常见的嵌入式操作系统举例嵌入式Linux Win CE VxWorks C/OS-II 第二章 ARM7体系结构1. RISC特点具有大量的通用存储器;独特的装载/保存(load-store)结构;简单的寻址模式;

5、统一和固定长度的指令格式。2. ARM体系结构特点每条数据处理指令可同时包含算术逻辑单元(ALU)的运算和移位处理,实现ALU和移位器的最大利用;使用地址自增和自减的寻址方式优化程序循环;装载/保存指令对数据的批量传输,实现最大数据吞吐量;大多数指令的条件执行,实现最快速的代码执行。3. 常用的ARM处理器核系列ARM7、ARM9、ARM9E、ARM10E、ARM11、Cortex、Xscale4. ARM7,ARM9系列的特点和主要应用领域ARM7:该系列包括ARM7TDMI、ARM7TDMI-S、带有高速缓存处理器宏单元的ARM720T和扩充了Jazelle的ARM7EJ-S。该系列处理器

6、提供Thumb 16位压缩指令集和EmbededICE软件调试方式,适用于更大规模的SoC设计中。ARM7系列广泛应用于多媒体和嵌入式设备,包括Internet设备、网络和调制解调器设备,以及移动电话、PDA等无线设备。ARM9:该系列包括ARM9TDMI、ARM920T和带有高速缓存处理器宏单元的ARM940T。除了兼容ARM7系列,而且能够更加灵活的设计。ARM9系列主要应用于引擎管理、仪器仪表、安全系统和机顶盒等领域。5. ARM7TDMI流水线ARM处理器使用流水线来增加处理器指令流的速度,这样可使几个操作同时进行,并使处理和存储器系统连续操作,能提供0.9MIPS/MHz的指令执行速

7、度。取指:从寄存器装载一条指令。译码:识别将要被执行的指令。执行:处理指令并将结果写回寄存器。6.2.2节思考题 看PPT吧.7. ARM处理器状态及相关切换方式ARM状态:32位,处理器执行字方式的ARM指令,处理器默认为此状态;Thumb状态:16位,处理器执行半字方式的Thumb指令。 使用BX指令将ARM内核的操作状态在ARM状态和Thumb状态之间进行切换。8. ARM处理器模式 ARM体系结构支持7种处理器模式,分别为:用户模式、快中断模式、中断模式、管理模式、中止模式、未定义模式和系统模式。9.异常模式的特点10. ARM内部寄存器组织 在ARM处理器内部共有37个用户可访问的寄

8、存器,分别为31个通用32位寄存器和6个状态寄存器。11. 寄存器R14功能,CPSR与SPSR寄存器R14称为链接寄存器(LR),在结构上有两个特殊功能:当使用BL指令调用子程序时,返回地址将自动存入R14中;当发生异常时,将R14对应的异常模式版本设置为异常返回地址。 寄存器CPSR为当前程序状态寄存器,在异常模式中,另外一个寄存器“程序状态保存寄存器(SPSR)”可以被访问。每种异常都有自己的SPSR,在进入异常时它保存CPSR的当前值,异常退出时可通过它恢复CPSR。12. thumb状态各模式下可直接访问的寄存器Thumb状态寄存器集是ARM状态集的子集,程序员可以直接访问的寄存器为

9、:8个通用寄存器R0R7;程序计数器(PC);堆栈指针(SP);链接寄存器(LR);当前程序状态寄存器( CPSR)。13. CPSR的具体内容14. 发生异常导致模式切换时,内核处理流程将异常处理程序的返回地址(加固定的偏移量)保存到相应异常模式下的LR;将CPSR的当前值保存到相应异常模式下的SPSR;设置CPSR为相应的异常模式;设置PC为相应异常处理程序的中断入口向量地址,跳转到相应的异常中断处理程序执行;第三章ARM7TDM2指令系统1.ARM指令集的特点可条件执行、可选择影响标志位、具有非常灵活的第二操作数;2. 寄存器移位寻址,多寄存器寻址及举例 寄存器移位寻址是ARM指令集特有

10、的寻址方式。当第2个操作数是寄存器移位方式时,第2个寄存器操作数在与第1个操作数结合之前,选择进行移位操作。寄存器移位寻址指令举例如下:MOVR0,R2,LSL #3 ;R2的值左移3位,结果放入R0,;即是R0=R28 ANDSR1,R1,R2,LSL R3 ;R2的值左移R3位,然后和R1相“与”操作,结果放入R1 多寄存器寻址一次可传送几个寄存器值,允许一条指令传送16个寄存器的任何子集或所有寄存器。多寄存器寻址指令举例如下: LDMIAR1!,R2-R7,R12 ;将R1指向的单元中的数据读出到;R2R7、R12中(R1自动加1) STMIAR0!,R2-R7,R12 ;将寄存器R2R

11、7、R12的值保;存到R0指向的存储; 单元中;(R0自动加1)3. 堆栈寻址的四种方式(类型)满递增:堆栈向上增长,堆栈指针指向内含有效数据项的最高地址。空递增:堆栈向上增长,堆栈指针指向堆栈上的第一个空位置。满递减:堆栈向下增长,堆栈指针指向内含有效数据项的最低地址。空递减:堆栈向下增长,堆栈指针向堆栈下的第一个空位置。4. 处理器执行简单指令后的结果5. 满递减压栈,出栈指令的执行及结果指令:STMFD SP!,R0-R7,LR 结果:执行压栈操作指令保存R0-R7和LR指令:LDMFD SP!,R0-R7,PC 结果:执行出栈操作指令恢复R0-R7和PC6.MOV与LDR指令的区别MO

12、V指令用于将数据从一个寄存器传送到另一个寄存器中,或者将一个常数传送到一个寄存器中,但是不能访问内存。LDR指令用于从内存中读取数据放入寄存器中。7.思考与练习,寄存器内容替换代码段AND R1,R1,#0x000000FFAND R2,R2,#0xFFFFFF00ORR R2,R2,R18.ARM中实现程序跳转的两种方式1.直接向PC寄存器赋值实现跳转;例:MOV PC,R142.使用分支指令直接跳转。9.BL指令,BX指令BL:带链接的分支指令BL指令除了具有跳转功能,还能在跳转之前将下一条指令的地址拷贝到R14(即LR) 链接寄存器中,它适用于子程序调用。跳转范围限制在当前指令的32M字

13、节地址内。BX:带状态切换的分支指令BX指令除了具有跳转功能,还能在跳转的同时切换处理器状态。其跳转范围不受限制。10. 执行软中断指令后,处理器流程切换到管理模式将CPSR备份到管理模式下的SPSR寄存器 程序跳转到软件中断入口11. MSR与MRS指令简单应用,思考练习状态寄存器读指令MSR: MRS R1,CPSR ; 读取CPSR状态寄存器到R1 MRS R2,SPSR ; 读取SPSR状态寄存器到R2状态寄存器写指令MRS: 示例,将R0的内容写入CPSR寄存器的控制位域 MSR CPSR_c,R0思考与练习看PPT!12. Thumb指令集的限制 Thumb指令集较ARM指令集有如

14、下限制:只有B指令可以条件执行,其它指令都不能条件执行;分支指令的跳转范围有更多限制;数据处理指令的操作结果必须放入其中一个;单寄存器访问指令,只能操作R0R7;LDM和STM指令可以对R0R7的任何子集进行操作;第四章1. IPC2000系列微控制器的组成(四部分)2. 片内Flash编程的三种方法使用JTAG的仿真/调试器,通过芯片的JTAG接口下载程序使用在系统编程技术,通过UART0接口下载程序使用在应用编程技术。3. 片外Flash编程方法4. 存储器映射的概念存储器本身不具有地址的信息,他们在芯片中的地址是由芯片厂家或用户分配的,所以给存储器分配地址的过程成为存储器映射。5. AR

15、M处理器的预取指中止和数据中止异常如果试图访问一个保留地址或未分配区域的地址,LPC2000系列ARM将产生预取指中止或数据中止异常。6. 存储器重映射 为了增加系统的灵活性,系统中有部分存储单元可以同时出现在不同的地址上,这称为存储器重映射。7. 引导块的功能其功能主要是判断运行哪个存储器上的程序,检查用户代码是否有效,判断芯片复位后被首先运行,芯片的在应用编程以及在系统编程功能。8.异常向量表及其重映射10.2000系列芯片的两个复位源 外部复位和看门狗复位11. 唤醒定时器的功能确保振荡器和芯片所需要的电路在处理器开始执行指令之前有足够的时间能够让其开始正确工作。12. PLL馈送寄存器

16、的作用为了保证PLL正在使用的参数不被意外修改而设计的。13. VPB分频器的作用将处理器时钟(CCLK)分频,以便外设在合适的速度下工作降低系统功耗16.空闲模式和掉电模式的特点19.向量中断控制器的作用向量中断控制器就是使LPC2000系列ARM具有正确快速处理多个外部中断事件的能力的功能模块。20,如何控制IRQ和FIQ的性能 ARM内核通过CPSR来监视和控制内部的操作,CPSR中的“I”位和“F”位分别用来控制IRQ模式和FIQ模式的使能21,中断输入请求的分类中断输入请求可以在VIC中被设置为以下三类: FIQ中断:具有最高优先级;向量IRQ中断:具有中等优先级; 非向量IRQ中断:具有最低优先级;22,FIQ中断硬件处理流程23,向量IRQ与非向量IRQ的区别向量IRQ中断 发生向量IRQ中断后,VIC将对应的向量地址寄存器中的数据存入VIC

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论