第4章标量流水线技术 内容提要 本章首先简要介绍标量流水线的基本概念与工作原理,然后 讲述流水线时空图与性能分析、流水线操作中的主要障碍、处理 方法、非线性流水线的调度策略以及实现流水线的控制方式。重 点是流水线的时空图、流水线性能分析以及流水线的实现与控制 难点是使用流水线的时空图、性能分析与非线性流水线的调度策 略
第4章 标量流水线技术 • 内容提要: 本章首先简要介绍标量流水线的基本概念与工作原理,然后 讲述流水线时空图与性能分析、流水线操作中的主要障碍、处理 方法、非线性流水线的调度策略以及实现流水线的控制方式。重 点是流水线的时空图、流水线性能分析以及流水线的实现与控制。 难点是使用流水线的时空图、性能分析与非线性流水线的调度策 略
第4章标量流水线技术 4.1概述 4.2标量流水线工作原理 4.3指令级流水线
第4章 标量流水线技术 4.1 概述 4.2 标量流水线工作原理 4.3 指令级流水线
4.1概述 41.1控制流及其改变 4.1.2程序执行过程中的重叠操作与先 行控制
4.1 概述 4.1.1 控制流及其改变 4.1.2 程序执行过程中的重叠操作与先 行控制
4.1.1控制流及其改变 所谓控制流是指被执行的指令序列的处理顺序,其地址由程序计 数器PC给出,一条接着条地执行。在一般情况下,PC的值是时间的 单调函数,如图41(a)所示。但是当遇上转移类指令时,控制流 将发生间断,转移到目标地址后又顺序执行,PC中的值如图4.1(b) 所示。通常,改变程序顺序执行的因素有多种,常见的有以下4种。 转移 PC=kothi 转移/转移 (a)程序顺序执行 (b)程序转移执行 图41程序计数器PC与时间的关系
4.1.1 控制流及其改变 所谓控制流是指被执行的指令序列的处理顺序,其地址由程序计 数器PC给出,一条接着一条地执行。在一般情况下,PC的值是时间的 单调函数,如图4.1(a) 所示。但是当遇上转移类指令时,控制流 将发生间断,转移到目标地址后又顺序执行,PC中的值如图4.1(b) 所示。通常,改变程序顺序执行的因素有多种,常见的有以下4种。 图4.1 程序计数器PC与时间t的关系
(1)转移指令 转移指令可分为无条件转移和条件转移两种类型,且有多条,都是把转移 目标地址送入程序计数器PC中,然后又顺序执行,如图4.1(b)所示。 (2)过程调用与返回 即执行被调用的过程或子程序,其入口地址送入PC中;返回时,返回地址 送入PC,另外还有嵌套和递归。 (3)协同程序 协同程序与过程调用程序有所不同,它 协同程序A协同程序B 是被调用过程未必从头开始执行,而是从上 次返回的位置开始,如图42乐示。 (4)中断与自陷 中断是由外部事件引起,自陷是由 CPU的内部原因引起,CPU执行中断服务程 序,执行完后返回原来被中断的程序。 以上几种情况都改变PC中的值,使控图42协同程序改变控制流 制流发生改变。 <
(1)转移指令 转移指令可分为无条件转移和条件转移两种类型,且有多条,都是把转移 目标地址送入程序计数器PC中,然后又顺序执行,如图4.1(b)所示。 (2)过程调用与返回 即执行被调用的过程或子程序,其入口地址送入PC中;返回时,返回地址 送入PC,另外还有嵌套和递归。 (3)协同程序 协同程序与过程调用程序有所不同,它 是被调用过程未必从头开始执行,而是从上 一次返回的位置开始,如图4.2所示。 (4)中断与自陷 中断是由外部事件引起,自陷是由 CPU的内部原因引起,CPU执行中断服务程 序,执行完后返回原来被中断的程序。 以上几种情况都改变PC中的值,使控 制流发生改变。 图4.2 协同程序改变控制流