实验五 指令调度和延迟分支(一类特选)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验5 指令调度和延迟分支

一.实验目的

(1)加深对指令调度技术的理解。

(2)加深对延迟分支技术的理解。

(3)熟练掌握用指令调度技术解决流水线中的数据冲突的方法。

(4)进一步理解指令调度技术对CPU性能的改进。

(5)进一步理解延迟分支技术对CPU性能的改进。

二.实验内容和步骤:

(1)、启动MIPSsim。

(2)、根据前面的相关知识中关于流水线各段操作的描述,进一步理解流水线窗口中各段的功能,掌握各流水寄存器的含义。

指令流水线有取指(IF)、译码(ID)、执行(EX)、访存(MEM)、写回寄存器堆(WB)5个过程段,共有7条指令连续输入此流水线

IF段(取指):取指令,控制器必须具备能自动地从存储器中取出指令的功能

ID段(译码):指令译码、读寄存器

EX段(执行):执行、访存有效地址字段

MEM段(访存):存储器访问

WB(写回寄存器堆):结果写回寄存器

在该窗口中,每一个矩形方块代表一个流水段,它们用不同的颜色填充。在该窗口的左侧是IF到WB段,其右边为浮点部件。浮点部件分有浮点加法部件(fadd)、浮点乘法部件(fmul)和浮点除法部件(fdiv)三种。在菜单“配置” “常规配置”中修改浮点部件个数,可看到该窗口中对应类型的浮点部件个数会发生相应的变化。

(3)、选择“配置”->“流水方式”选项,使模拟器工作于流水方式下。

(4)、用指令调度技术解决流水线中的数据冲突。

1)启动MIPSsim。

2)加载schedule.s。

3)关闭定向功能。

4)执行所载入的程序。通过查看统计数据和时钟周期图,找出并记录程序执行过程中各种冲突发生的次数、发生冲突的指令组合以及程序执行的总时钟周期数。

调度前:

相关文档
最新文档