Σύστημα μνήμης Ο κύριος σκοπός στο σχεδιασμό ενός συστήματος μνήμης είναι να προσφέρουμε επαρκή χωρητικότητα αποθήκευσης διατηρώντας ένα αποδεκτό επίπεδο μέσης απόδοσης και επίσης χαμηλό μέσο κόστος ανά δυαδικό ψηφίο. Ο σκοπός αυτός μπορεί να επιτευχθεί με τη χρησιμοποίηση ενός συνδυασμού από τις ακόλουθες τεχνικές: 1. Χρησιμοποίηση ενός αριθμού από διαφορετικές μονάδες μνήμης με διαφορετικούς λόγους κόστους/απόδοσης. Οι μονάδες μνήμης σ αυτή την περίπτωση σχηματίζουν μια ιεραρχία που ονομάζεται ιεραρχία μνήμης. 2. Ανάπτυξη ιδεατής μνήμης (virtual memory) για να απελευθερωθεί ο χρήστης από τη διαχείριση της μνήμης και να γίνουν τα προγράμματα ανεξάρτητα της διαμόρφωσης της φυσικής μνήμης. 3. Ανάπτυξη αυτόματων μεθόδων κατανομής του χώρου αποθήκευσης στα προγράμματα που εκτελούνται για να γίνει πιο αποδοτική χρήση του διαθέσιμου χώρου.
Τεχνολογία μνημών Ημιαγωγικές μνήμες Οι ημιαγωγικές μνήμες ανάλογα με τον τρόπο προσπέλασής τους μπορούν να ταξινομηθούν σε δύο μεγάλες κατηγορίες: 1. Σ αυτές που προσπελαύνονται με διευθύνσεις και 2. Αυτές που προσπελαύνονται ανάλογα του περιεχομένου τους. Μνήμες που προσπελαύνονται με διευθύνσεις: Στατικές μνήμες άμεσης προσπέλασης (Static Random Access Memories, SRAM) και Δυναμικές μνήμες άμεσης προσπέλασης (Dynamic Random Access Memories, DRAM). Ημιαγωγικές μνήμες προσπελάσιμες ανάλογα με το περιεχόμενό τους (Content Addressable Memories, CAM) Οι συσχετιστικές (associative) μνήμες.
Στατικές μνήμες άμεσης προσπέλασης Από το σχήμα αυτό παρατηρούμε ότι η κυψελίδα αποτελείται από ένα φλιπ-φλοπ για την αποθήκευση της πληροφορίας και πρόσθετες λογικές πύλες που επιτρέπουν την επιλογή για την εγγραφή ή ανάγνωση του δυαδικού ψηφίου που είναι αποθηκευμένο στη συγκεκριμένη κυψελίδα. Όταν η γραμμή επιλογή έχει τη λογική τιμή 1 και η γραμμή εγγραφή έχει τη λογική τιμή 0, τότε η έξοδος της πύλης AND έχει την τιμή 0, επομένως η τιμή της γραμμής είσοδος δεδομένων του φλιπ-φλοπ δεν αποθηκεύεται στο φλιπ-φλοπ. H πύλη 1 όμως τριών καταστάσεων περνάει την τιμή εισόδου της στην έξοδό της και επομένως γίνεται ανάγνωση του περιεχομένου της κυψελίδας. Όταν τόσο η γραμμή επιλογή όσο και η γραμμή εγγραφή έχουν την λογική τιμή 1 τότε η έξοδος της πύλης AND παίρνει τη λογική τιμή ένα και επομένως η τιμή της γραμμής είσοδος δεδομένων αποθηκεύεται στο φλιπ-φλοπ.
Στο σχήμα 5.2 δίνεται η γενική μορφή μιας ημιαγωγικής μνήμης των 16 δυαδικών ψηφίων, όπου σε κάθε εγγραφή ή ανάγνωση αποθηκεύεται ή διαβάζεται αντίστοιχα μία λέξητωντεσσάρωνδυαδικώνψηφίων. Επομένως στη μνήμη αποθηκεύονται τέσσερις λέξεις των τεσσάρων δυαδικών ψηφίων η κάθε μία, άρα απαιτούνται δύο δυαδικά ψηφία, Α 0 και Α 1, για τη διευθυνσιοδότησή της, τα οποία οδηγούν ένα αποκωδικοποιητή 2-σε-4. Στο σχήμα 5.2 όταν η γραμμή επιλογή ολ. έχει την λογική τιμή 0, τότε τόσο η έξοδος της πύλης AND1, δηλαδή η γραμμή εγγραφή, όσο και η έξοδος της πύλης AND2 έχουν την λογική τιμή 0. Επομένως δε λαμβάνει χώρα εγγραφή στη μνήμη, αφού η γραμμή εγγραφή έχει τη λογική τιμή 0, αλλά ούτε και ανάγνωση αφού όλες οι πύλες εξόδου τριών καταστάσεων είναι σε κατάσταση υψηλής αντίστασης. Το ίδιο συμβαίνει όταν οι είσοδοι Εγγ και ΕΕ οδηγούνται με τη λογική τιμή 0, άσχετα της τιμής με την οποία οδηγείται η είσοδος επιλογή ολ.
Δυναμικές μνήμες άμεσης προσπέλασης Για την υλοποίηση της κύριας μνήμης, που οι απαιτήσεις σε χωρητικότητα είναι μεγάλες, απαιτείται η χρησιμοποίηση φτηνότερων ημιαγωγικών μνημών. Πιο φτηνές ημιαγωγικές μνήμες άμεσης προσπέλασης μπορούν να υλοποιηθούν χρησιμοποιώντας πιο απλή κυψελίδα. Τέτοιες μνήμες είναι οι δυναμικές μνήμες (DRAM) στις οποίες η κυψελίδα αποτελείται από ένα τρανζίστορ και ένα πυκνωτή. Ηλογικήτιμή1 ή 0 αποθηκεύεται στον πυκνωτή υπό μορφή φορτίου. Στις στατικές μνήμες τα δεδομένα αποθηκεύονται σεμιακυψελίδατύπουφλιπ-φλοπ και διατηρούνται για όσο διάστημα υπάρχει τροφοδοσία ισχύος. Στις δυναμικές μνήμες λόγω των ρευμάτων διαρροής ο πυκνωτής μπορεί να αποφορτιστεί σε μερικά ms (milliseconds). Επομένως στις δυναμικές μνήμες απαιτείται αποκατάσταση του αποθηκευμένου φορτίου κάθε λίγα ms. Αυτή η διαδικασία λέγεται αναζωογόνηση (refreshing) της μνήμης. Σήμερα στις περισσότερες δυναμικές μνήμες τα κυκλώματα που απαιτούνται για την περιοδική αποκατάσταση του φορτίου κάθε κυψελίδας, αναζωογόνηση της μνήμης, υπάρχουν στο ίδιο ολοκληρωμένο με τη δυναμική μνήμη. Αν δεν υπάρχουν στο ίδιο ολοκληρωμένο κύκλωμα με τη δυναμική μνήμη, τότε θα είναι στον ελεγκτή της μνήμης. Λόγω του τρόπου αποθήκευσης της πληροφορίας και των πρόσθετων κυκλωμάτων που απαιτούνται, οι δυναμικές μνήμες αντίστοιχης χωρητικότητας είναι πιο αργές από τις στατικές αλλά και πιο φτηνές. Κατά το διάβασμα μιας θέσης της δυναμικής μνήμης χάνεται το φορτίο των πυκνωτών και θα πρέπει να αποκατασταθεί. Αυτός είναι ο λόγος για τον οποίο στις δυναμικές μνήμες ο χρόνος κύκλου (cycle time) είναι μεγαλύτερος του χρόνου προσπέλασης (access time). Λόγω της απλούστερης δομής της κυψελίδας, στην ίδια επιφάνεια πυριτίου μπορούμε να κατασκευάσουμε δυναμικές μνήμες πολύ μεγαλύτερης χωρητικότητας απ ότι στατικές. Επομένως απαιτείται μεγαλύτερος αριθμός εισόδων διευθύνσεων. Για να κρατηθεί το ανηγμένο κόστος ανά δυαδικό ψηφίο των δυναμικών μνημών χαμηλό, είναι επιθυμητό το πλήθος των ακροδεκτών του ολοκληρωμένου κυκλώματος να είναι σχετικά μικρό. Αυτή η μείωση επιτυγχάνεται χρησιμοποιώντας ως ακροδέκτες διευθύνσεων το μισό, ή περίπουτομισό, του πλήθους των ακροδεκτών που πραγματικά απαιτείται και χρησιμοποιώντας πολυπλεξία στο χρόνο, δηλαδή η διεύθυνση περνάει στη μνήμη σε δύο βήματα.
Ημιαγωγικές μνήμες προσπελάσιμες ανάλογα με το περιεχόμενό του (Content Addressable Memories, CAM) Οι μνήμες αυτές αναφέρονται και ως συσχετιστικές (associative). Στη γενική περίπτωση οι συσχετιστικές μνήμες είναι οργανωμένες με τέτοιο τρόπο ώστε να αποθηκεύουν ένα αριθμό από μονάδες πληροφορίας, λέξεις, κάθε μία των οποίων αποτελείται από ένα σταθερό αριθμό δυαδικών ψηφίων ο οποίος είναι ίδιος για όλες τις λέξεις. Μπορούμε να ορίσουμε κάποια συγκεκριμένα δυαδικά ψηφία, τα ίδια για όλες τις λέξεις, τα οποία χρησιμοποιούνται ως κλειδί για το ψάξιμο και την προσπέλαση της πληροφορίας που είναι αποθηκευμένη στα υπόλοιπα δυαδικά ψηφία.
Μαγνητικές Μνήμες Μνήμες μαγνητικών δίσκων Όπως δηλώνει και το όνομα στις μνήμες μαγνητικών δίσκων η αποθήκευση της πληροφορίας γίνεται πάνω σε έναν ή περισσότερους δίσκους η επιφάνεια των οποίων έχει επικαλυφθεί με μαγνητικό υλικό. Ηεγγραφήτης πληροφορίας γίνεται κατά μήκος ομόκεντρων κύκλων (tracks), βλέπε σχήμα 5.16.α. Κάθε επιφάνεια έχει χιλιάδες ομόκεντρους κύκλους και κάθε ομόκεντρος κύκλος διαιρείται σε τμήματα (sectors). Σε κάθε τμήμα αποθηκεύεται μία σταθερή ποσότητα πληροφορίας. Ο έλεγχος της μνήμης είναι απλούστερος εάν όλοι οι ομόκεντροι κύκλοι αποθηκεύουν την ίδια ποσότητα πληροφορίας. Σ αυτή την περίπτωση η πυκνότητα εγγραφής, δυαδικά ψηφία ανά εκατοστό του μέτρου, στους εξωτερικούς κύκλους είναι μικρότερη από τη μέγιστη δυνατή. Όταν υπάρχουν περισσότεροι από ένας δίσκοι αυτοί στηρίζονται σε ένα κάθετο άξονα που περνάει από το κέντρο τους. Η μονάδα μαγνητικού δίσκου όπως φαίνεται από πάνω και από τα πλάγια.
ΑΛΛΕΣ ΜΟΝΙΜΕΣ ΜΝΗΜΕΣ Μνήμες μαγνητικής ταινίας Η μονάδα μνήμης μαγνητικής ταινίας είναι μία από τις παλαιότερες και φθηνότερες μορφές μνήμης. Η κύρια χρήση της σήμερα είναι σαν μνήμη υποστήριξης (back up storage), δηλαδή αποθήκευση της πληροφορίας ώστε αν συμβεί κάποια βλάβη σε κάποια μονάδα μαγνητικών δίσκων να έχουμε αντίγραφο της πληροφορίας. Το υλικό πάνω στο οποίο γίνεται η αποθήκευση της πληροφορίας αποτελείται από μία πλαστική ταινία που έχει επικαλυφθεί με μαγνητικό υλικό και είναι τοποθετημένη μέσα σε μία κασέτα. Η κασέτα με την ταινία μοιάζει με τις κασέτες που αποθηκεύουμε μουσική, μόνο που εδώ δεν αποθηκεύεται αναλογικός ήχος αλλά δυαδική ψηφιακή πληροφορία. Το εύρος της μαγνητικής ταινίας είναι 6.35 χιλιοστά του μέτρου ενώ το μήκος της είναι περίπου 200 μέτρα. Τα δεδομένα αποθηκεύονται κατά μήκος της ταινίας.σε παλαιότερες μονάδες μαγνητικής ταινίας αποθηκεύονταν παράλληλα 9 δυαδικά ψηφία, 8 δυαδικά ψηφία πληροφορίας και ένα δυαδικό ψηφίο ισοτιμίας. Στις σύγχρονες μονάδες αποθηκεύονται παράλληλα εκατοντάδες δυαδικών ψηφίων και μία κεφαλή ανάγνωσης/εγγραφής μπορεί να προσπελάσει ταυτόχρονα όλα αυτά τα δυαδικά ψηφία. Μεταφορά δεδομένων λαμβάνει χώρα όταν η ταινία μετακινείται με σταθερή ταχύτητα ως προς την κεφαλή ανάγνωσης/εγγραφής. Επομένως η ταχύτητα εγγραφής εξαρτάται από την πυκνότητα εγγραφής κατά μήκος της ταινίας και την ταχύτητα μετακίνησης της ταινίας. Οπτικές Μνήμες Αυτές οι μνήμες συνήθως χρησιμοποιούν οπτικούς δίσκους που αποθηκεύουν δυαδική πληροφορία σε ομόκεντρους κύκλους, ή σε σπειροειδή καμπύλη στην περίπτωση των CD-ROMs, σε ένα ηλεκτρομηχανικά περιστρεφόμενο δίσκο. Η πληροφορία διαβάζεται καιγράφεταιοπτικάμελέιζερ. Οι οπτικοί δίσκοι προσφέρουν εξαιρετικά μεγάλη χωρητικότητα αλλά οι ρυθμοί προσπέλασης είναι γενικώς μικρότεροι απ ότι στους μαγνητικούς δίσκους. Η πιο γνωστή οπτική μνήμη είναι το CD-ROM. Η χωρητικότητα ενός 12 εκατοστών CD-ROM είναι περίπου 600 ΜΒ, δηλαδή μπορεί να αποθηκεύσει 240.000 σελίδες κειμένου. Ο χρόνος προσπέλασης είναι περίπου 100 ms και τα δεδομένα μεταφέρονται με ρυθμό 3.6 ΜΒ/s (σε 24-speed CD-ROM). Υπάρχουν συσκευές σχετικά χαμηλού κόστους που δίνουν τη δυνατότητα στο χρήστη να γράψει σε ένα κενό CD. Πρόσφατα εμφανίστηκε στην αγορά ένα νέο είδος CD που καλείται ψηφιακός βιντεοδίσκος (digital video disk, DVD). Κυκλοφορεί σε δύο τύπους, μόνο ανάγνωσης και ανάγνωσης/εγγραφής και η χωρητικότητά του φτάνει τα 16 GB. Μερικά είδη διατάξεων βοηθητικής μνήμης συνδυάζουν μαγνητικές και οπτικές μεθόδους εγγραφής. Μία μνήμη μαγνητο-οπτικών δίσκων χρησιμοποιεί περιστρεφόμενους δίσκους που αποθηκεύουν την πληροφορία σε μαγνητική μορφή αλλά προσπελαύνονται από μία ακτίνα λέιζερ όπως στις μονάδες CD-ROM.