Καταχωρητες (Registers) Μετρητες (Counters)
Καταχωρητής (register) Ομαδα από flip-flops μαζί με συνδυαστικο κυκλωμα για εκτελεση διαφορων λειτουργιων όπως μεταφορα, αποθηκευση και επεξεργασια πληροφοριων. Αποτελεί βασική μοναδα για τη σχεδιαση ακολουθιακων κυκλωματων και CPUs. Μετρητής (counter) Ομαδα από flip-flops μαζί με συνδυαστικο κυκλωμα που διατρεχει διαδοχικα μια προκαθορισμενη σειρα καταστασεων σε συγχρονισμο με τους παλμους ρολογιου. Χρησιμοποιειται για την δημιουργια σηματων χρονισμου. 2
Καταχωρητες Ο απλούστερος καταχωρητής φαίνεται στο σχήμα: Ανάλογα με το είδος του flip-flop έχουμε i. Μανδαλωτές ii. Καταχωρητές CLK A 4 A 3 A 2 A I 4 I 3 I 2 I. Οι μανδαλωτές (latches) αποτελουνται από flip-flops που αλλαζουν κατασταση όταν εχουμε παλμο ρολογιου (CLK=) ενώ όταν CLK= οι εξοδοι παραμενουν σταθερες. Για όσο χρόνο ισχύει CLK= οι εξοδοι ακολουθουν τις εισοδους (Α k =I k ). Ετσι εχουμε μεταφορα και αποθηκευση της εισοδου όταν CLK= και διατηρηση της ιδιας καταστασης όταν CLK=. 2. Αν τα ff είναι ακμοπυροδοτικά ή τυπου Master-Slave, τοτε για CLK= ή οι εξοδοι είναι αμεταβλητοι και παιρνουν τις τιμες των εισοδων οταν CLK ή, αναλογα αν το ff ενεργοποιειται με την ανερχομενη ή την κατερχομενη ακμη του παλμου ρολογιου. Το κυκλωμα ονομαζεται τοτε καταχωρητης. 3
Καταχωρητες με παραλληλη φορτωση (Parallel Load) Φορτωση είναι η μεταφορα νεων πληροφοριων στον καταχωρητη. Παραλληλη είναι η φορτωση όταν γινεται ταυτοχρονα για όλα τα ff με την ακμη του παλμού CLK. H εισοδος του CLK λεγεται και loading enable. Αν δεν θελουμε η φορτωση να γινεται με κάθε παλμο του ρολογιου i. Μπορουμε να παρεμβαλουμε στην γραμμη του CLK μια πυλη AN με μια εισοδο ελεγχου φορτωσης Η πρακτικη αυτή μπορει να δημιουργησει προβληματα λογω εισαγωγης καθυστερησης στο CLK. ii. Μπορουμε να επεμβουμε στις εισοδους των ff και να παρεμβαλουμε ένα σημα ελεγχου φορτωσης όπως γίνεται στην επόμενη διαφάνεια. 4
Καταχωρητες με ελεγχομενη παραλληλη φορτωση I S R ' A I ' A I 2 S R ' A 2 I 2 ' A 2 I 3 I 4 Load S R S R ' ' A 3 A 4 I 3 ' A 3 I 4 ' A 4 CLK Clear Load CLK Clear 5
Υλοποιηση ακολουθιακου κυκλωματος Ένα ακολουθιακο κυκλωμα αποτελειται από flip-flops και ένα συνδυαστικο κυκλωμα. Άρα, μπορει να υλοποιηθει με έναν καταχωρητη (που παρεχει τα flip-flops) και ένα συνδυαστικο κυκλωμα CLK n n Καταχωρητης Load Εισοδος Συνδυαστικο κυκλωμα Εξοδος 6
Παραδειγμα υλοποιησης ακολουθιακου κυκλωματος Υλοποιηση με flip-flops Δινεται ο πινακας καταστασεων Παρουσα Εισοδος κατάσταση Επομενη Εξοδος κατάσταση Α Α 2 x Α Α 2 y Εξισωσεις εισοδου των FF =A (t+)=a x' 2 =A 2 (t+)=a 2 x'+ A 2 'x= A 2 x y= A 2 x x A 2 A 2 y 7
Καταχωρητες Ολισθησης (Shift Registers) Καταχωρητες ολισθησης είναι καταχωρητες που ολισθαινουν τα αποταμιευμενα δεδομενα δεξια ή αριστερα. Παραδειγμα: SI CLK SO Mονοδρομος KO (Unidirectional SR) SI=Serial In (σειριακη εισοδος), SΟ=Serial Οut (σειριακη εξοδος) Βασικη εφαρμογη: η σειριακη μεταφορα δεδομενων: Σειριακη λειτουργια = ψηφιακα δεδομενα μεταφερονται και υφιστανται επεξεργασια διαδοχικα ένα bit κάθε φορα ("bit per bit"). Αργη λειτουργια αλλα κανει καλλιτερη χρηση των κυκλωματων. Παραλληλη λειτουργια = Μεταφορα και επεξεργασια δεδομενων κατά ομαδες (4δες, 8αδες, 6δες κλπ). Γρηγορη λειτουργια αλλα απαιτει πολλαπλα κυκλωματα. 8
Απλος καταχωρητης ολισθησης In 2 3 4 Out Clock t t t 2 t 3 t 4 t 5 t 6 t 7 In 2 3 4 = Out Παραδειγμα διακινησης δεδομενων 9
Σειριακη μεταφορα δεδομενων Μεταφορα του περιεχομενου ενός καταχωρητη σε έναν άλλο με διατήρηση των δεδομένων του ου καταχωρητή. CLK SI Α= SO SI B= SO C p Shift Control (ρυθμιζει κατά ποσες θεσεις θα γινει η ολισθηση) A, B = 4 bit Shift Registers Χρονος λεξης Διαγραμμα χρονισμου CLK Shift Control C p Τ Τ 2 Τ 3 Τ 4 Καταχωρητής Α Β Εξοδος Αρχικη κατασταση Μετα τον Τ Μετα τον Τ 2 Μετα τον Τ 3 Μετα τον Τ 4
Αμφιδρομος καταχωρητης ολισθησης με παραλληλη φορτωση Οι καταχωρητες ολισθησης μπορουν να χρησιμοποιηθουν για την μετατροπη σειριακων διεργασιων σε παραλληλες και αντιστροφα. SI Παραλληλοι εξοδοι SO Παραλληλοι εισοδοι Ο γενικότερος καταχωρητής ολίσθησης (Bidirectional parallel loading) CLK Παραλληλη φορτωση Ολισθηση Δεξια Ολισθηση αριστερα SRI SLO Αν διαθετουμε τις εξοδους των FF μπορουμε να φορτωσουμε σειριακα και να διαβασουμε εν παραλληλω. Αν διαθετουμε τις εισοδους των FF μπορουμε να φορτωσουμε εν παραλληλω και να διαβασουμε σειριακα. Παραλληλοι εξοδοι Clear Enable SRO SLI Παραλληλοι εισοδοι
Clear C p Αμφιδρομος καταχωρητης ολισθησης με παραλληλη φορτωση: Το Κυκλωμα SLO A B C SRO s s 4x 3 2 4x 3 2 4x 3 2 4x 3 2 SRI a b c s s εισοδος ειτουργια αναλλοιωτος ολισθηση δεξια 2 ολισθηση αριστερα 3 παραλληλη φορτωση d SLI 2
Clear C p Αμφιδρομος καταχωρητης ολισθησης με παραλληλη φορτωση: Το Κυκλωμα SLO A B C SRO s s 4x 3 2 4x 3 2 4x 3 2 4x 3 2 SRI a b c s s εισοδος ειτουργια αναλλοιωτος ολισθηση δεξια 2 ολισθηση αριστερα 3 παραλληλη φορτωση d SLI 3
Clear C p Αμφιδρομος καταχωρητης ολισθησης με παραλληλη φορτωση: Το Κυκλωμα SLO A B C SRO s s 4x 3 2 4x 3 2 4x 3 2 4x 3 2 SRI a b c s s εισοδος ειτουργια αναλλοιωτος ολισθηση δεξια 2 ολισθηση αριστερα 3 παραλληλη φορτωση d SLI 4
Clear C p Αμφιδρομος καταχωρητης ολισθησης με παραλληλη φορτωση: Το Κυκλωμα SLO A B C SRO s s 4x 3 2 4x 3 2 4x 3 2 4x 3 2 SRI a b c s s εισοδος ειτουργια αναλλοιωτος ολισθηση δεξια 2 ολισθηση αριστερα 3 παραλληλη φορτωση d SLI 5
Clear C p Αμφιδρομος καταχωρητης ολισθησης με παραλληλη φορτωση: Το Κυκλωμα SLO A B C SRO s s 4x 3 2 4x 3 2 4x 3 2 4x 3 2 SRI a b c s s εισοδος ειτουργια αναλλοιωτος ολισθηση δεξια 2 ολισθηση αριστερα 3 παραλληλη φορτωση d SLI 6
Παραδειγμα σειριακου τροπου λειτουργιας Σειριακη Προσθεση Ελεγχος ολισθησης δεξια SR C p SI SI SR SI SR SR A SR B SO SO x y z Full Adder S C A: x B: y S C z Τελικο κρατουμενο 7
Μετρητές Δυο κατηγορίες μετρητών i. Ασύγχρονοι μετρητές ή μετρητές κυμάτωσης ή μετρητές ριπής (ripple counters) In A A 2 A 3 ii. Σύγχρονοι μετρητές (synchronous counters) Συνδυαστικό κύκλωμα 8
Ασύγχρονοι μετρητές ή μετρητές ριπής Δυαδικοι μετρητες ριπης: Αποτελουνται από Τ ή JK Flip-Flops συνδεδεμενων σε σειρα, ετσι ώστε το σημα εξοδου του ενός να είναι σημα ρολογιου για το επομενο στη σειρα. Το αριστερότερο FF δεχεται τους παλμους του εξωτερικου ρολογιου. Τ A Τ A 2 Τ A 3 Τ A 4 A A 2 A 3 A 4 5 2 3 4 5 6 7 8 9 2 3 4 5 9
Δυαδικοι μετρητες ριπης Ο μετρητης που ειδαμε μετραει προς τα πανω και ονομαζεται "UP COUNTER". Κατασκευή UP COUNTER (μετρητή ριπής προς τα πάνω): Ακμοπυροδοτικά FF αρνητικού μετώπου και χρήση των Ακμοπυροδοτικά FF θετικού μετώπου και χρήση των Κατασκευή OWN COUNTER (μετρητή ριπής προς τα κάτω) : Ακμοπυροδοτικά FF θετικού μετώπου και χρήση των Ακμοπυροδοτικά FF αρνητικού μετώπου και χρήση των 2
Ενας 3 bit μετρητης ριπης προς τα πανω T T T Clock 2 (a) Circuit Clock 2 Count 2 3 4 5 6 7 (b) Timing diagram 2
Ενας 3 bit μετρητης ριπης προς τα κατω T T T Clock 2 (a) Circuit Clock 2 Count 7 6 5 4 3 2 (b) Timing diagram 22
Μετρητες ριπης (2) Ο BC μετρητης ριπης εχει το πιο κατω διαγραμμα χρονισμού και εχει δυσκολη σχεδιαση. 2 3 4 CLK J K ' J K ' J K ' J K ' 2 3 4 2 3 4 5 6 7 8 9 23
Συγχρονοι Μετρητες Το σημα του ρολογιου εφαρμοζεται ταυτοχρονα σε όλα τα flip-flops τα οποια είναι συνηθως τυπου T ή JK. Το πιο ff θα αλλαξει κατασταση εξαρταται από τις τιμες των T ή JK όταν εφαρμοζεται ο παλμος του ρολογιου. Ενας απλος τροπος σχεδιασης βασιζεται στη μελετη της ακολουθιας των καταστασεων Δυαδικος Μετρητης προς τα πανω ( up counter) 4 3 2 Το ff που μετρα το λιγωτερο σημαντικο ψηφιο, το, αλλαζει με κάθε παλμο του ρολογιου = JK= To 2 αλλαζει όταν = Το 3 αλλαζει όταν 2 = Το 4 αλλαζει όταν 3 2 = 24
Συγχρονος μετρητης προς τα πανω 4bit με Τ flip-flop Α Α 2 Α 3 T T T 2 3 T 4 Clock Αύξων αριθμός θετικού μετώπου 2 3 4 5 6 7 8 9 2 3 4 5 6 7 Clock, Α 2 Α 2 3 Α 3 4 Count 2 3 4 5 6 7 8 9 2 3 4 5 25
Δυαδικος Μετρητης προς τα πανω με JK flip-flop 2 3 4 CLK K J K J K J K J Next Για μετρηση προς τα κατω αρκει να συνδεσουμε στις πυλες AN την ανεστραμενη εξοδο των flip-flops (την '). Δεν εχει σημασια αν τα flip-flops διεγειρονται από το θετικό ή το αρνητικό μέτωπο των παλμών του ρολογιου. 26
Εισαγωγη δυνατοτητας ενεργοποιησης και μηδενισμου Enable T T T T Clock Clear 27
Συγχρονος μετρητης BC (δεκαδικος) Μετραει από το στο και ξανα στο Αρκετα πολυπλοκη δομη. Σχεδιαση συμφωνα με τη γενικη μεθοδο. Οι πινακες καταστασεων και διεγερσεων για Τ ff φαινεται πιο κατω Ακολουθια καταστασεων Εισοδοι F-F Εξοδος 4 3 2 T 4 T 3 T 2 T y a = b = c = d = e = f = g = h = i = j = a = Πίνακας ιέγερσης Τ F-F (t) (t+) T=(t) (t+) T = T 2 = 4 ' T 3 = 2 T 4 = 4 + 3 2 y = 4 T 28
Δυαδικος Μετρητης με παραλληλη φορτωση Μερικες φορες θελουμε να φερουμε τον μετρητη σε μια ορισμενη κατασταση από την οποια θα αρχισει να μετραει προς τα πανω ή προς τα κατω. Αυτό επιτυγχανεται με την παραλληλη φορτωση. Η γενικη μορφη ενός μετρητη με παραλληλη φορτωση φαινεται πιο κατω: Clear CLK Load Count ειτουργια Χ Χ Χ Μηδενισμος FF X Αμεταβλητος Χ Φορτωση Μετρηση ειτουργει και σαν καταχωρητης με δυνατοτητα φορτωσης και αυξησης σταδιακα κατά (incrementation) Load CLK A 4 A 3 A 2 A I 4 I 3 I 2 I Clear Count Carry Mπορει να χρησιμοποιηθει για μετρηση modulo-n οπου <Ν<6. Το CLEAR είναι ασυγχρονο ενώ το LOA είναι συγχρονο. Το CARRY= όταν Α 4 Α 3 Α 2 Α =. 29
Μετρητης MO 6 ηυση Load CLK A 4 A 3 A 2 A I 4 I 3 I 2 I Clear Count= Carry = 2 3 4 5 2ηυση Load CLK A 4 A 3 A 2 A I 4 I 3 I 2 I = 3 Count= Clear Carry 3 4 5 6 7 8 3 4 3
Μετρητης MO 6 (συνεχεια) Load όταν Α 4 Α 3 Α 2 Α ==5 3ηυση CLK A 4 A 3 A 2 A I 4 I 3 I 2 I Clear 2 3 4 5 Count= Carry 3ηυση Load= 5= 6= Σπινθηρας!! = A 4 A 3 A 2 A I 4 I 3 I 2 I Χ Χ Χ Χ Clear Count= Carry 2 3 4 5 6 3
Eνας μετρητης modulo-6 με συγχρονο reset Clock Enable 2 Load Clock 2 Kυκλωμα Clock 2 Count 2 3 4 5 32
Eνας μετρητης modulo-6 με ασυγχρονο reset T T T 2 3 Clock Κυκλωμα Clock 2 3 Count 2 3 4 5 2 33
Μετρητης 4 bit με flip-flops Enable 2 3 Clock Output carry 34
Κυκλωματα χρονισμου Δημιουργια χρονου λεξης (Word time) Χρονος λεξης = διαρκεια bit x μηκος λεξης Εστω μηκος λεξης 8 bits = χρονος λεξης = 8 παλμοι του ρολογιου. Start CLK 3 bit μετρητης S R Stop Count Enable Word time Start Stop 2 3 4 5 6 7 8 35
Πολυφασικα ρολογια Πολυφασικα σηματα χρονισμου Πολλες φορες χρειαζομαστε παλμικα σηματα {φ,φ 2, φ n } τα οποια παιρνουν την τιμη "" σε διαδοχικες περιοδους του ρολογιου με ορισμενη περιοδικοτητα. Υπαρχουν δυο τροποι παραγωγης αυτων των σηματων i. Με την βοηθεια μετρητη δακτυλιου (ring counter) φ φ 2 φ 3 φ 4 CLK Χρειάζεται καθορισμός αρχικής κατάστασης ii. Με μετρητη και αποκωδικοποιητη CLK φ φ 2 φ 3 φ 4 2 σε 4 ecoder μετρητης 2 bit 36
4 φασικη παλμοσειρα φ φ 2 φ 3 φ 4 CLK Αρχική κατάσταση φ φ 2 φ3 φ 4 37
Μετρητης Johnson Αναστροφη ουρας Ακολουθια καταστασεων του μετρητη Johnson α/α ΕξοδοιFF AN πύλες για ABCE 8-φασική παλμοσειρά Α'Ε' 2 ΑΒ' 3 Β C' 4 C E' 5 A E 6 A'B 7 B'C 8 C'E 9 A B C E n Πρόβλημα η παγίδευση σε αχρησιμοποίητες καταστάσεις (υπάρχουν 6 καταστάσεις και χρησιμοποιούνται οι 8). Π.χ. αν από λάθος παραχθεί ηκατάσταση, τότε δίνουν ταυτόχρονα παλμό εξόδου οι AN πύλες ΑΒ' και CE'. Reset Clock 38