I componenti del computer: l`hardware

Transcript

I componenti del computer: l`hardware
I componenti del computer:
l’hardware
„
„
Curtin et al., Informatica di base, cap. 3,4,5.
Ceri, Mandrioli, Sbattella, Informatica: Arte e
Mestiere, Mc Graw-Hill, 1999.
Calcolo Numerico e
Programmazione
Hardware e Software
„
Hardware: qualsiasi dispositivo fisico tangibile, in
grado di eseguire una qualche attivita’
nell’elaborazione dell’informazione all’interno di
un sistema informatico.
„
Software:sequenze di istruzioni che guidano
l’hardware e definiscono con precisione
l’esecuzione di un dato compito.
Calcolo Numerico e
Programmazione
Tipi di elaboratore
„
„
„
„
Supercomputer: hanno elevatissime capacità di calcolo e
di solito contengono piu’ unità di calcolo. Esempi: Cray,
SPM (calcolatori paralleli), presso CINECA (Centro
Interuniversitario di Calcolo, Bologna). www.cineca.it
Mainframe: potente elaboratore che svolge funzioni
centralizzate, di solito di contabilità o amministrative.
Server: e’ una denominazione della funzionalità del
computer che gestisce altri computer connessi a lui in rete.
Personal Computer (PC) : computer di basso costo che
possono elaborare in modo autonomo. Esempi: desktop,
workstation.
Calcolo Numerico e
Programmazione
La macchina di Von Neumann
Calcolo Numerico e
Programmazione
La macchina di Von Neumann
Componenti fondamentali:
„ Unita’ di elaborazione (CPU): contiene I dispositivi
elettronici in grado di acquisire, interpretare ed
eseguire le istruzioni. E’ divisa in due parti: Unita’ di
controllo (UC) e Unita’ Aritmetico –logica (ALU).
„ Memoria centrale: contiene istruzioni e dati.
„ Periferiche: permettono lo scambio di informazioni
fra l’elaboratore e l’esterno. Le periferiche
comprendono anche le memorie secondarie o
memorie di massa.
Calcolo Numerico e
Programmazione
L’interazione fra CPU e memoria:
ciclo macchina
1.
2.
3.
4.
Caricamento (fetch): l’UC preleva
l’istruzione successiva presente in memoria .
Decodifica (Decode):l’UC interpreta
l’istruzione e trasferisce I dati a cui questa fa
riferimento dalla memoria alla ALU.
Esecuzione (Execute): la ALU esegue
l’operazione logica o aritmetica richiesta
dall’istruzione.
Memorizzazione (Store):I risultati delle
operazioni svolte sono memorizzati nella
memoria.
Calcolo Numerico e
Programmazione
L’interazione fra CPU e memoria:
ciclo macchina
„
Nella macchina di Von Neumann le fasi di
elaborazione si succedono in modo sincrono
rispetto alla scansione temporale di un orologio
di sistema (Clock).
„
Modelli evoluti di questa architettura
prevedono di introdurre varie forme di
parallelismo, cioe’ esecuzione contemporanea
delle attivita’ di elaborazione.
Calcolo Numerico e
Programmazione
La scheda madre
La scheda madre contiene
quasi tutti i circuiti a cui sono
collegati i dispositivi interni del
calcolatore.
Calcolo Numerico e
Programmazione
La memoria: BIT e BYTE
„
„
L’informazione viene codificata in modo binario,
ossia in una sequenza finita di 1 e di 0.
La più piccola unità di informazione memorizzabile
o elaborabile è il bit (binary digit) che
corrisponde allo stato di un dispositivo fisico che ha
due possibili stati:
differente tensione elettrica (alta o bassa in
memoria centrale), differente stato di
polarizzazione magnetica (positiva o negativa nelle
memorie secondarie), alternanza fra luce e buio
nella trasmissione dati.
Calcolo Numerico e
Programmazione
La memoria: BIT e BYTE
„
„
„
„
„
„
L’unita’ minima del linguaggio digitale e’ il bit.
1 byte= 8bit
2 10 byte= 1 Kilobyte (1KB)
2 10 KB=1 Megabyte (1MB)
2 10 MB= 1 Gigabyte (1GB)
2 10 GB= 1 Terabyte (1 TB)
Calcolo Numerico e
Programmazione
La memoria centrale
Concettualmente e’ una sequenza di celle, ciscuna
delle quali contiene una parola (word).
„
Le parole di uno stesso elaboratore hanno tutte
la stessa lunghezza (32 o 64 bit di solito).
„
Ciascuna cella di memoria puo’ essere
indirizzata, cioe’ viene associata in modo
univoco ad un indirizzo.
„
L’indirizzamento della memoria avviene tramite
un registro, detto registro degli indirizzi.
Calcolo Numerico e
Programmazione
La memoria centrale :
schema di funzionamento
Calcolo Numerico e
Programmazione
La memoria centrale
„
RAM (Random Access Memory): memoria
volatile, modificabile. Mantiene memorizzati I
programmi che si stanno utilizzando e I dati in
fase di elaborazione.
La RAM e’ organizzata in moduli (SIMM o
DIMM)
„
ROM (Read Only Memory): memoria non
volatile. Contiene le istruzioni dette firmware.
Calcolo Numerico e
Programmazione
L’Unita’ centrale di
elaborazione(CPU)
La CPU contiene :
„ Unita’ di controllo (UC),
„ Unita’ Aritmetico Logica(ALU),
„ Clock di sistema
„ REGISTRI:
„ Registro: piccola porzione di memoria capace di
memorizzare una sequenza di bit (di solito 1 o piu’
parole)
„ Registro dati (DR)
„ Registro indirizzi (AR)
Calcolo Numerico e
Programmazione
L’Unita’ centrale di
elaborazione(CPU)
„
„
„
„
„
„
Registro istruzione corrente (CIR). Contiene, istante
per istante, l’istruzione in esecuzione.
Contatore di programma (Program Counter PC).
Contiene, istante per istante, l’indirizzo della prossima
istruzione che deve essere eseguita.
Registro contatore di programma (Program Counter
PC). Contiene, istante per istante, l’indirizzo della
prossima istruzione che deve essere eseguita.
Registro interruzioni (Interrupt register INTR).
Contiene informazioni sullo stato delle periferiche.
Registri contenenti operandi e risultati delle ultime
operazioni fatte.
Registri di lavoro.
Calcolo Numerico e
Programmazione
L’Unita’ centrale di
elaborazione(CPU)
„
„
„
„
La velocita’della CPU viene misurata in
Megahertz (milioni di cicli al secondo, misurati
con il clock del processore).
N.B. Processori di tipo diverso non vanno
confrontati sulla base del ciclo di clock.
MIPS (milioni di istruzioni per secondo)
Legge di Joy: MIPS=2(anno-1984)
Calcolo Numerico e
Programmazione
I bus
„
I bus sono collegamenti che permettono la
trasmissione delle informazioni tra I vari
componenti del sistema. Numero di linee
determina l’ampiezza del bus. 32 o 64 bit.
„
Bus di sistema. Collega la CPU ad altri dispositivi
del computer, fra cui la memoria. In ogni istante
di tempo il bus collega due unita’ funzionali: una
trasmette I dati e l’altra li riceve,questo processo
viene controllato dall’unita’ centrale di
elaborazione.
Calcolo Numerico e
Programmazione
I bus
Le linee del bus vengono suddivise in tre
categorie:
„ Bus dati: Trasferisce dati
„ Bus indirizzi: trasferisce indirizzi; per esempio
contenuto del registro indirizzi dall’unita’ di
elaborazione centrale alla memoria.
„ Bus controlli: trasferisce un codice
corrispondente all’istruzione da eseguire.
Calcolo Numerico e
Programmazione
Esempio: operazione di lettura
La CPU:
1.
Carica l’indirizzo della parola da leggere nel
registro indirizzi e lo trasmette alla RAM tramite
il bus indirizzi.
2.
Richiede un’operazione di lettura inviando il
codice del comando tramite bus controlli.
La RAM:
3.
Sposta tramite bus dati il contenuto della parola
indirizzata nel registro dati.
4.
Segnala alla CPU tramite bus controlli, che
l’operazione e’ terminata.
Calcolo Numerico e
Programmazione
Slot di espansione
„
„
„
Agli slot di espansione presenti sulla scheda
madre si possono inserire le schede degli
adattatori.
Le schede degli adattatori sono collegate al bus
di sistema.
Possono avere diverse funzioni: collegarsi a
Internet (modem), utilizzare fax, scanner, audio
ecc.
Calcolo Numerico e
Programmazione
Le memorie secondarie
Sono costituite da due elementi distinti:
1.
Il dispositivo di memorizzazione: ha la funzione
di scrivere/leggere I dati sul supporto.
2.
Il supporto di memorizzazione: e’ il
componente fisico su cui vengono memorizzati I
dati.
Tipi di supporto:
„
memoria magnetica (nastri, dischi)
„
Memoria ottica (compact disc, DVD)
„
Memoria magneto-ottica(dischi magneto-ottici)
Calcolo Numerico e
Programmazione
Le memorie secondarie
Le memorie secondarie presenti in un PC sono:
„
disco fisso (possono essercene piu’ di uno)
„
Floppy disk
„
Compact Disk e/o DVD
„
Unità nastro per il backup (opzionale)
Calcolo Numerico e
Programmazione
Le memorie secondarie
Caratteristiche della memoria:
1. Accesso: Sequenziale (nastro), diretto (dischi o
cd)
2.
Formattazione: suddivisione del disco in tracce e
settori
3.
Velocita’: velocita’ di accesso (ai dati sul supporto)
+ velocita’ di trasferimento (dei dati dalla memoria
secondaria alla memoria centrale RAM).
I dischi fissi (HD) offrono la velocita’ piu’ alta di
solito.
4. Capacita’ di memorizzazione: quantita’ di dati che un
supporto e’ in grado di memorizzare. HD >10 GB,
CD <1GB,floppy 1,4MB.
Calcolo Numerico e
Programmazione
Le memorie secondarie:il disco
fisso
„
Controller del disco fisso: interfaccia per
comunicare con l’elaboratore. Esempi: IDE (piu’
vecchia), EIDE, SCSI (piu’ veloce).
Calcolo Numerico e
Programmazione
IL backup dei dati
„
„
Backup: copia di tutti I dati (o almeno dei
piu’ importanti) .
Perche’? Si possono verificare
frequentemente incidenti che causano la
perdita dei dati sul disco fisso.
Dove? Floppy disk, per limitate quantita’ di
dati (poco sicuro); CD , dischi fissi removibili
oppure unita’ nastro (maggiore capacita’ di
memorizzazione).
Calcolo Numerico e
Programmazione
Le periferiche di input/output
„
„
„
„
„
„
„
La comunicazione con le periferiche avviene tramite
porte.
Le porte sono degli alloggiamenti, di solito posti sul
retro, in cui vengono inseriti I cavi delle periferiche.
Porte seriali (porte di comunicazione asincrona):
Due linee per inviare e ricevere dati; un bit per volta.
Porte parallele (interfacce centronics): 8 bit per
volta.
Porte SCSI (Small Computer System interface):
permettono di collegare più dispositivi alla stessa
porta .
Porte USB (Universal Serial Bus): più veloci;
possono collegare fino a 127 dispositivi ad una sola
porta.
Porte Firewire (IEEE 1394): tecnologia più potente
di USB.
Calcolo Numerico e
Programmazione
Le periferiche di input
„
„
Input di testo:
Tastiera (par. 4.2)
Scanner (riconoscimento ottico dei caratteri
OCR). Il testo viene convertito dalla forma
stampata a quella elettronica (par. 4.3)
Calcolo Numerico e
Programmazione
Le periferiche di input
„
1.
2.
„
1.
Input di dati (par. 4.2)
Lettore di codici a barre.
Riconoscimento vocale.
Input di grafica (par. 4.3)
Scanner grafico (scanner piano oppure a
tamburo). Per le immagini a colori sono
necessari tre filtri per leggere verde,rosso e blu
(scala RGB).
Calcolo Numerico e
Programmazione
Le periferiche di input
Strumenti di puntamento (par. 4.6)
1.
Mouse
2.
Puntatori di gomma
3.
Joystick ecc.
Calcolo Numerico e
Programmazione
Le periferiche di output
1.
„
„
2.
„
„
„
3.
Schermo o monitor (par. 4.10)
con tubo a raggi catodici (CRT);
a schermo piatto. 4 princiapli tipi di tecnologie:
display a cristalli liquidi, a plasma a colori,
elettroluminescenti, a emissione di campo.
Stampante (4.12-4.14)
Laser
A getto d’inchiostro
A matrice di punti
Plotter
Calcolo Numerico e
Programmazione
Output di testo: I font
„
Font: tipo di carattere con uno stile e una
forma propri.
Caratteristiche:
Tipo :esempi più comuni: Courier, Times
Nedw Roman, Arial, Franklin, Bookman ….
Stile: Normale, Grassetto, Corsivo,…
„
Dimensione: 24 punti,
„
„
14 punti
,
Calcolo Numerico e
Programmazione
40 punti ….
Output grafico: la risoluzione
„
„
„
Risoluzione: indica la qualita’ di un’immagine
visualizzata sullo schermo o stampata.
Pixel (picture element): lo schermo e’ diviso in pixel.
Risoluzione di 640x480 (VGA), 800x600 (SVGA) ,
1280x960 . . .
Il numero totale di pixel nello schermo dipende dalla
risoluzione utilizzata.
Ad ogni pixel viene assegnato un indirizzo (bit mapping)
Punti per pollice (dots per inch (DPI)): misura la
risoluzione di una stampante.
Risoluzione 600dpi, 1200 dpi . . .
Calcolo Numerico e
Programmazione
Output grafico: la risoluzione
„
Rapporto fra risoluzione e grandezza
dell’immagine:
Calcolo Numerico e
Programmazione
Output grafico: I colori
„
„
Gamma dei colori: a ciascun pixel viene
assegnato un colore o una gradazione di grigio.
Corrispondenza biunivoca fra pixel e numero del
colore assegnato in una tavolozza di colori
disponbili nella scheda video (fino a 16 milioni)
(settingsÆschermo Æ impostazioni).
Profondita’ di colore: e’ la gamma di colori
disponibile.
Dipende da quanti bit sono usati per memorizzare I
dati di ogni pixel.(1bit = 2 colori; 8 bit=256 colori;
24 bit=16 milioni di colori). Memoria video
disponibile.(par. 4.9)
Calcolo Numerico e
Programmazione
Output grafico: I colori
„
Sullo schermo ogni colore e’ rappresentato
come sovrapposizione di 3 colori nelle scale
rosso, verde, blu (RGB) (colori primari).
„
Le stampanti a colori utilizzano cartucce dei
colori Cyano, Magenta e Giallo (CMY) (colori
sottrattivi) ed eventualmente nero per creare
tonalita’ piu scure.
Calcolo Numerico e
Programmazione
Estensione alla macchina di Von
Neumann
„
„
„
Uso di processori dedicati (coprocessori) che
eseguono in “parallelo” compiti specifici.
Modifica della struttura del processore, in
modo da poter eseguire in parallelo le varie
fasi di una istruzione (pipelining).
Uso di gerarchie di memorie. Es. Memoria
cache, caratterizzata da alta velocita’, in cui
vengono trasferite le informazioni di uso piu’
recente o piu’ comune.
Calcolo Numerico e
Programmazione
Estensione alla macchina di Von
Neumann
„
Uso di processori dedicati (canali di ingressouscita) per trasferire grandi quantita’ di dati
dalla memoria secondaria a quella centrale
senza interferire con la CPU.
„
Architetture multiprocessore: sono dotate di
molteplici processori indipendenti, collegati fra
loro da diversi schemi di interconnessione.
Calcolo Numerico e
Programmazione
Conclusioni
„
La macchina di Von Neumann come modello per
il funzionamento di un elaboratore e sue
estensioni.
„
Caratteristiche delle diverse componenti
hardware di un elaboratore (PC in particolare).
„
Alcune caratteristiche dell’output grafico in
particolare.
Calcolo Numerico e
Programmazione
Esercizi
„
„
CD Curtin: sezione 3,4,5.
Utilizzare il menu SETTINGÆControl Panel di
Windows per controllare le caratteristiche
hardware dei computer del laboratorio.
Calcolo Numerico e
Programmazione