vhdl_workshop:lab_2

This is an old revision of the document!


LAB 2: Extending the Multiplexer

As the module will be used to multiplex single digit values later on, the bus widths need to be adjusted. This is easily done by specifying a range for all data signals which are of type integer. Additionally, error conditions shall also be signaled to the user via the camera display. Therefore, an additional control input named ERROR is needed. The following figure shows the updated schematic:

TODO Bild The enhanced multiplexer

DISP_PHOTO shall be set to ’10’ when the ERROR signal is active. Otherwise, the multiplexer behaviour shall not be changed, i.e. the output shall be equal to the EXP_TIME input when the control signal SHOW_TIME is 1. Else, DISP_PHOTO shall be set to NO_PICS.

All data signals (NO_PICS, EXP_TIME, DISP_PHOTO) shall be of type integer with a range of valid values from 0 to 10. The new control signal ERROR shall be of type std_ulogic, as the SHOW_TIME signal.

  • Modify the existing multiplexer model.
  • Compile your design.
  • Modify the testbench according to the changes of the DISP_MUX interface and create new stimuli to verify the proper behaviour.
  • Compile the testbench.
  • Run the simulation.
  • Synthesize the model.

TODO Code Modified DISP_MUX