
Department of Electrical Engineering and Computer Science
EECS 150
Fall 2000
Problem Set # 1 (Assigned 31 August, Due 8 September)
1. Which of the following contain circuits that are likely to be combinational and which
contain sequential circuits? Explain the rationale behind your answer!
(a) A circuit that multiplies two 2-bit quantities to generate a 4-bit output.
(b) A circuit that recognizes a pre-specified pattern of bits in a continuous input
stream of bits.
(c) A circuit that determines if a specified year is a leap year or not.
(d) A circuit inside a vending machine that takes change in quarters, dimes, and
nickels, and delivers the product when 55 cents have been inserted into the
machine.
(e) A circuit that steers its single data input to one of four outputs as selected by two
binary control inputs.
(f) A circuit with two binary inputs and three binary outputs that works as follows:
the first output is 1 if both inputs are 0, the second output is 1 if either input is 1
but not both, and the third output is 1 if both inputs are 1.
2. Consider the Calendar subsystem presented in class. We are going to change the
output specifications slightly while the inputs will remain the same. Directly generate
the five-bit binary number for the number of days in the month: 28 = 111002, 29 =
111012, 30 = 111102, and 31 = 111112.
(a) Develop the truth table for the revised function, with four inputs to represent the
month, one input to indicate a leap year, and the five outputs as indicated above.
(b) Write down the Boolean equations for each of the five outputs.
(c) Characterize the complexity of this implementation by counting the number of
AND, OR, and INVERTER gates of various input sizes needed to realize each of
the five outputs (e.g., so many 2-input ANDs, 3-input ANDs, etc.).
3. Now consider a different way to achieve the same result. Keep the Calendar system
exactly as discussed in class. But add a new component that takes as inputs the four
outputs D28, D29, D30, and D31, and maps these into the five outputs as described in
Problem 1.
(a) Develop the truth table for the new portion of the function.
(b) Write down the Boolean equations for each of the five outputs.
(c) Once again, characterize the complexity of the implementation by tabulating the
number of gates of various inputs needed to realize the five outputs.
(d) Given the complexity of the original Calendar system, and this new subsystem,
how does this solution compare with the one you developed for Problem 1?
Which is better?
4. Can you think how to dramatically reduce the complexity of implementing the
function of Problem 2? (HINT: rather than starting with the truth table, think through