嵌入式硬件第五弹——ARM(1)

1. 概念

1. 1 计算机CPU内核

1.1.1 CISC

Complex Instruction Set Comupter 复杂指令集计算机 :x86 芯片面积大、加工成本高、复杂、体积大、功耗大

1.1.2 RISC

Reduced Instruction Set Comupter 精简指令集计算机 :芯片面积小、加工成本低、功耗低、体积小(便携式设备)

1.2 Cortex

  • A: Application 应用,手机、应用电子领域
  • R:real time 实时性,汽车电子,航空航天
  • M:Micro 微控制器 MCU 单片机领域

1.2.1 CortexA7 32位

  • R0 - R12 :通用寄存器(内核) ,存放数据
  • pc寄存器:program counter, 程序计数器,本质上是一个指针 指向当前代码正在执行指令的 下一条指令
  • lr寄存器:linked register, 链接寄存器,保存函数返回地址
  • sp寄存器:stack pointer, 栈指针寄存器,用来管理栈区
  • cpsr寄存器:current program status register,当前程序状态 寄存器,保存程序运行到某一步 时的状态
  • ALU:算术逻辑单元
  • spsr:save program status register ,保存/备份程序状态寄存器 ,异常发生时,保存cpsr寄存器中程序状态
  • MMU:Mermory Manager Unit,内存管理单元 用于管理虚拟内存到物理内存映射,从而 提高物理内存的利用率。 裸机必须要关闭MMU,打开icache,关闭dcache。
  • Cache:高速数据缓存,直接从Cache访问数据,提高CPU访问数据的效率
    icache:instruction cache,指令缓存,用于指令
    dcache:data cache,数据缓存,用于数据

1.3 两类总线通信

1.3.1 单总线通信

通过一根线 / 一组线和外设通信,和某个外设通信时, 其他外设接不进来

1.3.2 双总线通信

AHB总线:先进高速总线(USB、网卡、RAM),连接通信速率快的外设

APB总线:先进外设总线(GPIO、UART),连接通信速率慢的外设

1.4 RAM&ROM

1.4.1 RAM

掉电数据丢失 易失性存储器

1.4.2 ROM

掉电数据不丢失 非易失性存储器

flash:

  • nor flash: 每一个字节可以被寻址,地址总线和数据总线
  • nand flash:无法被寻址,以固定块大小写入或读取数据 512byte

1.5 ARM的7种基本工作模式

  • User:非特权模式,大部分任务执行在这种模式
  • FIQ:当一个高优先级(fast)中断产生时将会进入这种模式
  • IRQ:当一个低优先级(normal)中断产生时将会进入这种模式
  • Supervisor:当复位或软中断指令执行时将会进入这种模式
  • Abort:当存取异常时将会进入这种模式
  • Undef:当执行未定义指令时会进入这种模式
  • System:使用和User模式相同寄存器集的特权模式

1.6 异常处理

当ARM处理器产生异常时:

将当前程序状态寄存器CPSR拷贝到对应异常模式SPSR_<mode>中;

然后切换到ARM态和对应异常模式,必要时关闭中断;

保存返回地址到LR中;

跳转到异常向量表执行异常处理。

返回时:

从SPSR恢复CPSR;

从LR恢复PC。

异常向量表

相关推荐
clear sky .21 分钟前
内存8字节对齐是什么?
c语言·stm32·嵌入式硬件
辰域电子26 分钟前
STM32项目开源:智能安防与燃气监测系统(代码+原理图+仿真)
stm32·单片机·嵌入式硬件·开源·毕业设计·proteus
HUI-4741 小时前
EG1170|SSOP‑10 外置 MOS 200V 异步降压控制器,快充 / 电池充电大电流降压优选
嵌入式硬件·硬件工程
zcmodeltech1 小时前
能源电力沙盘模型控制系统设计——基于STM32与Modbus RTU的“发—输—变—配—用”全链条动态展示方案
数据库·stm32·单片机·嵌入式硬件·能源
高斯的手稿08011 小时前
丽萨单片机固件升级,裁剪hex文件
单片机·嵌入式硬件
沐欣工作室_lvyiyi2 小时前
基于单片机的汽车防碰撞刹车系统的设计与实现(论文+源码)
单片机·嵌入式硬件·汽车·单片机智能小车
云栖梦泽2 小时前
网络设备驱动(3)
linux·运维·服务器·网络·嵌入式硬件
洪核单片机3 小时前
DPJ-91基于32单片机的语音识别车语音播报车语音控制智能车
stm32·单片机·嵌入式硬件·智能车·语音识别车·语音播报车·语音控制智能车
zhaoshuzhaoshu3 小时前
守护进程(Daemon)详解:Android vs 嵌入式MCU平台对比
嵌入式硬件
单片机仿真设计12 小时前
【proteus仿真】基于 STM32 单片机衣柜温湿度监测系统(仿真图+程序)
stm32·单片机·嵌入式硬件·proteus