流水线的表示方法通常有三种:连接图、时空图和预约表。本节介绍前两种表示方法,非线性流水线还需要用预约表来表示。
  图8.3是一种指令流水线的连接图表示方法,一条指令的执行过程分为4个流水段。

  目前,大部分处理机的指令流水线在3至12段之间。通常把指令流水线为8段或大于8段的处理机称为超流水线处理机。
图 8.3 一种指令流水线

  有些复杂的指令在执行阶段也采用流水线方式工作,这种流水线称为操作流水线,或功能部件流水线。例如,一个浮点加法的执行过程可以采用3至6个流水段。图8.4是一个浮点加法器的4段流水线,它将浮点加法的执行过程分解为求阶差、对阶、尾数加和规格化4个子过程,每一个子过程可以在各自独立的功能部件上完成。
图 8.4 浮点加法器流水线

  在图8.4中,如果各个部件的执行时间均相等,即△t1=△t2=△t3=△t4=△t。虽然执行一次浮点加法的时间仍然需要4△t,然而,由于4个部件同时工作,每隔一个△t就能够完成一次浮点加法,输出一个运算结果。因此,采用4级流水线的浮点加法器,处理机执行浮点加法的速度能够提高3倍。
  描述流水线的工作过程,最常用的方法是采用"时空图"。例如,图8.4所示的浮点加法器流水线,采用时空图表示如图8.5所示。
  在时空图中,横坐标表示时间,也就是输入到流水线中的各个任务在流水线中所经过的时间。当流水线中的各个流水段的执行时间都相等时,横坐标被分割成相等长度的时间段。纵坐标表示空间,即流水线的每一个流水段。
图 8.5 浮点加法器流水线的时空图

  从图8.5的流水线时空图中,能够很清楚地看出各个任务在流水线的各段中流动过程。从横坐标方向看,流水线中的各个功能部件在逐个连续地完成自己的任务,例如,求阶差流水段在完成任务"1"之后,紧接着做任务"2"、任务"3"……,同样,对阶部件在完成任务"1"之后,接着做任务"2"、任务"3"等。从纵坐标方向看,在同一个时间段内有多个功能段在同时工作;例如,在t3~t4这一个时间段内,规格化部件在做第1个加法的规格化,尾数加部件在做第2个加法的尾数加,对阶部件在做第3个加法的对阶,求阶差部件在做第4个加法的求阶差。浮点加法器的4个独立的流水段同时工作,分别做4个浮点加法的不同阶段。