I have an ALU that performs 6 functions, each function provides a 4 bit result. I want to multiplex these outputs so they can be selected with an op-code (selector bits of the mux). The only problem is there are no 24 in 4 out multiplexers, so how can I achieve this?


  • 3
    \$\begingroup\$ Four 8-to-1 multiplexers? Is this an ALU built in 74 logic? \$\endgroup\$
    – pjc50
    Sep 25, 2015 at 9:37
  • \$\begingroup\$ In what technology? TTL? \$\endgroup\$
    – user16324
    Sep 25, 2015 at 9:42
  • \$\begingroup\$ The ALU uses CMOS chips and produces 6 x 4 bit outputs, each output a unique function. How do I mux between these outputs? \$\endgroup\$
    – Eddie
    Sep 25, 2015 at 9:55
  • \$\begingroup\$ @Eddie Four 8-to-1 multiplexers? \$\endgroup\$
    – user253751
    Sep 25, 2015 at 11:42

2 Answers 2


You can use 6 - 4 bit tri-state buffers - like the 74HC125

each of your ALU outputs goes into a separate 4 bit - tri-state buffer - with the buffer enables commoned-up on each group of 4 bits. The outputs of the tristate buffers can simply be wired together onto a 'bus' and you then use the 6 buffer enable lines to select which of the ALU outputs is selected onto the bus.

you could also add a 74HC138 to convert a 3 bit selection into the 6 buffer enable lines


Three quad 2:1 multiplexers: HC257

Here's the circuit and its truth table, with the '161 used to simulate the control signals to the muxers,

enter image description here

here's the plot,

enter image description here

and here's a link to the files you'll need to run the simulation. Put them all in the same folder and left click on the .asc file to get started. if you don't have LTspice its free, here.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.