https://github.com/ieee-nitk/return_of_the_snake
Implemented the Retro SNAKE Game on Nexys4 Artix 7 DDR FPGA board using Verilog and displayed it onto a VGA compatible monitor
https://github.com/ieee-nitk/return_of_the_snake
Last synced: 2 months ago
JSON representation
Implemented the Retro SNAKE Game on Nexys4 Artix 7 DDR FPGA board using Verilog and displayed it onto a VGA compatible monitor
- Host: GitHub
- URL: https://github.com/ieee-nitk/return_of_the_snake
- Owner: IEEE-NITK
- Created: 2025-01-14T04:50:17.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2025-03-27T15:58:30.000Z (3 months ago)
- Last Synced: 2025-03-27T16:44:46.981Z (3 months ago)
- Language: Verilog
- Size: 61.5 KB
- Stars: 0
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Return_Of_The_Snake
Implemented the Retro SNAKE Game on Nexys4 Artix 7 DDR FPGA board using Verilog and displayed it onto a VGA compatible monitor.## Abstract
This project implements the retro **Snake Game** on an FPGA board using Verilog HDL. Through this project, we aim to demonstrate the capabilities of FPGA platforms in creating real-time, interactive digital environments. The project showcases digital design, FPGA programming, and hardware-software integration, serving as a hands-on experience in these areas.## Introduction
The project leverages the versatility of **FPGAs** (Field-Programmable Gate Arrays) to implement the classic Snake Game. Players control a snake to consume randomly appearing apples while avoiding collisions with walls or itself. The simplicity of the game combined with its real-time nature makes it an ideal demonstration of FPGA capabilities.This implementation explores core aspects of digital design, including:
- Combinational and sequential logic
- Finite State Machines (FSMs)
- Peripheral interfacing## Objectives
- Develop Verilog modules to control snake movement, generate random apples, and detect collisions.
- Use **Xilinx Vivado** for RTL design, simulation, synthesis, and implementation.
- Program the FPGA with the designed modules and test it on hardware.
- Interface the FPGA with a **VGA display** to project the game onto a monitor.
- Design a user interface using buttons, switches, or external controllers.
- Provide real-time player feedback, including score display and game-over notifications.
- Extend the game with features like bonus apples, speed boosts, and obstacles.### Mentors:
- [Madhav Kedia](https://github.com/madhavkedia018)
- [Rohan Abhilash S.](https://github.com/Rohan-Abhilash)
- [Omkar Chougule](https://github.com/Omkar-9545)### Mentees:
- [Tarun Sirigiri](https://github.com/Tarun-Sirigiri)
- [Tejhuram Ravichandran](https://github.com/TejhuramRavichandran)## References
- [Drive Link for Report](https://drive.google.com/file/d/1cGgnBA8dDdktOeK71ILNqDV473CABYY8/view?usp=drivesdk)
- [YouTube Video 1](https://youtu.be/fJycFrYZnUM?feature=shared)
- [YouTube Video 2](https://youtu.be/yVLQgiavj5I?feature=shared)