您好,欢迎访问三七文档
实验二结构相关一.实验目的:通过本实验,加深对结构相关的理解,了解结构相关对CPU性能的影响。二.实验内容:1.用WinDLX模拟器运行程序structure_d.s。2.通过模拟,找出存在结构相关的指令对以及导致结构相关的部件。3.由结构相关引起的暂停时钟周期数,计算暂停时钟周期数占总执行周期数的百分比。4.论述结构相关对CPU性能的影响,讨论解决结构相关的方法。三.实验原理:结构相关是指因为程序的执行方向可能被改变而引起的相关。可能改变程序执行方向的指令通常有无条件转移、一般条件转移、复合条件转移、子程序调用、中断等。1.无条件转移无条件转移指令一般能够在指令分析器中就执行完成,因此一般对指令执行部件的工作不会造成影响。2.条件转移条件转移指令有两种:一般条件转移指令和复合条件转移指令。对于一般条件转移指令,相关最严重的情况发生在条件码是上一条指令产生的。转移不成功对先行控制器的影响不大,而转移成功时,不仅指令执行过程变成了完全串行,而且要作废已经取到先行指令缓冲栈中的大量指令,从而白白增加了处理机与主存之间的通信量。对于复合条件转移指令,如果转移不成功,则就象一条普通的运算型指令一样。如果转移成功,不仅要全部或部分作废先行指令缓冲栈中已经预取的指令,还可能要作废先行操作栈中的指令和先行读数栈中的操作数,作废当前在指令分析器中分析的指令。四.WinDLX的窗口配置:1.Statistics窗口:将待运行程序装入主存后按F5使程序完成执行,出现消息Trap#0occurred表明最后一条指令trap0已经执行,Trap指令中编号“0”没有定义,只是用来终止程序。双击图标Statistics。Statistics窗口提供各个方面的信息:模拟中硬件配置情况、暂停及原因、条件分支、Load/Store指令、浮点指令和traps。窗口中给出事件发生的次数和百分比。2.WinDLX可以在多种配置下工作。你可以改变流水线的结构和时间要求、存储器大小和其他几个控制模拟的参数。点击Configuration/FloatingPointStages(点击Configuration打开菜单,然后点击FloatingPointStages菜单项),选择如下标准配置:CountDelayAdditionUnits:12MultiplicationUnits:15DivisionUnits:119点击Configuration/MemorySize,可以设置模拟处理器的存储器大小。应设置为0x8000,然后,点击OK返回主窗口。在Configuration菜单中的其他三个配置也可以设置,它们是:Symbolicaddresses,AbsoluteCycleCount和EnableForwarding。点击相应菜单项后,在它的旁边将显示一个小钩。五.实验要求:实验前要做好充分准备,包括WinDLX安装与调试步骤、程序运行方法,以及对模拟结果的分析等。六.实验报告:1、程序运行说明。2、存在结构相关的指令对以及导致结构相关的部件说明。3、查看Statistics窗口中的各种统计数字,记录由结构相关引起的暂停时钟周期数,计算暂停时钟周期数占总执行周期数的百分比。
本文标题:实验二结构相关
链接地址:https://www.777doc.com/doc-5716432 .html