VGA
homework
Noah Smith
Task 1:
Repeat the work in Section 2. Show the code, explanation, and a demo video. (20
points)
Video demonstration:
Task 2: Replace the clock generator IP with a self-made clock divider module
that generates 25MHz clock. Demonstrate that it works for the rest of the
circuit. Show the code, explanation, and a demo video.
(20 points)
Implementing a self made
clock divider was rather simple. Take the 100MHz clk
and divide twice per clk period, which ends up
dividing it by 4 to get to 25MHz. This was then plugged directly into the top
module. The demonstration can be seen in the video.
Task 3: Complete the two examples in Section 3. Show the code, explanation, and
a demo video. (60 points).
First task
was to create a white screen. This was a easy task,
simply comment out the image call, and hardcode in 4’b1111 as the VGA values.
The video demonstration shows this. The white looks a bit yellow on my monitor
because I have the blue-light settings turned way down.
The second
part of this was displaying a flashing screen between Red, Green, and Blue.
This was achieved by hardcoding if statements with the
RGB values. And multiples of the 25MHz clk were added
as the trigger conditions.