Architettura di un calcolatore Storia: macchine automatiche

Architettura di un calcolatore
●
Storia
–
–
–
●
Joseph Marie Jacquard
Charles Babbage
John Von Neumann
Architettura
FdI 2014/2015
GMDN 2015
1
Storia: macchine automatiche
●
Concetto di programmazione già presente in
alcuni strumenti in grado di riprodurre
automaticamente motivi musicali, come ad
esempio i carillon (Europa, dal 1700 circa).
–
–
Cilindro con puntine
Lamelle
FdI 2014/2015
GMDN 2015
2
FdI 2014/2015
GMDN 2015
3
FdI 2014/2015
GMDN 2015
4
FdI 2014/2015
GMDN 2015
5
Storia: Joseph Marie Jacquard
●
●
Un contributo indiretto, ma importante,
nell'evoluzione dei calcolatori si deve a
Joseph Marie Jacquard.
Nel 1804 presentò un sistema a schede
perforate in grado di automatizzare le
lavorazioni dei telai
–
–
Cilindro
Schede perforate
FdI 2014/2015
GMDN 2015
6
FdI 2014/2015
GMDN 2015
7
Macchina programmabile
●
L'idea innovativa che permise di cambiare i
calcolatori in modo radicale rispetto alle macchine
automatiche è legata al concetto di programmazione
–
●
possibilità di fornire in ingresso alla macchina non solo i
dati da elaborare, ma anche la sequenza di operazioni da
eseguire sui dati.
Il programma guida il funzionamento della macchina
nello svolgimento di attività di calcolo complesse
–
la macchina è l'interprete delle istruzioni.
FdI 2014/2015
GMDN 2015
8
Storia: Charles Babbage
●
●
L'idea del calcolatore programmabile si
concretizzò nella progettazione della
Macchina Analitica (prima metà del 1800)
Doveva essere, nei progetti di Babbage,
uno strumento di calcolo "universale" le cui
operazioni possono essere di volta in volta
specificate insieme ai dati da elaborare.
FdI 2014/2015
GMDN 2015
9
Storia: Charles Babbage
●
la Macchina Analitica, azionata da un motore a
vapore, avrebbe dovuto comporsi di quattro
parti fondamentali:
–
–
–
–
la memoria (store)
un’unità di calcolo (mill)
la sezione di ingresso (lettore di schede perforate)
la sezione di uscita (stampa dei risultati)
FdI 2014/2015
GMDN 2015
10
FdI 2014/2015
GMDN 2015
11
Elettricità e calcolatori elettronici
●
●
●
L’impiego di dispositivi elettrici nell’ambito del calcolo era cominciato
già all’inizio del ‘900, ma solo negli anni ‘30 si compresero appieno le
enormi potenzialità di questa nuova tecnologia per la costruzione dei
calcolatori.
Il passaggio cruciale tra la tecnologia meccanica e quella elettronica
non è legato semplicemente all’impiego della corrente elettrica, quanto
alla rappresentazione dell’informazione numerica con segnali elettrici.
L'era del calcolatore elettronico si apre nel momento in cui
l’informazione numerica comincia ad essere rappresentata ed
elaborata mediante segnali elettrici.
FdI 2014/2015
GMDN 2015
12
Elettricità e calcolatori elettronici
●
Nel 1938, il tedesco Konrad Zuse realizzò il primo
calcolatore programmabile in senso moderno,
denominato Z1.
FdI 2014/2015
GMDN 2015
13
Elettricità e calcolatori elettronici
●
Nel Regno Unito, inizia la realizzazione nel 1943 di un calcolatore
speciale, denominato Colossus, adibito alla decrittazione dei
messaggi segreti tedeschi generati mediante la macchina Enigma.
FdI 2014/2015
GMDN 2015
14
Elettricità e calcolatori elettronici
●
●
Sotto la spinta di esigenze belliche gli Stati Uniti
si impegnarono a incrementare le ricerche per
la realizzazione di calcolatori più veloci.
A partire dal 1943 finanziarono con ingenti
somme la progettazione e realizzazione di un
grosso calcolatore elettronico.
–
ENIAC (Electronic Numerical Integrator And
Computer)
FdI 2014/2015
FdI 2014/2015
GMDN 2015
GMDN 2015
15
●
170 metri quadri
●
27 tonnellate
16
Storia: Jon Von Neumann
●
●
Nel 1944, John von Neumann cominciò a
collaborare con il gruppo di scienziati impegnati
nella costruzione dell'ENIAC negli USA.
Von Neumann capì che la programmazione del
computer mediante la riconfigurazione di un
numero enorme di interruttori e di cavi era
lenta, faticosa e poco flessibile.
FdI 2014/2015
GMDN 2015
17
Storia: Jon Von Neumann
●
●
Per costruire un vero calcolatore elettronico programmabile
occorreva che il programma non fosse rigidamente
predisposto nell'hardware (tramite interruttori e cavi), e
neppure letto sequenzialmente da nastri o schede perforati
(troppo lenti), ma risiedesse in una memoria scrivibile ad
accesso veloce, assieme ai dati da elaborare e alle costanti
numeriche.
Il risultato fu il calcolatore ENIAC, completato nel 1946, che
rappresentò il primo grande calcolatore elettronico
programmabile basato sull'uso di valvole termoioniche.
FdI 2014/2015
GMDN 2015
18
FdI 2014/2015
GMDN 2015
19
Architettura di un calcolatore
●
●
●
Il modo in cui le diverse parti di un calcolatore sono
organizzate viene definito architettura di un calcolatore.
Si fa spesso riferimento all'architettura introdotta da Von
Neumann nel 1946.
La macchina di Von Neumann si basa su uno schema
molto semplice composto da pochi elementi:
–
–
–
–
Processore
Memoria centrale
Linee di connessione
Input/Output
FdI 2014/2015
GMDN 2015
20
Architettura di un calcolatore
●
L’architettura base di un calcolatore è rappresentata da:
–
–
–
–
●
Un sistema che acquisisce dati dall’esterno (ingresso/input)
La CPU (Central Processing Unit), il pocessore che eseguele istruzioni sui
sui dati acquisiti
La memoria centrale, o RAM (Random Access Memory) che contiene le
istruzioni e i dati necessari alla CPU per eseguire i calcoli
Un sistema che restituisce i dati elaborati (uscita/output)
Tutte queste parti sono collegate tra loro attraverso delle linee di
comunicazione chiamate bus
–
–
I bus consentono il trasferimento dei dati di ingresso e in uscita
La CPU legge/scrive i dati sulla/dalla memoria utilizzando queste linee
FdI 2014/2015
GMDN 2015
21
Central Processing Unit (CPU)
●
La CPU esegue operazioni elementari
–
–
–
–
●
Calcoli aritmetici
Confronto tra i valori dei dati
Scelte in base ai risultati del confronto tra valori
Aggiornamento dei valori presenti in memoria centrale
Le operazioni elementari sono “scritte” in un linguaggio che
la CPU è in grado di interpretare
–
–
Il inguaggio “macchina” ha solo due simboli (zero e uno)
Ogni “parola” corrisponde ad una istruzione o a un dato
FdI 2014/2015
GMDN 2015
23
CPU
●
●
●
All’interno della CPU è presente un clock, una sorta di orologio
interno che sincronizza le operazioni della CPU e regola la frequenza
delle stesse.
La frequenza di clock indica quante operazioni elementari la CPU
può eseguire in un secondo.
CPU e prestazioni del calcolatore
–
–
la potenza di un calcolatore si misura anche in base alla sua frequenza di
clock
Una CPU con una frequenza di clock di 1GHz può compiere un miliardo di
operazioni elementari in un secondo
FdI 2014/2015
GMDN 2015
24
Random Access Memory (RAM)
●
●
Spesso la CPU viene indicata come il cervello del calcolatore,
ma così non si considera l’importanza della memoria centrale
La memoria centrale è indicata con la sigla RAM, che sta per
Random Access Memory, memoria ad accesso casuale
–
●
Il termine casuale è fuorviante, in realtà non indica che l’accesso è
fatto casualmente, ma che non è fatto in modo sequenziale.
La memoria centrale infatti contiene
–
–
–
Le istruzioni che la CPU esegue
I dati da elaborare
I risultati delle elaborazioni
FdI 2014/2015
GMDN 2015
25
RAM
●
La memoria centrale rappresenta le
informazioni sotto forma di sequenze di bit
–
–
–
–
La memoria centrale può essere scomposta in celle
Ogni cella contiene un bit, ovvero valori 0 e 1
Le celle sono raggruppate in byte o multipli di byte
A ogni gruppo di celle è associato un indirizzo, che
permette alla CPU di sapere “dove” leggere e
scrivere i dati
FdI 2014/2015
GMDN 2015
26
RAM
●
Memoria e prestazioni del calcolatore
–
–
–
–
Maggiore è dimensione della memoria maggiore è la
quantità di dati a cui la CPU può accedere
Una memoria di grandi dimensioni può contenere anche
molte istruzioni per il funzionamento della CPU
La dimensione della memoria si misura in multipli di byte
Una memoria di Gigabyte è in grado di contenere circa un
miliardo di byte (ovvero potrebbe contenere un romanzo
di circa 100 milioni di parole scritto come solo testo)
FdI 2014/2015
GMDN 2015
27
Memoria secondaria (o di massa)
●
La memoria di massa è costituita da dispositivi di memorizzazione in
grado di mantenere l’informazione per lungo tempo, anche a
calcolatore spento (non è una memoria volatile)
–
–
●
●
E’ formata da hard-diski, CD, DVD, chiavette USB, ...
Come la memoria centrale contiene istruzioni (programmi) e dati
La CPU non accede direttamente alla memoria di massa
I dati contenuti nella memoria secondaria devono essere caricati in
memoria centrale.
–
L’accesso alla memoria di massa è molto più lento dell’accesso alla memoria
centrale
FdI 2014/2015
GMDN 2015
28
Memoria secondaria (o di massa)
●
Nei moderni sistemi avviene un continuo scambio
di dati tra memoria centrale e memoria di massa
–
–
La memoria di massa può contenere anche le
informazioni in uso dalla CPU nel caso di mancanza di
spazio in memoria centrale
I sistemi con poca RAM utilizzano spesso anche la
memoria di massa, diminuendo le prestazioni del
calcolatore
FdI 2014/2015
GMDN 2015
29
Hard Disk
FdI 2014/2015
GMDN 2015
30
HD
FdI 2014/2015
GMDN 2015
31
HD vs SSD (Solid State Drive)
FdI 2014/2015
GMDN 2015
32
CD, DVD, Blu-ray
FdI 2014/2015
GMDN 2015
33
CD, DVD, Blu-ray
FdI 2014/2015
GMDN 2015
34
Lunghezza d'onda dei laser
FdI 2014/2015
GMDN 2015
35
USB key
FdI 2014/2015
GMDN 2015
36
“Caricare” i programmi in memoria
●
●
●
Tutte le informazioni vengono memorizzate nella
memoria secondaria,
Quando si vuole utilizzare uno specifico programma
oppure un insieme di dati, il programma e/o i dati
devono essere copiati dalla memoria secondaria alla
memoria principale.
Questa attività, detta di caricamento di un programma
e/o di un insieme di dati in memoria principale, viene
svolta, in risposta ad una richiesta d’utente, dal
sistema operativo.
FdI 2014/2015
GMDN 2015
37
Avvio del calcolatore
●
●
●
Quando si avvia il computer, quali dati legge la
CPU?
Il ritardo che si verifica tra il momento in cui si
accende il computer e il momento in cui si può
iniziare a lavorare, cioè quando il sistema operativo
è pronto
Esiste una memoria Read-Only Memory (ROM)
–
–
Memoria a sola lettura non volatile
Non è né la RAM né la memoria secondaria
FdI 2014/2015
GMDN 2015
38
Read Only Memory (ROM)
●
ROM: contiene una serie di programmi incorporati nel
computer che eseguono le operazioni di base, Basic
Input/Output System (BIOS), di supervisione per il
computer.
–
–
Alcuni programmi della ROM vengono usati solo in fase di
accensione del computer e servono per inizializzare e
controllare tutti i componenti hardware presenti
Altri programmi forniscono un controllo preciso e dettagliato
delle varie componenti del computer, incluse le periferiche
di Input/Output come le unità disco, le cui operazioni
devono essere testate accuratamente
FdI 2014/2015
GMDN 2015
39