典型习题和题例分析与解答
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
5.3 典型习题和题例分析与解答
题5.1 假设指令的解释分取指、分析和执行3步,每步的时间相应地为
t
取指、t
分析、
t
执行,
(1)分别计算下列几种情况下,执行完100条指令所需时间的一般关系式;
i.顺序方式;
ii.仅“执行x”与“取指x剩”重叠,
iii.仅“执行x”、“分析r+:”,“取指。+:”重叠.
(2)分别在t
取指=
t
分析=2,
t
执行=l及
t
取指=
t
执行=5,
t
分析 =2
两种情况下,计算出上述各结果。
[分析] 可先按指令间所要求的时间关系画出指令间的时间重叠关系图,由图就可以列出各种情况下,计算100条指令所需时间的一般关系式。再将给出的时间值代入,实际完成100条指令所需的时间就可以求得。
*
顺序方式工作的时间关系如图5.1所示。
取指k分析k执行k取指k+1分析k+1执行k+1取指k+2分析k+2执行k+2
图顺序方式工作的时间关系图
仅“执行k”与“取指k+1”、重叠方式工作的时间关系如图5.2所示.
取指k分析k执行k
取指k+1分析k+1执行k+1
'
取指k+2分析k+2执行k+2
图5.2 仅“执行k”,与“取指k+1”重叠方式工作的时间关系图
仅“执行k”、“分析k+1”、“取指k+2”重叠方式工作的时间关系如图5.3所示.取指k分析k执行k
取指k+1分析k+1执行k+1
^
取指k+2分析k+2执行k+2
图5.3 仅“执行k”、“分析k+1”、“取指k+2”重叠方式工作的时间关系图
[解答] (1)计算执行完100条指令所需要的时间:
(i)顺序方式工作时为
100(t t t
⨯++
取指分析执行
)
(ii)仅“执行k”,与“取指k+1”重叠方式工作时为
—
{}
10099max
t t t t t
++⨯+
取指分析取指执行执行
,
(iii)仅“执行k”、“分析k+1”、“取指k+2”重叠方式工作时为
{}{}{} max98max max,
t t t t t t t t t ++⨯++
取指分析取指取指分析执行执行分析执行,,,
(2)当t
取指=
t
分析=2、
t
执行=l时,代入上面的各式,可求得100条指
令执行所需要的时间是:
顺序方式工作时为500。
仅“执行k”,与“取指k+1”重叠方式工作时为401。
仅“执行k ”、“分析k+1”、“取指k+2”重叠方式工作时为203。
【
当 t 取指=t 执行=5,t
分析 =2,代入上面的各式,可求得100条指令执行
所需要的时间是:
顺序方式工作时为1200。 仅“执行k
”,与“取指k+1”重叠方式工作时为705。
仅“执行k ”、“分析k+1
”、“取指k+2”重叠方式工作时为510。
题5.2 流水线由4个功能部件组成,每个功能部件的延迟时间为△t 。当输
。
① ② ③ ④ ⑤ ⑥ ⑦ ⑧ ⑨ ⑩ ① ②
图5.4 题5. 2的流水时空图
所以,按周期性工作时的流水线平均吞吐宰为: 《 105
147p T t t
=
=∆∆
题5.3 有一个浮点乘流水线如图5.5(a)所示,其乘积可直接返回输入端
或暂存于相应缓冲寄存器中,画出实现A*B*C*D 的时空图以及精入端的变化,并求出该流水线的吞吐率和效率;当流水线改为图5.5(b)形式实现同一计算时,求该流水线的效率及吞吐率。
[分析] 为了减少运算过程中的操作数相关,A*B*C*D 应改为采用((A*B) * (C*D))的算法步骤进行运算。
[解答] 按图5.5(a)组织.实现A*B*C ,D 的时空关系如图5.6所示。
-
吞吐率 3
13p T t =∆
效率 355
31313
t t η⨯∆==⨯∆
流水按图(b )组织时,实现A*B*C*D 的时空关系如图所示。
吞吐率 3
11p T t =∆
效率 355
31111
t t η⨯∆==⨯∆
题5.4 一个4段的双输入端规格化浮点加法流水线,每段经过时间10ns ,输出可直接返回输入或将结果暂存于相应缓冲器中,问最少需经多少时间能求出
10
∑i
i=1
A
,并画出时空图。
[分析] 为了避免流水线的先写后读相关,使流水线性能尽可能高,需将10
∑i i=1
A
调整成
$
((((1A +2A )+(3A 十4A ))十(j t 9A +10A ))+((5A +6A )+(7A +8A ))) 的算法步骤来进行。
[解答] 按((((1A +2A )+(3A 十4A ))十(8A 9A +10A ))+((5A +6A )+(7A +8A ))) 流水的时空图如图5.8所示.
由图5.8之时空图可知,求10
∑i i=1A 所需要的最少时间为170ns 。
题 为提高流水线的效率可用哪两种主要途径来克服速度瓶颈现有3段流水线各段经过的时间依次为△t 、3△t 、△t 。 |
(1)分别计算在连续输入3条指令时和30条指令时的吞吐率和效率。