计算机体系结构 章4-1和4-2 流水线的基本概念、性能分析、冒险问题和模型设计

本文详细介绍了计算机体系结构中的流水线技术,包括基本概念如流水线术语、性能分析,以及如何解决冒险问题。讨论了结构冒险、数据冒险和控制冒险的判断及解决方案,如暂停流水线、前向传递和编译优化调度。同时,探讨了流水线设计中的关键环节,如IF/ID、ID/EXE、EX/MEM和MEM/WB阶段的设计要点,并涉及中断和异常的处理方法。
摘要由CSDN通过智能技术生成

第4章 流水线技术及指令级并行 纲要

1、流水线的概念、分类
2、流水线的时空图及性能指标计算
3、add, sub, addi, subi, lw, sw, beq每条指令在5级流水线的执行过程
4、结构冒险、数据冒险和控制冒险的判断,以及需要暂停的时钟周期数的判断
5、结构冒险、数据冒险和控制冒险的解决办法
6、流水线中处理中断和异常的方法
7、记分牌动态调度算法

一、基本概念

流水线术语

机器周期(流水线周期):指令沿流水线移动一个流水段的时间。长度取决于最慢的流水段,一般是一个时钟周期(有时是两个时钟周期)。
每个流水线周期从指令流水线流出一条指令。
吞吐量:单位时间从流水线流出的指令数。

为什么不开发 50段流水线?

1、有些操作不能分为更细的逻辑实现
2、流水线锁存器不是免费的,要占据面积,且有延迟。

流水线怎样减少执行时间?

对比不同串行实现的机器:
1、每条指令执行用一个时钟周期的机器(单周期实现)
流水线减少时钟周期的长度(时间)
2、每条指令执行用多个时钟周期的机器(多周期实现)
流水线减少CPI.

如何改进硬件冗余

-ALU 可以共享
-数据和指令存储器可以合并,因为访问发生在不同的时钟周期

单周期如何变成流水线

1、在ID级创建控制信号,然后逐级传递

在这里插入图片描述
完成 ALU 指令在MEM cycle

二、冒险

情况一:
在同一时钟周期不同操作不能使用同一数据通路资源。(结构冒险structure hazard)
情况二:
当写和读同一个寄存器会发生什么? (数据冒险 Data hazard )
具体:数据冒险—指令想要的数据值还没有完成,或者值没有在正确的地方
情况三:
遇到转移指令怎么办?
-转移可能会改变PC的值—— 但是条件要等到ID段才能得到!
-如果转移发生

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值