实验一流水线相关一
熟练掌握 WinDLX 模拟器的操作和使用,熟悉DLX 指令集结构及其特点;2
加深对计算机流水线基本概念的理解;3
进一步了解DLX 基本流水线各段的功能以及基本操作;4
加深对数据相关、结构相关的理解,了解这两类相关对CPU 性能的影响;5
了解解决数据相关的方法,掌握如何使用定向技术来减少数据相关带来的暂停
用WinDLX 模拟器执行下列三个程序(任选一个):求阶乘程序 fact
s 求最大公倍数程序gcm
s 求素数程序 prim
s 分别以步进、连续、设置断点的方式运行程序,观察程序在流水线中的执行情况,观察 CPU 中寄存器和存储器的内容
熟练掌握WinDLX 的操作和使用
注意: fact
s 中调用了 input
s 中的输入子程序
load 程序时,要两个程序一起装入(都 select 后再点击 load)
s 也是如此
用WinDLX 运行程序 structure_d
s,通过模拟:找出存在结构相关的指令对以及导致结构相关的部件;记录由结构相关引起的暂停时钟周期数,计算暂停时钟周期数占总执行周期数的百分比;论述结构相关对CPU 性能的影响,讨论解决结构相关的方法
在不采用定向技术的情况下(去掉Configuration 菜单中 Enable Forwarding 选项前的勾选符),用 WinDLX 运行程序 data_d
记录数据相关引起的暂停时钟周期数以及程序执行的总时钟周期数,计算暂停时钟周期数占总执行周期数的百分比
在采用定向技术的情况下(勾选Enable Forwarding ),用 WinDLX 再次运行程序 data_d
重复上述 3 中的工作,并计算采用定向技术后性能提高的倍数
三.实验过程和截图1
模拟执行 fact
s和 input