Consider the following combinational function block involving four Boolean variables where are inputs and is the output.
f(x, a, b, y)
{
if(x is 1) y = a;
else y = b;
}
Which one of the following digital logic blocks is the most suitable for implementing this function?
View worked solution
Answer: C
The given combinational function block can be described as follows:
- If , then
- If , then
We can express the output as a Boolean function of the inputs , , and :
This expression represents a standard 2-to-1 Multiplexer (MUX), where:
- is the select line ().
- and are the data inputs ( and respectively).
- is the output.
Therefore, a Multiplexor is the most suitable digital logic block to implement this function.
Comparison of Options:
- Full Adder: Performs addition of three binary inputs.
- Priority Encoder: Outputs the binary index of the highest-priority active input.
- Multiplexor: Selects one of the inputs based on a control/select signal (matches the given behavior).
- Flip-flop: A sequential storage element, whereas the question specifies a combinational block.
Free practice · Your answers on this page are not saved.
