Inspiration
Gaming isn’t just entertainment; it’s an integral part of our lives, shaping moments of joy, challenge, and creativity. As engineering majors with a deep-rooted passion for both the nostalgia of classic games and the intricacies of hardware design, we embarked on a project that symbolizes this intersection. The motivation behind our work was to step beyond the digital norms of software-driven games, delving into the tangible realm of hardware to recreate a cherished piece of our childhood—Whac-A-Mole. Our choice of FPGA (Field-Programmable Gate Array) as the cornerstone for this project wasn’t about leveraging modern technology for its own sake but about revisiting and reshaping how we interact with and understand the games that have accompanied us from our early years.
What it does
The FPGA displays a random LED from 8 LEDs. The user has 2 seconds to select the corresponding switch for that LED to "whac-the-mole." If they hit the switch in time, their score increases by one on the LCD screen. If they miss the mole, then their score decreases by one. The game goes on for 2 minutes or ends when the user's score returns to zero.
How we built it
We built the game using an FPGA. We programmed the FPGA using an HDL called Verilog in the IDE called Xilinx ISE. We play-tested in Xilinx Vivado to make sure our simulations went before programming the FPGA.
Challenges we ran into
With only 25 hours at our disposal during the hackathon, we faced a daunting task: to bring our vision to life within the rigorous demands of digital logic and hardware design. Our journey was marked by several significant challenges:
Generating a Video Signal Crafting a video signal for display output on a monitor was a formidable task, requiring a deep dive into video encoding standards and meticulous timing control—complex undertakings magnified by the hackathon's time pressure.
Synthesizing Game Signals The core of our game hinged on our ability to synthesize various signals—managing inputs, game logic, and outputs with precision. This synthesis was vital for creating a responsive and engaging gameplay experience, demanding an intricate understanding of FPGA's architecture and capabilities.
Developing Scalable Test Benches To ensure the reliability and functionality of our game, scalable test benches were essential. These allowed us to iteratively test and refine our design, addressing bugs and enhancing performance as our project evolved.
Accomplishments that we're proud of
Despite the ambitious scope and time constraints, we achieved a significant milestone: the development of a proof of concept. We were able to program the logic, a user interface for the game, and the scoring system.
What we learned
We learned to compile a list of needs before entering projects. We ran into some issues along the way simply because we didn't bring certain components.
What's next for FPGA Whac-A-Mole Game
In the future, we aim to use VGA so we can directly write onto a monitor with our FPGA. This will allow for more eye-appealing results and longer gaming hours.
Built With
- digitaladept
- github
- verilog
- xilinxise
- xilinxvivado
Log in or sign up for Devpost to join the conversation.