ΑΣΚΗΣΗ 9 ΑΣΥΓΧΡΟΝΟΙ ΜΕΤΡΗΤΕΣ (COUNTERS) Αντικείμενο της άσκησης: H σχεδίαση και η χρήση ασύγχρονων απαριθμητών γεγονότων. Με τον όρο απαριθμητές ή μετρητές εννοούμε ένα ακολουθιακό κύκλωμα με FF, οι καταστάσεις εξόδων των οποίων αλλάζουν σε κάθε ενεργό μέτωπο του παλμού του ρολογιού. Συνήθως αυτές οι αλλαγές καταστάσεων των εξόδων των FF σχηματίζουν μια σειρά δυαδικών αριθμών, αύξουσα ή φθίνουσα και μάλιστα κυκλικά. Όταν οι δυαδικοί αριθμοί που σχηματίζονται με αυτό τον τρόπο αποτελούν μια συνεχή σειρά δυαδικών αριθμών, τότε ο απαριθμητής ονομάζεται δυαδικός απαριθμητής. Οι ασύγχρονοι απαριθμητές (μετρητές) κατασκευάζονται από FF, τα οποία έχουν χρονισμό με ακμοπυροδότηση, όμως το κάθε FF έχει διαφορετικό χρονισμό. Πιο συγκεκριμένα, το κάθε FF δέχεται ως σήμα στην είσοδο του ρολογιού του την έξοδο από το προηγούμενό του FF, εκτός από το πρώτο FF που δέχεται σήμα από εξωτερικό ρολόι (Clk). Τέσσερα FF, συνδεσμολογημένα ως Τ FF, και συνδεδεμένα αλυσιδωτά μεταξύ τους (η έξοδος του προηγούμενου στο clock του επόμενου) είναι ικανά να απαριθμήσουν έως 2 4 =6 διαφορετικές παλμούς εισόδου (γεγονότα ή καταστάσεις). Το κύκλωμα αυτό λέγεται : τετραψήφιος ασύγχρονος δυαδικός απαριθμητής ή απαριθμητής κυμάτωσης (Ripple counter) ή ασύγχρονος απαριθμητής γεγονότων. +5V T clk 3 2 Οι έξοδοι όλων των FF αλλάζουν κατάσταση σε κάθε εισερχόμενο παλμό χρονισμού, διότι ==+5V (λογικό ), αφού όπως γνωρίζουμε για ==, + =. Η λειτουργία του απαριθμητή καθώς και η διαίρεση συχνότητας που επιτυγχάνεται γίνεται εύκολα αντιληπτή από το ακόλουθο διάγραμμα χρονισμού. Οι ασύγχρονοι ακροδέκτες set και clear, οι οποίοι είναι ενεργοί σε λογικό (active low), είναι συνδεδεμένοι σε λογικό (+5V) προκειμένου να μην ενεργούν.
CL 2 3 CL 3 2 2 3 4 5 6 7 8 9 2 3 4 5 6 Ο παλμός CL ενεργεί στην κατερχόμενη παρυφή όπως φαίνεται και από το διάγραμμα χρονισμού. Από το διάγραμμα χρονισμού επίσης φαίνεται ότι κάθε FF αλλάζει κατάσταση όταν η έξοδος του προηγούμενου αλλάζει από. Αυτό σημαίνει ότι η συχνότητα των παλμών εξόδου κάθε FF είναι η μισή της συχνότητας των παλμών εισόδου του. Δηλαδή στο έχουμε 2, στο έχουμε 4, στο 2 έχουμε 8, στο 3 έχουμε 6 του αρχικού clock παλμού. Η διαίρεση συχνότητας γενικότερα, είναι μια εφαρμογή των ασύγχρονων απαριθμητών. Στο παράδειγμα η έξοδος 3 δίνει παλμούς 6 του CL. 2
Ένα σημαντικό πρόβλημα που υπάρχει σε αυτού του είδους τους απαριθμητές είναι η συνολική χρονοκαθυστέρηση (propagation delay) στη μεταβολή των εξόδων του. Ο παλμός χρονισμού της τελευταίας βαθμίδας περιέχει την χρονοκαθυστέρηση όλων των προηγούμενων βαθμίδων (λόγω της σύνδεσης της εξόδου κάθε βαθμίδας με το clock της επόμενης). Εάν η συνολική καθυστέρηση είναι μεγαλύτερη της περιόδου του clock παλμού τότε είναι αδύνατη η λειτουργία του συγκεκριμένου απαριθμητή. Προφανές είναι ότι η μέγιστη συχνότητα λειτουργίας εξαρτάται από την τεχνολογία κατασκευής των FF και η περίοδος Τ του εξωτερικού ρολογιού θα πρέπει να είναι μικρότερη ή ίση του τετραπλάσιου του χρόνου καθυστέρησης διάδοσης εκάστου FF (T clk 4 x propagation delay εκάστου FF). Απαριθμητής με επιθυμητό "MOD". Το βασικό κύκλωμα ασύγχρονου απαριθμητή, ανάλογα με το πλήθος των FF που το αποτελούν, δίνει την δυνατότητα αρίθμησης σε ακέραιες δυνάμεις του "2" (2, 4, 8, 6, 32 κλπ.). Η χρήση του ασύγχρονου ακροδέκτη Clear δίνει μία απλή μέθοδο για τη διακοπή της απαρίθμησης στο επιθυμητό σημείο. Εάν ενεργοποιηθεί το Clear στην κατάλληλη χρονική στιγμή (του επιθυμητού MOD), τότε υπάρχει σχεδόν ταυτόχρονη μετάβαση του μετρητή σε μηδενική κατάσταση (όλες οι έξοδοι των FF οδηγούνται στο ). Εάν η ενέργεια του Clear σταματήσει και εφόσον συνεχίζεται η παλμοσειρά στην είσοδο CL, θα αρχίσει πάλι η απαρίθμηση. Στην περίπτωση που τα FF διαθέτουν ασύγχρονες εισόδους με ενεργό κατάσταση (active low), τη λειτουργία του μηδενισμού του απαριθμητή είναι δυνατόν να εξασφαλίσει μια πύλη "NAND", η οποία θα προσφέρει ένα λογικό όταν οι είσοδοι της δεχθούν λογικό "". Άρα συνδέοντας τις εισόδους μιας πύλης NAND στις επιθυμητές εξόδους των FF και την έξοδο της πύλης στους ακροδέκτες Clear των FF, θα δημιουργηθεί ένα λογικό, το οποίο ενεργεί σαν Clear στον μετρητή όταν οι και οι είσοδοι της πύλης γίνουν. Ο μηδενισμός των εξόδων των FF φέρνει πάλι την έξοδο της πύλης NAND σε λογικό, που αφήνει τους ακροδέκτες Clear ανενεργούς. Παράδειγμα ασύγχρονου μετρητή MOD 6 με - FF. Για τον μετρητή αυτό απαιτούνται 3 FF που θα συνδεσμολογηθούν ως T FF. Το σύστημα θα έχει τη δυνατότητα απαρίθμησης μέχρι 8 (2 3 ) διαφορετικές καταστάσεις. Η προδιαγραφή απαιτεί ο απαριθμητής να μετρήσει 6 διαφορετικές καταστάσεις (,, 2, 3, 4, 5) και να επανέλθει στην αρχική. Αυτό επιτυγχάνεται με μία πύλη NAND που θα αναλάβει να ενεργοποιήσει τους ακροδέκτες clear των FF όταν η απαρίθμηση φθάσει στη μέγιστη επιθυμητή τιμή. 3
Clk 2 Clear Όπως βλέπουμε στο διάγραμμα χρονισμού, απαριθμούνται πλήρως 6 καταστάσεις, από μέχρι και και στην αμέσως επόμενη κατάσταση ( 2 = ) έχουμε μηδενισμό και επανεκκίνηση της μέτρησης. Για να ενεργοποιήσουμε τις ασύγχρονες εισόδους μηδενισμού, χρησιμοποιούμε μια πύλη NAND αφού οι ασύγχρονες είσοδοι είναι active low. Η πύλη NAND οδηγείται από τα σήματα των εξόδων των FF που τη συγκεκριμένη στιγμή έχουν τιμή λογικό, δηλαδή τα 2 και, οπότε η έξοδός της μεταβαίνει από το λογικό, που είχε μέχρι εκείνη τη στιγμή, στο λογικό, ενεργοποιώντας έτσι τις ασύγχρονες εισόδους Clear όλων των FF ταυτόχρονα. Αυτό έχει ως αποτέλεσμα το μηδενισμό όλων των εξόδων των FF και την επανεκκίνηση της μέτρησης από την αρχή (), ενώ παράλληλα ή έξοδος της πύλης NAND επανέρχεται στο λογικό επειδή μηδενίζονται οι είσοδοί της. Να σημειωθεί ότι η ασύγχρονη είσοδος Preset που δεν συμμετέχει στη λειτουργία του απαριθμητή είναι συνδεμένη στο +V cc (λογικό ), οπότε είναι ανενεργή. Το κύκλωμα του απαριθμητή MOD 6 είναι: +5V T clk 2 4
Πειραματική Διαδικασία.. Να υλοποιήσετε στο EWB τριψήφιο ασύγχρονο δυαδικό μετρητή αύξουσας μέτρησης, με flip-flop και ενεργοποίηση στο κατερχόμενο μέτωπο του παλμού του ρολογιού. 2. Να μετατρέψετε τον μετρητή του ερωτήματος, σε μετρητή MOD 5. 3. Μελετήστε προσεκτικά την δομή και τους ακροδέκτες του ΟΚ 74293. Στο περιβάλλον του EWB σχεδιάσετε έναν ασύγχρονο μετρητή δέκα γεγονότων (δεκαδικός μετρητής - μετρητής MOD ) αύξουσας μέτρησης με χρήση του ολοκληρωμένου κυκλώματος 74293(7493). Τα μετρούμενα γεγονότα θα είναι οι τετραγωνικοί παλμοί γεννήτριας Hz. Οι έξοδοι του μετρητή να συνδεθούν στην αποκωδικοποιημένη απεικόνιση 7 τμημάτων (4 ακροδέκτες). 5
4. Να σχεδιάσετε το διάγραμμα χρονισμού του παραπάνω μετρητή. Clock A B C D 5. Με βάση τον προηγούμενο μετρητή MOD() να σχεδιάσετε σε επίπεδο χονδρικού διαγράμματος έναν μετρητή με δυνατότητα απαρίθμησης και απεικόνισης έως 999 γεγονότων. 6. Σχεδιάστε δυαδικό up-down απαριθμητή 4 bits με δυνατότητα ελέγχου της μέτρησης μόνον από ένα ακροδέκτη (Χρήση mux 2/). 6
7
8