网站大量收购闲置独家精品文档,联系QQ:2885784924

第3章 流水技术及流水处理机.ppt

  1. 1、本文档共149页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
目 录 第3章 流水技术与流水处理机 3.1 指令重叠与先行控制 3.2 流水线的分类与时空图 3.3 线性流水线的性能计算 3.4 非线性流水线的调度与性能计算 3.5 流水线的相关问题与相关处理方法 3.6 多发射处理机及其性能 3.7 向量流水处理机及其性能 第3章 流水技术与流水处理机 3.1 指令重叠与先行控制 3.1 指令重叠与先行控制 3.1.2 先行控制技术 3.2 流水线的分类与时空图 3.2.2 流水线时空图 3.3 线性流水线的性能计算 3.3.2 加速比 3.3.3 效 率 3.4 非线性流水线的调度与性能计算 3.4.1 非线性流水线的最优调度方法与性能计算 1.单功能非线性流水线的最优调度方法及其性能计算 2. 多功能非线性流水线的最优调度方法及其性能计算 3.4.2 非线性流水线的时空图 3.4.3 非线性流水线的动态调度的实现 单功能非线性流水线控制器主要由一个初始冲突向量寄存器和一个移位寄存器组成,寄存器的位数为对象经流水线处理所需的 的个数。每一个 将使移位寄存器中的当前冲突向量Ci右移一位,高位补“0”。 控制器的工作原理和操作过程如下: ① 把初始冲突向量C0由初始冲突向量寄存器装入移位寄存器。 ② 如果在某个 从移位寄存器移出的是“0”,且同时有一个对象请求进入流水线,则允许该对象进入流水线;如果从移位寄存器移出的是“1”,则禁止对象进入流水线,待下一个 到来时,重新提出请求。 ③ 如果允许进入,就在现行 结束时修改移位寄存器中的内容Ci,它的新内容Cj是Ci移位后的值与初始冲突向量寄存器中的C0进行“或”运算的结果。如果禁止进入,移位寄存器的内容仅右移一位,高位补“0”。 3.5 流水线的相关问题与相关处理 流水线的相关问题分为局部相关和全局相关两类。 局部相关对程序执行过程的影响较小,它仅涉及到相关指令前后的一条或几条指令的执行。 全局相关是指影响整个程序执行方向的相关,主要是转移类指令和中断引起的相关。 3.5.1 局部相关及处理方法 1. 顺序流动的“先写后读”相关及处理 顺序流动是指对象从流水线流出的次序同它们流入流水线的次序一样。 如果指令h写入结果的目的地址同指令j读取操作数的源地址是同一个存储单元或寄存器,那么,称这两条指令有“先写后读”的要求。如果当指令j到达读段时,指令h还没有到达写段完成写入操作,那么,指令j读出的数据就是错误的,这就是“先写后读”相关。 解决顺序流动的“先写后读”相关的方法是:延迟、异步流动和建立相关通路。 2. 异步流动及其局部相关 异步流动是指对象从流水线流出的次序同它们流入流水线的次序不一样。 若指令序列中的指令j和指令k都有写操作,且写入的目的地址是同一存储单元或同一寄存器,则顺序执行的结果是指令j先写入而指令k后写入。但是,若采用异步流动方式,则可能出现指令k先于指令j到达写段,那么该存储单元或寄存器的内容最后是由指令j写入的,而不是按指令序列的顺序要求由指令k写入的,这就是“写—写”相关。 若指令序列中的指令j的读操作和指令k的写操作是同一存储单元或同一寄存器,则这两条指令有“先读后写”的要求。若采用异步流动方式,则可能出现指令k的写操作先于指令j的读操作被执行,那么,指令j读取的数据就是指令k写入的数据,这是违反这两条指令“先读后写”要求的一个错误的数据,这就是“先读后写”相关。 异步流动解决相关的方法同样可以采用延迟方法。 3. 建立相关专用通路 在流水线的读段与写段之间增加一条专用的数据通路。 指令j 的读操作不是从存储单元去读,而是通过专用通路读取指令h 刚送入写段的数据, 3.5.2 全局相关及处理方法 由条件转移或程序中断引起的相关称为全局相关。 1. 条件转移的处理 在遇到条件转移指令时,为了使流水线不“断流”,通常采用“猜测法”,即在条件转移指令之后,选择一个分支方向,让后续指令进入流水线执行。 假设在一般程序中条件转移指令所占比例为p,转移成功的概率为q,那么,对于一个由n条指令组成的程序在执行过程中,由于条件转移需要额外增加的执行时间就是pqn(k-1) 。包括条件转移指令在内的n条指令的总的执行时间是 可得出有条件转移影响的流水线的吞吐率为 当 时,有条件转移影响的流水线的最大吞吐率为 由于条件转移指令的影响,流水线吞吐率下降百分比为 由于条件转移指令对流水线的性能影响很大,必须采取措施来减小这种影响。可以采取的措施主要有以下4种。 (1)延迟转移技术 依靠编译器把转移指令之前的一条或几条没有数据相关和控制相关的

文档评论(0)

kehan123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档