计算机系统结构实验windlx,计算机系统结构实验指导

a7f4a3f590493a1e451dd952a488fd7c.gif 计算机系统结构实验指导

(71页)

4eb1fede6b863a61110a5f41c035186f.gif

本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!

21.9 积分

计算机糸统结构卖殓指导书、八刖计算机系统结构是计算机科学与技术专业的一门骨干课程,课程 中讲授的许多内容诸如:指令流水线、向量计算、流水线的相关、并 行计算、定向技术等内容比较抽象,同学们在学习屮会有些难度。为了使理论教学与实践教学紧密结合,注重学生的智力开发和能 力培养,为了帮助犬家学好这门课程,我们安排了计算机系统结构实 验,希望同学们认真完成实验内容,增进对课程内容的理解,提高自 己理论联系实际的能力,提高自己独立思考解决问题的能力。本实验采用了目前在世界上计算机系统结构实验教学过程中广泛 采用的WinDLX模拟器,该模拟器把系统结构课程屮许多抽象的东西 变成实际的、便于同学们理解的内容。本实验中借鉴和引用了其他学校的经验和内容,在此表示感谢。WinDLX简介二.WinDLX寄存器结构及指令集三.WinDLX教程四.实验注意事项及要求五.实验A熟悉WinDLX的使用六.实验B用WinDLX执行程序求最大公约数七.实验C用WinDLX模拟器完成求素数程序八.实验二结构相关九.实验三数据相关十.实验四指令调度十一?实验七多处理机并行计算—.WinDLX 简介DLX是贯穿木课程的一个流水线处理器实例,许多讨论、模拟结果和例题 都是基于DLX的。它不仅体现了当今多种机器(AMD29K、DEC station 3100.HP850> IBM 801、Intel i860、MIPS M/120A. MIPS M/1000. Motorola 88k> RISC I,SGI4D/60, SPARC station 1、Sun 4/110、Sun 4/260 等)指令集结构的共同特点, 而且它还将会体现未來--些机器的指令集结构的特点。这些机器的指令集结构 设计思想都和DLX指令集结构的设计思想十分相似,它们都强调:具有一个简 单的Load/Storc指令集;注重指令流水效率;简化指令的译码;高效支持编译 器。2. DLX 模拟器-WinDLXWinDLX是一个基于Windows的DLX模拟器,用于模拟DLX流水线的工 作过程。你可以灵活、方便地设置参数、控制执行、统计数据等。WinDLX提 供了直观的窗口显示。我们将WinDLX模拟器及有关程序已放在实验用计算机上,同学们打开XTJG文件夹通过双击WinDLX®*图标,启动WinDLX即可。1. DLX中的寄存器DLX中的寄存器长度为32位/Ro 0~-32个通用寄存器%(GPRs)Rsi长度为32位/Fo~-32个浮点寄存器v(FPRs)FsiFsoF31,32位单精度浮点数旳 64位 双精度浮点数F30丿一些特殊的寄存器1DLX的裁据美型DLXJ1供了多种长度的整型数据和浮点数据。整型数据r 32位单精度浮点数浮点数据{L 64位双精度浮点数DLX的寻址方式和数据传送寻址方式寄存器寻址立即值寻址偏移寻址寄存器间接寻址32位存储器地址存储器寄存器通过寄存器和存储器之间的数据 传送操作完成对存储器的访问图3由于DLX支持上述数据类型,所以对通用寄存器而言,相应的 存储器访问数据大小有8位、16位和32位;而对浮点寄存器而言, 相应的存储器访问数据大小有32位(单精度浮点数)和64位(双精 度浮点数)。值得注意的是,DLX的所冇存储器访问均需对齐。DLX的指令格式6 .55 16I类型指令|操作码0P |1 rd | 立即看字节、半字、字的载入和储存rd — rsl OP立即值655511R类型指令操作码0Prslrs2rdFunc寄存器 寄存器AL嗓作:rd ?*- rsl Func rs2函数对数据的操作进行编码:力口、减…… 对特殊寄存器的读/写和移动6 26J类型指令 操作码0P 与PC相剂的偏移量跳转,跳转并链接,从异常处自陷和返回。图45. DLX屮的操作DLX除了支持上面提到的一些简单操作之外,还支持其它一些操作。DLX 指令中的操作可以分为四种类型,即:Load和Store操作、ALU操作、分支和 跳转操作、浮点操作。在分别讨论这四种操作类型Z前,请先阅读有关本课程 屮所采用的一些符号的约定。些约定V—:数据传送操作V— n :传送一个诡的数据 »» :表示两个域的串联操作域的下标:表明从该域中选择某1位0 1 31R4 | | | …… |Regs [R4] o:选择寄存器R4中内容的符号位0 1 23 24 31R3| I I ?…「I I ?…厂\ /Regs[R3]如』:寄存器R3中内容的最低一个字节 上标:表示复制一个域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?WinDLX指令综述(1) Load 和 Store 操作:可以对DLX的所有通用寄存器和浮点寄存器进行Load(载入)和Store (储存)操作,但是对通用寄存器R0的Load操作没有任何效果。衣 1给出了载入和储存指令的一些实例。表1 DLX中Load和Store指令实例指令实例 指令名称 含义LWR1 ,30(R2) 载入整型字 Regs[Rl] - 32 Mem[30+Regs[R2]]LW R1 ' 1000载入整型字(R0)Regs[Rl] — 32 Mem[ 1000+0]LBR1 ,40 (R3) 载入字节## Mem[40+Regs[R3]]Regs[Rl] — 32 (Mem[4O+Regs[R3]]o)24LBUR1 ,40 (R3)载入无符号字节 RegsfRl] - 32024 ## Mem[40+Regs[R3]]Regs[Rl] - 32 (Mem[40+Regs[R3]]°)"LHR1,40 (R3) 载入整型半字## Mem[40+Regs[R3H ## Mem[41+Regs[R3]]LF FO , 5() (R3) 载入单精度浮点 Regs[F0] - 32 Mem[50+Regs[R3]]LD F0,50 (R2)SW 50() (R4), R3载入双粹度浮点 Regs[FO]##Re 关 键 词: 计算机系统 结构 实验 指导

4d91c43bfc72ca913299809b07b4968f.gif  天天文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值