Demultiplexer or “Demux” for short, is the exact opposite of the Multiplexer we saw in our previous lessons. The demultiplexer takes one single input data line and then switches it to any one of a number of individual output lines one at a time. In a MUX you have one of n inputs to choose from and direct to an output. In a DeMUX, you have a single input, but one of n outputs to choose from to direct the input. Think of a DeMUX like a mailroom. You have many pieces of letters coming in, and you must distribute each letter to one of many different mail boxes.
A demultiplexer (or demux) is a device taking a single input signal and selecting one of many data-output-lines, which is connected to the single input. A multiplexer is often used with a complementary demultiplexer on the receiving end. A demultiplexer is a single-input, multiple-output switch. Demultiplexers take one data input and a number of selection inputs, and they have several outputs. They forward the data input to one of the outputs depending on the values of the selection inputs.
Demultiplexers are sometimes convenient for designing general purpose logic, because if the demultiplexer's input is always true, the demultiplexer acts as a decoder. This means that any function of the selection bits can be constructed by logically OR-ing the correct set of outputs. Demultiplexer is called as a ‘data distribut0r’, since it transmits the same data to different destinations.
The demultiplexer converts a serial data signal at the input to a parallel data at its output lines as shown below.
TRUTH TABLE
A Multiplexer has several inputs. It selects one of the inputs and routes the data at the selected input to the single output. Demultiplexer has an opposite function to that of the Multiplexer. It has a single input and several outputs. The Demultiplexer selects one of the several outputs and routes the data at the single input to the selected output. A demultiplexer is also known as aData Distributor.
Again we can build a Bigger DeMux using smaller DeMux using the same procedures we have in building Decoders, Encoders and Mux. So using our 1-to-2 Demux, we can build a 1-to-4 Demux.
Here are Different ways to draw the Block Diagram of a DeMUX.
Then we have its TRUTH Table and the Logic CIrcuit.
TRUTH TABLE FOR a 1-to-4 DeMUX
If we examine the Logic circuit of a DEMUX, you will notice that itis similar to a Decoder.
Here is the Logic Circuit of 1-to-4 DEMUX. 2-to-4 DeCoder Circuit with Enable.
TRUTH Table of a 2-to-4 Decoder with Enable
The circuit diagram of a 1-to-4 line Demultiplexer shown here is similar to that of the 2-to-4 Decoder. The Decoder enable input is used as the Demultiplexer data input. A Demultiplexer is available as a Decoder/Demultiplexer chip which can be configured to operate as a Demultiplexer or a Decoder. The circuit of the 1-to-4 Demultiplexer is similar to the 2-to-4 Binary Decoder as shown in the Figure above. The only difference between the two is the Data Input line of a Demux, which is used as enable line in the 2-to-4 Decoder circuit. Assuming the select inputs S1 and S0 are set to 1 and 0 respectively. The Y2 output is set to 1 if the Data input is 1 or it is set to 0 if the Data input is 0. In Otherwords, the DATA inputs are going out to Y2 output as long as Select Inputs S1 and S0 are set to 1 and 0 respectively.
Below is a Mechanical Equivalent of a 1-t0-4 DeMUX.
The function of the Demultiplexer is to switch one common data input line to any one of the 4 output data lines A to D in our example above. As with the multiplexer the individual solid state switches are selected by the binary input address code on the output select pins “a” and “b” as shown.
As with the previous multiplexer circuit, adding more address line inputs it is possible to switch more outputs giving a 1-to-2n data line outputs.
Comparing MUX and DeMux Logic Circuits. What can you conclude ?
The Decoder Circuit of a MUX and DeMux is the same.
As mentioned before, can build a Bigger DeMux using smaller DeMux using the same procedures we have in building Decoders, Encoders and Mux. So using our 1-to-2 Demux, we can build a 1-to-4 , 1-to-8
or 1-to-16 DeMux. Let us built and implement a 1-to-16 DeMux using a smaller 4-to-1 Demux.
For your exercise...
How are you going to implement a 1-to-8 DeMux using only 1-to-2 Demux ?
TIP. Recall the Circuit we had built for a 8-to-1 MUX using only a 2-to-1 MUX.
BOOLEAN IMPLEMENTATION using DeMux
Just like a MUX, a DeMux could implement any Boolean Expression, since all the outputs of a DeMux is equivalent to all the minterms of the input variables (since a Demux is equivalent to a Decoder). Let us implement the following boolean expression using a DeMUX.
g3(b3b2b1b0)=Σ(8,9,10,11,12,13,14,15)
g2(b3b2b1b0)=Σ(4,5,6,7,8,9,10,11)
g1(b3b2b1b0)=Σ(2,3,4,5,10,11,12,13)
g0(b3b2b1b0)=Σ(1,2,5,6,9,10,13,14)
Since there are four bits of input information required to determine the minterms, a 1-to-16 line
Demultiplexer is utilized as shown in the figure (note that OR element symbols shown in the figure
can be the equivalent for NAND gates Applying the DeMorgan ). The Logic circuit implemented is actually a 4-bit binary-to-gray code converter.
EXAMPLE 2:
Obtain the functional logic diagram for the following functions using one 1-to-16 Demultiplexer, outputs are Active-Hi.
F1(a,b,c,d) = Σ(0,1,5,8,13)
F2(a,b,c,d) = Π(3,7,8,12,14,15)
F3(a,b,c,d) = Σ(1,3,4,5,7,8,11,12,13,14,15)F4(a,b,c,d) = Π (0,2,3,6,7,8,10,12,13,15)
Solution:
Because functions F2 and F4 are presented in maxterm compact form, we must convert them to
miniterm form.
F2(a,b,c,d) = Σ (0,1,2,4,5,6,9,10,11,13)
F4(a,b,c,d) = Σ (1,4,5,9,11,14)
In the second step we count 1s and 0s in each function: Take note that functions F2 and F3 have less 0's than 1's, so for this functions are better implemented using miniterm compact form for the 0s (complement of the output Function, hence the inverter at the outputs).
Implementing Boolean Functions using a DeMux And a Mux.
Obtain the logic diagram for the following function
F(a,b,c,d,e) = Σ(2,3,4,6,9,10,12,16,17,18,19,21,23,25,26,30,31)
using one 1-to-4 Demultiplexer and 8-to-1 Multiplexer.
Solution
Let us create the Partitioned TRUTH TABLE for a TYPE 2 Multiplexer implementation using 3 Select Inputs (a,b,c) and the other 2 Select Inputs (d,e) to be their Inputs for implementing the Boolean Function. Its TRUTH TABLE must have 8 possible combinations for its 3 Select Data (a,b,c).
Then we create the TRUTH TABLE for our DeMux with the Select Inputs (d,e) which will produce the required input Signals for our MUX. The 1:4 Demux must have 4 outputs depending on its 2 Select Data (d,e). These 4 outputs are all functions of the Select Data (d,e) which will then be fed in to the inputs of the MUX.
Then, we have to consolidate or combined their TRUTH TABLES to easily implement the Boolean Function. We now have all the Select Data Inputs (a,b,c,d,e), and where (a.b.c) are the 3 select lines of the MUX and the variable (d,e) are the select lines of DeMux which will produce 4 Outputs to be fed in as inputs to the MUX that will eventually produce the required Boolean Function (F).
TO complete our TRUTH TABLE, The procedure is as easy as taking the minterms from the Boolean Function and placing a 1 to the corresponding minterm in the TRUTH TABLE as shown below. From the Boolean Function
F(a,b,c,d,e) = Σ(2,3,4,6,9,10,12,16,17,18,19,21,23,25,26,30,31)
Finally, we complete our TRUTH TABLE by expressing the Output Function F as functions of (d,e).
From the TRUTH TABLE, we can now implement using TYPE 2 MUX.
Now all we need is to implement the DeMux that will produce the require inputs for the TYPE 2 MUX implementation.
Then we can now complete the implementation by combining the 2 Logic Circuits as one to implement the Boolean Function using a DeMux and TYPE 2 MUX as shown below.