## Description

PROJECT

Problem 1: You design a combinational circuit C1 with the following requirements. The combinational

logic C1 should contain at least 8 gates which include at least 3 OR and 3 NAND gates. Make sure

that your design be different from those used by other students. If your design is identical to the one

used by other students, further investigation will be conducted and you will be asked to revise your

design and redo the work.

Task 1:

1) Draw your circuit C1.

2) You make an identical copy of C1 and name it as C2. Except the inputs, add the index 1 to all the

wire names of C1, while adding the index 2 to all the wire names of C2. Assume that the

corresponding inputs use the same variable names, respectively.

3) Download a SAT solver for satisfiability.

4) Prove the equivalence of C1 and C2 by a SAT solver.

Task 2:

Get a circuit C3 from C2 by replacing one gate in C2 with a gate of different functionality. Prove or

disprove C1=C3 by a SAT solver.

Problem 2. Equivalence checking by implicit state enumeration.

Consider the product machine with shared input P=S1S2 in your project 2. Following the lecture on

implicit state enumeration, use the implicit state enumeration to check the equivalence of S1 and S2.

The initial states of FFs in both circuits are all the equivalent states. Use the Boolean algebra to do the

reasoning.