Vai al contenuto

Assembly/Organizzazione di sistema/Tempo di sistema/Memoria Cache

Wikibooks, manuali e libri di testo liberi.
Indice del libro

La memoria cache sfrutta il principio di località, secondo il quale se all'istante t la cpu genera un indirizzo di memoria xNNNN, è molto probabile che nell'immediato futuro generi di nuovo lo stesso indirizzo o indirizzi vicini "locali" all'indirizzo xNNNN.

Il principio di località ha due motivazioni

  • Località spaziale: il fetch delle istruzioni procede in celle consecutive; i programmi sono organizzati in moduli, con le variabili dei singoli moduli memorizzate in celle vicine.
  • Località temporale: l'essenza della programmazione sono i cicli, dunque le istruzioni e le variabili vengono riutilizzate.

Sfruttare il principio di località per creare la memoria cache

[modifica | modifica sorgente]

Quando la cpu genera un indirizzo di memoria, si porta il contenuto della cella richiesta e un certo numero di celle vicine (blocco) in una memoria più della DRAM. Questa memoria viene appunto chiamata cache.

La memoria cache serve a sfruttare statisticamente il fatto che di tutte le celle della memoria di lavoro solo un sottoinsieme è di più probabile richiesta da parte della CPU, dunque serve a velocizzare gli accessi alla memoria di lavoro.