
【最新word论文】DLX模拟器在计算机系统结构课教学实验中的应用研究【高等教育专业论文】.doc
3页1DLX模拟器在计算机系统结构课教学实验中的应用研究摘要:DLX 模拟器用软件代写论文模拟 DLX 流水线的工作过程,可以灵活、方便地设置参数、控制执行和统计数据,并提供了直观的窗口显示实践表明,该方法可以帮助更好地理解课程中诸如流水技术、相关、定向、记分牌算法和Tomasulo 算法等较抽象复杂的内容,模拟器对流水线的理解,以及对处理器性能的评价,对我们有有较大帮助关键词:DLX 模拟器;WinDLX;DLXView;流水技术一、引言计算机系统结构是计算机科学与技术专业的一门骨干课程,也是最重要的专业基础课程之一本课程强调从总体结构、系统分析的角度来研究计算机系统通过本课程的学习,使学生理解计算机系统的内部工作原理,以及在硬件、软件界面划分的权衡策略,建立完整的、系统的计算机软硬件整体概念[1] 本课程理论性较强、教与学难度较大课程中讲授的许多内容,诸如指令流水线、向量计算、流水线相关、并行计算、定向技术等内容比较抽象,使学生无论在学习还是理解方面都会有一定的难度,从而影响到学生的学习兴趣和教学效果国外高校在本课程的教学和实验中,已普遍采用 DLX 模拟器进行分析和测试因此,采用理论教学与实践教学紧密结合的方式,对该课程教学方法进行研究和改进,将能够帮助学生增进对课程学习内容的理解,提高独立思考问题和解决问题的能力,并将对提高教学质量和教学效果起着极为重要的作用。
二、DLX 模拟器DLX 是贯穿本课程的一个流水线处理实例,课程中的许多讨论、模拟结果和例题都是基于 DLX 的它不仅体现了当今多种机型指令集结构的共同特点,而且还体现未来一些机型的指令集的特点[2] DLX 模拟器用软件模拟 DLX 流水线的工作过程,有运行于 Windows 和Linux 操作系统的不同版本,可以灵活、方便地设置参数、控制执行和统计数据,并提供了直观的窗口显示经过测试比较,采用基于 Windows 系统的 WinDLX 和 DLXView 模拟软件,它们对环境要求较低,易于实现本文介绍 WinDLX 和 DLXView 两种模拟软件在计算机系统结构课教学实验中的应用三、WinDLX 模拟器实验应用WinDLX 的主窗口中有六个图标,点击将弹出子窗口分别为寄存器子窗口(Register),代码子窗口(Code),流水线子窗口(Pipeline),流水线时空图子窗口(ClockCycleDiagram),统计子窗口(Statistics)和断点子窗口(Breakpoints)如图 1 所示利用这些子窗口可以完成结构相关、数据相关和指令调度等实验2以数据相关实验为例,介绍 WinDLX 流水线时空图子窗口和统计子窗口的作用。
在不采用定向技术的情况下(通过Configuration 菜单中的EnableForwarding 选项设置),用 WinDLX 模拟器运行程序,记录数据相关引起的暂停时钟周期数以及程序执行的总时钟周期数,计算暂停时钟周期数占总执行周期数的百分比如图 2 所示流水线时空图子窗口中的箭头是相关引起的流水暂停在采用定向技术的情况下,用 WinDLX 模拟器运行相同的程序,记录数据相关引起的暂停时钟周期数以及程序执行的总时钟周期数,计算暂停时钟周期数占总执行周期数的百分比如图 3(略) 统计子窗口的对比数据如表 1 所示从中可以进行定量地分析,看到定向技术对增强流水性能、提高 CPU 运行效率所起的作用利用 WinDLX 模拟软件可以进行熟悉 DLX 指令、结构相关、数据相关和指令调度等实验,使学生对 DLX 指令集以及流水线技术、相关、指令调度等重点难点内容有深一步地理图 2 定向前流水时空图和数据统计解,进而开展研究性工作数据相关暂停时钟周期数总时钟周期数所占比例定向前 10420251.48%定向后 3012823.44%四、DLXVieW 模拟器实验应用DLXview 是一个图形化、交互式的 DLX 流水线仿真器[3,4] 。
该模拟器能够实现对基本流水线,记分牌算法和 Tomasulo 算法的模拟通过对内存访问延迟、功能部件的数目、功能部件的延迟的配置,实现不同的流水线的模拟该模拟器使用的是 DLX 指令集描述的计算机体系结构,执行 DLX 汇编语言程序,指令在流水线中执行的过程能以图形的方式表示出来,还能得到流水线操作周期的统计信息DLXview 对流水线的理解和对处理器性能的评价对我们很有帮助用 DLXView 模拟基本流水线,能观察到流水线时空图、各流水段状态以及流水线的数据通路有两种图形界面:图 4 是基本流水线框图,图 5 是基本流水线数据通路图图 4 基本流水线框图图 5 基本流水线数据通路图记分牌技术是系统结构学习中的难点之一其学习的目的是掌握在资源充足时,尽可能早地执行没有数据阻塞的指令,达到每个时钟周期执行一条指令如果某条指令被暂停,而后面的指令与流水线中正在执行的或被暂停的指令不相关,那么这条指令可以继续流出并执行下去记分牌电路负责记录资源的使用,并负责相关检测,控制指令的流出3和执行[5] 用 DLXView 模拟记分牌算法,可直观地观察到程序运行过程中指令状态表和功能部件状态表的变化,并可以调整设置 DLX 处理器的基本结构。
模拟运行界面如图 6(略) Tomasulo 算法将记分牌的关键部分和寄存器换名技术结合在一起,其基本核心是通过寄存器换名来消除写后写和先读后写相关可能引发的流水线阻塞其基本思想是:只要操作数有效,就将其取到保留站,避免指令流出时才到寄存器中取数据,这就使得即将执行的指令从相应的保留站中取得操作数,而不是从寄存器中取得指令的执行结果也是直接送到等待数据的其他保留站中去因而,对于连续的寄存器写,只有最后一个才能真正更新寄存器中的内容一条指令流出时,存放操作数的寄存器名被换成为对应于该寄存器保留站的名称(编号)[5] 用 DLXView 模拟 Tomasulo 算法可观察指令状态表、保留站信息、DLX 浮点部件结构图模拟运行界面如图 7(略) 5.结束语WinDLX 和 DLXview 可以灵活、方便地设置参数、控制执行和统计数据,并提供了直观的窗口显示;对基本流水线,记分牌算法和 Tomasulo 算法有直观形象的模拟;能帮助理解较抽象的概念,如指令流水线、向量计算、流水线相关、并行计算、定向技术等模拟器对流水线的理解,以及处理器性能的评价对我们有较大帮助经教学实践检验,具有较好的应用效果。
参考文献:[1]张晨曦,刘依,张春元. 《计算机体系结构》网络课程[EB/OL] .http://sse.tongji.edu.cn/arch_course/index.htm.2005.[2]张晨曦,王志英,张春元,等.计算机体系结构[M] .北京:高等教育出版社.2003:3.[3]DLXview 主页[EB/OL] .http://202.38.79.66/ca/dlxview/index.html.[4]国外大学计算机体系结构网站[EB/OL].http://www.cs.wisc.edu/~arch/www/.[5]JohnL.Hennessy,DavidA.Patterson.计算机系统结构:一种定量的方法[M] .北京:清华大学出版社.2002:8。












