大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺
本人在复习计组流水线时,遇到了一些问题,再次记录,以备不时之需。
首先要弄明白一点,那就是cpu的各阶段是否具有相同的时钟周期,也就是说,每个阶段所花费的时间是否都是相同的?
为什么会想到这个问题,先看一下408统考真题的这一题:
刚开始那是想都没想,这他么这么简单的题,肯定选A啊,虽然的确做对了,但分析这道题所考的知识点时,想的就多了,为什么时钟周期不能小一点,比如为50ns,让每个阶段所占用两个时钟周期不就得了,但是这时候脑子突然想到,cpu流水线的每个阶段是不是必须是一个时钟周期啊?这时候,我知道我迷了,赶紧查资料,最后问了老师,得到以下两个结论:
1.cpu流水线的每个阶段不一定只占用一个周期。
2.cpu流水线的每个阶段所占用时钟周期数可以不相同。
那么问题来了,这样说得话,这题没有固定答案啊。仔细分析题目,才发现题目中的“流经”二字,显然题目的意思是硬件已经设计完毕,功能块不受时钟控制,相当于组合逻辑电路,故必须大于90ns,才能保证指令顺利流经各个功能段。
再看一题求解cpu流水线的吞吐率的问题。
之所以有疑问,是因为当时不知道每个阶段可以具有不同的时钟周期,明白了这一点,问题影刃而解。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/171422.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...