CE212 Chapter3
CE212 Chapter3
CE 212 Chapter 3
Salah Safi
fall 2024-2025
German Jordanian University
Chapter 3: Gate-Level
Minimization
3.1 INTRODUCTION
● Gate-level minimization is the design task of finding an optimal gate-level implementation of
the Boolean functions describing a digital circuit.
● This task is well understood, but is difficult to execute by manual methods when the logic has
more than a few inputs.
● Fortunately, computer-based logic synthesis tools can minimize a large set of Boolean
equations efficiently and quickly.
● However, this procedure of minimization is awkward because it lacks specific rules to predict
each succeeding step in the manipulative process.
● The map method presented here provides a simple, straightforward procedure for minimizing
Boolean functions.
● This method may be regarded as a pictorial form of a truth table. The map method is also
known as the Karnaugh map or K-map.
Two-Variable K-Map
● The two-variable map is shown in Fig. 3.1(a).
● There are four minterms for two variables; hence, the map
consists of four squares, one for each minterm.
● Similarly, the function x + y is represented in the map of● The three squares could also have been
Fig. 3.2(b) by three squares marked with 1’s. These determined from the intersection of
squares are found from the minterms of the function: variable x in the second row and variable
y in the second column, which encloses
the area belonging to x or y. In each
example, the minterms at which the
function is asserted are marked with a 1.
Three-Variable K-Map
● A three-variable K-map is shown in Fig. 3.3.
● Sometimes there may be two or more expressions that satisfy the simplification criteria.
● The procedure for combining squares in the map may be made more systematic if we
understand the meaning of two special types of terms: Prime and Essential implicants.
Prime Implicants
Implicants, Prime Implicants, and Essential Prime Implicants:
● Implicant: A group of 1s on a map that forms a rectangle with a size that is a power of 2 (1, 2, 4,
8, or 16).
● Essential Prime Implicant: A prime implicant that covers at least one 1 that no other prime
implicant can cover.
K-Map procedure:
● Find essential prime implicants
● The 1’s placed in the squares of the map represent the minterms of the function. The minterms
not included in the standard sum-of-products form of a function denote the complement of the
function.
● If we mark the empty squares by 0’s and combine them into valid adjacent squares, we obtain a
simplified sum-of-products expression of the complement of the function (F’).
● This pair of conditions assumes that all the combinations of the values for the variables of the
function are valid.
● In practice, in some applications the function is not specified for certain combinations of the
variables. As an example, the four-bit binary code for the decimal digits has six combinations
that are not used and consequently are considered to be unspecified. Functions that have
unspecified outputs for some input combinations are called incompletely specified functions.
● In most applications, we simply don’t care what value is assumed by the function for the
unspecified minterms. For this reason, it is customary to call the unspecified minterms of a
function don’t-care conditions. These don’t-care conditions can be used on a map to provide
further simplification of the Boolean expression.
3.5 DON’T-CARE CONDITIONS
● A don’t-care minterm is a combination of variables whose logical value is not specified. Such a
minterm cannot be marked with a 1 in the map, because it would require that the function
always be a 1 for such a combination. Likewise, putting a 0 on the square requires the function
to be 0.
● To distinguish the don’t-care condition from 1’s and 0’s, an X is used. Thus, an X inside a square
in the map indicates that we don’t care whether the value of 0 or 1 is assigned to F for the
particular minterm.
● In choosing adjacent squares to simplify the function in a map, the don’t-care min- terms may be
assumed to be either 0 or 1. When simplifying the function, we can choose to include each
don’t-care minterm with either the 1’s or the 0’s, depending on which combination gives the
simplest expression.
3.5 DON’T-CARE CONDITIONS
3.5 DON’T-CARE CONDITIONS
3.6 NAND and NOR Implementation
● Digital circuits are frequently constructed with NAND or NOR gates rather than with AND and
OR gates.
● NAND and NOR gates are easier to fabricate with electronic components and are the basic
gates used in all IC digital logic families.
● Because of the prominence of NAND and NOR gates in the design of digital circuits, rules and
procedures have been developed for the conversion from Boolean functions given in terms of
AND, OR, and NOT into equivalent NAND and NOR logic diagrams.
NAND Circuits
● The NAND gate is said to be a universal gate because any logic circuit can be implemented with
it.
NAND Circuits
● A convenient way to implement a Boolean function with NAND gates is to obtain the simplified
Boolean function in terms of Boolean operators and then convert the function to NAND logic.
● The implementation of Boolean functions with NAND gates requires that the functions be in
sum-of-products form.
● Note: When both symbols are mixed in the same diagram, the circuit is said to be in mixed
notation.
NAND Circuits
NAND Circuits
3.6 NAND and NOR Implementation
● The NOR operation is the dual of the NAND operation.
● Therefore, all procedures and rules for NOR logic are the duals of the corresponding
procedures and rules developed for NAND logic.
● The NOR gate is another universal gate that can be used to implement any Boolean function.
3.6 NOR Implementation
3.6 NOR Implementation