流水和指令级高度并行的超级机.ppt_第1页
流水和指令级高度并行的超级机.ppt_第2页
流水和指令级高度并行的超级机.ppt_第3页
流水和指令级高度并行的超级机.ppt_第4页
流水和指令级高度并行的超级机.ppt_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第五章流水和指令级高度并行的超级机,加速机器语言解释的两种方式,通过选用更高速的器件,采用更好的运算方法、提高指令内各微操作的并行程度,减少解释过程所需要的拍数,以加快每条指令的解释。 通过控制机构采用同时解释两条、多条以至整段程序的控制方式,加快整个机器语言程序的解释。 重叠、流水。,What Is Pipelining,Laundry(洗衣) Example Ann, Brian, Cathy, Dave each have one load of clothes to wash, dry, and fold Washer takes 30 minutes Dryer takes 40 m

2、inutes “Folder” takes 20 minutes,What Is Pipelining,Sequential laundry takes 6 hours for 4 loads If they learned pipelining, how long would laundry take?,30,40,20,30,40,20,30,40,20,30,40,20,6 PM,7,8,9,10,11,Midnight,T a s k O r d e r,Time,What Is Pipelining Start work ASAP,Pipelined laundry takes 3.

3、5 hours for 4 loads,6 PM,7,8,9,10,11,Midnight,T a s k O r d e r,Time,Pipelining Lessons,Pipelining doesnt help latency of single task, it helps throughput of entire workload Pipeline rate limited by slowest pipeline stage Multiple tasks operating simultaneously Potential speedup = Number pipe stages

4、 Unbalanced lengths of pipe stages reduces speedup Time to “fill” pipeline and time to “drain(排出)” it reduces speedup,6 PM,7,8,9,T a s k O r d e r,Time,What Is Pipelining,目录,重叠方式 流水方式 向量的流水处理与向量流水处理机 指令级高度并行的超级处理机,1 重叠方式,基本思想和一次重叠 相关处理,顺序解释与重叠解释,顺序解释,重叠解释的一种方式,一次重叠的工作方式,基本思想和一次重叠,顺序解释:各条机器指令之间顺序串行地执

5、行,执行完一条指令后采取出下条指令来执行,而且每条指令内部的各个微操作也是顺序串行地执行。 优点:控制简单。 重叠解释:在解释第k条指令的操作完成之前,就可开始解释第k+1条指令 不能加快一条指令的实现 但能加快相邻两条以至一段程序的解释,时间重叠,解决访存冲突,操作数和指令分存于两个独立编址且可同时访问的存储器,有利于实现指令保护,增加总线控制和软件设计的复杂性 混存,采用多体交叉主存结构 增设指令缓冲寄存器,解决访存冲突(续),在硬件上,保证又独立的指令分析部件和指令执行部件; 两部分执行的时间常常不相同,在硬件上解决好控制上的同步; 控制上的其他问题 指令转移,下图,相关问题,数相关:第

6、k、k+1条指令的数据地址之间有了关联。 数相关不仅发生在主存空间,还会发生在通用寄存器空间 指令相关:采用Von Neumann型机器上指令可修改的办法经第k条指令的执行来形成第k+1条指令,指令相关的处理,原因:Von Neumann型机器的指令允许修改。 解决:在程序执行过程中,不准修改指令,除可解决指令相关,也可实现程序的可再入性和程序的递归调用。,主存空间数相关的处理,相邻两条指令之间要求对主存同一单元线写入而后再读出的关联。 解决:延迟。,通用寄存器数相关处理,延迟和设置“相关专用通路”是解决重叠方式相关处理的两种基本方法。 前者设备不变,降低速度; 后者增加设备,效率不变。,举例

7、,假设指令:操作码 L1 L3 B2 d2 L1,L3分别指明存放第一操作数和结果数的通用寄存器号 B2为形成第二操作数地址的基址值所在的通用寄存器号 D2为相对位移量,指令解释过程中与通用寄存器内容有关的微操作时间关系,存结果,“执行”、“分析”重叠时,访问通用寄存器组的时间关系,当程序执行过程中出现L1(k+1)=L3(k),就发生L1相关; 而当L2(k+1)=L3(k),就发生L2相关; 解决: 退后,延迟 设备不增加,速度降低,适合于相关概率低 设置“相关专用通路” 增加设备,效率不会明显下降,适合于相关概率高,用相关专用通路解决通用寄存器组的数相关,顺序执行方式,执行n条指令所用的

8、时间为: 如每段时间都为t,则执行n条指令所用的时间为:T=3nt 主要优点:控制简单,节省设备 主要缺点:执行指令的速度慢,功能部件的利用率很低。,一次重叠执行方式(一种最简单的流水线方式),如果两个过程的时间相等,则执行n条指令的时间为:T=(1+2n)t 主要优点: 指令的执行时间缩短 功能部件的利用率明显提高 主要缺点: 需要增加一些硬件 控制过程稍复杂,二次重叠执行方式,如果三过程的时间相等,执行n条指令的时间为:T=(2+n)t 理想情况下同时有三条指令在执行 处理机的结构要作比较大的改变,必须采用先行控制方式,先行控制方式的原理,采用二次重叠执行方式,必须解决两个问题: 有独立的

9、取指令部件、指令分析部件和指令执行部件 独立的控制器:存储控制器、指令控制器、运算控制器 要解决访问主存储器的冲突问题 取指令、分析指令、执行指令都可能要访问存储器 解决访存冲突的方法: 采用低位交叉存取方式: 这种方法不能根本解决冲突问题。,先行控制方式的原理(续),两个独立的存储器:独立的指令存储器和数据存储器。 如果再规定,执行指令所需要的操作数和执行结果只写到通用寄存器,那么,取指令、分析指令和执行指令就可以同时进行。 在许多高性能处理机中,有独立的指令Cache和数据Cache。 这种结构被称为哈佛结构(Harvard architecture)。,先行控制方式的原理(续),采用先行控制技术。 先行控制技术的关键是缓冲技术和预处理技术。 缓冲技术是在工作速度不固定的两个功能部件之间设置缓冲栈,用以平滑它们的工作。 在采用了缓冲技术和预处理技术之后,运算器能够专心于数据的运算,从而大幅度提高程序的执行速度。,结果:解决了分析

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论