CE 433 Labs
Name: Max Krauss
Email: mtkrauss@fortlewis.edu

In this lab we implement the square problem from the Softcore tutorial on our Basys3 board with the switches and the seven-segment display. In the following example, the Basys3 imports data for A and B using binary inputs from the switches. Then, with different switch combinations, it can display a, b, a^2, b^2, and a^2+b^2 in hexadecimal format. Button L imports data for the two variables while button R resets them. In the final task, we displayed the hex outputs on an LCD.

Week 1: (due Wed 4/13 10 pm)
1. Repeat the work in Section 1. (30 points)

Figure 1: Code snippets for the top module as it differs from the book,

2. Complete the task in Section 2. (20 points)

Task 2 was implemented by including case statements in each seven segment displays declaration. This is shown below in figure 2.


Figure 2: Shows one of the case statements locations and how the LED's were implemented.


Figure 2.1: LED declaration and connections.

Figure 2.2: On-board verification for task 1 and 2.

Task 3:
Modify the code to display the results in HEX form on an LCD display


Figure 3.1: Changes made to the pico_btn module.





Figure 3.2: Changes made to the disp_mux module.


Figure 3.3: Video verification for task 3.

Results: This lab combined what we learned about softcore and our prior knowledge with LCD's driven by the FPGA into a challenging final task. The implementation was interesting and satisfying to do correctly.