Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
MQ 2
ELABORATORI CON DIFFERENTI ARCHITETTURA HANNO
DATAPATH DIFFERENTI
due datapath
MQ differenti 3
Componenti principali di un computer
Unità centrale
Memoria
Processore principale
(centrale)
Bus
Controller
Stampante
Terminale
Memorie di massa
Periferiche di input/output (secondarie)
COMPONENTI DI UN PC
Si distinguono facilmente le cinque parti principali dello schema di Von Neumann con la
CPU,
l' Input e l' Output, nonche' la memoria volatile (Memory) e la memoria permanente
(Drives).
MQ 5
Vista interna di un PC
MQ 6
Scheda madre di Pentium IV
MQ 7
Scheda madre di Pentium IV
MQ 8
Dentro al PC
• SLOT: e’ un connettore dove vengono inserite delle
schede che contengono particolari dispositivi
I piu' importanti tipi di slot sono:
o PCI Peripheral Component Interface
o AGP Advanced Graphic Port
o SATA “Serial Advanced Technology Attachment"
MQ 10
IL BIOS (BASIC INPUT OUTPUT SYSTEM )
Il BIOS e' un chip ROM che e' specifico di una data piastra madre. Le istruzioni e dati in esso
contenuti rimangono praticamente fisse per tutto il ciclo di vita del PC e sono utilizzate dalla
CPU all'accensione del PC. Il programma nella ROM contiene in primo luogo le istruzioni per la
partenza (start-up) del PC che si possono dividere in:
Il BIOS e' un chip ROM che e' specifico di una data piastra madre. Le istruzioni e dati
in POST (Power On Self Test) = Istruzioni per il controllo del funzionamento elettronico
dei dispositivi all’accensione del PC
1) SETUP: Istruzioni per la configurazione dei dispositivi dopo l’accensione e il post
2) BIOS : Istruzioni per la configurazione verso il Sistema Operativo(CMOS)
3) BOOT : Istruzioni per la partenza del Sistema Operativo
4) INPUT/OUTPUT : Il Bios raccoglie una serie di programmi software a basso livello,
(funzioni di base) che il sistema operativo sfrutta per interagire con l’hardware della
macchina. Tra queste funzioni ritroviamo i caratteri digitati alla tastiera, l’invio dei
caratteri alla stampante e l’accesso alla memoria, alle unita’ a disco e ad altri dispositivi
di Input/output. Non tutti i sistemi operativi utilizzano tutte le funzioni del BIOS ( vedi
UNIX) Il CMOS e' una tecnologia elettronica con cui si costruiscono dispositivi a
Il CMOS e' una tecnologia elettronica con cui si costruiscono dispositivi a
basso consumo. In un PC con CMOS si intende una memoria RAM a basso
basso consumo. In un PC con CMOS si intende una memoria RAM a basso
consumo dove vengono messi i dati di configurazione dei dispositivi presenti e
consumo dove vengono messi i dati di configurazione dei dispositivi presenti e
che possono essere alterati dall'utente. Il chip CMOS e' alimentato da una
che possono essere alterati dall'utente. Il chip CMOS e' alimentato da una
batteria tampone per cui anche spegnendo il PC i dati non si perdono.
batteria tampone per cui anche spegnendo il PC i dati non si perdono.
MQ 11
UEFI come sostituto del BIOS
• Arriva UEFI
UEFI è l'acronimo di Unified Extensible Firmware
Interface. Lo scopo di EFI dovrebbe essere quello di
sostituire gradualmente gli attuali BIOS delle schede
madri . A cosa serve il BIOS? Inizialmente il sistema
operativo funzionava con un solo tipo di HW. Quindi un
"PC" doveva essere fatto solo in un modo. Il BIOS ha
cambiato le cose: non importa che HW ci sia, il BIOS lo
"virtualizza" in modo che risponda alle chiamate del
Sistema Operativo sempre allo stesso modo, anche se
sotto è tutto diverso. Secondo Intel, quando verrà
adottata in maniera consistente, EFI consentirà ai
produttori di integrare nel firmware del computer
applicazioni e nuove funzionalità, fra cui strumenti per la
diagnostica e il ripristino dei dati, servizi di crittografia e
funzionalità per la gestioneMQ dei consumi. 12
Memoria ROM, caratteristiche:
La ROM e’ un memoria atta a contenere informazioni memorizzate
dal costruttore del dispositivo, ma nella quale non e’ possibile
scrivere nulla. Nella ROM troviamo un tipo di software che
difficilmente sara’ soggetto a variazioni (come I vecchi BIOS del
PC, schede di controllo di periferiche, cartucce per I giochi,
programmi applicativi di alcuni palmari e altre apparecchiature
programmabili).
Al pari delle RAM le ROM sono ad accesso casuale.
La non modificabilita’ della ROM ha costretto molti utenti a
chiedere la sostituzione della ROM nel caso in cui bisognasse
aggiornare I dati o il software.
Tempo di accesso dell’ordine dei nanosecondi ( 1ns=10 –9 sec)
NON VOLATILE
MQ 13
Dalla ROM alla PROM
La PROM (Programmable ROM) e’ stata
inventata per sopperire alle forti restrizioni
che le ROM imponeva. Qualora fosse stato
necessario aggiornare I programmi o I dati
contenuti nella ROM, bisognava sostituirla
(doveva essere fornita dal costruttore). La
PROM ha il vantaggio di poter essere
programmata una sola volta dall’utente
tramite dispositivi particolari chiamati
programmatori di PROM.
NON VOLATILE
MQ 14
Dalla PROM alla EPROM
Un ulteriore miglioramento in questo settore
delle memorie fu l’EPROM ( Erasable PROM)
che puo’ essere non solo programmata
dall’utente ma anche cancellata. Queste
EPROM hanno una finestra di quarzo a
contatto con il chip; se la finestra viene
esposta ad una forte luce ultravioletta per 15
minuti tutti i bit sono messi a 1 . Questi tipi di
memorie si possono riutilizzare .
NON VOLATILE
MQ 15
Dalla EPROM alla EEPROM
La successiva evoluzione delle EPROM sono state le
EEPROM (Elettrically Erasable PROM).
Si possono cancellare ( un byte alla volta) tramite
impulsi elettrici e si riprogrammano sul posto senza
estrarle.
Svantaggi: Più costose delle RAM e meno veloci delle
RAM.
Le EEPROM piu’ recenti si chiamano FLASH
(si cancellano per blocchi di byte )
Le FLASH sono usate anche come memorie portatili (USB key).
NON VOLATILE
MQ 16
La memoria principale
Le RAM dinamiche sono basate
principalmente sul principio di funzionamento
di carica e scarica di un condensatore in un
circuito con la presenza di una resistenza
(circuito RC - che nel disegno non e’
raffigurata esplicitamente ma e’ inclusa nel
transistor .
Il loro caricamento avviene lentamente; il
processo di lettura ne causa lo scaricamento;
inoltre, anche in condizioni di riposo, la carica
si disperde anche in presenza di tensione,
pertanto hanno bisogno di un dispositivo di
refresh temporizzato da un clock
La memoria principale
• RAM (Random Access Memory)
• Questa definizione indica che il tempo di
accesso ad una cella è lo stesso
indipendente dalla posizione della cella
• Le operazioni che un processore può
effettuare sulla memoria sono le
operazioni di lettura e scrittura di
informazioni nelle celle
VOLATILE
La memoria principale
• Una parola di memoria è, a seconda del tipo
di computer, un aggregato di due, quattro o
addirittura otto byte, sul quale si può operare
come su un blocco unico
• Per eseguire le operazioni di lettura e scrittura
sulla memoria, si deve specificare l’indirizzo
della parola su cui si vuole operare
• L’indirizzo di una parola è un numero intero e
quindi lo si può codificare in binario
• Il numero di parole di memoria determina il
numero di bit necessari a rappresentare
l’indirizzo
La memoria principale
• Le dimensioni della memoria principale variano
a seconda del tipo di computer e vengono
espresse mediante le seguenti unità di misura:
– 1 Kilobyte (KB) corrisponde a 1024 byte (210)
– 1 Megabyte (MB) corrisponde a 1024 Kbyte (220)
– 1 Gigabyte (GB) corrisponde a 1024 Mbyte (230)
– 1 Terabyte (TB) corrisponde a 1024 Gbyte (240)
• Nei computer attuali le dimensioni tipiche della
memoria principale vanno dai 512MB a vari GB
( e oltre)
La memoria principale
• Ogni cella è caratterizzata da:
– Un indirizzo che e’ un numero che ne identifica la cella e
ne consente l’accesso
– Un valore, che è la sequenza di bit memorizzata dalla
cella.
MQ 23
Il Processore
• Il processore è la componente dell’unità
centrale che fornisce la capacità di
elaborazione delle informazioni contenute
nella memoria principale
• L’elaborazione avviene in accordo a
sequenze di istruzioni (istruzioni
macchina)
• Il linguaggio in cui si scrivono queste
istruzioni viene chiamato linguaggio
macchina
• Il ruolo del processore è quello di eseguire
programmi in linguaggio macchina
Componenti di un processore
REGISTRI
Bus
Interno Program Counter (PC)
Registro di Stato (PSW)
Unità di
Controllo Registro Istruzioni (IR)
Unità
Aritmetico- Registro Indirizzi Memoria (MAR)
Logica
Registro Dati Memoria (MD )
Alla memoria
CONTR.
MX
UNIT
MAR
ALU
clock F
EAR ED
Alle unita’
esterne
I REGISTRI
I registri A,B,T contengono dati su cui e’ possibile eseguire
operazioni elementari da parte dell’ ALU .
MQ 27
CPU con registri generali
MQ 28
I REGISTRI
•MDR (o MD) Memory Data Register serve a scambiare dati tra la CPU e la
memoria, mentre il registro ED e’ utilizzato per scambiare i dati tra la CPU e le
unita’ esterne di ingresso e di uscita.
•PSW (Program Status Word) e’ il registro dei flag che che memorizza particolari
condizioni quali: riporto, traboccamento, risultato positivo/negativo, parita’ e
altro.
MQ 30
UNITA’ DI CONTROLLO (U.C.)
MQ 34
FASE DI FETCH
Il termine FETCH indica la copia di un’informazione
dalla memoria all’interno della CPU
IlIlcontenuto
contenutodel
delProgram
Programcounter
counter
viene
vienespostato
spostatonel
nelregistro
registroindirizzi
indirizzi
1. (PC) MAR Viene
Vieneprelevato
prelevatodalla
dallamemoria
memoriailil
contenuto
contenutodell’indirizzo
dell’indirizzopuntato
puntatoda
da
2. MEM(MAR) MD MAR e viene posto nel registro
MAR e viene posto nel registro MDMD
IlIlcontenuto
contenutodidiMD
MDviene
vieneposto
postonel
nel
(MD) IR
MQ 35
FASE DI PRELIEVO (FETCH)
MQ 36
FASE DI DECODIFICA
Estrazione dal registro istruzione (IR) del tipo operatore
presente (OPCODE): Istruzioni per lo spostamento dati
Istruzioni aritmetiche:
add,mul,sub…
Istruz. di tipo logico
(NAND,OR, NOT..
Istruz. Di rotazione e shift :
SHL, SHR..
Istruz. di controllo programma
( JUMP, JNZ,JZERO.. ..
Istruz. Di controllo Macchina
(halt,nop..
MQ 37
FASE DI ESECUZIONE
Estrazione degli operandi:
INDIRIZZO/I
DATI IMMEDIATI
REGISTRI
MQ 38
Il Processore: l’unità di controllo
• La frequenza con cui vengono eseguiti i cicli di
esecuzione è scandita da una componente detta clock
• Ad ogni impulso di clock la U.C. esegue un’istruzione
macchina ( o meglio ad ogni ciclo di clock cambia lo
stato interno della macchina)
• La velocità di elaborazione di un processore dipende
dalla frequenza del suo clock
• I processori attuali hanno valori di frequenza di clock che
variano tra i 100 MHz e 3 GHz (tra 100 milioni di impulsi
al secondo a 3 miliardi di impulsi al secondo )
IL CLOCK
• E’ un segnale periodico, costituito da una sequenza
alternata di uni e zeri, che viene distribuito a tutti i
circuiti sequenziali sincroni per sincronizzarne il
funzionamento. L’intervallo di tempo che intercorre
tra due successivi impulsi e detto periodo di clock.
La frequenza viene misurata in Mhz (megahertz,
milioni di cicli al secondo). Un ciclo della durata di
1 ns(nanosecondo) equivale a 1000Mhz (1 Ghz).
Maggiore e’ la frequenza , maggiore e’ la velocita’
del processore, che tuttavia non puo’ essere
aumentata a piacere in quanto i circuiti devono
avere il tempo di completare la propagazione dei
nuovi valori logici prima che arrivi un nuovo impulso
di clock . MQ 40
MQ 41
L’Unità Aritmetico-Logica
• L'Unità Aritmetico-Logica (ALU) è costituita da un insieme di
circuiti in grado di svolgere le operazioni di tipo aritmetico e
logico
• La ALU legge i dati contenuti all'interno dei registri generali,
esegue le operazioni e memorizza il risultato in uno dei
registri generali
• Vi sono circuiti in grado di eseguire la somma di due numeri
binari contenuti in due registri e di depositare il risultato in un
registro, circuiti in grado di eseguire il confronto tra due
numeri binari.
• In alcuni elaboratori oltre alla ALU si può avere un
processore specializzato per effettuare operazioni
matematiche particolari, il coprocessore matematico
CISC o RISC
• Fino all’inizio degli anno ’80 la quasi totalita’ degli
elaboratori era basata su processori con pochi registri ma
con unita’ di controllo molto complesse in grado di
eseguire istruzioni anche molto articolate. Le architetture
di questo tipo venivano chiamate CISC ( COMPLEX
INSTRUCTION SET COMPUTER) ovvero computer con set
di istruzioni complesse ( a loro volta composte da
microistruzioni) .
• Successivamente a fianco di questa tipologia di CPU e’
comparso un altro approccio detto RISC ( REDUCED
INSTRUCTION SET COMPUTER). L’idea di base prevede
di dotare il processore di un numero ridotto di istruzioni,
ma di renderle estremamente efficienti, in modo che
combinando queste semplici istruzioni si potranno
ottenere programmi estremamente complessi che
vengono eseguiti a velocita’ molto elevate. L’obiettivo
seguito per passare da architetture CISC a RISC, e’ stato
certamente quello di minimizzare il tempo macchina di
esecuzione di una istruzione .
•
CISC o RISC
Codice assembler per l'operazione di moltiplicazione fra due valori
immagazzianti in memoria centrale:
Filosofia RISC
MOV A, %100; muovi (move) nel registro A il contenuto della cella 100
MOV B,%230; salva in un altro registro, detto B, il contenuto della cella 230
MUL C,A,B; moltiplica A per B e scrivi il risultato nel registro C
STR C, %300; scrivi (store) il valore di C nella cella numero 300
MUL %300,%230,%100
per impartire l'ordine al processore di salvare il contenuto della memoria nei registri,
fare la moltiplicazione e scrivere il risultato nuovamente in memoria. Bel risparmio
di mal di testa per i programmatori in assembler! E bel risparmio per la ditta
produttrice di software che impiegherà molto meno tempo per correggere eventuali
bachi nel programma, portando al pubblico il prodotto finito in tempi più rapidi!
ISA (instruction set architecture ) Insieme delle istruzioni assembler che caratterizzano l’architettura del processore
RISC VS CISC
La vera differenza tra RISC e CISC è la filosofia di funzionamento. In una
macchina RISC le uniche operazioni in grado di accedere alla memoria sono le
operazioni di LOAD e di STORE, tutte le altre utilizzano solo i registri, mentre in
una macchina CISC le operazioni possono accedere ai registri e alla memoria
indifferentemente. Questo non è possibile direttamente, quindi una macchina
CISC quando un'operazione richiede di accedere alla memoria il processore
carica il dato lo salva temporaneamente in un registro (spesso nascosto) esegue
le operazioni e poi salva il risultato in memoria. In sostanza: una macchina CISC
mette in piedi un teatro illusorio per fornire al programmatore un ambiente
comodo; una macchina RISC non fornisce questo teatro illusorio al
programmatore dato che questo comunque non programma quasi mai in
assembly e dato che queste operazioni nascoste in realtà rallentano il
processore nell'eseguire le altre operazioni. Spesso le architetture RISC
vengono definite anche architetture load/store per evidenziare la differenza
fondamentale con le architetture CISC ed evitare fraintendimenti.
MQ 45
STRUTTURA DI UNA MEMORIA
CENTRALE
MQ 46
Memoria cache
Storicamente le CPU sono sempre state più veloci delle memorie. Man
mano che sono migliorate le memorie sono migliorate anche le CPU e
quindi si è mantenuta la differenza. Quando la CPU ha inviato una
richiesta alla memoria, la parola che serve non arrivera’ se non dopo molti
cicli di CPU. Più la memoria e’ lenta, più cicli dovrà aspettare la CPU.
PERCHE NON COSTRUIRE MEMORIE VELOCI COME LA CPU?
In effetti la tecnologia lo permette, ma esiste un problema: per poter
essere veloci come le CPU, queste memorie dovrebbero trovarsi sullo
stesso CHIP della CPU (perché la connessione via bus alla memoria è
lenta). Tale soluzione inoltre farebbe aumentare il volume del chip (CPU +
memorie) e ne farebbe aumentare anche il costo. La soluzione per tale
problema e’ un compromesso che prevede la presenza di una piccola
memoria veloce nello stesso CHIP che contiene la CPU e una o piu’
memorie lente all’esterno della CPU collegate tramite bus .
MQ 47
Memoria cache I
Questo tipo di memoria veloce si chiama cache (dal francese cacher che significa
nascosto) di transito tra RAM e CPU, che velocizza gli accessi ai dati e alle
istruzioni.
Si tratta di una memoria ad alta velocita’ (alcuni nanosecondi) che puo’
rispondere alle richiesta di lettura oppure filtrare le richieste di scrittura verso la
memoria centrale senza imporre stati di attesa al processore. Uno stato di attesa e’
un ciclo di clock durante il quale il processore sospende l’elaborazione e attende il
completamento di una richiesta di lettura o scrittura sulla memoria.
Pertanto quando la CPU deve accedere ad un indirizzo di memoria, accede prima
alla cache; nel caso in cui questo non sia presente nella cache si verifica un
fallimento di accesso, allora lo preleva dalla memoria centrale e lo ricopia nella
memoria cache insieme ad un prefissato MQ numero di locazioni contigue 48
MEMORIA STATICA (LATCH SR)
Circuito sequenziale che ha la capacita’ di
memorizzare un bit.
S= SET R = RESET
S=1 pone Q =1
R=1 pone Q=0
Ta = Th*Ph + Tm*(1-Ph)
Th = tempo di accesso ad un dato presente in cache
Tm = tempo medio di accesso ad un dato non in cache
(funzione della dimensione del blocco)
Ph = probabilità di hit(successo)
(funzione della dimensione del blocco e della politica di
gestione)
MQ 50
Memoria cache II
Il successo di tale soluzione( Principio di localita’) dipende dal fatto che il più delle
volte (tranne nei casi di salto) gli indirizzi di memoria successivamente generati
durante l'esecuzione di un programma formano gruppi contigui.
-La cache di primo livello o interna: garantisce un flusso continuo all’interno del
processore;
(La capacità tipica della cache di primo livello è di circa 32-64 KB).
- La cache di secondo livello o esterna che serve per superare la lentezza della
memoria centrale
(La capacità tipica della cache di secondo livello è di 128K- 2MB).
Dimensioni tipiche in un PC-2002
•Registri 16,32,64 bit
•Cache di primo livello 64 KB
•Cache 512 KB si secondo livello
•Ram 256MB
• HD 40GB
La memoria cache e’ detta anche SRAM ( RAM STATICA). E’composta da un
numero maggiore di transistor ed e’ quindi piu’ voluminosa (a parita’ di numero
di byte) MQ 51
La memoria secondaria
• La memoria principale non può essere troppo
grande a causa del suo costo elevato .
• Non consente la memorizzazione permanente
dei dati (volatilità)
• Per questi motivi sono stati introdotti due tipi
di memoria:
– Memoria principale veloce, volatile, di dimensioni
relativamente piccole;
– Memoria secondaria, più lenta e meno costosa,
con capacità di memorizzazione maggiore ed in
grado di memorizzare i dati in modo permanente
La memoria secondaria
• La memoria secondaria viene utilizzata per
mantenere tutti i programmi e tutti i dati che
possono essere utilizzati dal computer
• La memoria secondaria viene anche detta
memoria di massa
• Quando si vuole eseguire un certo
programma, questo dovrà essere copiato
dalla memoria di massa a quella principale
(caricamento)
La memoria secondaria
• La memoria secondaria deve avere
capacità di memorizzazione permanente e
quindi per la sua realizzazione si utilizzano
tecnologie basate sul magnetismo (dischi
e nastri magnetici) o tecnologie basate
sull'uso dei raggi laser (dischi ottici)
• Nel primo caso si sfrutta l’esistenza di
sostanze che possono essere
magnetizzate.
La memoria secondaria
• La magnetizzazione è permanente fino a quando non
viene modificata per effetto di un agente esterno.
• I due diversi tipi di magnetizzazione corrispondono alle
due unità fondamentali di informazione (bit).
• Le tecnologie dei dischi ottici sono completamente
differenti e sono basate sull'uso di raggi laser.
• Il raggio laser è un particolare tipo di raggio luminoso
estremamente focalizzato che può essere emesso in
fasci di dimensioni molto ridotte.
Caratteristiche dei vari tipi di memoria secondaria
• I supporti di memoria di massa sono molto più lenti
rispetto alla memoria principale (presenza di
dispositivi meccanici).
• Le memorie di massa hanno capacità di
memorizzazione (dimensioni) molto maggiori di
quelle delle tipiche memorie principali
• Il processore non può utilizzare direttamente la
memoria di massa per l'elaborazione dei dati
• Il programma in esecuzione deve essere in
memoria principale e quindi le informazioni
devono essere trasferite dalla memoria
secondaria a quella principale ogni volta che
servono
Caratteristiche dei vari tipi di memoria
secondaria
• Nel caso della memoria principale si ha
sempre l'accesso diretto ai dati, nel caso
della memoria secondaria solo alcuni
supporti consentono l'accesso diretto mentre
altri supporti permettono solo l'accesso
sequenziale.
• La memoria principale consente di indirizzare
il singolo byte di informazione, nelle memorie
di massa le informazioni sono organizzate in
blocchi di dimensioni più grandi, di solito da 1
KByte in su.
I dischi magnetici
• I dischi magnetici sono i dispositivi di
memoria secondaria più diffusi
• Sono dei supporti di plastica o vinile, su cui è
depositato del materiale magnetizzabile
• Nel corso delle operazioni i dischi vengono
mantenuti in rotazione a velocità costante e
le informazioni vengono lette e scritte da
testine del tutto simili a quelle utilizzate nelle
cassette audio/video
• Entrambi i lati di un disco possono essere
sfruttati per memorizzare le informazioni
I dischi magnetici
• I dischi sono suddivisi in tracce concentriche e settori, ogni settore è una
frazione di traccia. I settori suddividono ogni traccia in porzioni di
circonferenza dette blocchi (o record fisici). Piu’ settori rappresentano un
cluster.
I dischi magnetici
• La suddivisione della superficie di un disco in
tracce e settori viene detta formattazione
• Il blocco (o il cluster) è dunque la minima unità
indirizzabile in un disco magnetico e il suo
indirizzo è dato da una coppia di numeri che
rappresentano il numero della traccia e il
numero del settore ( o del cluster).
• I dischi magnetici consentono l'accesso diretto
in quanto è possibile posizionare direttamente la
testina su un qualunque blocco senza dover
leggere quelli precedenti
Struttura di un settore
preambolo dati
dati ECC
MQ 61
•
I dischi magnetici
Per effettuare un'operazione di lettura (scrittura) su un blocco è
necessario che la testina raggiunga l'indirizzo desiderato
(cilindro,traccia,settore)
• Il tempo di accesso alle informazioni sul disco è dato dalla somma di tre
tempi dovuti a:
– Tempo di posizionamento(seek time) : spostamento della testina in
senso radiale fino a raggiungere il cilindro e quindi la traccia
interessata (seek time);
I valori di seek time variano in funzione della traccia di partenza e
quella di destinazione; per questo motivo il costruttore dovrebbe
fornire il tempo minimo e il tempo medio di posizionamento;
I valori di seek time minimo e medio dipendono dalla qualita’
elettromeccanica del dispositivo .
Esempio: Disco per portatili seek time minimo= 1,0 ms
seek time medio = 9,5 ms
Esiste anche un tempo di overhead del controller, ovvero il tempo che intercorre tra la richiesta
al controller e l’inizio della esecuzione del comando da parte del controller. Questo tempo è di
circa 0,2 millisecondi e spesso si trascura nei calcoli.
I dischi magnetici (cont.)
Esempio
Conoscendo la velocita’ di rotazione di un disco VRPM ( giri al minuto )
(X )
T(trasmissione di X byte ) =
(VRPs ) * ( N Bpt )
MQ 68
Registrazione di un bit sul disco rigido
Fino al 2005 circa la memorizzazione di un bit veniva effettuata tramite un
campo magnetico di intensità adeguata per poter allineare, in senso
longitudinale, i domini magnetici del materiale magnetizzabile.
Una nuova tecnica chiamata Perpendicular recording permette di
magnetizzare il supporto di registrazione in senso perpendicolare.
Questa tecnica è in grado di aumentare fino a dieci volte la capacità di
memorizzazione di un hard disk.
MQ 69
Memorie a stato solido(ssd)
SSD dal termine inglese Solid-State Drive
MQ 70
Memorie a stato solido (..)
- Tecnicamente, sono particolari tipi di EEPROM
(Electronically Erasable Programmable Read-Only
Memory): possono non solo essere lette, ma anche
riscritte. Tuttavia, la riscrittura avviene a livello di interi
blocchi di dati, ossia anche i dati non modificati del blocco
vanno riscritti.
MQ 74
Svantaggi per gli ssd
-Costo maggiore: A parità di capienza un SSD costa
molto più di un HDD, anche 10 volte di più.
MQ 75
DIFFERENZA TRA MEMORIA SECONDARIE E
MEMORIE CENTRALI
MQ 76
DIFFERENZA TRA MEMORIA SECONDARIE E
MEMORIE CENTRALI (2)
MQ 77
I dischi magnetici-FLOPPY
• I floppy disk (dischetti flessibili) sono supporti
rimovibili non rigidi di materiale plastico e ricoperti
da un piccolo strato di sostanza magnetizzabile.
• Hanno tempi di accesso di circa 500ms ( la testina
tocca la superficie , questo crea problemi di surriscaldamento)
• Velocita’ di rotazione : circa 300 rpm ( tenere
presente che i floppy sono soggetti a continue
variazioni di velocita’ poiche’ si fermano quando la
trasmissione dati finisce)
• I comuni floppy disk da 3.5" hanno capacità di
memorizzazione di 1.4 Mbyte ( 80 tracce 18 settori
per traccia su ogni faccia)
1 settore=512 bytes
I dischi ottici
• I dischi ottici sono basati sull’uso di un raggio
laser per le operazioni di lettura;
• Quasi tutte le unità per dischi ottici consentono
solamente operazioni di lettura poiché la
scrittura è un'operazione complicata, che
richiede delle modifiche fisiche del disco.
• Quando le unità consentono la scrittura, i dischi
ottici generalmente possono essere scritti una
sola volta perché le modifiche fisiche che
avvengono durante la fase di scrittura sono
irreversibili
DISCO OTTICO
MQ 80
I dischi ottici
• I dischi ottici vengono usati solitamente
per la distribuzione dei programmi e come
archivi di informazioni che non devono
essere modificate;
• Le dimensioni tipiche per i dischi ottici
utilizzati oggi vanno dai 500 MByte in su,
fino a uno o più GByte
• I dischi ottici hanno costo inferiore e sono
molto più affidabili e difficili da rovinare.
I dischi ottici (…continua)
Il dispositivo è costituito da un piatto rigido su cui viene
proiettato un raggio laser la cui potenza (ordine dei
milliwatt) dipende dal tipo di operazione effettuata
(lettura, scrittura, cancellazione per riscrittura). La
riflessione cambia quando si incontrano piccole
depressioni nel substrato (PIT < 1µ) rispetto alla
superficie (LAND).
ATTENZIONE! Non bisogna identificate il PIT con 0 e
il LAND con 1 . Il valore digitale 1 viene associato
ad una variazione tra PIT e LAND oppure tra LAND e
PIT, mentre il valore 0 significa nessuna variazione.
MQ 82
MQ 83
I dischi ottici (…continua)
Le possibili organizzazioni sono fondalmente due:
CD (Compact Disc)
• L’informazione è memorizzata in un’unica traccia a spirale
lungo la quale la densità di scrittura è costante (1,66/micron
pari a 42 kbit/pollice), in questo modo la superficie è sfruttata
al massimo. La distanza tra 2 giri successivi della
spirale(track pitch) e’ di 1,6 micron.
Il disco ruota a velocita’ lineare costante (CLV). A
seconda della posizione dei dati da leggere la velocita’ di
rotazione varia da 200 a 500 giri al minuto (1x velocita’ di
base 1,2 m/s).Tale velocita’ e’ determinata dal bit rate
necessario per la riproduzione dei brani musicali
(~150KB/sec). Ma per applicazioni digitali tale velocita’ risulta
troppo bassa. Sono presenti ormai da molti anni dispositivi
con velocita’ multipla indicati con 2X, 4X,.. 30X..40X..
MQ 84
I dischi ottici CAV (…continua)
Il disco ruota a velocita’ angolare costante
CAV(Constant Angular Velocity )
MQ 85
I CD-Recordable
Sono CD registrabili solo una volta. Due strati
di policarbonato racchiudono un sottilissimo
foglio dorato ricoperto di pittura traslucida che
si comporta come la parte LAND dei CD. La
registrazione consiste nel bruciare punti nello
strato di pittura. E’ possibile effettuare
registrazioni in piu’ sessioni, anche se le
sessioni sono separate da spazi detti GAP,
che sprecano tuttavia una grande quantita’ di
spazio.
MQ 86
I CD-RW (rewritable)
Sono CD cancellabili e riscrivibili. Usano la
tecnologia del phase change( con potenze
laser differenti 8 o 18 milliwatt si trasforma
una zona da cristallina ad amorfa e
viceversa). La lettura avviene proiettando un
raggio laser di bassa potenza che viene
riflesso in modo diverso a seconda che il
punto si trovi in uno stato cristallino o amorfo.
MQ 87
DVD
• DVD (Digital Versatile Disk) o (Digital
Video Disk)
– Capacità attuale di ~5GB
– I PIT sono piu’ piccoli ( 0.4µ)
– Possono essere a due strati e a due facce.
• DVD-R scrivibili solo una volta
• DVD-RAM leggibili e scrivibili ( hanno
bisogno di un supporto in cui sono inseriti)
• Possono impiegare dispositivi sia CAV che
CLV MQ 88
IL DISPOSITIVO DVD
MQ 89
confronto DVD E CD-ROM
DVD CD
Diametro del disco 120 mm 120 mm
Spessore del disco 1.2 mm (0.6 mm x 2) 1.2 mm
Numero di superfici 1 or 2 1
Numero di strati 1 or 2 1
Dimensione min.piazzole 0.4 micron 0.834 micron
Larghezza traccia 0.74 micron 3.058 micron
Vel. media di trasf. 4.7 Mbyte/sec 0.15 Mbyte/sec
Capacità (1 strato,1 sup.) 5 Gbyte 0.682 Gbyte
Capacità (2 strati, 2 sup.) 17 Gbyte
Laser wavelength 640 nanometri 780 nanometri
MQ 90
Prestazioni memoria
Tipo Dimensioni Tempo MB/sec
Registro < 1KB < 0,5ns 20 000 ~ 100 000
Cache < 2MB < 10ns 5000 ~ 10 000
RAM < 4GB < 50ns 1000 ~ 5000
EEprom 1G .. 128GB < 100ns 2 ~ 1000
Dischi > 50GB < 10ms 20 ~ 80
Nastri >10GB ~ 100ms ~1
MQ 91
DISPOSITIVI DI I/O
MQ 92
I dispositivi di I/O
I dispositivi di I/O rappresentano l’interfaccia del calcolatore verso l’ambiente esterno
Possiamo classificare i dispositivi esterni in tre grandi categorie:
1) DISPOSIT. DECIFRABILI DALL’UOMO:
adatti alla comunicazione con l’utente del calcolatore
(es: terminali e stampanti)
2) DISPOSIT. DECIFRABILI DALLA MACCHINA: :
adatti alla comunicazione con le apparecchiature
(es: dischi, nastri, sensori, attuatori etc..)
3) DISPOSITIVI DI COMUNICAZIONE:
adatti alla comunicazione con i dispositivi remoti.
(es. schede di rete, disp wireless, infrarossi etc..)
MQ 93
Funzioni del modulo I/O
• Controllo & Temporizzazione
• Comunicazione con CPU
• Comunicazione con i dispositivi
• Buffering dei dati
• Rilevazione degli errori
MQ 94
Passi di I/O (versione semplificata)
MQ 95
MODULO DI I/O
MQ 96
Il CONTROLLER
Riceve gli ordini dal microprocessore e li
impartisce al dispositivo fisico;
Risiede su un circuito stampato ed è solitamente
esterno all’unità periferica ed all’interno dello
chassis;
Il collegamento tra il controller e la periferica
avviene attraverso opportuni connettori.
MQ 97
Il device driver
MQ 98
Porte
Le periferiche sono collegate fisicamente
al computer attraverso opportune prese
(porte).
La modalità di collegamento può essere
seriale (trasferito un bit alla volta) oppure
parallela (trasferito più di un bit alla volta).
MQ 99
Porte tipi
• Seriale: serve per il modem o alcuni tipi
di stampanti che non richiedono una
elevata velocità di trasmissione. I cavi
possono avere lunghezza anche di 300 m.
• Parallela: per stampanti e alcuni
dispositivi di memoria di massa. La
lunghezza massima consentita ai cavi è di
30 m
MQ 100
Porte tipi
• SCSI (Small Computer Standard Interface)
• Permettono di collegare più componenti alla stessa porta
• Garantiscono una elevata velocità di trasmissione
• Utilizzate per disco fisso, lettore CD-ROM, scanner.
MQ 101
Porte tipi
Firewire
• Hanno le stesse caratteristiche di base delle USB
• Sono però più affidabili delle USB1 e usb2, ma anche
più costose
MQ 102
PORTE
MQ 103
I dispositivi di input/output
• Una caratteristica comune a tutti i dispositivi di
I/O è quella di operare in modo asincrono
rispetto al processore
– Consideriamo una tastiera che produce dei dati di
input. Il processore non è in grado di prevedere e di
controllare il momento in cui un dato di input sarà a
disposizione
– Allo stesso modo, il processore non può prevedere il
momento in cui un dispositivo in output avrà terminato
di produrre i dati in uscita
• Sono pertanto necessarie delle forme di
sincronizzazione tra i dispositivi e il processore
I dispositivi di input/output
• Un dispositivo di input deve avvertire il
processore quando un dato di input è disponibile
• Un dispositivo di output deve avvertire il
processore quando ha terminato di produrre dati
in uscita
• Le operazioni di sincronizzazione delle attività
sono fondamentali nell'interazione tra il
processore e i dispositivi
• I dispositivi che hanno terminato un'operazione
inviano al processore un segnale, detto
interrupt, per richiedere l'attenzione del
processore stesso
I dispositivi di input/output
• Ad ogni ciclo di clock, l'unità di controllo, prima di
iniziare l'esecuzione della prossima istruzione del
programma in corso, verifica se è arrivato un
segnale di interrupt da parte di qualche dispositivo
MQ 109
I dispositivi di input/output: tastiera
• La tastiera è un dispositivo di input cieco, nel
senso che l'utente non può vedere i dati immessi
nel calcolatore
• Per questa ragione la tastiera è utilizzata
insieme ad un dispositivo di output su cui
vengono visualizzate le informazioni fornite
tramite tastiera
• La tastiera e il video non sono direttamente
collegati tra loro: è compito del processore
riprodurre sul video tutte le informazioni
fornite in input tramite la tastiera
I dispositivi di input/output: il
terminale
• Dal punto di vista fisico, un video può
essere visto come una matrice di punti
illuminati con diversa intensità
• Ogni punto sullo schermo prende il nome
di pixel e un'immagine viene quindi
composta accendendo o spegnendo i pixel
sullo schermo
• Ci sono video in bianco e nero o a colori e
inoltre si deve distinguere tra video a
carattere, e video grafici
I dispositivi di input/output: il
terminale
• Oggi sono comuni video con un numero di colori che
vanno da 256 (8 bit) fino a 16 milioni(24 bit).
• Esistono video a diversi livelli di risoluzione, cioè con
diverse densità di pixel; nei personal sono oggi comuni
video con risoluzioni che vanno da 640X480 fino a
4096X3300 pixel (altissima risoluzione)
• La dimensione di un video viene misurata in pollici e fa
riferimento alla lunghezza della diagonale
• Ad esempio, quando si parla di un video a 14 pollici,
indicati come 14", si intende un video con una diagonale
lunga 14 pollici (1 pollice vale circa 2,54 cm )
I dispositivi di input/output: il mouse
• Oggi quasi tutti i computer hanno un dispositivo di
puntamento detto mouse .
• Benche’ i mouse si possano organizzare in vari modi, quello
più diffuso è un dispositivo che invia 3 byte ( a volte 6) al
calcolatore ogni volta che si sposta di una distanza minima
( per esempio 0,01 pollici detta michey) .
Il primo byte consiste in un numero che definisce di quante
unita’ il mouse si e’ spostato nella direzione dell’asse x negli
ultimi 100 millisecondi; il secondo byte e’ la stessa
informazione per lo spostamento y; il terzo byte contiene
informazioni sullo stato dei pulsanti del mouse. Il software di
controllo (device driver) sovrintende alla comunicazione con
l’unita’ centrale.
Mouse Ottico
MQ 117
BUS
• UN BUS E’ UN CANALE DI COMUNICAZIONE
CONDIVISO FRA PIU’ PERIFERICHE
• I COMPONENTI DI UN COMPUTER
(CPU, memorie, dispositivi di I/O)
COMUNICANO TRA LORO MEDIANTE UNO O
PIU’ BUS.
• LE PRESTAZIONI DEI BUS INFLUENZANO IN
MANIERA DETERMINANTE LE PRESTAZIONI
DEL SISTEMA.
MQ 118
MQ 122
MQ 123
I BUS PIU’ DIFFUSI
ISA = Industry Standard Architecture | USB = Universal Serial Bus | IDE= Integrated Device Electronics
EISA = Extended ISA | VESA = Video Electronics Standards Association
PCI = Peripheral component interconnect | SCSI= Small Computer Standard Interface
AGP= Accelerated Graphics Port | PCMCIA = Personal Computer Memory Card International Association
MQ 124
ARCHITETTURA DI UN PC MODERNO
MQ 125
BUS SINCRONI E ASINCRONI (NOTA
MQ 126
BUS SINCRONI e ASINCRONI (NOTA)
MQ 127
MQ 128
GERARCHIA DELLE MEMORIE
MQ 129
MQ 130
Sommario memorie
Tipo Dimensioni T. accesso Volatile?
Registri < 1KB < .5 ns si
Cache < 1MB < 10ns si
RAM < 1GB < 100ns si
Dischi > 50 GB 10 ms ca. No
No
Nastri > 10 GB 100 ms ca.
CD-ROM 650 MB 10 ms ca No
CD-RW
DVD 17 GB 10 ms ca No
MQ 131
(Digital Versatile Disc)
MQ 132
MQ 133
ESERCIZIO
MQ 134
PRESTAZIONI
Il processore
• Dati 2 processori con lo stesso linguaggio
macchina, risulterà più veloce quello con
frequenza di clock maggiore
• Non è possibile dire nulla su processori con
linguaggi macchina diversi come ad esempio
Pentium e PowerPC
MQ 135
PRESTAZIONI
Esempio
• 2 calcolatori A e B, il clock di A è 500MHz, quello di B
400MHz. Il linguaggio macchina di A richiede che A esegua
10 operazioni elementari per ogni istruzione, quello di B, 6
operazioni elementari per ogni istruzione. Supponiamo che
entrambi debbano eseguire un programma di 100M istruzioni
di linguaggio macchina.
A impiegherà 2s
B impiegherà 1,5s
Caso A(500Mhz) 10^8 istruzioni corrispondono a 10^8*10 = 10^9 op.elem = 2sec
Caso B(400Mhz) 10^8 istruzioni corrispondono a 10^8*6 op.elem = 6/4 sec = 1,5sec
La frequenza di clock non è quindi un indice assoluto per
quanto riguarda la bontà di un microprocessore.
MQ 136