流水线cpu设计
计算机组成原理 实验(llxx 老师)
虽然说verilog
语言使用有诸多困难,但计算机组成原理课程的学习还是很有意思的,亲手(应该是)写一个 cpu 的感觉还是很有收获的,介绍介绍我的这个学期的实验
Lab1 运算器及其应用
- 完成 ALU 模块的逻辑设计和仿真
- 查看 32 位 ALU 的 RTL 和综合电路图,以及综合电路资源和时间性能报告
- 完成 6 位 ALU 的下载测试,并查看 RTL 电路图,以及实现电路资源和时间性能报告
- 完成 FLS 的逻辑设计、仿真和下载测试
Lab2 寄存器堆与存储器及其应用
- 行为方式参数化描述寄存器堆,功能仿真
- IP 例化分布式和块式 16 x 8 位单端口 RAM,功能仿真和对比
- 设计 FIFO 队列电路的数据通路和控制器,结构化方式描述数据通路,Moore 型 FSM 描述控制器,功能仿真
- FIFO 队列电路下载至 FPGA 中测试
Lab3 汇编程序设计
- 熟悉 RISC-V 汇编指令的格式
- 熟悉 CPU 仿真软件 Ripes,理解汇编指令执行的基本原理(数据通路和控制器的协调工作过程)
- 熟悉汇编程序的基本结构,掌握简单汇编程序的设计
- 掌握汇编仿真软件 RARS(RISC-V Assembler & Runtime Simulator)的使用方法,会用该软件进行汇编程序的仿真、调试以及生成 CPU 测试需要的指令和数据文件(COE)
- 理解 CPU 调试模块 PDU 的使用方法
Lab4 单周期 CPU 设计
- 理解 CPU 的结构和工作原理
- 掌握单周期 CPU 的设计和调试方法
- 熟练掌握数据通路和控制器的设计和描述方法
Lab5 流水线 CPU 设计
- 理解流水线 CPU 的结构和工作原理
- 掌握流水线 CPU 的设计和调试方法,特别是流水线中数据相关和控制相关的处理
- 熟练掌握数据通路和控制器的设计和描述方法
Lab6 综合设计
- 理解计算机硬件系统的组成结构和工作原理
- 掌握软硬件综合系统的设计和调试方法
详细代码
详细的实验报告可以看:链接