4.22标量流水线分类 从不同的角度来看,有不同的分类方式,大致有以下几类。 1.按照处理机分类 按照处理机分类,流水线可以分为操作部件级、指令级和处理机级。 ①操作部件级流水线是按复杂的算术逻辑运算的过程构成流水线,比如把 浮点加法运算分成求阶差、对阶、尾数相加和结果规格化四个孑过程。 ②指令级流水线是把一条指令的解释执行过程分成若干个子过程,比如 前面所说的取指令、译码、执行、访存和写回五个子过程 ③处理机流水线是一种 宏流水里其每个处-①- 理机产生的结果存放到与下 任务1 任务2 任务3 个处理机共享存储器中,如图 P:处理机 M:存储器 4.10所示。 图4.10处理机流水线
4.2.2 标量流水线分类 ③ 处理机流水线是一种 宏流水过程,其中每一个处理 机完成某一专门的任务,各处 理机产生的结果存放到与下一 个处理机共享存储器中,如图 4.10所示。 图4.10 处理机流水线 从不同的角度来看,有不同的分类方式,大致有以下几类。 1. 按照处理机分类 按照处理机分类,流水线可以分为操作部件级、指令级和处理机级。 ① 操作部件级流水线是按复杂的算术逻辑运算的过程构成流水线,比如把 浮点加法运算分成求阶差、对阶、尾数相加和结果规格化四个子过程。 ② 指令级流水线是把一条指令的解释执行过程分成若干个子过程,比如 前面所说的取指令、译码、执行、访存和写回五个子过程
2.按照功能分类 按功能可分为单功能流水线和多功能流水线两种。单功 能流水线是所有设备按照一种模式工作,仅完成一种功能 多功能流水线是指构成流水线的设备可不同组合,在不同的 时间完成不同功能。图411所示是∏-ASC计算机的流水结构, 可构成多种流水线,比如定点加、浮点加、定点乘和浮点向 量点积等
2. 按照功能分类 按功能可分为单功能流水线和多功能流水线两种。单功 能流水线是所有设备按照一种模式工作,仅完成一种功能; 多功能流水线是指构成流水线的设备可不同组合,在不同的 时间完成不同功能。图4.11所示是TI-ASC计算机的流水结构, 可构成多种流水线,比如定点加、浮点加、定点乘和浮点向 量点积等
入 输入 累加 求阶差 求阶差 对阶 对阶 相加 相加 匚相加 相加 规格化 「规格化 输出 输H 匚输出 匚输出 n-1 ∑x(i)+y() (a)定点加 (b)浮点加 (c)定点乘 (d)浮点向量点积 图411多功能流水线的多种连接
图4.11 多功能流水线的多种连接
3.按照工作方式分类 按工作方式可分为静态和动态流水线。静态流水线是在同一时 间内只能以一种方式工作。其结构可以是单功能,也可以是多功能。 其中多功能结构的流水线在同一时间只能进行一种工作;在从一种 功能转换成另一种功能时流水线必须排空。一般不希望流水线功能 频繁切换。 动态流水线则允许在同一时间内将不同的功能段连接成不同的 子流水线集,以完成不同的运算功能。 显然,动态流水线必定是多功能流水线;单功能流水线必定是 静态流水线
3. 按照工作方式分类 按工作方式可分为静态和动态流水线。静态流水线是在同一时 间内只能以一种方式工作。其结构可以是单功能,也可以是多功能。 其中多功能结构的流水线在同一时间只能进行一种工作;在从一种 功能转换成另一种功能时流水线必须排空。一般不希望流水线功能 频繁切换。 动态流水线则允许在同一时间内将不同的功能段连接成不同的 子流水线集,以完成不同的运算功能。 显然,动态流水线必定是多功能流水线;单功能流水线必定是 静态流水线
4.按照连接方式分类 可分为线性流水线和非线性流水线。所谓线性流水线是指从输入 到输出各功能部件只允许经过一次,没有反馈回路或者分支。非线性 流水线是某些功能部件可能被反复使用,如图4.12所示,S3的输出可 反馈到S2,S的输出可反馈到S1。显然存在功能段使用冲突。 入一国国 输出 图412非线性流水线示意图
4. 按照连接方式分类 可分为线性流水线和非线性流水线。所谓线性流水线是指从输入 到输出各功能部件只允许经过一次,没有反馈回路或者分支。非线性 流水线是某些功能部件可能被反复使用,如图4.12所示,S 3的输出可 反馈到S 2,S4的输出可反馈到S 1。显然存在功能段使用冲突。 图4.12 非线性流水线示意图