What
Are Combinational Circuits?
Combinational Circuits (CC) are circuits made up of
different types of logic gates. A logic gate is a basic
building block of any electronic circuit.
The output of the combinational circuit depends on the
values at the input at any given time. The circuits do not make use of any
memory or storage device.
Lets look at some of the most common combinational
circuits:
The
Adder
An Adder is a digital circuit that is used to perform the
addition of numeric values. It is one of the most basic circuits and is found
in Arithmetic Logic Units of computing devices. There are two types of
adders. Half Adderscompute single digit numbers while Full
Adders compute larger numbers.
Half
Adder
The Half Adder adds two single digit binary numbers and
forms the foundation for all addition operations in computing. If we have two
single binary digits A and B then the Half Adder adds them with the circuit
carrying two outputs; the sum and the carry. The carry represents any overflow
from the addition of the two numbers. This is represented in the following
block diagram figure 1.
The following truth table shown in Table 1, demonstrates
all the possible outputs for various input combinations of the half adder.
Table 1: Truth Table - Half Adder
A
|
B
|
S
|
C
|
0
|
0
|
0
|
0
|
0
|
1
|
1
|
0
|
1
|
0
|
1
|
0
|
1
|
1
|
0
|
1
|
Figure 2 - Represents the logic circuit of the Half Adder
The sum S is represented by the Boolean Expression S =
A'B + AB' and C = AB
Full
Adder
The Full Adder overcomes the disadvantages
of the half adder in that it can add two single bit numbers in addition to the
carry digit at its input as seen in Figure 3.
The following truth table shown in Table 2 demonstrates
all the possible outputs for various input combinations with the carry input
digit.
Table 2: Truth Table - Full Adder
A
|
B
|
Cin
|
Co
|
S
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
1
|
0
|
1
|
0
|
1
|
0
|
0
|
1
|
0
|
1
|
1
|
1
|
0
|
1
|
0
|
0
|
0
|
1
|
1
|
0
|
1
|
1
|
0
|
1
|
1
|
0
|
1
|
1
|
1
|
1
|
1
|
1
|
1
|
Boolean expression for the full adder is S= A'B'Cin +
A'BCin' + AB'Cin' + ABCin
and C = A'BCin + AB'Cin + ABCin' + ABCin
where A and B are all the possible binary inputs and C is
the Carry in
Example if A is 0 and B is 0 and the Cin is 1 then
S = (0'0'1)+(0'01')+(00'1')+(001) =
(111)+(100)+(010)+(001) = (1)+(0)+(0)+(0) = 1
C = (0'01)+(00'1)+(001')+(001) = (101)+(011)+(000)+(001)
= (0)+(0)+(0)+(0) = 0
S = 1 and C = 0
Subtractors
A Subtractor is used to subtract one
number from the other another. Because we are dealing with binary digits, the
1s complement and 2s complement of the numbers are used to achieve this. Three
bits are involved in performing the basic subtraction: the minuend (X), the
subtrahend (Y) and the borrow (Bi) which is input from the
previous bit. The outputs are the difference (D) and the borrow bit (Bout).
Half
Subtractor
When a subtraction is done between just two bits a Half
Subtractor is used, similar to the Half Adder. The Half Subtractor's
combinational circuit is represented below.
Table 3: Truth Table - Half Subtractor
X
|
Y
|
D=(X-Y)
|
Bout
|
0
|
0
|
0
|
0
|
0
|
1
|
1
|
1
|
1
|
0
|
1
|
0
|
1
|
1
|
0
|
0
|
Boolean expressions:
D = X'Y + XY'
Bout = X'Y
Example, if our inputs X and Y are 0 and 1 then
Compliment of 0 is 1 and vice versa
D = (0'1)+(01') = (11)+(00) = 1 and Bout = (0'1) = (11) =
1
Full
Subtractor
The combinational circuit of the Full Subtractor performs
a subtraction operation on 3 bits, the minuend, the subtrahend and the
borrow-in bits. The circuit generates two outputs comprising of the calculated
difference D and the borrow-out.
Table 4: Truth Table - Full Subtractor
X
|
Y
|
Bin
|
D=X-Y-Bin
|
Bout
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
1
|
1
|
1
|
0
|
1
|
0
|
1
|
1
|
0
|
1
|
1
|
0
|
1
|
1
|
0
|
0
|
1
|
0
|
1
|
0
|
1
|
0
|
0
|
1
|
1
|
0
|
0
|
0
|
1
|
1
|
1
|
1
|
1
|
Boolean expressions:
D= X'Y'Bin + X'YBin' + XY'Bin' + XYBin
Bout = X'Y'Bin + X'YBin' + X'YBin + XYBin
Example: When X = 1 Y = 0 and Bin = 1
D = (1'0'1)(1'01')(10'1')(101) = (011)+(000)+(110)+(101)
= (0)+(0)+(0)+(0) = 0
Bout = (1'0'1)(1'01')(1'01)(101) = (011)+(000)+(001)+(101)
= (0)+(0)+(0)+(0) = 0
Multiplexers
Multiplexers are
combinational circuits designed to select one of multiple data inputs and
produce a single output. They are commonly used in communication transmissions.
The input lines are selected depending on the selection
inputs called control lines. The binary state of these inputs can either be low
'0' or high '1'. Multiplexers have an even number of data input lines D as 2N with
a corresponding number of control lines S.
Multiplexers are designed at different levels. There are 2:1, 4:1, 16:1 and 32:1 multiplexers.
Table 5 shows the Truth Table for a 2:1 Multiplexer
From the truth table we can see that whenever E is low at
logic 0 input, data D0 is blocked while D1 passes data through the multiplexer
to the output Y. When E is high at logic 1, D1 is blocked as D0 passes input
through the multiplexer to the output.
Table 5: Truth Table - 2:1 Multiplexer
E
|
D1
|
D0
|
Y
|
0
|
0
|
0
|
0
|
0
|
0
|
1
|
0
|
0
|
1
|
0
|
1
|
0
|
1
|
1
|
1
|
1
|
0
|
0
|
0
|
1
|
0
|
1
|
1
|
1
|
1
|
0
|
0
|
1
|
1
|
1
|
1
|
Boolean expression: Y = (D1E') + (D0E)
Example: When D1 = 0 and D0 =1 and E = 1
Y = (01')+(11) = (0)+(1) = 1
De-multiplexer
The De-multiplexer does the reverse
operation of the multiplexer. This means that it receives a single data input
and depending on the selection of its control lines it produces multiple
outputs. It is also referred to as a data distributor. It converts a single
serial input into parallel data outputs on the output line. Figure 8 is a block
diagram representation of the De-multiplexer.
|
Figure 9 is the logic circuit of a 1:4 De-multiplexer
where Din is the input data, S0 and S1 are select lines and A, B, C, and D are
the outputs.
Table 6: Truth table - De-multiplexer
S1
|
S2
|
A
|
B
|
C
|
D
|
0
|
0
|
Din
|
0
|
0
|
0
|
0
|
1
|
0
|
Din
|
0
|
0
|
1
|
0
|
0
|
0
|
Din
|
0
|
1
|
1
|
0
|
0
|
0
|
Din
|
This 1:4 De-Multiplexer carries the Boolean expression
for the various outputs A, B, C or D which are selected depending on the logic
state of line S1 and S2 as follows:
A = S1'S2'Din
B = S1'S2Din
C = S1S2'Din
D = S1S2Din
Encoder
An Encoder is a combinational circuit
that has a maximum of 2n input lines producing n outputs, n
being the number of bits. Figure 10 shows the block diagram representation of a
4:2 encoder. It has 4 input bits (22) and 2 output bits (n=2).
Table 7: Truth Table - Encoder
X3
|
X2
|
X1
|
X0
|
Y1
|
Y2
|
0
|
0
|
0
|
1
|
0
|
0
|
0
|
0
|
1
|
0
|
0
|
1
|
0
|
1
|
0
|
0
|
1
|
0
|
1
|
0
|
0
|
0
|
1
|
1
|
There are 4 inputs X0, X1 X2 X3. A successful output is
indicated by a high denoted by an output value = 1. Looking at the truth table
Y1 gives an output only when X2 or X3 are high (1).
The Boolean expression therefore Y1 is X2+X3. Again Y2
only gives an output when X1 or X3 are high(1). The Boolean expression for Y2
therefore is Y2 = X1+X3.
Circuit Boolean expression: Y1 = X2+X3 and Y2 = X1+X3
Input X0 when high (=1) does not produce any output which
is why it does not play a part in the output expressions for Y1 and Y2. Its
redundancy therefore results in its absence in the logic circuit.
The logic circuit derived from this Boolean expression is
as follows:
Decoder
A Decoder converts n input lines into a
maximum of 2n output lines. One output line will be an active
high based on the input combinations.
Figure 13 shows the logic circuit of a 2:4 Decoder. E is
the enable bit, X are inputs and Y are outputs.
Table 8: Truth Table - 2:4 Decoder
E
|
X1
|
X2
|
Y1
|
Y2
|
Y3
|
Y4
|
0
|
-
|
-
|
0
|
0
|
0
|
0
|
1
|
0
|
0
|
0
|
0
|
0
|
1
|
1
|
0
|
1
|
0
|
0
|
1
|
0
|
1
|
1
|
0
|
0
|
1
|
0
|
0
|
1
|
1
|
1
|
1
|
0
|
0
|
0
|
Boolean Expressions:
Y1 = EX1X2
Y2 = EX1X2'
Y3 = EX1'X2
Y4 = EX1'X2'
Lesson Summary
Combinational circuits are made up
of different building blocks of electronic circuits called logic gates.
There are different types of combinational circuits serving different purposes.
Some perform arithmetic operations like the Half Adder, Full
Adder, Half Subtractors and Full Subtractors.
Others, such as the Multiplexers and De-Multiplexers, Encoders and Decoders,
serve as data distributors in communication and telecommunication networks.
These circuits are volatile signal carriers and do not use any form or memory
or storage device.
No comments:
Post a Comment