Η λειτουργία του εντοπισμού, όπως έχει αναφερθεί, αρχίζει όταν ο επεξεργαστής εκτελεί εντολή που απαιτεί πρόσβαση στο περιεχόμενο μιας διεύθυνσης της κύριας μνήμης και η αίτηση αυτή μεταφέρεται στην κρυφή μνήμη. Η λειτουργία του εντοπισμού σκοπό έχει να διαπιστώσει αν το μπλοκ της κύριας μνήμης που περιέχει τη ζητούμενη διεύθυνση, έχει ήδη μεταφερθεί σε ένα αντίστοιχο μπλοκ της κρυφής και συνεπώς το περιεχόμενο της ζητούμενης διεύθυνσης υπάρχει ήδη μέσα στην κρυφή μνήμη. Τα βήματα του εντοπισμού είναι:
Η ζητούμενη διεύθυνση της κύριας μνήμης χωρίζεται σε τμήματα αρχίζοντας από το λιγότερο σημαντικό bit της διεύθυνσης.
Το υπόλοιπο τμήμα της διεύθυνσης ανάλογα με το είδος της κρυφής μνήμης μπορεί να διαιρεθεί σε δύο τμήματα το τμήμα ετικέτας και το τμήμα του δείκτη.
Από το πεδίο δείκτη υπολογίζεται το σύνολο ή το μπλοκ της κρυφής μνήμης.
Το πεδίο ετικέτας του συγκεκριμένου μπλοκ που έχει επιλεγεί από το πεδίο δείκτη της διεύθυνσης συγκρίνεται με το αντίστοιχο τμήμα ετικέτας της διεύθυνσης της κύριας μνήμης για να διαπιστωθεί αν είναι ίσα. Ειδικότερα για τα διάφορα είδη κρυφής μνήμης ισχύει:
Ταυτόχρονα με τον έλεγχο του πεδίου ετικέτας ενός μπλοκ ελέγχεται και το πεδίο εγκυρότητας του
Αποτέλεσμα εντοπισμού
Αν για το μπλοκ (ή για τα μπλοκ του συνόλου) που καθορίζεται, βρεθεί ότι η ετικέτα του είναι ίση με το πεδίο ετικέτας που προκύπτει από την τμηματοποίηση της ζητούμενης διεύθυνσης της κύριας μνήμης και το ψηφίο εγκυρότητάς του μπλοκ είναι ίσο με ένα (V=1) τότε έχουμε επιτυχία της κρυφής μνήμης, διαφορετικά αν το ψηφίο εγκυρότητας είναι μηδέν (V=0) ή τα πεδία ετικέτας διαφέρουν τότε έχουμε αποτυχία της κρυφής μνήμης.
Αν το αποτέλεσμα του εντοπισμού είναι επιτυχία τότε αρχίζει η λειτουργία της ανάγνωσης, ενώ αν είναι αποτυχία αρχίζει η λειτουργία της τοποθέτησης.
Παράδειγμα Υποθέτουμε ότι διαθέτομε ένα υπολογιστή με τα παρακάτω στοιχεία: η κύρια μνήμη έχει μέγεθος 1 ΜΒ (220 bytes), η κρυφή μνήμη έχει μέγεθος 1 KB (210) και το μέγεθος των μπλοκ που περιέχει, είναι 8 bytes (23 bytes). Αυτό σημαίνει ότι οι διευθύνσεις της κύριας μνήμης έχουν μήκος 20 bit. Η κρυφή μνήμη αποτελείται από 210/23 = 27 (128) μπλοκ.
Να προσδιορίσετε τα βήματα του εντοπισμού για κάθε μία από τις παρακάτω οργανώσεις της κρυφής μνήμης, για αίτηση του επεξεργαστή από τη διεύθυνση κύριας μνήμης (5F012)16. Απάντηση ΔΡΑΣΤΗΡΙΟΤΗΤΑ 7
|
|