S3C2440A的ARM工作模式以及寄存器种类

本文详细介绍了ARM处理器的工作模式,包括用户模式、特权模式(如系统模式、管理模式、未定义模式、中止模式、中断模式和快速中断模式),以及寄存器的种类,如通用寄存器、栈指针寄存器、链接寄存器和程序计数器。特别强调了特殊寄存器CPSR和SPSR在不同模式下的作用。内容适合于理解和分析基于ARM架构的系统设计。
摘要由CSDN通过智能技术生成


前言


本期和大家主要分享的是ARM工作模式以及寄存器种类,不同系列的ARM的工作模式以及寄存器的种类大同小异,所以针对于S3C2440A,一定得通过这一种ARM能够去分析其他的ARM架构,这就要求我们对S3C2440A认真剖析并且进行原理上的理解而不是一味的背诵记忆,包括对特殊寄存器的理解;那么接下来看一下它的工作模式和寄存器的种类吧!

一、ARM的工作模式

ARM的工作模式 = 用户模式+特权模式;特权模式这里又被分为五种模式;
(1)usr用户模式:应用程序运行的模式(大多数的模式状态)
(2)sys系统模式(特权模式):和usr模式使用相同一组寄存器的特权模式
异常模式
(1)svc 管理模式:cpu上电复位后的模式,软件中断后cpu的模式
(2)und 未定义 :出现不识别指令时,cpu的工作模式
(3)abort 中止:预取指令失败,数据加载失败cpu的工作模式
(4)irq中断 : irq中断cpu的工作模式
(5)fiq :快速中断fiq,中断cpu的工作模式(fiq的优先级一般高于irq)

二、寄存器的种类(注意特殊寄存器的使用)

ARM920T总共有37个寄存器,每个模式都有一组寄存器,寄存器通过名字区分

r0-r14:通用寄存器;

r13(sp):栈指针寄存器:当任务切换时,可以保存通用寄存器数据到sp指向的内存空间;

r14(lr):链接寄存器:函数跳转时,可以保存返回地址到lr寄存器;

r15(pc):程序计数器:
写操作: cpu跳转到写入的地址处执行代码,上电默认0;
读操作:读取的数据是当前正在执行指令的下下条指令地址 ;

功能寄存器: cpsr spsr
cpsr (程序状态寄存器):记录当前程序状态;
spsr(程序状态保存寄存器):保存cpsr;每一种模式下都有一个状态寄存器SPSR,用于保存CPSR的状态,以便异常返回后恢复异常发生时的工作状态。
下图是2440中的寄存器:
在这里插入图片描述


总结

本期分享的内容ARM工作模式以及寄存器种类,并且本期分享内容较少的原因也是因为这块的知识是一段很重要并且可以拿出来单独理解记忆的东西,后续希望大家在记忆的基础上一定着重对于原理的理解;
最后,各位小伙伴们如果喜欢我的分享可以点赞收藏哦,你们的认可是我创作的动力,一起加油!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值