COURSE: DIGITAL DESIGN AND COMPUTER
ORGANIZATION
COURSE CODE: BCS302
Course Instructor
Dr. Jagadishwari V
Associate Professor
Dept of CSE, CMRIT
Module 1: Introduction to Digital Design: Binary Logic,
Basic Theorems And Properties Of Boolean Algebra, Boolean
Functions, Digital Logic Gates, Introduction, The Map
Method, Four-Variable Map, Don’t-Care Conditions, NAND
and NOR Implementation, Other Hardware Description
Language – Verilog Model of a simple circuit.
Text Book : M. Morris Mano & Michael D. Ciletti, Digital
Design With an Introduction to Verilog Design, 5e, Pearson
Education
Topic No: 1.9, 2.4, 2.5, 2.8, 3.1, 3.2, 3.3, 3.5, 3.6, 3.9
BINARY LOGIC AND GATES
What are Binary variables ?
What are Logical operators ?
Name the Basic logical operators
What are Logic gates?
What is Boolean Algebra?
QUESTION
Draw the Logic diagram and write the TT for all
Basic gates
INTEGRATED CIRCUIT (IC)
An integrated circuit (IC), sometimes called
a chip, microchip or microelectronic circuit,
is a semiconductor wafer on which
thousands or millions of
tiny resistors, capacitors, diodes and transis
tors are fabricated
BINARY LOGIC AND GATES
Binary variables take on one of two values.
Logical operators operate on binary values and
binary variables.
Basic logical operators are the logic functions
AND, OR and NOT.
Logic gates implement logic functions.
Boolean Algebra: a useful mathematical system
for specifying and transforming logic functions.
We study Boolean algebra as foundation for
designing and analyzing digital systems!
BINARY VARIABLES
Recall that the two binary values have
different names:
True/False
On/Off
Yes/No
1/0
We use 1 and 0 to denote the two values.
Variable identifier examples:
A, B, y, z, or X1 for now
RESET, START_IT, or ADD1 later
LOGICAL OPERATIONS
The three basic logical operations are:
AND
OR
NOT
AND is denoted by a dot (·).
OR is denoted by a plus (+).
NOT is denoted by an overbar ( ¯ ), a single
quote mark (') after, or (~) before the variable.
Chapter 2 - Part 1 8
NOTATION EXAMPLES
Chapter 2 - Part 1 9
OPERATOR DEFINITIONS
Operations are defined on the values
“ 0" and "1" for each operator:
TRUTH TABLES
Truth table - a tabular listing of the values
of a function for all possible combinations
of values on its arguments
Writethe Truth tables for the basic logic
operations:
TRUTH TABLES
Truth table - a tabular listing of the values of
a function for all possible combinations of values
on its arguments
Write the Truth tables for the basic logic
operations:
TRUTH TABLES
Truth table - a tabular listing of the values of a function for
all possible combinations of values on its arguments
Example: Truth tables for the basic logic operations:
AND OR NOT
X YZ = X·Y X Y Z = X+Y X Z=X
0 0 0 0 0 0 0 1
0 1 0 0 1 1 1 0
1 0 0 1 0 1
1 1 1 1 1 1
Chapter 2 - Part 1
13
QUESTIONS
1. What is the difference between binary logic and
binary arithmetic?
2. What is 1+1 in binary logic and binary arithmetic?
• An arithmetic variable designates a number that may
consist of many digits.
• logic variable is always either 1 or 0.
binary arithmetic: 1 + 1 = 10 (read“one plus one is equal
to 2”), whereas in binary logic, we have 1 + 1 = 1 (read
“one OR one is equal to one”).
LOGIC GATES
Logic gates are electronic circuits that operate on one
or more input signals to produce an output signal.
Electrical signals such as voltages or currents exist
as analog signals having values over a given
continuous range, say, 0 to 3 V
In a digital system these voltages are interpreted to
be either of two recognizable values, 0 or 1
The gates are blocks of hardware that produce the
equivalent of logic‐1 or logic‐0 output signals if input
logic requirements are satisfied
LOGIC GATES
LOGIC GATES
The gates are blocks of hardware that produce the
equivalent of logic‐1 or logic‐0 output signals if input
logic requirements are satisfied
BASIC THEOREMS AND PROPERTIES
OF BOOLEAN ALGEBRA
This important property of Boolean algebra is called
the duality principle and states that every algebraic
expression deducible from the postulates of Boolean
algebra remains valid if the operators and identity
elements are interchanged.
If the dual of an algebraic expression is desired, we
simply interchange OR and AND operators and
replace 1’s by 0’s and 0’s by 1’s
QUESTION
What is the difference between a Postulate and
Theorem?
BASIC THEOREMS AND POSTULATES
BASIC THEOREMS AND POSTULATES
THEOREM 1(a): x + x = x.
OPERATOR PRECEDENCE:
The operator precedence for evaluating Boolean expressions is (1)
parentheses
(2) NOT
(3) AND
(4) OR.
BOOLEAN FUNCTIONS
Boolean algebra is an algebra that deals with binary
variables and logic operations.
A Boolean function described by an algebraic
expression consists of binary variables, the constants 0
and 1, and the logic operation Symbols.
For a given value of the binary variables, the function
can be equal to either 1 or 0.
BOOLEAN FUNCTIONS (CONT’)
A Boolean function can be represented in a truth
table. The number of rows in the truth table is 2n,
where n is the number of variables in the function
The truth table for
BOOLEAN FUNCTIONS (CONT’)
A Boolean function can be transformed from an algebraic
expression into a circuit diagram composed of logic gates
connected in a particular structure.
The logic‐circuit diagram (also called a schematic) for F1 is
shown in Fig. 2.1
BOOLEAN FUNCTIONS (CONT’)
There is only one way that a Boolean function can be
represented in a truth table.
However, when the function is in algebraic form, it can
be expressed in a variety of ways, all of which have
equivalent logic.
The particular expression used to represent the
function will dictate the interconnection of gates in the
logic‐circuit diagram.
By manipulating a Boolean expression according to
the rules of Boolean algebra, it is sometimes possible
to obtain a simpler expression for the same function
and thus reduce the number of gates in the circuit and
the number of inputs to the gate.
BOOLEAN FUNCTIONS (CONT’)
Consider the following Boolean function,
Draw a electronic circuit for F2
BOOLEAN FUNCTIONS (CONT’)
Simplify F2
Draw the Electronic circuit for F2
BOOLEAN FUNCTIONS (CONT’)
Compare the circuit diagrams before and after Simplification
Each circuit implements the same identical function, but
the one with fewer gates and fewer inputs to gates is
preferable because it requires fewer wires and components.
In general, there are many equivalent representations of a
logic function.
Finding the most economic representation of the logic is an
important design task.
ALGEBRAIC MANIPULATION
When a Boolean expression is implemented with
logic gates, each term requires a gate and each
variable within the term designates an input to the
gate.
We define a literal to be a single variable within a
term, in complemented or uncomplemented form.
QUESTION
How many terms and literals does F1 and F2 have?
ALGEBRAIC MANIPULATION (CONT’)
By reducing the number of terms, the number of
literals, or both in a Boolean expression, it is often
possible to obtain a simpler circuit.
The manipulation of Boolean algebra consists mostly of
reducing an expression for the purpose of obtaining a
simpler circuit.
Functions of up to five variables can be simplified by
the map method described in the next section
For complex Boolean functions and many different
outputs, designers of digital circuits use computer
minimization programs that are capable of producing
optimal circuits with millions of logic gates
DIGITAL LOGIC GATES
Boolean functions are expressed in terms of AND, OR,
and NOT operations, it is easier to implement a
Boolean function with these type of gates.
the possibility of constructing gates for the other logic
operations is of practical interest.
Factors to be weighed in considering the construction
of other types of logic gates are:
(1) the feasibility and economy of producing the gate with physical
components
(2) the possibility of extending the gate to more than two inputs
(3) the basic properties of the binary operator, such as commutativity and
associativity
(4) the ability of the gate to implement Boolean functions alone or in
conjunction with other gates.
EXTENSION TO MULTIPLE INPUTS
QUESTION
Are these Two circuits equal?
EXTENSION TO MULTIPLE INPUTS
The gates except for the inverter and buffer—can be
extended to have more than two inputs.
A gate can be extended to have multiple inputs if the
binary operation it represents is commutative and
associative.
The AND and OR operations, defined in Boolean
algebra, possess these two properties.
The difficulty with the NAND and NOR operators is
that they are not associative
To overcome this difficulty, we define the multiple NOR
(or NAND) gate as a complemented OR (or AND) gate
POSITIVE AND NEGATIVE LOGIC (CONT’)
The binary signal at the inputs and outputs of any
gate has one of two values, except during
transition.
One signal value represents logic 1 and the other
logic 0.
Since two signal values are assigned to two logic
values, there exist two different assignments of
signal level to logic value, as shown in Fig. 2.9 .
POSITIVE AND NEGATIVE LOGIC (CONT’)
Choosing the high‐level H to represent logic 1
defines a positive logic system.
Choosing the low‐level L to represent logic 1 defines
a negative logic system.
POSITIVE AND NEGATIVE LOGIC (CONT’)
K-MAPS
TERMINOLOGY
Minterm
Maxterm
QUESTION
Write down theTruth table and identify the Minterms
and Maxterms for the expression:
TERMINOLOGY
Sum of Product
Product of sum
Notational representation of f1= Sigma(1,4,7)
2-VARIABLE K-MAPS
A K-map is a diagram made up of squares, with
each square representing one minterm of the
function that is to be minimized.
There are four minterms for two variables; hence,
the map consists of four squares, one for each
minterm
2-VARIABLE K-MAPS (CONT’)
If we mark the squares whose minterms belong to a
given function, the two-variable map becomes
another useful way to represent any one of the 16
Boolean functions of two variables.
Represent the following function on a K-Map
2-VARIABLE K-MAPS (CONT’)
A group of two adjacent 1’s can be paired, and the
variable occurring in its complimented and un-
complimented form will be eliminated.
QUESTION
Obtain simplified expressions in each of the K-
map.
3-VARIABLE K-MAPS
There are eight minterms for three binary variables;
therefore, the map consists of eight squares.
the minterms are arranged, not in a binary sequence,
but in a sequence similar to the Gray code
The characteristic of this sequence is that only one
bit changes in value from one adjacent
column to the next
3-VARIABLE K-MAPS (CONT’)
3-VARIABLE K-MAPS (CONT’)
4-VARIABLE K-MAPS
The map for Boolean functions of four binary
variables (w, x, y, z) is shown in Fig below
4-VARIABLE K-MAPS (CONT’)
In choosing adjacent squares in a map, we must
ensure that
(1) all the minterms of the function are covered
when we combine the squares
(2) the number of terms in the expression is
minimized
(3) There are no redundant terms (i.e., minterms
already covered by other terms).
Sometimes there may be two or more expressions
that satisfy the simplification criteria.
4-VARIABLE K-MAPS (CONT’)
A prime implicant is a product term obtained by
combining the maximum possible number of
adjacent squares in the map.
If a minterm in a square is covered by only one prime
implicant, that prime implicant is said to be essential.
The prime implicants of a function can be
obtained from the map by combining all possible
maximum numbers of squares
4-VARIABLE K-MAPS (CONT’)
A single 1 on a map represents a prime implicant if it is
not adjacent to any other 1’s.
Two adjacent 1’s form a prime implicant, provided that
they are not within a group of four adjacent squares.
Four adjacent 1’s form a prime implicant if they are not
within a group of eight adjacent squares, and so on.
The essential prime implicants are found by looking at
each square marked with a 1 and checking the number
of prime implicants that cover it.
The prime implicant is essential if it is the only
prime implicant that covers the minterm
Octets Quadruples Pairs Single
QUESTION
Find all the prime implicants of
QUESTION
Simplify:
PRODUCT-OF-SUMS SIMPLIFICATION
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.
The complement of a function is represented in the map
by the squares not marked by 1’s.
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
(i.e., of F represented as F / ).
The complement of F / gives us back the function F ‘in
product-of-sums form (a consequence of De-Morgan’s
theorem)