Ηλεκτρολόγοι Μηχανικοί ΕΜΠ Λογική Σχεδίαση Ψηφιακών Συστημάτων Διαγώνισμα κανονικής εξέτασης 2017 Θέμα 1ο (3 μονάδες) Υλοποιήστε το ακoλουθιακό κύκλωμα που περιγράφεται από το κατωτέρω διάγραμμα καταστάσεων, στο οποίο ΔΕΝ επιτρέπεται να αλλάξετε την κωδικοποίηση. Επίσης στον πίνακα αληθείας/μεταβάσεων η είσοδος πρέπει να είναι το ελάχιστο σημαντικό ψηφίο (LSB). Διαφορετική κωδικοποίηση ΔΕΝ θα βαθμολογηθεί. Χρησιμοποιήστε: Ένα D flip flop για το περισσότερο σημαντικό ψηφίο της κωδικοποίησης. Ένα Τ flip flop για το αμέσως επόμενο ψηφίο, Ένα JK flip flop για το λιγότερο σημαντικό ψηφίο. Υλοποιήστε: i. Την είσοδο του D flip flop αποκλειστικά με πύλες NOR σε βέλτιστο κύκλωμα. ii. Την είσοδο του Τ flip flop αποκλειστικά με πύλες NAND σε βέλτιστο κύκλωμα. iii. Την είσοδο J του JK flip flop με βέλτιστο πολυπλέκτη (MUX). iv. Την είσοδο K του JK flip flop με το μικρότερο δυνατό πολυπλέκτη (MUX). v. Την έξοδο Y με αποκωδικοποιητή 4 εισόδων και μια πύλη OR κατάλληλων εισόδων. www.avakas.net
Θέμα 2ο (1 μονάδα) Μια γραμμή δεδομένων δέχεται σειριακά δεδομένα σε μορφή ψηφίων 1 bit, συγχρονισμένα με ένα ρολόι CP. Κατασκευάστε το διάγραμμα καταστάσεων του κυκλώματος που πρέπει να επιτελεί τα εξής: α. Να εκκινεί από μια αρχική κατάσταση ΑΚ. β. Μόλις αναγνωρίσει την ακολουθία 10001010 να δίνει συνεχώς έξοδο 001 και να αγνοεί οποιαδήποτε άλλη ακολουθία, μέχρι να αναγνωρίσει είτε την 0100 οπότε θα δίνει έξοδο 010 και θα επιστρέφει στην ΑΚ ή μέχρι να αναγνωρίσει την 101 οπότε θα δίνει έξοδο 011 και θα επιστρέφει στην ΑΚ. γ. Αντιστοίχως, όταν εκκινεί από την ΑΚ, μόλις αναγνωρίσει την 1011001 να δίνει έξοδο 100 και να επιστρέφει στην ΑΚ. δ. Σε όλες τις άλλες περιπτώσεις το σύστημα πρέπει να δίνει έξοδο 000. ε. Πόσα flip flops απαιτούνται για την υλοποίηση του ζητουμένου διαγράμματος μεταβάσεων και γιατί; Σημαντική σημείωση: Για να είναι απλούστερο το διάγραμμα, προτείνουμε την τριάδα της εξόδου 000 να την συμβολίζετε ως 0, την 001 ως 1, την 010 ως 2, κ.ο.κ Θέμα 3ο (4,3 μονάδες) Μια γραμμή δεδομένων δέχεται σειριακά δεδομένα σε μορφή ψηφίων 1 bit, συγχρονισμένα με ένα ρολόι CP. Σχεδιάστε κύκλωμα που επιτελεί τα εξής: i. Eκκινεί από μια αρχική κατάσταση ΑΚ και επιτελεί αναγνώριση της ακολουθίας 10111 (συμβάν Α). ii. Μετά την επίτευξη του συμβάντος Α επιτελείται αναγνώριση της ακολουθίας 0000(συμβάν Β). Το συμβάν Β πρέπει να επιτευχθεί μέσα σε 64 παλμούς ρολογιού από την επίτευξη του συμβάντος Α διαφορετικά το σύστημα επιστρέφει στην ΑΚ. iii. Μετά την επίτευξη του συμβάντος Β επιτελείται αναγνώριση της ακολουθίας 10111 (συμβάν Γ). Το συμβάν Γ πρέπει να επιτευχθεί μέσα σε 64 παλμούς από την επίτευξη του συμβάντος Β διαφορετικά το σύστημα επιστρέφει στην ΑΚ δίνοντας έξοδο 0. Αν επιτευχθεί το Γ δίνεται έξοδος 1 και το σύστημα επιστρέφει πάλι στην ΑΚ. iv. Τέλος σχεδιάστε κύκλωμα το οποίο υπολογίζει πόσες αναγνωρίσεις του συμβάντος Γ προέκυψαν σε 3 ώρες, 44 λεπτά, 55 δευτερόλεπτα και 6 δέκατα του δευτερολέπτου. Για το κύκλωμα των ερωτημάτων i iii δίδονται 6 flip flops τύπου JK με ασύγχρονο
μηδενισμό, 2 μετρητές 7 bit του ιδίου ακριβώς τύπου όπως στο θέμα 4β και πολυπλέκτες διάστασης μέχρι 16 1. Για το κύκλωμα του ερωτήματος iv δίδονται flip flops τύπου Τ, μετρητές 7 bit του ιδίου ακριβώς τύπου όπως στο θέμα 4β και πολυπλέκτες διάστασης μέχρι 16 1. Για όλα τα ερωτήματα δίδεται παλμογεννήτρια συχνότητας 20 Ηz. Τονίζεται ότι δεν ζητείται βέλτιστα απλοποιημένο κατά Karnaugh κύκλωμα. Θέμα 4ο (5.1 μονάδες) Α. Να σχεδιαστεί ένας αθροιστής BCD και να επεξηγηθεί συνοπτικά αλλά πλήρως η λειτουργία του. Ο αθροιστής θα δέχεται σαν είσοδο δύο δεκαδικά ψηφία σε κώδικα BCD και θα πρέπει να παράγει το αποτέλεσμα πάλι μορφή BCD. Σας δίδονται δύο τετράμπιτοι δυαδικοί αθροιστές ως και ο απαιτούμενος αριθμός πυλών. B1. Ζητείται να δημιουργήσετε έναν σύγχρονο μετρητή 5 ψηφίων, ο οποίος πρέπει να επιτελεί τις εξής λειτουργίες, ανάλογα με την τιμή 2 σημάτων ελέγχου Α και Κ: Όταν Α=Κ=0 ή Α=Κ=1 τότε ο μετρητής πρέπει να διατηρεί το περιεχόμενό του. Όταν Α=1, Κ=0 τότε ο μετρητής πρέπει να μετρά άνω. Όταν Α=0 Κ=1, ο μετρητής πρέπει να μετρά κάτω. Δίνονται ΜΟΝΟΝ 5 JK ακμοπυροδότητα flip flops και όσοι πολυπλέκτες διαστάσεων έως 4 σε 1 είναι απαραίτητοι. Εάν χρειαστείτε μια οποιαδήποτε λογική δομή (π.χ μια πύλη) πρέπει να την υλοποιήσετε υποχρεωτικά άπαξ (δηλ μία φορά) με πολυπλέκτες και εν συνεχεία να την χρησιμοποιείτε με το σύμβολό της. Πρέπει οποσδήποτε να επεξηγήσετε συνοπτικά αλλά πλήρως την απάντησή σας. Β2. Επεκτει νατε κατ ελα χιστον το κυ κλωμα του προηγου μενου ερωτη ματος Β1, ω στε ο μετρητής να μετράει από 29 έως 3 αενάως. Στην περίπτωση αυτή να θεωρήσετε ότι τα JK flip flops είναι εφοδιασμένα με εισόδους ασύγχρονων clear και preset, τα οποία έχουν την εξής δράση: Όταν είναι clear=1 & preset=0, τότε το JK λαμβάνει στην έξοδο την τιμή 1 (Q=1 ασύγχρονα). Όταν είναι clear=0 & preset=1, τότε το JK λαμβάνει στην έξοδο την τιμή 0 (Q=0 ασύγχρονα). Όταν είναι clear=0 & preset=0, επικρατεί η λειτουργία που βασίζεται στο ρολόι.
Η περίπτωση clear=1 & preset=1, δεν χρησιμοποιείται. Θεωρήστε ότι δίδονται ότι πύλες χρειάζονται. Ακόμη θεωρήστε για διευκόλυνση, ότι ο μετρητής αρχικά περιέχει τον αριθμό 29. Πρέπει οποσδήποτε να επεξηγήσετε συνοπτικά αλλά πλήρως την απάντησή σας. Γ. Σχεδιάστε ένα κύκλωμα (ολοκληρωμένο σύστημα) με τέσσερις εξόδους, 3 σήματα ελέγχου S2,S1,S0 και 4 JK FF, το οποίο επιτελεί τις εξής λειτουργίες, σύγχρονα με το ρολόι: Όταν S2=0, S1=0, S0=0 το κύκλωμα πραγματοποιεί δεξιά ολίσθηση δεδομένων, δηλαδή μεταφέρει το περιεχόμενο μιας γραμμής δεδομένων διαδοχικά από το αριστερότερο (MSB) flip flop στο δεξιότερο (LSB) σύγχρονα με το ρολόι. Όταν S2=0, S1=0, S0=1 το κύκλωμα πραγματοποιεί αριστερά ολίσθηση δεδομένων, δηλαδή μεταφέρει το περιεχόμενο μιας γραμμής δεδομένων διαδοχικά από το δεξιότερο (LSB) flip flop στο αριστερότερο (MSB) σύγχρονα με το ρολόι. Όταν S2=0, S1=1, S0=0 το κύκλωμα καταχωρεί τον αριθμό 6 σε αρχιτεκτονική συμπληρώματος ως προς δύο τεσσάρων ψηφίων (το 6 θα το υπολογίσετε εσείς και όχι το κύκλωμα). Όταν S2=0, S1=1, S0=1 το σύστημα λειτουργεί ως καταχωρητής παράλληλης φόρτωσης. Όταν S2=1, S1=0, S0=0 το σύστημα να προσθέτει στο περιεχόμενο των 4 flip flops και άρα στις 4 εξόδους τον αριθμό 2 αενάως (να αγνοήσετε κρατούμενο που ενδεχομένως παράγεται) Όταν S2=1, S1=0, S0=1 να αφαιρεί από το περιεχόμενο των 4 flip flops και άρα και από τις εξόδους τον αριθμό 2 αενάως (να αγνοήσετε κρατούμενο που ενδεχομένως παράγεται). Όταν S2=1, S1=1, S0=0 το σύστημα να προσθέτει στο περιεχόμενο των 4 flip flops και άρα στις 4 εξόδους τον αριθμό 3 αενάως (να αγνοήσετε κρατούμενο που ενδεχομένως παράγεται) Όταν S2=1, S1=1, S0=1 το κύκλωμα διατηρεί το περιεχόμενο όλων των flip flps του. Δίδονται ΜΟΝΟΝ: (i) 4 D flip flops, (ii) ένα κύκλωμα 4ψήφιου αθροιστή αφαιρέτη, στο οποίον ένα σήμα ελέγχου Μ καθορίζει αν θα πραγματοποιηθεί πρόσθεση (Μ=0) ή αφαίρεση (Μ=1) και (iii) 4 πολυπλέκτες διαστάσεων 8 σε 1.
Απαντήσεις σε όλα τα ερωτήματα του θέματος 4 χωρίς σαφή, συνοπτική ερμηνεία δεν θα βαθμολογηθούν. Η περιγραφή της λειτουργίας ενός κυκλώματος ΔΕΝ είναι ερμηνεία.