一、工程简介
本工程是在FPGA开发板上,实现RISC-V五级流水线CPU,支持数据冒险,将分支指令判断提前至第二级,支持R型、I型、S型、B型、U型、J型指令。同时,手搓雷霆战机C语言代码,并转为汇编语言。下板后,在VGA上进行显示。
二、游戏规则介绍
“雷霆战机”游戏规则介绍:本设计中,规定玩家初始血量(HP)为3,初始得分为0分,同时会为玩家规定初始位置。玩家可以操控Basys 3开发板上的左右按键,对己方飞机进行操控,按下中间按钮实现发射子弹。敌方飞机会从屏幕顶部下落,下落速度可以通过更改汇编指令进行修改。在640*480的屏幕中,每当敌方飞机越过400时,判定为玩家防守失败,HP(血量)降低。当玩家发射的子弹与敌方飞机发生碰撞时,子弹与飞机同时消失,同时得分加1,判定为玩家防守成功。当玩家HP(血量)归零时,游戏结束。
三、CPU设计
RISC-V五级流水线CPU模块设计图如图所示: