Concetti Chiave
- Il collo di bottiglia nell'architettura Von Neumann è rappresentato dalla comunicazione tra CPU e memoria, a causa della lentezza relativa delle memorie rispetto alla CPU.
- Le memorie nei PC sono organizzate in gerarchie, con livelli caratterizzati da dimensioni crescenti e tempi di accesso decrescenti, per ottimizzare costi e prestazioni.
- La tecnica della cache combina memorie veloci e capienti per migliorare le prestazioni, permettendo alla CPU di accedere rapidamente ai dati necessari.
- Un cache miss indica l'assenza di un dato nella cache, mentre un cache hit segnala il successo nel recupero del dato richiesto dalla CPU.
- Le memorie cache, organizzate in livelli, compensano la lentezza della RAM e, grazie all'architettura Harvard, permettono un accesso simultaneo a dati e istruzioni.
Nell’architettura Von Neumann il canale di comunicazione tra la
CPU e la memoria è il punto critico del sistema ed è chiamato collo
di bottiglia. La tecnologia consente di realizzare processori sempre più veloci
e memorie sempre più capienti, tuttavia la velocità di accesso delle memorie non è adeguato alla crescita repentina delle CPU. La soluzione ottimale per un sistema di gestione della memoria dovrebbe garantire costi minimi con capacità massime e bassi tempi di accesso al dato. La soluzione che è stata escogitata prevede l’uso di memorie con tempi di accesso diversi, organizzate secondo gerarchie: con l’uso di tecnologie differenti possiamo soddisfare al meglio ciascuno dei requisiti.
La memoria all’interno della scheda madre di un PC è organizzata in livelli gerarchici: ogni livello è caratterizzato da una dimensione crescente e da un tempo di accesso decrescente. La memoria RAM è molto più lenta della CPU, per cui per migliorare le prestazioni vengono combinati tipi di memoria veloce con tipi di memoria più capienti ma lente. Questa tecnica prende il nome di cache.
Pertanto la CPU legge e scrive i dati in modo diretto sulla cache di primo livello, quindi via via sulle memorie inferiori. Quando la cache riceve una richiesta dalla CPU, potrebbe non possedere i dati necessari: si parla in questo caso di cache miss, cioè di dato mancato nella cache. Solitamente il cache miss avviene quando un dato viene richiesto per la prima volta dalla CPU alla partenza del sistema, oppure quando si tratta di una quantità di dati che non possono essere contenuti all’interno della cache. Quando invece il dato viene trovato nella cache si parla di cache hit, per indicare il successo nella lettura.
Quindi, le memorie cache fanno da tramite tra la CPU e la memoria RAM compensando il deficit legato alla lentezza della RAM. Esistono diversi livelli di cache, denominate di primo livello, che spesso risiedono all’interno del microprocessore e sono più potenti e veloci della versione integrata sulla motherboard; inoltre mantengono separati dati e istruzioni secondo l’architettura Harvard, consentendo un accesso simultaneo.
Domande da interrogazione
- Qual è il problema principale nell'architettura Von Neumann riguardo la gestione della memoria?
- Come viene organizzata la memoria all'interno della scheda madre di un PC per migliorare le prestazioni?
- Cosa si intende per cache miss e cache hit?
Il problema principale è il collo di bottiglia tra la CPU e la memoria, dove la velocità di accesso delle memorie non tiene il passo con la crescita delle CPU.
La memoria è organizzata in livelli gerarchici, combinando memorie veloci con memorie più capienti ma lente, utilizzando la tecnica della cache.
Un cache miss si verifica quando la cache non contiene i dati richiesti dalla CPU, mentre un cache hit indica il successo nel trovare i dati nella cache.