《计算机体系结构》第三次实验 WinDLX流水线实验

《计算机体系结构》第三次实验 WinDLX流水线实验

ID:47434753

大小:293.01 KB

页数:9页

时间:2020-01-11

《计算机体系结构》第三次实验 WinDLX流水线实验_第1页
《计算机体系结构》第三次实验 WinDLX流水线实验_第2页
《计算机体系结构》第三次实验 WinDLX流水线实验_第3页
《计算机体系结构》第三次实验 WinDLX流水线实验_第4页
《计算机体系结构》第三次实验 WinDLX流水线实验_第5页
资源描述:

《《计算机体系结构》第三次实验 WinDLX流水线实验》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、实验三WinDLX流水线实验王宇航安全0901班09283020实验三WinDLX流水线实验1实验目的:通过本实验,加深对结构相关、数据相关和指令调度的理解,了解结构相关对CPU性能的影响,掌握如何使用定向技术来减少数据相关带来的暂停,了解指令调度技术对CPU性能改进的好处。2实验内容:用WinDLX模拟器进行结构相关的分析1、生成structure.s程序。用WinDLX模拟器运行该程序。2、通过模拟,找出存在结构相关的指令对,以及导致结构相关的部件。3、记录由结构相关引起的暂停时钟周期数,计算暂停时钟周期数占总执行周期数的百分比。用WinDLX模拟器分析数据相

2、关1、生成data.s程序。2、通过Configuration菜单中的选项,设定在不采用定向技术的情况下,用WinDLX模拟器运行程序data_d.s。记录数据相关引起的暂停时钟周期数以及程序执行的总时钟周期数,计算暂停时钟周期数占总执行周期数的百分比。3、在采用定向技术的情况下,用WinDLX模拟器再次运行程序data_d.s。记录数据相关引起的暂停时钟周期数以及程序执行的总时钟周期数,计算暂停时钟周期数占总执行周期数的百分比。用WinDLX模拟器分析指令调度1、生成sch-before.s及sch-after.s程序。2、通过Configuration菜单中的

3、选项,将除法单元数设置为3,将加法﹑乘法﹑除法的延迟设置为3个时钟周期。3、用WinDLX模拟器运行调度前的程序sch-before.s。记录程序执行过程中各种相关发生的次数以及程序执行的总时钟周期数。4、用WinDLX模拟器运行调度后的程序sch-after.s,记录程序执行过程中各种相关发生的次数以及程序执行的总时钟周期数。9综合实验(习题3.4)在WinDLX上运行如下代码序列:LOOP:LWR1,0(R2)ADDIR1,R1,#1SW0(R2),R1ADDIR2,R2,#4SUBR4,R3,R2BNEZR4,LOOP其中:R3的初值是R2+396。假设:在

4、整个代码序列的运行过程中,所有的存储器访问都是命中的,并且在一个时钟周期中对同一个寄存器的读操作和写操作可以通过寄存器文件“定向”。1、在没有任何其他定向(或旁路)硬件的支持下,假设采用排空流水线的策略处理分支指令,且所有的存储器访问都是命中Cache,那么执行上述代码需要多少个时钟周期?2、假设该流水线有正常的定向路径,且采用预测分支失败的策略处理分支指令,所有的存储器访问都命中Cache,那么执行上述代码需要多少个时钟周期?3、假设该流水线有正常的定向路径和一个单周期延迟分支,请对该循环中的指令进行调度,但是不能增加指令的条数。计算执行上述代码所需要的时钟周期

5、数。2实验过程:用WinDLX模拟器进行结构相关的分析实验过程:用WinDLX打开之前编写好的structure.s程序,单步执行,查看ClockCycleDiagram窗口中的变化:可以看出指令“ADDIR2,R2,#8”和指令“LDF0,0(R2)”发生结构冲突。9可以看出“ADDIR2,R2,#8”、“ADDIR3,R3,#8”和“SUBIR5,R5,#1”这三条指令和“ADDDF4,F0,F2”存在结构相关。导致结构相关的部件是存储数据和指令的存储器部件。通过单步执行可以在code窗口中观察到程序的LOOP段共循环了10次,而且上述的因结构冲突引起暂停的指

6、令都是在LOOP循环中。所以程序执行完毕后,因结构冲突引起的暂停周期数为2×10=20,由图3可知,程序总共执行了117个时钟周期。所以暂停时钟数占总执行周期的百分比为:20/117=17.09%。结构相关对CPU性能的影响及解决结构相关的方法:上述四对指令在流水线中重叠执行时产生了对存储器访问的资源冲突,即结构相关问题。上述WinDLX的执行过程采用了流水化功能单元的解决办法来解决结构相关,CPU产生了暂停周期,使流水线的性能下降。且暂停周期占总执行周期的百分比还比较大,是一个不容忽视的问题。解决结构相关通常需要采用流水线功能单元的方法或资源重复的方法。既然流水

7、线功能单元的方法引入的暂停影响了流水线的性能,可以考虑采用资源重复的方法,即在流水线机器中设置相互独立的指令存储器和数据存储器,也可将Cache分割成指令Cache和数据Cache,这样就能够很好的消除结构相关。但是这样做会带来很大的硬件开销,对流水线机器而言,如果要在每个时钟周期内,能够支持取指令操作和对数据的存储访问操作同时进行,而又不发生结构相关,那么存储总线的带宽必须要加倍。所以在解决该问题时要在性能和开销两方面进行权衡。用WinDLX模拟器分析数据相关实验过程:用WinDLX打开之前写好的data_d.s程序,配置Configuration菜单中的选项,

8、设定9不采

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。