Laboratory Exercises For Computer Science 211

Elementary Circuits and Their Uses

Elementary Circuits and Their Uses

Goals: This lab provides additional practice examining and designing circuits.

Note: As with the work for the previous lab, the following problems are to be done on paper collaboratively. Everyone should work in a group of two (preferred) or three students; within a group, each person should take responsibility for leading discussion for some of the problems.

Steps for this Lab:

  1. Review Section 3.2.2 in the text. Are multiplexers and decoders the opposite of each other? Explain why or why not.

  2. Solve problem 8, page 157, in the text.

  3. Design a logical circuit that will calculate the following function.
        Inputs          Output
    A     B     C         D
    -------------       ------
    0     0     0         1
    0     0     1         0
    0     1     0         1
    0     1     1         0
    1     0     0         0
    1     0     1         1
    1     1     0         0
    1     1     1         1
    Explain briefly why your circuit is correct.

  4. Design a logical circuit that will calculate the less-than (<) function for two 2-bit inputs. That is, if the inputs are A and B, each of whose values can be in the range 0-3 (i.e., 00-11 in binary), then the output should be 1 whenever A < B, and 0 otherwise.

    Try to do this with a minimum number of gates. For instance, if you were to use the straightforward method, as was done in the previous lab, your circuit might require six 4-input AND gates, one six-input OR gate, and 12 NOT gates. Using some Boolean equivalences to minimize logic expressions, design this circuit with a reduced number of gates.

    This circuit requires four inputs, referred to as a1, a2, b1, and b2. a1 and a2 represent a 2-bit number, as do b1 and b2. The output will be true if the decimal number represented by the pair a1a2 is less than the decimal number represented by b1b2.

  5. Translate your logical less-than circuit (step 4) to the transistor level, showing all transistors and corrections, inputs and outputs.

This document is available on the World Wide Web as

created September 15, 1997
last revised September 15, 1997