欢迎来到天天文库
浏览记录
ID:46219560
大小:576.11 KB
页数:71页
时间:2019-11-21
《计算机系统结构实验指导》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、计算机糸统结构卖殓指导书、八刖计算机系统结构是计算机科学与技术专业的一门骨干课程,课程中讲授的许多内容诸如:指令流水线、向量计算、流水线的相关、并行计算、定向技术等内容比较抽象,同学们在学习屮会有些难度。为了使理论教学与实践教学紧密结合,注重学生的智力开发和能力培养,为了帮助犬家学好这门课程,我们安排了计算机系统结构实验,希望同学们认真完成实验内容,增进对课程内容的理解,提高自己理论联系实际的能力,提高自己独立思考解决问题的能力。本实验采用了目前在世界上计算机系统结构实验教学过程中广泛采用的WinDLX模拟器,该模拟器把系统结构课程屮许多抽象的东西变成实际的、便于同学们理解的内容。本实验
2、中借鉴和引用了其他学校的经验和内容,在此表示感谢。WinDLX简介二.WinDLX寄存器结构及指令集三.WinDLX教程四.实验注意事项及要求五.实验A熟悉WinDLX的使用六.实验B用WinDLX执行程序求最大公约数七.实验C用WinDLX模拟器完成求素数程序八.实验二结构相关九.实验三数据相关十.实验四指令调度十一・实验七多处理机并行计算—.WinDLX简介DLX是贯穿木课程的一个流水线处理器实例,许多讨论、模拟结果和例题都是基于DLX的。它不仅体现了当今多种机器(AMD29K、DECstation3100.HP850>IBM801、Inteli860、MIPSM/120A.MIPS
3、M/1000.Motorola88k>RISCI,SGI4D/60,SPARCstation1、Sun4/110、Sun4/260等)指令集结构的共同特点,而且它还将会体现未來--些机器的指令集结构的特点。这些机器的指令集结构设计思想都和DLX指令集结构的设计思想十分相似,它们都强调:具有一个简单的Load/Storc指令集;注重指令流水效率;简化指令的译码;高效支持编译器。2.DLX模拟器-WinDLXWinDLX是一个基于Windows的DLX模拟器,用于模拟DLX流水线的工作过程。你可以灵活、方便地设置参数、控制执行、统计数据等。WinDLX提供了直观的窗口显示。我们将WinDLX
4、模拟器及有关程序已放在实验用计算机上,同学们打开XTJG文件夹通过双击WinDLX®*图标,启动WinDLX即可。1.DLX中的寄存器DLX中的寄存器长度为32位/Ro0~-32个通用寄存器%(GPRs)Rsi长度为32位/Fo~-32个浮点寄存器v(FPRs)FsiFsoF31,32位单精度浮点数旳64位双精度浮点数F30丿一些特殊的寄存器1DLX的裁据美型DLXJ1供了多种长度的整型数据和浮点数据。整型数据r32位单精度浮点数浮点数据{L64位双精度浮点数DLX的寻址方式和数据传送寻址方式寄存器寻址立即值寻址偏移寻址寄存器间接寻址32位存储器地址存储器寄存器通过寄存器和存储器之间的数
5、据传送操作完成对存储器的访问图3由于DLX支持上述数据类型,所以对通用寄存器而言,相应的存储器访问数据大小有8位、16位和32位;而对浮点寄存器而言,相应的存储器访问数据大小有32位(单精度浮点数)和64位(双精度浮点数)。值得注意的是,DLX的所冇存储器访问均需对齐。DLX的指令格式6.5516I类型指令
6、操作码0P
7、1rd
8、立即看字节、半字、字的载入和储存rd—rslOP立即值655511R类型指令操作码0Prslrs2rdFunc寄存器寄存器AL嗓作:rd•*-rslFuncrs2函数对数据的操作进行编码:力口、减……对特殊寄存器的读/写和移动626J类型指令操作码0P与PC相剂的
9、偏移量跳转,跳转并链接,从异常处自陷和返回。图45.DLX屮的操作DLX除了支持上面提到的一些简单操作之外,还支持其它一些操作。DLX指令中的操作可以分为四种类型,即:Load和Store操作、ALU操作、分支和跳转操作、浮点操作。在分别讨论这四种操作类型Z前,请先阅读有关本课程屮所采用的一些符号的约定。些约定V—:数据传送操作V—n:传送一个诡的数据»»:表示两个域的串联操作域的下标:表明从该域中选择某1位0131R4
10、
11、
12、……
13、Regs[R4]o:选择寄存器R4中内容的符号位01232431R3
14、II•…「II•…厂/Regs[R3]如』:寄存器R3中内容的最低一个字节上标:表示复
15、制一个域000得到一个24位全为0的域变量Mem:表示存储器中的一个数组器图5为了进一步说明上述约定表示方法的用途,现设R8和R1O均为32位寄存器举例:Regs[R10]i6..3i-16(Mem[Regs[R8]]0)8##Mem[Regs[R8]]的含义是:以寄存器R8的内容为地址,取出存储器单元内容,将该内容的第“0”位(最高位)复制为八个“0”作为高八位再并上该存储单元内容,形成十六位数送寄存器R10的16-31位。6・W
此文档下载收益归作者所有