第10章 流水线与并行处理技术
计算机指令流水线回顾

计算机指令流水线回顾计算机指令流水线是一种高效的指令执行技术,旨在提高计算机的运行速度。
在本文中,我们将回顾计算机指令流水线的基本原理、优点和局限性,并提供相关题库类型的答案和解析。
一、引言计算机指令流水线是一种并行处理技术,它允许多个指令同时在不同的处理阶段执行,以提高指令执行的速度和效率。
本节将介绍计算机指令流水线的定义和基本原理。
二、计算机指令流水线的原理计算机指令流水线是基于指令执行的并行处理技术。
它将一条指令的执行划分为多个阶段,并且允许多个指令同时在不同的阶段执行。
下面是计算机指令流水线的基本原理:1. 指令划分阶段:将一条指令划分为多个独立且可执行的子指令。
2. 指令执行阶段:每个子指令在不同的处理阶段执行,例如指令提取、指令解码、操作数获取等。
3. 管道寄存器:用于在不同的阶段之间传递数据和指令。
4. 阶段并行执行:多个指令在不同的阶段同时执行,实现指令级并行。
5. 超标量流水线:同时执行多条指令。
三、计算机指令流水线的优点计算机指令流水线相较于传统的顺序执行方式,具有以下优点:1. 提高吞吐量:通过并行执行多条指令,大大提高了计算机的吞吐量。
2. 提高运行速度:指令流水线的并行执行能够加快指令的执行速度,提高计算机的运行效率。
3. 提高资源利用率:指令流水线可以充分利用计算机的硬件资源,使处理器单元始终保持繁忙状态。
四、计算机指令流水线的局限性虽然计算机指令流水线有很多优点,但也存在一些局限性:1. 指令依赖:由于指令之间存在数据或控制依赖关系,可能导致流水线的暂停或冲突,进而影响指令的执行速度和效率。
2. 硬件成本:为了实现指令流水线,需要增加硬件资源和复杂的控制电路,导致成本的增加。
3. 分支预测错误:分支指令的预测错误或错误的预测会导致流水线的中断和重组。
五、题库类型答案与解析在计算机指令流水线的相关题库中,我们可以通过以下方式给出答案与解析:1. 填空题:要求填写与指令流水线相关的概念、原理或术语。
安腾高性能处理机体系结构

10.2安腾体系结构的基本设计思想
1、显式并行指令计算(EPIC)技术
安腾的指令中设计了属性字段,用于指明哪些指令可 以并行执行。这些属性信息并不是在指令执行过程中 由处理机判定后获得的,而是由编译程序在编译时通 过对源代码的分析获取指令级的并行性信息,并填写 到执行代码中。这就是所谓显式并行的概念。 EPIC技术则充分利用现代编译程序强大的对程序执 行过程的调度能力,由专用的EPIC编译器首先分析 源代码,根据指令之间的依赖关系最大限度地挖掘指 令级的并行性,从而确定哪些指令可以并行执行,然 后把并行指令放在一起并重新排序,提取并调度其指 令级的并行,并将这种并行性通过属性字段“显式” 地告知指令执行部件。
10.2安腾体系结构的基本设计思想
4、推测技术
推测技术,包括控制推测和数据推测,以减少存储器 访问响应时间的影响。 控制推测技术和数据推测技术允许提前执行从内存单 元至通用寄存器的取数指令。当程序中有分支时,控 制推测技术将位于分支指令之后的取数指令提前若干 周期执行,以此消除访存延时,提高指令执行的并行 度。而数据推测技术则用于解决提前取数指令后的数 据相关性问题。 推测技术避免了cache命中失败而导致访存延迟的损 失,消除了因处理机空闲而导致的并行性降低的缺憾。
例1:下面给出一些汇编指令
①add rl=r2,r3 //简单指令:r2+r3=>r1 ②(P4)add rl=r2,r3 //推断指令,指定推断寄存 器4 ③add r1=r2,r3, //立即寻址指令 ④cmp eq P3,P5=0,r4 //带指令完成符的指令:将 r4寄存器的值与0比较,若相等则置推断寄存器P3为1, P5为0;否则置推断寄存器P3为0,P5为1 ⑤ld8 r1=[r7] //从寄存器r7指向的存储器 空间读取连续8个字节,装入寄存器r1 add r6=r9,r8; //与上一条指令不存在相关 性,故可放在一个指令组中 sub r3=r1,r4 //第一条指令的目标操作数是本指令 的源操作数,故需重新开始一个指令组 st8 [r6]=r10 //将寄存器r10的内容存入寄存器r6指 向的存储器单元
计算机组成原理中的流水线与并行处理

计算机组成原理中的流水线与并行处理计算机组成原理是指计算机的各个组成部分及其相互关系的原理。
其中,流水线与并行处理是计算机组成原理中的两个重要概念。
本文将从流水线和并行处理的定义、特点、应用以及优缺点等方面进行论述。
一、流水线的定义和特点流水线技术是一种将复杂的任务分解为若干个互相依赖的子任务,并通过时序控制将其分别交给不同的处理单元进行执行的技术。
它可以提高计算机的执行效率和吞吐量。
与串行处理相比,流水线处理具有以下特点:1.任务分解:将复杂的任务分解为多个子任务,每个子任务由不同的处理单元负责执行。
2.流水线寄存器:通过在流水线各个阶段之间插入流水线寄存器,实现了各个阶段之间的数据传递和暂存,确保了数据的正确性和稳定性。
3.并行操作:不同的处理单元可以并行执行不同的任务,提高了计算机的并行处理能力。
4.随机任务执行:由于流水线中的各个阶段是独立的,因此可以随机运行和停止任务,提高了计算机的灵活性。
二、并行处理的定义和特点并行处理是指同时利用多个处理器或者多个处理单元并行执行多个任务的处理方式。
它可以大幅提升计算机系统的运算速度和处理能力。
并行处理的特点如下:1.任务分配:将大任务分解为多个小任务,并分配给多个处理单元同时执行。
2.任务协调:通过合理的任务调度算法,协调各个处理单元之间的任务执行顺序和数据传递,确保整个系统的稳定性和正确性。
3.资源共享:各个处理单元之间可以共享资源,如内存、缓存等,提高资源利用率。
4.计算效率提高:通过多个处理单元同时执行任务,大幅提高了计算效率和处理速度。
三、流水线与并行处理的应用流水线和并行处理在计算机领域被广泛应用,以下是几个常见的应用示例:1.超级计算机:超级计算机通常采用并行处理的方式,利用多个处理器同时进行计算,以提高计算能力。
2.图形处理器:图形处理器(GPU)采用流水线技术,将图像处理任务分解为多个子任务,通过流水线处理实现高效的图形渲染和计算。
计算机体系结构——流水线技术(Pipelining)

单功能流水线:流水线只完成一种固定功能 多功能流水线:流水线可以完成多种功能,如 TI公司的ASC机,8段流水线,能够实现:定点加减 法、定点乘法、浮点加法等功能 3.按同一时间内各段之间的连接方式分 静态多功能流水线 :同一时间内,多功能结构只能按一种功能的连接方式工作。 动态多功能流水线:在同一时间内,可以有多种功能的连接方式同时工作 4.按处理的数据类型 标量流水线 向量流水线 5.按控制方式 同步流水线 异步流水线:当Si功能段要向Si+1段传送数据时,首 先发出就绪信号,Si+1功能段收到信号后,向Si回送 一个回答信号。 6.按任务从输出端的流出顺序 顺序流水方式:指令流出顺序 = 指令流入顺序 乱序流水方式:指令流出顺序 != 指令流入顺序 7. 线性流水线——不带反馈回路的流水线
三、流水线的分类(了解)
四、流水线相关及冲突(重点) 1.流水线相关 2.流水线冲突 3.流水线冲突带来问题 4.数据冲突及其解决方案 5.结构冲突及其解决方案 6.控制冲突及其解决方案
五、流水线性能分析(含例题讲解) 1.流水线的基本参数——吞吐率 2.流水线的基本参数——加速比 3.流水线的基本参数——效率 4.结果分析 5.有关流水线性能的若干问题
整体评估、反馈、再改进
3. 指令周期
单周期处理机模型:一个周期完成一个指令(每个周期是等长的),指令长度可能不一样,会造成很大的浪费 多周期处理机模型:将一个指令的完成划分成若干个周期来实现 流水线模型
二、流水线技术 1. 什么是流水线? 计算机中的流水线是把一个重复的过程分解为若干个子过程,每个子过程与其他子过程并行进行。由于这种工作方式与工厂中的生产 流水线十分相似, 因此称为流水线技术 从本质上讲,流水线技术是一种时间并行技术。
流水线CPU技术获奖课件

FD
I E E EW
⑧
F
D
I E E EW
(b)8 条指令顺序
(c)8 条指令的流水线
图 4-12 流水线的相关延迟
指令发射:开启指令去处理器功能单元执行旳过程
静态调度:编译检测
编译器优化后,所需时间为
17个时钟周期 ① R1←M(Y)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
(R1)×(R2)->R3 (R4) + (R5)->R3
局部性有关:数据有关
(1) I1: ADD R1,R2,R3 ; I2: SUB R4,R1,R5 ;
(R2) + (R3)->R1 (R1) - (R5)->R4
第(1)组指令中,I1指令运算成果应先写入R1,然 后在I2指令中读出R1内容。因为I2指令进入流水线, 变成I2指令在I1指令写入R1前就读出R1内容,发生 RAW(写后读)有关。
② 增设一种存储器,将指令和数据分开存储;
③ 采用双端口存储器。
局部性有关:数据有关
在程序中,一条指令旳执行需等前一条指令执行完后才 干进行,则有数据有关。
例:SUB R1,R2,R3;(R2)(R3) R1
ADD R4,R1,R5;(R1)(R5) R4
时钟 1 2 3 4
指令
SUB 取指 译码 取数 执行
图 4-15 基于计分牌发射逻辑的流水线调度过程
动态调度-计分牌法
记分牌旳缺陷 依托流水线停止来处理有关性 没有消除数据有关 集中式调度
记分牌部件是性能瓶颈
动态调度-保存站法
FD
RS
RS
E
E
流水线与并行处理技术

流水线与并行处理1. 概述流水线技术导致了关键路径的缩短,从而可以提高时钟速度或采样速度,或者可以在同样速度下降低功耗。
在并行处理中,多个输出在一个时钟周期内并行地计算。
这样,有效采样速度提高到与并行级数相当的倍数。
与流水线类似,并行处理也能够用来降低功耗。
考虑3阶有限冲激响应(FIR )数字滤波器:y(n) = ax(n) + bx(n-1) + cx(n-2) (1-1)其框图实现示意图如图1所示:图1 一个3阶FIR 滤波器关键路径(或者处理一个新样点所需要的最小时间)由1个乘法与2个加法器时间来限定。
如果T M 是乘法所用的时间,T A 是加法操作需要的时间,T sample 是采样周期,则必须满足:T sample ≥ T M + 2T A (1-2)因而,采样频率(f sample )(也称为吞吐率或迭代速率),由下式给出:f sample ≤ A M T T 21 (1-3)流水线采用沿着数据通路引入流水线锁存器(本人理解是寄存器)的方法来减小有效关键路径(effective critical path )。
并行处理提高采样频率是采用复制硬件的方法,以使几个输入能够并行的处理,而几个输出能够在同一时间产生出来。
2. FIR 数字滤波器的流水线其流水线实现是通过引入两个附加锁存器而得到的,如图2所示:图2 流水线FIR滤波器,其中垂直虚线代表一个前馈割集关键路径现在由T M + 2T A减小为T M + T A。
在这种安排下,当左边的加法器启动当前迭代计算的同时,右边的加法器正在完成前次迭代结果的计算。
必须注意到,在一个M级流水线系统中,从输入到输出的任一路径上的延时原件数目是(M-1),它要大于在原始时序电路中同一路径上的延时元件数。
虽然流水线技术减小了关键路径,但是它付出了增加迟滞(latency)的代价。
迟滞实质上是流水线系统第一个输出数据的时间与原来时序系统第一个输出数据时间相比的滞后。
计算机体系结构流水线与并行处理的测试

计算机体系结构流水线与并行处理的测试计算机体系结构的不断发展和演进使得计算机的性能有了极大的提升。
在这个过程中,流水线技术和并行处理技术被广泛应用于计算机体系结构设计中,以实现更高效和快速的计算能力。
然而,为了确保计算机体系结构的正确性和稳定性,对流水线和并行处理的系统进行测试显得尤为重要。
一、流水线的测试流水线技术是指将一条指令的执行分为多个阶段,不同阶段可以并行运行,从而提高处理指令的速度。
在流水线中,存在着各种可能的冲突,例如结构冲突、数据冲突和控制冲突。
为了测试流水线,必须充分考虑这些冲突,并设计相应的测试用例。
结构冲突是由于多个操作共享同一资源导致的问题,例如多个指令同时访问同一个存储器单元。
为了测试结构冲突,可以设计多个操作并发执行,观察是否会发生资源竞争的情况。
数据冲突是由于后续指令需要依赖前面指令的结果而导致的问题,例如后一条指令需要使用前一条指令的运算结果。
为了测试数据冲突,可以设计一系列需要数据依赖的指令,观察数据是否能够正确传递和处理。
控制冲突是由于分支指令的执行而导致的问题,例如跳转指令会改变程序的执行流程。
为了测试控制冲突,可以设计各种不同的分支情况,观察分支指令是否能够正确地改变程序的执行路径。
二、并行处理的测试并行处理技术是指同时运行多个处理器来执行多个指令或任务,以提高整个系统的并行计算能力。
对于并行处理系统的测试,需要充分考虑并行计算的正确性、性能和可扩展性。
对于并行计算的正确性测试,可以设计一系列的并行任务,观察是否能够正确执行和得到预期的结果。
同时,还需要测试并行任务之间的通信和同步机制,以确保数据能够正确地传递和协调。
对于并行计算的性能测试,可以通过设计大规模的并行任务或者重复执行同一个任务来评估计算系统的性能。
观察计算系统的并行效率、加速比和负载平衡等指标,以评估并行处理的性能提升程度。
对于并行计算的可扩展性测试,可以通过逐步增加处理器数量或者增加任务规模来观察系统的扩展性能力。
了解计算机中的并行处理技术

了解计算机中的并行处理技术计算机中的并行处理技术是指利用多个处理单元同时进行多个任务的处理方式。
它能够极大地提高计算机的运算速度和处理能力,广泛应用于科学计算、图像处理、人工智能等领域。
下面是关于计算机中的并行处理技术的详细介绍和步骤:1. 什么是并行处理技术- 并行处理技术是指在计算机系统中同时执行多个指令和任务的技术。
它通过利用多个处理单元并行地处理不同的任务,从而加快计算机的运算速度。
- 并行处理技术主要分为硬件并行和软件并行两种方式。
硬件并行是指通过多个处理器、多核心、多线程等方式来实现并行处理;软件并行是通过多线程、分布式计算等方式来实现并行处理。
2. 并行处理技术的重要性- 并行处理技术能够提高计算机的处理能力和运算速度,对于大规模的复杂问题能够提供更高效的解决方案。
- 并行处理技术能够应用于各个领域,包括科学计算、图像处理、人工智能等。
在这些需要大量数据处理和计算的领域中,使用并行处理技术可以节省时间和资源。
3. 并行处理技术的应用- 科学计算领域:并行处理技术在科学计算中得到广泛应用,例如在天气预报、气象模拟等方面,使用并行计算能够更快地得到准确的结果。
- 图像处理领域:图像处理需要大量的像素计算和算法处理,使用并行处理技术可以提高图像处理的速度和质量。
- 人工智能领域:人工智能需要进行大规模的模型训练和数据处理,使用并行处理技术可以加快模型的训练和推理速度,提高人工智能系统的性能。
4. 并行处理技术的步骤- 并行化任务:首先需要将待处理的任务拆分成多个子任务,确保子任务之间没有依赖关系,可以并行处理。
- 资源分配:根据任务的特点和计算机的硬件条件,确定合适的并行处理方式,包括硬件并行和软件并行。
- 数据划分和传输:将任务所需的数据划分成多个部分,分配到不同的处理单元进行计算,并保证数据的正确传输和同步。
- 并行计算和同步:不同处理单元同时进行计算,每个处理单元独立处理自己的子任务,同时需要进行同步操作,确保结果的正确性。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(3)按流水的级别分类 部件级流水线:又称运算操作流水线。它是指处理机 的算术逻辑部件分段,使各种数据类型能进行流水操 作。 处理机级流水线:又称指令流水线。它是指在指令执 行过程中划分成若干功能段,按流水方式组织起来。 处理机间流水线:又称宏流水。它是指两台以上的处 理机串行地对同一数据流进行处理,每台处理机完成 一个任务。 (4)按数据表示分类 标量流水处理机:只能对标量数据进行流水处理。 向量流水处理机:它具有向量指令,能对向量的各元 素进行流水处理。
同一套硬件设备的各个部分,以加快硬件
周转时间而赢得速度
2014年7月4日星期五 25
2.资源重复
• 即空间并行
• 在并行性概念中引入空间因素,采用以数
量取胜的原则,通过重复设置硬件资源,
大幅度提高计算机系统的性能
• 随着硬件价格的降低,这种方式在单处理
机中广泛应用,而多处理机本身就是实施
资源重复原理的结果
2014年7月4日星期五 26
3.资源重复+时间重叠
• 在计算机系统中同时运用空间并行和时间并
行技术 • 这种方式在计算机系统中应用广泛,成为主 流的并行技术
2014年7月4日星期五 27
4.资源共享
• 这是一种软件方法,它使多个任务按一定
时间顺序轮流使用同一套硬件设备
• 例如多道程序、分时系统就是遵循资源共享原
• 把一件工作按功能分割为若干个相互联系的部分,
把每一部分指定给专门的部件完成
• 然后按时间重叠原理把各部分执行过程在时间上重
叠起来,使所有部件依次分工完成一组同样的工作
2014年7月4日星期五 30
• 在单处理机中,空间并行技术的运用也已 经十分普遍
• 多体交叉存储器和多操作部件都是空间并行技 术成功应用的结构形式 • 在多操作部件处理机中,
2014年7月4日星期五 20
⑶字并位串
• 同时对许多字的一位进行处理
• 这种方式有较高的并行性
⑷全并行 • 同时对许多字的全部位进行处理 • 这是最高一级的并行性
2014年7月4日星期五 21
• 从执行程序的角度看,并行性等级从低到高可分 为:
⑴指令内部并行
• 一条指令执行时各微操作之间并行。
⑵指令级并行 • 并行执行两条或多条指令
⑶任务级或过程级并行
• 并行执行两个以上过程或任务(程序段) ⑷作业或程序级并行 • 并行执行两个以上作业或程序
2014年7月4日星期五 22
• 并行处理着重挖掘计算过程中的并行事件
,使并行性达到较高的级别
• 并行处理是体系结构、硬件、软件、算法、语 言等多方面综合研究的领域
• 从而提高问题求解速度,或者求解单机无法解决的大规 模问题
2014年7月4日星期五 15
• 并行计算的目的
⑴提高速度 • 对于一个固定规模的问题,采用并行计算技术可以使 求解时间更少 • 现在的微型机也开始借助于流水线技术、多核技术等 并行计算技术来提高系统的速度
⑵扩大问题求解规模
• 由于器件本身的限制,任何单处理器的速度不能超过 某个上限 • 要突破这个上限,必须采用并行计算技术
2014年7月4日星期五
14
• 所谓并行性,是指计算机系统具有可以同时进行运 算或操作的特性
• 它包括同时性与并发性两种含义 • 同时性(Simultaneity)是指两个或两个以上的事件在同 一时刻发生 • 并发性(Concurrency)是指两个或两个以上的事件在同 一时间间隔内发生
• 所谓并行计算(Parallel Computing)是指通过网络 相互连接的两个以上的处理机相互协调工作,同时 计算同一个任务的不同部分
12
• 计算机系统性能和容量的快速增长,除了
归功于底层VLSI技术的发展之外,另一个重 要因素在于计算机体系结构的不断改进, 而并行性则是其中的一个主要方面
2014年7月4日星期五 13
8.1 并行性的概念
8.1.1 并行性分类
8.1.2 提高并行性的技术途径 8.1.3 并行性的发展 8.1.4 并行计算机体系结构分类
• 通用部件被分解成若干个专用的操作部件
• 如加法部件、乘法部件、除法部件、逻辑运算部件等
• 一条指令所需的操作部件只要空闲,就可以开始执 行这条指令
• 这是指令级并行
2014年7月4日星期五 31
• 在单处理机中,资源共享概念的实质就是用
单处理机模拟多处理机的功能,形成所谓的 “虚拟机(Virtual Machine,VM)”的概念
2014年7月4日星期五 16
• 并行计算的应用领域主要包括:
⑴科学和工程计算
⑵商业计算
2014年7月4日星期五
17
⑴科学和工程计算
• 在计算领域,计算机被用来模拟那些要么不可能 、要么需花费很大代价才能观测到的物理现象
• 并行体系结构已经成为科学计算的中流砥柱
• 物理、化学、材料科学、生物学、天文学、地球物理 等科学领域的研究都离不开并行计算
3 4 ‥ ‥
4 ‥ ‥ ‥
‥ ‥ ‥
‥ ‥
‥
n
‥ n
‥ n
‥ n
时间
(n-1)Δ t ‥ Tk
各段执行时间相等的流水线时空图
• 2.加速比
T0 S Tk
10 8 6 4 2 1
加速比 S K=10 段
K=6 段 n
1
2
4
8
16 32 64 128
任务数
任务数与加速比的关系
•3.效率 • 如果各段执行时间相等,则各段的效率 是相等的,都等于。即 n t • (9 1 2 k 15) Tk • 则整个流水线的效率为: • 1 2 k k k n t
理而产生的
• 资源共享既降低了成本,又提高了计算机
设备的利用率
2014年7月4日星期五 28
8.1.3 并行性的发展
1.单机系统并行性发展
2.多机系统并行性发展
2014年7月4日星期五
29
1.单机系统并行性发展
• 在发展高性能单处理机过程中,起着主导
作用的是时间并行技术
• 实现时间并行的物质基础是部件功能专用化
• 对物理现象建模的工具也被应用到工程应用中
• 如石油(油藏模拟)、汽车(碰撞模拟、牵引分析、 燃料效益)、航空(气流分析、引擎效率、结构力学 、电磁学)、制药学(分子建模)等
2014年7月4日星期五 18
⑵商业计算
• 商业计算在高端领域也要借助于并行体系
结构
• 早在20世纪60年代中期,多处理器就在商业计 算的高端市场上崭露头角 • 在这个领域,计算机系统的速度和容量直接反 映了系统能够支持的商业规模
• 按照耦合度的不同,可将多机系统分为紧耦合系统和松耦合系统两 大类
• 紧耦合系统又称直接耦合系统
• 指计算机间物理连接的频带较高,一般通过总线或高速开关实现计 算机间的互连,可以共享主存 • 由于具有较高的信息传输率,因而可以快速并行处理作业或任务
2014年7月4日星期五 33
• 松耦合系统又称间接耦合系统
• 例如在分时系统中,在多终端情况下,每个终 端上的用户都感觉自己好像独立拥有一台处理 机一样
2014年7月4日星期五 32
2.多机系统并行性发展
• 多机系统也遵循时间重叠、资源重复、资源共享原理,向 三种不同的多处理机方向发展,但在采取的技术措施上与 单处理机系统有些差别 • 为了反映多机系统各机器之间物理连接的紧密程度及交互 能力的强弱,我们引入“耦合度”这个术语
• 一般通过通道或通信线路实现计算机间的互连 ,可以共享外存设备(磁盘、磁带等) • 机器之间的相互作用是在文件或数据集一级上 进行的 • 松耦合系统表现为两种形式:
• 一种是多台计算机和共享外存设备连接
• 不同机器之间实现功能上的分工(功能专用化) • 机器处理的结果以文件或数据集的形式送到共享外存设备 ,供其他机器继续处理
k k k Tk
10.2 相关处理与控制
要使流水线发挥高效率,就是要使流水线连续不断地流动 ,尽量不出现断流情况。但是断流现象是不可避免的,其原因 除了编译形成的目的程序不能发挥流水线结构的作用,或存储 系统供不上为连续流动所需要的指令和操作数以外,就是由于 出现了相关、转移和中断等问题。 称转移、中断等相关现象为全局性相关,与主存操作数或 通用寄存器的读写相关现象为局部性相关。 (1)局部性相关处理 按流水的流动顺序的安排与控制,存在以下几种情况: 顺序流动:它是使流水线输出端的任务(指令)流出顺序与输 入端的流入顺序一样。遇到相关则使相关的指令解释过程停止 ,待过了这一环节再继续下去。 异步流动:它是使流水线输出端的任务(指令)流出顺序与输 入端的流入顺序不同。这种控制方法又会使得控制变得很复杂11 。
2014年7月4日星期五 19
8.1.1 并行性分类
• 计算机系统中的并行性有不同的等级
• 从处理数据的角度看,并行性等级从低到高可分 为:
⑴字串位串 • 同时只对一个字的一位进行处理
• 这是最基本的串处理方式,不存在并行性
⑵字串位并 • 同时对一个字的全部位进行处理,不同字之间是串行的
• 这里已开始出现并行性
2
入 取指令 译码 取数 执行
出
指令解释的流水线处理
s
执 行 取 数 译 码 取指令 1 1 2 1 2 3 1 2 3 4 2 3 4 5 3 4 5 4 5 5
Δ t2
指令解释流水处理的时(间)-空(间)图
t
10.1.2 流水线的分类
流水结构不仅在指令的执行过程中用来提高处理速度,而 且可以用于各种大量重复的时序过程,如浮点数相加等。因此 就有按不同结构和不同观点进行的不同分类。 (1)按完成的功能分类 单功能流水线:只能完成一种固定功能的流水线,如只能实现 浮点数加法运算。 多功能流水线:同一个流水现可有多种联接方式来实现多种功 能。 (2)按同一时间内各段之间的联接方式分类 静态流水线:同一时间内,流水线的各段只能按同一种功能的 联接方式工作。 动态流水线:同一时间内,流水线的各段可按不同运算的联接 方式工作。如在流水线中有些段完成浮点加法,有些段实现定 点乘法。 5