MIPS 五级流水线设计报告
设计要求:
1、完成的全部指令集如附件所示;
2、使用五级或更多级流水线;
3、单发射,无 cache,无分支预测,使用延迟槽;
前面几次实验得分有点低,加上这次没有完全完成…怕是要挂了,求助教小哥哥小姐姐
放我一马!给分别太低就行
完成度:完成并使用助教发的测例通过的指令有 40 条。(约 70%)
完成的程序()见文件中的代码文件夹。其中 为顶
层模块, 为测试文件。 为自己编写的一个测试指令
文件,具体如何加入程序进行测试见下一页。
设计思路:
流水线 分为五级,即,取指令 级、指令译码 级、指令执行
级、存储器访问 级、结果写回 级。同单周期有所区别,流水线
的每个指令周期中有多条指令同时执行,因此需要把每一级的执行结果暂时保
存起来,以便在下一级使用。流水级的推进由流水线寄存器数据的更新来达成,
每一个时钟上升沿,流水线寄存器向下一级传递之前存储的数据,并存储上一
级的执行结果,完成流水线的一次推进。
同时,在流水线 中需要解决 个冒险,即,结构冒险、数据冒险、控
制冒险,而在流水线 仿真实验中,我们主要需要解决的便是这些问题。
因此,我在普通 的基础上,增加了以下功能: