A minterm (standard product): an AND term consists of all literals in their normal form or in their complement form. For example, two binary variables x and y, xy, xy', x'y, x'y' It is also called a standard product. n variables can be combined to form 2n minterms. A maxterm (standard sums): an OR term It is also called a standard sum. 2n maxterms. Each maxterm is the complement of its corresponding minterm, and vice versa. A Boolean function can be expressed by A truth table Sum of minterms f1 = x'y'z + xy'z' + xyz = m1 + m4 +m7 (Minterms) f2 = x'yz+ xy'z + xyz'+xyz = m3 + m5 +m6 + m7 (Minterms) 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 f2 = (x+y+z)(x+y+z')(x+y'+z)(x'+y+z)=M0M1M2M4 Any Boolean function can be expressed as A sum of minterms (“sum” meaning the ORing of terms). A product of maxterms (“product” meaning the ANDing of terms). Both boolean functions are said to be in Canonical form. Example2.4: express F = A+BC' as a sum of minterms. 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 F = m1 + m4 +m5 + m6 + m7 F(A, B, C) = S(1, 4, 5, 6, 7) or, built the truth table first Productof 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') F = M0M2M4M5 F(x, y, z) = P(0, 2, 4, 5) 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) F'(A, B, C) = m0+m2+m3
Taking complement both sides: By De-Morgan's theorem
F(A, B, C) = (m0+m2+m3) '
F(A, B, C) = m0' .m2' .m3' = M0.M2.M3 = P(0, 2, 3) 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 Example F = xy + xz F(x, y, z) = S(1, 3, 6, 7) F(x, y, z) = P (0, 2, 4, 6) Standardforms: the terms that form the function may contain one, two, or any number of literals.
Sum of products: F1 = y' + xy+ x'yz'
Product of sums: F2 = x(y'+z)(x'+y+z') Two-level implementation
F1 = y' + xy+ x'yz'
F2 = x(y'+z)(x'+y+z') Multi-level implementation n 2 rows in the truth table of n binary variables. n 22 functions for n binary variables. 16 functions of two binary variables. Extension to multiple inputs A gate can be extended to multiple inputs. If its binary operation is commutative and associative. AND and OR are commutative and associative. OR x+y = y+x (x+y)+z = x+(y+z) = x+y+z AND xy = yx (x y)z = x(y z) = x y z NAND and NOR are commutative but not associative → they are not extendable.
Figure 2.6 Demonstrating the nonassociativity of the NOR operator;
(x ↓ y) ↓ z ≠ x ↓(y ↓ z) 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 cascaded NOR and NAND gates
The XOR and XNOR gates are commutative and associative. 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.