首页 > 代码库 > 流水线技术

流水线技术

一、出现流水线原因

 

 

 

      由于顺序方式和重叠方式存在着一定的缺陷,因此为了解决这些问题出现了流水方式

二、流水线概述

       流水线是只在程序执行时多条指令重叠进行操作的一种准并行处理实现技术。它是把一个重复的过程分解为若干子过程,让多个处理过程在时间上相互错开,轮流重叠的使用同一套硬件设备的各个部件,以赢得处理速度,所以流水线使用的是时间并行。也就是说准并行并不是真正的并行。此外,流水线提高的是部件的利用率和指令的平均执行速度,单个指令执行的速度没有提高。

三、流水线分类

    

四、流水线的弊端

   因为流水线解释多条指令,这些指令可能有对同一主存单元或同一寄存器的“先写后读”问题的要求,出现了相关性。


 相关冲突还可以分为:资源相关(对应的是结构冒险)、数据相关(对应数据冒险)、控制相关(对应控制冒险)

五、衡量流水线的相关

   1、吞吐率:单位时间内流水线所完成的任务数量或输出的结果数量。


 

   2、加速比:完成同样一批任务,不使用流水线所用的时间与使用流水线所用的时间之比

    

   3、效率:流水线的设备利用率。在时空图上,流水线的效率定义为n任务占用的空间区

     与k个流水段总的时空区之比。 

     

         或                

六、拓展

   RISC中采用的流水线技术有三种: