Architettura dei calcolatori

Transcript

Architettura dei calcolatori
CdLS in Odontoiatria e Protesi Dentarie
Corso di Informatica
Prof. Crescenzio Gallo
[email protected]
Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie
Architettura dei
calcolatori
Corso di Informatica - Prof. Crescenzio Gallo
2
Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie
Architettura di un calcolatore
Che cos’è un calcolatore? Come funziona un calcolatore?
•
•
un calcolatore è un sistema;
un sistema è un oggetto costituito da molte parti (componenti) che
interagiscono, cooperando, al fine di ottenere un certo risultato.
Studiare l’architettura di un sistema vuol dire
•
•
individuare ciascun componente del sistema;
•
comprendere come i vari componenti interagiscono tra di loro.
comprendere i principi generali di funzionamento di ciascun
componente;
Corso di Informatica - Prof. Crescenzio Gallo
3
Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie
Hardware/Software
La prima decomposizione di un calcolatore è
relativa alle seguenti macro-componenti:
Hardware
• La struttura fisica del calcolatore, costituita da componenti
elettronici ed elettromeccanici
Software
• L’insieme dei programmi che consentono all’hardware di
•
svolgere dei compiti utili.
Il software comprende il software di base (tra cui il sistema
operativo) e il software applicativo.
Corso di Informatica - Prof. Crescenzio Gallo
4
Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie
Organizzazione stratificata
Hardware e software sono organizzati a livelli (o strati).
Ciascun livello corrisponde
a una macchina (reale o virtuale) in grado di
Organizzazione
a
livelli
eseguire un proprio insieme di operazioni.
Ciascun livello fornisce un insieme di operazioni più semplici da utilizzare
livello sottostante.
dware e software sono organizzati a
elli (o strati) rispetto a quelle del
Ciascun livello è realizzato in termini dell’insieme di operazioni fornite dal
scun livello corrisponde
a una macchina
livello immediatamente
sottostante.
ale o virtuale) in grado di eseguire un
prio insieme di operazioni
scun livello fornisce un insieme di
erazioni più semplici da utilizzare rispetto a
elle del livello sottostante
scun livello è realizzato in termini
’insieme di operazioni fornite dal livello
mediatamente sottostante
Corso di Informatica - Prof. Crescenzio Gallo
Software applicativo
Software di base
Hardware
5
Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie
Unità centrale/Memoria
L’unità centrale di elaborazione (CPU)
• Componenti fondamentali
• Data path
• Il ciclo macchina
La memoria
• Generalità e caratterizzazione
• Gerarchie di memorie e memoria cache
Corso di Informatica - Prof. Crescenzio Gallo
6
Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie
Vistafunzionale
funzionale
diCalcolatore
un calcolatore
Vista
di un
Ambiente
Trasferimento
Controllo
Elaborazione
Corso di Informatica - Prof. Crescenzio Gallo
Memorizzazione
Fondamenti di Informatica e laboratorio – Architettura Calcolatori
5
7
Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie
Caratteristiche fondamentali
Capacità di eseguire sequenze di istruzioni memorizzate
Processore = Unità di Elaborazione + Unità di Controllo
‣ 1. Preleva le istruzioni dalla memoria
‣ 2. Interpreta i codici di istruzione
‣ 3. Effettua le azioni che questi prevedono
Programma = Insieme organizzato di istruzioni
Corso di Informatica - Prof. Crescenzio Gallo
8
rchitettura di Von Neumann
Architettura di von Neumann
Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie
Burks, Goldstein e Von Neumann sono stati i primi a proporre che il codice
del programma potesse essere memorizzato nella stessa memoria dei dati
Von Neumann fu il primo a proporre che il codice del programma potesse essere
memorizzato nella stessa memoria dei dati, a differenza di quanto avveniva prima.
Indirizzi
CPU
Dati
Memoria
Controllo
Memoria• indifferenziata
per dati o istruzioni
Memoria indifferenziata per dati o istruzioni.
Solo l'interpretazione
da parte
di CPU
configurazione
di
da parte
di CPUstabilisce
stabilisce sese
unauna
data data
configurazione
di bit
• Solo l'interpretazione
bit è da riguardarsi
come
unundato
come
un'istruzione
è da riguardarsi
come
dato oocome
un'istruzione.
Corso di Informatica - Prof. Crescenzio Gallo
9
unità centrale
periferiche
Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie
Componenti
unCalcolatore
calcolatore
Componentidi
di un
Fondamenti
di Informatica
laboratorio – Architettura Calcolatori
Corso di Informatica
- Prof. CrescenzioeGallo
8
10
Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie
Componenti di un calcolatore
Una Scheda Madre
Corso di Informatica - Prof. Crescenzio Gallo
Scheda madre
11
Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie
Componenti di un calcolatore
Una Scheda Madre
Scheda madre
Corso di Informatica - Prof. Crescenzio Gallo
Francesco Fontanella, Corso di Sistemi di Elaborazione dell'informazione
12
Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie
Il Bus
Bus
e soluzione Master-Slave
a cui
sono
contemporaneamente
connesse le
 IlIl bus
busèèuna
unalinea
linea
a cui
sono
contemporaneamente
connesse
le unitàedel
e che consente
unità
del calcolatore
checalcolatore
consente il trasferimento
di datiiltra tali
trasferimento di dati tra tali unità
unità.
Problema:
contesa
su un condiviso!
mezzo condiviso!
Problema:
contesa
su un mezzo
Soluzione:
= master,
Soluzione:
CPU =CPU
master,
memoriaperiferiche
e periferiche= =slave
slave
CPU
Ingresso
Corso di Informatica - Prof. Crescenzio Gallo
Memoria
Uscita
Fondamenti di Informatica e laboratorio – Architettura Calcolatori
9
13
Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie
BuseMaster-slave:
pregi
Bus
soluzione Master-Slave
Semplicità:
Il bus è una
a cuidi sono
contemporaneamente
unalinea
sola linea
connessione
per tutti i dispositivi.
connesse lenuovi
unità
del calcolatore
e cheaggiunti
consente
il
Estendibilità:
dispositivi
possono essere
tramite
trasferimento
dati
tra influenzare
tali unità l’hw preesistente.
un’interfaccia aldibus
senza
Standardizzabilità:
definizione
di normative
che consentono a
Problema: contesa
su un mezzo
condiviso!
periferiche
di CPU
costruttori
diversi
di interagire
correttamente.

Soluzione:
= master,
periferiche
= slave
CPU
Ingresso
Corso di Informatica - Prof. Crescenzio Gallo
Memoria
Uscita
Fondamenti di Informatica e laboratorio – Architettura Calcolatori
9
14
Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie
BuseMaster-slave:
difetti
Bus
soluzione Master-Slave
Lentezza: l’uso in mutua esclusione del bus inibisce almeno parzialmente la
 Ilparallelizzazione
bus è una delle
linea
a
cui
sono
contemporaneamente
operazioni di trasferimento di dati tra dispositivi.
connesse
lealunità
del
e che
consente
il linea
Limitata
capacità:
crescere
delcalcolatore
numero di dispositivi
la presenza
di una sola
trasferimento
di dati
tradi tali
unità
comporta un limite alla
capacità
trasferire
dati.
Problema:
su centrale
un mezzo
Sovraccarico
dellacontesa
CPU: l’unità
vienecondiviso!
coinvolta in tutte le operazioni di
Soluzione:
CPU = master, periferiche = slave
trasferimento
di dati.
CPU
Ingresso
Corso di Informatica - Prof. Crescenzio Gallo
Memoria
Uscita
Fondamenti di Informatica e laboratorio – Architettura Calcolatori
9
15
Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie
Lo Schema di Riferimento
Bus di sistema: schema
Interfaccia
I/O
Interfaccia
I/O
Interfaccia
I/O
Memoria
centrale
CPU
Bus dati
Bus indirizzi
Bus di controllo
Corso di Informatica - Prof. Crescenzio Gallo
16
Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie
Tipi di Bus
Il bus di sistema si divide in tre bus minori.
Bus dati: utilizzato per trasferire dati (es. fra memoria e
CPU, fra CPU e interfacce di I/O).
Bus indirizzi: che identifica la posizione delle celle di
memoria un cui la CPU va a scrivere o leggere.
Bus di controllo: in cui transitano i segnali di controllo
che consentono di selezionare le unità coinvolte in un
trasferimento dati (sorgente e destinazione), di definire
la direzione dello scambio (scrittura o lettura).
Corso di Informatica - Prof. Crescenzio Gallo
17
Bus e soluzione Master-Slave
 Il bus è una linea a cui sono contemporaneamente
connesse le unità del calcolatore e che consente il
trasferimento di dati tra tali unità
Problema: contesa su un mezzo condiviso!
Soluzione: CPU = master, periferiche = slave
Universitàdegli
degliStudi
Studidi
diFoggia
Foggia--Corso
CdLSdiinriconversione
Odontoiatriacreditizia
e Protesi Dentarie
Università
TSRM
Bus
CPU
Ingresso
Memoria
Uscita
9
Fondamenti di Informatica e laboratorio – Architettura Calcolatori
‣ Il bus è assimilabile ad un cavo che collega tra loro i vari componenti del
computer. In realtà si tratta di un insieme di cavi su cui viaggiano segnali digitali a
velocità particolarmente elevate.
‣ L’evoluzione tecnologica ha portato i bus a diversificarsi tra loro e a
“specializzarsi”. Troviamo cosi’ i bus di sistema (connettono la CPU con la
Memoria) oppure i bus locali, che connettono a più alta velocità differenti tipi di
unità periferiche alla CPU.
A questo proposito può essere utile definire la differenza tra bus e interfaccia.
Si tratta in entrambi i casi di connessioni tra diversi dispositivi, ma si parla di
bus quando allo stesso cavo sono collegati più dispositivi (con un sistema a
“cascata”). L’interfaccia invece può connettere solo un dispositivo.
Corso di Informatica
Sistemi
di Elaborazione
- Prof.
delle
Crescenzio
Informazioni
Gallo- Prof. Crescenzio Gallo
18
Universitàdegli
degliStudi
Studidi
diFoggia
Foggia--Corso
CdLSdiinriconversione
Odontoiatriacreditizia
e Protesi Dentarie
Università
TSRM
Bus: architettura
FSB (Front Side Bus) identifica quella parte di bus di
sistema che mette in collegamento la CPU con la memoria
e qualunque altra periferica installata nel computer (ad
esempio modem interni, scheda video, scheda audio, etc.).
Il FSB collega la CPU al resto dell'hardware attraverso un
chipset che, di solito, è diviso in Northbridge e Southbridge.
A questo, poi, si collegano tutti gli altri bus della scheda
madre, come i bus PCI e AGP.
Questi bus secondari, di solito, hanno una velocità che
dipende dal FSB e non sono necessariamente sincroni ad
esso.
Infine, l’LPC (Low Pin Count) bus collega le periferiche a
bassa velocità e legacy (tradizionali).
Corso di Informatica
Sistemi
di Elaborazione
- Prof.
delle
Crescenzio
Informazioni
Gallo- Prof. Crescenzio Gallo
19
Universitàdegli
degliStudi
Studidi
diFoggia
Foggia--Corso
CdLSdiinriconversione
Odontoiatriacreditizia
e Protesi Dentarie
Università
TSRM
Bus: evoluzione
• I primi PC “IBM compatibili” degli anni ’80 erano equipaggiati con il bus ISA a 8 bit, poi
evoluto nel bus AT a 16 bit e nell’EISA a 32/16 bit.
• L’IBM introdusse alla fine degli anni ’80 il bus proprietario MCA a 32 bit, retrocompatibile 16
bit.
• Il bus AGP (Accelerated Graphics Port) è un bus locale (cioè connesso direttamente alla
CPU) come il suo predecessore VESA. Fu introdotto nel 1997 per le connessioni video ad
alta velocità, e sostituito nel 2004 dal bus PCI.
• Standard attuale: PCI (Peripheral Component Interconnect) Express (bus seriale; sino a 8
Gb/s per canale nella versione 3.0).
Corso di Informatica
Sistemi
di Elaborazione
- Prof.
delle
Crescenzio
Informazioni
Gallo- Prof. Crescenzio Gallo
20