CE 433 Course Project - FPGA Based Video Games

This project serves the following ABET outcomes:
Outcome 2. an ability to apply engineering design to produce solutions that meet specified needs with consideration of public health, safety, and welfare, as well as global, cultural social, environmental, and economic factors.
Outcome 3. an ability to communicate effectively with a range of audiences.
Outcome 5. an ability to function effectively on a team whose members together provide leadership, create a collaborative and inclusive environment, establish goals, plan tasks, and meet objectives.
Outcome 7. an ability to acquire and apply new knowledge as needed, using appropriate learning strategies.

Project 1. The Pong Game

There are multiple versions of the Pong Game in Verilog online. I would like to to conver the following from VHDL to Verilog. Here is the link to the author's demonstration:
https://www.youtube.com/watch?v=LqOlgilpCYc

I directly synthesized it on my end and it worked pretty well:

Syllabus_CE433_Embedded_Devices.pdfSyllabus_CE433_Embedded_Devices.pdfSyllabus_CE433_Embedded_Devices.pdf



Link to the original code.

It was written in VHDL, which is also widely used in digital design. In your career in the future, you may have to use VHDL for some of the designs or you may have to convert VHDL to Verilog for your deisgn. This course project is a great chance for you to practice this skill. After this project, your VHDL skill won't be as proficient as your Verilog but at least you can read VHDL code on your own in the future.

Tasks:

1. In this project, form a team of 2 students. Convert the VHDL code into its Verilog version.
2. Add a skyhawk and FLC logo at the first page of the game.
3. Everyone on the team must be able to interpret the code to others during the presentation.

-------------------------------------------------------

Project 2: The Yoshis-Nightmare Game

Here is another game I found online. I can run it on my monitor but I don't have the controller for it.



I would like to see this game to be controlled by the pushbuttons on the board or by a joystick (available in the BH602 lab).

Tasks:

1. Use either pushbuttons or a joystick to control the game.
2. Add a skyhawk and FLC logo at the first page of the game.
3. Everyone on the team must be able to interpret the code to others during the presentation.




-----------------
References
[1] PONG GAME VHDL - DIGITAL DESIGN PROJECT, The GitHub link.
[2] Yoshi's Nightmare game.         GitHub            Instruction website
[3] The Pong Game in Pong Chu's textbook.