水木社区手机版
首页
|版面-计算机体系结构(CSArch)|
新版wap站已上线
返回
1/1
|
转到
主题:risc-v cpu空闲的时候在干什么
楼主
|
liriver
|
2023-12-11 09:54:14
|
展开
我查了x-86有hlt汇编指令,使其进入halt状态,具体看好像是把clk置低,则整个cpu就不执行了,arm的好像有什么进入wfi状态的,但是risc-v我查了汇编也没有进入halt之类的指令,那么有个问题,cpu空闲的时候它在做什么,比如fpga的rom里还没有放程序,那么这个时候cpu在干什么,我们知道指令寄存器是按时钟周期递增的,但这时候根本取不到指令,它还递增吗,一直在递增但啥也执行不了?。描述有点混乱
,核心问题就是它空闲的时候在干什么
--
FROM 221.216.144.*
3楼
|
liriver
|
2023-12-12 09:14:34
|
展开
喔,多谢,我网上找找
【 在 rockyzhang 的大作中提到: 】
: clock gating. Save power.
: RISC-V also has wfi instrucitons.
:
--
FROM 221.216.144.*
5楼
|
liriver
|
2023-12-12 21:14:31
|
展开
WFI (Wait For Interrupt)指令是RISC—V 架构定义的专门用于休眠的指令。当处理器执行到 WFI 指令之后,将会停止执行当前的指令流,进入一种空闲状态。这种空闲状态可以被称为“休眠”状态,直到处理器接收到中断(中断局部开关必须被打开,由mie寄存器控制) ,处理器便被唤醒。处理器被唤醒后,如果中断被全局打开(mstatus寄存器的MIE域控制) ,则进入中断异常服务程序开始执行;如果中断被全局关闭,则继续顺序执行之前停止的指令流。
以上是 RISC—V 架构推荐的行为,在具体的硬件实现中, WFI 指令也可以被当成一种 NOP 操作,即什么也不干(并不真正支持休眠模式)。
--
FROM 221.216.144.*
1/1
|
转到
选择讨论区
首页
|
分区
|
热推
BYR-Team
©
2010.
KBS Dev-Team
©
2011
登录完整版