Κεφάλαιο 4 | Ενότητα1 | Ερωτήσεις επισκόπησης | Επόμενο| Προηγούμενο | Λεξικό όρων

Απλή εναλλασσόμενη μνήμη

Η αύξηση του εύρους δεν αποτελεί τη μοναδική οδό για τη βελτίωση της απόδοσης της κύριας μνήμης. Εναλλακτικά χρησιμοποιούμε παράλληλα πολλές δυναμικές μνήμες (DRAMs) σε ένα σύστημα μνήμης.

Τα ολοκληρωμένα κυκλώματα της μνήμης μπορούν να οργανωθούν σε τράπεζες για να μπορούν να γράφουν ή να διαβάζουν περισσότερες από μία λέξεις τη φορά. Γενικά ο σκοπός της εναλλασσόμενης μνήμης είναι να προσπαθεί να εκμεταλλευτεί το εύρος ζώνης όλων των δυναμικών μνημών του συστήματος, σε αντίθεση με τα περισσότερα συστήματα μνήμης που ενεργοποιούν μόνο τις δυναμικές μνήμες που περιέχουν τις απαιτούμενες λέξεις..

  Παρεμβάλλουμε το τμήμα από το σχήμα 4.1.1, που αναφέρεται στην δομή της απλής εναλλασσόμενης μνήμης.

Aρχιτεκτονική εναλλασσόμενης μνήμης
Σχήμα 4.1.5 - H δομή της απλής εναλλασσόμενης μνήμης.

Οι τράπεζες έχουν συνήθως εύρος μίας λέξης, ώστε το μέγεθος της αρτηρίας και της κρυφής μνήμης να μην χρειάζεται αλλαγή, ενώ η αποστολή μιας διεύθυνσης σε έναν αριθμό από τράπεζες επιτρέπει σ' όλες να διαβάζουν ταυτόχρονα.

ΠαράδειγμαΠαράδειγμα

Αν υποθέσουμε ότι έχουμε μία κύρια μνήμη με απόδοση : 4 κύκλους για την αποστολή της διεύθυνσης, 24 κύκλους ο χρόνος πρόσβασης ανά λέξη και 4 κύκλους για την επιστροφή της λέξης. Επιπλέον διαθέτουμε μια κρυφή μνήμη με μπλοκ 4 λέξεων και μία ποινή αποτυχίας: 4 x (4 + 24 + 4) = 128 κύκλους με ένα εύρος ζώνης (16/128)=1/8 του byte ανά κύκλο ρολογιού. Στέλνοντας μια διεύθυνση σε 4 τράπεζες έχουμε μια ποινή αποτυχίας 4 + 24 + (4 x 4) = 44 κύκλους, δίνοντας ένα εύρος ζώνης 16 /44 = 0.4 bytes ανά κύκλο ρολογιού. Αυτό συμβαίνει γιατί χρειάζονται 4 κύκλοι για την αποστολή της διεύθυνσης σε όλες τις τράπεζες (αφού αυτές μπορούν να την διαβάζουν ταυτόχρονα), 24 κύκλοι για την εύρεση της λέξης σε κάθε τράπεζα (αφού οι τράπεζες λειτουργούν παράλληλα) κάθε μνήμη θέλει 4 κύκλους για να στείλει την λέξη πίσω. Επειδή όμως δεν μπορούν να στείλουν όλες την λέξη ταυτόχρονα χρειάζονται (4 κύκλοι) x (4 τράπεζες) = 16 κύκλους.

Η αντιστοίχηση των διευθύνσεων σε τράπεζες επηρεάζει τη συμπεριφορά του συστήματος μνήμης.

Yποθέτουμε ότι οι διευθύνσεις των τεσσάρων τραπεζών εναλλάσσονται σε επίπεδο λέξης. Δηλ. η τράπεζα 0 περιέχει όλες τις λέξεις των οποίων η (διεύθυνση modulo 4) είναι 0, η τράπεζα 1 τις λέξεις των οποίων η (διεύθυνση modulo 4) είναι 1 κ.ο.κ. Το σχήμα 4.1.6, δείχνει αυτή την εναλλαγή.


Σχήμα 4.1.6 - Εναλλαγή διευθύνσεων των 4 τραπεζών σε επίπεδο λέξης. Εάν οι διευθύνσεις των τεσσάρων τραπεζών εναλλάσσονταν σε επίπεδο byte (δεδομένου ότι 4bytes=1 λέξη) κάθε μία από τις διευθύνσεις θα έπρεπε να πολλαπλασιαστεί επί 4.

Αυτή η αντιστοίχηση αναφέρεται ως παράγοντας εναλλαγής. Με τον όρο εναλλασσόμενη μνήμη συνήθως εννοούμε τράπεζες μνήμης όπου οι λέξεις εναλλάσσονται. Αυτή η εναλλαγή βελτιώνει την σειριακή (διαδοχική) προσπέλαση στην μνήμη. Μία αποτυχία ανάγνωσης της κρυφής μνήμης είναι ιδανική για μία μνήμη εναλλαγής λέξεων, καθώς οι λέξεις σε ένα μπλοκ διαβάζονται σειριακά. Κρυφές μνήμες επανεγγραφής κάνουν την εγγραφή καθώς και την ανάγνωση σειριακά, αποδίδοντας καλύτερα χάρη στην εναλλασσόμενη μνήμη.

Όσο αυξάνει η χωρητικότητα ανά Ο.Κ. (chip), υπάρχουν λιγότερα Ο.Κ. στο ίδιου μεγέθους σύστημα μνήμης, με αποτέλεσμα οι πολλαπλές τράπεζες να είναι πιο ακριβές. Ενώ σύμφωνα με τον κανόνα του Amdahl συνιστάται αύξηση της χωρητικότητας της μνήμης με την αύξηση της απόδοσης της ΚΜΕ, πολλοί κατασκευαστές προτιμούν μικρή μνήμη στο βασικό τους μοντέλο. Αυτός ο μειωμένος αριθμός των δυναμικών μνημών (DRAMs) είναι το κύριο μειονέκτημα των εναλλασσόμενων τραπεζών μνήμης. Ένα δεύτερο μειονέκτημα είναι η δυσκολία στην διερεύνηση της κύριας μνήμης.

ΔΡΑΣΤΗΡΙΟΤΗΤΑ 6

* Να περιγράψετε συνοπτικά για ποιο σκοπό χρησιμοποιείται η εναλλασσόμενη μνήμη ως μέθοδος για τη βελτίωση της απόδοσης της μνήμης.
* Να εξηγήσετε τον τρόπο με τον οποίο λειτουργεί η σχεδίαση με ανεξάρτητες τράπεζες.

ΑΠΑΝΤΗΣΗ ΔΡΑΣΤΗΡΙΟΤΗΤΑΣ 6


ΠαράδειγμαΠαράδειγμα

Ένα ερώτημα το οποίο προκύπτει για τις εναλλασσόμενες μνήμες είναι πόσες τράπεζες πρέπει να υπάρχουν. Ένα μέτρο που χρησιμοποιείται σε διανυσματικούς υπολογιστές είναι:

Αριθμός τραπεζών μνήμης Αριθμός κύκλων για προσπέλαση μιας λέξης της τράπεζας.

ΔΡΑΣΤΗΡΙΟΤΗΤΑ 7

Για ποιο λόγο θεωρείται ότι πρέπει να ισχύει η παραπάνω σχέση. Να αιτιολογήσετε την απάντησή σας δίνοντας ένα παράδειγμα.

ΑΠΑΝΤΗΣΗ ΔΡΑΣΤΗΡΙΟΤΗΤΑΣ 7