ARMv8架构特殊寄存器介绍-1

1,ELR寄存器(Exception Link Register )

The Exception Link Register holds the exception return address。

异常链接寄存器保存异常返回地址。最常用也很重要。

2,SPSR(Saved Process Status Register)

当获取异常时,处理器状态存储在相关的Saved Program Status中寄存器(SPSR),与ARMv7中的CPSR类似。SPSR保存PSTATE的值在执行一个异常时,用于恢复PSTATE的值异常返回。
The individual bits represent the following values for AArch64:

  • N Negative result (N flag).
  • Z Zero result (Z) flag.
  • C Carry out (C flag).
  • V Overflow (V flag).
  • SS Software Step. Indicates whether software step was enabled when an
    exception was taken.
  • IL Illegal Execution State bit. Shows the value of PSTATE.IL
    immediately before the exception was taken.
  • D Process state Debug mask. Indicates whether debug exceptions from
    watchpoint, breakpoint, and software step debug events that are
    targeted at the Exception level the exception occurred in were masked
    or not.
  • A SError (System Error) mask bit.
  • I IRQ mask bit.
  • F FIQ mask bit.
  • M[4] Execution state that the exception was taken from. A value of 0
    indicates AArch64.
  • M[3:0] Mode or Exception level that an exception was taken from.

在ARMv8中,写入的SPSR依赖于Exception级别。如果在EL1中采取异常,则使用SPSR_EL1。如果在EL2中采用异常,则使用SPSR_EL2在EL3中采用异常,则使用SPSR_EL3。当取an时,核心填充SPSR

例外。

注意:

与异常级别相关联的寄存器对ELR_ELn和SPSR_ELn保留它们在较低的Exception级别执行期间的状态

相关推荐
逼子格34 分钟前
Altium Designer(AD)原理图更新PCB后所有器件变绿解决方案
单片机·嵌入式硬件·硬件工程·问题解决·ad·pcb·altium designer
蒋星熠4 小时前
中间件架构设计与实践:构建高性能分布式系统的核心基石
开发语言·数据库·分布式·python·中间件·性能优化·硬件工程
明天见~~8 小时前
ARM 汇编学习
arm开发
Skylar_.1 天前
嵌入式 - ARM(4) 硬件介绍与开发环境搭建
arm开发
pengfei_M1 天前
一、ARM异常等级及切换
arm开发
sheepwjl1 天前
《嵌入式硬件(六):ARM汇编核心内容总结》
汇编·arm开发·嵌入式硬件
路溪非溪1 天前
Linux驱动如何向应用层提供sysfs操作接口
linux·arm开发·驱动开发
蒋星熠2 天前
Flutter跨平台工程实践与原理透视:从渲染引擎到高质产物
开发语言·python·算法·flutter·设计模式·性能优化·硬件工程
武文斌772 天前
arm启动代码总结
arm开发·嵌入式硬件·学习
ShiMetaPi2 天前
操作【GM3568JHF】FPGA+ARM异构开发板 使用指南:蓝牙
arm开发·嵌入式硬件·fpga开发·rk3568