嵌入式硬件第五弹——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。

异常向量表

相关推荐
三易串口屏3 小时前
实验20 自动灭火场景实验
嵌入式硬件·串口屏·三易串口屏·uart 通信
蒸蛋一级爱好者3 小时前
TFTP协议
单片机·嵌入式硬件
优信电子3 小时前
STM32/C51驱动 DHTC11 温湿度传感器
stm32·单片机·嵌入式硬件·c51·温湿度传感器·dhtc11·环境测量
周周记笔记4 小时前
【元器件专题】三极管-如果B极给一个方波信号,那么V0输出也可以设计为一个方波信号
单片机·嵌入式硬件
潜创微科技4 小时前
IT68353:DP 1.4 + HDMI 2.0 + USB-C 三合一转 HDMI 2.0 单芯片KVM切换方案
嵌入式硬件·音视频
HPT_Lt5 小时前
ZCC10012支持100V/1.2A 超低静态电流同步降压转换器 兼容LM5164
单片机·嵌入式硬件
Industio_触觉智能5 小时前
瑞芯微RK3576车载智能场景之ADAS+DMS+NVR
嵌入式硬件·dms·adas·nvr·rk3576·车载智能
2zcode5 小时前
基于STM32的多功能万年历电子闹钟设计与实现
stm32·单片机·嵌入式硬件
0南城逆流06 小时前
【STM32】RTT-Studio中HAL库开发教程十四:MSMART串口组件
stm32·单片机·嵌入式硬件
潜创微科技6 小时前
IT6520:USB‑C DP Alt Mode 到 MIPI 单芯片转换方案
嵌入式硬件·音视频