一、实验目的
(1)加深对指令级并行性及开发的理解。
(2)加深对Tomasulo算法和基于硬件的前瞻执行算法的理解。
(3)掌握Tomasulo算法在指令流出、执行、写结果各阶段的操作以及ROB在流出、执行、写结果和确认4个阶段所进行的操作。
(4)掌握采用了Tomasulo算法的浮点处理部件的结构。
(5)掌握保留站的结构和ROB缓冲器的结构。
(6)给定被执行代码片段,对于具体某个时钟周期,能够写出保留站、指令状态表以及浮点寄存器状态表内容的变化情况。
(7)给定被执行代码片段,对于具体某个时钟周期,能写出保留站、ROB以及浮点寄存器状态表内容的变化情况。
二、实验环境
实验平台采用Tomasulo算法模拟器和再定序缓冲ROB模拟器。
- 实验内容和步骤
- Tomasulo算法
首先要掌握Tomasulo模拟器的使用方法。
(1)假设浮点功能部件的延迟时间为加减法2个时钟周期,乘法2个时钟周期,除法2个时钟周期,Load部件2个时钟周期。
①对于下面的代码段,给出当指令MUL.D写结果时,