ΗΜΥ211 Εργαστήριο Ψηφιακών Συστηµάτων Πλήρης Αθροιστής, Αποκωδικοποιητής και Πολυπλέκτης ιδάσκων: ρ. Γιώργος Ζάγγουλος Πανεπιστήµιο Κύπρου Τµήµα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών
Λύσεις Κ-χάρτη 1 ου Διαγωνίσματος F1 F2 F3 00 1 1 1 00 1 1 00 1 1 1 1 01 1 1 11 1 01 1 1 11 1 1 01 1 1 11 1 10 1 1 1 10 1 1 1 1 10 1 F1 (A,B,C,D) = A B + A C + B D F2 (A,B,C,D) = B D + BD + ή B D + BD + BC F3 (A,B,C,D) = C D + + AC Οκτώβριος 14 Εργαστήριο Ψηφιακών Συστηµάτων Γ.Ζ. - 2
Υλοποίηση 1 ου Σχεδιασμού Α Β C D Α Β C F1 (A,B,C,D) = A B + A C + B D D Οκτώβριος 14 Εργαστήριο Ψηφιακών Συστηµάτων Γ.Ζ. - 3
Λύσεις Κ-χάρτη 1 ου Διαγωνίσματος F1 F2 F3 00 1 1 00 1 1 1 1 00 1 1 01 1 1 11 1 1 01 1 11 1 01 1 1 11 1 1 10 1 1 10 1 1 10 1 1 F1 (A,B,C,D) = A B + A D + D F2 (A,B,C,D) = AD + C D + A B D F3 (A,B,C,D) = AC + AD + A Οκτώβριος 14 Εργαστήριο Ψηφιακών Συστηµάτων Γ.Ζ. - 4
Λύσεις Κ-χάρτη 1 ου Διαγωνίσματος F1 F2 F3 00 1 1 1 00 1 1 00 1 1 01 1 1 11 1 1 01 1 1 11 1 1 01 1 1 11 1 1 10 1 10 1 1 10 1 F1 (A,B,C,D) = BD + AC D + A B D F2 (A,B,C,D) = BD + B C D + A F3 (A,B,C,D) = AD + C + A BD Οκτώβριος 14 Εργαστήριο Ψηφιακών Συστηµάτων Γ.Ζ. - 5
Ατζέντα 1. Στόχοι 5 ου Εργαστηρίου 2. Υλοποίηση Πλήρους Αθροιστή 3. Κύκλωμα Αποκωδικοποιητή 4. Υλοποίηση πλήρους αθροιστή με Αποκωδικοποιητή 5. Κύκλωμα Πολυπλέκτη 6. Υλοποίηση πλήρους αθροιστή με Πολυπλέκτη 7. Επιπλέον Ρυθμίσεις στο Quartus II 8. Ανάλυση 3 ης εργαστηριακής άσκησης Οκτώβριος 14 Εργαστήριο Ψηφιακών Συστηµάτων Γ.Ζ. - 6
Στόχοι Εργαστηρίου Με την ολοκλήρωση αυτού του εργαστηρίου, θα πρέπει να είστε σε θέση: 1. Να υλοποιείτε κυκλώματα πλήρους αθροιστή διαφόρων μεγεθών. 2. Nα ορίζετε διαφορετικούς σχεδιασμούς ως Top-Level Entity, να δημιουργείτε σύμβολα από δικούς σας σχεδιασμούς (αρχεία.bsf), και να είστε σε θέση να ρυθμίζετε σωστά τις σχετικές παραμέτρους στο Quartus II. 3. Να σχεδιάζετε και να χρησιμοποιείτε διάφορα κυκλώματα αποκωδικοποιητών και πολυπλεκτών σε άλλες εφαρμογές. 4. Να δημιουργείτε και να χρησιμοποιείτε σωστά τους διαύλους (data/address busses) και τις ονομασίες καλωδίων στο Quartus. 5. Να ρυθμίζετε πλήρως τις παραμέτρους σε μια προσομοίωση και να υπολογίζετε τις χρονικές καθυστερήσεις που προκύπτουν σε κάποιο σχεδιασμό. Οκτώβριος 14 Εργαστήριο Ψηφιακών Συστηµάτων Γ.Ζ. - 7
Υλοποίηση Πλήρους Αθροιστή (Full adder) A B Cin Cout Sum 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 Οκτώβριος 14 Εργαστήριο Ψηφιακών Συστηµάτων Γ.Ζ. - 8
Κύκλωμα Αποκωδικοποιητή (Decoder 2x4) Inputs A B 0 0 0 1 1 0 1 1 Outputs O0 O1 O2 O3 Α Α Β Β Αριθµός Εισόδων: n Αριθµός Εξόδων: 2 n Με ή χωρίς σήµα enable Θετικής ή αρνητικής Λογικής Οκτώβριος 14 Εργαστήριο Ψηφιακών Συστηµάτων Γ.Ζ. - 9
Χρήσεις Αποκωδικοποιητή Ο αποκωδικοποιητής μπορεί να χρησιμοποιηθεί σε συνδυασμό με επιπλέον πύλες OR για υλοποίηση οποιουδήποτε κυκλώματος σε μορφή SOPμιας και ο αποκωδικοποιητής παράγει στις εξόδους του όλους τους δυνατούς ελαχιστόρους. Ο αποκωδικοποιητής χρησιμοποιείται ευρέως μιας και τα σήματα εξόδου του μπορούν να χρησιμοποιηθούν άμεσα για επιλογή /ενεργοποίηση άλλων κυκλωμάτων/συσκευών. Για παράδειγμα, το αποτέλεσμα της ALUόταν αποθηκεύεται στον καταχωρητήαποτελέσματος (στο Αρχείο Καταχωρητών), ένα κύκλωμα αποκωδικοποιητή ενεργοποιεί (μέσω της εισόδου enable) τον συγκεκριμένο καταχωρητήενώ οι υπόλοιποι καταχωρητέςπαραμένουν απενεργοποιημένοι. Οκτώβριος 14 Εργαστήριο Ψηφιακών Συστηµάτων Γ.Ζ. - 10
Υλοποίηση Πλήρους Αθροιστή με χρήση Αποκωδικοποιητή (θετικής λογικής) S(X,Y,Z) = Σm(1,2,4,7) C(X,Y,Z) = Σm(3,5,6,7) Με ποιες πύλες πρέπει να αντικατασταθούν οι δύο OR αν οι έξοδοι του αποκωδικοποιητή είναι αρνητικής λογικής; *** Στο 74138, το C είναι το MSBit και το Α είναι το LSBit *** Οκτώβριος 14 Εργαστήριο Ψηφιακών Συστηµάτων Γ.Ζ. - 11
Κύκλωμα Πολυπλέκτη (Multiplexer 4x1) Control Signals Output A B Out 0 0 Input 0 0 1 Input 1 1 0 Input 2 1 1 Input 3 Α Α Β Β Αριθµός Σηµάτων Ελέγχου: n Αριθµός Εισόδων: 2 n Αριθµός Εξόδων: 1 Με ή χωρίς σήµα enable Οκτώβριος 14 Εργαστήριο Ψηφιακών Συστηµάτων Γ.Ζ. - 12
Χρήσεις Πολυπλέκτη(Multiplexer) Ο πολυπλέκτηςείναι ένα κύκλωμα που «επιλέγει»δυαδική πληροφορία από μία από τις εισόδους και την κατευθύνει στη μοναδική του έξοδο. Είναι επίσης γνωστός ως «επιλογέας»(selection circuit)του οποίου η επιλογή ελέγχεται από ένα σύνολο εισόδων, των οποίων ο αριθμός εξαρτάται από τον αριθμό των εισόδων (δεδομένων). Για παράδειγμα, 2 Η.Υ. απαιτούν ένα αποκωδικοποιητή 2 σε 1 για να συνδέονται στην ίδια οθόνη με την επιλογή να ελέγχεται από διακόπτη ενός bit. Για ένα πολυπλέκτη2 n σε 1 υπάρχουν 2 n + n είσοδοι:(2 n είσοδοι δεδομένων και n είσοδοι επιλογής) έτσι ώστε ο συνδυασμός των n bit επιλογής να καθορίζει την είσοδο δεδομένων που θα επιλεγεί. Οκτώβριος 14 Εργαστήριο Ψηφιακών Συστηµάτων Γ.Ζ. - 13
Υλοποίηση Πλήρους Αθροιστή με χρήση Πολυπλέκτη A B Cin Cout Sum 0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 0 1 1 1 0 1 0 0 0 1 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 B Α Gnd Gnd Gnd Cin Cout Sum Οι επιλογές που υπάρχουν για τις εισόδους του πολυπλέκτη είναι: Cin, Cin, Vcc και Gnd Επιλέξτε αυτό που πρέπει κοιτώντας τη σχέση του Cin µε την έξοδο για κάθε «ΑΒ» Οκτώβριος 14 Εργαστήριο Ψηφιακών Συστηµάτων Γ.Ζ. - 14
Επιπλέον Ρυθμίσεις στο Quartus 1. Εισαγωγή στοιχείων Gnd και Vcc 2. Χρήση ασύρματων συνδέσεων (με ονομασία καλωδίων και διαύλων) 3. Χρήση διπλού πολυπλέκτη4x1(74153) 4. Χρήση αποκωδικοποιητή 3 σε 8 (74138) 5. Χρήση Quartus με διαφορετικό Top Level Entity (επιλέγουμε το.bdf, project, set as top level entity) 6. Δημιουργία συμβόλου από δικό σας σχεδιασμό (επιλέγουμε το.bdf, file, create/update, create symbol files for current file) 7. Ρυθμίσεις προσομοίωσης (decimal, hex, random values) Οκτώβριος 14 Εργαστήριο Ψηφιακών Συστηµάτων Γ.Ζ. - 15
Εργαστηριακή Άσκηση 3 Σχεδιάστε έναν πλήρη αθροιστή 1 ος bitμε πύλες 2 εισόδων. Υλοποιήστε ένα πλήρη αθροιστή 1 ος bitμε τη χρήση του 74153 (2 πολυπλέκτες 4 σε 1) Με τον ίδιο τρόπο, υλοποιήστε ακόμη ένα πλήρη αθροιστή 1 ος bit με τη χρήση 74138 (αποκωδικοποιητής 3 σε 8). Ελέγξτε την ορθή του λειτουργία του κάθε σχεδιασμού με functional και timing προσομοίωση και καταγράψτε την μέγιστη καθυστέρηση στον κάθε σχεδιασμό Αφού επιβεβαιώσετε την ορθή τους λειτουργία δημιουργήστε ένα σύμβολο για τον κάθε σχεδιασμό. Στον τελικό σας σχεδιασμό χρησιμοποιήστε ένα σύμβολο από τον κάθε σχεδιασμό για υλοποίηση αθροιστή 3 bit και προσομοιώστε τον βρίσκοντας και την μέγιστη ταχύτητα ορθής λειτουργίας του. Για περισσότερες λεπτομέρειες διαβάστε την άσκηση 3. Οκτώβριος 14 Εργαστήριο Ψηφιακών Συστηµάτων Γ.Ζ. - 16
Μαθησιακά Αποτελέσματα Με την ολοκλήρωση αυτού του εργαστηρίου θα πρέπει να μπορείτε να: Υλοποιείτε κυκλώματα δυαδικού (πλήρους) αθροιστή. Ορίζετε διαφορετικούς σχεδιασμούς ως Top-LevelEntity, να δημιουργείτε σύμβολα από δικούς σας σχεδιασμούς και να είστε σε θέση να ρυθμίζετε σωστά τις σχετικές παραμέτρους στο Quartus II. Σχεδιάζετε και να χρησιμοποιείτε τα κυκλώματα αποκωδικοποιητών και πολυπλεκτώνσε άλλες εφαρμογές. Ορίζετε και να χρησιμοποιείτε σωστά τους διαύλους και τις ονομασίες καλωδίων στο Quartus II. Ρυθμίζετε πλήρως τις παραμέτρους σε μια προσομοίωση και να υπολογίζετε τις χρονικές καθυστερήσεις που προκύπτουν σε κάποιο σχεδιασμό. Οκτώβριος 14 Εργαστήριο Ψηφιακών Συστηµάτων Γ.Ζ. - 17