L’evoluzione delle CPU La storia del computer è legata alla storia di Intel, che con la sua linea di processori economicamente accessibili ha permesso lo sviluppo e l’ampia diffusione dei PC. Altri produttori, come Motorola, hanno messo sul mercato CPU di qualità, ma non hanno avuto la stessa diffusione e importanza di Intel. L’AMD, per esempio, ha creato “cloni” delle CPU Intel, quasi completamente compatibili. L’AMD, con Atlon, ha prodotto processori migliori di quelli dell’Intel, e con l’Athlon 64 ha consentito l’evoluzione dei PC verso i 64 bit. Attualmente Intel e AMD si spartiscono il mercato delle CPU per PC. Esistono, però, anche altri fornitori, ma di meno successo. Con l’Intel 8086 e 8088 inizia la storia dei Personal Computer, con l’8086 viene definita l’architettura delle CPU dei PC, l’8088 viene utilizzato sui primi PC IBM e IBM-compatibili. Nel 1986 Intel sviluppa il 286 che ha prestazioni doppie dell’8088 e permette di utilizzare 16 MByte di RAM. È molto adatto a sistemi multi-users e a programmi multi-tasking. Implementa un primo sistema di protezione della memoria (protected mode). Con l’Intel I386 si ha la prima CPU completamente a 32 bit e capace di indirizzare fino a 4 GB di memoria RAM. Le operazioni in virgola mobile (float) sono implementate in hardware e sono demandate a un integrato separato: il coprocessore matematico. Cloni di queste CPU venivano prodotte dall’AMD e dalla Cyrix. Le prestazioni di queste CPU si avvicinano ai 10 MIPS (Million Instruction Per Second). L’architettura delle CPU Intel diviene più complessa con il 486, che raddoppia le prestazioni rispetto al 386, e gli ultimi modelli arrivano ai 70 MIPS. È presente, tra l’altro, una cache di primo livello (L1) integrata nella CPU, una cache di secondo livello (L2) sulla scheda madre e certe versioni hanno il coprocessore matematico integrato. AMD produce cloni di questi processori che lavorano a velocità più elevate degli originali. L’evoluzione delle CPU subisce un’accelerazione con il Pentium che ha prestazioni fra i 100 e i a 280 MIPS, clock fra 60 e 200 MHz e usa un bus per i dati a 64 bit. Con il Pentium inizia a essere introdotta nelle CPU una tecnlologia SIMD (con istruzioni MMX, dedicate alla grafica), inoltre si possono costruire con il Pentium macchine bi-processore. Con il Pentium viene utilizzato il bus PCI, e l’Intel, approfittando della sua posizione di leader nelle CPU, entra in modo massiccio nel mercato dei cipsets. In questo periodo l’AMD produce il K5, un processore compatibile a livello di pins, con il Pentium, e che può quindi utilizzare le stesse schede madri basate su socket 7. Prima l’AMD aveva essenzialmente prodotto cloni dei processori Intel, mentre il K5 è un progetto originale. L’AMD K5 ha velocità fra 75 e 133 MHz, bus per indirizzi a 32 bit e di dati a 64 bit. Il Pentium Pro è basato su architettura RISC. Ha un disegno innovativo e una cache di secondo livello unita al cip, che può arrivare a 1 MByte. Ottimizzato per applicazioni a 32 bit non rende su quelle a 16 bit su cui viene battuto dalle CPU dell’AMD (Windows 95 è L'evoluzione delle CPU.qxd 17-09-2010 16:30 Pagina 3 ancora largamente a 16 bits), e per il suo alto prezzo finisce per essere dedicato al mercato dei server. Il Pentium Pro non utilizza più il socket 7 ma il socket 8. Il successore del Pentium pro è il Pentium II, che ha buone prestazioni anche con le applicazioni a 16 bit. Ha una cache di secondo livello veloce, che lavora a metà del clock della CPU; questa cache non è unita alla CPU, come nel Pentium Pro, ma CPU e cache L2 sono integrate in una cartuccia apposita, che viene inserita in un alloggiamento a slot della scheda madre invece che in uno a socket. La cache di secondo livello arriva a 512 KByte. In questo periodo l’Intel introduce 2 nuove linee di processori, gli Xeon, con grandi cache, molto utili per i server, e i Celeron, processori a basso consumo, con cache ridotte, per PC più economici e per quelli portatili. Nello stesso periodo si assiste anche a un veloce miglioramento delle tecnologie costruttive delle CPU, con la nascita del Pentium III che grazie alle dimensioni ridotte dei transistor e al conseguente abbassamento del voltaggio della CPU, riesce a raggiungere una velocità del clock che arriva poco oltre il Ghz. Le ultime versioni del Pentium III integrano una cache L2 di 256 KByte nel processore e, quindi, non è più necessario una cartuccia come quella del Pentium II e si torna al socket, con il socket 370. Questi processori, però, iniziano anche a sviluppare parecchio calore (si pensi che il Pentium II e certe versioni del III arrivano a temperature di esercizio attorno ai 90 gradi). Con la nascita dei processori K6 l’azienda AMD entra in competizione con il Pentium II. Il K6 ha cache più grandi, costa meno dei Pentium e, per determinate applicazioni, ha prestazioni decisamente superiori. Il K6-II introduce istruzioni e alcune versioni ammettono anche un bus a 100 MHz (super socket 7 mainboard), aumentando in modo decisivo le prestazioni. Le ultime versioni del K6 hanno una cache di 256 o 128 KByte integrate nel processore e un processo produttivo a 0,18 micron; sono in concorrenza con il Pentium III. Con il Pentium IV Intel punta a aumentare le prestazioni aumentando soprattutto il clock. L’architettura del Pentium IV utilizza cache L1 piccole, ma veloci (con bassa latenza). La cache L1 delle istruzioni è trasformata in una: execution trace cache, ossia in una cache che contiene molte istruzioni in forma già parzialmente interpretata, in modo da ridurre il lavoro di dell’interprete. Questa CPU ha 2 unità per i calcoli interi (ALU) e 2 per gli indirizzi (AGU) che vanno a 2 volte il clock, nuove istruzioni per la grafica, ma una sola unità per calcoli floating point a 128 bit. Intel pensava di poter spingere l’architettura fino ai 10 Ghz. Tuttavia, anche a causa delle alte frequenze e dal troppo sviluppo di calore, non si riuscirà a superare i 4 Ghz. L’AMD, con l’Athlon, è superiore nel calcolo float e in molte altre applicazioni. Il Pentium 4 consuma molto (attorno ai 50 Watt), richiede dissipatori robusti e gli alimentatori per Pentium IV hanno un connettore in più con linee ausiliarie per la scheda madre. Fra il 2002 e il 2004, messa sotto pressione dall’AMD, l’Intel sforna di continuo varianti del Pentium IV Northwood, che ha un processo di fabbricazione a 0,13 micron, e cache L2 di 512 KByte. L’Intel sale con il clock , con il fsb (velocità del bus verso la memoria), e introduce l’hyper-treading, che permette al software multi-tread di vedere il processore come fossero 2 CPU che condividono la memoria. Nel 2003 l’Intel produce anche un Pentiun IV extreme edition, dedicato alla grafica e ai giochi, ma soprattutto nato per questioni di marketing, questa CPU ha 2 MB di cache di terzo livello integrata. Lo sviluppo del Pentium IV viene abbandonato, a causa dei problemi legati alla dissipazione termica. Finita la corsa al MHz l’Intel cambia nomi ai processori, che non sono più distinti dal clock ma da sigle più anonime; il Pentium IV diviene così la serie 500, con Pentium IV 570 si arriva fino a 3.8 Ghz, che è la massima frequenza raggiunta dal Pentium. Per i portatili l’Intel sviluppa un’apposita linea di processori, i Pentium M. Nel 2005 le innovazioni nelle CPU Intel riguardano il “dual core” e le estensioni a 64 bit. L’AMD ha grande successo con l’Athlon K7, che CPU riesce a essere migliore delle CPU Intel del periodo e guadagna grandi fette di mercato. L’Athlon ha cache grandi rispetto ai Pentium e un’unità float migliore. Anche qui, come per il Pentium II, si introduce una scheda, con la CPU e la cache di secondo livello, che viene montata su uno slot della scheda madre. La cache L2 lavora a 1/3 o 2/5 del clock della CPU. Vengono ovviamente inserite istruzioni dedicate alla grafica. L’Athlon Thunderbird integra sul cip della CPU la cache L2, rimpicciolita; si torna quindi a un’interfaccia a socket, il socket A. Nel processo di fabbricazione si iniziano a inserire connessioni in rame nella CPU. L’AMD abbandona una nomenclatura basata sul clock e per questioni di marketing utilizza sigle numeriche che dovrebbero permettere di confrontare le CPU con le Intel di maggior frequenza. Il core Palomino (Atlon XP) introduce una CPU con clock avanzato che, però, sviluppa molto calore. La situazione termica migliora con il core Thoroughbred. La versione Thoroughbred B introduce un ulteriore strato metallico nel processo di fabbricazione e questo permette di dissipare meglio il calore, si può ancora alzare il clock e si arriva oltre i 2 Ghz. L’ultima evoluzione dell’Athlon XP è il core Barton, con il quale si raddoppia la cache L2. Athlon non riesce ad andare molto oltre i 2 Ghz, un Athlon XP a 2 Ghz è fondamentalmente equivalente ad un Pentium IV a 3 Ghz, ma la differenza di prestazioni dipende dall’applicazione con cui si fanno i test. Con il passar del tempo, i server necessitano di indirizzare grandi quantità di memoria mentre il limite imposto dalle architetture a 32 bit si attesta intorno ai 4 GByte. Per spingersi nel mercato dei grossi server occorrono CPU a 64 bit. L’Intel, assieme ad HP, si è mossa in questo senso nel 2001 con l’Itanium, un processore di nuova concezione, che rompeva con la tradizione delle istruzioni per l’architettura X86 e non compatibile con queste. Questo processore, però, non è riuscito ad imporsi a causa delle basse frequenze di clock e l’alto prezzo. Nel 2003 l’AMD adotta un approccio diverso, introducendo l’architettura X86-64, che è un’estensione dell’architettura X86, con questa compatibile, e che può lavorare sia a 32 che a 64 bit. Il prodotto di questa linea è l’Athlon 64, che l’AMD spinge sia sul mercato dei server che su quello del desktop e perfino nel mercato dei PC portatili. Questa strategia sembra avere successo, l’Intel è costretta a seguire questa linea introducendo nel 2004 la serie 600 dei Pentium IV Prescott. Nel 2005 escono versioni del Pentium IV che hanno estensioni a 64 bit analoghe (e sembra compatibili) a quelle AMD. Partendo da CPU single o dual core vengono realizzate CPU multi core “unendo” 2 o più CPU single o dual core. Il Pentium D Presler, per esempio, era un dual core ottenuto unendo 2 Pentium 4 Cedar Mill, mentre il Core 2 Extreme Kentsfield veniva realizzato partendo da 2 Core 2 Duo Conroe, dove ciascuno di essi era dual core, per un totale di 4 core per Kentsfield. Allo stesso modo il Core 2 Quad Yorkfield veniva realizzato unendo 2 Core 2 Duo Wolfdale. Continuando il processo di evoluzione, all’inizio del 2009 sono arrivati i primi processori a 4 core basati sull’architettura Nehalem, successiva alla “Core”, i quali potrebbero dar vita a processori a 8 core. Gerarchie di memorie L’architettura del computer prevede la gerarchia di memorie riportata nella seguente figura in cui le memorie sono poste in ordine decrescente di prestazioni (maggiore velocità e minore capienza): CPU Registri Memoria Cache Memoria RAM Memoria Flash Memoria a dischi magnetici Memoria a dischi ottici Memoria a nastri magnetici Memorie di massa L’evoluzione delle RAM RAM Acronimo usato nell'informatica per Random Access Memory, è il supporto di memoria su cui è possibile leggere e scrivere informazioni con un accesso "casuale", ovvero senza dover rispettare un determinato ordine sequenziale, come ad esempio avviene per un nastro magnetico. La RAM costituisce la memoria principale del computer. Caratteristica comune a tutti i tipi di RAM utilizzati per la memoria principale è quella di perdere il proprio contenuto nel momento in cui viene a mancare la corrente elettrica che le alimenta (è una memoria volatile). Sono allo studio altri tipi di memoria, basati su altri principi, che in futuro potrebbero consentire di superare questa limitazione. SRAM Static Random Access Memory, ovvero RAM statica. Sono memorie che consentono di mantenere le informazioni per un tempo infinito, sono molto veloci, consumano poco e quindi dissipano poco calore. La necessità di usare molti componenti, però, le rende molto costose e difficili da impacchettare. Sono solitamente usate per le memorie cache, dove elevate velocità e ridotti consumi sono caratteristiche fondamentali. DRAM Dynamic Random Access Memory, ovvero RAM dinamica. Sono generalmente usate per la memoria principale del sistema perché consentono di ottenere un grande capienza e sono economiche. SDRAM Synchronous Dynamic Random Access Memory, ovvero DRAM sincrone. Si differenziano dalle DRAM normali per il fatto che l'accesso è sincrono, ovvero governato dal clock. È un tipo di RAM utilizzata nelle DIMM per la memoria principale dei personal di tipo Pentium e successivi. Raggiungono una velocità almeno tre volte maggiore delle SIMM con EDO RAM. DDR SDRAM Synchronous Dynamic Random Access Memory Double Data Rate, ovvero SDRAM con Data Rate doppio. Si differenziano dalle SDRAM per il fatto che consentono di raddoppiare la banda teorica. FeRAM Ferroelectric Dynamic Random Access Memory. Queste memorie hanno la peculiarità di mantenere i dati senza l'ausilio del refresh di sistema. Utilizzano un materiale ferroelettrico che ha la capacità di mantenere la propria polarizzazione anche dopo esser scollegato dalla fonte energetica. PRAM Phase-change Random Access Memory, ovvero memoria ad accesso casuale a cambiamento di fase. Queste memorie se paragonate alle flash hanno molti vantaggi, la principale è la velocità di scrittura che può arrivare ad essere più rapida di 30 volte, come ciclo di vita 10 volte maggiore e nota non trascurabile un costo minore dato dalla lavorazione più veloce. Microcontrollore Detto anche computer single chip, è un sistema a microprocessore completo, integrato in un solo chip e rappresenta la forma più diffusa e più invisibile di computer. Comprende la CPU, una memoria RAM, una ROM e una serie di interfacce di I/O standard. Le periferiche integrate rappresentano la vera forza di questi dispositivi. Essi si trovano in tutti i televisori moderni, nelle macchine fotografiche e nelle videocamere, nei lettori CD e DVD, nei forni a microonde, in molte lavatrici e frigoriferi di ultima generazione, nelle centraline di controllo delle automobili, negli sportelli Bancomat, nelle centraline dei semafori.