CSE370 Laboratory Assignment 4

Using Multiplexors to Implement Boolean Functions

Distributed: April 15
Due: By the end of lab session (4/18,19)


Objectives

In this lab assignment, you will use multiplexors to implement an adder.

You can get a head start on the Lab by designing and simulating the circuit for Step 2 (and Step 6 if you are interested in extra credit).


Tasks

  1. The multiplexor (also known as a selector) is a very powerful component that is typically used to select one of several inputs to connect to the output.  In this exercise, we will use this capability to implement functions directly from a truth table instead of with gates.  The ‘153 multiplexor chip contains two 4-1 multiplexors that share the same select inputs. Be sure to use the chip maps as a guide to the pinout, and notice that each multiplexor has an enable signal. Instead of using simulation, wire up one of the multiplexors of the ‘153 on your prototyping board to switches and lights.  Connect each of the four inputs, the two select inputs and the enable to switches, and the multiplexor output to a light.  Using the switches, show that the multiplexor works as advertised.

  2. Now use ActiveHDL to design a full adder using a single ‘153 chip, using one 4-1 mux to implement each of the carry and sum functions. You will need to add an inverter as well. Now create a top-level test circuit schematic as you did in Lab 3, using the test fixture given in the tutorial to test your design. Don’t forget to connect the enables!

  3. Now implement this full adder circuit using your prototyping board.  Connect the inputs to switches and the outputs to lights. Be sure to plan ahead – you will need another ‘153 chip for part 4.  HINT: If your circuit is not working as expected use the logic probe to trace through the circuit to help you identify any wiring errors.

  4. Now design a two-bit ripple-carry adder using two of the full adders you designed in part 2. You will simply make two copies of the same circuit and connect them together. Note that this adder will generate a 3-bit output.
  5. Show the simulation results and the working circuit to a TA and have them check you off as having completed this laboratory assignment. They will ask you to show them your work and explain your design files and circuit.  Hand in your schematics for parts 2 and 4. Do not hand in waveforms this time.

  6. [Extra Credit – only if you have lots of spare time!]  Turn your circuit from #5 into a 2-bit ALU that can both add and subtract.  That is, add a control input: if it is 0, then the circuit adds and if it is 1, the circuit subtracts.  If you are very clever, you can implement this using just 3 chips!

NOTE: The gates in your Active-HDL solution must exactly match the gates used in your prototyping board solution.