Mod 3
Mod 3
Boolean functions.
Introduction
internal states.
Block diagram of a combinational circuit
• Both input and output data are represented by binary signals, i.e., they exist in two
possible values, one representing logic-l and the other logic-0.
• Input – Excitation; Output - Responses
Design Procedure
• The design of combinational circuits starts from the
verbal outline of the problem and ends in a logic
circuit diagram or a set of Boolean functions from
which the logic diagram can be easily obtained.
• A truth table for a combinational circuit consists of
input columns and output columns. The l's and O's in
the input columns are obtained from the 2 n binary
combinations available for n input variables.
• The binary values for the outputs are determined from
examination of the stated problem.
• An output can be equal to either 0 or 1 for every valid
input combination. However, the specifications may
indicate that some input combinations will not occur.
These combinations become don't-care conditions.
• The output functions specified in the truth table give
the exact definition of the combinational circuit.
• It is important that the verbal specifications be
interpreted correctly into a truth table. Sometimes the
designer must use intuition and experience to arrive at
the correct interpretation.
• Any wrong interpretation that, results in an incorrect
truth table produces a combinational circuit that will
not fulfill the stated requirements
• The output Boolean functions from the truth table are simplified
by any available method, such as algebraic manipulation, the map
method, or the tabulation procedure.
• Usually, there will be a variety of simplified expressions from
which to choose.
• However, in any particular application, certain restrictions,
limitations, and criteria will serve as a guide in the process of
choosing a particular algebraic expression.
• A practical design method would have to consider such constraints
as
(I) minimum number of gates,
(2) minimum number of inputs to a gate,
(3) minimum propagation time of the signal through the circuit,
(4) minimum number of interconnections, and
(5) limitations of the driving capabilities of each gate.
A combinational circuit that perform the addition of 2 bits is called half adder.
(Adding 2 1-bit numbers)
The one that perform addition of 3 bits are called full adder.
Using Only NAND gate
Using Only NOR Gates
The full adder adds the bits A and B and the carry from the previous column called carry in C in
Using AOI Gates
Using Half Adders
S = A’B’Cin + A’BC’in + AB’C’in + ABCin
= Cin (A’B’ + AB) + C’in (A’B + AB’)
=Cin (A’B + AB’)’ + C’in (A’B + AB’)
=Cin (A B )’ + C’in (A B )
C (A B )
= in
Using Half Adders
• C= A’BCin + AB’Cin + ABC’in + ABCin
= Cin (A’B + AB’) + AB(C’in + Cin)
=Cin (A B ) + AB
Using Half Adders
Disadvantage
• Even though, a full adder can be constructed
using two half adders, the disadvantage is that
the bits must propagate through several gates
in succession, which makes the total
propagation delay greater than that of the full
adder circuit using AOI logic
A combinational circuit that perform the subtraction of 2 bits is called half
subtractor.(Difference of 2 1-bit numbers)
The one that perform subtraction of 3 bits are called full subtractor.
Binary Parallel adder
• The Parallel binary adder is a combinational circuit that adds two
binary numbers in parallel form and produces the arithmetic sum of those
numbers in parallel.
• It consists of full adders connected in a chain. with the output carry from
each full-adder connected to the input carry of the next full-adder in the
chain.
• The number of full adders in a parallel binary adder depends on the number
of bits present in the number for the addition.
• If 2-bits numbers are to be added, then there will be 2-full adder in the
parallel binary adder.
Addition of 2 -bit
• When one binary number is added to another, each
column generates a sum bit and a 1 or 0 carry bit to
the next column to the left.
• To add two binary numbers, a full-adder (FA) is
required for each bit in the numbers.
• for 2-bit numbers, two adders are needed; for 4-bit
numbers, four adders are used; and so on.
Addition of 2 -bit
The carry output of each adder is connected to the carry input of
the next higher-order adder
Notice that either a half-adder can be used for the least significant
position or the carry input of a full-adder can be made 0
(grounded) because there is no carry input to the least significant
bit position.
Exercise 1
• Determine the sum generated by the 3-bit
parallel adder and show the intermediate
carries when the binary numbers 101 and 011
are being added.
4- bit Parallel Adder
4- bit Parallel Adder
• The interconnection of four full-adder (FA) circuits to provide a 4-bit
parallel adder.
C out
4-bit Full-adder
• When the 4-bit full-adder circuit is enclosed within an IC
package, it has four terminals for the augends bits, four
terminals for the addend bits, four terminals for the sum
bits, and two terminals for the input and output carries.
Types of Parallel Adders
• The parallel adders can be placed into two categories
based on the way in which internal carries from stage to
stage are handled.
• Ripple carry and look-ahead carry(Carry look-ahead
adder).
• Externally, both types of adders are the same in terms of
inputs and outputs.
• The difference is the speed at which they can add
numbers.
• The carry look-ahead adder is much faster than the ripple
carry adder.
RIPPLE CARRY ADDER:
• In the parallel adder, the carry –out of each stage is connected to the carry-in of the
next stage.
• The sum and carry-out bits of any stage cannot be produced, until sometime after the
carry-in of that stage occurs.
• This is due to the propagation delays in the logic circuitry, which lead to a time delay
in the addition process.
• The carry propagation delay for each full adder is the time between the
application of the carry-in and the occurrence of the carry-out.
• The parallel adder in which the carry-out of each full-adder is the carry-in
to the next most significant adder is called a ripple carry adder.
• The greater the number of bits that a ripple carry adder must add, the greater the time
required for it to perform a valid addition.
• If two numbers are added such that no carries occur between stages, then the add
time is simply the propagation time through a single full-adder.
RIPPLE CARRY ADDER
Full-adder 1 (FA1) cannot produce a potential output carry until an input carry is
applied. Full-adder 2 (FA2) cannot produce a potential output carry until FA1
produces an output carry and so on.
Why Ripple Carry Adder is Called So?
• Ripple Carry Adder does not allow to use all the full
adders simultaneously.
• Each full adder has to necessarily wait until the carry bit
becomes available from its adjacent full adder.
• This increases the propagation time.
• Due to this reason, ripple carry adder becomes extremely
slow.
Carry Look ahead Adder
• Carry Look Ahead Adder is an improved version of the
ripple carry adder.
• It generates the carry-in of each full adder simultaneously
without causing any delay.
• It examines all the input bits simultaneously and also
generates the carry-in bits for all the stages simultaneously.
• The look-ahead carry adder anticipates the output carry of
each stage, and based on the inputs, produces the output
carry by either carry generation or carry propagation.
• Carry generation occurs when an output carry is produced (generated) internally
by the full-adder. A carry is generated only when both input bits are 1s. The
generated carry, Cg, is expressed as the AND function of the two input bits, A and
B.
Cg = AB
• Carry propagation occurs when the input carry is rippled to become the output
carry. An input carry may be propagated by the full-adder when either or both of
the input bits are 1s. The propagated carry, Cp, is expressed as the OR function of
the input bits.
Cp = A B
• The conditions for carry generation and carry propagation are illustrated in Figure
6–15. The three arrowheads symbolize ripple (propagation).
Illustration of conditions for carry generation and carry
propagation
propagate
Cout = Cg + CpCin
• For each full adder, the output carry is dependent on the
generated carry (Cg), the propagated carry (Cp), and its
input carry (Cin).
• The Cg and Cp functions for each stage are immediately
available as soon as the input bits A and B and the input carry
to the LSB adder are applied because they are dependent only
on these bits.
• The input carry to each stage is the output carry of the
previous stage.
• Based on this analysis, we can now develop expressions for
the output carry, Cout, of each full-adder stage for the 4-bit
example.
• Advantages of Carry Look-ahead Adder
• In this adder, the propagation delay is reduced.
• The carry output at any stage is dependent
only on the initial carry bit of the beginning
stage.
• Using this adder it is possible to calculate the
intermediate results. This adder is the fastest
adder used for computation.
BCD Adder
The sum 1 1 1 0 is an invalid BCD number. This has occurred because the
sum of the two digits exceeds 9. Whenever this occurs the sum has to be
corrected by the addition of six (0110) in the invalid BCD number,
Sum equals or less than 9, with carry 1
• Let us consider addition of 8 and 9 in BCD
To get the correct BCD result correction factor of 6 has to be added to the least significant digit
sum,
• we can summarize the BCD addition procedure as
follows :
– Add two BCD numbers using ordinary binary addition.
– If four-bit sum is equal to or less than 9, no correction is
needed. The sum is in proper BCD form.
– If the four-bit sum is greater than 9 or if a carry is
generated from the four-bit sum, the sum is invalid.
– To correct the invalid sum, add 01102 to the four-bit sum.
If a carry results from this addition, add it to the next
higher-order BCD digit.
• Thus to implement BCD Adder Circuit we require :
– 4-bit binary adder for initial addition
– Logic circuit to detect sum greater than 9 and
– One more 4-bit adder to add 01102 in the sum if sum is
greater than 9 or carry is 1.
K- Map for sum>9
The above equation represents the condition when sum >9. When we add C out to this sum
, we get the representation for both the invalid choices.(i.e. sum>9 and carry =1)
With this design information we can draw the BCD Adder Block Diagram
0110
• the two BCD numbers, together with input carry, are first added in the top 4-bit binary adder to produce a binary sum.
When the output carry is equal to zero (i.e. when sum ≤ 9 and Cout = 0) nothing (zero) is added to the binary sum.
When it is equal to one (i.e. when sum > 9 or Cout = 1), binary 0110 is added to the binary sum through the bottom 4-bit binary adder.
The output carry generated from the bottom binary adder can be ignored, since it supplies information already available at the
output-carry terminal.
Binary to Gray Code Converter
• Communication System
– A communication system has both a communication
network and a transmission system. By using a
multiplexer, the efficiency of the communication
system can be increased by allowing the transmission of
data, such as audio and video data from different
channels through single lines or cables.
• Computer Memory
– Multiplexers are used in computer memory to maintain
a huge amount of memory in the computers, and also to
reduce the number of copper lines required to connect
the memory to other parts of the computer.
• Telephone Network
– In telephone networks, multiple audio signals are
integrated on a single line of transmission with the help
of a multiplexer.
Demultiplexer
• The data distributor, known more commonly as
a Demultiplexer or “Demux” for short, is the exact
opposite of the Multiplexer .
• 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.
1-to-2 Demultiplexer
D1
D2 4:1
D3
S0 S1
A B C
Binary to octal converter
Questions
1. Implementation of OR gate using 2 : 1 Mux using “n-1”
selection lines.
2.use mux to implement the logic function
F= A⊕ B ⊕C
3.Use a de mux to implement the function f1=Σ(1,5,7) f2
=Σ(3,6,7)
4.Implement the function f(w,x,y,z)=Σ(1,4,6,7,8,9,10,11,15)
using 8:1 mux