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级别执行期间的状态

相关推荐
进击的小头1 小时前
20_第20篇:嵌入式外设驱动开发基础:寄存器级开发与库函数开发对比实战
arm开发·驱动开发·单片机
AI服务老曹5 小时前
架构实战:如何构建支持X86/ARM及异构GPU/NPU的跨平台企业级AI视频管理系统?
arm开发·人工智能·架构
ai产品老杨5 小时前
【架构深研】如何构建兼容X86/ARM与异构算力的AI视频中台?基于GB28181与边缘计算的源码交付实践
arm开发·人工智能·架构
ai产品老杨6 小时前
解构企业级AI视频中台:基于X86/ARM与GPU/NPU异构架构的深度演进与源码交付实践
arm开发·人工智能·音视频
Smart-佀17 小时前
涨薪秘技:智能家居中的BLE协议与实现
网络·arm开发·嵌入式硬件·microsoft
W.W.H.1 天前
远程连接协议(SSH\Telnet\FTP\Serial等)
运维·arm开发·经验分享·ssh
智者知已应修善业1 天前
【触发器种类和真值表】2023-7-5
驱动开发·经验分享·笔记·硬件架构·硬件工程
weixin_669545201 天前
支持 18W 快充的 2 节/3 节串联锂电池高效同步升压充电芯片 SW7306
人工智能·单片机·嵌入式硬件·硬件工程
程序员黄老师1 天前
一分钟了解ARM发展史与全系列产品
arm开发·嵌入式硬件·arm
AI服务老曹1 天前
【架构深度解析】从X86到ARM的异构算力调度:如何利用 Docker 与 GB28181 构建高可用的私有化AI视频管理平台(含源码交付方案)
arm开发·docker·架构