Chapter 2

advertisement
CHAPTER 2
BOOLEAN ALGEBRA LOGIC AND LOGIC GATES
Basic Theorems and Properties of Boolean Algebra:
Duality
- We simply interchange OR and AND operators and replace 1’s by 0’s and 0’s by 1’s.
Also, the duality principle states that if two Boolean expressions are equal, then their
duals are also equal. Ex: X + 0 = X & X ·1 = X
Basic Theorem
- Boolean Addition:
o x + 0 = 0 + x = x (0 is called the additive identity)
o x + 1 = 1 (X = AB + C  AB + C + 1 = 1)
- Boolean Multiplication
o x·0=0
o x · 1 = 1· x = x (1 is called the multiplicative identity)
- Idempotent Laws
o x+x=x
o xx=x
- Involution Law
o (x')' = x
- Laws of Complement
o x + x' = 1
o x · x' = 0
- Commutative Laws
o x+y=y+x
o xy=yx
- Associative Laws
o (x + y) + z = x + (y + z) = x + y + z
o (x · y) · z = x (y · z) = x · y · z
- Distributive Law
o x · (y + z) = (x · y) + (x · z)
o x + (y · z) = (x + y) · (x + z)
- DeMorgan's Laws
o (x + y)' = x' y'
o (x · y)' = x' + y'
- Consensus Law
o x · y + x' · z + y · z = x · y + x' · z
The term yz is referred to as the "consensus term". A consensus term is a redundant
term and it can be eliminated. Given a pair of terms for which a variable appears in one
term and the complement of that variable in another term, the consensus term is formed
by multiplying the two original terms together, leaving out the selected variables and its
complement.
-
A field is a set of elements, together with two binary operators.
-
-
The set of real numbers together with the binary operators + and · form the field of
real numbers.
The field of real numbers is the basis for arithmetic and ordinary algebra. The
operators and postulates have the following meanings:
o The binary operator + defines addition.
o The additive identity is 0.
o The additive inverse defines subtraction.
o The binary operator · defines multiplication.
o The multiplicative identity is 1.
o The multiplicative inverse of a = 1/a defines subtraction, i.e. a · 1/a = 1.
o The only distributive law applicable is that of · over +:
 a · (b + c) = (a · b) + (a · c)
A two-valued Boolean Algebra is defined on a set of 2 elements, B = {0, 1}, with
rules for the 2 binary operators + and ·
x y
0
0
1
1
x· y
0
1
0
1
0
0
0
1
x y z
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
x y
0
0
1
1
y+z
0
1
0
1
0
1
0
1
x+y
0
1
0
1
0
1
1
1
x · (y + z)
0
1
1
1
0
1
1
1
0
0
0
0
0
1
1
1
x·y
x
x’
0
1
1
0
x·z
(x · y) + (x · z)
0
0
0
0
0
1
0
1
0
0
0
0
0
1
1
1
0
0
0
0
0
0
1
1
Truth table to verify the Distributive Law.
A) X
Y
X+Y
X’ + Y’
0
0
1
1
0
1
0
1
0
1
1
1
1
0
0
0
Truth table to verify DeMorgan’s Law.
(x + y)’ = x’ y’
B)
X
Y
X’
Y’
X’ · Y’
0
0
1
1
0
1
0
1
1
1
0
0
1
0
1
0
1
0
0
0
(x · y)’ = x’ + y’
Logic Gates
Operator Precedence
-
The operator precedence for evaluating Boolean expressions is (1) (), (2) NOT, (3)
AND, and (4) OR. Ex: (x + y)’.
Venn Diagram
- See Fig. 2 – 1, 2 – 2 Page 44.
Boolean Functions
- A Boolean function is an expression formed with binary variables, the 2 two binary
operators OR and AND, and unary operator NOT, parentheses, and an equal sign.
For a given value of the variables, the function can be either 0 or 1.
- Ex: F1 = xyz’. The function is equal to 1 if x = 1 and y = 1 z’ = 1; otherwise F1 = 0.
- To represent a function in a truth table, we a list of 2n combinations of 1’s and 0’s of
n binary variables and a column to show the combination for which the function = 0,
1.
Table 2-2
Truth tables for F1 = xyz’, F2 = x + y’z, F3 = x’y’z + x’yz + xy’, and F4 = xy’ + x’z
-
x
y
z
F1
F2
F3
F4
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
0
0
0
0
0
1
0
0
1
0
0
1
1
1
1
0
1
0
1
1
1
0
0
0
1
0
1
1
1
0
0
Two functions of n binary values are said to be equal if they have the same value
for all possible 2n combination of the n variables.  F3 and F4
A Boolean function may be transformed from an algebraic expression into a logic
diagram composed of AND, OR, and NOT gates. Fig. 2 – 4.
Since are F3 and F4 equal Boolean functions, it is more economical to implement
the F4 form than the F3 form.
Algebraic Manipulation
-
-
A literal is a primed or unprimed variable. When a Boolean function is implemented
with logic gates. Each literal in the function designates an input to a gate, and each
term is implemented with a gate.
The number of literals in a Boolean function can be minimized by algebraic
manipulations.
There are no specific rules to follow that will guarantee the final answer.
The only method available is a cut-and-try procedure employing postulates, basic
theorems, and other manipulation method that becomes familiar with use.
Ex:
Simplify the following Boolean functions to a minimum number of literals.
x + x’ y = (x + x’) (x + y) = 1 (x + y) = x + y
x (x’ + y) = (x x’) + (x y) = 0 + xy = xy
x’ y’ z + x’ y z + x y’ = x’ z (y + y’) + x y’ = x’ z + x y’
x y + x’ z + y z = x y + x’ z + y z (x + x’)
= x y + x’ z + x y z + x’ y z
= x y (1 + z) + x’ z (1 + y)
= x y + x’ z
5. (x + y) (x’ + z) (y + z) = (x + y) (x’ + z) by duality from function 4.
1.
2.
3.
4.
(x + y) (x’ + z) (y + z) = (x · x’ + x · z + x’ · z + y · z) (y + z)
0
= (x · y· z + x · z · z + x’ · y · y + x’ · y · z + y · z · z + y · z ·
z)
z
y
z
z
= (x · y· z + x · z + x’ · y + x’ · y · z + y · z)
= x · z (1 + y) + x’ · y (1 + z) + y · z
=
1
1
= x · z + x’ · y + y · z
= x · x’ + x · z + x‘ · y + y · z
=0
= (x + y) (x’ + z)
-
Functions 1 and 2 are the duals of each other and use dual expressions in
corresponding steps.
Complement of a function
-
The complement of a function F is F’ and is obtained from an interchange of 0’s for
1’s and 1’s for 0’s in the values of F.
The complement of a function may be derived algebraically through DeMorgan’s
-
(A + B + C + D + … + F)’
(A B C D … F)’
-
The generalized form of DeMorgan’s theorem states that the complement of a
function is obtained by interchanging AND and OR operates and complementing
each literal.
F1 = x’ y z’ + x’ y’ z
F’1 = (x + y’ + z) (x + y + z’)
F2 = x (y’ z’ + y z)
F’2 = x’ + (y + z) (y’ + z’)
-
-
= A’ B’ C’ D’ … F’
= A’ + B’ + C’ + D’ + … + F’
Representations of A Function
-
A function can be specified or represented in any of the following ways:
o A truth table
o A circuit
o A Boolean expression
 SOP (Sum Of Products)
 POS (Product of Sums)
 Canonical SOP
 Canonical POS
Canonical And Standard Forms
Minterms and Maxterms
- A binary variable may appear in normal form (x) or in complement form (x’)
- Ex: Two binary variables x and y combined with an AND gate. There are four
combinations: x’y’, x’y, xy’, & xy.
- Each of these four AND terms represents one of the distinct areas in the Venn
diagram and is called a minterm or a standard product.
- Similarly, n variables can be combined to form 2n minterms. The 2n different
minterms may be determined by a method similar to the table shown below.
- Each minterm is obtained from an AND term of the n variables, with each variable
being primed if the corresponding bit of the binary number is a 0 and unprimed if a 1.
- In a similar fashion, n variables can be combined to form 2n maxterms or standard
sums. The 2n different maxterms may be determined by a method similar to the table
shown below.
- Each maxterm is obtained from an OR term of the n variables, with each variable
being primed if the corresponding bit of the binary number is a 1 and unprimed if a 0.
- Each maxterm is the complement of its corresponding minterm, and vice versa.
- A Boolean function may be expressed algebraically from a given truth table by
forming a minterm for each combination of the variables that produces a 1 in the
function and then taking the OR of those terms.
Minterms
Maxterms
x
y
z
Term
Designation Term
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
x' y' z'
x' y' z
x' y z'
x' y z
x y' z'
x y' z
x y z'
xyz
m0
m1
m2
m3
m4
m5
m6
m7
x+y+z
x + y + z'
x + y' + z
x + y' + z'
x' + y + z
x' + y + z'
x' + y' + z
x' + y' + z'
Designation
M0
M1
M2
M3
M4
M5
M6
M7
-
Ex: the function in the following table is determined by expressing the combination of
001, 100, and 111 as x’y’z, xy’z’, and xyz. Since each one of these minterms results
in f1 =, we should have
f1 = x’y’z + xy’z’ + xyz = m1 + m4 + m7
-
Similarly, we can verify that
f2 = x’yz + xy’z + xyz’ + xyz = m3 + m5 + m6 + m7
-
The complement of f1 is “may be read from the truth table by forming a minterm for
each combination that produces a 0 in the function and then ORing those terms”:
f’1 = x’y’z’ + x’yz’ + x’yz + xy’z + xyz’
Functions of Three Variables
x
0
0
0
0
1
1
1
1
y
0
0
1
1
0
0
1
1
z
0
1
0
1
0
1
0
1
Function f1
0
1
0
0
1
0
0
1
Function f2
0
0
0
1
0
1
1
1
If we take the complement of f’1, we obtain the function f1:
f1 = (x + y + z) (x + y’ + z) (x + y’ + z’) (x’ + y + z’) (x’ + y’ + z)
= M0 · M2 · M3 · M5 · M6
- Similarly, it is possible to read the expression for f2 from the table:
f2 = (x + y + z) (x + y + z’) (x + y’ + z) (x’ + y + z’) (x’ + y + z)
= M0 · M1 · M2 · M4
-
-
Boolean functions expressed as a sum of minterms or products of maxterms are
said to be in canonical form
Sum of Minterms
Truth Table for F = A + B’ C
A
B
C
F
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
0
1
1
1
1
F (A, B, C) = Σ (1, 4, 5, 6, 7)
Ex: Express the function F = A + B’C in a sum of minterms. The function has 2 variables. Term A is
missing 2 variables:
A = A (B + B’) = AB + AB’
Now A is missing 1 variable
A = AB (C + C’) + AB’ (C + C’)
A = ABC + ABC’ + AB’C + AB’C’
B’C is missing one variable:
B’C = B’C (A + A’) = AB’C + A’B’C
Now we combine terms
F = ABC + ABC’ + AB’C + AB’C’ + AB’C + A’B’C
= A’B’C + AB’C’ + AB’C + ABC’ + ABC
= m1 + m4 + m5 + m6 + m7
F (A, B, C) = Σ (1, 4, 5, 6, 7)
Product of Maxterms
Truth Table for F = xy + x’z
x
y
z
F
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
0
1
1
The sum of minterms is
F (x, y, z) = Σ (1, 3, 6, 7)
The sum of maxterms is
F (x, y, z) = ∏ (0, 2, 4, 5)
Ex: Express the Boolean function F = xy + x’z in a product of maxterms. Convert the function into OR
terms using the distributive law:
F = xy + x’y = (xy + x’) (xy + z)
= (x + x’) (y + x’) (x + z) (y + z)
= (x’ + y) (x + z) (y + z)
The function has 3 variables: x, y, & z. Each OR term is missing one variable:
x’ + y = x’ + y + zz’ = (x’ + y +z) (x’ + y + z’)
x + z = x + z + yy’ = (x + y + z) (x + y’ + z)
y + z = y + z + xx’ = (x + y + z) (x’ + y + z’)
Combine the terms and remove the terms that appear more than once:
F = (x + y + z) (x + y’ + z) (x’ + y +z) (x’ + y + z’)
= M0 + M2 + M4 + M5
The function is expressed as follows: F (x, y, z) = ∏ (0, 2, 4, 5)
Conversion between Canonical Forms
-
Ex: The complement of
F (A, B, C) = Σ (1, 4, 5, 6, 7) is
F’ (A, B, C) = Σ (0, 2, 3) = m0 + m2 + m3
-
If we apply the complement of F’ using DeMorgan’s theorem, we obtain F in a different form:
F = (m0 + m2 + m3)’ = m’0 · m’2 · m’3 = M0 + M2 + M3 = ∏ (0, 2, 3)
-
The last conversion follows from the definition of minterms and maxterms. It is clear that the following
relation holds true: m’j = Mj  the maxterm with subscript j is a complement of the minterm with the
same subscript j, and vice versa.
-
To convert from one canonical form to another, interchange the symbol Σ and ∏ and list those
numbers missing from the original form.
Integrated Circuits “IC”
- It’s a small silicon semiconductor, called a chip, containing the electronic
components for the digital gates. The gates are interconnected inside the chip to
form the required circuit.
Levels of Integration
- Small-scale Integration (SSI): contains several independent gates in a single
package. The number of gates is usually fewer than 10.
- Medium-scale Integration (MSI): have a complexity between 10 and 100 gates in a
single package. They perform specific digital operations such as decoders, adders,
and multiplexers.
- Large-scale Integration (LSI): contains between 100 and 1000s gates in a single
package. The number of gates is usually fewer than 10. They include processors,
memory chips, and programmable logic devices.
- Very Large-scale Integration (VLSI): contains thousands of gates in a single
package. Examples are large memory arrays and complex microcomputer chips.
Download