domenica 8 marzo 2009

Il funzionamento della CPU

La CPU è la parte fondamentale del calcolatore che elabora le informazioni. Prima di tutto, è interessante vedere la struttura semplificata di un calcolatore nell'immagine che segue:





La CPU come abbiamo visto elabora delle istruzioni per risolvere un determinato problema. Le istruzioni sono contenute in quello che viene chiamato programma o applicazione. Il programma può risiedere in un supporto di memorizzazione esterno, come un disco o una memoria flash USB, o sul disco fisso, per esempio. Quando l'utente "lancia" l'applicazione, questa viene caricata nella memoria primaria (RAM). Da qui la CPU procede con l'elaborazione delle istruzioni, una per una. Per fare questo, la CPU si appoggia su diversi registri che memorizzano temporaneamente le istruzioni e i dati: prende un'istruzione dalla memoria e la mette in un registro, prende eventuali dati dalla memoria, stabilisce di che tipo di operazione si tratta, la esegue e restituisce il valore, mentre altri registri aggiornano il punto in cui si è arrivati e registrano la posizione nella memoria della prossima istruzione da eseguire. Questa sequenza (semplificata) è detta "Preleva-Decodifica-Esegui", più nota come "Fetch-Decode-Execute" ed è il ciclo di lavoro fondamentale di una CPU. Della CPU fanno quindi parte diversi registri che possono memorizzare dati, istruzioni o indirizzi, la ALU, o unità aritmetico-logica che esegue le operazioni, e la cache. Quest'ultima è un tipo di memoria molto veloce e relativamente poco capiente, che viene utilizzata per mettere a disposizione della CPU una parte della memoria che si prevede verrà utilizzata più frequentemente, in modo da limitare l'accesso alla memoria stessa che è più lenta e rallenterebbe in questo modo le operazioni. I bus sono invece i canali attraverso i quali le informazioni vengono spostate.
L'esecuzione delle operazioni è sincronizzata da un dispositivo detto "clock", che trasmette degli impulsi sempre uguali a una frequenza regolare. La frequenza è ora calcolata in MHz o GHz, dove 1 Hz = 1 oscillazione al secondo. Durante ogni ciclo può quindi essere svolta una operazione, e il ciclo stesso può essere suddiviso in più sottocicli se le parti dell'operazione devono essere svolte in un determinato ordine. Questa frequenza permette di avere un'idea di quanto veloce è un calcolatore: avrete sentito parlare, ad esempio, di un processore Intel Pentium IV da 3000 MHz, o di un Pentium I da 133 MHz etc.

Nessun commento:

Posta un commento