Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
02/25/07 03:37
Modified:
  02/25/07 05:27

Read: times


 
#133651 - One solution...
Responding to: ???'s previous message
Ok, I wrote:

Kai said:
Means, if we want to decide the status of one signal, it should be enough to ask, what the two others do (without differentiating between them!) in correlation to what all the three do (again not differentiating between them!).

But if we cannot differentiate between the individual signals, the only that we have, finally, is the number of "1" ("Ones") in the set of input signals A,B,C. So the truth table, which looks like


A  B  C   !A
-------------
0  0  0    1
0  0  1    1
0  1  0    1
0  1  1    1
1  0  0    0
1  0  1    0
1  1  0    0
1  1  1    0

(if we focus on only !A, for the sake of clarity), tells us:

!A = zero"1" + one"1" & (B+C) + two"1" & (B&C)

In words: !A is to be set to "1", if no "1" are in the set of input signals A,B,C, or if one "1" is there and at the same time either B or C is "1" or if two "1" are there and at the same time B and C together are "1".

So, we should create help signals "S0" and "S1", which binarily count the number of "1" in the set of input signals A,B,C, as follows:


A  B  C   !A   S1 S0
---------------------
0  0  0    1    0  0
0  0  1    1    0  1
0  1  0    1    0  1
0  1  1    1    1  0
1  0  0    0    0  1
1  0  1    0    1  0
1  1  0    0    1  0
1  1  1    0    1  1


We see immediately that

S1 = A&B + A&C + B&C

and, as "S0" is "nearly" !S1:

S0 = !S1 & (A+B+C) + A&B&C

This means, that !A becomes:

!A = !S0 & !S1 + S0 & !S1 & (B+C) + !S0 & S1 & B & C

With this scheme only two inverters are needed, to invert the help signals "S0" and "S1".

The whole solution becomes then:

!A = !S0 & !S1 + S0 & !S1 & (B+C) + !S0 & S1 & B & C

!B = !S0 & !S1 + S0 & !S1 & (A+C) + !S0 & S1 & A & C

!C = !S0 & !S1 + S0 & !S1 & (A+B) + !S0 & S1 & A & B


This would be the circuit for !A:




The upper ten gates generate the help signals S0, !S0, S1 and !S1, while the lower five gates generate !A. Again five gates had to be added for the generation of !B and again five gates for !C.

How to save one inverter...

Kai


List of 15 messages in thread
TopicAuthorDate
weekend brainteaser            01/01/70 00:00      
   here goes my weekend.            01/01/70 00:00      
      Dont worry once you see the answer its obvious.            01/01/70 00:00      
         Logically thinking...            01/01/70 00:00      
            you are quite close            01/01/70 00:00      
               One solution...            01/01/70 00:00      
                  yey we have a winner            01/01/70 00:00      
                  Very Nice            01/01/70 00:00      
                     Thanks            01/01/70 00:00      
                        An Alternate Solution            01/01/70 00:00      
                           Yes...            01/01/70 00:00      
                           Ive run out ;-(            01/01/70 00:00      
            Congratulations, Kai!            01/01/70 00:00      
               Thanks            01/01/70 00:00      
                  Now it is clearer...            01/01/70 00:00      

Back to Subject List