Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

This question is based on the Pong Game Starter Vivado project you have built for Homework 4 Question 3 . Create a Vivado project with

This question is based on the Pong Game Starter Vivado project you have built
for Homework 4 Question 3. Create a Vivado project with the same source files
(.vhd and .xdc files) you used for your working project for Homework 4 Question
3 as a starting point and complete the following tasks. (100 points)
Tasks:
Your current Pong Game Starter includes a bouncing round ball. Please modify
the VHDL code of your pong_graph_st module to add a second bouncing
object of a triangle (non-rectangular shape) using the bit-map method. This
second bouncing triangle object occupies a square size of 16x16 pixels.
(a) The bit map method is introduced in the VGA lecture slides pages 31-
35. The working code of the bouncing round ball is within your current
module pong_graph_st. Refer to them and write your own code.
(b) You need to first set coordinates of a square triangle of size 16(similar to
setting coordinates of the square ball for the round ball)
(c) You need to determine if the current pixel is within the square triangle to
set the sq_triangle_on signal (similar to how to set the sq_ball_on
signal)
(d) You need to create a new ROM type of size 16x16 pixels and then initiate a
constant TRIANGLE_ROM of this new ROM type. This constant should
form a triangle image using bit values of 1s and 0s.(similar to the
rom_type data type and BALL_ROM constant for the round ball)
(e) Use the bit-map method to determine if the image of the triangle is
turned on or off (similar to how to set rd_ball_on).
(f) You need to update the triangle position 60 times per second (similar to
updating the ball position)
(g) You need to set the values of the next triangle position according to the
boundaries (similar to that for the round ball). NOTE: please set a different
speed value for the triangle from the round ball, e.g., TRIANGE_V_P =
to_unsigned(1,10).
(h) You need to revise the process block that assigns values to your
graph_rgb to include the triangle_rgb option. (similar to the branch that
assigns ball_rgb to graph_rgb)

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Excel As Your Database

Authors: Paul Cornell

1st Edition

1590597516, 978-1590597514

More Books

Students also viewed these Databases questions