嵌入式复习资料(精)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第一章嵌入式系统基础知识

1.嵌入式系统基础知识

计算机系统的两个发展分支

通用计算机与嵌入式计算机

嵌入式系统的一般定义、IEEE定义

一般定义:以应用为中心、以计算机技术为基础,软硬件可裁剪,应用系统对功能、可靠性、成本、体积、功耗和应用环境有特殊要求的专用计算机系统。是将应用程序、操作系统和计算机硬件集成在一起的系统。(技术角度)

嵌入式系统是设计完成复杂功能的硬件和软件,并使其紧密耦合在一起的计算机系统。(系统角度)

广义定义:任何一个非计算机的计算系统。

IEEE(国际电气和电子工程师协会)定义:嵌入式系统是“用于控制、监视或者辅助操作的机器、设备或装置”。

嵌入式系统4个组成部分

嵌入式微处理器、外围硬件设备、嵌入式操作系统、用户应用程序

嵌入式系统的三个基本要素

嵌入性、专用性、计算机系统

嵌入式系统的软硬件特点

硬件方面:稳定性、低功耗、体积受限、看门狗电路、成本低、系统资源少

软件方面:实时性、可裁剪性、精简性、人机界面要求不高

嵌入式系统的硬件架构

以嵌入式处理器为中心,配置存储器、I/0设备、通信模块以及电源等必要的辅助接口组成。

嵌入式系统的硬件核心

嵌入式微处理器

嵌入式处理器的种类

嵌入式微处理器、嵌入式微控制器、嵌入式DSP、嵌入式SOC

S0C

SOC是指在单芯片上集成数字信号处理器、微控制器、存储器、数据转换器、接口电路等电路模块,可以直接实现信号采集、转换、存储、处理等功能。

2.嵌入式系统硬件

嵌入式微处理器的体系结构

冯诺依曼结构:单一的程序和数据总线。

哈佛结构:独立的程序和数据总线。

RISC(精简指令集计算机)的概念及思想精华

1979年,美国加州伯克利分校提出了RISC的概念,基本思想是尽量简化计算机指令功能,只保留那些功能简单,能在一个节拍内执行完成的指令,而把较复杂的功能用一段子程序实现。

RISC思想的精华就是通过简化计算机指令功能、简化计算机指令格式,使指令的平均执行周期减少,同时大量使用通用寄存器来提高计算机的工作主频,提高程序的速度。(通常,RISC计算机的速度是同等CISC计算机的3倍。)

ARM概念及ARM处理器系列产品

ARM(Advanced RISC Machines)是一个CPU内核。

ARM7系列(有ARM7TDMI、ARM720T、ARM7EJ-S)

ARM9系列(有ARM920T、ATM922T、ARM940T、ARM926EJ-S等)

ARM10、11系列

ARM Cortex系列(Cortex-A、Cortex-R、Cortex-M)

3.嵌入式软件及嵌入式操作系统

嵌入式系统软件架构

应用程序、协议线、嵌入式操作系统、板支持包/设备驱动、硬件

嵌入式操作系统的功能和架构

功能:任务调度、进程间通信、文件管理(可选)、中断处理、存储器管理(可选)

架构 Kernel: Memory Mgmt.、I/O System 、Network Stack 、Device Drivers 、File Systems

当前流行的嵌入式操作系统

Palm OS 、Windows CE 、Linux(uClinux) 、RT Linux、uC/OSⅡ、其它商业OS:QNX、VxWorks 等

第二章 CM3体系结构与STM32

1.CM3

Cortex-M3是一个32位处理器内核。CM3采用了哈佛结构,拥有独立的指令总线和数据总线。

程序计数寄存器R15的作用

指向当前程序地址

特殊功能寄存器类别和作用

程序状态字寄存器组:记录ALU标志(0标志、进位标志、负数标志、溢出标志)、执行状态以及当前服务的中断号。

中断屏蔽寄存器组:PRIMASK失能所有的中断、FAULTMASK失能所有的fault、BASEPRI失能所有优先级不高于某个具体数值的中断。

控制寄存器:定义特权状态,并且决定使用哪一个堆栈指针。

Cortex-M3处理器支持两种操作模式和两级特权操作

两种操作模式处理者模式:异常服务例程的代码——包括中断服务;

线程模式:普通应用程序的代码。

两级特权——特权级和用户级,提供一种存储器访问保护机制,使得普通用户程序代码不能意外地,甚至是恶意地执行涉及到要害的操作。

异常及包括的类型

在ARM编程领域中,凡是打断程序顺序执行的事件,都被称为异常。包括:外部中断、不可屏蔽中断、指令执行了“非法操作”或者访问被禁的内存区间产生的各种错误fault。

向量表及其工作工程

向量表是一个WORD(32位整数)数组,每个下标对应一种异常,该下标元素的值则是该ESR 的入口地址。向量表在地址空间中的位置是可以设置的,通过NVIC中的一个重定位寄存器来指出向量表的地址。在复位后,该寄存器的值为0。因此,在地址0处必须包含一张向量表,用于初始时的异常分配。

CM3的复位序列

在离开复位状态后,CM3做的第一件事就是读取下列两个32位整数的值:

从地址0x00000000处取出MSP的初始值

从地址0x00000004处取出PC的初始值——这个值是复位向量,LSB必须是1。然后从这个值所对应的地址处取指。

CM3的三级流水线

取指令、解码、执行

CM3指令集

Cortex-M3只使用Thumb-2指令集,允许32位指令和16位指令水乳交融,代码密度与处理性能两手抓。

相关文档
最新文档