本科系统结构课件 chapter5-1_第1页
本科系统结构课件 chapter5-1_第2页
本科系统结构课件 chapter5-1_第3页
本科系统结构课件 chapter5-1_第4页
本科系统结构课件 chapter5-1_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

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

文档简介

第五章

流水和指令级高度并行的超级机加速机器语言解释的两种方式

通过选用更高速的器件,采用更好的运算方法、提高指令内各微操作的并行程度,减少解释过程所需要的拍数,以加快每条指令的解释。通过控制机构采用同时解释两条、多条以至整段程序的控制方式,加快整个机器语言程序的解释。重叠、流水。

WhatIsPipeliningLaundry(洗衣)ExampleAnn,Brian,Cathy,Dave

eachhaveoneloadofclothes

towash,dry,andfoldWashertakes30minutesDryertakes40minutes“Folder”takes20minutesABCDWhatIsPipeliningSequentiallaundrytakes6hoursfor4loadsIftheylearnedpipelining,howlongwouldlaundrytake?ABCD3040203040203040203040206PM7891011MidnightTaskOrderTimeWhatIsPipelining

StartworkASAPPipelinedlaundrytakes3.5hoursfor4loadsABCD6PM7891011MidnightTaskOrderTime304040404020PipeliningLessonsPipeliningdoesn’thelplatencyofsingletask,ithelpsthroughputofentireworkloadPipelineratelimitedbyslowestpipelinestageMultipletasksoperatingsimultaneouslyPotentialspeedup=Number

pipestagesUnbalancedlengthsofpipestagesreducesspeedupTimeto“fill”pipelineandtimeto“drain(排出)”itreducesspeedupABCD6PM789TaskOrderTime304040404020WhatIsPipelining目录重叠方式流水方式向量的流水处理与向量流水处理机指令级高度并行的超级处理机§1重叠方式

基本思想和一次重叠

相关处理

取指令分析执行对一条机器指令的解释顺序解释与重叠解释顺序解释取指令k执行k分析k取指令k+1执行k+1分析k+1取指令k执行k分析k取指令k+1执行k+1分析k+1取指令k+2执行k+2分析k+2重叠解释的一种方式一次重叠的工作方式执行k分析k执行k+1分析k+1执行k+2分析k+2基本思想和一次重叠

顺序解释:各条机器指令之间顺序串行地执行,执行完一条指令后采取出下条指令来执行,而且每条指令内部的各个微操作也是顺序串行地执行。

优点:控制简单。重叠解释:在解释第k条指令的操作完成之前,就可开始解释第k+1条指令不能加快一条指令的实现但能加快相邻两条以至一段程序的解释时间重叠,解决访存冲突

操作数和指令分存于两个独立编址且可同时访问的存储器,有利于实现指令保护,增加总线控制和软件设计的复杂性混存,采用多体交叉主存结构增设指令缓冲寄存器解决访存冲突(续)在硬件上,保证又独立的指令分析部件和指令执行部件;

两部分执行的时间常常不相同,在硬件上解决好控制上的同步;

控制上的其他问题指令转移,下图分析k+1执行k+1分析k+1执行m分析m分析k执行k取指m执行m分析m结果取指k+1取指k+1取指m当转移不成功时:当转移成功且指令m在指缓中时:当转移成功且指令m不在指缓中时:当第k条指令使条件转移时相关问题数相关:第k、k+1条指令的数据地址之间有了关联。数相关不仅发生在主存空间,还会发生在通用寄存器空间指令相关:采用VonNeumann型机器上指令可修改的办法经第k条指令的执行来形成第k+1条指令指令相关的处理

原因:VonNeumann型机器的指令允许修改。解决:在程序执行过程中,不准修改指令,除可解决指令相关,也可实现程序的可再入性和程序的递归调用。

主存空间数相关的处理

相邻两条指令之间要求对主存同一单元线写入而后再读出的关联。解决:延迟。

主存数相关的处理分析k执行k(写数)分析k+1(读数)执行k+1写入m读m退后一个主存周期分析k执行k(写数申请)写入m分析k(读数申请)执行k需读m主存数相关的时间关系通用寄存器数相关处理

延迟和设置“相关专用通路”是解决重叠方式相关处理的两种基本方法。前者设备不变,降低速度;后者增加设备,效率不变。

指令解释过程中与通用寄存器

内容有关的微操作时间关系分析执行用基/变址值取操作数用操作数存结果“执行”、“分析”重叠时,访问通用寄存器组的时间关系执行k结果送入L3分析k+1第1拍第2拍第3拍第4拍(L1)送入B(L2)送入C用相关专用通路解决

通用寄存器组的数相关通用寄存器组运算器BC相关专用通路数据总线运算结果顺序执行方式执行n条指令所用的时间为:如每段时间都为t,则执行n条指令所用的时间为:T=3nt主要优点:控制简单,节省设备主要缺点:执行指令的速度慢,功能部件的利用率很低。取指令k分析k执行k取指令k+1分析k+1执行k+1一次重叠执行方式

(一种最简单的流水线方式)如果两个过程的时间相等,则执行n条指令的时间为:T=(1+2n)t主要优点:指令的执行时间缩短功能部件的利用率明显提高主要缺点:需要增加一些硬件控制过程稍复杂取指分析执行取指分析执行取指分析执行二次重叠执行方式如果三过程的时间相等,执行n条指令的时间为:T=(2+n)t理想情况下同时有三条指令在执行处理机的结构要作比较大的改变,必须采用先行控制方式取指k+2分析k+2执行k+2取指k+1分析k+1执行k+1取指k分析k执行k先行控制方式的原理采用二次重叠执行方式,必须解决两个问题:有独立的取指令部件、指令分析部件和指令执行部件独立的控制器:存储控制器、指令控制器、运算控制器要解决访问主存储器的冲突问题取指令、分析指令、执行指令都可能要访问存储器解决访存冲突的方法:采用低位交叉存取方式:这种方法不能根本解决冲突问题。先行控制方式的原理(续)两个独立的存储器:独立的指令存储器和数据存储器。如果再规定,执行指令所需要的操作数和执行结果只写到通用寄存器,那么,取指令、分析指令和执行指令就可以同时进行。在许多高性能处理机中,有独立的指令Cache和数据Cache。这种结构被称为哈佛结构。先行控制方式的原理(续)采用先行控制技术。先行控制技术的关键是缓冲技术和预处理技术。缓冲技术是在工作速度不固定的两个功能部件之间设置缓冲栈,用以平滑它们的工作。在采用了缓冲技术和预处理技术之后,运算器能够专心于数据的运算,从而大幅度提高程序的执行速度。(a)重叠方式分析k+1分析k执行k执行k+1分析k+2执行k+2分析部件空闲执行部件空闲分析k+1分析k执行k分析k+2(b)先行控制执行k+1执行k+2结果:解决了分析与执行时间不等长问题。与重叠区别:分析和执行部件可同时处理两条不相邻指令。采用技术:缓冲技术

温馨提示

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

评论

0/150

提交评论