This project aims to create a Frogger game using the FPGA (Field Programmable Gate Array) technology. We handle input, output, screen display and even memory management using Verilog.
- The goal of the game is to move a frog from the bottom of the screen to the top. There’s only one problem: The frog is trying to cross a busy highway filled with cars! You must carefully control the frog to cross the road without getting hit by a car.
Our Frogger game will contain colorful sprites, though no sounds can be handled as the only way we can display the game on a monitor is with a VGA port.
To play the game, you'll need to have some required elements:
Then, you'll need to setup apio on your machine. To do this, follow the steps on this link.
Once you've setup the software, all you need is
- download our latest release
- connect the board to your computer with the micro-USB cable
- upload it into the board using the
apio upload
command on your terminal (make sure you're in the Frogger folder!)
Then, if the board is correctly plugged and connected to a VGA monitor, the game will launch!
LilyPad is a console we've made beside the Frogger game. The Go-Board contains the game you want to play, you put it correctly inside the console, and it's plug & play!
The console has been constructed to contain the Go-Board, letting the 7-Segment displays visible. Also, the Pmods have been placed specifically to create controller plugs.
As we created a console, we needed to create controllers as well, and we did.
Note: The game is totally playable with only a Go-Board, but the console and controllers will allow a huge experience!
Yes, you could be able to create your own LilyPad! You can even order one to our team.
To know everything about the cost of a LilyPad, you can check this link.
Also, you can check the LilyPad Documentation to dive deeper into the subject!
The FPGA is a type of configurable integrated circuit that can be repeatedly programmed after manufacturing. We actually used the Go-Board provided by Russell Merrick, who taught us how to deal with this technology at ALGOSUP.
To be able to upload some code in this hardware, we used Verilog as a programming language.
Team 6 involves few coworkers, handling different roles:
Role | Name | Picture |
---|---|---|
Project Manager | Enzo GUILLOUCHE | |
Program Manager | Evan UHRING | |
Technical Leader | Maxime CARON | |
Software Engineer | Elone DELILLE | |
Quality Assurance | Axel DAVID | |
Technical Writer | Pierre GORIN |
Here are their contributions to the project!