Sun, 18 Sep 2011, 03:43


My students in EE 306,

Apparently many of you are having trouble with Problem 6B.

You are asked to implement A XOR B using two 2-input muxes, and 
you have no inverters (NOT gates) available to you.

Question: Can you implement an inverter (i.e., a NOT gate) with one 
of those 2-input muxes?

Recall a mux look like this:

                          X          Y                            
                          |          |                            
                          |          |                            
                       ------------------
                  Z_____\              /                          
                         \            /                           
                           ----------
                                |                                 
                                |                                 
                               OUT


There are three inputs to the mux.  In normal usage, X and Y are sources and
Z is a control signal identifying whether OUT = X or OUT = Y.

But here, we decided to stretch your brain and ask you to use a mux in a
non-conventional way.  That is, we want you to use the 2-input mux as a 
logic building block with three inputs X,Y,Z and one output OUT.  We can 
choose any of the three values {0,1,A} for X, for Y, and for Z.  For example, 
we could let X=A, Y=A, and Z=A.  But that would be silly since then OUT=A, 
and the mux would have accomplished nothing.  Can we choose values for 
X,Y, and Z such that OUT = NOT(A).

Once we have done that, we still have one 2-input mux left for making the 
XOR gate.  For this mux, we can select for each of the three inputs X,Y,Z 
any value from {0,1,A,NOT(A)}.  NOT(A) is the output of the first mux and 
so can be one or more of the three inputs to the second mux.

Problem 6B is, I admit, tricky.  But it allows you to stretch your brain
a little.  And since you are hopefully working in a study group, you can
tackle the problem together.  Hopefully, you find the treatment above
helpful. 

Good luck finishing the assignment and with the rest of the course.

Yale Patt