3.5.1 Εισαγωγή – Χαρακτηριστικά στοιχείαΑς θεωρήσουμε ένα απλό υπολογιστικό σύστημα, και να υποθέσουμε ότι πρέπει να εισάγουμε από το πληκτρολόγιο εκατό 100 διψήφιους αριθμούς τους οποίους θέλουμε να εισάγουμε στο υπολογιστικό σύστημα και μετά να υπολογίσουμε το άθροισμά τους. Για να γίνει αυτό, πρέπει το υπολογιστικό σύστημα να αποθηκεύσει αυτούς τους αριθμούς στην μνήμη του. Το μέγεθος της μνήμης πρέπει να είναι τέτοιο ώστε να χωρούν και οι εκατό (100) αριθμοί. Το πλήθος των αριθμών που μπορεί να αποθηκεύσει μία μνήμη εξαρτάται από το πόσες διαφορετικές θέσεις έχει η μνήμη αυτή. Ας φανταστούμε την μνήμη, όπως φαίνεται στο σχήμα 3.5.1, σαν ένα πλήθος από 100 συρτάρια. Το κάθε συρτάρι είναι μία θέση αποθήκευσης δεδομένων και έχει σαν διεύθυνση έναν αριθμό. Έτσι η αρίθμηση των συρταριών αποτελεί τη διεύθυνση τους ενώ το περιεχόμενό τους αντιστοιχεί στα δεδομένα. Για παράδειγμα στη διεύθυνση ή στη θέση μνήμης 93 είναι ο αριθμός 37. Γενικά μπορούμε να πούμε ότι κάθε θέση μνήμης έχει μία διεύθυνση δηλαδή έναν αριθμό που την χαρακτηρίζει για να δώσουμε ή να πάρουμε ένα δεδομένο από την θέση αυτή. Μια μνήμη λοιπόν, όσες θέσεις αποθήκευσης έχει, τόσες διαφορετικές διευθύνσεις πρέπει να περιλαμβάνει. Το πλήθος των διαφορετικών θέσεων και συνεπώς διευθύνσεων που έχει μία μνήμη ονομάζεται μέγεθος της μνήμης. Ας γυρίζουμε στο σχήμα 3.5.1 και να παρατηρήσουμε ότι για την παράσταση της διεύθυνσης που προσδιορίζει τη θέση μνήμης χρησιμοποιούμε δύο δεκαδικά ψηφία. Με αυτόν τον περιορισμό μπορούμε να έχουμε το πολύ 100 διαφορετικές διευθύνσεις (από 0 έως 99). Αν χρησιμοποιούσαμε 3 δεκαδικά ψηφία, τότε το πλήθος των θέσεων μνήμης που θα μπορούσαμε να αριθμήσουμε είναι 1000, από 000 έως 999. Άρα μπορούμε να πούμε ότι το μέγεθος μίας μνήμης καθορίζει των αριθμό των ψηφίων που χρησιμοποιούμε για την παράσταση των διευθύνσεων.Στα υπολογιστικά συστήματα τα ψηφία που χρησιμοποιούμε είναι δυαδικά. Έτσι και η παράσταση της διεύθυνσης μίας μνήμης γίνεται από δυαδικά ψηφία. Για παράδειγμα μία μνήμη που χρησιμοποιεί 3 δυαδικά ψηφία για την παράσταση της διεύθυνσης μπορεί να έχει 23=8 διαφορετικές θέσεις μνήμης. Αν υποθέσουμε ότι ο αριθμός των δυαδικών ψηφίων της διεύθυνσης της μνήμης είναι «b» και το μέγεθος της μνήμης «μ» τότε ισχύει η σχέση μ=2b
Στον παρακάτω πίνακα υπάρχουν τυπικά μεγέθη μνημών.
Αριθμός δυαδικών ψηφίων (b) της διεύθυνσης μιας μνήμης |
Μέγεθος μνήμης ( μ )
Πλήθος θέσεων
|
3 |
23=8 |
8 |
28=256 |
10 |
210=1024 1Kbyte |
16 |
216=65536 64Kbyte |
20 |
220=1048576 1Mbyte |
Ας παρατηρήσουμε πάλι το σχήμα 3.5.1 και να δούμε ότι στην διεύθυνση 93 ο αριθμός που είναι αποθηκευμένος είναι ο δεκαδικός 37. Επίσης στο σχήμα 3.5.2 μπορούμε να παρατηρήσουμε ενδεικτικά κάποια περιεχόμενα μιας μνήμης. Όλοι οι αριθμοί που είναι αποθηκευμένοι έχουν οκτώ δυαδικά ψηφία. Κάθε θέση μνήμης μπορούμε να φανταστούμε ότι είναι χωρισμένη σε 8 θέσεις στις οποίες μπορούμε να αποθηκεύσουμε ένα δυαδικό ψηφίο. Έτσι στο παράδειγμά μας, ο αριθμός 00110111, που αποτελείται από 8 ψηφία, αποθηκεύεται στην διεύθυνση 93 βάζοντας σε κάθε θέση τα οκτώ δυαδικά ψηφία 00110111. Το πλήθος των κελίων που υπάρχουν σε μία θέση μνήμης ονομάζεται μήκος λέξης της μνήμης. Στο παράδειγμά μας η μνήμη που χρησιμοποιούμε έχει μήκος λέξης 8 και στο κάθε κελί μίας θέσης μνήμης μπορεί να αποθηκευτεί ένα δυαδικό ψηφίο, δηλαδή το ‘1’ ή το ‘0’. Ο αριθμός των κελιών μίας θέσης μνήμης, λέγεται μήκος λέξης και είναι συνήθως του 2. 3.5.2 Κατηγορίες μνημών Στο παράδειγμα της αριθμομηχανής που αναφέρθηκε μπορούμε να διακρίνουμε μνήμες που τις χρησιμοποιούμε για διαφορετικούς σκοπούς. Για παράδειγμα χρησιμοποιούμε μνήμη για να διαβάζει η κεντρική μονάδα επεξεργασίας της εντολές του προγράμματος. Ακόμα υπάρχει μνήμη όπου γράφουμε κάποια στοιχεία – δεδομένα και έπειτα τα διαβάζουμε. Ανάλογα με την λειτουργία και την εφαρμογή στην οποία θα χρησιμοποιηθεί μια μνήμη επιλέγουμε τον κατάλληλο τύπο. Έτσι οι μνήμες, ανάλογα με τις δυνατότητες που έχουν, διακρίνονται στις δύο παρακάτω κατηγορίες: Οι μνήμες, από τις οποίες μπορούμε να διαβάζουμε και να γράφουμε, ονομάζονται RAM ( Random Αccess Μemory Μνήμη τυχαίας προσπέλασης). Οι μνήμες, από τις οποίες μπορούμε να διαβάζουμε μόνο το περιεχόμενο τους, ονομάζονται ROM (Read Only Memory Μνήμη μόνο ανάγνωσης). Το περιεχόμενο των μνημών αυτών, δηλαδή τα δεδομένα τους, δεν μπορούμε να τα αλλάξουμε. Οι μνήμες RAM χρησιμοποιούν δύο διαφορετικές τεχνολογίες για την αποθήκευση των δεδομένων. Ανάλογα με τον τρόπο αποθήκευσης της πληροφορίας οι μνήμες RAM χωρίζονται σε δύο κατηγορίες, τις στατικές μνήμες και τις δυναμικές μνήμες. Οι στατικές μνήμες χρησιμοποιούν καταχωρητές Flip-Flop ηλεκτρονικούς διακόπτες για να κρατήσουν την δυαδική πληροφορία. Στα σχήμα 3.5.3 φαίνεται σε απλή μορφή η αρχή λειτουργίας μιας στατικής μνήμης. Έχουμε δύο πύλες ΝΟΤ που η μια τροφοδοτεί την άλλη όπως φαίνεται στο σχήμα. Έτσι αν κάποια στιγμή αποθηκευτεί η τιμή 1, αυτή με τον κάτω αναστροφέα γίνεται 0 και στην συνέχεια με την πάνω αναστροφέα επανέρχεται με την ίδια τιμή 1. Συνεπώς η τιμή αυτή «κρατιέται». Σχήμα 3.5.3 Βασική μονάδα αποθήκευσης στατικής μνήμηςΑντίστοιχα αν είχαμε αποθηκεύσει το 0, μέσω του κάτω αναστροφέα θα γίνεται 1 και με τον πάνω αναστροφέα επανέρχεται στην αρχική τιμή 0. Έτσι και στις δύο περιπτώσεις το δεδομένο διατηρείται στην αρχική τιμή. Την τιμή που είναι αποθηκευμένη μπορούμε να τη διαβάσουμε από την είσοδο-έξοδο δεδομένου, όταν έχει επιλεγεί το στοιχείο μνήμης και τότε ο διακόπτης είναι κλειστός. Όταν θέλουμε να γράψουμε, πάλι ο διακόπτης πρέπει να είναι κλειστός. Τώρα επιβάλουμε εμείς ένα νέο δεδομένο που όταν θα ανοίξει ο διακόπτης θα κρατηθεί από τους δύο αναστροφείς. Οι στατικές μνήμες έχουν το σημαντικό πλεονέκτημα ότι είναι πολύ γρήγορες. Το κυριώτερο μειονέκτημα είναι η τιμή τους. Οι στατικές μνήμες επειδή χρειάζονται πολύ χώρο για να υλοποιηθούν, σε σύγκριση με τις υπόλοιπες μνήμες, είναι ακριβώτερες.Οι δυναμικές μνήμες χρησιμοποιούν πυκνωτές για την αποθήκευση των δεδομένων όπως φαίνεται στο σχήμα 3.5.4. Η δυαδική αποθήκευση δεδομένων εδώ βασίζεται στην παραδοχή ότι το λογικό 1 αντιστοιχεί σε φορτισμένο πυκνωτή και το λογικό 0 αντιστοιχεί σε αφόρτιστο πυκνωτή. Οι δυναμικές μνήμες έχουν το πλεονέκτημα ότι είναι φτηνές και έχουν μεγάλη χωρητικότητα λόγω του μικρού τους μεγέθους. Σχήμα 3.5.4 Βασική μονάδα αποθήκευσης δυναμικής μνήμηςΕπίσης είναι χαμηλής κατανάλωσης αφού πρακτικά δεν καταναλώνουν ενέργεια για την φύλαξη των δεδομένων. Το μειονέκτημα των δυναμικών μνημών είναι η ταχύτητα. Ακόμα, ένας φορτισμένος πυκνωτής με την πάροδο του χρόνου εκφορτίζεται με αποτέλεσμα να χάνει την τιμή που αποθηκεύσαμε. Για το λόγο αυτό σε τακτά χρονικά διαστήματα απαιτείται οι δυναμικές μνήμες να ανανεώνουν το περιεχόμενό τους. Το χρονικό διάστημα μεταξύ δύο διαδοχικών ανανεώσεων ονομάζεται χρόνος ανανέωσης. Σε μια διαδικασία ανανέωσης διαβάζεται το περιεχόμενο της μνήμης και αυτόματα ξαναγράφεται το ίδιο. Έτσι εξασφαλίζεται η ανανέωση του περιεχομένου. Η διαδικασία της ανανέωσης σε παλαιότερης τεχνολογίας δυναμικές μνήμες γίνεται με εξωτερικό κύκλωμα, ενώ στις νεότερου τύπου μνήμες το κύκλωμα αυτό είναι ενσωματωμένο στην ίδια ψηφίδα της μνήμης. Ο όρος «Μνήμες μόνο ανάγνωσης» - ROM χρησιμοποιείται για να χαρακτηρίσει μια ολόκληρη κατηγορία μνημών από τις οποίες μπορούμε μόνο να διαβάζουμε και περιλαμβάνουν τις απλές ROM, PROM, EPROM, EEPROM, Flash. Μια σημαντική ιδιότητα τους είναι ότι δεν χάνουν τα δεδομένα τους όταν διακόψουμε την τροφοδοσία.Οι απλές μνήμες ROM είναι κατασκευασμένες από το εργοστάσιο και έχουν συγκεκριμένα δεδομένα που δεν μπορούν να αλλάξουν. Αν χρησιμοποιούμε τέτοια μνήμη και πρέπει να αλλάξουμε το περιεχόμενό της, αυτό είναι αδύνατον. Θα πρέπει να την πετάξουμε και να χρησιμοποιήσουμε μια άλλη μνήμη, με το καινούργιο επιθυμητό περιεχόμενο. Μια παραλλαγή της μνήμης ROM που μας δίνει ένα βαθμό ελευθερίας είναι η PROM (Programmable Read Only Memory). Το περιεχόμενο της μνήμης αυτής δεν καθορίζεται κατά την κατασκευή της αλλά μπορεί να προγραμματιστεί αργότερα, αλλά μία μόνο φορά. Μια μνήμη PROM αφού προγραμματιστεί μία φορά, μετά το περιεχόμενο της δεν μπορεί να αλλάξει. Οι μνήμες ανάγνωσης των οποίων το περιεχόμενο μπορούμε να σβήσουμε μετά τον προγραμματισμό και να τις ξαναπρογραμματίσουμε ονομάζονται EPROM (Erasable Programmable Read Only Memory) και EEPROM (Electrically Erasable Programmable Read Only Memory). Εδώ πρέπει να τονιστεί ότι οι μνήμες EPROM και EEPROM δεν είναι μνήμες RAM. Οι μνήμες EPROM και EEPROM μας δίνουν την δυνατότητα να προγραμματίσουμε το περιεχόμενο τους πολλές φορές όχι όμως να γράφουμε σε αυτές, σαν να ήταν μνήμες RAM.Οι μνήμες EPROM και EEPROM έχουν διαφορετικό τρόπο σβησίματος. Στις μνήμες EPROM το περιεχόμενο τους σβήνεται με υπεριώδες φως, ενώ στις μνήμες EEPROM το περιεχόμενο τους σβήνεται με ηλεκτρικό τρόπο. Τέλος, μια ειδική κατηγορία των επανεγράψιμων μνημών είναι και οι μνήμες FLASH που έχουν παρόμοια χαρακτηριστικά με τις EEPROM. Η διαφορά τους είναι ότι, ενώ στις EEPROM μπορούμε να σβήσουμε όποια θέση μνήμης θέλουμε, στις FLASH η εντολή σβησίματος καθαρίζει όλες τις θέσεις. Σχήμα 3.5.5 Κατηγορίες μνημών 3.5.3 Τα εξωτερικά σήματα μιας μνήμης Μία μνήμη επικοινωνεί με τα υπόλοιπα κυκλώματα μέσω τριών ομάδων σημάτων. Ας πάρουμε σαν παράδειγμα μια μνήμη με χωρητικότητα 1024 byte= 1Kbyte. Στο σχήμα 3.5.6, το οποίο απεικονίζει μια τέτοια μνήμη, μπορούμε να διακρίνουμε τις εξής ομάδες σημάτων: Σχήμα 3.5.6 Συμβολική παράσταση μνήμηςΤα σήματα της διεύθυνσης (Α0-Α9).Τα σήματα της διεύθυνσης συνδέονται στον διάδρομο διευθύνσεων του υπολογιστικού συστήματος. Τα σήματα αυτά δηλώνονται με το γράμμα Α και δείκτη έναν αριθμό που δείχνει την δυαδική αξία του bit της διεύθυνσης. Το σήμα με δείκτη τον αριθμό 0 αντιστοιχεί στο bit με την μικρότερη δυαδική αξία (LSB-least significant bit ) και το σήμα με τον δείκτη 9 στο bit με την μεγαλύτερη δυαδική αξία (MSB-most significant bit ).Τα σήματα των δεδομένων (D0-D7)Τα σήματα των δεδομένων συνδέονται στο διάδρομο δεδομένων του υπολογιστικού συστήματος. Tα σήματα αυτά δηλώνονται με το γράμμα D και δείκτη έναν αριθμό που δείχνει την δυαδική αξία του bit όπως στα σήματα της διεύθυνσης. Τα σήματα των δεδομένων είναι κοινά για τα δεδομένα εισόδου και τα δεδομένα εξόδου.Τα σήματα ελέγχου (RE' CE' WE' ).Τα σήματα ελέγχου συνδέονται στο διάδρομου ελέγχου του υπολογιστικού συστήματος. Όπως κάθε συσκευή που συνδέεται σε διάδρομο υπολογιστικού συστήματος, έτσι και η μνήμη διαθέτει σήμα ενεργοποίησης CE' (Chip Enable). Γραμμή πάνω από το σήμα δηλώνει ότι η μνήμη ενεργοποιείται, δηλαδή επιλέγεται όταν το σήμα CE' έχει χαμηλή τάση, ενώ μένει απενεργοποιημένη όσο το σήμα CE' έχει υψηλή τάση. Το σήμα αυτό πολλές φορές συμβολίζεται και ως CS' (Chip Select). Πρόσθετα οι μνήμες RAM διαθέτουν σήμα επιλογής εγγραφής στην μνήμη WE' (Write Enable). Αντίστοιχα όταν το σήμα WE' έχει χαμηλή τάση τότε η μνήμη εκτελεί την διαδικασία εγγραφής δεδομένων, ενώ όταν το σήμα WE' βρίσκεται σε υψηλή τάση τότε τα περιεχόμενα της μνήμη δεν μπορούν να αλλάξουν.Τέλος οι μνήμες RAM διαθέτουν σήμα επιλογής ανάγνωσης ή εγγραφής στην μνήμη RE' (Read Enable). Όταν το σήμα RE' έχει χαμηλή τάση τότε η μνήμη εκτελεί την διαδικασία ανάγνωσης δεδομένων, ενώ όταν το σήμα RE' βρίσκεται σε υψηλή τάση τότε η μνήμη δεν εμφανίζει τα δεδομένα στην έξοδο της. Τι έμαθες
- Μια μνήμη αποτελείται από θέσεις αποθήκευσης δυαδικής πληροφορίας. Το πλήθος των θέσεων αυτών ονομάζεται μέγεθος της μνήμης. Το μέγεθος της μνήμης καθορίζει τον αριθμό των δυαδικών ψηφίων που χρησιμοποιούνται για την διεύθυνση.
- Το πλήθος των δυαδικών ψηφίων που έχει κάθε θέση μνήμης ονομάζεται μήκος λέξης της μνήμης.
- Οι μνήμες χωρίζονται σε διάφορες κατηγορίες ανάλογα με τις λειτουργίες που διαθέτουν και τον τρόπο κατασκευής τους. Οι μνήμες χωρίζονται σε μνήμες μόνο ανάγνωσης (ROM) και σε μνήμες εγγραφής και ανάγνωσης (RAM).
- Οι βασικές κατηγορίες μνήμης μόνο ανάγνωσης είναι οι ROM – PROM – EPROM – EEPROM.
- Οι μνήμες RAM ανάλογα με την τεχνολογία κατασκευής τους χωρίζονται σε στατικές μνήμες και σε δυναμικές.
Έλεγχος γνώσεων. Τι ονομάζουμε μέγεθος μνήμης;Από τι εξαρτάται το μέγεθος μιας μνήμης;Τι ονομάζουμε μήκος λέξης μνήμης;Ποιες είναι οι βασικές κατηγορίες των μνημών RAM;Ποια είναι τα πλεονεκτήματα και τα μειονεκτήματα των στατικών και δυναμικών μνημών;Ποιες είναι οι βασικές κατηγορίες των «μνημών μόνο ανάγνωσης»; Πώς διακρίνονται;Ποια είναι τα σήματα ελέγχου μιας μνήμης;