RISC-V(五):xceptions, Traps, and Interrupts介绍

一、核心术语定义

表格

术语 定义
Exception(异常) 运行时与当前指令直接相关的异常情况,例如非法指令、地址错误。
Interrupt(中断) 来自外部的异步事件,可能导致控制流意外跳转,例如外设中断、定时器中断。
Trap(陷阱) 由异常或中断引发的,控制流跳转到陷阱处理程序的行为

补充:这里对 "exception" 和 "trap" 的定义与 IEEE-754 浮点标准兼容。


二、Trap对软件的四种影响类型

根据软件的可见性和执行环境的处理方式,陷阱分为四类:

1. Contained Trap(容器内陷阱)

  • 特点:陷阱对软件是可见的,由当前执行环境处理。
  • 例子 :用户态程序执行ECALL系统调用,控制流跳转到同一 Hart 上的监管态处理程序;中断处理程序也在同一 Hart 上运行。
  • 软件视角:软件知道陷阱发生了,并主动或被动地处理它。

2. Requested Trap(请求式陷阱)

  • 特点:这是一种同步异常,是软件向执行环境发出的显式请求。
  • 例子:系统调用。执行环境处理请求后,程序可能继续运行,也可能被终止(如进程退出)。
  • 软件视角:软件主动发起请求,执行环境按需响应。

3. Invisible Trap(透明陷阱)

  • 特点:陷阱由执行环境透明处理,软件完全感知不到。
  • 例子
    • 模拟缺失的指令(如软件实现的指令集扩展);
    • 处理虚拟内存的页缺失;
    • 多道程序中为其他任务处理中断。
  • 软件视角:程序正常运行,不知道发生了陷阱。

4. Fatal Trap(致命陷阱)

  • 特点:表示致命错误,导致执行环境终止执行。
  • 例子:虚拟内存页保护检查失败、看门狗定时器超时。
  • 软件视角:程序被终止,无法继续执行。

三、陷阱类型特征对照表

表格

陷阱类型 程序是否终止 软件是否知晓 执行环境是否处理
Contained No No Yes
Requested No¹ No Yes
Invisible No Yes Yes
Fatal Yes Yes² Yes

注:

  1. Requested Trap 的终止是可选的(由请求决定)。
  2. Fatal Trap 的终止对软件是可见的。

四、其他关键说明

  • 陷阱的精确性 :执行环境定义陷阱是否被精确处理。ContainedRequested陷阱可能被软件观察为不精确;Invisible陷阱定义上无法被软件判断为精确或不精确;Fatal陷阱也可能被软件观察为不精确。
  • 非特权指令的文档范围 :由于本文档描述的是非特权指令,陷阱很少被提及。处理Contained陷阱的架构方法在特权架构手册中定义。仅为引起Requested陷阱的非特权指令(如ECALL)会在此处说明。
  • 指令编码 :未定义的指令编码可能导致Fatal Trap

一句话总结

本节清晰界定了 RISC-V 中异常、中断和陷阱的概念,并根据软件可见性和处理方式将陷阱分为四类,其中ContainedRequestedInvisibleFatal分别描述了陷阱对程序执行的不同影响。

相关推荐
hongmai6668881 天前
ESP32-C61-WROOM-1-N8R2:Wi-Fi 6与RISC-V融合的中坚力量
人工智能·单片机·嵌入式硬件·物联网·智能家居·risc-v
国科安芯2 天前
在轨能源中枢:AS32S601型抗辐射MCU在卫星电源管理与配电系统中的控制策略研究
嵌入式硬件·架构·能源·risc-v·sps·电源管理·卫星
nh752711 天前
(一)HPM自定义工程创建实操
单片机·risc-v·hpm·先楫
蓝速科技13 天前
蓝速科技 RISC-V+ 鸿蒙终端:一机多场景信创改造实效评测
科技·harmonyos·risc-v
MounRiver_Studio15 天前
RISC-V IDE MRS2调试秘籍(三):通过栈帧可视化模块定位栈溢出、栈内存非法篡改等运行时错误
mcu·risc-v·代码调试
MounRiver_Studio15 天前
RISC-V IDE MRS2调试秘籍(一):通过Memory内存导出对比,锁定隐性内存异常代码
mcu·调试技巧·risc-v·代码调试
蓝速科技19 天前
蓝速科技 RISC-V 鸿蒙信创终端全场景落地方案
科技·harmonyos·risc-v
国科安芯19 天前
ASC4T245S分组双向控制架构深度解析:独立DIR/OE控制、QFN16封装与混合方向总线桥接
单片机·嵌入式硬件·物联网·fpga开发·架构·risc-v
蓝速科技20 天前
蓝速科技 RISC-V 鸿蒙信创工控终端深度评测
科技·harmonyos·risc-v
tianyuanwo1 个月前
深入解析 RISC-V 虚拟化中的 UEFI 固件配置:从 XML 到 NVRAM 的生命周期管理
xml·linux·risc-v