PONG for FPGA
Course: EE 354 – Introduction to Digital Circuit Design
In this project, I collaborated with another student to develop a PONG clone on an FPGA. Our ultimate goal with this project was to create a simple, modular video game engine in Verilog.
We designed this engine at the Register-Transfer Level, using Verilog and Xilinx ISE. We utilized a state machine to handle different functions of the engine, such as collision detections, player movement, and VGA output. We also incorporated an Arduino into the project to create a custom controller, with support for 2 players using potentiometers as inputs (similar to the original PONG).
Our final game engine supported rectangular collision boxes, monochromatic sprites, and up to 4-color images. Sprites and images could be scaled by any factor of 2. The engine also had an easy to use text rendering system, with a custom-made font designed to mimic the original PONG.