Linear Feedback Shift Register [LFSR]

For the LFSR assignment we will be designing a LFSR that will be used to generate pseudo random numbers. We will be displaying hexadecimal values of the 7-segment display. Below is a list of recommended steps to complete this assignment:

  1. Create a LFSR design that generates a new number every clock cycle.
  2. Simulate the design to verify that you are generating the correct values.
  3. Integrate the LFSR designed with the Hex to 7-Segement converter design so that the LFSR values are displayed on the 7-segemnt display.

Setup

If your development board has a 4-digit on-board 7 segment display such as the BASYS 2 or BASYS 3 development board you can just use that. Otherwise you will need to connect a 4 digit 7 segment display. See the schematic setup below:


See the BOM below for components I used during the demonstration of this lab.


Verification

To verify that your design is working properly when you start running the design you will see the 7-segment display showing a value of 0001 and will display a new number whenever you press the button to cycle through the next value. See below for the simulation of the first values you should see on the 7-segement display:

 

When you reset the LFSR you will see the seed value of 0001 back on the 7-segement display.