- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * * * * * * * * * * 对放入延迟槽的指令有限制 编译器预测分支是否成功的能力 ◆ 延迟分支调度受到的限制 ◆ 进一步改进:引入“取消分支” 若预测方向正确,正常执行延迟槽中的指令; 否则,将之变为no-op指令。 重复设置瓶颈段(时-空图举例) 有关流水线性能的若干问题 (1) 流水线并不能减少(而且一般是增加)单条指 令的执行时间,但却能提高吞吐率。(2) 增加流水线的深度(段数)可以提高流水线的 性能。(3) 流水线的深度受限于流水线的延迟和流水线 的额外开销。(4) 流水线的额外开销包括: ◆ 流水寄存器的延迟(建立时间和传输延迟) ◆ 时钟扭曲 (5) 当时钟周期小到与额外开销相同时,流水已没意 义。因为这时在每一个时钟周期中已没有时间来 做有用的工作。(6) 需用高速的锁存器来作为流水寄存器。 Earle锁存器(1965)的三个特点: ◆ 对时钟扭曲不太敏感(相对而言) ◆ 其延迟为常数:2个门级延迟,避免了数据通 过锁存器时的扭曲。 (7) 相关问题 如果流水线中的指令相互独立,则可以充分 发挥流水线的性能。但在实际中,指令间可能会 是相互依赖,这会降低流水线的性能。 ◆ 锁存器中可以进行两级逻辑运算而不增延迟时 间。这样每个流水段中的两级逻辑可以与锁存 器重叠,从而能隐藏锁存器开销的绝大部分。 向量处理机 向量处理方式和向量处理机 ◆ 向量处理机:具有向量数据表示和相应向量 指令的流水线处理机。 ◆ 标量处理机: 不具有向量数据表示和相应向 量指令的处理机。 D=A×(B+C ) A、B、C、D ── 长度为 N 的向量 1. 向量处理方式 (1) 水平(横向)处理方式 Ki=bi+ci Di=Ki×ai 相关:N 次 功能切换:2N 次 (2) 垂直(纵向)处理方式 K=B+C D=K×A 相关:1次 功能切换:1次 对处理机结构的要求: 存储器-存储器型操作的运算流水线对存储器的带宽要求很高。 例如:STAR-100,CYBER-205 (3) 分组(纵横)处理方式 把向量分成长度为某个固定值的若干组, 组内按纵向方式处理,依次处理各组。 每组内: 相关:1次 功能切换:2次 对处理机结构的要求: 寄存器-寄存器型操作的运算流水线。 * * * * * * * * * * * * * * * * * * 2. 利用定向技术减少数据相关引起的暂停 (1) 定向技术的主要思路:在发生上述 数据相关时,后面的指令并不是马 上就要用到前一条指令的计算结果。 如果能够将计算结果从其产生的地 方直接送到需要它的地方,就可以 避免暂停。 (2) 采用定向技术消除上例中的相关 工作过程演示 3. 数据相关的分类 按照指令对寄存器的读写顺序,可以将数据相关分为以下三种类型:(考虑两条指令i和j , 假设i 先进入流水线) (1) 并非所有的数据相关都可以用定向技术解决 举例 需要暂停的数据相关 (2) 增加流水线互锁硬件,插入“暂停”。 当互锁硬件发现这种相关时,就 暂停流水线,直到相关消失。 对数据相关的编译调度方法 (1) 流水线中常常会遇到许多种类型的暂停 例如,按通常的代码生成模式,表达式 (2) 编译器可以通过重新排列代码的顺序来消 除这种暂停,这种技术称为流水线调度或 指令调度。 流水线的控制相关 1. 分支指令的执行结果 一、分支引起的暂停及减少分支开销的方法 ◆ 转移失败:PC值加4◆ 转移成功:将PC值改变为转移目标地址 到MEM段的末尾才改变 一旦检测到分支指令(在ID段),就暂停执行其后的指令,直到分支指令到达MEM段,确定出新的PC值为止。 2. 处理分支指令最简单的方法 在DLX流水线中,分支转移成功导致暂停3个时钟周期。 若分支指令的频度为30%,理想CPI=1, 则 实际CPI=1+30%×3≈2 3. 减少分支开销的两种途径 ◆ 在流水线中尽早判断分支转移是否成功;◆ 转移成功时,尽早计算出转移目标地址。两者应同时采用,缺一不可。
文档评论(0)