The objective of this project is to design, simulate, and implement a Floating Point Unit on a Zedboard FPGA.
The lab consists of the following steps:
- Design and behavioral simulation of a single cycle FP Adder: Design a single-cycle Floating Point Adder and verify its functionality using a Verilog testbench.
- Design and behavioral simulation of a pipelined FP Adder: Pipeline the FP Adder design into two stages for improved performance.
- FP Adder in FPGA with 7 segment display output: Implement the 2-stage FP Adder on the Zedboard and display the results using the onboard LEDs and a 7-segment display module.
- Use Buttons to provide multiple inputs to the FP Adder: Add a Data Memory module to store multiple inputs for the FP Adder. Use the Zedboard buttons to cycle through the inputs and display the corresponding outputs.
- fpadd_single.v: Verilog code for the single-cycle FP Adder.
- fpadd_pipeline.v: Verilog code for the pipelined FP Adder.
- SevenSegmentDisplay.v: Verilog code for the 7-segment display module.
- DataMemory.v: Verilog code for the Data Memory module.
- fpadd_system.v: Top-level Verilog file instantiating the FP Adder, 7-segment displays, and Data Memory.
- fp_add.xdc: Xilinx Design Constraints file for specifying pin assignments and timing constraints.
- *.hex: Test files containing input and expected output data.
- Download and install the Xilinx Vivado toolset.
- Clone this repository to your local machine.
- Open the Vivado project file for the desired lab step.
- Follow the instructions in the lab manual to complete the design, simulation, and implementation steps.
- The lab manual provides detailed instructions on each step of the lab, including how to use the Vivado tools.
- The XDC file contains pin assignments for the Zedboard. If you are using a different FPGA board, you will need to modify the pin assignments accordingly.