若指令流水线把一条指令分为取指、分析和执行三个部分,已知100条指令全部执行完毕

考试题库2022-08-02  45

问题 若指令流水线把一条指令分为取指、分析和执行三个部分,已知100条指令全部执行完毕需要的时间是303ns,假设三部分的时间分别是t(取指)、t(分析)、t(执行),那么这三个部分的时间可能是 (请回答此空) ,该流水线的最大吞吐量是 () 条指令每纳秒。A.t(取指)=2ns、t(分析)=2ns、t(执行)=1nsB.t(取指)=1ns、t(分析)=2ns、t(执行)=1nsC.t(取指)=3ns、t(分析)=3ns、t(执行)=1nsD.t(取指)=1ns、t(分析)=2ns、t(执行)=3ns

选项 A.t(取指)=2ns、t(分析)=2ns、t(执行)=1ns
B.t(取指)=1ns、t(分析)=2ns、t(执行)=1ns
C.t(取指)=3ns、t(分析)=3ns、t(执行)=1ns
D.t(取指)=1ns、t(分析)=2ns、t(执行)=3ns

答案 D

解析 根据流水线的计算公式,假设n条指令,t(max)表示三个部分的时间中最大的时间,那么流水线时间T=t(max)*(n-1)+[t(取指)+t(分析)+t(执行)],D选项[t(取指)+t(分析)+t(执行)]=6,n-1=99,所以t(max)=3ns;其他选项均不符合。最大吞吐量是当n趋向无穷大时的吞吐量(或者是流水线不间断执行时的吞吐量),取决于t(max),为t(max)的倒数,因为吞吐量=n/T,当n趋向无穷大时,n/T的极限值就是1/t(max)。
转载请注明原文地址:https://tihaiku.com/congyezige/2404337.html

最新回复(0)