Logic Design With MSI Circuits: 1. Binary Adder - Subtractor
Logic Design With MSI Circuits: 1. Binary Adder - Subtractor
Logic Design With MSI Circuits: 1. Binary Adder - Subtractor
1 Half Adder
Karnaugh maps:
The output S from the second half adder is the X-
OR of z and the output of the first half adder,
giving:
S = z ⊕ (x ⊕ y )
C = z′( xy ′ + x ′y ) + z( xy ′ + x ′y ′)′
= z′( xy ′ + x ′y ) + z( xy + x ′y ′)
= xy ′z′ + x ′yz′ + xyz + x ′y ′z
C = z( xy ′ + x ′y ) + xy = xy ′z + x ′yz + xy
3 4
1.3 Binary Adder 1.4 Carry Propagation
Produces the arithmetic sum of two binary The longest propagation time in a binary ripple
numbers. It can be realized with full adders (FAs) adder is the time it takes the carry to propagate
connected in cascade. A 4-bit binary ripple adder through all full adders.
is realized as shown below:
The number of gate levels for the carry propagation
can be found from the circuit of the full adder:
The most widely used technique for reducing the We can now write the Boolean functions for the
carry propagation time in a parallel adder employs carry outputs of each stage and substitute for each
the principle of carry lookahead. Ci its value from the previous equations:
Consider again the circuit of the full adder: C0 = input carry
C1 = G0 + P0C0
C2 = G1 + P1C1 = G1 + P1(G0C0 ) = G1 + P1G0 + P1P0C0
C3 = G2 + P2C2 = G2 + P2G1 + P2P1G0 + P2P1P0C0
Pi = Ai ⊕ Bi
Gi = Ai Bi
the output sum and carry can be expressed as:
Si = Pi ⊕ Ci
Ci +1 = Gi + Pi Ci
f = P3 P2 + P3 P1
Add 6 = K + P3 P2 + P3 P1
No correction to the binary sum is needed when The first term corresponds to the decimal sums 10
KP3P2P1P0 ≤ 01001. to 15 where the carry bit K is 1. The remaining two
However, 0110 (decimal 6) must be added to terms correspond to the decimal sums 16 to 19
P3P2P1P0 when KP3P2P1P0 > 01001. where K = 0.
13 14
f = AB + A ′B ′
So the output is 1 if A = B = 0 or if A = B = 1. In
addition to the equality relation, the outcome must
indicate whether A > B, or A < B:
A < B = A ′B
A > B = AB ′
A = B = A ′B ′ + AB
19 20
5. Decoders
Often, digital information represented in dome
binary form must be converted into some
alternative digital form. This is achieved by a
multiple-input, multiple output network referred to
as a decoder. The most commonly used decoder
is the n-to-2n-line decoder:
A = A3 A2 A1 A0
B = B3 B2 B1B0
x i = Ai Bi + Ai′Bi′ for i = 0, 1, 2, 3
The structure of a such decoder is straightforward.
Consider the truth table of a 3-to-8-line decoder:
This corresponds to the logic diagram shown 5.1 Decoders with an Enable Input
below:
Some decoders include one or more enable inputs
to control the circuit operation. The logic diagram
and truth table of a 2-to-4-line decoder are shown
below:
A particular application for this decoder is binary- A decoder with enable input can function as a
to-octal conversion. The input variables represent demultiplexer. The above decoder can function as
a binary number, and the outputs represent the a 4-to-1-line demultiplexer when E is taken as a
eight digits in the octal number system. data input line and A and B are taken as the
selection inputs.
23 24
Decoders with enable inputs can be connected The n-to-2n-line decoder is only one of several
together to form a larger decoder circuit. A 4-to-16- types of decoders. Function-specific decoders exist
line decoder realized using two 3-to-8-line having fewer than 2n outputs. Examples include
decoders is shown below: the BCD-to-decimal decoder (7442A) and the
BCD-to-7-segment decoder.
25 26
5.2 Combinational Logic Implementation When more than ½ the total number of minterms
must be OR-ed, it is usually more economical to
An n-to-2n-line decoder is a minterm generator. use NOR-gates rather than OR-gates to do the
Recall that any Boolean function is describable by summing. Consider the pair of expressions:
a sum-of-minterms. Thus, by using OR-gates in f1 ( x 2 , x1, x 0 ) = ∑ (0, 1, 3, 4, 5, 6)
conjunction with an n-to-2n-line decoder
realizations of Boolean functions are possible. f 2 ( x 2 , x1, x 0 ) = ∑ (1, 2, 3, 4, 6)
However, these realizations do not correspond to
minimal sum-of-products. These may be realized with a 3-to-8-line decoder
and two OR-gates having a total of 11 terminals
Consider the pair of expressions:
between them. However, a more efficient
f1 ( x 2 , x1, x 0 ) = ∑ (1, 2, 4, 5) realization is to re-write the expressions as:
27
A total of five gate-input terminals are needed. 28
6. Encoders 6.1 Priority Encoder
The circuit has two data input lines, I1 and I2, one
output line Y, and one selection line S.
When S = 1, the lower AND gate is enabled and I1
has path to the output. This multiplexer acts like a
switch that selects one of the two sources.
31 32
A 4-to-1-line multiplexer is shown below: By interconnecting several multiplexers in a
treelike structure, it is possible to produce a larger
multiplexer. For example, a 16-to-1 line multiplexer
may be constructed using five 4-to-1-line
multiplexers as follows:
One of the primary applications of multiplexers is to Consider the Boolean function of three variables:
provide for the transmission of information from
several sources over a single path. This process is f ( x, y , z ) = ∑ (0, 2, 3, 5)
known as multiplexing. E.g., the multiplexing of
conversations on the telephone system. The function can be implemented with an 8-to-1-
When a multiplexer is used in conjunction with a line multiplexer:
demultiplexer, an effective means is provided for
connecting information from several source
locations to several destination locations. This
basic application is illustrated below:
submaps:
39 40