Sistemi di memoria cache

La cache è una memoria (in genere del tipo SRAM) con piccoli tempi d’accesso, e di dimensioni contenute, inserita tra la memoria centrale di tipo DRAM e il microprocessore. Essa rende più rapido l’accesso ai dati che la CPU richiede più di frequente. Essendo la cache di dimensioni molto più piccole della SDRAM può contenere solo una parte dei dati presenti nella memoria centrale.
La cache può essere organizzata in modi diversi che tengono conto di come i dati sono prelevati dalla memoria centrale e posti nella cache e le modalità di accesso ad essi. Si hanno le seguenti organizzazioni:

  1. Cache a mappatura diretta: semplice da realizzare con ricerca veloce dei contenuti ma che dà luogo a dei conflitti in quanto il contenuto di due locazioni di memoria SDRAM, con la parte bassa dell'indirizzo uguale, (ma con la parte alta diversa) devono essere memorizzate sulla stessa locazione di memoria cache.
  2. Cache a mappatura completamente associativa: costose nella realizzazione richiedono tempi lunghi per la ricerca dei dati. Non c’è conflitto. Ogni indirizzo della memoria centrale può essere mappato in ciascuna linea della cache. È necessario utilizzare particolari tecniche per trovare la linea da cancellare quando si deve inserire una nuova linea e la memoria è piena.
  3. Cache set associativa: risolvono in parte i conflitti, conservando le buone caratteristiche delle memorie a mappatura diretta. È realizzata ponendo in parallelo 2 o più sezioni di memoria a mappatura diretta. Si dice quindi memoria cache set associativa a n vie (con n si indica il numero di sezioni poste in parallelo).

Hai bisogno di aiuto in Informatica?
Trova il tuo insegnante su Skuola.net | Ripetizioni
Registrati via email