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.
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.
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…