Σύγχρονοι Απαριθμητές Διάλεξη 8
Δομή της διάλεξης Εισαγωγή Σύγχρονος Δυαδικός Απαριθμητής Σύγχρονος Δεκαδικός Απαριθμητής Προγραμματιζόμενοι Απαριθμητές Ασκήσεις 2
Σύγχρονοι Απαριθμητές Εισαγωγή 3
Εισαγωγή Η βασική απαίτηση στον σύγχρονο απαριθμητή είναι η ταυτόχρονη αλλαγή των εξόδων του Η απαίτηση αυτή οδηγεί στο συμπέρασμα ότι όλα τα Flip-Flops πρέπει να δέχονται ταυτόχρονα το CLK Πρέπει να προετοιμάζουμε την είσοδο T=J=K κάθε Flip-Flop έτσι ώστε αυτό να αλλάζει μόνο όταν πρέπει και όχι σε κάθε παρυφή του CLK 4
Εισαγωγή Στον διπλανό πίνακα δίνεται η δυαδική απαρίθμηση ενός 4 bit απαριθμητή 5
Εισαγωγή Παρατηρούμε: το Q 0 αλλάζει σε κάθε παρυφή το Q 1 αλλάζει μόνο αν προηγουμένως το Q 0 είναι 1 το Q 2 αλλάζει μόνο αν προηγουμένως το Q 0 και το Q 1 είναι 1 το Q 3 αλλάζει μόνο αν προηγουμένως το Q 0, το Q 1 και το Q 2 είναι 1 6
Σύγχρονοι Απαριθμητές Σύγχρονος Δυαδικός Απαριθμητής 7
Περιγραφή κυκλώματος Με βάση την προηγούμενη παρατήρηση για την αλλαγή των Flip- Flop σχεδιάζουμε τον σύγχρονο απαριθμητή έτσι ώστε το Τ κάθε Flip-Flop να είναι το λογικό και των προηγουμένων Flip-Flop Το σήμα CLK οδηγεί ταυτόχρονα όλα τα Flip-Flop 8
Κυματομορφές Η δυαδική απαρίθμηση του σύγχρονου απαριθμητή μακροσκοπικά είναι όμοια με αυτή του ασύγχρονου απαριθμητή 9
Λεπτομέρεια (15 0) ΕίναισαφέςότιόλεςοιέξοδοιτωνFlip-Flops αλλάζουν ταυτόχρονα 10
Σύγχρονοι Απαριθμητές Σύγχρονος Δεκαδικός Απαριθμητής 11
Σχεδίαση Η σχεδίαση του σύγχρονου απαριθμητή modulo Μ απαιτεί τη σύγχρονη μετάβαση της τιμής του απαριθμητή από την τιμή M-1 στο μηδέν Γιατησχεδίασηενόςσύγχρονουαπαριθμητήmodulo Μ δεν χρησιμοποιούμε τις εισόδους CLR των Flip-Flops αλλά προετοιμάζουμε τις εισόδους T έτσι ώστε μετά την εμφάνιση της τιμής M-1 να εμφανιστεί η τιμή μηδέν Στο δεκαδικό απαριθμητή πρέπει μετά την εμφάνιση της τιμής 9 να εμφανιστεί η τιμή 0 Με συνδυαστικό κύκλωμα ανιχνεύεται η Μ-1 τιμή και η έξοδος του συνδυαστικού κυκλώματος επιβάλλεται στις εισόδους Τ των Flip-Flops έτσι ώστε η επόμενη κατάσταση να είναι το μηδέν 12
Σχεδίαση 13
Κύκλωμα 14
Κυματομορφές 15
Λεπτομέρεια (9 0) 16
Λεπτομέρεια (9 0) Λεπτομέρεια μετάβασης της τιμής του σύγχρονου δεκαδικού απαριθμητή από το 9 στο 0 Όλα τα bits αλλάζουν ταυτόχρονα και δεν εμφανίζεται καμία απαγορευμένη κατάσταση 17
Σύγχρονοι Απαριθμητές Προγραμματιζόμενοι Απαριθμητές 18
Εισαγωγή Οι προγραμματιζόμενοι απαριθμητές έχουν την δυνατότητα να παράγουν έναν παλμό στην έξοδό τους σε κάθε Ν παλμούς της εισόδου Ο αριθμός Ν έχει τη δυνατότητα να αλλάζει σε αντίθεση με τους απαριθμητές modulo Ν Οι προγραμματιζόμενοι απαριθμητές έχουν τη δυνατότητα να αλλάζουν το modulo της απαρίθμησης 19
O Counter 74192 Δυνατότητα για υλοποίηση πολύπλοκων προγραμματιζόμενων απαριθμητικών διατάξεων Δυνατότητα μέτρησης και προς τα επάνω (count up) και προς τα κάτω (count down) Είναι δεκαδικός (modulo 10) Έχει τις παρακάτω εισόδους / εξόδους: Μία είσοδο ρολογιού για την Count Up (CU) απαρίθμηση. Η ανιούσα παρυφή του ρολογιού αυξάνει την τιμή του counter κατά ένα, εφ όσον η είσοδος Count Down είναι 1 Μία είσοδο ρολογιού για την Count Down (CD) απαρίθμηση. Η ανιούσα παρυφή του ρολογιού μειώνει την τιμή του counter κατά ένα, εφ όσον η είσοδος Count Up είναι 1 Μία είσοδο Clear. Όταν το Clear είναι 1 ητιμήτουcounter γίνεται 0000. ΗείσοδοςClear είναι ασύγχρονη και υπερισχύει των εισόδων Count Up και Count Down Μία είσοδο Load. Όταν το Load είναι 0 ητιμήτουcounter γίνεται ίση με τις εισόδους preset. Τέσσερις εισόδους Preset (A B C D) που μεταφέρουν την τιμή τους στα τέσσερα Flip Flops του counter όταν η είσοδος Load είναι 0 Τέσσερις εξόδους (QA QB QC QD) που αντιστοιχούν στην τιμή των τεσσάρων Flip Flop του Counter από LSB προς MSB Μία έξοδο Terminal Count Up (TCU). Η έξοδος αυτή γίνεται 0 ότανητιμήτουcounter είναι 1001 (9) και η είσοδος Count Up είναι 0 Μία έξοδο Terminal Count Down (TCD). Η έξοδος αυτή γίνεται 0 όταν η τιμή του counter είναι 0000 (0) και η είσοδος Count Down είναι 0 20
Μπλοκ Διάγραμμα Ο 74192 μπορεί να χρησιμοποιηθεί σε συνδεσμολογία σειράς (cascade) για την υλοποίηση πολύπλοκων απαριθμητικών διατάξεων 21
Count Down Απαρίθμηση Η συνδεσμολογία του counter 74192 για count down απαρίθμηση δείχνεται στο παρακάτω σχήμα Ο counter 1 μετρά τις μονάδες και έχει Presets (0010)= 2 και ο counter 2 μετρά τις δεκάδες και έχει Presets (0001)= 1 22
Κυματομορφές Count Down 23
Count Down Απαρίθμηση Στο προηγούμενο σχήμα φαίνεται η προς τα κάτω απαρίθμηση του συστήματος των δύο counters με preset = 12 Σε κάθε ανιούσα παρυφή του clock η τιμή του απαριθμητή μειώνεται κατά ένα Κάθε τιμή του απαριθμητή διαρκεί μία περίοδο του clock εκτός από την τιμή 0 και 12 (preset τιμή) Ητιμή0 διαρκεί όσο το clock είναι 1 και η τιμή 12 εμφανίζεται όσο το clock είναι 0 Ο απαριθμητής εμφανίζει συνολικά 13 καταστάσεις (από 0 έως και 12) μέσα σε 12 περιόδους του clock 24
Λεπτομέρεια γύρω από το σήμα Load (TCD 2) 25
Λεπτομέρεια γύρω από το σήμα Load (TCD 2) ΗπίπτουσαπαρυφήτουClock θέτει το TCD 1 σε Low μετά από χρόνο Τ d ΗπίπτουσαπαρυφήτουTCD 1 θέτει το TCD 2 σε Low μετά από χρόνο Τ d Επειδή το TCD 2 είναι Low οι counters γίνονται preset στο 12 Επειδή το περιεχόμενο των counters είναιδιάφοροαπότομηδένταtcd 1 και 2 πηγαίνουν σε High μετά από χρόνο Τ Load 26
Μέγιστη Συχνότητα Καλής Λειτουργίας Ο απαριθμητής είναι δυνατόν να δεχθεί την ανιούσα παρυφή στην είσοδο μετά από χρόνο T SH (Setup Hold time). Ο χρόνοςαυτός απαιτείται ώστε τα κυκλώματα που δέχονται τον παλμό TCD 2 να σταθεροποιήσουν την κατάστασή τους. Αυτόςείναικαιολόγοςπουη ανιούσα παρυφή του TCD 1 δεν απαριθμείται αμέσως μετά το Load Έτσι από την πίπτουσα παρυφή του Clk μέχρι την επόμενη ανιούσα παρυφή το χρονικό διάστημα που θα μεσολαβήσει είναι ΚΤ d +T Load +T SH (Όπου Κ είναι ο αριθμός των counters που χρησιμοποιούνται στο σύστημα του απαριθμητή) Συνεπώς η μέγιστη συχνότητα καλής λειτουργίας για το σύστημα των counters είναι: 27
Count Up Απαρίθμηση Συνδεσμολογία του counter 74192 για count up απαρίθμηση 12 καταστάσεων Ο counter 1 μετρά τις μονάδες και πρέπει να έχει Presets (0111)= 7 Ο counter 2 μετρά τις δεκάδες πρέπει να έχει Presets (1000)= 8 28
Count Up Απαρίθμηση Παρόμοια λειτουργία του συστήματος με την προς τα κάτω απαρίθμηση Οι κυματομορφές είναι ίδιες. Μόνο οι τιμές των counters είναι διαφορετικές. Όμως και εδώ μπορούμε να παρατηρήσουμε ότι το άθροισμα των τιμών τους είναι πάντα εννέα (9) Για απαρίθμηση Ν παλμών η τιμή που πρέπει να τεθεί στα presets των counter είναι η 9-Ν Για παράδειγμα, για να απαριθμήσουμε 12 παλμούς πρέπει να θέσουμε στα presets του απαριθμητή την τιμή 99-12=87, δηλαδή την τιμή 8 στον counter που μετρά τις δεκάδες και την τιμή 7 στον counter που μετρά τις μονάδες Στο επόμενο σχήμα δείχνεται η προς τα άνω απαρίθμηση του συστήματος των δύο counters με preset = 87 29
Κυματομορφές Count Up 30
Λεπτομέρεια γύρω από το σήμα Load (TCU 2) 31
Λεπτομέρεια γύρω από το σήμα Load (TCU 2) ΗπίπτουσαπαρυφήτουClock θέτει το TCU 1 σε Low μετά από χρόνο Τ d ΗπίπτουσαπαρυφήτουTCU 1 θέτει το TCU 2 σε Low μετά από χρόνο Τ d Επειδή το TCU 2 είναι Low οι counters γίνονται preset στο 87 Επειδή το περιεχόμενο των counters είναι διάφορο από 9 τα TCU 1 και 2 πηγαίνουν σε High μετά από χρόνο Τ Load 32
Πρόβλημα Ο παλμός που αρχικοποιεί τους counters (Load) είναι πολύ μικρός. Έτσι είναι δυνατόν κάποιο από τα Flip-Flops να μην μπορέσει να τεθεί στην κατάσταση που πρέπει με αποτέλεσμα την λανθασμένη λειτουργία του συστήματος Το πρόβλημα αυτό αντιμετωπίζεται με την προσθήκη ενός πυκνωτή στην γραμμή Load που αυξάνει τον χρόνο που η τάση είναι σε χαμηλή στάθμη Ακόμα μία μέθοδος που λύνει το παραπάνω πρόβλημα, ενώ ταυτόχρονα αυξάνει σημαντικά την συχνότητα καλής λειτουργίας του συστήματος παρουσιάζεται ευθύς αμέσως 33
Απαριθμητής με την τεχνική Early Decode Η τεχνική Early Decode έγκειται στη πρώιμη αναγνώριση της επερχόμενης κατάστασης στην οποία πρέπει να αντιδράσει το κύκλωμα σύγχρονα με την παρυφή του Clock Μία τέτοια τεχνική εφαρμόζεται στους σύγχρονους απαριθμητές. Σήμερα τα περισσότερα ακολουθιακά κυκλώματα εφαρμόζουν τεχνικές Early Decoding Ένα ιδιαίτερο χαρακτηριστικό των κυκλωμάτων με αυτή την τεχνική είναι ότι το Clock είναι κοινό σε όλα τα Flip Flops και ότι οι άλλες είσοδοι των Flip Flops προέρχονται από συνδυαστικά κυκλώματα που ελέγχουν την προηγούμενη κατάσταση του κυκλώματος 34
Count Down Απαρίθμηση ΟπαλμόςLoad προκύπτει από τη δειγματοληψία της τιμής του απαριθμητή και έχει διάρκεια ίση με την περίοδο του ρολογιού 35
Count Down Απαρίθμηση Ο ψηφιακός συγκριτής ανιχνεύει την τιμή 2 θέτοντας την είσοδο του Flip-Flop D σε χαμηλή στάθμη Η στάθμη αυτή δειγματοληπτείται σε κάθε ανιούσα παρυφή του ρολογιού και συνεπώς εμφανίζεται σε χαμηλή στάθμη την χρονική περίοδο που ο απαριθμητής θα έδειχνε την τιμή 1 Έτσι, κατά αυτή την χρονική περίοδο ο απαριθμητής φορτώνεται με την τιμή των Presets 36
Κυματομορφές 37
Διαδικασία φόρτωσης του απαριθμητή 38
Διαδικασία φόρτωσης του απαριθμητή Η ανιούσα παρυφή του ρολογιού ξεκινά την παρακάτω διαδικασία: Η ανιούσα παρυφή του Clock θέτει ταυτόχρονα το Q σε Low και τον Counter 1 στην τιμή 1 μετά από χρόνο Τ d Επειδή το Q είναι Low οι counters γίνονται preset στο 12 μετά από χρόνο Τ d, και ταυτόχρονα, επειδή ο Counter 1 δεν είναι 2 το D γίνεται 1 Επειδή ο παλμός εξόδου του Flip Flop είναι σύγχρονος με την ανιούσα παρυφή του Clock, ο παλμός που σταματά την φόρτωση των Presets (θέτει το Q= 1 ) δεν απαριθμείται Στο επόμενο σχήμα δείχνεται σε μεγέθυνση η λεπτομέρεια αυτή 39
Λεπτομέρεια στο τέλος της διαδικασίας Load 40
Λεπτομέρεια στο τέλος της διαδικασίας Load Παρατηρείστε ότι η ανιούσα παρυφή του Clock βρίσκει τους counters σε κατάσταση Load, αφού το Q είναι 0. Εξ αιτίας αυτής της παρυφής το Q μετά από μία μικρή καθυστέρηση γίνεται 1 και συνεπώς οι Counters θα μπορέσουν να μετρήσουν την επόμενη παρυφή Η μέγιστη συχνότητα καλής λειτουργίας στον απαριθμητή με την μέθοδο του Early Decode είναι ανεξάρτητη από τον αριθμό των Counters που χρησιμοποιούνται στον απαριθμητή και ισούται με 1/(4T d ) Συνεπώς η τεχνική Early Decode βελτιώνει σημαντικά τις επιδώσεις του απαριθμητή αλλά απαιτεί περισσότερες πύλες για την υλοποίησή της 41
Count Up απαρίθμηση Κατ αντιστοιχία, για την υλοποίηση του Count Up απαριθμητή με την τεχνική Early Decode θα πρέπει να ανιχνεύεται συμπληρωματική ως προς 2 τιμή, δηλαδή η τιμή 99-2=97 42
Κυματομορφές 43
Κυματομορφές Οι κυματομορφές είναι ίδιες με αυτές που ισχύουν στην Count Down απαρίθμηση Οι αριθμοί που εμφανίζονται στους Counters είναι συμπληρωματικοί ως προς το 9 Οι ίδιες κυματομορφές εμφανίζονται και στην μεγέθυνση της στιγμής του Load 44
Λεπτομέρεια της διαδικασίας Load 45
Σύγχρονοι Απαριθμητές Ασκήσεις 46
Άσκηση 1 Εκφώνηση (προς λύση) Ποια είναι η λειτουργία του παρακάτω κυκλώματος; Να υποθέσετε σαν αρχική κατάσταση μία από τις ακόλουθες: 1000, 0100, 0010, 0001 OUT1 OUT2 OUT3 OUT4 IN D Q D Q D Q D Q CLK 47
Άσκηση 2 Εκφώνηση (προς λύση) Ποια είναι η λειτουργία του παρακάτω κυκλώματος; (Ονομάζεται Mobius ή Johnson counter) OUT1 OUT2 OUT3 OUT4 IN D Q D Q D Q D Q CLK 48
Άσκηση 3 Εκφώνηση (προς λύση) Ποια είναι η λειτουργία του παρακάτω κυκλώματος; OUT1 OUT2 OUT3 OUT4 CLK D Q D Q D Q D Q "1" 49
Άσκηση 4 Εκφώνηση (προς λύση) Σχεδιάστε το αναλυτικό διάγραμμα καταστάσεων του Σύγχρονου Δυαδικού και του Σύγχρονου Δεκαδικού Απαριθμητή. 50
Πανεπιστήμιο Πατρών, Πολυτεχνική Σχολή Τμήμα Ηλεκτρολόγων Μηχανικών & Τεχνολογίας Υπολογιστών Τομέας Ηλεκτρονικής & Υπολογιστών, Εργαστήριο Ηλεκτρονικών Εφαρμογών Η διάλεξη έγινε στο πλαίσιο του προγράμματος EΠΕΑΕΚ II από το μεταπτυχιακό φοιτητή Παπαμιχαήλ Μιχαήλ για το μάθημα ΨηφιακάΟλοκληρωμένα Κυκλώματα και Συστήματα Καθηγητής Κωνσταντίνος Ευσταθίου 2008 51