RISC-V 中的 Wait For Interrupt 指令 (wfi) 详解

RISC-V 中的 Wait For Interrupt 指令 (wfi)

Note:

以下内容主要来自 RISC-V 特权手册相关部分

——→ 后一些个人注解,使得原文的含义更容易理解

希望对你有所帮助

wfi 详细内容

Wait for Interrupt(WFI)指令通知硬件可以暂停当前的 hart,直到有中断需要服务。[执行 WFI 指令也可以用于通知硬件平台,适当的中断应该优先路由到这个 hart]。WFI 在所有特权模式下都可用,并且可选地对 U-mode 可用

——→ WFI 可以认为就是低功耗设计,让 hart 在等待的时候可以进入低功耗状态

mstatus 中的 TW=1 时,执行此指令可能会引发非法指令异常,具体描述见特权手册 3.1.6.6 节中关于 TW 位的描述。

——→ 这意味着高特权级有办法捕捉低特权级的 WFI 指令,比如 VM 的 wfi 可以被 Hypervisor 捕捉

在这里插入图片描述

如果一个已使能的中断存在,或者在 hart 被暂停时变为存在,下一条指令将会触发中断陷阱,即执行将从中断处理程序继续,且 mepc = pc + 4

下一条指令会触发中断陷阱,以便从中断处理程序返回时,能够执行 WFI 指令之后的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值