1 / 32

Logic Design of Digital Systems Lecture 3 - Switching Functions and Switching Expression

This lecture discusses switching functions, switching expressions, and Boolean algebra in the design of digital systems. Topics include truth tables, logic gates, universal sets, and De Morgan's Law.

maldonadok
Download Presentation

Logic Design of Digital Systems Lecture 3 - Switching Functions and Switching Expression

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. W’05 CS M51A/EE M16 Winter’05 Section 1 Logic Design of Digital SystemsLecture 3 January 19 Yutao He yutao@cs.ucla.edu 4532B Boelter Hall http://courseweb.seas.ucla.edu/classView.php?term=05W&srs=187154200 CSM51A/EEM16-Sec.1W’05

  2. Outline • Administrative Matters • Recap: Data presentation • Chapter 2.4-2.5, App. A • Switching Function • Switching Expression • Switching (Boolean) Algebra • Canonical Forms • Summary

  3. Administrative Matter • HW #2 is posted • HW #1 Solution is posted • Quiz #1 will be held on Friday • About Lecture note posting

  4. Review - Data Representation • Encode with binary number 0s and 1s • Character • ASCII • Unicode • Number (positive integer) • Positional Number Systems • Context is very important! • What’s the output? • int a = 12; printf (“a is %d”, a); • What if • char a = ‘2’; printf (“a is %d”, a); • How about • int a = 12; printf (“a is %x”, a);

  5. Review - Code for Decimal Numbers • Binary-Coded-Decimal (BCD) Code: • Encode each decimal digit individually using binary codes • Example: • Encode decimal number sixteen (16): • Binary Code: 10000 • BCD Code: 0001 0110

  6. High-Level Spec FH Binary-Level Spec FB xB yB XH YH Encoding Decoding m n Binary-Level Specification

  7. x f y i 0 1 2 3 x y f 0 0 0 0 1 1 1 0 0 1 1 1 Truth Table • Tabular representation of switching functions • There are 2^n rows for a n-input switching function

  8. 2-D Truth Table

  9. x f i 0 1 X f f f f 0 0 0 1 1 1 0 1 0 1 0 1 2 3 0-Constant 1-Constant Complement (NOT) Identity (Buffer) Truth Table of 1-Input S. F.

  10. x f y • x y 16 possible functions (f0–f15)0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 10 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 • 1 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 • 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 n 2 2 XOR EQU NAND AND OR NOR Truth Table of 2-Input S. F. • How many different switching functions can be obtained from a n-input switching function?

  11. Incompletely Specified S. F. • Output value is not specified for a given input combination: Don’t care

  12. One/Zero Set Notations One/Zero/D.C. Set Notations: f (x,y,z) = one-set(1,4,7), d.c.-set(3,6) or f(x,y,z) = zero-set(0,2,5), d.c.-set(3,6)

  13. Switching (Boolean) Algebra • Symbols: 0, 1 • • is logic AND, + is logic OR, ‘ is logic NOT • It holds all algebra axioms: 1. set B contains at least two elements, a, b, such that a  b2. closure: a + b is in B a • b is in B3. commutativity: a + b = b + a a • b = b • a4. associativity: a + (b + c) = (a + b) + c a • (b • c) = (a • b) • c5. identity: a + 0 = a a • 1 = a6. distributivity: a + (b • c) = (a + b) • (a + c) a • (b + c) = (a • b) + (a • c)7. complementarity: a + a' = 1 a • a' = 0

  14. Switching Expressions • Any switching function that can be expressed as a truth table can be written as an expression in Boolean algebra using operators: ', +, and •, i.e. Switching Expressions. X Y X • Y0 0 00 1 01 0 0 1 1 1 X Y X' X' • Y0 0 1 00 1 1 11 0 0 0 1 1 0 0 X Y X' Y' X • Y X' • Y' ( X • Y ) + ( X' • Y' )0 0 1 1 0 1 10 1 1 0 0 0 01 0 0 1 0 0 0 1 1 0 0 1 0 1

  15. X Y0 11 0 X Y Z0 0 00 1 01 0 0 1 1 1 X Y Z0 0 00 1 11 0 1 1 1 1 S. F and Logic Gates X Y • NOT X' X ~X • AND X • Y XY X  Y • OR X + Y X  Y X Z Y X Z Y

  16. X Y Z0 0 10 1 11 0 1 1 1 0 X Y Z0 0 10 1 01 0 0 1 1 0 X Y Z0 0 00 1 11 0 1 1 1 0 X Y Z0 0 10 1 01 0 0 1 1 1 Logic Gates (Cont.) X Z Y • NAND • NOR • XOR X Y • XNOR X Z Y X xor Y = X Y' + X' YX or Y but not both ("inequality", "difference") X Z Y X xnor Y = X Y + X' Y'X and Y are the same ("equality", "coincidence") X Z Y

  17. Universal sets • Can we implement all switching functions from NOT, NOR, and NAND? • Univerval sets: • {NOT, AND, OR} • {NOR} • {NAND}

  18. Axioms of Boolean Algebra • Identity 1. X + 0 = X 1D. X • 1 = X • Null 2. X + 1 = 1 2D. X • 0 = 0 • Idempotency: 3. X + X = X 3D. X • X = X • Involution: 4. (X')' = X • Complementarity: 5. X + X' = 1 5D. X • X' = 0 • Commutativity: 6. X + Y = Y + X 6D. X • Y = Y • X • Associativity: 7. (X + Y) + Z = X + (Y + Z) 7D. (X • Y) • Z = X • (Y • Z)

  19. Axioms of Boolean Algebra (Cont.) • Distributivity: 8. X • (Y + Z) = (X • Y) + (X • Z) 8D. X + (Y • Z) = (X + Y) • (X + Z) • Uniting: 9. X • Y + X • Y' = X 9D. (X + Y) • (X + Y') = X • Absorption: 10. X + X • Y = X 10D. X • (X + Y) = X 11. (X + Y') • Y = X • Y 11D. (X • Y') + Y = X + Y • Factoring: 12. (X + Y) • (X' + Z) = 12D. X • Y + X' • Z = X • Z + X' • Y (X + Z) • (X' + Y) • Concensus: 13. (X • Y) + (Y • Z) + (X' • Z) = 13D. (X + Y) • (Y + Z) • (X' + Z) = X • Y + X' • Z (X + Y) • (X' + Z)

  20. X y X y X y X y De Morgan’s Law • de Morgan's Law:14. (X + Y )' = X' • Y' 14D. (X • Y )' = X' + Y' • establishes relationship between • and + • also called “bubble logic”

  21. Equivalent Switching Expressions • Two switching expressions are equivalent if they represent the same switching function: • Have the same number of inputs variables • Output is same for all combinations of input values • Example:

  22. Equivalence Proof • Show that E1 and E2 are equivalent: • E1 = bc+cb’+ac • E2 = c • Show that a+a’b = a+b • Show that xyz+x’y+xyz’ = y

  23. Canonical Forms • Truth table is the unique signature of a switching function • Many alternative switching expressions may have the same truth table - equivalence • Canonical forms • Standard forms for a switching expression • Provides a unique algebraic signature

  24. A B C F F'0 0 0 0 1 0 0 1 1 0 0 1 0 0 1 0 1 1 1 0 1 0 0 0 1 1 0 1 1 0 1 1 0 1 0 1 1 1 1 0 + A'BC + AB'C + ABC' + ABC A'B'C Sum Of Products (S.O.P.) • Also known as sum of minterms • Corresponding to two-level AND-OR networks F = 001 011 101 110 111 F = F' = A'B'C' + A'BC' + AB'C'

  25. A B C minterms0 0 0 A'B'C' m0 0 0 1 A'B'C m1 0 1 0 A'BC' m2 0 1 1 A'BC m3 1 0 0 AB'C' m4 1 0 1 AB'C m5 1 1 0 ABC' m6 1 1 1 ABC m7 m-Notation short-hand notation forminterms of 3 variables Sum Of Products (Cont.) • Minterm • ANDed product of literals – input combination for which output is true • Each variable appears exactly once, in true or inverted form (but not both) • F in canonical form:F(A, B, C) =m(1,3,5,6,7)= m1 + m3 + m5 + m6 + m7 • = A'B'C + A'BC + AB'C + ABC' + ABC • canonical formminimal formF(A, B, C) = A'B'C + A'BC + AB'C + ABC + ABC' • = (A'B' + A'B + AB' + AB)C + ABC' • = ((A' + A)(B' + B))C + ABC'= C + ABC'= ABC' + C • = AB + C

  26. (A' + B + C) (A + B + C) (A + B' + C) A B C F F'0 0 0 0 1 0 0 1 1 0 0 1 0 0 1 0 1 1 1 0 1 0 0 0 1 1 0 1 1 0 1 1 0 1 0 1 1 1 1 0 Product of Sums • Also known as product of maxterm • Corresponds to two-level OR-AND networks F = 000 010 100F = F' = (A + B + C') (A + B' + C') (A' + B + C') (A' + B' + C) (A' + B' + C')

  27. A B C maxterms0 0 0 A+B+C M0 0 0 1 A+B+C' M1 0 1 0 A+B'+C M2 0 1 1 A+B'+C' M3 1 0 0 A'+B+C M4 1 0 1 A'+B+C' M5 1 1 0 A'+B'+C M6 1 1 1 A'+B'+C' M7 M-Notation short-hand notation formaxterms of 3 variables Product of Sums (Cont.) • Maxterm • ORed sum of literals – input combination for which output is false • each variable appears exactly once, in true or inverted form (but not both) • F in canonical form: F(A, B, C) =M(0,2,4) = M0 • M2 • M4 • = (A + B + C) (A + B' + C) (A' + B + C) • canonical formminimal form F(A, B, C) = (A + B + C) (A + B' + C) (A' + B + C) • = (A + B + C) (A + B' + C) • (A + B + C) (A' + B + C) • = (A + C) (B + C)

  28. Canonical form conversions • Minterm to maxterm conversion • Use maxterms whose indices do not appear in minterm expansion • e.g., F(A,B,C) = m(1,3,5,6,7) = M(0,2,4) • Maxterm to minterm conversion • Use minterms whose indices do not appear in maxterm expansion • e.g., F(A,B,C) = M(0,2,4) = m(1,3,5,6,7) • Minterm expansion of F to minterm expansion of F' • Use minterms whose indices do not appear • e.g., F(A,B,C) = m(1,3,5,6,7) F'(A,B,C) = m(0,2,4) • Maxterm expansion of F to maxterm expansion of F' • Use maxterms whose indices do not appear • e.g., F(A,B,C) = M(0,2,4) F'(A,B,C) = M(1,3,5,6,7)

  29. 0-set of W 1-set of W don't care (DC) set of W these inputs patterns should never be encountered in practice – "don't care" about associated output values, can be exploitedin minimization An Example: • Binary coded decimal increment by 1 • BCD digits encode decimal digits 0 – 9 in bit patterns 0000 – 1001 A B C D W X Y Z0 0 0 0 0 0 0 1 0 0 0 1 0 0 1 0 0 0 1 0 0 0 1 1 0 0 1 1 0 1 0 0 0 1 0 0 0 1 0 1 0 1 0 1 0 1 1 0 0 1 1 0 0 1 1 1 0 1 1 1 1 0 0 0 1 0 0 0 1 0 0 1 1 0 0 1 0 0 0 0 1 0 1 0 X X X X 1 0 1 1 X X X X 1 1 0 0 X X X X 1 1 0 1 X X X X 1 1 1 0 X X X X 1 1 1 1 X X X X

  30. An Example - Cont. • Canonical representations of the BCD increment by 1 function: • Z = m0 + m2 + m4 + m6 + m8 + d10 + d11 + d12 + d13 + d14 + d15 • Z =  [ m(0,2,4,6,8) + d.c.(10,11,12,13,14,15) ] • Z = M1 • M3 • M5 • M7 • M9 • D10 • D11 • D12 • D13 • D14 • D15 • Z =  [ M(1,3,5,7,9) • D.C.(10,11,12,13,14,15) ]

  31. Summary • Truth tables and switching functions • NOT, AND, OR, NAND, NOR, XOR • Axioms and theorems of Boolean algebra • Proofs by re-writing • Canonical forms • SOP, POS, m/M-notation, 1/0/dc-sets • Expression equivalence • Incompletely specified Functions

  32. Next Lecture • Chapter 3 – Combinational IC’s

More Related