Group Assignment 4 -- EECS 270, Spring '23

Due Friday, June 2rd @9pm, 5% off if turned in by 11pm


This is a group assignment, all of the work should be that of only your group members. Assignments that are unstapled, lack a cover sheet, or are difficult to read will lose at least 50% of the possible points and we may not grade them at all.

It is expected that each group member contributed to the assignment; non-contributing members should not have their name on this document. This assignment is worth about 1% of your grade in the class and is graded out of 30 points. Remember you may drop one group assignment.


  1. Complete State Machine Design:
    Design a circuit from gates and flip-flops which has two inputs A and B and one output X. If for the last two cycles A has equaled B, X should be high, otherwise it should be low. All logic used should be in minimum Product-of-Sums form.
    For this problem the most important thing is convencing the grader that you have the right answer by having your work and each step be clear. So basically, while correctness is important, just being correct isn't enough. You need each step to be clear as crystal. [12]

  2. Data path-based design:
    Design a circuit which takes an 8-bit 2's complement number as input and outputs the average of the last 4 inputs. The output is ignored for the first few cycles (so you don't need to worry about those outputs) You can freely use adders, registers, etc. [6]

  3. Control of a datapath:
    5.16 from the text. If it's the case that the problem cannot be solved with the datapath given make as small of a change to the datapath as possible to be able to solve it... [9]

  4. Logically it should work:
    (This requires research from outside of class, Wikipedia may be enough). Briefly explain one of the following. Provide at least once citation to support your answer. If you have an interest in some related topic, you can ask the instructor to answer questions about it instead. [3]
    1. How optical-based computer systems could implement an OR gate and an AND gate.
    2. How optical-based computer systems could implement memory using a long optical cable.
    3. What a MEMS device is and at least one advantage of using them rather than transistors.