slide PDF parte 2 - Dipartimento di Informatica

Architettura del calcolatore
L’ Hardware
A.A. 2013-14
Informatica
56
L’Hardware


Insieme di componenti elettronici e meccanici
del computer
Tutto quello che è materiale “pesante”



Processore
Memorie
Periferiche




Monitor
Tastiera
Lettore di dischi
Stampante, …
Informatica
57
Architettura di Von Neumann
Memoria Hardware
00123 Unità
7 8 9 4 5 6 +
aritmetica
Procedimento
Software
Input
1) .....
1) .....
2) .....
2) .....
3) .....
3) .....
4) .....
4) .....
.....
.....
1 2 3
0
/
*
Output
Unità di
controllo
Informatica
58
Architettura del calcolatore...




Processore;
Memoria:
 Principale;
 Secondaria;
Dispositivi di I/O (Input/Output)
Le varie componenti sono collegate tra loro
mediante dei canali di comunicazione chiamati
bus.
Informatica
59
La Memoria principale



Anche detta memoria centrale
Fornisce la capacità di memorizzare/ricordare
le informazioni
Una lunga sequenza di componenti elementari
ognuna delle quali può mantenere un’unità di
informazione (byte)
Informatica
60
La Memoria principale



Possiamo pensarla come una tabella;
Le componenti elementari sono aggregate per
formare elementi più complessi, detti celle di
memoria;
Ogni cella:




Viene individuata, univocamente, da un indirizzo;
Contiene una sequenza di bit (16bit, 32bit, 64bit)
L’insieme delle celle indirizzabili si chiama Spazio
d’Indirizzamento.
È una memoria RAM (Random Access Memory)
Informatica
61
Unità di misura






1 byte = 8 bit;
1 Kilobyte (KB) = 1024 byte
1 Megabyte (MB) = 1024 KB
1 Gigabyte (GB) = 1024 MB
Oggi giorno un computer medio ha 4GB di
memoria RAM
Relativamente costosa
Informatica
62
Perché 1024?


Siamo in un sistema binario
Quindi usiamo le potenze di 2:
1024 = 210
Informatica
63
Indirizzi di memoria


Sono espressi tramite numeri interi
Maggiore è il numero di bit utilizzato per
rappresentare un indirizzo maggiore sarà lo spazio di
indirizzamento:





16 bit: si possono indirizzare 64KB di memoria
32 bit: si possono indirizzare 4GB di memoria
(quindi con 32 bit non si riescono ad usare più di 4 GB di
memoria)
La prima cella è all’indirizzo 0
Corrispondono all’ordinamento delle celle in
sequenza
Informatica
64
Caratteristiche della RAM...

Random Access Memory:



“Memoria ad accesso casuale”
Accesso casuale: Il tempo di accesso ad una cella
è lo stesso indipendentemente dal suo indirizzo
Tempo di accesso:

Le operazioni di accesso alla RAM sono veloci (si
parla di nanosecondi, cioè miliardesimi di secondo)
Informatica
65
Memoria “volatile”

È veloce perché basata su tecnologie di tipo
elettronico
 Per poter funzionare deve essere
costantemente alimentata elettricamente
 Volatile: perde le informazioni se manca
l’alimentazione
Informatica
66
Memoria R.O.M.





Read Only Memory
“Memoria a sola lettura”
Contiene informazioni per l'avvio del computer
Scrivibili solo una volta (tipicamente durante
la fabbricazione)
PROM, EPROM, memoria ROM programmabili
e cancellabili
Informatica
67
Il processore




È la componente che fornisce la capacità di
elaborazione delle informazioni contenute in
memoria
Il processore è in grado di eseguire una serie
di istruzioni dette istruzioni macchina;
L’insieme delle istruzioni macchina costituisce
il linguaggio macchina;
Ogni programma eseguito sul calcolatore
viene rappresentato per mezzo di una
sequenza di istruzioni macchina.
Informatica
68
Il processore (CPU)



Central Processing Unit
“Unità di elaborazione centrale”
Il processore è composto:



Unità di controllo;
Unità aritmetico logica (ALU);
Una serie di registri:




Celle di memoria ad accesso diretto
Contengono informazioni da utilizzare immediatamente
Molto veloci e contenuti direttamente nel processore
Bus Interno
Informatica
69
Il processore (lo schema)
Unità di controllo
ALU
Unità aritmetico-logica
BUS INTERNO
PC PS RI
R1...Rg RIM RDM RC
registri
Informatica
70
L’unità di controllo...


Svolge il ruolo di coordinamento delle diverse
componenti del processore
L’attività viene svolta in modo ciclico
seguendo il seguente schema:
 Si legge dalla memoria la prossima
istruzione da eseguire;
 Si esegue l’istruzione.
Informatica
71
I cicli di clock...



I cicli di esecuzione vengono scanditi da un
clock che genera degli impulsi ad intervallo di
tempo costante;
Ad ogni impulso l’Unità di Controllo esegue un
ciclo
Il numero degli impulsi generati per secondo
(frequenza) determina la velocità del
processore.
Informatica
72
Gli Hertz...


La frequenza viene misurata in Hertz:
 1 Hz = 1 ciclo per secondo
 1 MHz (MegaHertz) = 1000000 di Hz (un
ciclo avviene un milione di volte al
secondo)
 1 GHz (GigaHertz) = 1000 MHz
Velocità tipiche dei processori attuali:
 > 1 GHz
Informatica
73
Dual/Quad Core



Invece di aumentare la frequenza (che comporta
maggiori consumi e surriscaldamento)
Si aumenta il numero dei core (processori)
Si ottengono migliori prestazioni col parallalismo:
 Si aumenta il numero di operazioni eseguibili in
un unico ciclo di clock
Informatica
74
I registri...


I registri sono unità di memoria
estremamente veloci;
Vengono utilizzati per diversi scopi:
 Mantenere informazioni d’uso frequente
(Program Counter)
 Memorizzare dati temporanei
 Contenere gli elementi su cui effettuare
operazioni aritmetiche/logiche
Informatica
75
I Registri...

Il Program Counter:


Il Registro Istruzioni:


Memorizza l’istruzione attualmente in esecuzione;
Il Registro di Stato:


Indica il punto di esecuzione del programma;
Memorizza informazioni sullo stato d’esecuzione
del programma (es. si sono verificati errori);
I Registri generali:

Contengono dati temporanei da elaborare.
Informatica
76
Unità Aritmetico Logica...



È costituita da una serie di circuiti in grado di
eseguire le operazioni di tipo aritmetico e
logico.
Legge e scrive i dati dai registri generali
Esempi:



Esegue la somma di due numeri contenuti in due
registri
Deposita il risultato in un altro registro
Confronta due numeri memorizzati nei registri
Informatica
77
Il codice macchina...

Vari tipi di istruzioni:
 Leggere dalla memoria;
 Scrivere sulla memoria;
 Istruzioni aritmetiche;
 Istruzioni logiche;
 Istruzioni di spostamento


da una cella di memoria all’altra;
Istruzioni di salto.
Informatica
78
Memoria cache

I registri


hanno tempo di accesso molto più veloce rispetto alla
memoria
Sono piccoli e limitati in numero



Sono una caratteristica del processore
Vi si mantengono solo i dati necessari per un’operazione
Memoria cache

Intermedio fra i registri e la memoria



Meno veloce dei registri, più veloce della memoria
Vi si mantiene i dati utilizzati di “recente”
Di qualche centinaio di KB (costosa)
Informatica
79
Memoria cache




Si basa sul Principio di Località:
Se la CPU ha utilizzato una certa parte di
memoria è molto probabile la utilizzerà
nuovamente
Salvare le informazioni di memoria usate
potrebbe quindi aumentare le prestazioni
Statisticamente, la CPU passa molto tempo
accedendo a zone di memoria ristrette
Informatica
80
La memoria secondaria...



Alta capacità (Ordine dei GB e TeraByte)
Basso costo (tipicamente hard disk da 500GB,
1TB)
E’ più lenta della memoria principale (anche più
di mille volte)



Si basa su principi “meccanici”
E’ permanente (non volatile)
Viene utilizzata per memorizzare
permanentemente dati e programmi,

che vengono caricati (ovvero letti e ricopiati) nella
memoria principale prima di essere utilizzati
Informatica
81
Tipologie...

Dispositivi magnetici:




sostanze magnetizzabili
che assumono due possibili stati (polarizzazione positiva e
negativa)
utilizzabili per rappresentare un bit
Dispositivi ottici:



raggio laser (luce coerente, fascio ridottissimo)
superfici con piccolissimi forellini (in cui passa/non passa la
luce, non viene/viene riflessa: due stati...)
scrittura difficile
Informatica
82
Dischi magnetici...
settore
traccia
testina
blocco
Informatica
83
Dischi magnetici...




In plastica/vinile, ricoperti di materiale magnetizzabile
Durante lettura/scrittura: i dischi ruotano; le informazioni
vengono lette/scritte da testine usuali in un formato a
tracce concentriche e settori (che intersecandosi danno i
blocchi), impostato con l’operazione di formattazione
(processo di suddivisione in tracce e settori)
La testina si sposta longitudinalmente lungo le tracce. I
dati sono scritti occupando posizioni successive lungo le
tracce
Un disco nuovo non è suddiviso in tracce e settori,
perché diversi sistemi operativi possono richiedere il loro
tipo particolare di suddivisione
Informatica
84
Accesso ai dati





Operazioni meccaniche necessarie:
Spostamento della testina in senso radiale fino
a raggiungere la traccia desiderata (seek time)
Attesa che il settore desiderato passi sotto la
testina (latency time)
Tempo di lettura/scrittura dell’informazione
Il tempo di accesso dipende dalla posizione
dell'informazione (non come con la RAM)
Informatica
85
Hard-Disk...


Tecnologia che utilizza
superficie magnetica su
supporto circolare
rotante non rimovibile
Anche più di una
superficie rotante e di
una testina di lettura, il
tutto chiuso così da
evitare contaminazione
delle superfici
magnetiche
Informatica
86
Accesso ai dati




Il tempo di accesso dipende dalla posizione dei
dati, quindi
Per l'efficienza è necessario che i file siano
memorizzati in modo consecutivo nel disco
Col tempo il disco si frammenta (i dati sono
memorizzati in modo sparso)
 Questo diminuisce l'efficienza
Si rende necessaria la deframmentazione
(utility di sistema)
Informatica
87
Nastri magnetici





Il meno sofisticato
Unico accesso possibile: sequenziale (quindi
molto lento ed inefficiente)
Costi bassi ed affidabili
Grande capacità (ordine dei GB e TB)
Utilizzati per il backup dei dati
Informatica
88
Supporti ottici...

Disco molto sottile
racchiuso tra due
superfici trasparenti
Principio per scrivere
informazioni:


Fascio laser incide su un
punto della superficie
fotosensibile del disco, ne fa
evaporare una piccola
porzione surriscaldandola,
lasciando un foro
La lettura da parte del
lettore avviene con lo stesso
laser ma di intensità minore
Informatica
89
“Dischi” a stato solido (SSD)



tipologia di dispositivo di memoria di massa che
utilizza memoria a stato solido (in particolare
memoria flash),
L'importante differenza: non utilizza organi meccanici
(piatti, testine, motori etc.) come invece fanno gli
hard disk tradizionali.
Non usano un vero e proprio disco
 Ma ne svolge la stessa funzione
 E quindi vengono comunque chiamati hard-disk
Informatica
90
Dischi a stato solido, vantaggi






rumorosità assente, (non essendo presente alcun
motore di rotazione)
minore possibilità di rottura
minori consumi durante le operazioni di lettura e
scrittura
tempi di accesso e archiviazione ridotti (oltre 50 volte
minore dei normali hard disk)
non necessitano inoltre di deframmentazione;
minore produzione di calore.
Informatica
91
...e svantaggi


Costano di più degli hard disk tradizionali
Tendono a durare di meno, a causa del limite di
riscritture delle memorie flash.
Informatica
92
Memorie a stato solido

Memorie USB
 Basate su principi simili
Informatica
93
Riassumendo…
Informatica
94
I dispositivi di I/O...

Dispositivi di Input:
 Trasferiscono “informazione” dal mondo
esterno al Calcolatore


Tastiera, Mouse, Scanner, Fotocamera Digitale,
Etc...
Dispositivi di Output:
 Trasferiscono “informazione” dal
Calcolatore al mondo esterno

Video, Stampante, etc...
Informatica
95