0% found this document useful (0 votes)
37 views7 pages

Self-Study Module S3: Combinational Design Basics

This module provides an overview of combinational logic design basics, including Boolean algebra and Karnaugh mapping. It discusses Boolean expressions, duality, operators and identities. DeMorgan's theorems relate logic gates by inverting inputs. Sum-of-products and product-of-sums forms are introduced. Karnaugh mapping is used to minimize logic functions into implementations using AND, OR and INVERT gates. The module explains terms like minterms and maxterms and how to set up Karnaugh maps for variable combinations. While manual optimization does not scale, it illustrates how automated tools work.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
37 views7 pages

Self-Study Module S3: Combinational Design Basics

This module provides an overview of combinational logic design basics, including Boolean algebra and Karnaugh mapping. It discusses Boolean expressions, duality, operators and identities. DeMorgan's theorems relate logic gates by inverting inputs. Sum-of-products and product-of-sums forms are introduced. Karnaugh mapping is used to minimize logic functions into implementations using AND, OR and INVERT gates. The module explains terms like minterms and maxterms and how to set up Karnaugh maps for variable combinations. While manual optimization does not scale, it illustrates how automated tools work.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 7

Self-Study Module S3: Combinational Design Basics

Slide 1
In this module, we’ll review a few basics of combinational design – in particular, some basic
statements of Boolean algebra and the techniques behind Karnaugh mapping.

As the course develops, we’ll formalize certain ideas to help us make map minimization more
algorithmic, but in fact we’re going to do this just in time to begin wishing Karnaugh mapping
away as a technique for deriving logic functions for implementation.

Slide 2
Before we proceed with reviewing the various statements of the Boolean algebra, it’s nice to
have an organizing principle. The Boolean algebra has a duality principle. According to this
principle, a true statement has a dual that we can derive through two transformations:
changing all the ORs to ANDs (and vice versa) and changing all the 0s to 1s (and vice versa).

The duality principle is important because it allows us to organize (at least, generally) the
statements of the Boolean algebra into pairs that present core ideas of the system. It also
means that if – God forbid – we had to memorize all the statements of the system, we could
get away with memorizing approximately half of them, along with one more piece of
information – the duality transformations. The other half of them would fall right into our laps.
Self-Study Module S3: Combinational Design Basics

Slide 3
In the first digital systems course, we didn’t make a big deal about the difference between
postulates and theorems, and we’re not really going to do so here either. Briefly, postulates
are statements that we accept as true without proof, while theorems are statements that we
can prove as being true using postulates and other proven theorems. In a sense, the
postulates of the Boolean algebra are true because of the way the system was formulated,
while theorems are true because we can figure out that they’re true.

These ten postulates appear in five dual pairs. They express five properties, each of which has
an OR form and an AND form.

Each of the operators has an identity element: a value that causes the result of the operation
to equal the value of the other operand regardless of what it is. The OR identity element is 0 –
that is, X OR 0 is X. The AND identity element is 1 – that is, X AND 1 is X.

The inverse property expresses what happens when a value and its complement are applied to
each operator. X OR X complement is 1. X AND X complement is 0.

Just like our elementary algebra, The Boolean algebra is commutative, associative, and
distributive. But the Boolean algebra exhibits a form of distribution that elementary algebra
does not. In elementary algebra, multiplication distributes over addition, but addition doesn’t
distribute over multiplication. That is, 2 times the quantity 4 plus 3 equals 2 times 4 plus 2
times 3, but 2 plus the quantity 4 times 3 does not equal 2 plus 4 times 2 plus 3.

In contrast, because AND distributes over OR, the duality principle also establishes that OR
distributes over AND. In fact, this form – X OR Y AND Z is X OR Y AND X OR Z – is very useful in
proving Boolean algebra theorems.
Self-Study Module S3: Combinational Design Basics

Slide 4
Here are a few “basic” theorems of the Boolean algebra.

In a manner that is similar to the identity principle, each of the operators also has a null
element: a value that causes the result of the operation to always have the same value. The OR
null element is 1 – that is, X OR 1 is 1. The AND null element is 0 – that is, X AND 0 is 0.

Another way to view algebraic principles is as answers to questions of the form “What would
happen if I did this thing with an unknown value?” The idempotency theorem answers the
question “What would happen if I applied the same value as operands to an operator?”
According to the theorem, that same value results – that is, X OR X is X, and X AND X is X.

Perhaps the first thing that makes the involution theorem notable is that it doesn’t have a
dual, because it doesn’t use AND or OR. Past that, the idea that complementing something
twice is the same as not complementing it at all might not be attention-grabbing, but
involution and DeMorgan’s Theorems together form the basis for most circuit
transformations.

DeMorgan’s Theorems form a basis for relating certain primitive and complementary logic
gates. In the first case, we see that a NOR gate is the same as an AND gate with all its inputs
inverted. Likewise, a NAND gate is the same as an OR gate with all its inputs inverted.

Slide 5
The next two slides illustrate DeMorgan’s Theorems from the standpoint of gate symbols.
First, in the two-input case we see that an AND gate with both of its inputs inverted is
equivalent to a NOR gate.

Slide 6
Here, we see that an OR gate with both of its inputs inverted is equivalent to a NAND gate. It’s
worth noting that the illustrations shown here generalize to any number of inputs.
Self-Study Module S3: Combinational Design Basics

Slide 7
We’ll make a connection between DeMorgan’s Theorems and function forms in a moment, but
before that it’s worth reviewing that a sum-of-products circuit is a two-level circuit having a
first level of AND gates unified by an OR gate.

We no longer emphasize product-of-sums circuits, but it probably doesn’t take a lot of


imagination to picture a circuit where a first level of OR gates is unified by an AND gate. We
can derive a product-of-sums circuit from the same Karnaugh maps that we’ve used to derive
sum-of-products circuits. The basis for both the NAND and NOR gates being functionally
complete stems from this fact. If the same function has both SOP and POS forms, then we only
have to show that each form can be transformed so that it uses one type of gate. Let’s do this.

Slide 8
An SOP circuit appears at the left. The involution theorem says that if we complement the AND
gate outputs and the OR gate inputs, the function doesn’t change. Don’t get hung up on the
inverter symbols that look backwards; that’s just an alternative symbol. Remember – it’s the
inverting “bubble” that we care about most.

Removing the buffer portions and merging the gates with bubbles reveals that the first level of
AND gates have become NAND gates. The OR gate has all its inputs inverted. According to
DeMorgan’s Theorem, it is also a NAND gate.

Slide 9
All the same logic applies in this NOR gate mapping, except that we’re performing it on a POS
circuit. This time, the OR gates on the first level become NOR gates, and an AND gate with all
its inputs inverted likewise becomes a NOR gate according to DeMorgan’s Theorem.
Self-Study Module S3: Combinational Design Basics

Slide 10
Before we turn our attention to Karnaugh map minimization, it’s worth reviewing a few
relevant terms.

A literal is a way for expressing a variable. Every variable has two literal forms:
uncomplemented and complemented. It might seem like nitpicking, but the difference
between a variable and a literal is important. The variable B can take on one of two values: 0
and 1. The literal B represents a specific value in the product term or sum term where it
appears.

A minterm of n variables is a product term where a literal form of each variable appears
exactly once. In some function of variables A, B, C, and D, A’BC’D is a minterm. AB’D is not a
minterm of that function, because it doesn’t contain a literal form of variable C.

A maxterm of n variables is a sum term where a literal form of each variable appears exactly
once. In some function of variables A, B, C, and D, A’ + B + C’ + D is a maxterm. A + B’ + D is not
a maxterm of that function. As before, that sum term doesn’t contain a literal form of variable
C.

Slide 11
This truth table shows the possible minterms and maxterms of a three-variable function.

The minterms of a function represent the variable combinations that cause the function to
output 1. By convention, if a minterm contains a complemented literal, it means that the
variable equals 0. If a minterm contains an uncomplemented literal, it means that the variable
equals 1.

The maxterms of a function represent the variable combinations that cause the function to
output 0. By convention, if a maxterm contains a complemented literal, it means that the
variable equals 1. If a maxterm contains an uncomplemented literal, it means that the variable
equals 0.

This might seem like a confusing flip-flop, but if minterms and maxterms represent opposite
values, then in a sense DeMorgan’s theorem applies. When the operator changes from AND to
OR, the literals also change.
Self-Study Module S3: Combinational Design Basics

Slide 12
In your first digital systems course, you relied upon map minimization as a technique for
producing logic functions from models that contained their minterms and maxterms. As this
course develops, we’ll want to quickly end our reliance on both map minimization and two-
level forms as the sole means for deriving an implementation. Tools like Karnaugh mapping
don’t scale well, and not every logic function is easiest to derive or represent as a two-level
circuit.

Nonetheless, manual techniques like map minimization do illustrate certain aspects of how
automated design tools optimize logic, so it’s worth having a basic understanding of the
fundamentals.

Slide 13
Here’s a four-variable Karnaugh map. I elaborate on the principles of five and six-variable
Karnaugh maps in a document on the Canvas site, but the four-variable map provides a basis
for discussing what to do and what not to do when using a map for minimization.

Note that the minterms are arranged in this map in the way they are because of how the
variables are placed. If you change how the variables are labeled, the minterm positions
change as well. This can have consequences on the correctness of your equations if you do
one without doing the other.

The key is to always mark, label, and group your minterms consistently with the variable
placement.
Self-Study Module S3: Combinational Design Basics

Slide 14
The first step to correctly deriving a logic function from a Karnaugh map is filling out the map
correctly. Even in the few cases where students in this course must use Karnaugh maps, I still
see them do this step incorrectly at times. Pay attention to how the map is labeled!

The second step is to group the minterms. Groups must be properly shaped and sized. Your
goal is to minimize the number of maximally-sized groups. We will talk more about how to
formalize the process of map minimization; when we do, formalizing this step will be
important.

The final steps involve forming a function from correctly-named groups. Each group of
minterms is a product term containing all the literals that are common to the group’s
members. The final function is a sum of those product terms.

Slide 15
Hopefully, completing this module has helped you to review certain basics of combinational
design. Our goal in this course is to transcend the need to use these basics in favor of design
and implementation techniques that scale better, but these ideas still form the foundation for
anything that we can do in a digital design framework.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy