首页 > 试题广场 >

tomasulo算法的第3个时钟周期的指令状态,保留站状态,

[问答题]

tomasulo算法的第3个时钟周期的指令状态,保留站状态,和寄存器结果状态如下图所示: (其中Op表示现在保留站中正在工作的指令,Vj,Vk表示已经准备好的操作数,Qj,Qk表示已发射但未准备好的操作数)。已知load执行延时2个cycles,add(sub)执行延时3个cycles,mul执行延时11个cycles,div执行延时41个cycles。

要求:

(1) 写出tomasulo算法 的基本思想。

(2) 写出第4个 时钟周期的指令状态,保留站状态,和寄存器结果状态,并说明原因。

(1)
核心思想是:①纪录和检测指令相关,操作数一旦就绪就立即执行,把发生RAW冲突的可能性减小到最少;②通过寄存器换名来消除WAR冲入和WAW冲突。寄存器换名是通过保留站来实现,它保存的等待流出和正在流出指令所需要的操作数。
基本思想:只要操作数有效,就将其取到保留站,避免指令流出时才到寄存器中取数据,这就使得即将执行的指令从相应的保留站中取得操作数,而不是从寄存器中。指令的执行结果也是直接送到等待数据的其他保留站中去。因而,对于连续的寄存器写,只有最后一个才真正更新寄存器中的内容。一条指令流出时,存放操作数的寄存器名被换成为对应于该寄存
(2)
①第一条指令出现结果;
②第二条指令在延时一个时钟周期后开始执行;
③第三条指令还在等第二条指令的结果;
④开始发射第四条指令。


发表于 2017-05-07 12:31:04 回复(0)