嵌入式系统复习提纲
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
终止 R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13_ abt R14_ abt R15 (PC)
IRQ R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13_ irq R14_ irq R15 (PC)
CPSR SPSR_ fiq
➢ARM状态,此时处理器执行32位的字对齐 的ARM指令;
➢Thumb状态,此时处理器执行16位的、半 字对齐的Thumb指令。
ARM的寄存器组织
系统和用户 R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13 R14 R15 (PC)
CPSR
ARM状态 通用寄存器和程序计数器
FIQ
R0 R1 R2 R3 R4 R5 R6 R7 R8_ fiq R9_ fiq R10_ fiq R11_ fiq R12_ fiq R13_ fiq R14_ fiq R15 (PC)
管理
R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13_ svc R14_ svc R15 (PC)
处理器通过总线方式或GPIO方式扩展 外围硬件。
存储器设备
嵌入式系统的存储器包括主存和外存。 大多数嵌入式系统的代码和数据都存
储在处理器可直接访问的存储空间即 主存中。 系统上电后在主存中的代码直接运行。 主存储器的特点是速度快,一般采用 ROM、EPROM、Nor Flash、SRAM、 DRAM、SDRAM等存储器件。
外围硬件
外围硬件是嵌入式系统处理器以外的硬 件,它为系统提供了运行条件和部分功能。
在运行条件方面,最基础的是时钟和电 源部件,它们不可能集成到处理器内部, 但它们对于处理器运转是必需的。他们与 处理器、内存构成了硬件最小系统。
外围硬件也将提供在系统中需要,但是 微处理器内部不具有的功能,主要分为存 储器设备、I/O设备和通信设备三大类。
嵌入式系统复习
嵌入式系统的定义
一个普遍被认同的嵌入式系统的定义 是:以应用为中心、以计算机技术为 基础、软件硬件可裁剪、适应应用系 统,对功能、可靠性、成本、体积、 功耗严格要求的专用计算机系统。
嵌入式系统是将先进的计算机技术、 半导体技术和电子技术与各个行业的 具体应用相结合后的产物。
通用计算机与嵌入式系统对比
特征 形式和类型 组成
开发方式
通用计算机
看得见的计算机。 按其体系结构、运算速度和结构规
模等因素分为大、中、小型机和微 机。 通用处理器、标准总线和外设。 软件和硬件相对独立。
• 开发平台和运行平台都是通用计算 机
嵌入式系统
看不见的计算机。 形式多样,应用领域广泛,按
应用来分。
集成度高:面向应用的嵌入式 微处理器,总线和外部接口多 集成在处理器内部。
在Thumb指令集中,某些指令强制性的要 求使用R13作为堆栈指针。
由于处理器的每种运行模式均有自己独立 的物理寄存器R13,在初始化部分,都要 初始化每种模式下的R13,这样,当程序 的运行进入异常模式时,可以将需要保护 的寄存器放入R13所指向的堆栈,而当程 序从异常模式返回时,则从对应的堆栈中 恢复。
该模式主要用于运行系统中的一些特权任务
FIQ模式 用于处理快速中断,支持高速数据传输
IRQ模式
处理普通中断
Supervisor模式 处理软件中断
Abort模式 处理存储器故障
Undefined模式 处理未定义的指令,支持软件仿真
ARM的工作状态
从编程的角度看,ARM微处理器的工作 状态一般有两种,并可在两种状态之间 切换:
ARM状态 程序状态寄存器
CPSR
CPSR
SPSR_svc
SPSR_abt
CPSR SPSR_irq
未定义 R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13_ und R14_ und R15 (PC)
CPSR SPSR_und
堆栈指针—R13
R13在ARM指令中常用作堆栈指针SP,但 这只是一种习惯用法,用户也可使用其他 的寄存器作为堆栈指针。
非标准化。 外部接口复杂。 软件与硬件是紧密集成在一起
的。
• 采用交叉开发方式,开发平台 一般是通用计算机,运行平台 是嵌入式系统。
二次开发性 • 应用程序可重新编制
• 一般不能再编程
嵌入式系统的组成
编译 开发环境
下载和调试
应用程序 中间软件 操作系统 系统引导
嵌入式 处理器 外围硬件
软件系统 硬件系统
BL SUB1
……
SUB1:
……
MOV PC,R14 /*完成子程序返回 */
程序计数器PC(R15)
ARM状态下,指令长度为32位,R15 每次加4,高30位有效,即位[1:0]为0, 位[31:2]用于保存PC;
Thumb状态下, 指令长度为16位, R15每次加2,高31位有效,即位[0]为 0,位[31:1]用于保存PC;
较贵
大规模可读写数据 便宜 不能线性访问
ARM微处理器基础
ARM的运行模式 ARM的工作状态 ARM的寄存器组织 ARM的异常 ARM的存储器格式
ARM的运行模式
程序正常执行模式,但不能访问某些受保
User模式 护的资源
System模式
与User模式的运行环境一样 但是它可以不受任何限制的访问任何资源
子程序连接寄存器—R14
R14也称作子程序连接寄存器或连接寄存器LR。 当执行BL子程序调用指令时,可以从R14中得到 R15(程序计数器PC)的备份。其他情况下, R14用作通用寄存器
在每一种运行模式下,都可用R14保存子程序的 返回地址,当用BL或BLX指令调用子程序时,将 PC的当前值拷贝给R14,执行完子程序后,又将 R14的值拷贝回PC,即可完成子程序的调用返回。
存储器设备
芯片种类 SRAM SDRAM
读写方式
扩展方式
功能和特点
线性读、写
地址数据总线
线性读、写
特殊内存控制器的支持
运行代码 可读写数据 速度很快
运行代码 可读写数据
价格 贵 便宜
NOR FLASH NAND FLASH
线性读 写需要根据时序
根据时序读写
地址数据总线 GPIO或者普பைடு நூலகம்总线方式
固化代码和数据 运行代码