Objective:
Upon completion of this lab, the student will have demonstrated the ability to:
Use Quartus II software to program an Altera FPGA (DE0-CV educational board)
Define an 8-bit register to store data using VHDL
Define shifting behaviour to create a shift register using VHDL
Define synchronous and asynchronous behaviour for devices using VHDL
Procedure:
In lab 4, you were asked to define a flip-flop to store a single bit of data using VHDL, which was then used to create a 4-bit flip-flop in a schematic (BDF) file.
In this lab, you will define a multi-bit memory element (referred to as a register) using VHDL only. In addition, you will extend the behaviour of your register so that it is capable of shifting data bitwise in left or right, thus creating a universal shift register.
1) In the VHDL template on the Submission Sheet, complete the entity declaration for your register based on the block symbol shown below:
2) Complete the VHDL template on the Submission Sheet by writing architecture for an 8 bit register. Your register should have the following synchronous and asynchronous behaviour:
Asynchronous Clear
Synchronous behaviour based on the table below:
3) Create a new Quartus II project for this lab with the following settings:
a. Working directory = H:\ETEC122\LAB6
b. Project name = myRegister8
c. Top-Level Entity = myRegister8
d. Device = 5CEBA4F23C7
e. Simulation Tool = ModelSim-Altera (Format: VHDL)
4) Create a new VHDL design file and enter the completed VHDL code from the VHDL template.
5) Save your VHDL file as myRegister8.vhd and make sure that it is added to your project.
6) Compile your design. Troubleshoot any errors and recompile. Do not continue until you receive a successful compilation.
7) Using the Pin Planner, create the pin assignments necessary to assign each of the inputs/outputs of the circuit as outlined in the table below. (Refer to the document “Introduction to Programmable Logic Devices” for pin locations)
8) Recompile and download your program to the DE0-CV altera board.
9) Demonstrate proper functionality of the 8-bit register with clk, load, shift-left, shift-right and
clear behaviour to your instructor.
Students succeed in their courses by connecting and communicating with an expert until they receive help on their questions
Consult our trusted tutors.