Modulo 1: Le I.C.T. UD 1.4c: Il Processore IL MICROPROCESSORE

Modulo 1: Le I.C.T.
UD 1.4c: Il Processore
Prof. Alberto Postiglione
Dipartimento di Scienze della Comunicazione
Corso di “Informatica Generale” (AA 07-08)
Corso di Laurea in “Scienze della Comunicazione”
Università degli Studi di Salerno
IL MICROPROCESSORE
Curtin, 3.8-3.9
1
Modificata il
21/11/2007
„
Modulo 1: Le I.C.T. - Il Processore
L’unità centrale di elaborazione (CPU)
e
ne
La CPU, o unità centrale di elaborazione o Processore,
zio è
a
nice
il circuito integrato che effettua l’elaborazione vera
mu
o
aC
propria dei dati, eseguendo
el l
e
ed
z
ien
Sc
¾ istruzioni di controllo
i
d
to
n
e
im
rt
a
p
L’elaborazione avviene in accordo
a sequenze di istruzioni
Di
¾ istruzioni di calcolo
„
(istruzioni macchina)
„
Il linguaggio in cui si scrivono queste istruzioni viene
chiamato linguaggio macchina
UD 1.4c
# 3
Modificata il
21/11/2007
„
Prof Alberto Postiglione – Dipartimento di Scienze della Comunicazione – Università Salerno
Modulo 1: Le I.C.T. - Il Processore
L’unità centrale di elaborazione (CPU)
e
e
Ogni processore è composto da milioni di piccoli
i on
z
ca
interruttori elettronici di tipo acceso/spento, i muni
o
transistor, e da altri componenti elettroniciella C
ze
ien
c
S
di
o
t
en
im
t
r
pa
Di
UD 1.4c
# 4
de
Prof Alberto Postiglione – Dipartimento di Scienze della Comunicazione – Università Salerno
2
Modificata il
21/11/2007
„
„
Modulo 1: Le I.C.T. - Il Processore
L’unità centrale di elaborazione (CPU)
e
Il primo processore a larga diffusione, l’Intel 4004 zion e
ca
(1971), conteneva circa 2.300 transistor e il Core m2uni
o
a Cvolte)
(2006) ne contiene oltre 291.000.000. (126.000
l
l
e
e
ed
z
I modelli più usati sono quelli prodotti ien
Sc
¾ dalla Motorola (principalmente sui vecchidicomputer Apple)
o
t
en
¾ dalla Intel
m
i
rt
pa
¾ dalla AMD
Di
# 5
UD 1.4c
Modificata il
21/11/2007
„
„
Prof Alberto Postiglione – Dipartimento di Scienze della Comunicazione – Università Salerno
Modulo 1: Le I.C.T. - Il Processore
Compatibilità dei processori
e
e
Dal punto di vista dei programmi, la compatibilità è verso
i on
z
a
nic
l’alto
mu
om
aC
¾ Un programma che gira su un processore di un produttore
l
l
de
funziona, quasi sempre, sui modelli più recenti prodotti
dalla
ze
n
ie
c
stessa azienda
S
di
o
¾ Il viceversa non è quasi mai vero
t
en
im
t
r
pa
Di
Non è garantita la compatibilità tra processori di aziende
diverse, a meno che essa non sia esplicitamente dichiarata
Ad esempio
¾ c’è un ottimo livello di compatibilità tra processori AMD e Intel
¾ Non c’è praticamente compatibilità tra processori Intel e
processori Motorola
UD 1.4c
# 6
Prof Alberto Postiglione – Dipartimento di Scienze della Comunicazione – Università Salerno
3
Modificata il
21/11/2007
„
„
Modulo 1: Le I.C.T. - Il Processore
Emulatori
e
ne
E’ possibile utilizzare un programma apposito che emula
zio
a
nic
un processore su un computer che monta un processore
mu
o
aC
differente.
el l
e
ed
z
Questo programma intercetta una per una
ien le istruzioni
Sc
i
del programma da emulare e le trasforma
in istruzioni
d
to
n
e
“comprensibili” dal processore effettivamente
montato
im
rt
a
p
sul computer.
Di
¾ La soluzione non garantisce però la compatibilità certa (non
tutte le istruzioni possono essere tradotte)
¾ Inoltre la soluzione è molto lenta perché il programma eseguito in
emulazione non accede direttamente all’hardware, ma lo fa
tramite l’emulatore
# 7
UD 1.4c
Modificata il
21/11/2007
„
„
Prof Alberto Postiglione – Dipartimento di Scienze della Comunicazione – Università Salerno
Modulo 1: Le I.C.T. - Il Processore
Coprocessori
e
Nei moderni computer la CPU è “coadiuvata” da altrizion e
ica
processori “specializzati” nel trattamento di particolari
un
m
o
a C o suoni).
tipologie di dati (ad esempio immagini sul monitor
l
l
e
e
ed
ze
Un Coprocessore è un processore “dedicato”
ien che, sotto il
c
S
controllo della CPU e del Sistema oOperativo
svolge
di
nt
e
elaborazioni specialistiche che irichiederebbero
alla CPU
m
rt
a
p
un notevole dispendio di tempo
Di
¾ Processore sulla scheda video
¾ Processore sulla scheda audio.
UD 1.4c
# 8
Prof Alberto Postiglione – Dipartimento di Scienze della Comunicazione – Università Salerno
4
Modificata il
21/11/2007
„
Modulo 1: Le I.C.T. - Il Processore
Multiprocessori
e
ne
E’ possibile, inoltre, dotare un computer di più processori
zio
a
nic
che “collaborano” all’esecuzione di un programma.
mu
om
a C in una
¾ Ad esempio possono essere disposti più processori come
l
l
e
ed
catena di montaggio
z
ien
¾ Oppure più processori possono lavorare contemporaneamente
su
Sc
i
d
o
parti diverse di uno stesso dato (nelle
t previsioni del tempo, ad
en
m
i
esempio, ogni processore può dedicarsi
ad una specifica zona
rt
pa
geografica)
Di
# 9
UD 1.4c
Prof Alberto Postiglione – Dipartimento di Scienze della Comunicazione – Università Salerno
Modificata il
21/11/2007
„
Modulo 1: Le I.C.T. - Il Processore
Microprocessori incorporati
e
i on
z
ica
un
m
o
aC
l
l
de
ze
n
ie
Sc
i
od
nt
e
im
rt
a
p
Di
I microprocessori si trovano anche in
¾ Automobili
¾ Telefoni
¾ Termostati
¾ Schede telefoniche
¾ Carte di credito
UD 1.4c
# 10
Prof Alberto Postiglione – Dipartimento di Scienze della Comunicazione – Università Salerno
5
Modificata il
21/11/2007
Modulo 1: Le I.C.T. - Il Processore
Struttura e componenti della CPU
„
Clock
„
Unità di controllo (Control Unit).
„
ALU (Unità Aritmetico-Logica)
„
Registri
Memoria
Centrale o
Periferiche
a
el l
d
e
nz
e
i
Sc
di
o
t
en
m
i
Unità
rt di controllo
pa
Di
ne
zio
a
nic
mu
o
C
Clock
BUS
Registro
Registro
ALU
Registro
# 11
UD 1.4c
Modificata il
21/11/2007
„
Prof Alberto Postiglione – Dipartimento di Scienze della Comunicazione – Università Salerno
Modulo 1: Le I.C.T. - Il Processore
Unità di Controllo
e
i on
z
ica
¾ Sovrintende alla corretta esecuzione dei programmi e
un
m
o
¾ coordina il lavoro degli altri componenti hardware lla C
de
ze
n
ie
Sc
i
od
nt
e
im
rt
a
p
Di
Unità di controllo (Control Unit).
UD 1.4c
# 12
Prof Alberto Postiglione – Dipartimento di Scienze della Comunicazione – Università Salerno
6
Modificata il
21/11/2007
„
Modulo 1: Le I.C.T. - Il Processore
ALU
e
ne
L’unità logico-aritmetica (ALU – Arithmetic Logic Unit)
zio
ica
¾ esegue le istruzioni in linguaggio macchina corrispondentiunalle
om
operazioni matematiche, logiche e di confronto
aC
l
l
e
9 Legge i dati contenuti all'interno dei registri generali,
e d esegue le
z
operazioni e memorizza il risultato in uno dei registri
generali
ien
Sc
i
¾ Vi sono circuiti in grado di
d
to
n
9 eseguire la somma di due numeri binari
e contenuti in due registri e di
im
depositare il risultato in un registro
rt
a
ip
9 eseguire il confronto tra dueDnumeri
9 Ecc…
UD 1.4c
# 13
Modificata il
21/11/2007
„
„
Prof Alberto Postiglione – Dipartimento di Scienze della Comunicazione – Università Salerno
Modulo 1: Le I.C.T. - Il Processore
Dimensione della parola
e
i on
z
ica
un
m
o
¾ Corrisponde a quanti bit possono essere trasferiti la C
l
simultaneamente tra processore e memoria. e de
z
ien di memoria RAM
¾ Corrisponde alla dimensione della singola cella
c
iS
¾ Corrisponde alla dimensione dei registrio ddella CPU.
t
en
im
t
r
ipa
D
Inizialmente la dimensione della parola era di 8 bit, cioè
E’ il numero di bit che un processore tratta
simultaneamente. (“Larghezza della strada”)
di 1 byte. Da allora si è cominciato a misurare la
dimensione della memoria in byte.
„
Attualmente la dimensione di parola varia da 32 a 64 bits,
in base al tipo di processore e di architettura hardware.
UD 1.4c
# 14
Prof Alberto Postiglione – Dipartimento di Scienze della Comunicazione – Università Salerno
7
Modificata il
21/11/2007
„
„
„
Modulo 1: Le I.C.T. - Il Processore
CLOCK
Ogni computer ha un orologio interno, detto clock, chezione
a
emette impulsi con regolarità e serve per sincronizzare
le
nic
u
m
o
C
operazioni svolte dalla CPU
la
l
de
e
z
ien
c
Ogni operazione elementare del processore
avviene in
iS
od
t
corrispondenza di un impulso del clock
(le operazioni non
en
im
t
sono eseguite di continuo, mapaar scatti).
Di
L’hertz indica il numero di “impulsi” che il clock emette in
un secondo
¾ 1 hertz (Hz) = 1 ciclo al secondo
¾ 1 megahertz (MHz) = circa 1 milione di cicli al secondo
¾ 1 gigahertz (GHz) = circa 1 miliardo di cicli al secondo
# 15
UD 1.4c
Modificata il
21/11/2007
„
Prof Alberto Postiglione – Dipartimento di Scienze della Comunicazione – Università Salerno
Modulo 1: Le I.C.T. - Il Processore
Velocità di una CPU
e
e
La velocità del clock permette di confrontare solo
i on
z
a
nic
processori della stessa famiglia.
mu
om
a Ca 2 GHz.
¾ Un Pentium IV a 1,8 GHz è più “lento” di un Pentium lIV
l
e
ed
¾ Non è detto che un Pentium IV a 2 GHz eseguanzun’operazione
più
ie
c
velocemente di un AMD Athlon a 1.5 GHz. i S
od
nt
e
im
rt
a
p
Di
UD 1.4c
# 16
Prof Alberto Postiglione – Dipartimento di Scienze della Comunicazione – Università Salerno
8
Modificata il
21/11/2007
„
Modulo 1: Le I.C.T. - Il Processore
Istruzioni del Processore
e
ne
Ogni processore è in grado di eseguire solo poche
zio
a
nic
istruzioni elementari quali:
mu
om
a C effettuata
¾ Somma di due numeri (già la somma di tre numeri viene
l
l
e
ed
tramite due somme elementari)
z
ien
¾ Confronto tra due numeri con individuazione
Scdel fatto che ci sia o
i
d
meno differenza (non tutti i processori
tosanno distinguere in modo
n
e
im
immediato, invece, quale dei due precede
l’altro)
rt
a
ip
D
¾ Spostamento dei bit all’interno di una parola di qualche posizione a
destra o a sinistra.
¾ poche altre ancora …
# 17
UD 1.4c
Modificata il
21/11/2007
„
Prof Alberto Postiglione – Dipartimento di Scienze della Comunicazione – Università Salerno
Modulo 1: Le I.C.T. - Il Processore
Istruzioni del Processore
e
Inoltre, un’istruzione del processore è generalmentezion e
ica
composta da più operazioni elementari che accedono
un in
m
Co
momenti successivi alle risorse del computer e(ad
lla esempio
d
ze
prima al contenuto dell’istruzione, poi allaenmemoria
i
Sc
centrale, poi all’ALU …).
i
d
to
¾ Quasi mai la singola istruzione del processore
è eseguita in un solo
en
m
ti
r
ciclo di clock. Ad esempio, per ieffettuare
la somma di due numeri
pa
D
9 Bisogna leggere il primo addendo
9 Bisogna leggere il secondo addendo
9 Bisogna eseguire la somma
9 Bisogna memorizzare la somma
¾ E potrebbe darsi che alcune di queste mini-operazioni richieda più
cicli di clock per essere completata.
UD 1.4c
# 18
Prof Alberto Postiglione – Dipartimento di Scienze della Comunicazione – Università Salerno
9
Modificata il
21/11/2007
„
„
Modulo 1: Le I.C.T. - Il Processore
Istruzioni del processore
e
ne
Le istruzioni del processore sono il suo VOCABOLARIO:
zio
a
nic
quanto più esso è povero
mu
om
a Cconcetto,
¾ tante più parole saranno necessarie per descrivere un
l
l
de
eda
z
¾ ma tanto più esse saranno “corte” e quindi veloci
eseguire, in
ien
c
quanto richiedono pochi impulsi di clock per
essere
completate.
iS
od
t
en
im
t
r processore è data dal
La potenza di elaborazione diipaun
D
numero di istruzioni eseguite in un secondo (MIPS –
milioni di istruzioni al secondo, MFLOPS – milioni di
istruzioni in virgola mobile al secondo)
UD 1.4c
# 19
Modificata il
21/11/2007
„
„
„
„
„
„
Prof Alberto Postiglione – Dipartimento di Scienze della Comunicazione – Università Salerno
Modulo 1: Le I.C.T. - Il Processore
CISC
e
i on
z
ica
un
m
o
aC
l
l
Processore dotato di molte istruzioni (non più,
de
ze
n
comunque, di 300-400)
ie
Sc
i
od
nt
e
im
Può eseguire istruzioni complesse
rt
a
p
Di
¾ moltiplicare due numeri.
CISC = Complex Instruction Set Chip
Istruzioni eseguite da un microprogramma.
Ogni istruzione per essere eseguita può richiedere vari
cicli di clock.
Processori Intel e AMD sono CISC
UD 1.4c
# 20
Prof Alberto Postiglione – Dipartimento di Scienze della Comunicazione – Università Salerno
10
Modificata il
21/11/2007
„
„
„
Modulo 1: Le I.C.T. - Il Processore
RISC
e
Per eseguire l’80% delle elaborazioni viene utilizzato zion e
ca
effettivamente soltanto il 20% delle istruzioni muni
om
aC
l
l
e
ed
z
Un processore dotato di poche istruzioni
ien (100-200) è
Sc
i
d Chip)
detto RISC (Reduced Instruction Set
to
n
e
im
rt
a
ip
Esegue istruzioni semplici, D
¾ per moltiplicare due numeri itera la somma
A*B = A+A+ · · · +A
„
Istruzioni eseguite dall’hardware.
¾ più istruzioni eseguite in un unico ciclo.
# 21
UD 1.4c
Modificata il
21/11/2007
„
„
Prof Alberto Postiglione – Dipartimento di Scienze della Comunicazione – Università Salerno
Modulo 1: Le I.C.T. - Il Processore
CISC e RISC
e
Un processore CISC rispetto ad un processore RISCzion e
ica
presenta molte più istruzioni che vengono eseguite
un
m
o
aC
tramite più operazioni elementari
l
l
e
de
ze completate
¾ che quindi richiedono più cicli di clock per essere
n
ie
Sc operazioni RISC
¾ E che quindi sono più lente delle corrispondenti
i
od
nt
e
im
rt
a
D’altro canto, le istruzioni Ddiip un processore CISC che
non sono presenti in un processore RISC vengono da
questo simulate tramite più istruzioni
¾ ciò comporta tempi maggiori nei processori RISC, in media, ma
solo per tali istruzioni da simulare, rispetto alle corrispondenti
operazioni CISC
UD 1.4c
# 22
Prof Alberto Postiglione – Dipartimento di Scienze della Comunicazione – Università Salerno
11
Modificata il
21/11/2007
„
„
„
Modulo 1: Le I.C.T. - Il Processore
CISC e RISC
e
ne
I processori RISC sono più economici dei CISC (il chip
zio
a
ic
contiene meno elementi)
un
om
C
lla
e
d
ze
n
I processori RISC sono mediamente più
veloci
dei CISC
e
i
Sc
i
d
su quasi tutte le applicazioni.
to
n
e
im
rt
a
ip
I processori RISC non sonoD adatti per elaborazioni
“complesse”, ad esempio quelle sui dati multimediali
„
Attualmente la differenza tra CISC e RISC si sta
riducendo
# 23
UD 1.4c
Modificata il
21/11/2007
„
„
„
„
Prof Alberto Postiglione – Dipartimento di Scienze della Comunicazione – Università Salerno
Modulo 1: Le I.C.T. - Il Processore
Benchmark
e
Batterie di test usate per confrontare le velocità dei zion e
a
nic
computer.
mu
m
Co
a
Non sono mai valori assoluti. Ma sono rapportati
ell ad un
d
ze
insieme di programmi (che compongono tali
ien batterie).
Sc
i
ddi
Un computer può risultare più veloce
un altro
to
n
e
m meno veloce
relativamente ad un programma
ima
rt
a
relativamente ad un altro. Dip
Due grandi tipologie di programmi:
¾ CPU-consuming (usano molto la CPU). E tra queste:
9 Integer-computing (calcoli su numeri interi o su pochi numeri)
9 Floating-point computing (lavorano su numeri reali e molto grossi)
¾ I/O-consuming (usano molto le periferiche di I/O).
UD 1.4c
# 24
Prof Alberto Postiglione – Dipartimento di Scienze della Comunicazione – Università Salerno
12
Modificata il
21/11/2007
Modulo 1: Le I.C.T. - Il Processore
Confronto CPU 1997 - 2005
ne
zio
a
nic
La velocità di clock è aumentata di circa 40 volte
mu - dai
o
C
lla
100 MHz del 1995 ai 3800 MHz del 2005
e
d
ze
n
e
ci
iS
d
o può essere visto
Il più grosso incremento prestazionale
nt
e
im
nella codifica DivX (MPEG 4): ala
rt codifica di una breve
p
i
D
Pentium 233 MMX del 1997 ÅÆ Pentium 4
„
„
scena impiega circa due ore con un Pentium 233 MMX,
mentre un Pentium 4 impiega meno di due minuti.
Praticamente un processore del 2005 è 65 volte più
veloce del processore più veloce del 1997.
UD 1.4c
# 25
Modificata il
21/11/2007
„
Prof Alberto Postiglione – Dipartimento di Scienze della Comunicazione – Università Salerno
Modulo 1: Le I.C.T. - Il Processore
Confronto CPU 1995 – 2005
e
Un altro esempio che possiamo riportare riguarda la zion e
ica
codifica in MP3. Nel 1995, un Pentium 100 necessitava
un 77
m
Co
aun
minuti per 17 minuti di sequenza audio, mentre
l
l
de
ze in un minuto
moderno Athlon 64 FX-55 fa lo stesso lavoro
n
cie
e mezzo, praticamente il processore ddel
i S 2005 è 51
o
nt
volte più veloce di quello di 11meanni
prima.
i
rt
pa
i
D
„
Nel 1994 un Pentium 100 era costituito da 3.3 milioni di
transistor, mentre il Pentium 4 Extreme Edition (2005),
conta 178 milioni di transistor. Circa 55 transistor sono
ora presenti dove 11 anni prima ne era presente solo
uno.
UD 1.4c
# 26
Prof Alberto Postiglione – Dipartimento di Scienze della Comunicazione – Università Salerno
13
Modificata il
21/11/2007
Modulo 1: Le I.C.T. - Il Processore
Anteprima ultimo tipo di processore
e
ne
NUOVISSIMO Processore a 100 bit completo di mouse
zio
a
el l
d
e
nz
e
i
Sc
di
o
t
en
m
i
rt
pa
Di
UD 1.4c
# 27
a
nic
u
m
Co
Prof Alberto Postiglione – Dipartimento di Scienze della Comunicazione – Università Salerno
14