题目 简述 | 随着计算机系统能力设计教学改革的不断深入进行,计算机专业学生逐步掌握了硬件设计的原理和方法,可以自行定制硬件电路,包括设计处理器和相应的SoC系统,从而补齐了硬件电路的短板,为今后的职业道路打下了专业基础。本课题要求学生在掌握单周期MIPS处理器设计基础上,采用五级流水线结构设计MIPS处理器,使其在性能上更加强大。 在设计过程中,要注意由于处理器流水线本身所引起的数据相关、资源相关和控制相关冲突的解决。尤其是在数据相关中的WAR相关、RAW相关、WAW相关冲突。在控制相关中注意由于无条件转移指令和条件转移指令所引起的流水线断流处理,参考最新的RISC-V处理器设计理念,采用无延迟槽设计方案。 |
对学 生知 识与 能力 要求 | 计算机组成原理 微机原理与接口技术 基于Verilog HDL的FPGA设计基础 基于FPGA的模型机设计 书面表达和团结协作能力 |
预期 目标 | (本题目应完成的工作,题目预期目标和成果形式) 在设计完成单周期MIPS处理器基础上,将取指(IF)、译码(ID)、执行(EX)、访存(MEM)、写回(WB)这五个阶段用流水线方式实现。指令存储器和数据存储器分开设计,这样可以避免资源相关。但数据相关,尤其是各个阶段所引起的写后读、读后写、写后写冲突需充分考虑设计解决方案。由于转移指令引起的控制相关冲突采用无延迟槽设计,从而简化设计结构,确保结果正确性。实现基本的整数运算指令,包括逻辑运算、移位运算、算术运算。实现基本的访存指令,包括字、字节的存取指令。实现基本的转移指令,包括无条件转移指令和条件转移指令。 编写基本机器指令在Modelsim上进行功能仿真测试,然后填写较为复杂的机器指令程序,在FPGA开发板上进行测试,运行结果并验证处理器所有指令功能。 |
时间 进度 | 2018.11.19--2018.12.16 明确课题任务,设计整体方案,确定指令集,完成开题报告,下载并安装Modelsim和Vivado等工具软件; 2018.12.17--2019.02.27 根据整体设计方案和指令集,实现整数运算类指令,实现字、字节的存取指令,注意相关冲突的解决; 2019.02.28--2019.03.15 根据整体设计方案,实现转移类指令,包括无条件转移和条件转移指令; 2019.03.16--2019.04.14 测试所有指令在FPGA开发板上的基本功能下载和运行。完成中期汇报表,并提交系统; 2019.04.15--2019.05.10 修订并改进所有指令基本程序在FPGA开发板的的调试和运行,并完成第一次代码验收; 2019.05.11--2019.05.20 测试所有指令的综合程序在FPGA开发板的调试和运行,并完成终期代码验收。完成论文的初稿并提交; 2019.05.21--2019.06.07 调试和继续完善系统,同时修改论文,并打印装订论文,准备答辩。 |