打印

不能理解流水线的方式如何能提高指令执行效率?

[复制链接]
883|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
lium|  楼主 | 2015-12-26 22:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
不能理解流水线的方式如何能提高指令执行效率?
沙发
guoyt| | 2015-12-26 22:18 | 只看该作者
对指令进行了流水线的操作啊

使用特权

评论回复
板凳
lium|  楼主 | 2015-12-26 22:19 | 只看该作者
但CPU在微观的一个时间只能处理一跳指令或者一个任务,感觉它在流水线操作时还是需要那么多个时间点来完成。

使用特权

评论回复
地板
hanwe| | 2015-12-26 22:19 | 只看该作者
你看些关于空区和分支的描述

使用特权

评论回复
5
lium|  楼主 | 2015-12-26 22:19 | 只看该作者
不能理解,希望哪位懂行的用通俗点的方式解释下这个原理!

使用特权

评论回复
6
yufe| | 2015-12-26 22:20 | 只看该作者
RISC是什么

使用特权

评论回复
7
llia| | 2015-12-26 22:20 | 只看该作者
reduced instruction set computer,精简指令集计算机

使用特权

评论回复
8
wangpe| | 2015-12-26 22:20 | 只看该作者
“CPU在微观的一个时间只能处理一跳指令”,这个说法并不严密。

使用特权

评论回复
9
lium|  楼主 | 2015-12-26 22:21 | 只看该作者
怎么讲

使用特权

评论回复
10
langgq| | 2015-12-26 22:21 | 只看该作者
一条指令执行占用的时间可以再往下分解为“微微观”,
例如fetch、decode、mem/reg access、exec、write back
这几个“微微观”操作是并行的,或者说从“微微观”角度来看,CPU在一个时间点上是在并行执行多条指令。

Time   +-----------+-----------+-----------+----------+
INS1   fetch           decode       mem            exec        wb
INS2                     fetch          decode         mem        exec

使用特权

评论回复
11
zhanglli| | 2015-12-26 22:21 | 只看该作者
通俗点讲,把CPU执行1条指令的过程,比作饭店做一道菜,过程包括点菜,下单,洗菜,切菜,备调料,备汤底,炒菜,上菜总共8个步骤,假设每个步骤需要5分钟,如果只有1个人做,这个人在任何时间就只能做其中1个步骤,完成这些步骤要40分钟,这个饭店要40分钟才能上一道菜,然后才能点下一道菜。如果把这些步骤安排好先后顺序,8个人一起做8个菜,虽然每道菜从开始点到最后上还是要40分钟,但是从总体上看,这个饭店可以5分钟就出一道菜,这个5分钟就是流水线的一个节拍周期

使用特权

评论回复
12
zhuww| | 2015-12-26 22:22 | 只看该作者
比如分两个菜。切菜,烧菜。第一个菜就切好了拿去做,第二菜不是等到第一才完成了再切菜,而是第一个菜在烧的时候就可以切了。

使用特权

评论回复
13
lium|  楼主 | 2015-12-26 22:22 | 只看该作者
这个。。。我再看看吧,多谢了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

915

主题

9578

帖子

3

粉丝