$144
Part A: Final Project Ideas
You may choose from one of the following final project suggestions, or you may propose your own. If you decide to go with your own project, please message Dr. Fritz on Discord with your idea.
Jukebox: Implement a system that plays several songs through the board’s audio jack based on a button input. Note: Rather than using a massive state machine for each song (like we did in Lab 4), try instead to use array types to hold the tone terminal counter values.
Screen saver: Implement a classic screensaver on the HDMI display – have at least four shapes of different colors. Your shape should bounce off the sides of the screen, and change to a new shape and color each time it hits the side.
Function generator: Design a system that can output different analog functions through the headphone jack that we can look at on a scope. Functions to consider would be sine, square, triangle waves of different frequencies. Use the buttons and switches on the board to select a function and its frequency and amplitude. Use a lookup table (constant array) for holding values for sin(x).
Arcade game: Implement a classic arcade game using the HDMI display and the buttons and switches on the board. Ideas for games that might be reasonable would be Snake, Asteroids, Breakout, etc.
Device interface: Find a sensor or other device to write an FPGA interface to. You can find lots of Pmod sensors that can plug directly into the board at https://digilent.com/shop/boards-and-components/system-board-expansion-modules/pmods/. Display the output of your sensor using LEDs or the HDMI display.
Simon game: Implement the classic Simon game using the HDMI display and pushbuttons (display four colors on the screen and flash one at a time, then if the user enters the same pattern on the pushbuttons, light up the screen fully green, for example).
Part B: Extra credit
Any final project may be worth up to 50 points of extra credit, giving a total of 150/100 for the project in total. Dr. Fritz will determine the amount of extra credit during your demo.
However, earning extra credit will require significant complexity. A simple screen saver or jukebox project will most likely not be enough for any extra credit, unless quite a bit more is done (for example – if your screen saver also outputs audio, or uses some very complex shapes). Most arcade games, however, will automatically be worth extra credit as they are much more complex projects.
If you have any questions about how much extra credit your project might be worth, contact Dr. Fritz on Discord.