北邮大三下 计算机系统结构实验报告 实验一到五 WINDLX模拟器

2019-08-30 21:16

北京邮电大学

实验报告

课程名称 计算机系统结构

计算机学院 2011211311班

薛玥(2011211432)

目录

实验一 WINDLX模拟器安装及使用........................................................................... 3

·实验准备............................................................................................................. 3 ·实验环境............................................................................................................. 4 ·实验步骤............................................................................................................. 5 ·实验内容及要求................................................................................................. 5 ·实验过程............................................................................................................. 5 ·实验总结........................................................................................................... 11 实验二 指令流水线相关性分析.............................................................................. 12

·实验目的........................................................................................................... 12 ·实验环境........................................................................................................... 12 ·实验步骤........................................................................................................... 12 ·实验过程........................................................................................................... 12 ·实验总结........................................................................................................... 19 实验三 DLX处理器程序设计 ................................................................................ 20

·实验目的........................................................................................................... 20 ·实验环境........................................................................................................... 20 ·实验步骤........................................................................................................... 20 ·实验过程........................................................................................................... 20

A. 向量加法代码及性能分析 ................................................................................. 20 B.双精度浮点加法求和代码及结果分析 ........................................................... 26 ·实验总结........................................................................................................... 31 实验四 代码优化...................................................................................................... 32

·实验目的........................................................................................................... 32 ·实验环境........................................................................................................... 32 ·实验原理........................................................................................................... 32 ·实验步骤........................................................................................................... 32 ·实验过程........................................................................................................... 32 ·实验总结+实习体会......................................................................................... 37 实验五 循环展开...................................................................................................... 38

·实验目的........................................................................................................... 38 ·实验环境........................................................................................................... 38 ·实验原理........................................................................................................... 38 ·实验步骤........................................................................................................... 38 ·实验过程........................................................................................................... 38

矩阵乘程序代码清单及注释说明 ......................................................................... 38 相关性分析结果 ......................................................................................................... 43 增加浮点运算部件对性能的影响 ......................................................................... 43 增加forward部件对性能的影响 ......................................................................... 43 转移指令在转移成功和转移不成功时候的流水线开销 ................................ 43 ·实验总结+实习体会+课程建议....................................................................... 43

2

实验一 WINDLX模拟器安装及使用

·实验准备

1.了解DLX的基本结构和原理

DLX是一种典型的Load/Store型指令集结构。它具有一套简单的Load/Store指令集;它注重指令流水效率;它简化指令的译码;它高效支持编译器。

2.了解DLX中的寄存器

DLX中有32个通用寄存器(GPRs),分别将其命名为R0,R1?R31。每个通用寄存器长度为32位。另外,DLX中有32个浮点寄存器(FPRs),分别将其命名为F0,F1?F31。

3.了解DLX数据类型

DLX提供了多种长度的整型数据和浮点数据。对整型数据而言,有8位,16位,32位多种长度;对浮点而言,有32位单精度浮点数和64位双精度浮点数。浮点数据表示采用的是IEEE754标准。DLX操作都是对32位整型数据及32或64位浮点数据进行的。

4.了解DLX的寻址方式和数据传送

DLX提供了寄存器寻址,立即寻址,偏移寻址和寄存器间接寻址四种寻址方式。寄存器寻址字段的大小为5位,用来标识32个通用寄存器或浮点寄存器。

5.了解DLX的指令格式

因为DLX只有四种寻址方式,所以将其寻址方式编码在操作码中。为了简化指令译码,并充分发挥流水线的效率,所有DLX指令的字长均是32位,其中用6位表示操作码。DLX中各种类型指令的格式如下图所示:

3

6.了解DLX中的操作

DLX指令中的操作可以分为四种类型,即:Load和Store操作、ALU操作、分支和跳转操作、浮点操作。

(1)Load和Store操作

可以对DLX的所有通用寄存器和浮点寄存器进行Load(载入)和Store(储存)操作,但是通用寄存器R0的Load操作没有任何效果。 (2) ALU操作

在DLX中,所有的ALU指令都是寄存器-寄存器型指令,其运算包含了简单的算术和逻辑运算,DLX还允许所有这些指令对立即值进行操作,立即值以16位符号扩展形式出现。在DLX指令集中,还有一些寄存器比较指令(=,≠,<,>,≤,≥),如果比较结果为真,这些指令就在目标寄存器中填入1(表示真),否则填入0(表示假)。因为这些比较操作指令要对目标寄存器进行“设置”,所以也称它们为设置相等、设置不等、设置小于等指令。

(3) 分支和跳转操作

在DLX中,对程序流程的控制是通过一些跳转和分支指令来实现的。根据描述目标地址的方法和是否链接可以将跳转操作指令分为四种类型。其中两种类型的跳转指令用带符号位的26位偏移量加上程序计数器的值来确定跳转的目标地址,另外两种类型的跳转指令则指定一个寄存器,由寄存器中的内容决定跳转的目标地址。跳转有两种类型,一种是简单跳转,另一种是跳转并链接(用于过程调用),后者将返回一个地址,即将下一条顺序指令地址(返回地址)保存在寄存器R31中。DLX中的所有分支指令均是条件分支指令,其源操作数寄存器中包含了一个数值或某个比较结果。分支指令测试该源操作数寄存器中的值是0还是非0,决定分支是否成功。

(4) 浮点操作

DLX的浮点操作有:加、减、乘、除。后缀D代表双精度浮点操作,而后缀F代表单精度浮点操作(如:ADDD、ADDF、SUBD、SUBF、MULTD、MULTF、DIVD、DIVF)。值得提出的是,DLX的浮点比较操作设置浮点状态寄存器中的位,如果比较结果为真,则将该位设置为1;如果比较结果为假,则将该位设置为0。浮点分支指令BFPT和BFTF则测试该寄存器的值来决定分支是否成功。

·实验环境

Windows XP操作系统 WinDLX模拟器

4

·实验步骤

1.WINDLX模拟器安装 2.熟悉模拟器的配置

3.熟悉各工具的使用

·实验内容及要求

阅读模拟器Help文档和相关资料,利用Fact.s及Input.s代码熟悉模拟器的配置、各项工具使用、寄存器设置及指令系统。

软件包中还有WinDLX教程和联机帮助,可以通过它们进一步了解模拟器的使用方法和DLX处理器的原理。

·实验过程

前期精读老师所给资料+上网查询相关资料,了解WinDLX模拟器。

1.首先,要认真阅读老师所给的有关WinDLX的实验指导书和使用指南,在实验

开始之前一定要对软件有个细致的了解,点击,文档十分细致的讲述了这个模拟器各个窗口所包含的功能。但是我在做实验的时候还上网查了一些资料,希望能够对自己在以后的试验中有所帮助。

文档介绍了该模拟器的指令格式及要求。

2.在详细了解了WinDLX模拟器之后,点击

WinDLX模拟器的结构和功能说明

1.点击运行之后,会看到一个如下图所示的窗口。

,则开始运行。

5


北邮大三下 计算机系统结构实验报告 实验一到五 WINDLX模拟器.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:正 安 县 建 政 中 学129活动方案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: