Presentation is loading. Please wait.

Presentation is loading. Please wait.

Basic Boolean Functions Paolo PRINETTO Politecnico di Torino (Italy) University of Illinois at Chicago, IL (USA)

Similar presentations


Presentation on theme: "Basic Boolean Functions Paolo PRINETTO Politecnico di Torino (Italy) University of Illinois at Chicago, IL (USA)"— Presentation transcript:

1 Basic Boolean Functions Paolo PRINETTO Politecnico di Torino (Italy) University of Illinois at Chicago, IL (USA) Paolo.Prinetto@polito.it Prinetto@uic.edu www.testgroup.polito.it Lecture 3.4

2 2 3.4 Goal  This lecture presents the basic Boolean Functions.

3 3 3.4 Prerequisites  Lecture 3.3

4 4 3.4 Homework  No particular homework is foreseen

5 5 3.4 Further readings  No particular suggestion

6 6 3.4 Remark  The lecture is organized in such a way to be self-explanatory; thus no further comment will be provided.

7 7 3.4 Basic Boolean Functions  Several “basic” boolean functions have been defined, each identified by a unique name, become a world-wide de-facto standard. They include:  not  and  or  nand  nor  exor  exnor

8 8 3.4 Why are they so significant?  Electronic devices are available to implement each of these basic boolean functions  Each device is usually given the same name of the corresponding boolean functions, e.g.: AND function  AND gate

9 9 3.4 “Logic Complement” or “NOT” function Informal definition It’s a unary function, providing the ^complement of its input variable. Representations x’ x not (x)

10 10 3.4 Axiomatic definition 0’ = 1not (0) = 1 1’ = 0not (1) = 0 Truth table x not(x) 01 10 “not” (cont'd)

11 11 3.4 Functional definition if x = 1 then not(x) = 0 else not(x) = 1 Theorems ( x’ )’ = x not ( not ( x ) ) = x “not” (cont'd)

12 12 3.4 1 NOT gate, or inverter [ANSI/IEEE standard STD 91-1984 “Graphics symbols for logic functions”] IEEE symboltraditional symbol

13 13 3.4 “Logic product” or “AND” function Informal definition The AND function on 2 (or more) input variables provides the value 1 iff all its input variables get the value 1. Representations x · yx yand ( x, y )

14 14 3.4 Axiomatic definition 0 · 0 = 0and(0,0) = 0 0 · 1 = 0 and(0,1) = 0 1 · 0 = 0and(1,0) = 0 1 · 1 = 1and(1,1) = 1 Truth table x yand(x,y) 000 010 100 111 x y and(x,y) Karnaugh map 01 000 101 “and” (cont'd)

15 15 3.4 Functional representation if x = 1 then and(x,y) = y else and(x,y) = 0 “and” (cont'd)

16 16 3.4 Theorems x · 0 = 0 x · 1 = x x · x = x x · x’ = 0 x · y = y · x x · y · z = (x · y) · z = x · (y · z) “and” (cont'd)

17 17 3.4 & x y x y U U AND gate IEEE symboltraditional symbol

18 18 3.4 “Logic sum” or “OR” function Informal definition The OR function on 2 (or more) input variables provides the value 1 iff at least one of its input variables get the value 1. Representations x + yor ( x, y )

19 19 3.4 Functional representation if x = 1 then or(x,y) = 1 else or(x,y) = y “or” (cont'd)

20 20 3.4 Axiomatic definition 0 + 0 = 0or(0,0) = 0 0 + 1 = 1 or(0,1) = 1 1 + 0 = 1or(1,0) = 1 1 + 1 = 1or(1,1) = 1 Truth table x yor(x,y) 000 011 101 111 x y or(x,y) Karnaugh map 01 001 111 “or” (cont'd)

21 21 3.4 Theorems x + 0 = x x + 1 = 1 x + x = x x + x’ = 1 x + y = y + x x + y + z = (x + y) + z = x + (y + z) “or” (cont'd)

22 22 3.4 11 x y x y UU IEEE symboltraditional symbol OR gate

23 23 3.4 “NAND” function Informal definition The NAND function on 2 (or more) input variables provides the value 1 iff at least one of its input variables get the value 0. Representations nand (x, y)

24 24 3.4 Axiomatic definition nand(0,0) = 1 nand(0,1) = 1 nand(1,0) = 1 nand(1,1) = 0 Truth table x ynand(x,y) 001 011 101 110 x y nand(x,y) Karnaugh map 01 011 110 “nand” (cont'd)

25 25 3.4 Functional representation if x = 1 then nand(x,y) = not(y) else nand(x,y) = 1 “nand” (cont'd)

26 26 3.4 Theorems nand (x, 0) = 1 nand (x, 1) = x’ nand (x, x) = x’ nand (x, x’) = 1 nand (x, y) = nand (y, x) nand (x, y) = not ( and (x, y) ) nand (x, y, z) = nand (x, and (y, z)) = = nand (and (x, y), z) = nand (x, and (y,z)) “nand” (cont'd)

27 27 3.4 & x y x y NAND gate IEEE symboltraditional symbol U U

28 28 3.4 “NOR” function Informal definition The NOR function on 2 (or more) input variables provides the value 1 iff none of its input variables get the value 1. Representations nor (x, y)

29 29 3.4 Axiomatic definition nor(0,0) = 1 nor(0,1) = 0 nor(1,0) = 0 nor(1,1) = 0 Truth table x ynor(x,y) 001 010 100 110 x y nor(x,y) Karnaugh map 01 010 100 “nor” (cont'd)

30 30 3.4 Functional representation if x = 1 then nor(x,y) = 0 else nor(x,y) = not(y) “nor” (cont'd)

31 31 3.4 Theorems nor (x, 0) = x’ nor (x, 1) = 0 nor (x, x) = x’ nor (x, x’) = 0 nor (x, y) = nor (y, x) nor (x, y) = not ( or (x, y) ) nor (x, y, z) = nor (x, or (y, z)) = = nor (or (x, y), z) = nor (x, or (y,z)) “nor” (cont'd)

32 32 3.4 11 x y x y IEEE symboltraditional symbol NOR gate U U

33 33 3.4 “Exclusive OR” (or “EXOR” function) Informal definition The EXOR function on 2 (or more) input variables provides the value 1 iff an odd # of its input variables get the value 1. Representations x  yexor (x, y)xor (x, y)

34 34 3.4 Axiomatic definition 0  0 = 0 0  1 = 1 1  0 = 1 1  1 = 0 Truth table x yx  y 00 0 01 1 10 1 11 0 x y exor(x,y) Karnaugh map 01 001 110 “exor” (cont'd)

35 35 3.4 1 st functional representation if x = 1 then exor(x,y) = not(y) else exor(x,y) = y “exor” (cont'd) The exor function can be seen as a controlled inverter : x y exor(x,y) 000 011 101 110

36 36 3.4 2 nd functional representation if x = y then exor(x,y) = 0 else exor(x,y) = 1 “exor” (cont'd) The exor function can be seen as a comparator : x y exor(x,y) 000 110 101 011

37 37 3.4 3 rd functional representation if (x+y)mod 2 = 1 then exor(x,y) = 0 else exor(x,y) = 1 “exor” (cont'd) The exor function can be seen as a modulo 2 adder x y (x+y)mod 2 exor(x,y) 0000 0111 1011 1100

38 38 3.4 Theorems exor (x, 0) = x exor (x, 1) = x’ exor (x, x) = 0 exor (x, x’ ) = 1 exor (x, y) = exor (y, x) exor (x, y) = exor (x’, y’) exor (x, y’) = exor (x’, y) = not (exor(x,y)) exor (x, y) = x y’ + x’ y exor (x, y, z) = exor (x, exor (y, z)) = exor (exor (x,y), z) “exor” (cont'd)

39 39 3.4 Karnaugh map for a 4-inputs exor ab cd exor (a,b,c,d) 00011110 000101 011010 110101 101010

40 40 3.4 EXOR gate IEEE symboltraditional symbol =1

41 41 3.4 “EXNOR” function Informal definition The EXOR function on 2 (or more) input variables provides the value 1 iff an even # of its input variables get the value 1. Representations x · y exnor (x, y)

42 42 3.4 Axiomatic definition exnor(0,0) = 1 exnor(0,1) = 0 exnor(1,0) = 0 exnor(1,1) = 1 Truth table x yexnor(x,y) 001 010 100 111 x y exnor(x,y) Karnaugh map 01 010 101 “exnor” (cont'd)

43 43 3.4 Functional representations if x = 1 then exor(x,y) = y else exor(x,y) = not(y) if x = y then exor(x,y) = 1 else exor(x,y) = 0 Theorems exnor (x, y) = exor (x, y)’ = exor (x’, y) = exor (x, y’) exnor (x, y) = x y + x’ y’ “exnor” (cont'd)

44 44 3.4 EXNOR gate IEEE symboltraditional symbol =1 U U

45


Download ppt "Basic Boolean Functions Paolo PRINETTO Politecnico di Torino (Italy) University of Illinois at Chicago, IL (USA)"

Similar presentations


Ads by Google