The goal of this lab is to program the FPGA to function as a simple hexadecimal calculator that can be controlled with a 16-key keypad. The calculator will be able to perform addition and subtraction with leading zero suppression.
The strobe_proc process synchronously tests the state of the keypad buttons. The out_proc process runs whenever any of the column vectors change. Each vector is tested to see if there are any '0's in the vector. This would indicate that a button had been pushed in that column. If so, the value of the button is output and the hit signal is asserted. If no button is pushed, the hit signal is cleared
This program is used to turn on different segments of the display corresponding to the 4-bit words that represent each hex digit. It also selects which digit of the display to turn on and activates anodes within the display.
This code ties both previous files together and performs the addition and subtraction functions. It manages the states of the display and ensures numbers will be entered properly.
This set of constraints assigns different ports to various pin outs on the FPGA package