1 / 25

comp.nus.sg/~cs2100/

http://www.comp.nus.edu.sg/~cs2100/. Lecture #13. Boolean Algebra. Lecture #13: Boolean Algebra. Digital Circuits Boolean Algebra Truth Table Precedence of Operators Laws of Boolean Algebra Duality Theorems Boolean Functions Complement Functions Standard Forms Minterms and Maxterms

edoyle
Download Presentation

comp.nus.sg/~cs2100/

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. http://www.comp.nus.edu.sg/~cs2100/ Lecture #13 Boolean Algebra

  2. Lecture #13: Boolean Algebra Lecture #13: Boolean Algebra • Digital Circuits • Boolean Algebra • Truth Table • Precedence of Operators • Laws of Boolean Algebra • Duality • Theorems • Boolean Functions • Complement Functions • Standard Forms • Minterms and Maxterms • Canonical Forms: Sum-of-Minterms and Product-of-Maxterms

  3. High Low Signals in digital circuit Signals in analog circuit Lecture #13: Boolean Algebra 1. Digital Circuits (1/2) • Two voltage levels • High/true/1/asserted • Low/false/0/deasserted • Advantages of digital circuits over analog circuits • More reliable (simpler circuits, less noise-prone ) • Specified accuracy (determinable) • Abstraction can be applied using simple mathematical model – Boolean Algebra • Ease design, analysis and simplification of digital circuit – Digital Logic Design

  4. Lecture #13: Boolean Algebra 1. Digital Circuits (2/2) • Combinational: no memory, output depends solely on the input • Gates • Decoders, multiplexers • Adders, multipliers • Sequential: with memory, output depends on both input and current state • Counters, registers • Memories

  5. A B A B AB A A+B A' Lecture #13: Boolean Algebra 2. Boolean Algebra • Truth tables • Logic gates • Boolean values: • True (T or 1) • False (F or 0) • Connectives • Conjunction (AND) • A B; A  B • Disjunction (OR) • A + B; A  B • Negation (NOT) • ; ; A' In CS2100, we use the symbols ∙ for AND, + for OR, and ' for negation. Please follow.

  6. Lecture #13: Boolean Algebra 2. Boolean Algebra: AND • Do write the AND operator ∙ (instead of omitting it) • Example: Write a∙b instead of ab • Why? Writing ab could mean that it is a 2-bit value.

  7. Lecture #13: Boolean Algebra 3. Truth Table • Provide a listing of every possible combination of inputs and its corresponding outputs. • Inputs are usually listed in binary sequence. • Example • Truth table with 3 inputs x, y, z and 2 outputs (y + z) and (x  (y + z))

  8. Lecture #13: Boolean Algebra 3. Proof using Truth Table • Prove: x  (y + z) = (x  y) + (x  z) • Construct truth table for LHS and RHS • Check that column for LHS = column for RHS • DLD page 59 Quick Review QuestionsQuestion 3-1. 

  9. Lecture #13: Boolean Algebra 4. Precedence of Operators • Precedence from highest to lowest • Not (') • And () • Or (+) • Examples: • A  B + C = (A  B) + C • X + Y' = X + (Y') • P + Q'  R = P + ((Q')  R) • Use parenthesis to overwrite precedence. Examples: • A  (B + C) [ Without parenthesis: A  B + C ] • (P + Q)'  R [ Without parenthesis: P + Q'  R ]

  10. Lecture #13: Boolean Algebra 5. Laws of Boolean Algebra

  11. Lecture #13: Boolean Algebra 6. Duality • If the AND/OR operators and identity elements 0/1 in a Boolean equation are interchanged, it remains valid • Example: • The dual equation of a+(bc)=(a+b)(a+c) is a(b+c)=(ab)+(ac) • Duality gives free theorems – “two for the price of one”. You prove one theorem and the other comes for free! • Examples: • If (x+y+z)' = x'y'z' is valid, then its dual is also valid:(xyz)' = x'+y'+z' • If x+1 = 1 is valid, then its dual is also valid:x0 = 0

  12. Lecture #13: Boolean Algebra 7. Theorems

  13. Lecture #13: Boolean Algebra 7. Proving a Theorem • Theorems can be proved using truth table, or by algebraic manipulation using other theorems/laws. • Example: Prove absorption theorem X + XY = X X + XY = X1 + XY (by identity) = X(1+Y) (by distributivity) = X(Y+1) (by commutativity) = X1 (by one element) = X (by identity) • By duality, we can also cite (without proof) thatX(X+Y) = X

  14. Lecture #13: Boolean Algebra 8. Boolean Functions • Examples of Boolean functions (logic equations): F1(x,y,z) = xyz' F2(x,y,z) = x + y'z F3(x,y,z) = x'y'z + x'yz + xy' F4(x,y,z) = xy' + x'z From the truth table, F3 = F4. Can you prove F3 = F4 by using Boolean Algebra? 

  15. Lecture #13: Boolean Algebra 9. Complement Functions • Given a Boolean function F, the complement of F, denoted as F', is obtained by interchanging 1 with 0 in the function’s output values. • Example: F1 = xyz' • What is F1' ? • F1' = (xyz')' = x' + y' + (z')' (DeMorgan’s) = x' + y' + z (Involution) 

  16. Lecture #13: Boolean Algebra 10. Standard Forms (1/2) • Certain types of Boolean expressions lead to circuits that are desirable from an implementation viewpoint. • Two standard forms: • Sum-of-Products (SOP) • Product-of-Sums (POS) • Literals • A Boolean variable on its own or in its complemented form • Examples: (1) x, (2) x', (3) y, (4) y' • Product term • A single literal or a logical product (AND) of several literals • Examples: (1) x, (2) xyz', (3) A'B, (4) AB, (5) dg'vw

  17. Lecture #13: Boolean Algebra 10. Standard Forms (2/2) • Sum term • A single literal or a logical sum (OR) of several literals • Examples: (1) x, (2) x+y+z', (3) A'+B, (4) A+B, (5) c+d+h'+j • Sum-of-Products (SOP) expression • A product term or a logical sum (OR) of several product terms • Examples: (1) x, (2) x + yz', (3) xy' + x'yz, (4) AB + A'B', (5) A + B'C + AC' + CD • Product-of-Sums (POS) expression • A sum term or a logical product (AND) of several sum terms • Examples: (1) x, (2) x(y+z'), (3) (x+y')(x'+y+z), (4) (A+B)(A'+B'), (5) (A+B+C)D'(B'+D+E') • Every Boolean expression can be expressed in SOP or POS form. • DLD page 59 Quick Review QuestionsQuestions 3-2 to 3-5.

  18. Lecture #13: Boolean Algebra Quiz Time! SOP expr: A product term or a logical sum (OR) of several product terms. POSexpr: A sum term or a logical product (AND) of several sum terms. • Put the right ticks in the following table.             

  19. Lecture #13: Boolean Algebra 11. Minterms and Maxterms (1/2) • A minterm of n variables is a product term that contains n literals from all the variables. • Example: On 2 variables x and y, the minterms are: x'∙y', x'∙y, x∙y' and x∙y • A maxterm of n variables is a sum term that contains n literals from all the variables. • Example: On 2 variables x and y, the maxterms are: x'+y', x'+y, x+y' and x+y • In general, with n variables we have up to 2nminterms and 2n maxterms.

  20. Lecture #13: Boolean Algebra 11. Minterms and Maxterms (2/2) • The minterms and maxterms on 2 variables are denoted by m0 to m3 and M0 to M3 respectively. • Each minterm is the complement of the corresponding maxterm • Example: m2 = x∙y' m2' = ( x∙y' )' = x' + ( y' )' = x' + y = M2

  21. Lecture #13: Boolean Algebra 12. Canonical Forms • Canonical/normal form: a unique form of representation. • Sum-of-minterms = Canonical sum-of-products • Product-of-maxterms = Canonical product-of-sums

  22. F1 = x∙y∙z' = m6 F2 = x'∙y'∙z + x∙y'∙z' + x∙y'∙z + x∙y∙z' + x∙y∙z = m1 + m4 + m5 + m6 + m7 = Sm(1,4,5,6,7) orSm(1,4 – 7) Lecture #13: Boolean Algebra 12.1 Sum-of-Minterms • Given a truth table, example: • Obtain sum-of-minterms expression by gathering the minterms of the function (where output is 1). F3 = x'∙y'∙z + x'∙y∙z + x∙y'∙z' + x∙y'∙z = m1 + m3 + m4 + m5 = Sm(1,3,4,5) orSm(1,3 – 5) 

  23. F2 = (x+y+z) ∙(x+y'+z) ∙ (x+y'+z') = M0 ∙ M2 ∙ M3 = PM(0,2,3) Lecture #13: Boolean Algebra 12.2 Product-of-Maxterms • Given a truth table, example: • Obtain product-of-maxterms expression by gathering the maxterms of the function (where output is 0). F3 = (x+y+z) ∙ (x+y'+z) ∙ (x'+y'+z) ∙ (x'+y'+z') = M0 ∙ M2 ∙ M6 ∙ M7 = PM(0,2,6,7) 

  24. Lecture #13: Boolean Algebra 12.3 Conversion of Standard Forms • We can convert between sum-of-minterms and product-of-maxterms easily • Example: F2 = Sm(1,4,5,6,7) = PM(0,2,3) • Why? See F2' in truth table. • F2' = m0 + m2 + m3Therefore,F2 = (m0 + m2 + m3)' = m0' ∙ m2' ∙ m3' (by DeMorgan’s) = M0 ∙ M2 ∙ M3 (as mx' = Mx) • Read up DLD section 3.4, pg 57 – 58. • Quick Review Questions: pg 60 – 61, Q3-6 to 3-13.

  25. Lecture #13: Boolean Algebra End of File

More Related