Processori milionari
(Architettura dei microprocessori – Capitolo 1)

Il microprocessore (o CPU) è il “cervello” del computer: un circuito che contiene migliaia o milioni di transistor e capace di effettuare operazioni di calcolo, operazioni decisionali ed elaborazioni di informazioni.

L’utilizzo sempre più elevato di transistor determina la realizzazione di processori più potenti e memorie sempre più grandi secondo la legge di Moore. Gordon Moore, cofondatore dell’Intel, osservò che il numero di transistor in un chip aumentava ad una velocità costante e che questo aumento sarebbe continuato, nello stesso modo, per decenni. La sua legge, detta Legge di Moore, sostiene che il numero di transistor raddoppia ogni diciotto mesi.

Un grande contributo alla realizzazione dell’architettura di un microprocessore è stato dato dall’informatico e matematico ungherese John von Neumann. Il primo progetto da lui realizzato è noto oggi come la macchina di von Neumann. Tale progetto fu utilizzato per la realizzazione del computer EDSAC (costruito dall’Università di Cambridge nel lontano 1949) ed è tuttora alla base di quasi tutti i sistemi informatici. La macchina di von Neumann è una architettura dove programmi e dati confluiscono su un’unica memoria.

Figura 1. Architettura di von Neumann

Due sono le funzioni fondamentali del microprocessore: quella che gestisce le operazioni del sistema operativo e quella che esegue tutti i calcoli logici e aritmetici. L’unità logico-aritmetica (ALU) è una componente fondamentale del microprocessore, dotata di due ingressi e un’uscita. Effettua, sui dati che riceve, operazioni logico-aritmetiche.

Figura 2. Simbolo di un’unità aritmetico-logica. A e B rappresentano gli operandi in ingresso, R il risultato, S1 i segnali provenienti dall’unità di controllo e S2 i segnali di stato dell’unità.

Una serie di registri memorizzano, temporaneamente, i dati da elaborare. Ogni registro ha una funzione e una dimensione predefinita. L’unità di controllo, ulteriore componente, reperisce l’istruzione da elaborare dalla memoria centrale e ne determina il passaggio verso l’ALU e viceversa. Le componenti della CPU sono connesse fra loro mediante un bus: un insieme di cavi paralleli su cui viaggiano indirizzi, segnali di controllo e dati.

L’unità centrale di elaborazione determina ed esegue le istruzioni secondo una sequenza chiamata ciclo fetch – decode – execute (leggi – decodifica – esegui), fondamentale per il funzionamento di tutti i microprocessori. L’istruzione viene recuperata dalla memoria (fetch), decodificata (decode) ed infine eseguita (execute).

Il ciclo fetch-decode-execute è scandito da un clock, un segnale periodico generato da un oscillatore che emette segnali di tempo regolari. In ogni intervallo di tempo viene eseguito un passo elementare di funzionamento. La velocità del microprocessore dipende dalla frequenza di oscillazione del clock. Il megahertz è l’unità di misura di questa velocità.

La velocità del microprocessore può anche essere misurata in MIPS (Millions Instruction Per Second, milioni di istruzioni per secondo), dato che ogni singola istruzione elementare richiede generalmente più di un ciclo di clock.

Tabella 1. Evoluzione del microprocessore

CPU Intel Anno di rilascio MHz (min./max.) Core
(settore desktop)
Transistor
(settore desktop)        
4004 1971 0,74 1 ~ 2.300
8008 1972 0,5/0,8 1 ~ 3.500
8080 1974 2 1 ~ 4.500
8085 1976 3,07/5 1 ~6.500
8086 1978 3/5 1 ~29.000
8088 1979 5/10 1 ~29.000
80286 1982 4/25 1 ~134.000
80386 1985 12/40 1 ~275.000
80486 1989 16/100 1 ~1.180.235
Pentium 1993 60/300 1 ~3.100.000
Pentium Pro 1995 150/200 1 ~5.500.000
Pentium II 1997 233/450 1 ~7.500.000
Celeron 1998 266/2.800 1 ~7.500.000/36.500.000
Pentium III 1999 450/1.400 1 ~9.500.000/46.000.000
Pentium 4 2000 1.300/3.800 1 ~42.000.000/168.000.000
Pentium D 2005 2.660/3.600 2 ~230.000.000/376.000.000
Core 2 Duo 2006 1.060/3.330 2 ~167.000.000/410.000.000
Core 2 Quad 2007 2.130/3.200 4 ~582.000.000/820.000.000
Core i3 2010 2.300/3.300 2 ~81.000.000
Core i5 2009 2.300/3.870 2/4 ~81.000.000/1,4 bilioni
Corei7 2008 1.600/4.000 4/8 731.000.000/2,60 bilioni

Tabella 2. Note

CPU Intel Note
4004 Primo processore commercializzato dalla Intel
8008 Processore a 8 bit
8080 “Cervello” del primo personal computer
8085 Unità di calcolo del Sojourner, primo veicolo impiegato nell’esplorazione di Marte
8086 Architettura a 16 bit
8088 CPU dell’IBM PC
80286 Progettato per applicazioni multitasking
80386 Architettura a 32 bit
80486 Integra coprocessore matematico e memoria cache
Pentium Architettura superscalare e nome storico delle CPU Intel
Pentium Pro Amato dagli “overclockers”
Pentium II Supporta le istruzioni MMX
Celeron Microprocessore di fascia economica
Pentium III Tecnologia SSE (Streaming SIMD Extension)
Pentium 4 Raggiunge la frequenza di 3,8 GHz e dà origine al problema termico
Pentium D Primo processore dual core Intel
Core 2 Duo Calcolo parallelo
Core 2 Quad Primi processori a 4 core
Core i3 Sottosistema video integrato e tecnologia Simultaneous Multi-Threading
Core i5 Nuova gerarchia della cache su 3 livelli
Corei7 Processori di alta qualità

Sommario, Bibliografia e Sitografia

Vincenzo Barile

segue…

error: Contenuti protetti da copyright