您的位置:首页 > 其它

流水线

2013-10-13 23:07 435 查看

流水线

计算机组成原理部分流水线是经常考的一个内容。下面来总结一下流水线

(1)流水线的概念

流水线是指程序执行多条指令重叠进行操作的一种准并行处理技术。

若一条指令由多个部件完成,那么使用流水线操作,可以使各个部件同时操作,但是此时的同时是针对不同的指令而言。

例子:
若是一条指令是由取值、分析、执行三个部件完成。若没有采用流水线技术,当一条指令完成后,才能执行下一条指令,运行结果如下:在没有使用流水线的情况下,部件的利用率只有30%利用率非常低,浪费资源




若是采用流水线技术,结果如下:
采用流水线的处理方式以后部件利用率达到了60%,
利用率得到了显著的提高,但并没有提高单个指令的执行速度




使用流水线技术,三条指令完成的时间缩短了。但是需要注意,这里的时间是说的指令的总的时间。而单独的一条指令的时间却没有改变。指令的总时间是因为充分利用设备的空闲时间而提高了设备的利用率,从而缩短了总的时间,因而提高了指令的速度。
(2)流水线中计算问题
·流水线指令运行时间:




指令是由多个部件构成的,所以Δti是各个部件所使用的时间。n:代表指令的个数。Δtj是各个部件中运行时间最长的时间。为什么如此,可以通过上图推出。
·流水线的吞吐率(TP):单位时间内流水线所完成的任务数量。




其中:n:代表指令的条数,即任务的个数。Tk:代表指令运行的时间。
·流水线的加速比S:不使用流水线技术与使用流水线技术之比。




其中Tk:流水线指令的运行时间,可以通过公式求出,而T0是各个指令时间之和。



·流水线的效率:流水线的设备利用率。n个任务占用的时空区与k个流水段总的时空区之比。



通过加速比公式可得:效率和加速比之间的关系:




若是各个部件的运行时间相同,则效率和吞吐率之间可以:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: