
Design a ping pong game on an FPGA using VHDL, with push-button controls, LED ball, and seven-segment score display; learn digital circuits, debouncing, simulation, and on-board testing.
Create a VHDL ping pong game by defining the ping pong game entity, ports, and a behavioral architecture, including debounced inputs, LED outputs, and seven-segment controls.
Explore how the contour process handles clocked sequential logic in VHDL, including counters, reset behavior, and one-second timing, with seven-segment display updates using an active-low interface.
Explore implementing a modulo three counter in VHDL for an FPGA, driving the seven-segment displays with a BCD decoder and debouncing push buttons to ensure stable, synthesizable hardware.
Explore the final game process in a VHDL ping-pong design, detailing synchronous reset, debounced serve logic, ball movement, scoring, and speed adjustments from an initial speed table.
Simulate a VHDL ping pong game with a debounce button and reset, using generics for the slow clock cycles and frequency, via a testbench in ModelSim.
Explore the ping pong game design in VHDL on FPGA, detailing ball movement, scoring on missed returns, serves, and speed-up driven by the rebound counter.
Learn to synthesize a ping pong game on a Spartan-6 fpga using a constraints file to map pins with ISE, then create the project, synthesize, and program the board.
Test the on-board FPGA ping pong game by resetting, noting a miss, serving again, and observing speed increases to verify responsive gameplay.
Explore how a hardware engineer translates a specification into a verifiable FPGA design, simulates waveforms, synthesizes the design, and tests it on FPGA hardware.
This course is designed to immerse you in the world of hardware engineering. The course will guide you through the process of converting requirements and needs into practical and efficient designs. You will explore the basic concepts of digital circuits and VHDL coding rules and syntax. Furthermore, the course will cover the use of constraints files, synthesis and simulation of HDL designs, enabling you to verify the correctness of your circuits before physical implementation. By the end of the course, you will have a comprehensive skill set to design, implement, and test digital systems.
To achieve all of the above, we will design a Ping Pong game on FPGA. Two push buttons will be used by players to serve and return the ball to each other. Eight LEDs are used to emulate the ball. Only one LED is turned on at a time and it will travel through the eight LEDS either from left to right or from right to left depending on the last player who has hit the ball. When the ball reaches the most left or most right LED, the player has a specific amount of time to return it. If he fails, the game is paused, and his opponent gets a point. Then all LEDs turn on for one second at the same time. The ball stays at loser side and the game stays paused as long as the player has not pushed his button to serve the ball. After few successful exchanges, the speed of the game will increase, meaning that the ball will travel the LEDs at a higher speed and the players have less time to return the ball when it reaches most left or most right LED. Finally the game stops when either of the players have a score of 9.
Promotion
"Build a RISCV CPU from scratch from C program to FPGA" engineering course available. Use this coupon for a discount F1591D814B0CD01576B4