Βασικά Θέματα Αρχιτεκτονικής Υπολογιστών — Νοέμβριος 2016 — πρόοδος¶
Μεταγραφή από τα αρχεία της συνεδρίας (χωρίς λύσεις). Όπου το κείμενο δεν διαβάζεται, σημειώνεται [δυσανάγνωστο].
6.jpg¶
[Επικεφαλίδα: κενά πεδία «Όνομα και Επώνυμο», «ΑΜ», «Έτος»]
Πρόοδος στο μάθημα Βασικά Θέματα Αρχιτεκτονικής Υπολογιστών
Τετάρτη 23/11/2016 (γράμμα επικεφαλίδας: B)
ΘΕΜΑ 1. (1,0 μον.)
α. Να περιγράψετε σε 4 έως 5 γραμμές που οφείλεται η επιτυχία της κρυφής μνήμης.
β. Να συγκρίνετε της κρυφή μνήμη και την κύρια μνήμη ως προς τη χωρητικότητα και το χρόνο προσπέλασης.
γ. Τι θέλουμε να έχουμε αποθηκευμένα στην κρυφή μνήμη;
ΘΕΜΑ 2. (μον. 2,0) Το σύνολο εντολών, σε επίπεδο γλώσσας μηχανής, ενός επεξεργαστή απλού συνόλου εντολών υποστηρίζει τόσο θετικά όσο και προσημασμένα (σε αναπαράσταση συμπληρώματος ως προς 2) ακέραια αριθμητικά δεδομένα μεγέθους μιας ψηφιολέξης (byte), μισής λέξης (δύο ψηφιολέξεις), και λέξης (τέσσερις ψηφιολέξεις). Ο επεξεργαστής αυτός διαθέτει καταχωρητές των 32 δυαδικών ψηφίων και Αριθμητική Λογική Μονάδα των 32 δυαδικών ψηφίων. Η κύρια μνήμη έχει οργάνωση μιας ψηφιολέξης ανά θέση μνήμης. Κατά τη μεταφορά πληροφορίας από τη μνήμη σε κάποιο καταχωρητή γενικού σκοπού η πληροφορία γράφεται στο λιγότερο σημαντικό τμήμα του καταχωρητή.
Να σημειώσετε ποιες από τις ακόλουθες προτάσεις ισχύουν και να αιτιολογήσετε κάθε μια από αυτές που ισχύουν το πολύ σε 3 γραμμές.
Για κάθε λάθος δήλωση θα ακυρώνεται μια σωστή.
α. Το σύνολο εντολών του σε επίπεδο γλώσσας μηχανής πρέπει να διαθέτει διαφορετικές εντολές μεταφοράς πληροφορίας από τη μνήμη σε κάποιο από τους καταχωρητές γενικού σκοπού για κάθε ένα από τα ακόλουθα είδη δεδομένων: 1. θετικά δεδομένα μεγέθους μιας λέξης, 2. προσημασμένα δεδομένα μεγέθους μιας λέξης.
β. Το σύνολο εντολών του σε επίπεδο γλώσσας μηχανής πρέπει να διαθέτει διαφορετικές εντολές μεταφοράς πληροφορίας από τη μνήμη σε κάποιο από τους καταχωρητές γενικού σκοπού για κάθε ένα από τα ακόλουθα είδη δεδομένων: 1. θετικά δεδομένα μεγέθους μισής λέξης, 2. προσημασμένα δεδομένα μεγέθους μισής λέξης.
γ. Μπορεί να χρησιμοποιεί την ίδια εντολή, σε επίπεδο γλώσσας μηχανής, για τη μεταφορά πληροφορίας από τη μνήμη σε κάποιο από τους καταχωρητές γενικού σκοπού για κάθε ένα από τα ακόλουθα είδη δεδομένων: 1. θετικά δεδομένα μεγέθους μιας ψηφιολέξης, 2. προσημασμένα δεδομένα μεγέθους μιας ψηφιολέξης.
δ. Μπορεί να χρησιμοποιεί την ίδια εντολή, σε επίπεδο γλώσσας μηχανής, για τη μεταφορά πληροφορίας από τη μνήμη σε κάποιο από τους καταχωρητές γενικού σκοπού για κάθε ένα από τα ακόλουθα είδη δεδομένων: 1. θετικά δεδομένα μεγέθους μισής λέξης, 2. προσημασμένα δεδομένα μεγέθους μισής λέξης.
ε. Το σύνολο εντολών του σε επίπεδο γλώσσας μηχανής πρέπει να διαθέτει διαφορετικές εντολές μεταφοράς πληροφορίας από τη μνήμη σε κάποιο από τους καταχωρητές γενικού σκοπού για κάθε ένα από τα ακόλουθα είδη δεδομένων: 1. θετικά δεδομένα μεγέθους μιας ψηφιολέξης, 2. προσημασμένα δεδομένα μεγέθους μιας ψηφιολέξης.
ζ. Το σύνολο εντολών του σε επίπεδο γλώσσας μηχανής πρέπει να διαθέτει διαφορετικές εντολές μεταφοράς πληροφορίας από τους καταχωρητές γενικού σκοπού στη μνήμη για κάθε ένα από τα ακόλουθα είδη δεδομένων: 1. θετικά δεδομένα μεγέθους μιας ψηφιολέξης, 2. προσημασμένα δεδομένα μεγέθους μιας ψηφιολέξης.
η. Μπορεί να χρησιμοποιεί την ίδια εντολή, σε επίπεδο γλώσσας μηχανής, για τη μεταφορά πληροφορίας από τη μνήμη σε κάποιο από τους καταχωρητές γενικού σκοπού για κάθε ένα από τα ακόλουθα είδη δεδομένων: 1. θετικά δεδομένα μεγέθους μιας λέξης, 2. προσημασμένα δεδομένα μεγέθους μιας λέξης.
[συμπληρώθηκε από -.-.-.-.-23-11-2016-B--.pdf]
θ. Το σύνολο εντολών του σε επίπεδο γλώσσας μηχανής πρέπει να διαθέτει διαφορετικές εντολές μεταφοράς πληροφορίας από τους καταχωρητές γενικού σκοπού στη μνήμη για κάθε ένα από τα ακόλουθα είδη δεδομένων: 1. θετικά δεδομένα μεγέθους μισής λέξης, 2. προσημασμένα δεδομένα μεγέθους μισής λέξης.
ι. Μπορεί να χρησιμοποιεί την ίδια εντολή, σε επίπεδο γλώσσας μηχανής, για τη μεταφορά πληροφορίας από τους καταχωρητές γενικού σκοπού στη μνήμη για κάθε ένα από τα ακόλουθα είδη δεδομένων: 1. θετικά δεδομένα μεγέθους μιας ψηφιολέξης, 2. προσημασμένα δεδομένα μεγέθους μιας ψηφιολέξης.
κ. Το σύνολο εντολών του σε επίπεδο γλώσσας μηχανής πρέπει να διαθέτει διαφορετικές εντολές μεταφοράς πληροφορίας από τους καταχωρητές γενικού σκοπού στη μνήμη για κάθε ένα από τα ακόλουθα είδη δεδομένων: 1. θετικά δεδομένα μεγέθους μιας λέξης, 2. προσημασμένα δεδομένα μεγέθους μιας λέξης.
λ. Μπορεί να χρησιμοποιεί την ίδια εντολή, σε επίπεδο γλώσσας μηχανής, για τη μεταφορά πληροφορίας από τη μνήμη σε κάποιο από τους καταχωρητές γενικού σκοπού για κάθε ένα από τα ακόλουθα είδη δεδομένων: 1. θετικά δεδομένα μεγέθους μιας ψηφιολέξης, 2. θετικά δεδομένα μεγέθους μισής λέξης, 3. θετικά δεδομένα μεγέθους μιας λέξης.
μ. Το σύνολο εντολών του σε επίπεδο γλώσσας μηχανής πρέπει να διαθέτει διαφορετικές εντολές μεταφοράς πληροφορίας από τη μνήμη σε κάποιο από τους καταχωρητές γενικού σκοπού για κάθε ένα από τα ακόλουθα είδη δεδομένων: 1. θετικά δεδομένα μεγέθους μιας ψηφιολέξης, 2. θετικά δεδομένα μεγέθους μισής λέξης, 3. θετικά δεδομένα μεγέθους μιας λέξης.
ν. Μπορεί να χρησιμοποιεί την ίδια εντολή, σε επίπεδο γλώσσας μηχανής, για τη μεταφορά πληροφορίας από τους καταχωρητές γενικού σκοπού στη μνήμη για κάθε ένα από τα ακόλουθα είδη δεδομένων: 1. θετικά δεδομένα μεγέθους μισής λέξης, 2. προσημασμένα δεδομένα μεγέθους μισής λέξης.
ξ. Μπορεί να χρησιμοποιεί την ίδια εντολή, σε επίπεδο γλώσσας μηχανής, για τη μεταφορά πληροφορίας από τους καταχωρητές γενικού σκοπού στη μνήμη για κάθε ένα από τα ακόλουθα είδη δεδομένων: 1. θετικά δεδομένα μεγέθους μιας λέξης, 2. προσημασμένα δεδομένα μεγέθους μιας λέξης.
ο. Το σύνολο εντολών του σε επίπεδο γλώσσας μηχανής πρέπει να διαθέτει διαφορετικές εντολές μεταφοράς πληροφορίας από τη μνήμη σε κάποιο από τους καταχωρητές γενικού σκοπού για κάθε ένα από τα ακόλουθα είδη δεδομένων: 1. προσημασμένα δεδομένα μεγέθους μιας ψηφιολέξης, 2. προσημασμένα δεδομένα μεγέθους μισής λέξης, 3. προσημασμένα δεδομένα μεγέθους μιας λέξης.
π. Το σύνολο εντολών του σε επίπεδο γλώσσας μηχανής πρέπει να διαθέτει διαφορετικές εντολές μεταφοράς πληροφορίας από τους καταχωρητές γενικού σκοπού στη μνήμη για κάθε ένα από τα ακόλουθα είδη δεδομένων: 1. θετικά δεδομένα μεγέθους μιας ψηφιολέξης, 2. θετικά δεδομένα μεγέθους μισής λέξης, 3. θετικά δεδομένα μεγέθους μιας λέξης.
ρ. Μπορεί να χρησιμοποιεί την ίδια εντολή, σε επίπεδο γλώσσας μηχανής, για τη μεταφορά πληροφορίας από τους καταχωρητές γενικού σκοπού στη μνήμη για κάθε ένα από τα ακόλουθα είδη δεδομένων: 1. προσημασμένα δεδομένα μεγέθους μιας ψηφιολέξης, 2. προσημασμένα δεδομένα μεγέθους μισής λέξης, 3. προσημασμένα δεδομένα μεγέθους μιας λέξης.
σ. Το σύνολο εντολών του σε επίπεδο γλώσσας μηχανής πρέπει να διαθέτει διαφορετικές εντολές μεταφοράς πληροφορίας από τους καταχωρητές γενικού σκοπού στη μνήμη για κάθε ένα από τα ακόλουθα είδη δεδομένων: 1. προσημασμένα δεδομένα μεγέθους μιας ψηφιολέξης, 2. προσημασμένα δεδομένα μεγέθους μισής λέξης, 3. προσημασμένα δεδομένα μεγέθους μιας λέξης.
τ. Μπορεί να χρησιμοποιεί την ίδια εντολή, σε επίπεδο γλώσσας μηχανής, για τη μεταφορά πληροφορίας από τη μνήμη σε κάποιο από τους καταχωρητές γενικού σκοπού για κάθε ένα από τα ακόλουθα είδη δεδομένων: 1. προσημασμένα δεδομένα μεγέθους μιας ψηφιολέξης, 2. προσημασμένα δεδομένα μεγέθους μισής λέξης, 3. προσημασμένα δεδομένα μεγέθους μιας λέξης.
χ. Μπορεί να χρησιμοποιεί την ίδια εντολή, σε επίπεδο γλώσσας μηχανής, για τη μεταφορά πληροφορίας από τους καταχωρητές γενικού σκοπού στη μνήμη για κάθε ένα από τα ακόλουθα είδη δεδομένων: 1. θετικά δεδομένα μεγέθους μιας ψηφιολέξης, 2. θετικά δεδομένα μεγέθους μισής λέξης, 3. θετικά δεδομένα μεγέθους μιας λέξης.
[συμπληρώθηκε από -.-.-.-.-23-11-2016-B--.pdf: Θέμα 3, Θέμα 4 και Θέμα 5]
ΘΕΜΑ 3. (μον. 2) Για κάθε μία εντολή συμβολικής γλώσσας του ακόλουθου πίνακα να δηλώσετε (χωρίς αιτιολόγηση) την αρχιτεκτονική του υπολογιστή στο σύνολο εντολών του οποίου μπορεί να ανήκει. Δηλαδή στο πίνακα δίπλα σε κάθε εντολή να δηλώσετε α ή/και β ή/και γ ή/και δ ή/και ε ή/και ζ, όπου τα α, β, γ, δ, ε και ζ έχουν τη σημασία που δίνεται στη συνέχεια. Τα R1, R2 και R3 δηλώνουν καταχωρητές, ενώ τα Α και Β δηλώνουν διευθύνσεις θέσεων μνήμης.
Αρχιτεκτονική που βασίζεται σε:
α. χρήση μηχανισμού στοίβας, β. συσσωρευτή, γ. καταχωρητές γενικού σκοπού με εντολές καταχωρητή-καταχωρητή με δύο τελούμενα, δ. καταχωρητές γενικού σκοπού με εντολές καταχωρητή-καταχωρητή με τρία τελούμενα, ε. καταχωρητές γενικού σκοπού με εντολές καταχωρητή-μνήμης με δύο τελούμενα, ζ. καταχωρητές γενικού σκοπού με εντολές καταχωρητή-μνήμης με τρία τελούμενα. Για κάθε λάθος δήλωση θα ακυρώνεται μια σωστή.
| εντολή συμβολικής γλώσσας | αρχιτεκτονική του υπολογιστή στο σύνολο εντολών του οποίου μπορεί να ανήκει |
|---|---|
| LOAD R1, A | |
| LOAD R1, (R2) | |
| ADD | |
| PUSH A | |
| LOAD A | |
| ADD R1, R2, R3 | |
| ADD R1, A, B | |
| SUB A | |
| ADD R1, R2 | |
| ADD R1, A |
Σημείωση: η δεξιά στήλη (δηλώσεις αρχιτεκτονικής) παραλείπεται επειδή περιέχει λύση.
ΘΕΜΑ 4. (μον. 2) Θεωρήστε υπολογιστή ο οποίος διαθέτει αρτηρία δεδομένων των 16 δυαδικών ψηφίων και η μνήμη είναι οργανωμένη έτσι ώστε κάθε διεύθυνση να αντιστοιχεί σε μία ψηφιολέξη (byte), αλλά σε μια προσπέλαση να μπορούν να διαβαστούν ή να γραφούν έως και δύο ψηφιολέξεις με διευθύνσεις δ και δ+1, όπου το δ είναι ακέραιο πολλαπλάσιο του δύο. Οι εντολές είναι των 32 δυαδικών ψηφίων και είναι ευθυγραμμισμένες (aligned). Υποστηρίζει δεδομένα μιας ψηφιολέξης, μισής λέξης (δύο ψηφιολέξεων) και λέξης (τέσσερεις ψηφιολέξεις). Οι εντολές διακρίνονται σε τέσσερις κατηγορίες Α, Β, Γ, και Δ τα χαρακτηριστικά των οποίων δίνονται στις πρώτες δύο στήλες του επόμενου Πίνακα. Θεωρήστε ότι εκτελείται ένα πρόγραμμα του οποίου τα χαρακτηριστικά δίνονται στην τρίτη στήλη του επόμενου Πίνακα. Τα δεδομένα των τεσσάρων ψηφιολέξεων είναι ευθυγραμμισμένα ως λέξεις στο 10% των περιπτώσεων και ως μισές λέξεις στο 60% των περιπτώσεων, ενώ στις υπόλοιπες περιπτώσεις δεν είναι καθόλου ευθυγραμμισμένα. Τα δεδομένα των δύο ψηφιολέξεων δεν είναι ευθυγραμμισμένα στο 35% των περιπτώσεων.
Πίνακας
| είδος εντολής | πλήθος ψηφιολέξεων δεδομένων που προσπελαύνει η εντολή | πλήθος εντολών που εκτελούνται |
|---|---|---|
| Α | 0 | 400 |
| Β | ένα δεδομένο των 2 ψηφιολέξεων | 1000 |
| Γ | ένα δεδομένα της 1 ψηφιολέξης και ένα δεδομένο των 2 ψηφιολέξεων | 500 |
| Δ | ένα δεδομένο των 4 ψηφιολέξεων | 3000 |
Εάν για κάθε προσπέλαση του συστήματος μνήμης απαιτούνται 5 κύκλοι ρολογιού, να υπολογίσετε το πλήθος των κύκλων ρολογιού που δαπανάται για την προσπέλαση της μνήμης κατά την εκτέλεση του προαναφερθέντος προγράμματος.
Θέμα 5. (μον. 3) Θεωρήστε ένα υπολογιστή που βασίζεται στη χρήση καταχωρητών γενικού σκοπού και του οποίου το σύνολο των εντολών σε επίπεδο γλώσσας μηχανής αποτελείται από 200 εντολές, με σταθερό μήκος εντολών των 32 δυαδικών ψηφίων και 16 καταχωρητές με μήκος 32 δυαδικών ψηφίων ο καθένας.
α. Για κάθε μία από τις ακόλουθες εντολές σε συμβολική γλώσσα να σχεδιάσετε τη μορφή των εντολών σε επίπεδο γλώσσας μηχανής (δηλαδή τα πεδία από τα οποία αποτελείται κάθε εντολή σε επίπεδο γλώσσας μηχανής και το εύρος κάθε πεδίου).
β. Ποιό είναι το πλήθος των θέσεων μνήμης που μπορεί να διευθυνσιοδοτηθεί από κάθε μία των κάτωθι εντολών;
| Τμήμα Προγράμματος Α | μορφή εντολής σε επίπεδο γλώσσας μηχανής | πλήθος των θέσεων μνήμης που μπορεί να διευθυνσιοδοτηθεί από την εντολή |
|---|---|---|
| LOAD R, A / R ←A, όπου Α διεύθυνση θέσης μνήμης (κατ’ ευθείαν τρόπος διευθυνσιοδότησης) | ||
| LOAD R1, (R2) / R1 ← M(R2), έμμεσος (indirect) τρόπος διευθυνσιοδότησης με χρήση καταχωρητή | ||
| LOAD R1, d(R2) / R1 ← M[d+(R2)], έμμεσος (indirect) τρόπος διευθυνσιοδότησης με χρήση καταχωρητή | ||
| LOAD R, #0AB7(16) / άμεσος (immediate) τρόπος διευθυνσιοδότησης, | ||
| BRE d / σχετικός τρόπος διευθυνσιοδότησης με χρήση του μετρητή προγράμματος, εάν η σημαία της ισότητας είναι 1, αλλαγή της ροής του προγράμματος |
Σημείωση: οι στήλες των πεδίων μορφής και των τιμών του β΄ ερωτήματος παραλείπονται επειδή περιέχουν λύση.