2. Outline of Chapter 2 (Part a)
2.2 Basic Definitions
2.3 Axiomatic Definition of Boolean Algebra
2.4 Basic Theorems and Properties of Boolean Algebra
3. Algebras
What is an Algebra?
Mathematical system consisting of
» Set of elements
» Set of operators
» Axioms or postulates
Why is it important?
Defines rules of “calculations”
Example: arithmetic on natural numbers
Set of elements: N = {1,2,3,4,…}
Operator: +, –, *
Axioms: associativity, distributivity, closure, identity
elements, etc.
4. Note: operators with two inputs are called binary
Does not mean they are restricted to binary numbers!
Operator(s) with one input are called unary
A binary operator defined on a set S is a rule that
assigns, to each pair of elements from S, a unique
element from S.
Example a * b = c we say that * is a binary operator iff
» It specifies a rule for finding c from the pair (a,b)
» a,b,c S
Algebras (cont.)
5. Algebras (cont.)
Most common axioms (postulates):
1. Closure
2. Associative law
3. Commutative law
4. Identity element
5. Inverse
6. Distributive law
6. Algebras (cont.)
1. Closure: a set S is closed with respect to a binary operator if,
for every pair of elements of S, the binary operator specifies a
rule for obtaining a unique element of S.
Example:
» S=N={1,2,3,...}
» ={+,×} not {-}
2. Associative law: a binary operator on a set S is said to be
associative whenever:
(x y) z = x (y z) for all x, y, z S
Example:
» S=N={1,2,3,...}
» ={+,×} not {-}
7. Algebras (cont.)
3. Commutative law: a binary operator on a set S is said to be
commutative whenever
x y = y x for all x, y S
Example:
» S=N={1,2,3,...}
» ={+,×} not {-}
4. Identity element: a set S is said to have an identity element with
respect to a binary operation on S if there exists an element e
S with the property that:
e x = x e = x for every x S
Example:
» S=I={…,-1,0,1,...}
» ={+}, e = 0
» N does not have an identity element since 0 is excluded from the set
8. Algebras (cont.)
5. Inverse: a set having S the identity element e with respect to the
binary operator is said to have an inverse whenever, for every
x S, there exists an element y S such that
x y = e
Example:
» S=I={…,-1,0,1,...}
» ={+}, e = 0
» If y + x = 0 then y= - x
6. Distributive law: if and ☉ are two binary operators on a set
S, is said to be distributive over ☉ whenever
x (y ☉ z) = (x y) ☉(x z)
Example:
» S=I={…,-1,0,1,...} , =×, ☉ = +
9. Boolean Algebra
We need to define algebra for binary values.
Boolean Algebra was developed by George Boole (Mathematical
theory of logic) in the 1854.
E.V. Huntington formulated the axioms for the formal definition
of Boolean Algebra in 1904.
C.E.Shannon introduced a two-valued Boolean algebra called
switching algebra that represented the the properties of bistable
electrical switching circuits.
10. Boolean Algebra (cont.)
Boolean Algebra:
» Set of elements B, at least two elements (0,1).
− Example: B={0,1,11,10}
» Set of operators:
− Unary: NOT (-)
− Binary: OR (+), AND (・)
» Axioms or postulates:
− Huntington (6 axioms, see next slides).
Boolean variable: a variable x is a Boolean variable if :
value of xB
Literal: a variable or its complement
Boolean Function: expression made up from Boolean variables
and operation.
11. Outline of Chapter 2
2.2 Basic Definitions
2.3 Axiomatic Definition of Boolean Algebra
2.4 Basic Theorems and Properties of Boolean Algebra
12. Axiomatic Definition of Boolean
Algebra
1. Closure: Closure with respect to operator + and operator ・.
2. Identity element (e x = x e = x) :
0 for operator +
1 for operator ・
3. Commutative law with respect to + and operator ・:
x + y = y + x
x ・ y = y ・ x
4. Distributive law of ・ over +, and + over ・:
x ・ (y + z) = (x ・ y) + (x ・ z)
x + (y ・ z) = (x + y) ・(x + z)
13. Axiomatic Definition of Boolean
Algebra
5. Complement: for every of a x B, there exist an element x’
B, such that:
x + x’ = 1
x ・ x’ = 0
Complement is not valid for ordinary algebra
6. There exists at least two elements x,yB , such that
xy
Huntington postulates do not include associative law, but it still holds for
boolean algebra.
The distributive law of + over ., is valid for boolean algebra but not for
ordinary algebra.
There is no additive or multiplicative inverses; therefore there are no
subtraction or division operations.
14. Axioms of Two-Valued Boolean
Algebra
Two-valued Boolean Algebra:
» B={0,1}
» Set of operators:
− Unary: NOT (-)
− Binary: OR (+), AND (・)
» Huntington axioms or postulates:
−Verify that Huntington axioms hold? (next slides)
And
x y x.y
0 0 0
0 1 0
1 0 0
1 1 1
OR
x y x + y
0 0 0
0 1 1
1 0 1
1 1 1
NOT
x x'
0 1
1 0
15. Verify that Huntington axioms hold
1. Closure? Yes, from tables all operations results {0,1} B
2. Identity? Yes, 0 for operator + and 1 for operator ・
0+0 = 0 0+1 = 1+0 = 1;
1・1 = 1 1・0 = 0・1 = 0.
3. Commutative?
Yes, for +: 0 + 0 = 0, 1 + 1 = 1, 0 + 1 = 1 + 0 = 1
Yes, for ・: 0 ・ 0 = 0, 1 ・ 1 = 1, 0 ・ 1 = 1 ・ 0 = 0
x ・ y = y・x
16. Verify that Huntington axioms hold
4. Distributivity? Yes, check using a truth table for・ over +, and +
over ・.
x y z y+z x.(y+z) x.y x.z (x.y)+(x.z)
0 0 0 0 0 0 0 0
0 0 1 1 0 0 0 0
0 1 0 1 0 0 0 0
0 1 1 1 0 0 0 0
1 0 0 0 0 0 0 0
1 0 1 1 1 0 1 1
1 1 0 1 1 1 0 1
1 1 1 1 1 1 1 1
17. Verify that Huntington axioms hold
5. Complement?
Yes, x + x’ = 1 : 0 + 0’= 0 + 1 = 1 ; 1 + 1’= 1 + 0 = 1
Yes, x ・ x’ = 0 : 0 ・ 0’= 0 ・ 1 = 0 ; 1 ・ 1’= 1 ・ 0 = 0
6. There exists at least two elements x,yB , such that
xy
Yes, 01
18. Outline of Chapter 2 (Part a)
2.2 Basic Definitions
2.3 Axiomatic Definition of Boolean Algebra
2.4 Basic Theorems and Properties of Boolean Algebra
19. Basic Theorems and Properties of
Boolean Algebra
The principle of duality is an important concept. This says that
if an expression is valid in Boolean algebra, the dual of that
expression is also valid.
To form the dual of an expression, interchange + (OR)
operators and . (AND) operators, and replace 1’s with 0’s, and
0’s with 1’s.
Form the dual of the expression
a + (bc) = (a + b)(a + c)
Following the replacement rules…
a(b + c) = ab + ac
Take care not to alter the location of the parentheses if they are
present.
20. Basic Theorems and Properties of
Boolean Algebra Cont.
Huntington’s postulates define some rules
Need more rules to modify algebraic expressions
Theorems that are derived from postulates
What is a theorem?
A formula or statement that is derived from postulates (or other proven
theorems)
Basic theorems of Boolean algebra
Theorem 1 (a): x + x = x (b): x · x = x
Looks straightforward, but needs to be proven !
Post. 1: closure
Post. 2: (a) x+0=x, (b) x·1=x
Post. 3: (a) x+y=y+x, (b) x·y=y·x
Post. 4: (a) x(y+z) = xy+xz,
(b) x+yz = (x+y)(x+z)
Post. 5: (a) x+x’=1, (b) x·x’=0
22. Basic Theorems and Properties of
Boolean Algebra Cont.
We can only use
Huntington postulates:
Show that x+x=x.
x+x = (x+x)·1 by 2(b)
= (x+x)(x+x’) by 5(a)
= x+xx’ by 4(b)
= x+0 by 5(b)
= x by 2(a)
Q.E.D.
We can now use Theorem 1(a) in future proofs
Post. 2: (a) x+0=x, (b) x·1=x
Post. 3: (a) x+y=y+x, (b) x·y=y·x
Post. 4: (a) x(y+z) = xy+xz,
(b) x+yz = (x+y)(x+z)
Post. 5: (a) x+x’=1, (b) x·x’=0
23. Operator Precedence
The operator precedence for evaluating Boolean Expression is
Parentheses
NOT
AND
OR
Examples
x y' + z
(x y + z)'
26. Outline of Chapter 2
2.5 Boolean Functions
2.6 Canonical and Standard Forms
2.7 Other Logic Operations
2.8 Digital Logic Gates
27. Boolean Functions
A Boolean function expresses the logical relationship between
binary variables and is evaluated by determining the binary value
of the expression for all possible values of the variables.
A Boolean function is an algebraic expression formed of:
Binary variables
The constants 0 and 1
The logic operation symbols
For a given value of the binary variables, the function can be
equal to either 0 or 1.
Examples
F1 (x,y,z) = F1= x y z'
F2 (x,y,z) = F2= x + y'z
F3 (x,y,z) = F3= x' y' z + x' y z + x y'
F4 (x,y,z) = F4= x y' + x' z
28. Boolean function representation
Example 1
F2(x,y,z) = F2= x + y'z
A boolean function can be represented in a truth table, where the
number of rows 2n, for a function of n variables.
A boolean function can be represented by a circuit diagram.
x Y z F2
0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 0
1 0 0 1
1 0 1 1
1 1 0 1
1 1 1 1
y'
y'z
F2= x + y'z
29. Boolean function representation
Example 3
F4 (x,y,z) = F4= x y' + x' z
x y z F4
0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 1
1 0 0 1
1 0 1 1
1 1 0 0
1 1 1 0
x'
y'
xy'
x'z
F4= x y' + x' z
30. Boolean function representation
Example 2
F3 (x,y,z) = F3= x' y' z + x' y z + x y'
What is the truth table?
What is circuit diagram?
x y z F3
0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 1
1 0 0 1
1 0 1 1
1 1 0 0
1 1 1 0
x'
y' x' y'z
x' yz
xy '
F3= x' y' z + x' y z + x y'
31. Boolean function representation
We will use Logisim software as a tool
It is free software you can download from
http://sourceforge.net/projects/circuit/
Or I can give you it
Try to check circuit diagram of examples against truth table as
practice
32. Algebraic Manipulation
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, which
reduces the cost of the circuit.
To minimize Boolean expressions
Literal: a primed or unprimed variable (an input to a gate)
Term: implemented with a gate.
The minimization of the number of literals and the number of terms → a
circuit with less equipment
(no specific rules to follow) for this problem
33. Algebraic Manipulation
Examples
F (x,y,z) = F = x' y' +xyz + x' y
= x'(y'+y) + xyz
= x' + xyz
= (x' + x) (x' + yz)
= 1 (x' + yz)
= x' + yz
M (x,y) = M = x+x'y
= (x+x')(x+y)
= 1 (x+y)
= x+y
34. Lets compare the circuits of
F = x' y' +xyz + x' y
Here are 2 different but equivalent circuits of F.
The one with fewer gates is better:
Less cost to build
Less power consumption
But, needed some work to find the simplification
35. Complement of a Function
A complement of a function F is F’ can be either obtained by:
Truth table : An interchange of 0's for 1's and 1's for 0's in the
value of column of F
Algebraically: An interchange of AND with OR & (OR with
And) operators and complementing each literal. (DeMorgan's
theorem)
» (A+B+C+D+ ... +F)' = A'B'C'D'... F'
» (ABCD ... F)' = A'+ B'+C'+D' ... +F‘
A simpler procedure to derive the complement function is to take
the dual of the function and complement each literal.
36. Complement of a Function
Example
Give the complement of the function F= [x(y'z'+yz)], by truth
table and algebraically?
Truth table:
x y z F F'
0 0 0 0 1
0 0 1 0 1
0 1 0 0 1
0 1 1 0 1
1 0 0 1 0
1 0 1 0 1
1 1 0 0 1
1 1 1 1 0
Algebraically:
F' = [x(y'z'+yz)]'
= x' + (y'z'+yz)'
= x' + (y'z')' (yz)‘
= x' + (y+z) (y'+z')
= x' + yz‘+y'z
Using Dual
Dual of F = x + (y‘+ z‘ ) (y+z)
F ' = x' + (y+z) (y'+z')
37. Outline of Chapter 2
2.5 Boolean Functions
2.6 Canonical and Standard Forms
2.7 Other Logic Operations
2.8 Digital Logic Gates
38. Minterms
A minterm (standard product): an AND term consists of all
literals in their normal form or in their complement form.
(from the truth table: x is primed if x=0, x is unprimed if x=1)
Example: Given two binary variables x and y, list all the
minterms.
n variables can be combined to form 2n
minterms.
Each minterm is true for exactly one combination of inputs.
(how?)
x y Minterm
0 0 m0=x'y'
0 1 m1=x'y
1 0 m2=xy'
1 1 m3=xy
39. Maxterms
A maxterm(standard sum): an OR term consists of all literals in
their normal form or in their complement form.
(from the truth table: x is primed if x=1, x is unprimed if x=0)
Example: Given two binary variables x and y, list all the
minterms.
n variables con be combined to form 2n
maxterms.
Each maxterm is false for exactly one combination of inputs.
(how?)
x y Maxterm
0 0 M0=x+y
0 1 M1=x+y'
1 0 M2=x‘+y
1 1 M3=x‘+y'
40. Minterm and Maxterm are related
Each maxterm is the complement of its corresponding minterm,
and vice versa. Mn ' = mn
Example: M0 ' = m0
41. Minterm and Maxterm (cont.)
Any Boolean function can be expressed by:
A truth table
Sum of minterms, where the function is equal to 1
f1 = x'y'z + xy'z' + xyz = m1 + m4 +m7 (Minterms)
f2 = x'yz+ xy'z + xyz'+xyz = m3 + m5 +m6 + m7 (Minterms)
42. Minterm and Maxterm (cont.)
The complement of a Boolean function:
The minterms that produce a 0
f1' = m0 + m2 +m3 + m5 + m6= x'y'z'+x'yz'+x'yz+xy'z+xyz'
f1 = (f1')'
= (x+y+z)(x+y'+z) (x+y'+z') (x'+y+z')(x'+y'+z)
= M0 M2 M3 M5 M6
Same to f2 :
f2 = (x+y+z)(x+y+z')(x+y'+z)(x'+y+z)=M0M1M2M4
43. Minterm and Maxterm (cont.)
Any Boolean function can be expressed as:
1. A sum of minterms (“sum” meaning the ORing of
terms).
2. A product of maxterms (“product” meaning the
ANDing of terms).
3. Both Boolean functions are said to be in Canonical
form (Why?).
Because each minterm or maxterm contains a
possible combination of all variables.
44. Sum of Minterms
Sum of minterms: there are 2n minterms and 22n combinations of
function with n Boolean variables.
Example 2.4: express F = A+BC' as a sum of minterms.
Either algebraically:
F = A+B'C = A (B+B') + B'C = AB +AB' + B'C = AB(C+C')
+ AB'(C+C') + (A+A')B'C =
ABC+ABC'+AB'C+AB'C'+A'B'C
F = A'B'C +AB'C' +AB'C+
ABC'+ ABC =
m1+m4+m5+m6+ m7
F(A, B, C) = S(1, 4, 5, 6, 7)
or, built the truth table first
45. Product of Maxterms
Product of maxterms: using distributive law to expand.
x + yz = (x + y)(x + z)
= (x+y+zz')(x+z+yy')
= (x+y+z)(x+y+z')(x+y'+z)
Example 2.5: express F = xy + x'z as a product of maxterms.
F = xy + x'z = (xy + x')(xy +z)
= (x+x')(y+x')(x+z)(y+z) = (x'+y)(x+z)(y+z)
x'+y = x' + y + zz' = (x'+y+z)(x'+y+z')
F = (x+y+z)(x+y'+z)(x'+y+z)(x'+y+z') = M0M2M4M5
F(x, y, z) = P(0, 2, 4, 5)
46. Conversion between Canonical Forms
The complement of a function expressed as the sum of minterms
equals the sum of minterms missing from the original function.
F(A, B, C) = S(1, 4, 5, 6, 7)
Thus, F'(A, B, C) = S(0, 2, 3)
By DeMorgan's theorem
F(A, B, C) = P(0, 2, 3)
F'(A, B, C) =P(1, 4, 5, 6, 7)
mj' = Mj
Sum of minterms = product of maxterms
Interchange the symbols S and P and list those numbers
missing from the original form
» S of 1's
» P of 0's
47. Conversion between Canonical Forms Cont.
Example
F = xy + xz
F(x, y, z) = S(1, 3, 6, 7)
F(x, y, z) = P (0, 2, 4, 5)
To convert from one canonical
form to another, interchange the
Symbols S and P and list
those numbers missing
from the original form.
48. Standard Forms
Canonical forms are very seldom.
Another way to express Boolean functions is standard form.
Standard forms: the terms that form the function may contain
one, two, or any number of literals.
Sum of products
Product of sums
sum of products (SOP) containing AND terms, called product
terms, with one or more literals each. The sum denotes the ORing
of these terms. An
F1 = y' + xy+ x'yz'
49. Standard Forms: Sum of products
Sum of product is represented by a group of AND gates
followed by a single OR gate.
Each term requires AND gate, except term with single literal.
out formed with OR gate with AND outputs and single literal as
inputs.
assumed variables are available in complements, (no inverters)
This configuration referred as two‐level implementation.
50. Standard Forms: Product of sums
product of sums (POS) containing OR terms, called sum
terms. Each term have any number of literals. The
product denotes the ANDing of these terms.
F2 = x(y'+z)(x'+y+z')
A product of sum is represented by a group of OR gates
followed by a single AND gate.
Also two‐level implementation
51. Standard Forms
Boolean function can expressed in nonstandard form.
F3 = AB + C(D +E )
neither in SOP nor in POS form
implemented in three levels of gating
can change to two‐level implementation (standard form)
two‐level preferred because produces least delay
52. Outline of Chapter 2
2.5 Boolean Functions
2.6 Canonical and Standard Forms
2.7 Other Logic Operations
2.8 Digital Logic Gates
2.9 INTEGRATED CIRCUITS
53. 2.7 Other Logic Operations
2n
rows in the truth table of n binary variables.
22n functions for n binary variables.
16 functions of two binary variables.
55. 2.7 Other Logic Operations
All the new symbols except for the exclusive-OR symbol are not
in common use by digital designers.
56. Outline of Chapter 2 (Part b)
2.5 Boolean Functions
2.6 Canonical and Standard Forms
2.7 Other Logic Operations
2.8 Digital Logic Gates
2.9 INTEGRATED CIRCUITS
59. Multiple Inputs
All gates except for the inverter and buffer can be extended to have more
than two inputs.
NAND and NOR are commutative but not associative → they are not
extendable.
60. Multiple Inputs
Multiple NOR = a complement of OR gate, Multiple NAND = a
complement of AND.
The cascaded NAND operations = sum of products.
The cascaded NOR operations = product of sums.
Figure 2.7 Multiple-input and cascated NOR and NAND gates
61. Multiple Inputs
The XOR and XNOR gates are commutative and associative and can be
extended to more than two inputs.
Multiple-input XOR gates are uncommon?
XOR is an odd function: it is equal to 1 if the inputs variables have an odd
number of 1's.
Figure 2.8 3-input XOR gate
62. Positive and Negative Logic
inputs and outputs of gate has one of two values.
Two values are H and L
positive logic Choose high‐level (H) to represent logic 1
negative logic Choose low‐level (L) to represent logic 1
Hardware gates defined in terms of signal values H and L.
64. Outline of Chapter 2 (Part b)
2.5 Boolean Functions
2.6 Canonical and Standard Forms
2.7 Other Logic Operations
2.8 Digital Logic Gates
2.9 INTEGRATED CIRCUITS
65. INTEGRATED CIRCUITS
integrated circuit (IC) fabricated on silicon part called chip.
IC can be classified according to:
» Scale of integration – NO of gates on chip
» Logic Family - Circuit technology - basic electronic circuit
66. INTEGRATED CIRCUITS
Levels of Integration types
Small‐scale integration (SSI) - < 10 gates in IC, gates inputs &
outputs connected directly pins
Medium‐scale integration (MSI) - 10 to 1,000 gates in IC,
perform elementary operations as adders, counters.
Large‐scale integration (LSI) - thousands of gates in IC, such as
processors, memory
Very large‐scale integration (VLSI) - millions of gates within
IC, large memory arrays and complex microcomputer chips. did
large advances in the computer system
SSI or MSI LSI or VLSI
67. INTEGRATED CIRCUITS
Digital Logic Families
basic circuit in each technology : NAND, NOR, or NOT
Electronic used in construction of basic circuit name the
technology.
TTL transistor–transistor logic; 50 yrs in use, is considered to be
standard.
ECL emitter‐coupled logic; for sys need high‐speed operation
MOS metal‐oxide semiconductor; for sys need high component
density
CMOS complementary metal‐oxide semiconductor. For sys need
low power consumption, such as handheld portable devices
CMOS has become the dominant logic family as Low power
consumption is essential for VLSI design
68. 2.9 INTEGRATED CIRCUITS
Digital Logic Families
important parameters distinguishing logic families:
Fan‐out : number of standard loads from gate output – No off
input of another similar gate in the same family.
Fan‐in is the number of inputs available in a gate.
Power dissipation: power consumed by gate from power supply.
Propagation delay : average transition delay from input to output.
Noise margin: max noise voltage added to input and do not
change
Last part about Computer‐Aided Design of VLSI and will be
combined with 3.9