目录
指令和流水线
基本概念
指令流水的定义
流水线的表示方法
指令流程图
时空图
性能指标
吞吐率TP
吞吐率是指在单位时间内流水线所完成的任务数量,或是输出结果的数量。
加速比S
完成同样的一批任务,不使用流水线所用的时间与使用流水线所用的时间之比。
效率E
流水线的设备利用率称为流水线的效率。
影响因素分类
理想情况:各阶段花费时间相同;每个阶段结束后能立即进入下一阶段。
机器周期的设置
影响流水线的因素:(需掌握)
- 结构相关(资源冲突)
- 数据相关(数据冲突)
- 控制相关(控制冲突)
结构相关(资源冲突)
由于多条指令在同一时刻争用同一资源而形成的冲突称为结构相关。
配置两个不同的存储器后
数据相关(数据冲突)
数据相关指在一个程序中,存在必须等前一条指令执行完成后才能执行后一条指令的情况,则这两条指令即为数据相关。
1.把遇到数据相关的都停一至多个周期,直到数据相关问题消失:
硬件的模式
软件的模式
2.数据旁路技术
3.编译优化:通过编译器调整指令顺序来解决数据相关。
例题
冲突的基本类型
数据的基本操作:读(R)、写(W)
控制相关(控制冲突)
当流水线遇到转移指令和其他改变PC值的指令而造成断流时,会引起控制相关。
流水线的分类
1.部件功能级、处理机级和处理机间级流水线
2.单功能流水线和多功能流水线
3.动态流水线和静态流水线
4.线性流水线和非线性流水线
流水线的多发技术
1.超标量技术
2.超流水技术
3.超长指令字