发布时间 : 星期三 文章student更新完毕开始阅读62218adbad51f01dc281f14f
计算机组成与结构实验指导书
14. 实验十四 程序相关性问题分析(选做)
1. 实验十四:程序相关性问题分析。
2. 实验目的:通过WinDLX仿真器,掌握计算机体系结构中指令相关的不同种类,
掌握计算机体系结构中指令相关问题的消除方法。 3. 实验要求:
(1) 本实验要求利用DLX汇编语言编写一个程序,程序可以使用循环结构等造
成指令相关,然后加载到WinDLX模拟器中进行模拟,观察指令在流水线运行时由于指令相关所引起的流水中断等问题,最后,注意联系课题内容,分析在模拟器中所使用的消除相关的方法。 (2) 每人一组,独立完成。
(3) 根据实验目的,认真完成实验中给出的任务;根据实验过程和结果,完成实
验报告并及时上交相关文档;在实验报告中应认真写出自己的实验心得和体会;鼓励同学进行交流,但是禁止抄袭!
4. 实验原理及内容:
指令流水大大提高了计算机的效率,但是由于指令相关性的存在,使得我们在实际的机器运行中,不可能达到理论上的加速比。一般而言,在循环程序,计算表达式等程序中,容易出现读写相关,结构相关等相关。因此,可以使用循环结构等造成指令相关,然后加载到WinDLX模拟器中进行模拟,观察指令在流水线运行时由于指令相关所引起的流水中断等问题,最后,注意联系课堂内容,分析在模拟器中所使用的消除相关的方法。
5. 实验软硬件环境:奔腾系列机器,操作系统为Windows系列,WinDLX模拟器。 6. 实验步骤和方法:
根据课堂中讲述的指令相关的内容,以及DLX汇编语言,可以编写一个简单的程序来造成指令相关现象,也可以简单的将我们以前做过的一些实验项目根据DLX汇编语言的要求变换一下。
下面给出一个一般的实验流程:
(1) 设计一个可以产生指令相关的算法; (2) 利用DLX汇编语言实现此算法; (3) 打开WinDLX,载入该文件; (4) 按F7逐步执行;
(5) 观察在不同子窗口出现的变化,特别是Clock Cycle Diagram窗口中的
变化;
(6) 记录下存在相关的指令; (7) 根据不同的指令类型,针对WinDLX窗口出现的情况,联系课堂内容,
总结计算机是如何解决这些相关的;
(8) 完成实验报告,并按时上交。
7. 实验预习要求:预习有关DLX汇编指令的有关内容,并复习一下课堂中讲述的有
关指令相关的消除所用到的方法。 8. 思考题:
(1) DLX汇编语言和8088/8086汇编语言有何异同?
(2) 对于产生相关的一些程序,可否有什么方法来避免这些相关?
湖南大学软件学院 47
计算机组成与结构实验指导书
9. 评分标准:
(1) 能利用DLX汇编语言,编制一个简单的存在指令相关的程序(80%); (2) 实验报告编写认真详细,按时上交(20%)。
10. 实验报告:要求提交1份实验卡、1份实验报告、源程序代码(电子档)。
实验卡:
“组别”:填写自己的学号;
“实验数据记录”:填写自己程序运行中存在相关的指令。 实验报告:
“实验内容”:填写利用DLX编写的代码; “数据记录和计算”和“结论”:填写程序的运行运行过程中存在的相关指令和相
关的类型;
“小结”:填写自己的感想。 源代码:
? 提交源程序时应提交整个文件夹,包括各种.s文件,文件夹的命名规则请
按照要求设定,然后将整个文件夹压缩打包后提交(包名中应含有学号)。
湖南大学软件学院 48