第 5 章 流水线技术
1. 流水线处理的基本原理
2. 流水线工作的主要障碍—流水线竞争
3. 多周期操作的流水线策略
4. 流水线的动态调度
5. 高级流水线—进一步开发指令集的并行处理
6. 非线形流水线
流水线技术基础和高级流水线技术两大部分。基础技术包括
流水线处理的基本原理和流水线的动态调度、指令级并行性
的开发和非线形流水线等内容。
2
第 一段
一、知识点
1. 流水线处理的基本原理
2. 流水线工作的主要障碍—流水线竞争
二、重点
1. 流水线处理的基本结构与时空图;
线性流水线和非线性流水线的区别;
流水状态图与流水的功能状态图;
2. 由资源缺乏引起的资源竞争 , 导致指令形成重叠执行的结构竞争 ;
由指令间数据相关而引起的数据竞争;
由程序指针 PC 值的改变而引起的控制竞争;
三、应记住的一些的概念
1. 什么是流水线技术?
2. 什么是流水级或流水节拍?
3. 什么是流水线工作的三个阶段?
4. 什么是结构竞争 ?
5. 什么是数据竞争 ?
6. 什么是控制竞争 ?
计算机系统结构研究的目的就是为了提高计算机性能,流水线
技术就是其中最重要的设计思想之一。流水线技术在现代的计算机系
统结构中最普遍的一种技术。
流水线技术的基本思想在冯 · 诺依曼 (Von Neumann) 归纳
的第一台存储程序计算机中已经提出。 1946 年, Burks 等人提出的
运算与输入 / 输出重叠操作是当今计算机中流水线技术的原始雏形。尽
管 Von Neumann 没有在他的第一台计算机中实现输入 / 输出功能,
但当磁芯
存储器第一次出现,并作为主要
存储介质后,流水线设计思想迅
速发展。为解决主存与 CPU 执行
速度之间的瓶颈问题,设计者们
研究了许多种方法,使 CPU 执行
指令的同时,进行一个或多个并
发存储器访问。 Intel8086 的两级
流水就是为了提高存储器及总线
的使用率而设计的。
60 年代,硬件的价格相对较高,流水线技术都
用于巨型计算机。 IBM 的 STRETCH 和 CDC6600
是早期大量应用流水线技术的计算机,它们对后来
的计算机系统结构设计有深刻的影响。
随着半导体技术的发展,到 80 年代硬件价
格大幅度下降,流水线技术在计算机设计中广泛应
用,即使在微处理器芯片中也成为一种很基本的实
现技术。 Intel80i86 系列的发展是很好的一个例子。
这里要注意的是流水线技术在 RISC 设计思想产生
前已有广泛使用,只是在 RISC 设计思想中流水线
技术采用更广泛而已。
1. 流水线处理的基本原理
•
流水线的基本概念
•
基本处理器流水线
流水线的作用 :
提高硬件功能部件的使用率,
减少指令的平均执行时间。