Quali e quanti sono i livelli della cache

1 Settembre 2022
Quando si parla di memoria in informatica, ci si riferisce alle parti di un computer in cui vengono salvati le informazioni, per una durata di tempo che può essere variabile. Tra le varie tipologie di memoria ce n’è una in particolare che si occupa di memorizzare i dati utilizzati più frequentemente dal processore, meglio conosciuto anche come CPU. Compito della CPU che è quello di leggere le istruzioni e i dati della memoria ed eseguire le diverse istruzioni che vengono fornite dall’utente, nel minor tempo possibile per offrire un’esperienza ottimale. La cache funge da memoria volatile in questo processo, con il fine di velocizzare le operazioni e i calcoli della CPU stessa. Questo importantissimo componente ha anche una struttura particolare: è suddiviso in due diversi livelli che hanno dei compiti specifici da svolgere. Vediamo insieme le funzioni specifiche di ogni parte, andando ad analizzare i diversi compiti che svolgono nel rendere sempre più prestanti i nostri PC.
Quando si parla di memoria in informatica, ci si riferisce alle parti di un computer in cui vengono salvati le informazioni, per una durata di tempo che può essere variabile. Tra le varie tipologie di memoria ce n’è una in particolare che si occupa di memorizzare i dati utilizzati più frequentemente dal processore, meglio conosciuto anche come CPU. Compito della CPU che è quello di leggere le istruzioni e i dati della memoria ed eseguire le diverse istruzioni che vengono fornite dall’utente, nel minor tempo possibile per offrire un’esperienza ottimale. La cache funge da memoria volatile in questo processo, con il fine di velocizzare le operazioni e i calcoli della CPU stessa. Questo importantissimo componente ha anche una struttura particolare: è suddiviso in due diversi livelli che hanno dei compiti specifici da svolgere. Vediamo insieme le funzioni specifiche di ogni parte, andando ad analizzare i diversi compiti che svolgono nel rendere sempre più prestanti i nostri PC.Suddivisione di una cache
Suddivisione di una cacheAll’interno di ogni computer, mobile o fisso che sia, troviamo integrata nel chip in silicio che contiene il processore, la cache di primo livello. Conosciuta come L1, essa permette l’accesso in modo praticamente istantaneo alla memoria, essendo contenuta all’interno del microprocessore. Caratteristiche che la rendono estremamente veloce e prestante. All’interno della scheda madre invece troviamo la cache esterna, da molti conosciuta come cache di secondo livello (L2), stavolta più lenta rispetto alla prima. Alla base di tutti i sistemi di memoria cache troviamo comunque il principio di localizzazione, concetto che possiamo riassumere come: i riferimenti alla memoria in un breve intervallo di tempo tendono a “concentrarsi” attorno a un piccolo gruppo di indirizzi. Grazie a questo principio è molto più probabile che il contenuto di un indirizzo di memoria recentemente utilizzato venga riutilizzato anche dopo poco, portando un netto risparmio in termini di tempo. Indirizzo che viene quindi inserito nella cache. Quando c’è bisogno di accedere ad un dato, da quel momento in poi viene prima consultata la cache per verificare che non si tratti di un comando già conosciuto. Se viene trovato e definito come valido, viene direttamente usata la copia già salvata nella cache e, viceversa, viene recuperato dalla memoria principale, e memorizzato nella cache, nel caso serva ancora in futuro.
All’interno di ogni computer, mobile o fisso che sia, troviamo integrata nel chip in silicio che contiene il processore, la cache di primo livello. Conosciuta come L1, essa permette l’accesso in modo praticamente istantaneo alla memoria, essendo contenuta all’interno del microprocessore. Caratteristiche che la rendono estremamente veloce e prestante. All’interno della scheda madre invece troviamo la cache esterna, da molti conosciuta come cache di secondo livello (L2), stavolta più lenta rispetto alla prima. Alla base di tutti i sistemi di memoria cache troviamo comunque il principio di localizzazione, concetto che possiamo riassumere come: i riferimenti alla memoria in un breve intervallo di tempo tendono a “concentrarsi” attorno a un piccolo gruppo di indirizzi. Grazie a questo principio è molto più probabile che il contenuto di un indirizzo di memoria recentemente utilizzato venga riutilizzato anche dopo poco, portando un netto risparmio in termini di tempo. Indirizzo che viene quindi inserito nella cache. Quando c’è bisogno di accedere ad un dato, da quel momento in poi viene prima consultata la cache per verificare che non si tratti di un comando già conosciuto. Se viene trovato e definito come valido, viene direttamente usata la copia già salvata nella cache e, viceversa, viene recuperato dalla memoria principale, e memorizzato nella cache, nel caso serva ancora in futuro.