欢迎来到天天文库
浏览记录
ID:51802387
大小:920.50 KB
页数:22页
时间:2020-03-15
《计算机系统结构实验报告.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、计算机系统结构实验报告3.1流水线中的相关一、实验目的1.掌握WinDLX模拟器的操作和使用,熟悉DLX指令集结构及其特点;2.加深对计算机流水线基本概念的理解;3.进一步了解DLX基本流水线各段的功能以及基本操作;4.加深对数据相关、结构相关的理解,了解这两类相关对CPU性能的影响;5.了解解决数据相关的方法,掌握如何使用定向技术来减少数据相关带来的暂停。二、实验平台WinDLX模拟器。三、实验内容、步骤及实验结果1.用WinDLX模拟器执行下列三个程序:?求阶乘程序fact.s?求最大公倍数程序gcm.s?求素数程序prim.s分别以步进、连续、设置断点的方式运行程序,观察程序在流
2、水线中的执行情况,观察CPU中寄存器和存储器的内容。熟练掌握WinDLX的操作和使用。结果总结:三种方式:步进的方式是按快捷键F7或者选择菜单栏Execute中的SingleCycle;连续的方式是按快捷键F5或者选择Execute中的Run;设置断点是通过选择window菜单栏中的code,然后在菜单栏中多出一项code项,选中你想要插入的指令,在多出来的code项中找到setbreakpoint,即可插入断点,然后按F5执行即可。以fact.s为例Pipeline图指出了每个功能段所进行的具体指令,点击指令还可以看到指令的具体相关的其他方面的内容。时空图更加直观的形式显示出了在某个
3、时间周期某个功能段所执行的具体的指令。Register图指出了各个寄存器和存储器的值,如执行完了第一条加法指令之后,R1=OX00001000。Statistics图指出了指令的相关分析数据,例如,执行了6个cycles,4条指令在流水线中等相关的总结信息。执行结果图gcm.s、prim.s类似,所以只给出运行的结果图gcm.s结果图Prim.s结果图2.用WinDLX运行程序structure_d.s,通过模拟找出存在资源相关的指令对以及导致资源相关的部件;记录由资源相关引起的暂停时钟周期数,计算暂停时钟周期数占总执行周期数的百分比;论述资源相关对CPU性能的影响,讨论解决资源相关的
4、方法。结果图资源相关的指令:adddf0,f0,f4adddf2,f0,f2(发生先写后读的数据相关导致消除了资源相关)由图可知是因为只有一个faddEX的运算部件,而它需要两个时钟周期,当第一条addd指令执行EX段时,第二条指令势必要等一个周期等faddEX部件空闲了才能够使用。但是,同时由于这两条指令存在先写后读数据相关,暂停一个周期之后没有了资源相关单条指令的详细资源冲突图因为Statistics图中的分析数据没有看见structuralstall,但是根据图知道这个存在adddf2,f0,f2时的资源冲突,大概循环了6次,总共时钟周期是139个,所以资源相关引起的暂停的时钟周
5、期的个数是6个,暂停时钟周期数占总执行周期数的百分比为6/139=4.3%Statistics数据分析图资源相关降低CPU性能,并行运算的速度降低,解决资源相关的方法有停顿几个时钟周期法(针对访存冲突和设备资源冲突(轮流单个使用))或者是增加硬件设备(解决设备资源冲突)。3.在不采用定向技术的情况下(去掉Configuration菜单中EnableForwarding选项前的勾选符),用WinDLX运行程序data_d.s。记录数据相关引起的暂停时钟周期数以及程序执行的总时钟周期数,计算暂停时钟周期数占总执行周期数的百分比。在采用定向技术的情况下(勾选EnableForwarding)
6、,用WinDLX再次运行程序data_d.s。重复上述3中的工作,并计算采用定向技术后性能提高的倍数。1、不定向技术:总时钟周期=202数据相关引起的暂停时钟周期=104暂停时钟周期数占总执行周期数的百分比=51.48%2、定向技术:总时钟周期=128数据相关引起的暂停时钟周期=30暂停时钟周期数占总执行周期数的百分比=23.44%定向技术的加速比=202/128=1.578四、心得体会通过使用WinDlX对指令模拟与分析,我们对流水线的执行过程更加熟悉,也对执行时出现的问题,如资源相关,数据相关等产生原因有了清晰的认识,进一步加深了使我们对流水线的理解。3.2循环展开及指令调度一、实
7、验目的1.加深对循环级并行性、指令调度技术、循环展开技术以及寄存器换名技术的理解;2.熟悉用指令调度技术来解决流水线中的数据相关的方法;3.了解循环展开、指令调度等技术对CPU性能的改进。二、实验平台WinDLX模拟器。三、实验内容、步骤及实验结果1.用指令调度技术解决流水线中的结构相关与数据相关(1)用DLX汇编语言编写代码文件*.s,程序中应包括数据相关与结构相关(假设:加法﹑乘法﹑除法部件各有2个,延迟时间都是3个时钟周期)(2)通过Co
此文档下载收益归作者所有