WFI (Wait For Interrupt)指令是RISC—V 架构定义的专门用于休眠的指令。当处理器执行到 WFI 指令之后,将会停止执行当前的指令流,进入一种空闲状态。这种空闲状态可以被称为“休眠”状态,直到处理器接收到中断(中断局部开关必须被打开,由mie寄存器控制) ,处理器便被唤醒。处理器被唤醒后,如果中断被全局打开(mstatus寄存器的MIE域控制) ,则进入中断异常服务程序开始执行;如果中断被全局关闭,则继续顺序执行之前停止的指令流。
以上是 RISC—V 架构推荐的行为,在具体的硬件实现中, WFI 指令也可以被当成一种 NOP 操作,即什么也不干(并不真正支持休眠模式)。
--
FROM 221.216.144.*