Scheda 1 - Politecnico di Torino

Transcript

Scheda 1 - Politecnico di Torino
SCHEDE
È praticamente impossibile realizzare un testo relativo all'architettura e al funzionamento dei calcolatori che non sia obsoleto già quando viene pubblicato. Per ovviare a
questo inconveniente, si propongono delle "schede", frutto di "tesine" e contributi varii, che verranno via via aggiornate.
Le pagine che seguono sono d'integrazione e d'aggiornamento del Cap. 4 del testo:
Demichelis, Piccolo, "Introduzione all'informatica in C", McGraw-Hill, Milano.
Per maggiori spiegazioni e illustrazioni fare riferimento ai testi:
Curtin, Foley, Sen, Morin, "Informatica di base:, McGraw-Hill, Milano
Tosoratti, "Introduzione all'informatica", Casa Editrice Ambrosiana, Milano
e ai depliant relativi ai sistemi informatici.
Fonti: riviste di informatica e siti internet
PANORAMICA
RELAZIONE DI AGGIORNAMENTO SUI DATI DEI PIU'
RECENTI CALCOLA TORI
Aggiornata da Emanuele Caimotti - a.a. 2005/2006
I dati sotto riportati si riferiscono ai migliori componenti
ora in commercio (Dicembre 2005)
MICROPROCESSORE (CORE SINGOLO)
MICROPROCESSORE (DOPPIO CORE)
INTEL PENTIUM 4 670 (3,8GHz)
INTEL PENTIUM 4 3,4GHz Extreme edition
INTEL PENTIUM XEON 3,6 GHz (Per workstation)
AMD ATHLON 64 FX-57 (2,8 GHz)
AMD OPTERON 150 (2,4 GHz) (Per workstation)
INTEL PENTIUM D 840 (3,2GHz)
INTEL PENTIUM Extreme Edition (3,2GHz)
ATHLON X2 4800+ (2,4GHz)
HARD DISK
(Per capienza) HDD SEAGATE 500 GB
(Per velocità) HDD WESTERN DIGITAL serie RAPTOR
RAM DDR (Duble Data Rate)
1GB KINGSTON HYPERX DDR 400
RAM DDR II
1GB SAMSUNG/KINGMAX DDRII 533
512MB K INGSTON HYPERX DDRII 675
SCHEDE MADRI
Con SOCKET LGA 775 e CHIPSET INTEL i945P / i955X
Con SOCKET 939 e CHIPSET nVIDIA nFORCE 4 SLI X16
SCHEDE VIDEO
nVIDIA GEFORCE 7800 GTX (PCI-EXPRESS 16 X)
ATi RADEON X1800 XT (PCI-EXPRESS 16 X)
SCHEDE AUDIO
CREATIVE X-FI FATAL1TY (CHIP CREATIVE EMU20K)
TERRATEC AUREON (CHIP VIA ENVY 24 HT)
MASTERIZZATORI DVD
LETTURA CD: CD-R/CD-RW 48x
SCRITTURA CD: CD-R 48x / CD-RW 32x
LETTURA DVD: DVD-/+R 16x / DVD-/+RW 13x
SCRITTURA DVD: SINGLE LAYER +R 16x +RW 8x / DUAL-LAYER +R 5x -R 4x
MODEM
56 Kbps / 128Kbps ISDN
ADSL 4Mbps
FIBRA OTTICA 10 Mbps
MONITOR CRT
SONY GDM F520 (21 POLLICI / 2048x1536 a 86Hz)
MONITOR LCD
SAMSUNG 930BF (19 POLLICI / 1280x1024)
APPROFONDIMENTO
ATTENZIONE: Per maggiori informazioni sul funzionamento delle componenti fare riferimento
alle altre schede disponibili nel sito.
CPU (singolo core)
Gli ultimi processori della serie PENTIUM 4 e PENTIUM D sono stati progettati per
essere ospitati nei socket LGA a 775 pin. Il modello 670 è caratterizzato da una frequenza di clock di 3,8 GHz e da una frequenza di bus di 800 MHz. Le due cache di
primo e secondo livello integrate nel core hanno dimensione 16KB e 2MB. Il modello
Extreme Edition di frequenza 3,73 Ghz possiede una frequenza di bus di 1066 MHz
e la stessa quantità di cache di primo e secondo livello del modello precedente. Entrambe sono in grado di elaborare codici a 64 o 32 bit.
AMD che è stata la prima azienda a introdurre microprocessori a 64 bit mantiene il
primato con l’ATHLON 64 FX-57, attualmente la cpu più potente tra quelle destinate
ai personal computer, battendo anche le cpu dual-core (doppio core). Questo modello destinato a schede madri con socket a 939 pin lavora ad una frequenza operativa
di 2,8 GHz e presenta un bus ampio 1GHz. Inoltre possiede una cache di primo livello da 128KB e una cache di secondo livello da 1MB. Importante innovazione legata
alle cpu a 64 bit di AMD è l’integrazione all’interno del microprocessore del controller
delle memorie ram, il che permette il dialogo diretto delle due componenti senza il
passaggio obbligatorio per il chipset della scheda madre.
CPU (dual-core)
Nella seconda metà del 2006 sono uscite le prime cpu dual-core destinate ai pc: la
serie ATHLON X2 di AMD e la serie PENTIUM D. Sia il PENTIUM D 840 che la versione Extreme Edition hanno una frequenza di clock di 3,2 GHz e un bus ampio
800MHz. L’ATHLON 64 X2 4800+ lavora invece ad una frequenza di 2,4 GHz e ha
una frequenza di bus di 1GHz. Entrambe le serie sono caratterizzate da due core
identici posti sulla cpu e dotati ogni uno di cache di primo e secondo livello. Sebbene
il punto di forza di questi microprocessori è il multitasking, nelle singole applicazioni
risultano meno performanti rispetto ai dispositivi a core singolo.
HARD DISK
Dopo aver abbandonato l’interfatta PATA (Parallel ATA) che prevedeva l’utilizzo di
cavi a 40 poli, le case di produzione hanno adottato l’interfaccia SATA (Serial ATA)
che utilizza cavi a 7 poli (due dei quali portano il segnale e gli altri 5 sono di controllo)
lunghi fino ad 1m. Se il vecchio standard proponeva trasferimenti di massimo
150MB/s il nuovo standard SATA (cui e attualmente seguito lo standard SATA II) arriva fino a 600MB/s. Attualmente i piatti della maggior parte degli hard disk girano
alla velocità di 7200 rpm e il seek time è di circa 9 ms. Fanno eccezione le unità della
serie RAPTOR di WESTERN DIGITAL che utilizzano dischi a velocità di 10000 rpm e
che sono caratterizzati da un seek time di 4,5 ms e da capacità ancora non superiore
a 200GB. I limiti meccanici influenzano molto la velocità di scrittura e lettura e spesso
non si rilevano particolari differenze tra le interfacce PATA e SATA. Per aumentare la
velocità si sono dotate le unità di cache (con capacità fino a 16 MB) sottoforma di
moduli SDRAM. Inoltre si è ormai raggiunta la massima densità dei dischi utilizzati
(150 Gbit per pollice quadrato). I dischi SATA supportano anche la funzione hot
plugging che permette di collegare le unità anche a sistema acceso.
RAM
Le architetture basate sugli processori della serie ATHLON 64 utilizzano moduli ram
DDR (Double Data Rate) che sono in grado di inviare bit sia in fase di salita che in
fase di discesa del segnale. Così i moduli 400MHz lavorano in realtà alla frequenza
di 200MHz in fase di salita e 200MHz in fase di discesa del segnale. Attualmente i
moduli ram hanno raggiunto la capacità di 1GB e sono caratterizzate da tempi di accesso di circa 4,5 ns. Le ram DDR II sono l’evoluzione delle DDR. Attualmente si trovano in commercio moduli da 1 GB che presentano tempi di accesso e latenze superiori alle memorie DDR che però sono controbilanciate da una maggior banda passante di 800 MHz. Questi ultimi moduli sono utilizzati su piattaforme per PENTIUM 4.
SCHEDE MADRI
Attualmente le schede madri sono basate su chipset divisi in due unità fisiche: il northbridge e il southbridge. Il primo gestisce le periferiche più veloci come cpu, ram e
scheda video e le mette in comunicazione attraverso il bus QUAD PUMPED a
800MHz per i PENTIUM e il bus HYPERTRANSPORT a 1GHz per gli ATHLON. Il
southbridge si occupa invece di gestire le periferiche più lente: hard disk, unità ottiche, schede audio, porte seriali, usb2, ecc.
Le schede madri prodotte per le cpu INTEL ricorrono a chipset prodotti dalla stessa
azienda e che supportano USB 2.0, bus PCI-Express 1x e 16x, interfaccia SATA,
DDR II e audio onboard. Le schede basate sull’architettura degli ATHLON 64 sono
realizzate con il chipset nFORCE 4 (malgrado esistano numerosi tipi di chipset come
quelli prodotti da VIA, SiS e ULI, quello di nVIDIA si contraddistingue per prestazioni
e dotazioni).
SCHEDE VIDEO
Le schede video attuali hanno ormai abbandonato il bus AGP (con banda passante
di 2GB) e hanno adottato il nuovo bus PCI-Express 16x (con banda passante massima di 8GB/s).
La scheda RADEON X1800 XT è dotata di una gpu (graphic processing unit) con
frequenza ai 625 MHz e di 512 MB di ram GDDR3 a 800 MHz. La GEFORCE 7800
GTX ha una frequenza operativa di 430MHz ed è corredata da 256MB di memoria
GDDR3 con frequenza pari a 600MHz. Entrambe le schede video supportano le ultime librerie grafiche Microsoft (le directx 9.0 versione c), possiedono unità pixel shader e vertex shader 3.0 e sono dotate di uscita TV in formato composito e uscita
VGA in formato digitale.
SCHEDE AUDIO
Le schede audio CREATIVE X-FI e TERRATEC AUREON sono in grado di riprodurre e registrare audio a 24bit con campionatura a 96KHz (32bit e 192KHz per il chip
CREATIVE), supportano l’audio multicanale per sistemi audio 7.1 e la decodifica
Dolby Digital e DTS (Digital Theatre Sound).
MASTERIZZATORI
Ormai tutti i masterizzatori DVD attualmente in commercio riescono a masterizzare i
formati DVD-R DVD+R, DVD-/+RW e il recente formato Dual Layer (doppio strato)
costituito da due strati masterizzabili posti uno sopra l’altro che hanno portato il formato DVD alla capienza di 9GB. Alla velocità di 16X (22000 KB/s) i moderni masterizzatori riescono a scrivere un disco DVD in circa 6 min. Il tempo medio di accesso e
di circa 120ms per i CD-ROM e 140 per i DVD-ROM.
Può essere interessante il raffronto con i dati del 2000:
RELAZIONE DI AGGIORNAMENTO SUI DATI DEI PIU'
RECENTI CALCOLA TORI
Scritta da Carlo Destefanis - Politecnico di Torino
I dati sotto riportati si riferiscono ai migliori componenti
ora in commercio (22/I/2000)
MICROPROCESSORE:
Intel Inside Pentium III 733 MHz.
AMD Athlon 750MHz.
HARD DISK:
13 GB (Quantum o IBM)
18 GB (Quantum o IBM)
RAM:
64 MB (100MHz.)
128 MB (100MHz.)
SCHEDE MADRI:
per Pentium II/III
Per Athlon (512K di CACHE)
SCHEDE VIDEO:
Matrox G400 32MB
ERAZOR III TNT2 32MB
SCHEDE AUDIO:
Creative Sound Blaster LIVE PLATINUM PCI 128 bit
LETTORI CD-ROM:
50x in lettura
LETTORI DVD-ROM:
8x-40x in lettura
MASTERIZZATORI:
8x in scrittura / 4x-32x in lettura
MODEM:
56K (interno o esterno)
.128K (solo per linee ISDN, interno o esterno)
5MB (è un'invenzione di una ditta, ma troppo costoso per
ora !!!)
SCANNER:
piani per A3 o A4 600x1200 dpi
STAMPANTI:
per A3 o A4 a quadricromia o esacromia 1440x720 dpi
MONITOR:
la gamma va dai 15" ai 24" ; dai 0,28 d.p. (i peggiori) ai
0,21 d.p. (i migliori)
UNITA' DI BACKUP:
drive zip iOMEGA 100MB
drive zip iOMEGA 250MB
PRESTAZIONI DEI PROCESSORI
Fattori che influenzano le prestazioni di un processore:
Insieme delle istruzioni (instruction set) che il processore è in grado di eseguire. Istruzioni molto semplici richiedono un basso numero di cicli di clock, istruzioni più
complesse ne richiedono in genere una quantità maggiore. In base alla tipologia di
instruction set adottata i processori si distinguono in:
-
processori CISC (Complex Instruction Set Computer), in cui ciascuna istruzione
può richiedere molti cicli di clock per essere completata;
-
processori RISC (Reduced Instruction Set Computer) i quali eseguono almeno un'istruzione per ogni ciclo di clock.
Dimensione dei registri (parallelismo della CPU, ovvero dimensione delle word). Si
misura in bit e assume valori che, in genere, vanno da 16 a 64. Tanto maggiore è questo valore, tanto maggiori sono i singoli blocchi di informazione che il processore può
elaborare per ciascuna istruzione eseguita, con conseguente incremento della velocità
complessiva di calcolo.
Numero dei registri: la disponibilità di un elevato numero di registri comporta la necessità di compiere accessi alla memoria meno frequenti. Esistono in commercio
CPU RISC con centinaia di registri, mentre le CPU CISC ne hanno generalmente
molti meno.
Dimensione degli indirizzi: il numero di bit usati per gli indirizzi (in genere da 16 a
64) determina lo «spazio di memoria indirizzabile»; quando quest'ultimo è maggiore
della dimensione fisica della memoria centrale (memoria reale), viene fatto ricorso a
opportuni artifizi in grado di gestire tale differenza (memoria virtuale).
Frequenza di clock: determina la velocità con cui si susseguono i cicli macchina e
quindi la velocità di esecuzione delle istruzioni. Col tempo, dopo la prima realizzazione, ogni nuovo microprocessore di successo viene rielaborato per aumentare progressivamente la velocità del clock. Questa, infatti, non può essere aumentata arbitrariamente, ma deve rispettare le velocità di propagazione dei segnali elettrici all'interno
dei circuiti logici. Da frequenze, che negli anni '80 erano dell'ordine di alcuni MHz, si
è passati a diverse decine di MHz nei primi anni '90, per arrivare oggi a frequenze di
molte centinaia di MHz (oltre 700 nel 1999).
Scalarità: processori capaci di eseguire più di un'istruzione per ogni ciclo di clock
sono detti “superscalari”; il livello di scalarità è indice del numero di fasi sovrapponibili. Questa capacità è propria non solo dei processori RISC ma anche dei più moderni CISC.
La scalarità non è da confondere con la scalabilità, caratteristica piuttosto dei sistemi:
un sistema si dice scalabile quando si può ampliare (aumentando quindi le prestazioni
e migliorandole) pagando un costo correlato solo alle componenti aggiunte, potendo
mantenere tutte le parti già acquisite (la scalabilità preserva dunque gli investimenti).
Misura delle prestazioni del processore
Per dare una misura della velocità dei processori si utilizzavano in passato due indicatori:
MIPS (Millions of Instructions Per Second): indica il numero di operazioni logiche o
tra numeri interi eseguibili in media per unità di tempo (riferimento:1 MIPS per il
DEC VAX 11/780, realizzato alla fine degli anni '70; oggi si parla di centinaia di
MIPS).
MFLOPS (Millions of FLoating point Operations Per Second): è l'unità di misura per
calcoli in virgola mobile.
Tuttavia la velocità di un processore, percepita dall'utente, dipende da numerosi fattori, quali l'architettura della CPU (CISC o RISC), il numero di cicli macchina medio
per istruzione, la velocità del clock, la pipeline e da molti altri componenti il sistema
(velocità della memoria centrale, meccanismo di gestione della memoria virtuale, velocità del bus, ecc.).
Solitamente si utilizzano particolari programmi campione, detti benchmark, per effettuare valutazioni comparative.
Occorre ancora considerare che gli applicativi più complessi (CAD, WORD PROCESSOR, ecc.) fanno molti riferimenti al disco, e quindi anche gli accessi al disco
entrano in gioco per la valutazione delle prestazioni di un sistema.
La legge di Joy
Nel 1984 William Joy, uno dei fondatore della Sun Microsystems, formulò l’ipotesi
che le prestazioni degli elaboratori sarebbero aumentate secondo un indice prevedibile. Utilizzando i MIPS come unità di misura del rendimento, Joy sviluppò la formula
oggi nota come Legge di Joy:
MIPS ? 2 (anno ?1984)
Ad esempio, nel Duemila il rendimento di un computer dovrebbe essere di
216 ? 65.636 MIPS. Finora il rendimento dei microprocessori è andato incredibilmente vicino alle previsioni di Joy. Il primo chip aveva una velocità di circa 6000
istruzioni per secondo, ovvero 0,006 MIPS, mentre oggi il Pentium ha più di 100
MIPS, quindi una velocità 16 mila volte superiore.
I microprocessori Intel
Nome
Data
Velocità
Numero di transistor
Ampiezza dei bus Memoria
4004
8008
8080
8086
80286
lntel386
lntel486
Processore Pentium
Processore Pentium Pro
Processore Pentium con MMX
Pentium II
1971
1972
1974
1978
1982
1985
1989
1993
1995
1997
1997
108 KHz
200 KHz
2 MHz
10 MHz
12 MHz
16 MHz
25 MHz
60 & 66 MHz
200 MHz
200 MHz
300 MHz
2.300 (10 micron)
3.500 (10 micron)
6.000 (6 micron)
29.000 (3 micron)
734.000 (1,5 micron)
275.000 (1,5 micron)
1.200.000 (1 micron)
3.1 million (.8 micron)
5.5 million (0,35 micron)
4.5 million (0,35 micron)
7.5 million (0,35 micron)
4 bit
8 bit
8 bit
16 bit
16 bit
32 bit
32 bit
32 bit
64 bit
32 bit
64 bit
640 byte
16 KB
64 KB
1 MB
16 MB
4 GB
4 GB
4 GB
64 GB
4 GB
64 GB
Intel Pentium
I processori sino al 386 necessitavano di almeno 2 cicli di clock per eseguire qualsiasi
istruzione; il 486 è stato il primo a eseguire gran parte delle istruzioni in un solo ciclo:
ciò è stato ottenuto, in parte, convertendo in hardware parte del microcodice contenuto nei processori precedenti (hardwired instructions). Il Pentium ha raggiunto un livello di scalarità pari a 2 e il Pentium PRO pari a 3 già dal 1997.
Altra innovazione del Pentium rispetto ai processori precedenti è stato il ricorso alla
branch prediction (previsione di salto): quando all'interno di un programma c'è un salto condizionato per procedere in uno di due rami del programma stesso o per decidere
se uscire o meno da un ciclo, si ha il cosiddetto branch che nel Pentium viene «previsto» basandosi sull'assunto che il ramo che più probabilmente verrà seguito è quello
che era stato seguito al passo precedente (vero nel caso dei cicli ad eccezione del passo finale). Il Pentium utilizza un Branch Target Buffer (BTB) nel quale viene memorizzato l'indirizzo del ciclo da eseguire, indirizzo usato per compiere un prefetch del
codice (viene effettuato una instruction fetch mentre l'istruzione precedente è ancora
in esecuzione). Nel P6 il BTB può contenere 256 indirizzi (corrispondenti ad altrettanti possibili cicli).
I Pentium integrano anche una unità floating-point in grado di eseguire due istruzioni
in virgola mobile per ogni ciclo di clock grazie a una sofisticata pipeline a 8 stati. Le
istruzioni più comuni, come somma, moltiplicazione e divisione sono implementate in
hardware.
Il Pentium, in particolare il P6 ha un'architettura interna ottimizzata per eseguire codice a 32 bit e prevede un bus esterno a 64 bit tra processore e memoria.