Πανεπιστήµιο Κύπρου DEPARTMENT OF OMPUTER SIENE S 121 Ψηφιακά Εργαστήρια LAB EXERISE 4 Sequential Logic Χρίστος ιονυσίου Σωτήρης ηµητριάδης Άνοιξη 2002
Εργαστήριο 4 Sequential ircuits A. Στόχοι Ο σκοπός αυτού του εργαστηρίου είναι: 1. Η γνώση χρήσης του Xilinx Foundation Tools για το σχεδιασµό και την προσοµοίωση ακολουθιακών κυκλωµάτων, καθώς και την δηµιουργία macros. 2. Το κτίσιµο και η δοκιµή ενός κυκλώµατος µε macros, δηλ. µε ιεραρχικό σχεδιασµό. 3. Η εξοικείωση µας, µε το κτίσιµο και τη δοκιµή ακολουθιακών κυκλωµάτων, µε τη χρήση του Digital Trainer. 4. Η γνώση λειτουργίας απλών ακολουθιακών κυκλωµάτων όπως τα D latches, JK flip-flip, etc. B. Θεωρία Σε αντίθεση µε τα συνδυαστικά κυκλώµατα όπου δεν αποθηκεύουν κατάσταση (και η έξοδος οποιαδήποτε στιγµή εξαρτάται µόνο από τις τιµές στην είσοδο την ίδια στιγµή), τα ακολουθιακά κυκλώµατα αποθηκεύουν κατάσταση (state) σε µορφή bits. Η έξοδος τους εξαρτάται από την είσοδο στο παρόν και την παρούσα κατάσταση. Η επόµενη κατάσταση εξαρτάται από την παρούσα κατάσταση και είσοδο. Τα ακολουθιακά κυκλώµατα χωρίζονται σε δύο κατηγορίες: Aσύγχρονα: η συµπεριφορά τους µπορεί να επηρεαστεί ανά πάσα στιγµή όταν αλλάζουν οι τιµές στην είσοδο Σύγχρονα: η συµπεριφορά τους ορίζεται σε διακριτά χρονικά σηµεία ο συγχρονισµός επιτυγχάνεται µε τη χρήση ρολογιού ρολόι: παράγει µια περιοδική σειρά παλµών (τα σύγχρονα κυκλώµατα βασίζονται σε ασύγχρονα και ρολόι) Σύγχρονα ακολουθιακά κυκλώµατα µε ρολόι: Η κατάσταση τους µπορεί να αλλάξει µόνο όταν υπάρξει παλµός στην είσοδο του ρολογιού. Department of omputer Science University of yprus 1
Βασικά κυκλώµατα αποθήκευσης που θα συναντήσουµε είναι: Ασύγχρονα: Mανταλωτές Latches(µε 1 ή 2 εισόδους, αποθηκεύουν 1 bit (συνήθως στην κανονική και συµπληρωµένη µορφή του)) Σύγχρονα: Flip-Flops(µε 1 ή 2 εισόδους και συνήθως µια επιπλέον είσοδο για ρολόι. αποθηκεύουν 1 bit (συνήθως στην κανονική και συµπληρωµένη µορφή του)) Για την σχεδίαση ακολουθιακών λογικών κυκλωµάτων είναι απαραίτητη η γνώση ιεραρχικού σχεδιασµού και µεθοδολογίας ανάλυσης και σχεδιασµού ενός ακολουθιακού κυκλώµατος. Ιεραρχικός σχεδιασµός καλείται, η απλοποίηση ενός πολύπλοκου κυκλώµατος σε Φύλλα (βασικά τούβλα προσχεδιασµένα µε γνωστή συµπεριφορά macros) τα οποία αποτελούν ένα µέρος του προβλήµατος, µε σκοπό την ευκολία εκτέλεσης του µεγαλύτερου κυκλώµατος, και εάν χρειαστεί δυνατότητα επαναχρησιµοποίηση αυτών των επιµέρους κοµµατιών (macros). Μεθοδολογία ανάλυσης ονοµάζουµε, την µέθοδο µε την οποία καθορίζουµε την λειτουργία ενός κυκλώµατος και εξαγάγουµε την αλγεβρική συνάρτηση για κάθε έξοδο κυκλώµατος ή πίνακα αληθείας. Μεθοδολογία Σχεδιασµού είναι η παραγωγή διαγράµµατος ή Boolean εξισώσεων από την περιγραφή του προβλήµατος µε: ιάγραµµα Καταστάσεων Πίνακα Καταστάσεων Ανάθεση κωδικών στις καταστάσεις Καθορισµό εξισώσεων εισόδου FFs Καθορισµό εξισώσεων εξόδου Απλοποίηση εξισώσεων Σχεδιασµό κυκλώµατος Βασικά ακολουθιακά κυκλώµατα που θα συναντήσουµε είναι: D-latch JK Flip-Flop κ.τ.λ. Department of omputer Science University of yprus 2
. Πρακτική 1. Κατανόηση συµπεριφοράς ακολουθιακής λογικής a. Χρησιµοποιώντας τον Schematic Editor του Xilinx σχεδιάστε 3 διαφορετικά κυκλώµατα D-Latch, D MS F/F, D +edge Triggered F/F. Κύκλωµα D-Latch: Πίνακας λειτουργίας: D Q(t+1) 0 X Q(t) 1 0 0 1 1 1 Department of omputer Science University of yprus 3
Κύκλωµα D MS F/F: Παίρνοντας δύο D-Latches σχεδιάζουµε το D MS F/F, που είναι όπως φαίνεται πιο κάτω. Λειτουργία κυκλώµατος: Όταν το =1 ο master είναι ενεργός, ενώ η έξοδος slave παραµένει σταθερή. Όταν το =0 ο master είναι σταθερός και η έξοδος slave παίρνει την τιµή του master εκείνη τη χρονική στιγµή. Κύκλωµα D +edge Triggered F/F: Για την υλοποίηση του κυκλώµατος αυτού χρησιµοποιήσαµε ένα D-Latch και ένα SR-Latch µε είσοδο ελέγχου. Το D-Latch το είδαµε πιο πάνω ενώ το SR- Latch είναι το κύκλωµα που φαίνεται πιο κάτω. Macro SR-Latch µε είσοδο ελέγχου: Department of omputer Science University of yprus 4
Πίνακας λειτουργίας SR-Latch µε είσοδο ελέγχου: S R Q(t+1) 0 X X Q(t) 1 0 0 Q(t) 1 0 1 0 1 1 0 1 1 1 1 Undefined Κύκλωµα D +edge Triggered F/F: Λειτουργία κυκλώµατος: Τιµή του master: τιµή εισόδου την στιγµή του 0-1 transition(ακµή ρολογιού) Τιµή του slave: τιµή από τον master την στιγµή του 0-1 transition Department of omputer Science University of yprus 5
b. Χρησιµοποιώντας τον Simulator του Xilinx προσοµοιώστε τα πιο πάνω κυκλώµατα ώστε να δείξετε την διαφορετικότητα στην συµπεριφορά των κυκλωµάτων. Simulation κυκλώµατος D-Latch: Simulation κυκλώµατος D MS F/F: Simulation κυκλώµατος D +edge Triggered F/F: Παρατήρηση: Από τα simulations και τα όσα έχουν αναφερθεί πιο πάνω για τη λειτουργία των κυκλωµάτων, είναι εµφανής η διαφορετικότητα στη λειτουργία των κυκλωµάτων. Επίσης σε ορισµένες περιπτώσεις στην αρχή των εξόδων στα simulations βλέπουµε και high και low κυµµατοµορφή. Αυτό οφείλεται στο ότι δεν έχει αρχικοποιηθεί η κατάσταση του κυκλώµατος και δεν ξέρει αν είναι low ή high. Department of omputer Science University of yprus 6
c. Τυπώστε τα κυκλώµατα που έχετε σχεδιάσει και τα Simulations για να τα συµπεριλάβετε στο report σας. (Τα κυκλώµατα και τα simulations είναι πιο πάνω) d. Save όλα τα Simulations και τα Schematics για να τα παρουσιάσετε στην αξιολόγηση σας. e. Υλοποιείστε τα πιο πάνω κυκλώµατα στο Digital trainer χρησιµοποιώντας τα ανάλογα Is. (7474, 7475) f. Σχολιάστε τα αποτελέσµατα σας. Πιο συγκεκριµένα σχολιάστε την διαφορετικότητα στην συµπεριφορά των κυκλωµάτων µεταξύ τους. Τα αποτελέσµατα µας είναι τα αναµενόµενα. Πιο συγκεκριµένα, τα αποτελέσµατα από τα simulations συµφωνούν µε τα αντίστοιχα του Digital trainer. Επίσης όσο αφορά τα κυκλώµατα, είναι εµφανής η διαφορετικότητα τους που φαίνεται τόσο στα simulations όσο και στο Digital trainer µε τις διαφορετικές τιµές που δίνουν σε ίδιες συνθήκες. Ήδη έχουν δοθεί οι πίνακες λειτουργίας του κάθε κυκλώµατος πιο πάνω οι οποίοι έρχονται να επαληθεύσουν την διαφορετικότητα αυτή. Department of omputer Science University of yprus 7
2. 5-bit Pattern Recognition Sequential ircuit A bit pattern recogniser είναι ένα ακολουθιακό κύκλωµα το οποίο αναγνωρίζει µια συγκεκριµένη σειρά από bit από ένα stream of bits που έρχεται στην είσοδο του κυκλώµατος. Όταν βρει αύτη την συγκεκριµένη σειρά τότε ενεργοποιεί την έξοδο, 1. a. Σχεδιάστε ένα 5-bit pattern recognition sequential circuit, χρησιµοποιώντας την µεθοδολογία σχεδιασµού που έχετε διδαχτεί στην τάξη (σχεδιάστε µε JK flip-flops). Η είσοδος X του κυκλώµατος έχει την εξής σειρά: 00101010001000110001001010001010100010001 The bit pattern is: 10001 ιάγραµµα καταστάσεων: Α E Β D Ανάθεση κωδικών στις καταστάσεις: Α=000, Β=001, =010, D=011, E=100 Department of omputer Science University of yprus 8
Πίνακας καταστάσεων: Present st. Input Next state Output JK F/F Inputs Α Β X A B Z Ja Ka Jb Kb Jc Kc 0 0 0 0 0 0 0 0 0 X 0 X 0 X 0 0 0 1 0 0 1 0 0 X 0 X 1 X 0 0 1 0 0 1 0 0 0 X 1 X X 1 0 0 1 1 0 0 1 0 0 X 0 X X 0 0 1 0 0 0 1 1 0 0 X X 0 1 X 0 1 0 1 0 0 1 0 0 X X 1 1 X 0 1 1 0 1 0 0 0 1 X X 1 X 1 0 1 1 1 0 0 1 0 0 X X 1 X 0 1 0 0 0 0 0 0 0 X 1 0 X 0 X 1 0 0 1 0 0 1 1 X 1 0 X 1 X 1 0 1 0 X X 1 0 1 1 X X 1 1 0 0 X X 1 1 0 1 X X 1 1 1 0 X X 1 1 1 1 X X Κ-map για εύρεση εξίσωσης Ja : A 1 B X Ja= BX Department of omputer Science University of yprus 9
Κ-map για εύρεση εξίσωσης Ka : A 1 1 X X B X Ka= 1 Κ-map για εύρεση εξίσωσης Jb : A 1 X X B X Jb= X Κ-map για εύρεση εξίσωσης Kb : A 1 1 1 B X Kb= + X Department of omputer Science University of yprus 10
Κ-map για εύρεση εξίσωσης Jc : A 1 X X 1 X X 1 X X B X Jc= B + X Κ-map για εύρεση εξίσωσης Kc : A X X 1 X X 1 B X Ja= X Κ-map για εύρεση εξίσωσης Z : A 1 X X B X Z= AX Department of omputer Science University of yprus 11
Αφού βρήκαµε τις εξισώσεις των εισόδων των τριών JK F/F και της εξόδου Ζ, χρησιµοποιήσαµε από την βιβλιοθήκη του XILINX JK Flip-Flops µε asynchronous input (lear) ώστε να αρχικοποιηθεί το κύκλωµα µας. Χρησιµοποιώντας το FJK symbol και θέτοντας στο lear Ground, αρχικοποιήσαµε το κύκλωµά µας σε low. Το κύκλωµα φαίνεται πιο κάτω: Department of omputer Science University of yprus 12
Χρησιµοποιώντας τον Simulator του Xilinx προσοµοιώστε το πιο πάνω κύκλωµα. b. Τυπώστε το κύκλωµα που έχετε σχεδιάσει και τα Simulations για να τα συµπεριλάβετε στο report σας. (Το κύκλωµα και to simulation είναι πιο πάνω) c. Υλοποιείστε το πιο πάνω κύκλωµα στο Digital trainer χρησιµοποιώντας το I 7776 d. Σχολιάστε τα αποτελέσµατα σας. Τα αποτελέσµατα από τις δοκιµές στο digital trainer και στο Xilinx ήταν τα ίδια. Το κύκλωµα ανταποκρίνεται αξιόπιστα στο σκοπό για τον οποίο σχεδιάστηκε. Τα πιο πάνω γεγονότα δείχνουν την ορθότητα του κυκλώµατος.. Αποτελέσµατα Γράψετε µε δικά σας λόγια τις δυσκολίες που είχατε για την ολοκλήρωση του εργαστηρίου. Να αναφέρετε τα συµπεράσµατα που έχετε βγάλει και να αιτιολογήσετε εάν δεν συµφωνούν µε τα θεωρητικά αποτελέσµατα που έχετε. Τα αποτελέσµατα του εργαστηρίου ήταν τα αναµενόµενα. Βάση συγκρίσεων των αποτελεσµάτων από το digital trainer µε τα Simulations και πράξεις τις οποίες εκτελέσαµε, παρατηρήσαµε µια ταύτιση γεγονός που υποδήλωνε την ορθότητα τους. Σηµαντικές δυσκολίες δεν συναντήσαµε. Department of omputer Science University of yprus 13