문제

If I have a 5-variable function (below) and I want to implement it using a multiplexer, how would I do that (using the minimum possible multiplexer):

f(A,B,C,D,E) = A + C'D + BD' + B'D + B'CE

This is homework, so don't provide a solution, just a guidance of how that works.

Thanks!

도움이 되었습니까?

해결책

5 variables means a 2**5 (32) input multiplexer, with inputs 0 through 31. Convert the terms into binary numbers and hold the corresponding inputs high. For B'CE we have:

A B C D E
X 0 1 X 1

This gives us 4 numbers, since we have 2 don't cares. The four numbers are:

00101 = 5
00111 = 7
10101 = 21
10111 = 23

Hold inputs 5, 7, 21, and 23 high.

Repeat for the rest of the terms.

다른 팁

Since you explicitly mention

using the minimum possible multiplexer

there's another way of doing it in which you only need a 2^(n-1) input multiplexer to implement a n input function (so, in your case, a MUX with 2^4 inputs and 4 select inputs would suffice). The idea is to use the first n-1 inputs of the truth table as select inputs for the MUX while the remaining one is connected to the data inputs as appropriate to give the desired result.

Since I can't post images yet, see this for a concrete example: https://www.dropbox.com/s/v8osbd8gtwhtfor/n-1inputmux.png

Or for how to implement simple logic gates with MUXes: https://www.dropbox.com/s/7cqbodha7lcoi9y/n-1inputmuxbasics.png


Sources:

http:// sifaka.uwaterloo.ca/~akenning/courses/ece124/

http:// 6004.mit.edu/

(I can't post more than two real links...)

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top