ΑΝΩΤΑΤΟ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ  ΣΕΡΡΩΝ

ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ

ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΕΠΙΚΟΙΝΩΝΙΩΝ

 

 

 

 

 

 

 

Ψηφιακά κυκλώματα

 

Σημειώσεις

 

 

 

 

Αναστάσιος Ι. Μπαλουκτσής (Μηχανολόγος/Ηλεκτρολόγος Μηχανικός, Μαθηματικός, PhD)

Καθηγητής

 

 

Τομέας Αρχιτεκτονικής Η/Υ & Βιομηχανικών Εφαρμογών

 

 

 

 

 

 

Σέρρες 2004

ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ

 

Πρόλογος__________________________________________________________________ 5

Συστήματα αριθμών________________________________________________________ 6

Δεκαδικό σύστημα___________________________________________________________________ 6

Παράδειγμα 1.1_________________________________________________________________ 6

Δυαδικό σύστημα____________________________________________________________________ 6

Μετατροπή δεκαδικού σε δυαδικό_____________________________________________________ 8

Παράδειγμα 1.2_________________________________________________________________ 8

Παράδειγμα 1.3_________________________________________________________________ 9

Άλυτα προβλήματα_______________________________________________________________ 10

Βασικές λογικές πράξεις – λογικές πύλες_______________________________________ 10

Ψηφιακή πύλη OR__________________________________________________________________ 11

Ψηφιακή πύλη AND________________________________________________________________ 11

Ψηφιακή πύλη ΝΟΤ_________________________________________________________________ 12

Ψηφιακή πύλη NAND (ΝΟΤ AND)_____________________________________________________ 12

Ψηφιακή πύλη NOR (NOT OR)_________________________________________________________ 12

Ψηφιακή πύλη XOR_________________________________________________________________ 13

Ψηφιακή πύλη XNOR (NOT XOR)______________________________________________________ 13

Συνοπτικός πίνακας λογικών πυλών_____________________________________________________ 14

Δυνατοί πίνακες αληθείας στο δυαδικό σύστημα____________________________________________ 15

Άλλοι τρόποι δυαδικής κωδικοποίησης__________________________________________________ 15

Κωδικοποίηση BCD (Binary Coded Decimal)____________________________________________ 16

Παράδειγμα 1.4________________________________________________________________ 16

Μετατροπή από BCD σε δεκαδικό__________________________________________________ 16

Παράδειγμα 1.5________________________________________________________________ 16

Κώδικας Gray___________________________________________________________________ 17

Κώδικες με ανίχνευση σφάλματος____________________________________________________ 18

Κώδικας περιττής ισοτιμίας_______________________________________________________ 18

Κώδικας άρτιας ισοτιμίας________________________________________________________ 19

Ορισμός των λογικών επιπέδων________________________________________________________ 20

Άλγεβρα Boole___________________________________________________________ 21

Ιδιότητες και κανόνες της άλγεβρας Boole________________________________________________ 21

Λογικές πράξεις με σταθερές________________________________________________________ 21

Λογικές πράξεις με μια μεταβλητή____________________________________________________ 21

Παράδειγμα 1.6________________________________________________________________ 22

Λογικές πράξεις-ιδιότητες με δυο ή περισσότερες μεταβλητές________________________________ 22

Παράδειγμα 1.7________________________________________________________________ 23

Παράδειγμα 1.8________________________________________________________________ 23

Διαδικασία σχεδίασης ψηφιακής λογικής συνάρτησης____________________________ 24

Κανονικές μορφές λογικών συναρτήσεων_________________________________________________ 25

Κανονική μορφή αθροίσματος_______________________________________________________ 25

Παράδειγμα 1.9________________________________________________________________ 25

Παράδειγμα 1.10_______________________________________________________________ 26

Σύντομη γραφή για την κανονική μορφή αθροίσματος_____________________________________ 26

Παράδειγμα 1.11_______________________________________________________________ 27

Παράδειγμα 1.12_______________________________________________________________ 27

Ημιαθροιστής___________________________________________________________________ 29

Κανονική μορφή γινομένου___________________________________________________________ 30

Σύντομη γραφή για την κανονική μορφή γινομένου_______________________________________ 31

Παράδειγμα 1.13_______________________________________________________________ 32

Σύνθεση ψηφιακού κυκλώματος_____________________________________________ 33

Σύνθεση ψηφιακών κυκλωμάτων με πύλες NAND___________________________________________ 34

Παράδειγμα 1.14_______________________________________________________________ 34

Παράδειγμα 1.15_______________________________________________________________ 35

Παράδειγμα 1.16_______________________________________________________________ 35

Αντικατάσταση πυλών με πύλες NAND__________________________________________________ 36

Σύνθεση ψηφιακών κυκλωμάτων με πύλες ΝΟR____________________________________________ 37

Αντικατάσταση πυλών με πύλες NOR____________________________________________________ 37

Ελαχιστοποίηση λογικών συναρτήσεων με τη χρήση των πινάκων Karnaugh_________ 38

Πίνακες Karnaugh__________________________________________________________________ 38

Παράδειγμα 1.17_______________________________________________________________ 40

Παράδειγμα 1.18_______________________________________________________________ 40

Παράδειγμα 1.19_______________________________________________________________ 41

Παράδειγμα 1.20_______________________________________________________________ 41

Ύπαρξη αδιάφορων περιπτώσεων______________________________________________________ 42

Πλήρης Αθροιστής_______________________________________________________________ 43

Σπινθήρες_______________________________________________________________ 45

Παράδειγμα 1.21_______________________________________________________________ 47

Ασκήσεις επανάληψης 1____________________________________________________ 49

Άσκηση 1.1_______________________________________________________________________ 49

Άσκηση 1.2_______________________________________________________________________ 49

Άσκηση 1.3_______________________________________________________________________ 50

Άσκηση 1.4_______________________________________________________________________ 50

Άσκηση 1.5_______________________________________________________________________ 50

Άσκηση 1.6_______________________________________________________________________ 51

Άσκηση 1.7_______________________________________________________________________ 52

Άσκηση 1.8_______________________________________________________________________ 52

Άσκηση 1.9_______________________________________________________________________ 53

Άσκηση 1.10______________________________________________________________________ 54

Κυκλώματα ακολουθιακής λογικής____________________________________________ 57

Γενικές μορφές κυκλωμάτων__________________________________________________________ 57

FlipFlops_______________________________________________________________________ 58

Το SR (Set-Reset) flip-flop (ff)_______________________________________________________ 59

Το Clocked SR - ff________________________________________________________________ 61

FlipFlop τύπου D_______________________________________________________________ 61

 FlipFlop τύπου T (Toggle ff)______________________________________________________ 62

FlipFlop τύπου JK______________________________________________________________ 62

Υλοποίηση σύγχρονων flip-flops με όρους SR-ff____________________________________________ 62

Υλοποίηση σύγχρονων flip-flops με όρους SR-ff____________________________________________ 63

Παράδειγμα 2.1:__________________________________________________________________ 63

Προβλήματα που σχετίζονται με απλά σύγχρονα ff________________________________________ 64

1.      Aναπήδηση εισόδου_______________________________________________________ 64

2.      Κακή λειτουργία κυκλωμάτων που χρησιμοποιούν διαδοχικά ff________________________ 65

3.      Ταλαντώσεις σε ff  λόγω ανάδρασης___________________________________________ 65

Μέθοδοι επίλυσης των προβλημάτων_________________________________________________ 66

Διάταξη “Αφέντη – Σκλάβου” ff___________________________________________________ 66

Δημιουργία εσωτερικού ρολογιού για παραγωγή παλμού βραχείας διάρκειας___________________ 66

Εφαρμογές ff_____________________________________________________________ 67

Απλοί καταχωρητές_______________________________________________________________ 68

Καταχωρητές ολίσθησης___________________________________________________________ 68

Κυκλώματα μετρητών_____________________________________________________________ 69

Ασύγχρονοι μετρητές______________________________________________________________ 70

Σύγχρονοι μετρητές_______________________________________________________________ 72

Βασικοί ορισμοί για τους μετρητές____________________________________________________ 73

Τροποποίηση του βασικού σύγχρονου μετρητή για τη δημιουργία ενός MOD-M μετρητή______________ 73

Εισαγωγή στο σχεδιασμό ψηφιακών κυκλωμάτων με διαγράμματα καταστάσεων (state diagrams)     74

Διαγράμματα καταστάσεων___________________________________________________________ 74

Παράδειγμα 2.2________________________________________________________________ 75

Πίνακες Καταστάσεων_______________________________________________________________ 76

Παράδειγμα 2.3________________________________________________________________ 76

Πίνακας διέγερσης και εξισώσεις διέγερσης________________________________________________ 77

Παράδειγμα 2.4________________________________________________________________ 77

Εξισώσεις διέγερσης______________________________________________________________ 78

Παράδειγμα 2.5________________________________________________________________ 79

Πρόβλημα 2.1_________________________________________________________________ 82

Προβλήματα από καταστάσεις που δεν χρησιμοποιούνται_____________________________________ 85

Παράδειγμα 2.6________________________________________________________________ 86

Ασκήσεις επανάληψης 2____________________________________________________ 88

Άσκηση 2.1_______________________________________________________________________ 88

Άσκηση 2.2_______________________________________________________________________ 89

Άσκηση 2.3_______________________________________________________________________ 91

Άσκηση 2.4_______________________________________________________________________ 92

Άσκηση 2.5_______________________________________________________________________ 95


Πρόλογος

 

Οι σημειώσεις αυτές αποτελούν βασικό διδακτικό βοήθημα για το μάθημα «Ψηφιακά Κυκλώματα» που διδάσκεται στο Τμήμα Πληροφορικής & Επικοινωνιών του ΤΕΙ Σερρών στο 3ο εξάμηνο σπουδών.

Η ανάπτυξη των ψηφιακών ηλεκτρονικών, που πραγματοποιήθηκε τα τελευταία 30 χρόνια, αποτελεί γεγονός, για το οποίο δεν υπάρχει κάτι ανάλογο σε κανέναν άλλο κλάδο της επιστήμης του μηχανικού. Μάλιστα κατά τη ραγδαία αυτή ανάπτυξη, ενώ το πραγματικό κόστος των ψηφιακών ολοκληρωμένων κυκλωμάτων (hardware) μειώνονταν στο μισό κάθε έτος, η σύνθεση και η πολυπλοκότητά τους τετραπλασιάζονταν κάθε τρία έτη.

Έχοντας υπόψη το παραπάνω σκηνικό της ταχύτατης ανάπτυξης, οι σημειώσεις δομήθηκαν με κατεύθυνση να παρέχουν στους φοιτητές τις αναγκαίες θεμελιώδεις έννοιες της ψηφιακής λογικής και ταυτόχρονα να τους εξοικειώνουν με μεθόδους σχεδιασμού και τεχνικές στο επίπεδο του συστήματος. Επίσης, στις σημειώσεις περιλαμβάνονται ασκήσεις για τους φοιτητές με τις λύσεις τους, ώστε να αναδεικνύεται η πρακτική χρησιμότητα των διαφόρων εννοιών που εισάγονται στη θεωρία, αλλά και ο σωστός τρόπος εφαρμογής των.

Οπωσδήποτε, για περισσότερη εμβάθυνση, απαιτείται η χρήση πρόσθετης βιβλιογραφίας, η οποία διατίθεται στη βιβλιοθήκη του ΤΕΙ Σερρών.

Αναστάσιος Μπαλουκτσής


 

Συστήματα αριθμών

Ένα σύστημα αριθμών χρησιμοποιεί ένα σύνολο συμβόλων γνωστό ως ψηφία. Υπάρχουν διάφορα συστήματα αριθμών όπως το δεκαδικό, το δυαδικό κ.λ.π.

 

Δεκαδικό σύστημα

Στο δεκαδικό σύστημα χρησιμοποιούνται δέκα ψηφία  0, 1, 2, 3, 4, 5, 6, 7, 8, & 9 , ενώ το 10 ορίζεται ως βάση του συστήματος.

 

Παράδειγμα 1.1:


Η γενική μορφή της απεικόνισης στο δεκαδικό σύστημα είναι:

 

 


ή ο  αριθμός παριστάνεται ως

 

 


όπου  dι  (0,1,…,9) είναι οι συντελεστές των αντίστοιχων δυνάμεων του 10.

 

Δυαδικό σύστημα

Γενικά οι αριθμοί μπορεί να έχουν βάσεις διάφορες του 10, για παράσειγμα:

βάση 16, δεκαεξαδικό σύστημα,

βάση 8,   οκταδικό σύστημα, ή

βάση 2,   δυαδικό σύστημα.

 

Στο δυαδικό σύστημα που έχει βάση το 2 υπάρχουν δύο ψηφία, το 0 και το 1.

 

 

Παράδειγμα δυαδικού αριθμού:

 

 

 

ο αντίστοιχος δεκαδικός του 1010 είναι ο 8+0+2+0=10

 

Η μορφή της γενικής παράστασης στο δυαδικό σύστημα είναι:

 

 


ή ο  αριθμός παριστάνεται ως

όπου bi (0 ή 1) είναι δυαδικά ψηφία (bits) που παριστάνουν τους συντελεστές των αντίστοιχων δυνάμεων του 2.

Για παράδειγμα οι ακέραιοι δυαδικοί αριθμοί με 4 ψηφία είναι της μορφής:

 

 


Ο μεγαλύτερος αριθμός με 4 ψηφία είναι ο 1111 ο οποίος είναι ισοδύναμος με τον δεκαδικό αριθμό 15.

                                               

                                               

                                               

 

Γενικά ένας δυαδικός αριθμός με n ψηφία μπορεί να παραστήσει ένα εύρος από  2n δεκαδικoύς αριθμούς:

1 ψηφίο   0 και 1    

2 ψηφία   0  -  3     

3 ψηφία   0  -  7

4 ψηφία   0 - 15

5 ψηφία   0 – 31     κ.λ.π.

     

Μετατροπή δεκαδικού σε δυαδικό

Για τη μετατροπή ενός ακέραιου δεκαδικού σε δυαδικό χρησιμοποιείται η διαδικασία της διαδοχικής διαίρεσης ως εξής:

Γενική μορφή ενός ακεραίου δυαδικού είναι:

και ο αντίστοιχος δεκαδικός του:

συνεπώς παρατηρούμε ότι διαιρώντας τον D με το 2 προκύπτει ως πηλίκο το

 

 


και ως υπόλοιπο το

Κατόπιν διαιρώντας το πηλίκο με 2 θα προκύψει ως νέο πηλίκο το

 

 


και υπόλοιπο

Επαναλαμβάνεται η διαδικασία μέχρι να προκύψει πηλίκο μηδέν. Τα υπόλοιπα των διαιρέσεων είναι ουσιαστικά τα ψηφία του δυαδικού αριθμού.

 

Παράδειγμα 1.2:

Να μετατραπεί ο ακέραιος 1910  στον αντίστοιχο δυαδικό B2

 

Απάντηση  --(επαλήθευση)

1η διαίρεση με το 2;

             D/2=19/2= πηλίκο 9 και υπόλοιπο 1     άρα                 b0=1

2η διαίρεση με το 2;

9/2= πηλίκο 4 και υπόλοιπο 1     άρα                            b1=1

3η διαίρεση με το 2;

4/2= πηλίκο 2 και υπόλοιπο 0     άρα                            b2=0

4η διαίρεση με το 2;

2/2= πηλίκο 1 και υπόλοιπο 0     άρα                            b3=0

5η διαίρεση με το 2;

 1/2= πηλίκο 0 και υπόλοιπο 1     άρα                           b4=1

 συνεπώς ο αντίστοιχος δυαδικός αριθμός είναι:

Β2=10011=1910

 

Για τη μετατροπή του κλασματικού μέρους ενός δεκαδικού αριθμού στο αντίστοιχο κλασματικό μέρος του δυαδικού χρησιμοποιείται η διαδικασία των διαδοχικών πολλαπλασιασμών ως εξής:

Γενική μορφή του κλασματικού μέρους ενός δυαδικού είναι:

και το αντίστοιχο κλασματικό μέρος του δεκαδικού είναι:

 

 

συνεπώς παρατηρούμε ότι πολλαπλασιάζοντας τον D με το 2 προκύπτει;

 

 


άρα το ακέραιο μέρος του νέου αριθμού (0 ή 1) είναι το ψηφίο          και το κλασματικό του μέρος το

 

 

Κατόπιν πολλαπλασιάζουμε το νέο κλασματικό μέρος με 2 οπότε προκύπτει το ψηφίο                        

Επαναλαμβάνεται η διαδικασία μέχρι να προκύψει κλασματικό μέρος μηδέν ή να επιτευχθεί η επιθυμητή ακρίβεια.

 

Παράδειγμα 1.3:

Να μετατραπεί ο δεκαδικός 28.375 στον αντίστοιχο δυαδικό

 

Απάντηση

Πρώτα υπολογίζεται το ακέραιο μέρος:

1η διαίρεση με το 2:

D/2=28/2= πηλίκο 14 και υπόλοιπο 0     άρα                     b0=0

2η διαίρεση με το 2:

14/2= πηλίκο 7 και υπόλοιπο 0     άρα                               b1=0

3η διαίρεση με το 2:

7/2= πηλίκο 3 και υπόλοιπο 1     άρα                                 b2=1

 

4η διαίρεση με το 2:

3/2= πηλίκο 1 και υπόλοιπο 1     άρα                                 b3=1

5η διαίρεση με το 2:

 1/2= πηλίκο 0 και υπόλοιπο 1     άρα                               b4=1

Συνεπώς το ακέραιο μέρος του δυαδικού είναι: 111002

Κατόπιν υπολογίζεται το κλασματικό μέρος του δυαδικού:

0,375 x 2 = 0,75 με ακέραιο μέρος  0 και κλασματικό 0,75

0.75   x 2 = 1.50 με ακέραιο μέρος  1 και κλασματικό 0,50

0.50   x 2 = 1.00 με ακέραιο μέρος  1 και κλασματικό 0

Συνεπώς το κλασματικό μέρος του δυαδικού είναι: ,0112

Ο αντίστοιχος δυαδικός είναι: 11100, 0112

 

 

Άλυτα προβλήματα:

 (1) Να μετατραπούν οι δεκαδικοί αριθμοί στους αντίστοιχους δυαδικούς:

(α)                710

(β)              3910

(γ)               7510

(δ)             13010

(ε)                 0,87510

 

(2)  Να μετατραπούν οι δυαδικοί αριθμοί στους αντίστοιχους δεκαδικούς: --(επαλήθευση)

(α)              001012

(β)            1010112

(γ) 0,11012

(δ) 111101,1011112

 

Βασικές λογικές πράξεις – λογικές πύλες

Μία λογική πράξη μεταξύ μεταβλητών είναι μία συνάρτηση που ορίζεται από έναν πίνακα αληθείας (truth table). Το ηλεκτρικό κύκλωμα που εκτελεί μία λογική πράξη ονομάζεται λογική ή ψηφιακή πύλη και παριστάνεται από ένα σύμβολο. Τα δυαδικά ψηφία 1 και 0, που ουσιαστικά παριστάνουν τις δύο καταστάσεις αληθής (true), ψευδής (false), στη φυσική τους υπόσταση είναι δυο διακριτά  επίπεδα  ηλεκτρικής τάσης (συνήθως στην ιδανική περίπτωση 5V και 0V).

 

Ψηφιακή πύλη OR --(πειραματισμός)

H έξοδος είναι αληθής (true) (1), εάν μια από τις εισόδους ή και οι δυο είναι αληθείς (1)

 

        Σύμβολο                                                             Πίνακας  αληθείας     

                    

                        

                                               

 

 

                                                                             

                                                                     

                                                                    

                                                                

                       

                                                           

Ψηφιακή πύλη AND --(πειραματισμός)

H έξοδος είναι αληθής (1), όταν και οι δυο είσοδοι είναι αληθείς (1)

 

Σύμβολο                                 Πίνακας αληθείας      

                                     

                                       

                        

                          

                         

 

              

 

Ψηφιακή πύλη ΝΟΤ --(πειραματισμός)

Δημιουργεί αντιστροφή του σήματος εισόδου

Σύμβολο                                    Πίνακας αληθείας       

                               

                                                    

                             

                            

                              

 

               

Ψηφιακή πύλη NAND (ΝΟΤ AND)

Η έξοδος είναι ψευδής (0)  μόνο όταν Α και Β είναι αληθείς (1)

 

            Σύμβολο                                 Πίνακας αληθείας      

                          

                                                                           

                                                                    

                                                                     

                                                                 

 

Ψηφιακή πύλη NOR (NOT OR) --(πειραματισμός)

H έξοδος είναι αληθής (1), όταν και οι δύο είσοδοι είναι ψευδείς (0)

 

Σύμβολο                         Πίνακας αληθείας      

                       

                                              

                         

                          

                         

Ψηφιακή πύλη XOR --(πειραματισμός)

H έξοδος είναι αληθής (1), όταν ή μία εκ των δύο εισόδων είναι αληθής (1), αλλά όχι και οι δύο ταυτόχρονα:

 

Σύμβολο                                                                 Πίνακας αληθείας      

                                                                                                       

                         

 


                         

 

 

 

Ψηφιακή πύλη XNOR (NOT XOR)

H έξοδος είναι αληθής (1) όταν και οι δυο είσοδοι είναι ψευδείς (0), ή και οι δυο είναι αληθείς (1)

       Σύμβολο                                           Πίνακας αληθείας      

                        

                         

                         

                         

                           

                                                                            

                                                                      

                                                                    

                                                                  

                                                                     

 

 

Συνοπτικός πίνακας λογικών πυλών

 

 

 

 

 

 

 

 

 

 

Δυνατοί πίνακες αληθείας στο δυαδικό σύστημα

Ένας πίνακας αληθείας παριστάνει τη συνάρτηση μεταξύ των εισόδων και της εξόδου ενός λογικού συστήματος. Για δυο εισόδους (F, T) υπάρχουν τέσσερις πιθανοί συνδυασμοί πραγματικών τιμών:

 

FF, FT, TF, TT

 

Επειδή κάθε δυνατή είσοδος μπορεί να δώσει δύο διαφορετικές εξόδους (0, 1) συνεπάγεται ότι οι δυνατοί πίνακες αληθείας για ένα λογικό σύστημα δύο εισόδων είναι:  

 


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Άλλοι τρόποι δυαδικής κωδικοποίησης

Εκτός από την κανονική δυαδική κωδικοποίηση υπάρχουν κι΄ άλλοι τρόποι δυαδικής κωδικοποίησης οι οποίοι χρησιμοποιούνται σε διάφορες περιπτώσεις.

 

Κωδικοποίηση BCD (Binary Coded Decimal)

Η κωδικοποίηση καθιστά δυνατή την απλή μετατροπή μεταξύ δυαδικού και δεκαδικού αριθμού. Κάθε ψηφίο ενός δεκαδικού αριθμού αντικαθίσταται από 4 bits του αντίστοιχου δυαδικού του.

 

Παράδειγμα 1.4:

Μετατροπή  του  4510  σε BCD

 

 

 

 

 

Επομένως  4510=01000101

 

Μετατροπή από BCD σε δεκαδικό

Η δυαδική λέξη χωρίζεται σε ομάδες των 4bits ξεκινώντας από το λιγότερο σημαντικό ψηφίο. Κατόπιν η κάθε ομάδα μετατρέπεται στον αντίστοιχο δεκαδικό.

 

Παράδειγμα 1.5:

Μετατροπή 1010011 σε δεκαδικό

 

 Απάντηση: