嵌入式硬件day4

一.ARM架构与内核分类

1.ARM内核系列:

Cortex-A系列:用于高性能应用,运行Linux/Android

Cortex-B系列:用于实时性要求高的场景

Cortex-M序列:用于低功耗嵌入式控制

2.指令集架构:

ARMv1~ARMv9 是ARM指令集架构版本;

Cortex-A7 基于 ARMv7-A 架构,32位;

3.RISC(精简指令集计算机)

ARM属于此类,指令固定长度、执行效率高

4.CISC(复杂指令集计算机)

x86属于此类,指令长度可变、功能复杂

二.计算机系统组成

硬件系统:运算器、控制器、存储器、输入设备、输出设备

CPU = 运算器 + 控制器 + 寄存器等

三.ARM内核中的器件:

1.ALU(算数逻辑单元)

执行整数运算和逻辑操作;

2.FPU(浮点单元)

处理浮点数运算;

3.缓存(Cache)

指令缓存(I-Cache) 与 数据缓存(D-Cache);

4.内存管理单元(MMU)

实现虚拟内存(Cortex-A系列),用于Linux等复杂OS;

内存保护单元(MPU)

内存区域保护(Cortex-M系列,用于实时系统);

5.寄存器组:

R13(sp):栈指针寄存器

R14(LR):链接寄存器,保存子程序返回地址

R15(PC):程序计数器,指向下一条指令地址

CPSR:当前程序状态寄存器(包含标志位、模式位等)

SPSR:备份程序状态寄存器(异常情况下保存CPSR)

6.流水线:三级流水线示例:

预取、译码、执行

四.存储器类型

1.RAM(随机存取存储器)

易失性、速度快、可直接寻址

2.ROM(只读存储器/闪存)

非易失性、速度较慢、存储固件/系统代码

五.常见处理器类型

  • MPU:微处理器,通用型,偏向处理。

  • MCU:微控制器,集成度高(CPU+内存+外设),偏向控制。

  • DSP:数字信号处理器,擅长数学运算。

  • SoC:片上系统,集成多个功能模块(CPU、GPU、DSP、外设等)

六、总线结构

AMBA总线:

AHB:高性能总线,连接CPU、内存、DMA等

APB:低速外设总线,连接UART、GPIO等外设

七.ARM内核处理器工作模式

1.User:非特权模式,大部分任务执行在这个模式

2.FIQ:当一个高优先级中断产生时将进入这种模式

3.IRQ:当一个低优先级中断产生时将进入这种模式

4.Supervisor:当复位或软中断指令执行时将会进入这种模式

5.Abort:存取异常时会进入此模式

6.Udef:执行未定义指令时会进入此模式

7.System:使用和User模式相同寄存器集的特权模式

Cortex-A特有的模式:

Monitor:执行安全监控代码的模式,也是一种特权模式

八.异常向量表

1.异常处理流程

当异常产生时, ARM core:

  • 保存现场 :拷贝 CPSR(当前程序状态寄存器)到 SPSR_<mode>(对应异常模式的备份状态寄存器)

  • 切换状态

    • 强制进入 ARM 指令集状态(从Thumb状态切换回来)

    • 切换到对应的异常模式(如IRQ模式、FIQ模式等)

    • 禁用中断(防止嵌套,如进入IRQ时自动禁用IRQ)

  • 保存返回地址 :将返回地址存入 LR_<mode>(对应异常模式的链接寄存器)

  • 跳转 :设置 PC 指向异常向量表中对应的地址

返回时软件需要

  • SPSR_<mode> 恢复 CPSR

  • LR_<mode> 恢复 PC

  • 注意:这些操作只能在ARM状态下执行

相关推荐
BackCatK Chen10 小时前
第 8 篇:TMC2240 电机正反转实现|DIR 引脚控制 + 代码优化(稳定不抖动)
stm32·单片机·嵌入式硬件·保姆级教程·电机正反转·tmc2240·dir引脚控制
星马梦缘11 小时前
EDA彩灯电路绘制
单片机·嵌入式硬件·物联网·pcb·eda·嘉立创
VekiSon17 小时前
Linux内核驱动——杂项设备驱动与内核模块编译
linux·c语言·arm开发·嵌入式硬件
来自晴朗的明天18 小时前
14、光耦隔离电路(EL3H7)
单片机·嵌入式硬件·硬件工程
G***技18 小时前
杰和IB3-272:以低功耗高性能打造新一代工业智能交互核心
单片机·嵌入式硬件·物联网
MAR-Sky19 小时前
keil5中数据的不同定义和单片机(以stc8为例)里的对应关系(idata,xdata,data,code)
单片机·嵌入式硬件
项目題供诗21 小时前
51单片机入门(八)
单片机·嵌入式硬件·51单片机
羽获飞21 小时前
从零开始学嵌入式之STM32——9.STM32的时钟系统
stm32·单片机·嵌入式硬件
飞睿科技1 天前
乐鑫智能开关方案解析:基于ESP32-C系列的低功耗、高集成设计
嵌入式硬件·物联网·esp32·智能家居·乐鑫科技
来自晴朗的明天1 天前
13、NMOS 电源防反接电路
单片机·嵌入式硬件·硬件工程