ARM基础知识

1.计算机系统基本组成:

硬件系统,软件系统

2.计算机硬件系统基本组成

运算器,控制器,存储器,输入设备,输出设备

3.嵌入式中常用专有名词解释

MPU:微处理器

MCU:微控制器

DSP:数字信号处理器

SOC:片上系统

4.ARM基本架构

ARM属于RISC(reduce instruction set computer)精简指令集架构

kernal(大脑)+GPIO(外设寄存器)+UART(通用异步收发器)+PWM(调制)+RAM+ROM

RAM VS ROM

RAM:

1.可以被处理器直接寻址

2.访问速度快

3.价格昂贵

4.掉电丢失

ROM:

1.不可以被处理器直接寻址

2.访问速度慢

3.价格便宜

4.掉电不丢失

5.ARM核内部结构

通用寄存器+特殊功能寄存器(32位)

通用功能寄存器:

R0-R15:

**R0-R12:**数据操作和地址计算

R13:SP---栈指针寄存器,存放栈顶位置

R14:LR---链接寄存器,用于备份PC

R15:PC---程序计数器,指向要执行的下一条语句

特殊功能寄存器

ALU:算数逻辑单元,用于算数,逻辑运算

cache:高速缓存,内部分为i cache和d cache,前者用于缓存指令,后者用于缓存数据

CPSR:当前状态寄存器

SPSR:程序状态备份寄存器(CPSR的备份)

MMU:内存管理单元

6.处理器的工作模式

1,user :非特权模式,大部分任务执行在这种模式

2,FIQ:当一个高优先级中断产生时进入

3.IRQ:当一个低优先级中断产生时进入

4.Supervisor(SVC):当复位时or软件中断产生时进入

5.Abort:存取发生异常时进入

6.Undef:执行未定义的指令进入

7.System:和user模式共享寄存器集的特权模式

7.异常处理

1.当异常产生时

a.拷贝当前工作模式的CPSR到异常模式的SPSR

b.设置适当的CPSR位(异常模式下的)

c.保存返回地址到异常模式下的LR中

d.设置PC为相应异常向量

2.异常处理完成返回时

a.从异常模式下的SPSR恢复CPSR

b.从LR恢复PC

d.以上操作只能在ARM态执行

8.冯诺依曼架构VS哈佛架构

**1.存储结构:**冯诺依曼架构为单存储器,同时存储指令和数据;哈佛架构为分离的存储器,指令存储器+数据存储器

**2.总线系统:**冯诺依曼架构为单一系统总线用于传输指令&数据(分时复用);哈佛架构为两套独立总线,指令总线+数据总线

**3.优势:**冯诺依曼架构设计简单,硬件成本低;哈佛架构有更高的执行效率,实时性更好

**4.劣势:**冯诺依曼架构指令和数据不能同时获取;哈佛架构设计复杂,需要更多的引脚

ARM使用的是哈佛架构

相关推荐
AndyHeee10 小时前
【SVC、PendSV(系统异常) 与 外设 IRQ 、NVIC笔记】
arm开发
暮云星影11 小时前
瑞芯微rk3588利用Rockchip NPU运行大语言模型(LLM)
arm开发·人工智能·语言模型·自然语言处理
techdashen12 小时前
绕过系统 ICMP:用 rawsock、Npcap 和 WMI 找到默认网卡
开发语言·arm开发·rust
振南的单片机世界13 小时前
ARM中断比51快在哪?硬件压栈+NVIC集中管理
arm开发·stm32·单片机·嵌入式硬件
墨绿色的摆渡人14 小时前
论文笔记(一百三十七)Learning Dual-Arm Push and Grasp Synergy in Dense Clutter
arm开发·论文阅读
暮云星影1 天前
全志linux开发屏幕适配(一)屏幕参数设置说明
linux·arm开发
m0_547486661 天前
《ARM Cortex-M4嵌入式应用技术——基于STM32F407、STM32CubeMX与Proteus》全套PPT课件
arm开发·stm32·proteus
Lanceli_van1 天前
SQLite 3.45.2(sqlite-autoconf-3450200)ARM 交叉编译完整步骤
arm开发·sqlite
暮云星影1 天前
全志linux开发屏幕适配(二)`HDMI`驱动适配说明
linux·arm开发·驱动开发
暮云星影1 天前
瑞芯微rk3566开发FIT Secure Boot
linux·arm开发·驱动开发·安全