目录
1. 简述流水线技术的特点 。
1.流水线把一个处理过程分解为若干个子过程(如: 浮点运算分四段),每个子过程由一个专门的功能部件来实现;
2.流水线中各段的时间应尽可能相等,否则将引起流水线堵塞、断流。(时间最长的段将成为流水线的瓶颈,后续段需等待);
3.流水线每一个段的后面都要有一个缓冲寄存器,称为流水寄存器。
4.流水技术适合于大量重复的时序过程
2.简述通过软件( 编译器)来减少分支延迟的 3 种方法 。这些方法的共同特点是什么?
1.预测分支失败:沿失败的分支继续处理指令,就好象什么都没发生似的。当确定分支是失败时,说明预测正确,流水线正常流动;当确定分支是成功时,流水线就把在分支指令之后取出的指令转化为空操作,并按分支目标地址重新取指令执行。
2. 预测分支成功:当流水线ID段检测到分支指令后,一旦计算出了分支目标地址,就开始从该目标地址取指令执行。
3.延迟分支:主要思想是从逻辑上“延长”分支指令的执行时间。把延迟分支看成是由原来的分支指令和若干个延迟槽构成。不管分支是否成功,都要按顺序执行延迟槽中的指令。
共同点:
1.对分支的处理方法在程序的执行过程中始终是不变的,是静态的
2.要么总是预测分支成功,要么总是预测分支失败
3.有一条动态多功能流水线由6个功能段组成,如图所示。
其中,Sl、S4、SS、S6组成乘法流水线,Sl、S2、S3、“组成加法流水线,各 个功能段时间均为50 ns,假设该流水线的输出结果可以直接返回输入端,而且设置有足够的缓冲寄存器,若以最快 的方式用该流水线计算;
要求:
①画出时空图。
②计算实际的吞吐率、加速比和效率。
4. 在一个5段流水线处理机上,各段执行时间均为Δt,需经9Δt才能完成一个任务,任务处理对各段的使用要求预约表如下所示。
要求:
(1)画出流水线的状态转移图。
(2)求出流水线的最优调度策略和流水线的最大吞吐率 。
(3)按最优调度策略连续输入 6 个任务 ,流水线的实际吞吐率是多少 ?