Storage Components


I. Introduction

For this lab, you are required to write a VHDL description at the behavioral level of a 4-byte register file and a 1-byte register with parallel load/shift. Once you have these two components, you need to write a testbench to show the correctness of each one.
For a general description of registers look in the Embedded Systems Design book on pages 34 and 35.

Register File

Size is 4 bytes, i.e. four rows of 8 bits. Each row (byte) is addressable.

The inputs, outputs, and functionality of the register file are as follows:

Parrallel Load/Shift Register

The inputs, outputs, and functionality of the parallel load/shift register are as follows:

II. Procedure

Implementation and simulation

  1. Write the behavioral description of the two components described above.
  2. Test your design by writing a VHDL testbench and observing the results in ALDEC Active-VHDL.
  3. Your testbenches should contain many conditions and have asserts to ensure the correctness.