- 1、本文档共44页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
5.4 流水线技术
5.4.1 并行处理技术概述
5.4.2 流水线技术
5.4.3 流水线的分类
5.4.4 流水计算机的组成
5.4.5 流水计算机的时空图
5.4.6 指令的相关性
为了充分发挥计算机的效能,满足不断增长的应用需求,近几十年来,CPU的新技术层出不穷
基于时间并行原理的流水线技术,使计算机系统结构产生了重大的变革
CPU技术的发展,还包括优化编译,采用好的指令调度算法,重新组织指令执行顺序,降低相关技术带来的干扰,以及开发多发射技术(即设法在一个时钟周期内发出多条指令)等等
5.4.1 并行处理技术概述
早期计算机采用串行处理
计算机各个操作只能串行完成,任一时刻只能进行一个操作
并行处理使多个操作能同时进行,大大提高了计算机速度
广义地讲,并行性有两种含义
同时性:指两个以上事件在同一时刻发生
并发性:两个以上事件在同一时间间隔内发生
1. 时间并行
时间并行指时间重叠
让多个处理过程在时间上相互错开,轮流重叠地使用同一套硬件设备的各个部分,以加快硬件周转而赢得速度
时间并行的实现方式是采用流水处理部件
这是一种非常经济实用的并行技术,能保证计算机系统具有较高的性能价格比
目前的高性能计算机几乎无一例外地使用了流水技术
2. 空间并行
空间并行指资源重复
以资源的重复配置来大幅度提高计算机的处理速度
大规模和超大规模集成电路的迅速发展,为空间并行技术带来了巨大生机,成为目前实现并行处理的一个主要途径
空间并行技术主要体现在多处理器系统和多处理机系统
但是在单处理器系统中也得到了广泛应用
3. 时间并行+空间并行
指时间重叠和资源重复的综合应用
既采用时间并行性又采用空间并行性
相对而言,这种并行技术带来的高速效益是最好的
现代计算机往往同时具有时间并行性和空间并行性
5.4.2 流水线技术
在任一条指令的执行过程中,各个功能部件都会随着指令执行的进程而呈现出时忙时闲的现象
要加快计算机的工作速度,就应使各个功能部件并行工作
以各自可能的高速度同时、不停地工作,使得各部件的操作在时间上重叠进行,实现流水式作业
计算机的流水线(Pipeline)工作方式
将一个计算任务细分成若干个子任务,每个子任务都由专门的功能部件进行处理,
一个计算任务的各个子任务由流水线上各个功能部件轮流进行处理(即各子任务在流水线的各个功能阶段并发执行),最终完成工作
这样,不必等到上一个计算任务完成,就可以开始下一个计算任务的执行
流水线的硬件基本结构
由一系列串联的功能部件(Si)组成
各个功能部件之间设有高速缓冲寄存器(L),暂存上一功能部件的处理结果,同时又能接受新的处理任务
在一个统一的时钟(C)控制下,计算任务从功能部件的一个功能段流向下一个功能段
所有功能段同时对
不同的数据进行不
同的处理,各个处
理步骤并行地操作
当任务连续不断地输入流水线时,在流水线的输出端便连续不断地输出执行结果
流水线达到不间断流水的稳定状态,实现子任务级并行
当指令流不能顺序执行时,流水过程会中断(即断流)
为保证流水过程的工作效率,流水过程不应经常断流
在一个流水过程中,实现各个子过程的各个功能段所需要的时间应该尽可能保持相等,以避免产生瓶颈,导致流水线断流
流水线技术本质
将一个重复的时序过程分解成若干个子过程
每一个子过程都可有效地在其专用功能段上与其他子过程同时执行
采用流水线技术通过硬件实现并行操作后,
就某一条指令而言,其执行速度并没有加快
但就程序执行过程的整体而言,程序执行速度大大加快
流水线技术适合于大量的重复性的处理
5.4.3 流水线的分类
1.按级别分类
2.按数据分类
1.按级别分类
一个计算机系统可以在不同的并行等级上采用流水线技术
按照流水的级别,可以把流水线分为以下几类:
1)算术流水线
2)指令流水线
3)处理机流水线
1)算术流水线
算术流水线指运算操作步骤的并行,是部件级流水线
可以把处理器的算术逻辑部件分段,使各种数据类型均能进行流水操作
如流水加法器、流水乘法器、流水除法器等
也可以将具体的算术逻辑运算分成多个阶段,分别由不同的部件实现
将浮点加法操作分成求阶差、对阶、尾数相加以及结果规格化4个子过程来进行流水处理
现代计算机中已广泛采用了流水的算术运算器。
2)指令流水线
指令流水线表示指令步骤的并行,是处理器级流水线
通常可以将指令的执行过程划分为取指令、译码、执行、取数、写回5个并行处理的过程段,并按流水方式组织起来,形成指令流水线
目前,几乎所有的高性能计算机都采用了指令流水线
3)处理机流水线
处理机流水线指程序步骤的并行,又称为宏流水线
处理机流水线由一串级联的处理机构成流水线的各个过程段,每台处理机负责某一特定的任务
处理机流水线大多应用在多机系统中,
随着高档微处理器芯片的出现
文档评论(0)