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.
  • M4 Execution state that the exception was taken from. A value of 0
    indicates AArch64.
  • M3: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级别执行期间的状态

相关推荐
暮云星影7 小时前
全志linux开发屏幕适配(一)屏幕参数设置说明
linux·arm开发
m0_5474866613 小时前
《ARM Cortex-M4嵌入式应用技术——基于STM32F407、STM32CubeMX与Proteus》全套PPT课件
arm开发·stm32·proteus
Lanceli_van13 小时前
SQLite 3.45.2(sqlite-autoconf-3450200)ARM 交叉编译完整步骤
arm开发·sqlite
暮云星影15 小时前
全志linux开发屏幕适配(二)`HDMI`驱动适配说明
linux·arm开发·驱动开发
暮云星影15 小时前
瑞芯微rk3566开发FIT Secure Boot
linux·arm开发·驱动开发·安全
ོ椿生拥蝶16 小时前
基于 Simulink 的三相全桥 SPWM 逆变器仿真(含 50Hz/32V 输出实现)
硬件工程
zlinear数据采集卡18 小时前
双核架构深度解析:ARM+FPGA如何让数据采集卡实现500Ksps高性能?
arm开发·fpga开发·架构
暮云星影18 小时前
全志linux开发 USB接口设置
linux·arm开发·驱动开发
暮云星影2 天前
全志开发环境搭建及编译构建
linux·arm开发·驱动开发
振南的单片机世界2 天前
PWM调压调速,H桥换向:直流电机四象限控制
arm开发·stm32·单片机·嵌入式硬件