实验3 Tomasulo算法【计算机系统结构】

实验3 Tomasulo算法【计算机系统结构】

  • 前言
  • 推荐
  • 实验3 Tomasulo算法
    • 1 实验目的
    • 2 实验平台
    • 3 实验内容和步骤
    • 4 实验总结与心得
  • 最后

前言

2023-6-9 9:19:50

以下内容源自《【计算机系统结构】》
仅供学习交流使用

推荐

实验2 指令调度和延迟分支【计算机系统结构】

实验3 Tomasulo算法

1 实验目的

(1) 加深对指令级并行性及开发的理解。
(2) 加深对Tomasulo算法的理解。
(3) 掌握Tomasulo算法在指令流出、执行、写结果各阶段对浮点操作指令以及load和store指令进行了什么处理。
(4) 掌握采用了Tomasulo算法的浮点处理部件的结构。
(5) 掌握保留站的结构。
(6) 给定被执行的程序片段,对于具体某个时钟周期,能够写出保留站、指令状态表以及浮点寄存器状态表内容的变化情况。

2 实验平台

采用Tomasulo算法模拟器。

3 实验内容和步骤

首先要掌握Tomasulo算法模拟器的使用方法(见随附的ppt)。
1)、假设浮点功能部件的延迟时间为:加减法2个时钟周期,乘法10个时钟周期,除法40个时钟周期,Load部件2个时钟周期。

实验3 Tomasulo算法【计算机系统结构】_第1张图片

(1) 对于下面的代码段,给出当指令MUL.D写结果时,保留站、Load缓冲器以及寄存器状态表中的内容。

L.D   F6,24(R2)
L.D   F2,12(R3)
MUL.D  F0,F2,F4
SUB.D   F8,F6,F2
DIV.D   F10,F0,F6
ADD.D  F6,F8,F2

实验3 Tomasulo算法【计算机系统结构】_第2张图片

(2) 按单步方式执行上述代码,利用模拟器的对比显示功能,观察每一个时钟周期前后各信息表中内容的变化情况。

2)、对于上面相同的延迟时间和代码段:
(1) 给出在第3个时钟周期时,保留站、Load缓冲器以及寄存器状态表中的内容。

实验3 Tomasulo算法【计算机系统结构】_第3张图片
可以看到
保留站中Multi的Qj字段是Load2,寄存器换名技术,存储到保留站
寄存器中F2的Qi是Load2

(2) 步进5个时钟周期,给出此时保留站、Load缓冲器以及寄存器状态表中的内容。

实验3 Tomasulo算法【计算机系统结构】_第4张图片

可以看到
ADD2的Vj是M3(F8),Vk是M2(F2)
Mult1的Vj是M2(F2),Vk是R[F4]
Mult2的Vk是M1(F6),Qj是Mult1(运算后的F0)

再步进10个时钟周期,给出此时保留站、Load缓冲器以及寄存器状态表中的内容。

实验3 Tomasulo算法【计算机系统结构】_第5张图片

可以看出
Mutl2的Vj是M5(F0),Vk是M1(F6)

3)、假设浮点功能部件的延迟时间为:加减法3个时钟周期,乘法8个时钟周期,除法40个时钟周期,自己编写一段程序,重复上述步骤(2)的工作。并给出通过此项工作,得出什么结论?

实验3 Tomasulo算法【计算机系统结构】_第6张图片

(1) 给出在第3个时钟周期时,保留站、Load缓冲器以及寄存器状态表中的内容。

实验3 Tomasulo算法【计算机系统结构】_第7张图片

可以看到
Mutl1的Vk是R[F4],Qj是Load2(F2)

(2) 步进5个时钟周期,给出此时保留站、Load缓冲器以及寄存器状态表中的内容。

实验3 Tomasulo算法【计算机系统结构】_第8张图片

可以看到
ADD1的Vj是M1(F6),Vk是M2(F2)
ADD2的Qj是Add1(F8),Vk是M2(F2)
Mult1的Vj是M2(F2),Vk是R[F4]
Mult2的Vk是M1(F6),Qj是Mult1(运算后的F0)

(3) 再步进10个时钟周期,给出此时保留站、Load缓冲器以及寄存器状态表中的内容。

实验3 Tomasulo算法【计算机系统结构】_第9张图片

可以看出
Mutl2的Vj是M3(F0),Vk是M1(F6)

4 实验总结与心得

Tomasulo算法的核心思想:

  • 记录和检测指令相关,操作数一旦就绪就立即执行,把发生RAM冲突的减小到最少。
  • 通过寄存器换名来消除WAR冲突和WAW冲突。

Tomasulo算法的基本结构

  • 见 课本 图4.1

Tomasulo具体算法
(1) 指令流出
(2) load和store指令
(3) 写结果

最后

2023-6-9 9:22:53

你对我百般注视,
并不能构成万分之一的我,
却是一览无余的你。

祝大家逢考必过
点赞收藏关注哦

你可能感兴趣的:(#,计算机系统结构,计算机系统结构)