体系结构实验报告二Word文档格式.docx
- 文档编号:16987687
- 上传时间:2022-11-27
- 格式:DOCX
- 页数:10
- 大小:228.97KB
体系结构实验报告二Word文档格式.docx
《体系结构实验报告二Word文档格式.docx》由会员分享,可在线阅读,更多相关《体系结构实验报告二Word文档格式.docx(10页珍藏版)》请在冰豆网上搜索。
三、实验过程及结果
1.将fact.s和input.s加载至WinDLX中。
加载成功
2.观察程序中出现的数据/控制/结构相关。
指出程序中出现上述现象的指令组合。
(1)数据相关
在ClockCycleDiagram窗口时空图中和Pipeline窗口中的流图中,第一次出现了R-Stall。
点击橘色窗口
lbur3,0×
0(r2)要在WB周期写回r3中的数据;
而下一条指令seqir5,r3,0×
a要在intEX周期中读取r3中的数据。
上述过程发生了WR冲突,即写读相关。
为了避免此类冲突,seqr5,r4,0×
a的intEX指令延迟了一个周期进行。
由此,相关指令为:
(2)控制相关
由上图可以看出,在第4时钟周期:
第一条指令处于MEM段;
第二条命令处于intEX段第三条指令出于aborted状态;
第四条命令处于IF段。
原因分析:
jalInputUnsigned是无条件分支指令,但当第三个周期开始的时候,也就是jal这条指令被译码后才知道。
此时,movi2fp已经执行,且将要执行的下一条命令在另外一个地址处,所以这条指令不会执行,这个时候就会发生控制相关。
由此,发生控制相关的指令为:
(3)结构相关
点击黄色窗口
上图表明了addir2,r2,0×
1的详细信息。
该指令与它前一条指令addr1,r1,r3发生了结构相关。
并且由于此处的冲突,需要暂停2个周期。
在ID段暂停后,则开始进图intEX段。
所以这条指令(addir2,r2,0×
1)你不能进入ID流水段,译码部分占用,发生了结构相关。
该部分的指令为:
3.考察增加浮点运算部件对性能的影响。
通过工具栏上面的Configuration,点击FloatingPointStageConfiguration来设置浮点运算部件的配置。
由于实验手册上面要求Delay=4,所以我们将Delay这一栏改成4,而Count可以任意,为了对比,我们第一次浮点运算部件取全部为2,第二次浮点运算部件取全部为3。
运行50个cycles之后,看他们数据的对比:
浮点运算部件的增减对效率无影响。
比较各个数据,发现没有变化。
无论怎么增加浮点运算部件,统计结果都一样。
原因在于此程序中浮点计算指令没有重叠,所以并行度没有增加,性能没有提高。
4.考察增加forward部件对性能的影响。
为了对比有无forward部件的性能。
需要在Configuration中勾选enableforwarding,以及不勾选enableconfiguration来看性能数据的对比。
不使用forward部件:
使用forward部件:
增加forward部件后RAW由原来占总时钟周期的28%减少至24%,RAW个数由原来的14减少至12。
增加forward部件使得控制相关比例增加了。
使用forward部件后,总的时钟周期减少,数据相关减少,流水线的性能得到一定的改善。
5.观察转移指令在转移成功和转移不成功时候的流水线开销。
浮点部件设置Count=3,Delay=4;
N=6。
执行完毕后,查看条件转移分支
转移指令一共2条,成功转移0条(占0%),不成功为2条。
所以,静态指令调度算法只能解决数据相关,条件转移结果与原来相比没有变化。
若转移不成功,对流水线的执行无影响,流水线的吞吐率和效率没有降低;
若转移成功,则要废弃预先读入的指令,重新从转移成功处读入指令,执行效率会下降。
四、实验总结
根据实验,总结采用流水线技术会遇到的问题和为解决这些问题所采用的各种技术的作用。
同时简单谈谈自己对流水线技术的认识。
在本次实验中,一开始对于如何加载程序,以及对如何观察数据相关不是很了解,经上网查阅资料后,摸清了WINDLX模拟器的基础使用方法,形象生动的表现了本实验的各种情况,更直观易懂。
通过本次实验,将理论知识与实践联系起来,加深了我对流水线和RISC处理器的特点的理解,进一步巩固了课堂上学习的有关流水线的知识,也为以后的学习打下了基础,让我收获了很多。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 体系结构 实验 报告