欢迎光临
我们一直在努力

5级流水线MIPS处理器设计 数字逻辑与计算机设计大作业

课程要求

请使用SystemVerilog语言,完成一个五级流水线MIPS/RISC-V处理器设计。 要求:

支持必须指令: lw、sw、beq、addi、add、sub、and、or、slt 支持可选指令:bne、andi、ori、xor、lui、sll、srl、sra、jr、jal等

关于评分提示: 60分:仅实现五级流水线(必须指令) 70分:仅实现五级流水线(必须指令+可选指令(至少5条)) 80分:五级流水线+数据定向(forwarding)+ 必须指令 90分:五级流水线+数据定向(forwarding)+ 必须指令 + 可选指令(至少5条) 90分+:90分基础上其他附加功能(控制相关、stall、flush等) 100分:90分基础上,下板子演示

实现

其实这个大作业并不难,框架书上已经给出,甚至还给了可复用模块(reg,imem)的代码,只需要将流水线的各级写好后加以连接即可,但是如果想要拿高一点的分数,仅仅按照这个逻辑设计电路是不够的,这个框架仅仅支持给出的必选指令,选做指令各有各的做法,比如bne需加额外判断跳转逻辑,jr需要添加额外跳转信号,andi/ori需要添加零扩展单元等

往届有将dmem和imem综合成一个元件的,测试可行,但为了连接方式符合图片要求,我还是将两个元件分开写了,这样也不影响最后上板(注:若将dmem与imem放进在同一个RAM unit里,读取时需加偏移量,否则有可能lw到imem存的指令,或读指令取到内存值)

代码实现已发github

欢迎star

赞(0)
未经允许不得转载:171主机测评 » 5级流水线MIPS处理器设计 数字逻辑与计算机设计大作业
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址