Riprenderemo ora a parlare di Cpu e precisamente delle varie architetture
da cui sono composte. Nel corso degli anni i processori si sono
differenziati tra loro per le tante varianti apportate alle loro
architetture e che frequentemente i loro produttori introducono
per renderle sempre migliori. Una prima distinzione di massa riguarda
la differente complessità dell’unità di controllo ( vedi
lezione precedente ) e vede due diverse categorie : le architetture
Risc ( Reduced Instruction Set Computing ) e Cisc
( Complex Instruction Set Computing ). Vediamole in linea di massima
Le architetture Risc tendono a semplificare le unità di
controllo introducendo un set d’istruzioni meno ampio e
un meno modi d’indirizzamento; così facendo si posso aggiungere
più registri salendo a velocità più elevate. Va anche detto che
queste architetture non fanno parte del mondo dei personal computer,
ma vengono montate su altri dispositivi ( server, console per
videogiochi come Gamecube di Nintendo ).
Le architetture Risc hanno il pregio di essere veloci ed economiche
e vengono usate nel caso di applicazioni che richiedono calcoli
intensivi, come la grafica tridimensionale per cui risultano imbattibili
sui sistemi per videogiochi, grazie alla loro economicità, ai
bassi consumi energetici e ottime prestazioni.
Le architetture Cisc, invece, rappresentano il mondo dei
pc; rispetto alle Risc, presentano un più ampio set d’istruzioni
ed un maggior numero di modi d’indirizzamento il che comporta
una maggiore complessità dell’unità di controllo. Entrambe
hanno però un ostacolo insormontabile, quello di eseguire una
sola istruzione per volta ( una singola istruzione per ciclo di
clock ); sono state introdotte allora le architetture pipeline
e superscalari. Ora non ci addentreremo nei minimi particolari,
rimando questo discorso a lezioni future più mirate ed approfondite.
Pensate alla pipeline come ad una catena di montaggio in cui
ogni singola unità compie il suo lavoro eseguendo una determinata
parte di codice; per farvi un esempio provate a pensare al tempo
che un solo operaio sta per costruire una macchina ( è solo un
esempio ) e al tempo che 5 operai impiegano per costruire la stessa
macchina solamente che ognuno di loro ha un determinato compito
( uno monta il motore, l’altro le ruote ecc ). Di conseguenza
il tempo impiegato per la costruzione della macchina dipende dal
tempo del singolo operaio ( assumendo che i 5 operai impieghino
lo stesso tempo ); per cui nel tempo che l’operaio solo
soletto ha costruito la macchina, gli altri 5, lavorando simultaneamente
o più correttamente, in parallelo, ne hanno costruite 5. In questo
caso si parla di pipeline a 5 stadi.
Queste Cpu vengono anche definite superscalari in quanto
superano i limiti dei processori andando ad eseguire più di una
istruzione per volta, ossia più di un’istruzione per ciclo
di clock; queste Cpu però non sono ottimizzate per eseguire calcoli
vettoriali ( grafica tridimensionale ) e per questo vengono definite
scalari ( nome non nuovo a chi studia matematica o fisica.
Fino ad ora l’architettura di riferimento per il mondo del
personal computer era la IA32 ossia Intel Architecture 32bit;
questa utilizza un set d’istruzioni x86 per un processore
che opera con dati e indirizzi di memoria a 32bit. Ora, novità
di dicembre ’02, l’AMD ha realizzato il suo processore
a 64bit che sta per invadere il mercato. Con la multimedialità
si è pensato di aggiungere nel processore, oltre ai già presenti
set d’istruzioni, ulteriori set dedicati all’elaborazione
dei dati multimediali come l’Mmx di Intel e i 3Dnow! di
casa AMD; questi set aggiunti, vengono sfruttati solamente se
il codice ne prevede l’utilizzo, altrimenti rimangono completamente
inutilizzati. La conformità all’architettura IA32 è un limite
per le Cpu dei Pc e la compatibilità rappresenta un limite alle
prestazioni; questo è un problema che tocca sia hardware che software
in quanto bisognerebbe effettuare una ricompilazione delle applicazioni
e dei sistemi operativi.
Più avanti esamineremo la nuova architettura a 64bit di AMD, nella
prossima lezione invece parleremo di schede madri.
Torna all'indice Generale del corso di Corso di Hardware di Software Planet