Laboratory Exercises For Computer Science 211

Designing Simple Circuits

Designing Simple Circuits

Goals: This lab provides practice in designing simple circuits.

Notes:

Steps for this Lab:

  1. At the transistor level, design an AND function using exactly two NAND gates.
    Explain briefly why your circuit is correct.

  2. At the transistor level, design a circuit for computing A OR B OR C. That is, a 1 should result if one, two, or all of the initial inputs are 1; the result is 0 only if all three inputs are 0. The resulting circuit should show all required transistors.
    Explain briefly why your circuit is correct.

  3. Figure 3-3 in the text shows a logical circuit that computes the majority function for three variables -- the output is true if any two or more of three inputs are true. Draw this circuit at the transistor level, showing all transistors and connections.

  4. Simplify the majority function for three variables by noting that AB(¬C) + ABC = AB. Thus, the two AND gates 6 and 7 in Figure 3-3 may be replaced by a simpler AND with only A and B as inputs. Draw the resulting circuit both at the logical level and at the transistor level.

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

  6. A variety of logical manipulations may help achieve the same output with fewer logical gates. For example, for the majority circuit, consider the use of negative logic. That is, first design another circuit to output 1 whenever D is 0 and 0 whenever D is 1. Then feed that output through a NOT gate in order to compute the original function. Show the logical manipulations and the resulting logical circuit which results from this approach to designing the majority circuit.

  7. How many logical gates did your circuits for questions 5 and 6 require?

  8. Assuming your logical circuits for questions 5 and 6 were implemented with NAND, NOR, and NOT gates, how many transistors would be required? Briefly explain your answer.


Work to be turned in:


This document is available on the World Wide Web as

     http://www.math.grin.edu/~walker/courses/211/labs/lab.design-circ.html

created September 2, 1997
last revised September 3, 1997