1. 趣味生活常识网首页
  2. 投稿

cpu流水线工作原理图解(指令流水线工作原理的简单理解)

要理解指令流水线,先大概回顾一下CPU的内部结构:

cpu流水线工作原理图解(指令流水线工作原理的简单理解)

图a

cpu流水线工作原理图解(指令流水线工作原理的简单理解)

图b

由上面两个图我们知道,一条指令要被执行,需要通过一个电路把指令从存储器中取出,放进CPU里面,再由CPU里面的另一个电路ALU去执行(图b中的左边部分)。也就是说,取指令和执行指令是由两部分不同的电路完成的。

cpu流水线工作原理图解(指令流水线工作原理的简单理解)

图1

上图是指令一条一条执行的过程。

cpu流水线工作原理图解(指令流水线工作原理的简单理解)

图2

图2表示,当指令执行部件的某一部分电路空闲的时候,这个时候就可以采用流水线的方式。图中的一个方框表示一个时间周期。

cpu流水线工作原理图解(指令流水线工作原理的简单理解)

这一部分表示对于第一条指令来说,当进入第二个时间周期,它已经处于执行阶段,ALU电路部分在工作,但是用于取指令的那部分电路空闲了,所以这部分取指令电路可以用于取出第二条指令,这就是指令流水线的基本原理。

cpu流水线工作原理图解(指令流水线工作原理的简单理解)

图3

这个和我们工厂的流水线是一样的道理,流水线上不同的工人代表不同的电路部分。

cpu流水线工作原理图解(指令流水线工作原理的简单理解)

上图是一条指令需要六个不同的电路进行配合。

cpu流水线工作原理图解(指令流水线工作原理的简单理解)

当采用流水线以后,会出现一些问题,比如,在写后读相关问题中,第二条指令开始工作的时候,R1的内容必须已经确定,否则就会出错。对于这样的问题,就要有相应的解决办法。

由流水线产生了一些相应的技术:

cpu流水线工作原理图解(指令流水线工作原理的简单理解)

cpu流水线工作原理图解(指令流水线工作原理的简单理解)

上图中的一个方格代表一个时钟周期,在同一个时钟周期里面,可以有4条或者3条指令同时并发执行。注意,是并发,而不是并行,意味着CPU还是一个,只不过是利用不同的时间片。

cpu流水线工作原理图解(指令流水线工作原理的简单理解)

cpu流水线工作原理图解(指令流水线工作原理的简单理解)

上图中的一个时钟周期被多条指令分开

cpu流水线工作原理图解(指令流水线工作原理的简单理解)

,也就是说,执行指令的某一个动作的某个电路部分,不必等这个时钟周期结束,在同一个时钟周期内,就可以执行另外一条指令。比如,假定图3中的每个工人完成一个动作(检查一个零件或者打一个螺丝)规定为1分钟(时钟周期),但在超流水线技术里面,这个工人

10秒钟就检查完了一个零件,剩下的50秒就可以检查另外的零件。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至87172970@qq.com举报,一经查实,本站将立刻删除。

发表评论

登录后才能评论