6 input majority circuit

Discussion in 'Homework Help' started by sciencectn, Feb 28, 2011.

1. sciencectn Thread Starter New Member

Feb 28, 2011
1
0
Hello everyone, I am stuck on this problem:

"A majority circuit is a combinational circuit whose output is equal to 1 if the input variables have more 1s than 0s. The output is 0 otherwise. Design a 6-input majority circuit."

So each minterm in the resulting expression must have at least 4 zeros. I thought the best way of implementing it was to add up all of the digits and get a 3 bit binary number as the result. Then you can simply check if the most significant bit is a 1 to see if the result is greater than 4. However, when I try linking together adders it just seems to turn into a big incomprehensible mess and doesn't work.

The obvious way is to generate a massive truth table and find the function but that also turns into a mess. Does anyone know of a better way?

2. Georacer Moderator

Nov 25, 2009
5,151
1,266
The easy way would be to make a truth table, but with 6 input bits, it might get a little big.

Alternatively, you could use a counter with an enable input and a clock.
Store the 6 bits in a shift register. Using the clock, shift the register and with its serial output drive the counter.
Each time a 1 appears, the counter will count up. After 6 clock cycles you will have your result stored in the counter.
Can you visualize the configuration?

Try the 74193 for the counter and the 74166 for the register.