在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
芯片精品文章合集(500篇!) 创芯人才网--重磅上线啦!
查看: 4994|回复: 3

[求助] MIPS cache未命中,CPU进入异常后的操作过程疑问

[复制链接]
发表于 2013-10-19 11:49:48 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
MIPS cache未命中,CPU进入异常,在异常程序中会将内存内容读到CACHE吧。这样在CPU发出读指令后,有效数据可能要等几个时钟节拍才能被CPU读到(假设CPU运行速度比内存速度高出很多),在这几个时钟节拍里CPU的流水线会停下来等待该条指令操作完毕还是执行其他操作?真是想不通,哪个大神给讲讲。
发表于 2013-11-17 22:28:13 | 显示全部楼层
我知道的是等待;现在新的技术,cache是可以预读的,那个我就不知道流水线是不是在工作了;
发表于 2013-11-28 15:47:32 | 显示全部楼层
首先纠正一个错误, cache不命中和异常处理是两回事,即cache不命中不会导致异常。
      在这里说一下数据cache不命中。最直观的流程是, cache miss后cpu会从main memory reload相应的一段数据,一般称之为line到cache中, 从miss到reload完成 cpu的pipeline被stall住,直到reload完成。
     指令miss完全相仿。
     当然这里的stall所指的scope都是单个cpu核。
发表于 2013-12-23 22:45:23 | 显示全部楼层




    楼上精辟,,CPU速度和内存速度也是两回事,
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-12-25 09:06 , Processed in 0.032026 second(s), 11 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表