电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

北邮计算机系统结构实验报告实验一到五WINDLX模拟器

38页
  • 卖家[上传人]:cn****1
  • 文档编号:475830016
  • 上传时间:2022-11-12
  • 文档格式:DOC
  • 文档大小:800KB
  • / 38 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、北京邮电大学实验报告课程名称 计算机系统结构计算机学院 2016111303班王陈(2016110711)目录实验一 WINDLX模拟器安装及使用3实验准备错误!未定义书签。实验环境错误!未定义书签。实验步骤错误!未定义书签。实验内容及要求错误!未定义书签。实验过程错误!未定义书签。实验总结8实验二 指令流水线相关性分析9实验目的9实验环境9实验步骤9实验过程错误!未定义书签。实验总结16实验三 DLX处理器程序设计17实验目的17实验环境错误!未定义书签。实验步骤错误!未定义书签。实验过程17A.向量加法代码及性能分析17B.双精度浮点加法求和代码及结果分析22实验总结27实验四 代码优化28实验目的28实验环境错误!未定义书签。实验原理28实验步骤错误!未定义书签。实验过程28实验总结+实习体会33实验五 循环展开34实验目的34实验环境错误!未定义书签。实验原理34实验步骤错误!未定义书签。实验过程34矩阵乘程序代码清单及注释说明34相关性分析结果39增加浮点运算部件对性能的影响39增加forward部件对性能的影响39转移指令在转移成功和转移不成功时候的流水线开销39实验总结+

      2、实习体会+课程建议39实验一 WINDLX模拟器安装及使用WinDLX模拟器的结构和功能说明1.点击运行之后,会看到一个如下图所示的窗口。它包括Register, Code, Pipeline, Clock Cycle Diagram, Statistics, Breakpoints。接下来详细介模拟器的结构及各个部件的功能。2.Register窗口介绍Rigister窗口中显示的是各个寄存器的名称及内容。如下图:可以看到寄存器中以十六进制标识,从上图可以看出各个寄存器中的内容。2.Code窗口介绍 在没有进行任何执行的时候,初次打开code窗口,即为下图所示窗口现实的信息是各个存储器内同。第一列标识存储器的地址;第二列是机器代码,用16进制表示;第三列是汇编指令。当我们点击上方的,可以选择单步或多步执行(也可以使用快捷键F7或F8)。若选择单步执行,每按一次F7,指令执行一次,可以看到,一次执行的为IF-ID-intEX-MEM-WB,没执行一次还有颜色的变化。颜色是用来标识指令处于哪个流水段的,如下图。当然,我们也可以使用多步执行,按快捷键F8,选择5步流水,即可。3.Pipeli

      3、ne窗口介绍通过阅读WinDLX模拟器说明书可以知道,Pipeline窗口显示的是DLX处理器的内部结构。窗口用下图标识DLX五段流水。当然,如同Code窗口介绍讲述的那样,不同的颜色显示了指令处于哪段流水线。使用快捷键F7单步执行,可以明显的看出,不同时候流水段执行的不同指令。如下图。图片反映的正式与Code中所处的时刻相同的指令流水。可以清晰看到不同流水段执行的是哪条指令。4.Clock Cycle Diagram窗口实验准备中我们已经知道,该窗口显示的是流水线的时空图。时空图反映的是不同时隙内的运行情况。如下图。在我看来,时空图是最好理解的。因为它反映的就是流水段的并行程度。在这个DLX模拟器中,并不存在一些数据或者控制上的冲突问题。所以可以依靠上图很清晰的看到指令所处的不同流水段,及指令执行情况。该时空图同样也是和前面的Code等相对应。也可以通过快捷键F7来进一步执行指令,可以看到流水线时空图的扩展情况。任意双击指令的一行,可以详细看到不同流水段的情况。如下图所示。5.Statistics窗口介绍该窗口是对运行程序中的数据进行分析。主要包括模拟器中硬件配置情况,在该窗口中,我

      4、们可以比较不同配置对于该模拟器的不同影响。如下图所示。1) 整体指令执行情况2) 硬件配置情况3) 暂停次数和百分比及原因分析4) 分支次数和百分比5) Load/Store指令执行情况6) 浮点指令执行次数和百分比 7) trap发生的次数和百分比6.Breakpoints窗口介绍该窗口使用来观察代码运行情况。先打开Breakpoints窗口,点击窗口上方的来设置breakpoint,也就是设置指令运行到流水线的哪个阶段程勋停止执行。如上图,如果选择EX阶段,在Code窗口中相应的行会出现BEX,即指令执行到译码结束执行开始的时候,程序将中止。实验总结通过本次试验,由于是第一次接触DLX模拟器,该试验能够帮助我对这个模拟器大致的功能及使用做个大致的了解。对于日后的实验打下好的基础。我觉得WinDLX模拟器小而精悍,它有不同颜色的标记, 不同寄存器及存储器的反映。通过使用它,可以对5步流水的过程及不同阶段很清楚明白的看到。也可以看到不同指令分析走到了哪一步,到了哪一步流水段。实验二 指令流水线相关性分析实验目的通过使用WINDLX模拟器,对程序中的三种相关现象进行观察,并对使用专用通路

      5、,增加运算部件等技术对性能的影响进行考察,加深对流水线和RISC处理器的特点的理解。实验环境Windows XP操作系统WinDLX模拟器实验步骤1.观察程序中出现的数据/控制/结构相关。指出程序中出现上述现象的指令组合。2.考察增加浮点运算部件对性能的影响。3.考察增加forward部件对性能的影响。4.观察转移指令在转移成功和转移不成功时候的流水线开销。1. 观察程序中出现的数据/控制/结构相关;指出程序中出现上述现象的指令组合。1) 数据相关如下图所示,在Clock Cycle Diagram窗口所想是的时空图中和Pipeline窗口中的流图中,第一次出现了R-Stall。接下来可以点击上图中的橘色窗口,则屏幕显示lbu r3,00(r2)要在WB周期写回r3中的数据;而下一条指令seqi r5,r3,0a要在intEX周期中读取r3中的数据。上述过程发生了WR冲突,即写读相关。为了避免此类冲突,seq r5,r4,0a的intEX指令延迟了一个周期进行。由此,相关指令为:2) 控制相关由上图可以看出,在第4时钟周期:第一条指令处于MEM段;第二条命令处于intEX段;第三条指令

      6、出于aborted状态;第四条命令处于IF段。原因分析:jal InputUnsigned是无条件分支指令,但当第三个周期开始的时候,也就是jal这条指令被译码后才知道。此时,movi2fp已经执行,且将要执行的下一条命令在另外一个地址处,所以这条指令不会执行,这个时候就会发生控制相关。由此,发生控制相关的指令为:3) 结构相关首先,我们先来看一下执行过控制相关的时空图和Pipeline,如下图。当我们点击Pipeline中IF所对应的框框可以看到详细的该指令执行情况,如下图:上图表明了addi r2,r2,01的详细信息。该指令与它前一条指令add r1,r1,r3发生了结构相关。并且由于此处的冲突,需要暂停2个周期。在ID段暂停后,则开始进图intEX段。所以这条指令(addi r2,r2,01)你不能进入ID流水段,译码部分占用,发生了结构相关。该部分的指令为:2. 考察增加浮点运算部件对性能的影响。该实验取N=6首先通过,点击Floating Point Stage Configuration来设置浮点运算部件的配置。由于实验手册上面要求Delay=4,所以我们将Delay这一

      7、栏改成4,而Count可以任意,为了对比,我们第一次浮点运算部件取全部为2,第二次浮点运算部件取全部为3。如下图所示:运行50个cycles之后,可以看到他们数据的对比:由此可见,浮点运算部件的增减对效率无影响。比较各个数据,发现没有变化。无论怎么增加浮点运算部件,统计结果都一样。原因在于此程序中浮点计算指令没有重叠,所以并行度没有增加,性能没有提高。3.考察增加forward部件对性能的影响。 为了对比有无forward部件的性能。需要在中勾选enable forwarding,以及不勾选enable configuration来看性能数据的对比。不使用forward部件:使用forward部件:从上面的数据我们可以看出增加forwardi部件后RAW由原来占总时钟周期的26%减少至18%,RAW个数由原来的13减少至9。增加forward部件使得控制相关比例增加了。即,使用forward部件后,总的时钟周期减少,数据相关减少,流水线的性能得到一定的改善。3. 观察转移指令在转移成功和转移不成功时候的流水线开销。我们假设,浮点部件设置Count=3,Delay=4;N=6。执行完毕后

      8、,查看条件转移分支,如下图所示:由上图可知,转移指令一共8条,成功转移2条(占25%),不成功为6条。所以,静态指令调度算法只能解决数据相关,条件转移结果与原来相比没有变化。即,若转移不成功,对流水线的执行无影响,流水线的吞吐率和效率没有降低;若转移成功,则要废弃预先读入的指令,重新从转移成功处读入指令,执行效率会下降。实验总结本次试验中,主要遇见一个问题,就是在当初文件加载时没有成功,后来通过查询资料和自己的尝试,发现,在选择文件的顺序很关键,它决定了文件在存储器中出现的顺序。本次实验,主要通过对于三中相关的观察,分析出现相关时的指令,分析浮点运算部件和forward部件对性能的影响,观察转移指令在转移成功和不成功时的流水线开销,这些实验一步一步,通过WinDLX形象生动的表示,使我在实践中更加深入的认识了流水线。实验三 DLX处理器程序设计实验目的学习使用DLX汇编语言编程,进一步分析相关现象实验过程A. 向量加法代码及性能分析首先给据题目要求,需要熟练掌握DLX编程语言,然后根据规范格式编写向量的代码。1) 向量声明VectorLength:.word16 /声明向量长度Vector1:.word1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 /声明两个向量Vector1和Vector2Vector2:.word1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16Result:.space4 /声明一个空间来存放打印的数据Loop:/循环体ldf10,Vector1(r2)ldf12,Vector2(r2)/读入两个提前声明的向量add

      《北邮计算机系统结构实验报告实验一到五WINDLX模拟器》由会员cn****1分享,可在线阅读,更多相关《北邮计算机系统结构实验报告实验一到五WINDLX模拟器》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    监控施工 信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.