I have found this question in a book and find it confusing. The question is,

For a communication system, it is required to utilize a single channel to transmit the data generated from 16 users. Design a feasible circuit to aggregate the 16 users to a single channel using 4:1 multiplexers. Design a user selection circuit to interface with the above designed aggregation circuit. Please help me get an answer for this with explanation.


On the left, I've used 2:1 muxes and then boxed them together to create a bigger 4:1 mux. Using this construction method of building larger muxes from smaller muxes you can construct your 16:1 mux. As shown in the schematic, the dashed boxes represent a 4:1 mux, so only 5 4:1 muxes are necessary to construct your 16:1 mux; 4 on the bottom layer and one for the top layer. The key insight is to build them using a tree structure. Also, each 4:1 mux requires two select bits, one bit for each layer of the mux tree. I will leave it to you to design the larger 16:1 mux select circuit. Hint: each layer requires two bits! For example lets say we want to select user #10 (with user #0 at the top): our select line would be a 4-bit bus with value 0101.


simulate this circuit – Schematic created using CircuitLab

  • \$\begingroup\$ Thanks for clarifying. You mean for the selection circuit I can use the 8 selectors in the first four muxes? so I can use them to select the user? \$\endgroup\$ – Marlon Abeykoon Oct 6 '18 at 7:07
  • \$\begingroup\$ I've updated my answer with an example to select user #10. So there would be a two-bit bus going to the first layer of 4:1 muxes then another 2-bit bus going to the second 4:1 mux layer. Only two selectors, each 2-bits. \$\endgroup\$ – dopamane Oct 6 '18 at 7:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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