Τµήµα Ηλεκτρολόγων Μηχανικών Εργαστήριο Ενσύρµατης Τηλεπικοινωνίας ΨΗΦΙΑΚΗ ΛΟΓΙΚΗ ΣΧΕ ΙΑΣΗ ιδάσκων: Καθηγητής Ν. Φακωτάκης
Τµήµα Ηλεκτρολόγων Μηχανικών Εργαστήριο Ενσύρµατης Τηλεπικοινωνίας ΨΗΦΙΑΚΗ ΛΟΓΙΚΗ ΣΧΕ ΙΑΣΗ Μάθηµα 2: Άλγεβρα Boole & Λογικές Πύλες ιδάσκων: Καθηγητής Ν. Φακωτάκης
Αλγεβρική οµή (1) 1.Κλειστότητα (closure):ένα σύνολο S είναι κλειστό ως προς ένα δυαδικό τελεστή εάν, για κάθε ζευγάρι στοιχείων του S, o δυαδικός τέλεστής αντιστοιχίζει ένα µοναδικό στοιχείο που ανήκει στο S. Για παράδειγµα το σύνολο των φυσικών αριθµών Ν={1,2,3,4...} είναι κλειστό ως προς το δυαδικό τελεστή συν (+) µε τον κανόνα της αριθµητικής πρόσθεσης, αφού για κάθε a, b є N, η πράξη a+b=c δίνει ένα µοναδικό cєn. Το σύνολο των φυσικών αριθµών δεν είναι κλειστό ως προς το δυαδικό τελεστή πλην (-) µε τον κανόνα της αριθµητικής αφαίρεσης, διότι 2-3 = -1 και 2,3 єν, ενώ το (-1) є\ Ν.
Αλγεβρική οµή (2) 2.Προσαιτεριστικός νόµος (Associative law): Ένας δυαδικός τελεστής * σε ένα σύνολο S λέµε ότι είναι προσαιτεριστικός, όταν : (x*y)*z=x*(y*z) για όλα x,y,z ε S 3.Αντιµεταθετικός νόµος(commutative law): Ένας δυαδικός τελεστής * σε ένα σύνολο S λέµε ότι είναι αντιµεταθετικός, όταν : x*y=x*y για όλα x,y є S
Αλγεβρική οµή (3) 4.Ουδέτερο στοιχείο ή στοιχείο ταυτότητας (Indentity element) : Ένα σύνολο S λέµε ότι έχει ένα ουδέτερο στοιχείο ως προς έναν δυαδικό τελεστή * πάνω στο S, εάν ένα στοιχείο eє Sµε την ιδιότητα : e*x=x*e=x για κάθε xε S 5.Αντίστροφο (Inverse): Ενα σύνολο S που έχει το ουδέτερο στοιχείο e ως προς έναν δυαδικό τελεστή * λέµε ότι έχει αντίστροφο όταν, για κάθε xє S, υπάρχει ένα στοιχείο yε S τέτοιο ώστε : x*y=e
Αλγεβρική οµή (4) 6.Επιµεριστικός νόµος (Distributive law): Εάν * και είναι δυο δυαδικοί τελεστές πάνω σ ένα σύνολο S, ο * λέγεται ότι είναι επιµεριστικός ως προς τον όταν : x*(y z)=(x*y) (x*z)
Άλγεβρα Boole Στα 1854, ο Boole εισήγαγε µια συστηµατική αντιµετώπιση της λογικής και ανέπτυξε για αυτό το σκοπό το οµώνυµο αλγεβρικό σύστηµα. Στα 1938 ο Shannon εισήγαγε την άλγεβρα του Boole µε δύο τιµές (switching algebra). Η άλγεβρα Boole είναι µια αλγεβρική δοµή ορισµένη πάνω σ ένα σύνολο στοιχείων B, µαζί µε δυο δυαδικούς τελεστές + και.
Αξιώµατα Huntington για την άλγεβρα Boole (1) 1.(α) Κλειστή ως προς τον τελεστή + (β) Κλειστή ως προς τον τελεστή 2.(α) Ένα ουδέτερο στοιχείο ως προς +, που συµβολίζεται µε 0: x + 0 = 0 + x = x (β) Ένα ουδέτερο στοιχείο ως προς, που συµβολίζεται µε 1: x 1 = 1 x = x 3.(α) Αντιµεταθετική ως προς + : x+y=y+x (β) Αντιµεταθετική ως προς : x y=y x
Αξιώµατα Huntington για την άλγεβρα Boole (2) 4.(α)Ο είναι επιµεριστικός ως προς + : x ( y+ z) = ( x y) + ( x z) (β)ο + είναι επιµεριστικός ως προς : x + ( y z ) = ( x + y ) ( x + z ) 5.Για κάθε στοιχείο xε B, υπάρχει ένα στοιχείο x ε B που ονοµάζεται «συµπλήρωµα» του x τέτοιο ώστε : x + x = 1 και x x =0 6.Υπάρχουν τουλάχιστον δυο στοιχεία x, y ε B που να είναι x y
ιαφορές Άλγεβρας Boole µε την Άλγεβρα των Πραγµατικών Αριθµών (1) Τα αξιώµατα της άλγεβρας Boole δεν περιλαµβλανουν τον προσεταιριστικό νόµο. Ωστόσο αυτός ισχύει για την άλγεβρα Boole και µπορεί να εξαχθεί (και για τους δυο τελεστές) από τα άλλα αξίωµατα. Ο επιµεριστικός νόµος του + ως προς το, δηλαδή x+(y z)=(x+y) (x+z) ισχύει για την άλγεβρα Boole αλλά όχι και για την συνηθισµένη άλγεβρα. Η άλγεβρα Boole δεν έχει προσθετικά ή πολλαπλασιαστικά αντίστροφα, εποµένως δεν υπάρχουν πράξεις αφαίρεσης ή διαίρεσης.
ιαφορές Άλγεβρας Boole µε την Άλγεβρα των Πραγµατικών Αριθµών (2) Το αξίωµα 5 ορίζει έναν τελεστή, που καλείται συµπλήρωµα, ο οποίος δεν υπάρχει στη συνηθισµένη άλγεβρα. Η συνηθισµένη άλγεβρα ασχολείται µε τους πραγµατικούς αριθµούς που αποτελούν ένα απειροσύνολο. Η άλγεβρα Boole ασχολείται µε το σύνολο των στοιχείων B, που ακόµα δεν το προσδιορίσαµε. Στη άλγεβρα Boole δύο τιµών που ορίζουµε παρακάτω το Β έχει µόνο δύο στοιχεία, τα 0 και 1.
ίτιµη Άλγεβρα Boole B={0,1} x y xy x y x+y x x 0 0 0 0 0 0 0 1 0 1 0 0 1 1 1 0 1 0 0 1 0 1 1 1 1 1 1 1
Παρατηρήσεις (1): Η κλειστότητα είναι φανερή από τους πίνακες, αφού το αποτέλεσµα κάθε πράξης είναι ή 0 ή 1 και τα 0,1 ε Β. Τα ουδέτερα στοιχεία είναι το 0 για το + και το 1 για το, όπως ορίστηκαν από το αξίωµα 2. Οι αντιµεταθετικοί νόµοι είναι φανεροί από τη συµµετρία των πινάκων των δυαδικών τελεστών. Από τον πίνακα του συµπληρώµατος προκύπτει ότι x+x =1, x x =0 Το αξίωµα 6 ικανοποιείται διότι η δίτιµη άλγεβρα έχει δυο διαφορετικά στοιχεία 1 και 0, µε 1 0.
Παρατηρήσεις (2): Ο επιµεριστικός νόµος µπορεί να επαληθευτεί από τον παρακάτω πίνακα αληθείας
Θεωρήµατα & Αξιώµατα της Άλγεβρας Boole Αξίωµα 2 x+0 =x x 1 = x Αξίωµα 5 x+x = 1 x x = 0 Θεώρηµα 1 x + x = x x x = x Θεώρηµα 2 x + 1 = 1 x 0 = 0 Θεώρηµα 3 (x ) = x Αξίωµα 3 x+y = y+x xy = yx Θεώρηµα 4 x+(y+z)=(x+y)+z x(yz) =(xy)z Αξίωµα 4 x(y+z)=xy+xz x+yz=(x+y)(x+z) Θεώρηµα 5 (x+y) =x y (xy) =x +y (DeMorgan) Θεώρηµα 6 x+xy = x x(x+y) =x
Θεώρηµα 1 - θεώρηµα 1(a): x+x = x x+x = (x+x) 1 από το αξίωµα: 2(b) = (x+x) (x+x') 5(a) = x+xx' 4(b) = x+0 5(b) = x 2(a) - θεώρηµα 1(b): x x = x xx = x x + 0 από το αξίωµα: 2(a) = xx + xx' 5(b) = x (x + x') 4(a) = x 1 5(a) = x 2(a)
Θεωρήµατα 2 & 3 - Θεώρηµα 2: x+1=1 x + 1 = 1 (x + 1) από το αξίωµα: 2(b) = (x + x')(x +1) 5(a) = x + x' 1 4(b) = x + x' 2(b) = 1 5(a) x 0 = 0 από τον δυϊσµό - Θεώρηµα 3: (x')' = x Από το αξίωµα 5 έχουµε, x + x' = 1 και x x' = 0 Το συµπλήρωµα του x' είναι το x και το (x')'
Θεώρηµα 6 Θεώρηµα 6:x+xy=x x + xy = x1 + xy από το αξίωµα 2(b) = x (1 +y) 5(a) = x 1 4(a) = x 2(b) x (x + y) = x από το δυϊσµό Από τον πίνακα αληθείας x y xy x + xy 0 0 0 0 0 1 0 0 1 0 0 1 1 1 1 1
Θεωρήµατα De Morgan - (x+y)' = x' y' - (x y)' = x' + y Πίνακας Αληθείας x y x+y (x+y) x y x y 0 0 0 1 1 1 1 0 1 1 0 1 0 0 1 0 1 0 0 1 0 1 1 1 0 0 0 0
Προτεραιότητα Τελεστών Η προτεραιότητα των τελεστών για τον υπολογισµό των εκφράσεων Boole ακολουθεί την σειρά: 1) παρενθέσεις 2) ΟΧΙ 3) ΚΑΙ 4) Ή Παραδείγµατα: x y' + z (x y + z)'
ιαγράµµατα Venn Οπτική εικόνα των σχέσεων µεταξύ των µεταβλητών µιας έκφρασης Boole
Συναρτήσεις Boole (1) υαδικές µεταβλητές υαδικοί τελεστές AND και OR Μοναδιαίος τελεστής ΝΟΤ Παρενθέσεις Παραδείγµατα: F 1 = x y z F 2 = x + y' z F 3 = x' y' z + x' y z + x y' F 4 = x y' + x' z
Συναρτήσεις Boole (2) x y z F1 F2 F3 F4 0 0 0 0 0 0 0 0 0 1 0 1 1 1 0 1 0 0 0 0 0 0 1 1 0 0 1 1 1 0 0 0 1 1 1 1 0 1 0 1 1 1 1 1 0 1 1 0 0 1 1 1 0 1 0 0 υο εκφράσεις Boole µπορεί να εκφράζουν την ίδια συνάρτηση (π.χ. F 3 = F 4 )
Υλοποίηση συναρτήσεων Boole µε πύλες (1)
Υλοποίηση συναρτήσεων Boole µε πύλες (2) (Υλοποίηση µε 6 πύλες)
Υλοποίηση συναρτήσεων Boole µε πύλες (3) Η F4 είναι πιο οικονοµική! (5 πύλες αντί για 6 της F3)
Αλγεβρικοί µετασχηµατισµοί Κάθε παράγοντας στη συνάρτηση αντιστοιχεί σε µια είσοδο πύλης Κάθε όρος παραγόντων υλοποιείται µε µια πύλη Η ελαχιστοποίηση του αριθµού των παραγόντων και όρων δίνει ένα ελαχιστοποιηµένο κύκλωµα εν υπάρχουν κανόνες για την ελαχιστοποίηση των συναρτήσεων (γενικά είναι µια δύσκολη διαδικασία)
Παραδείγµατα x(x'+y) = xx' + xy = 0+ xy = xy x+x'y = (x+x')(x+y) = 1 (x+y) = x+y (x+y)(x+y') = x+xy+xy'+yy' = x(1+y+y') = x x'y'z + x'yz + xy' = x'z(y'+y) + xy'= x'z + xy xy + x'z + yz = xy + x'z + yz(x+x') = xy + x'z + yzx + yzx' = xy(1+z) + x'z(1+y) = xy +x'z
Συµπλήρωµα συνάρτησης Το συµπλήρωµα µιας συνάρτησης F, το F είναι η συνάρτηση που ισούται µε 0 όταν F=1 και µε 1 όταν F=0. Το συµπλήρωµα µιας συνάρτησης µπορεί να βγει αλγεβρικά µέσω του θεωρήµατος De Morgan. Γενίκευση: (A+B+C+... +F)' = A'B'C'... F (ABC... F)' = A'+ B'+C'+... +F'
Ελαχιστόροι & Μεγιστόροι (1) Ελαχιστόροι ή πρότυπα γινόµενα: Οι δυνατοί συνδυασµοί µεταξύ των µεταβλητών που ενώνονται µε την πράξη AND Μεγιστόροι ή πρότυπα αθροίσµατα: Οι δυνατοί συνδυασµοί µεταξύ των µεταβλητών που ενώνονται µε την πράξη OR Από n µεταβλητές προκύπτουν 2 n ελαχιστόροι και 2 n µεγιστόροι
Ελαχιστόροι & Μεγιστόροι (2) Κάθε µεγιστόρος είναι το συµπλήρωµα του αντίστοιχου ελαχιστόρου και αντίστροφα x y z όρος όρος 0 0 0 x y z m 0 x+y+z M 0 0 0 1 x y z m 1 x+y+z M 1 0 1 0 x yz m 2 x+y +z M 2 0 1 1 x yz m 3 x+y +z M 3 1 0 0 xy z m 4 x +y+z M 4 1 0 1 xy z m 5 x +y+z M 5 1 1 0 xyz m 6 x +y +z M 6 1 1 1 xyz m 7 x +y +z M 7
Ελαχιστόροι (1) Κάθε συνάρτηση Boole µπορεί να εκφραστεί από τον πίνακα αληθείας, αθροίζοντας τους ελαχιστόρους που δίνουν τιµή 1. f 1 = x'y'z + xy'z' + xyz = m 1 + m 4 +m 7 f 2 = x'yz+ xy'z + xyz'+xyz = m 3 + m 5 +m 6 + m 7 x y z f 1 f 2 0 0 0 0 0 0 0 1 1 0 0 1 0 0 0 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
Ελαχιστόροι (2) Κάθε συµπλήρωµα συνάρτησης Boole µπορεί να εκφραστεί από τον πίνακα αληθείας, αθροίζοντας τους ελαχιστόρους που δίνουν τιµή 0. f 1 ' = m 0 + m 2 +m 3 + m 5 + m 6 = x'y'z'+x'yz'+x'yz+xy'z+xyz'
Μεγιστόροι (1) Κάθε συνάρτηση Boole µπορεί να εκφραστεί από τον πίνακα αληθείας, πολλαπλασιάζοντας τους µεγιστόρους που δίνουν τιµή 1. f 1 = (x+y+z)(x+y'+z)(x+y'+z')(x'+y+z')(x'+y'+z) = M 0 M 2 M 3 M 5 M 6 f 2 = (x+y+z)(x+y+z )(x+y'+z)(x +y+z) = M 0 M 1 M 2 M 4 x y z f 1 f 2 0 0 0 0 0 0 0 1 1 0 0 1 0 0 0 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
Μεγιστόροι (2) Κάθε συµπλήρωµα συνάρτησης Boole µπορεί να εκφραστεί από τον πίνακα αληθείας, πολλαπλασιάζοντας τους µεγιστόρους που δίνουν τιµή 0. f 1 = (x+y+z )(x +y+z)(x +y'+z')= M 1 M 4 M 7 f 2 = (x+y +z )(x +y+z )(x +y'+z)(x +y +z ) = M 3 M 5 M 6 M 7
Άθροισµα ελαχιστόρων Αναπτύσσουµε σε άθροισµα γινοµένων Όπου χρειάζεται συµπληρώνουµε µε παράσταση της µορφής (x+x ) για να δηµιουργήσουµε ελαχιστόρους Π.χ. F=A+B C A=A(B+B )=AB+AB =AB(C+C )+AB (C+C ) B C=B C(A+A )=AB C+A B C Αρα F=A B C+AB C +AB C+ABC +ABC =m1+m4+m5+m6+m7=σ(1,4,5,6,7)
Γινόµενο Μεγιστόρων Αναπτύσσουµε σε γινόµενο αθροισµάτων Όπου χρειάζεται συµπληρώνουµε µε παράσταση της µορφής xx για να δηµιουργήσουµε µεγιστόρους Π.χ.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 ) x+y=x+z+yy =(x+y+z)(x +y +z) y+z=y+z+xx =(x+y+z)(x +y+z) F=(x+y+z)(x+y +z)(x +y+z)(x +y+z ) =M0 M2 M4 M5=Π(0,2,4,5)
Μετατροπή µεταξύ κανονικών µορφών F(A,B,C) = Σ(1,4,5,6,7) F'(A,B,C) = Σ(0,2,3) Από το θεώρηµα De Morgan F(A,B,C) = Π(0,2,3) m j ' = M j Εναλλαγή των συµβόλων Σ και Π και των αριθµών που λείπουν από την κανονική µορφή Σ των 1's Π των 0's
Πρότυπες Μορφές Άθροισµα γινοµένων F 1 = y' + zy+ x'yz Γινόµενο αθροισµάτων F 2 = x(y'+z)(x'+y+z'+w)
Άλλες λογικές πράξεις (1) Πίνακες αληθείας για τις 16 συναρτήσεις δύο δυαδικών µεταβλητών
Άλλες λογικές πράξεις (2) Εκφράσεις Boole για τις 16 συναρτήσεις δύο δυαδικών µεταβλητών
Ψηφιακές Λογικές Πύλες (1)
Ψηφιακές Λογικές Πύλες (2)
Μη επιµεριστικότητα του τελεστή (OYTE) NOR
Πύλες ΟΥΤΕ και ΟΧΙ-ΚΑΙ πολλαπλών εισόδων και σε σειρά
Αποκλειστικό Η (XOR)
Θετική & Αρνητική Λογική 2 λογικές τιµές <=> 2 τιµές ηλεκτρικού σήµατος Θετική λογική: Η=1, L=0 Αρνητική λογική: H=0, L=1
Παραδείγµατα θετικής και αρνητικής λογικής
Εφαρµογή:Ολοκληρωµένα κυκλώµατα
Εργαστήριο Ενσύρµατης Τηλεπικοινωνίας Artificial Intelligence Group http://www.wcl.ee.upatras.gr