自学嵌入式 day45 ARM体系架构

一、SOC

RAM:随机访问存储器,存放随机变量,掉电数据丢失

ROM:只读存储器,存放单片机的程序、指令,掉电数据不丢失

注:

1、冯诺依曼架构中将数据与指令存放在同一存储器中

2、哈佛架构是将数据与指令存放在不同的存储器中

二、内核

1、ALU:算术逻辑单元

2、R0~R15:通用寄存器

注:(1)R13(SP):堆栈指针,存放栈区的地址

(2)R14(LR):链接返回,存放要返回的地址

(3)R15(PC):程序计数,指向当前执行的指令的下一个指令地址

3、CPSR:当前程序状态寄存器,存放当前的程序状态

4、SPSR:是CPSR的备份,方便程序返回是恢复之前CPSR的状态

5、cache:高速缓冲存储器,CPU可以直接访问,用来存放当前正在执 行的程序中的活跃部分,以便快速地向CPU提 供指令和数据。

1)i cache:代码高速缓冲存储器

2)d cache:数据高速缓冲存储器

6、MMU:内存处理单元,把物理单元映射为虚拟内存

三、计算机的指令集

CPU的指令集其实就是用指令对计算机实现控制 和计算的指令集合,分复杂指令集和精简指令集 。

RISC:Reduced Instruction Set Computer,精简指令集

CISC:Complex Instruction Set Computer,复杂指令集

注:1、AHB:先进的高速总线

2、APB:先进的外设总线

四、RAM
五、ROM

1、nor flash 可被寻址

2、nand flash 不可寻址

六、处理器工作模式

ARM有7个基本工作模式:

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

FIQ:当一个高优先级(fast)中断产生时将会进入这种模式

IRQ:当一个低优先级(normal)中断产生时将会进入这种模式

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

Abort:当存取异常时将会进入这种模式

Undef:当执行未定义指令时会进入这种模式

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

七、异常处理
八、汇编指令

1、查手册:

2、mov

Rd:目标寄存器,包括所有通用寄存器

Rm:源寄存器

#<const>:立即数

LSL:逻辑左移;

LSR:逻辑右移

ROR:循环右移;

九、汇编程序

1、start.s

area reset, code, readonly

code32

entry

mov r0,#2

mov r2,r0,ror #2

end

注:调试:

(1)

(2)

相关推荐
GilgameshJSS4 小时前
STM32H743-ARM例程9-IWDG看门狗
c语言·arm开发·stm32·单片机·嵌入式硬件·学习
月盈缺5 小时前
学习嵌入式的第四十一天——ARM——时钟与定时器
arm开发·学习
DebugKitty9 小时前
硬件开发2-ARM裸机开发3-I.MX6ULL - 时钟、定时器
arm开发·fpga开发·定时器·时钟
生涯にわたる学び13 小时前
关于之前知识的一些补充 02
linux·arm开发
XINVRY-FPGA14 小时前
XC7A100T-2CSG324I 赛灵思 Xilinx AMD Artix-7 FPGA
arm开发·嵌入式硬件·fpga开发·硬件工程·信号处理·dsp开发·fpga
扫地的小何尚15 小时前
CUDA 13.0深度解析:统一ARM生态、UVM增强与GPU共享的革命
arm开发·人工智能·自然语言处理·gpu·nvidia·jetson·nvidia thro
三毛200415 小时前
玳瑁的嵌入式日记---0928(ARM--I2C)
arm开发
szxinmai主板定制专家16 小时前
ZYNQ 平台下的四声道超声流量计设计与实现
运维·arm开发·人工智能·分布式·fpga开发
GilgameshJSS19 小时前
STM32H743-ARM例程11-PWM
c语言·arm开发·stm32·嵌入式硬件·学习
学不动CV了1 天前
FreeRTOS---任务级和中断级临界区管理使用的理解与源码分析
c语言·arm开发·stm32·单片机·嵌入式硬件·51单片机