体系结构实验范例.doc

  1. 1、本文档共26页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
北京邮电大学 实验报告 课程名称:高级计算机系统结构 学号:2015140454 姓名:罗一皓 实验二 指令流水线相关性分析 一.实验类别: 验证试验 二.实验目的: 通过使用WINDLX模拟器,对程序中的三种相关现象进行观察,并对使用专用通路,增加运算部件等技术对性能的影响进行考察,加深对流水线和RISC处理器的特点的理解。 三.实验学时: 4 四.实验人数: 1 五.实验设备环境: WinDLX模拟器可以装入DLX汇编语言程序,然后单步、设置断点或者连续执行该程序。CPU的寄存器、流水线、I/O和存储器都可以使用图形的方式表示出来。模拟器还提供了对流水线操作的统计功能。该模拟器对理解流水线和RISC处理器的特点很有帮助。 六.实验原理: 指令流水线中主要有结构相关、数据相关、控制相关。相关影响流水线性能。 结构相关:当指令在重叠执行过程中,硬件资源满足不了指令重叠执行的要求,发生资源冲突时,将产生“结构相关”。 数据相关:当一条指令需要用到前面指令的执行结果,而这些指令均在流水线中重叠执行时,就可能引起“数据相关”。 控制相关:由条件指令引起的相关。   七.实验内容和要求: 使用WinDLX模拟器,对求阶乘程序Fact.s做分析 八.实验步骤: (1) 观察程序中出现的数据/控制/结构相关。指出程序中出现上述现象的指令组合。 数据相关: 在第24个周期时,在Clock Cycle Diagram 中有橙黄色的R-Stall, 点开之后,我们发现有 lbu r3,0x0(r2)要在WB周期写回r3中的数据,而下一条指令 seqi r5,r3,0xa 要在intEX周期中读取r3中的数据。发生了写读相关。所以为了避免冲突,seqi r5,r3,0xa 的intEXcellent指令延迟了一个周期进行。 相关指令组合: lbu r3,0x0(r2) seqi r5,r3,0xa 控制相关: 在第4个时钟周期中,第一条命令正在MEM段,在第二条命令在intEXcellent段,第四条命令在IF段。而第三条命令指示为“aborted”。 其原因是:在第二条命令(jal)是无条件分支指令,但只有在第三个时钟周期,jal指令被译码后才知道,这时,下一条命令movi2fp已经取出,但须执行的下一条命令在另一个地址处,因而,movi2fp的执行应被取消,在流水线中留下气泡。此处发生了控制相关。 相关的指令组合: addi r1,r0,0x1000 jal InputUnsigned movi2fp f10,r1 sw SaveR2[r0],r2 结构相关: 在这个流水线图中可以发现 点开之后,会发现 addi r2,r2,0x1 该指令在它面前的一条指令add r1,r1,r3 发生了结构相关。由于上一条指令由于数据相关需要停4个周期,在ID段后停滞,不能进入intEX段,故addi r2,r2,0x1 就不能进入ID,译码部分已经被占用。故发生了结构相关。 相关指令: add r1,r1,r3 addi r2,r2,0x1 (2) 考察增加浮点运算部件对性能的影响。 N=4时,浮点运算部件均为1时: N=4,浮点运算器都变为2时: 比较个数据,发现没有发生变化。对于该程序,指令组合涉及不到多个浮点器的结构相关。 (3) 考察增加forward部件对性能的影响。 在载入fact.s和input.s之后,不设置任何断点运行。 不采用重新定向技术,我们得到 采用定向技术,我们得到的结果是: 从上面的数据我们可以看出定向的作用: 增加forward部件后的109个时钟周期比增加前的137个少了28个时钟周期。 增加forward部件使得RAW相关变为15个,比增加前的41个减少了26个,RAW相关的比例从总时钟周期的29.93%减为13.76%。 增加forward部件使得控制相关比例增加了,由原来占总时钟周期的8.03%增至10.09%。 总之,使用forward部件后,总的时钟周期减少,数据相关减少,流水线的性能得到一定的改善。 (4) 观察转移指令在转移成功和转移不成功时候的流水线开销。 转移成功的情况: 在一条由4个流水段组成的流水线中,第I-1条指令要等到第I+2条指令进入流水线时才能形成条件码。如果形成的条件码是“转移不成功”的,则猜测正确,流水线的吞吐率和效率没有降低;如果形成的条件码是“转移成功”的,则猜测

文档评论(0)

1112111 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档