Versione: 13/03/2007
Facoltà di Farmacia - Corso di Informatica 1
Struttura dei sistemi di calcolo
Riferimenti: Curtin cap. 3-5 Console cap. 3
Versione: 13/03/2007
Come prologo: la macchina divon Neumann
Nei primi computers l'inserimento dei datie dei programmi avveniva cambiando la posizione di interruttori o modificando la disposizione dei cavi che connettevano diverseunita' di calcolo
Versione: 13/03/2007
Versione: 13/03/2007
Idea di von Neumann: macchina “general pourposes” a programma memorizzato che viene specializzatadal processo introdotto dall'utente.
Programma memorizzato: il procedimentoviene descritto e inserito in una particolareunita' (memoria) insieme ai dati. L' inserimento avviene attraverso una particolare unita' di input.
memoriainputdati
programma
Versione: 13/03/2007
Adesso occorre una unita' che esegua le istruzioni: a livello elementare questoCompito e' svolto da una Arithmetical and Logical Unit (ALU)
memoriainputdati
programma
ALU
Versione: 13/03/2007
memoriainputdati
programma
ALU
Tutto cio' deve avvenire in maniera coerente ed ordinata: e' quindi necessariauna unita' di controllo
controllo
Versione: 13/03/2007
memoriainputdati
programma
ALU controllo
Infine i risultati dell' elaborazione debbono essere resi disponibili attraverso una unita' di output
output
Versione: 13/03/2007
Piu' schematicamente ....
Facoltà di Farmacia - Corso di Informatica 9
Tipi di calcolatori• Computer multiutente
(multiuser)– supercomputersupercomputer: i più potenti,
basati su centinaia o migliaia di processori che lavorano in parallelo
– mainframe e servermainframe e server: svolgono funzioni centralizzate; ad essi sono collegati altri computer o terminali
Facoltà di Farmacia - Corso di Informatica 10
Tipi di calcolatori• Computer multiutente
(multiuser)– minicomputerminicomputer: simili a
mainframe ma meno potenti
– terminaliterminali: postazioni senza capacità di elaborazione, devono essere collegati a un server
Facoltà di Farmacia - Corso di Informatica 11
Tipi di calcolatori• Personal computer
– desktop e workstationdesktop e workstation: computer da scrivania
– notebooknotebook: computer portatili, di potenza confrontabile a quella di un desktop; in casa e ufficio possono essere inseriti in una docking station
Facoltà di Farmacia - Corso di Informatica 12
Tipi di calcolatori• Personal computer
– palmtoppalmtop: computer tascabili, hanno tastiere di ridotte dimensioni
– PDA (personal digital PDA (personal digital assistant)assistant): i più piccoli, privi di tastiera, molto semplici, ad esempio organizer
Facoltà di Farmacia - Corso di Informatica 13
Architettura dell’elaboratore
Esamineremo la struttura dell’elaboratore, analizzando le funzionalità di ogni suo componente
Vedremo come funzionano i dispositivi che costituiscono la macchina a un livello intermedio di dettaglio
Facoltà di Farmacia - Corso di Informatica 14
Architettura dell’elaboratore
Facoltà di Farmacia - Corso di Informatica 15
Architettura dell’elaboratore
Prese sul retro (porte)
Facoltà di Farmacia - Corso di Informatica 16
Architettura dell’elaboratore
CPU
Facoltà di Farmacia - Corso di Informatica 17
Architettura dell’elaboratore
Memoria RAM
Fisicamente CPU e RAM sono formate da sottili lamine di silicio (chips) che contengono componenti elettronici (transistor, resistenze, condensatori) miniaturizzati.
Ogni unità elementare può trovarsi a due diversi livelli di tensione elettrica (o carica del condensatore) oppure nello stato acceso/spento : ecco il corrispettivo fisico del bitbit
Facoltà di Farmacia - Corso di Informatica 19
Architettura dell’elaboratore
Dispositivi di memorizzazione
Facoltà di Farmacia - Corso di Informatica 20
Architettura dell’elaboratore
Bus di sistema
Facoltà di Farmacia - Corso di Informatica 21
L’hardware
Funzioni di base di un elaboratore:•elaborare l’informazione
• memorizzare l’informazione
• eseguire input/output dell’informazione
– usando il processore (Central Processing Unit, CPU)
– usando la memoria principale (RAM)– usando la memoria secondaria
– usando i dispositivi di input/output
Facoltà di Farmacia - Corso di Informatica 22
Elementi della macchina di von Neumann
CPU RAM
dispositivi di input/outputmemoria secondaria
Facoltà di Farmacia - Corso di Informatica 23
La scheda madre (motherboard)
Facoltà di Farmacia - Corso di Informatica 24
La scheda madre (motherboard)
CPUCPU
Facoltà di Farmacia - Corso di Informatica 25
La scheda madre (motherboard)
CPUCPU
RAM
Facoltà di Farmacia - Corso di Informatica 26
L’hardware
RAM
dispositivi di input/outputmemoria secondaria
CPU
Facoltà di Farmacia - Corso di Informatica 27
L’hardware
RAMCPU
dispositivi di input/outputmemoria secondaria
elaborare
Facoltà di Farmacia - Corso di Informatica 28
L’hardware
RAM
memorizzarememorizzare
dispositivi di input/outputmemoria secondaria
CPU
elaborare
Facoltà di Farmacia - Corso di Informatica 29
L’hardware
RAM
memorizzarememorizzare
interagire
dispositivi di input/outputmemoria secondaria
CPU
elaborare
Facoltà di Farmacia - Corso di Informatica 30
Funzionamento ad alto livello
RAMCPU
dispositivi di input/outputmemoria secondaria
Facoltà di Farmacia - Corso di Informatica 31
Funzionamento ad alto livello
RAMCPU
dispositivi di input/outputmemoria secondaria
1) All’avvio dell’elaboratore, programmiprogrammi (almeno il S.O.) e datidati (se ce ne sono) risiedono in memoria secondaria
1
Facoltà di Farmacia - Corso di Informatica 32
Funzionamento ad alto livello
RAM programmie dati
CPU
dispositivi di input/outputmemoria secondaria
2) I programmi per essere eseguiti devonodevono essere portati in memoria principaleportati in memoria principale . Così anche
i dati per essere utilizzati dai programmi
1
2
Facoltà di Farmacia - Corso di Informatica 33
Funzionamento ad alto livello
RAM programmie dati
CPU
dispositivi di input/outputmemoria secondaria
3) La CPU (Central Processing Unit) esegue i programmi eseguendo le istruzionieseguendo le istruzioni di cui sono composti
1
23
Facoltà di Farmacia - Corso di Informatica 34
Funzionamento ad alto livello
RAM programmie dati
CPU
dispositivi di input/outputmemoria secondaria
4) Avviene l’input/output e la memorizzazione su memoria secondaria
1
23
4 4
Facoltà di Farmacia - Corso di Informatica 35
Analizziamo i vari componenti…
RAMCPU
dispositivi di input/outputmemoria secondaria
Facoltà di Farmacia - Corso di Informatica 36
Analizziamo i vari componenti…
CPURAM
dispositivi di input/output
memoria secondaria
Facoltà di Farmacia - Corso di Informatica 37
La memoria principale
• Insieme alla CPU, è una componente fondamentale del calcolatore.
• Permette di memorizzare sia il programma che i dati.
Facoltà di Farmacia - Corso di Informatica 38
• E’ strutturata in una sequenza di celle (o locazioni) di memoriacelle (o locazioni) di memoria
La memoria principale
Facoltà di Farmacia - Corso di Informatica 39
• E’ strutturata in una sequenza di celle (o locazioni) di memoriacelle (o locazioni) di memoria
00100111
11001001
00010100
10011101
…
10100110
La memoria principale
Facoltà di Farmacia - Corso di Informatica 40
• E’ strutturata in una sequenza di celle (o locazioni) di memoriacelle (o locazioni) di memoria
00100111
11001001
00010100
10011101
…
10100110
La memoria principale celle
Facoltà di Farmacia - Corso di Informatica 41
• E’ strutturata in una sequenza di celle (o locazioni) di memoriacelle (o locazioni) di memoria• Ogni cella memorizza un byte
00100111
11001001
00010100
10011101
…
10100110
La memoria principale celle
Facoltà di Farmacia - Corso di Informatica 42
• E’ strutturata in una sequenza di celle (o locazioni) di memoriacelle (o locazioni) di memoria• Ogni cella memorizza un byte
00100111
11001001
00010100
10011101
…
10100110
La memoria principale celle
Facoltà di Farmacia - Corso di Informatica 43
• E’ strutturata in una sequenza di celle (o locazioni) di memoriacelle (o locazioni) di memoria• Ogni cella memorizza 1 byte•Le celle sono numerate in sequenza: indirizzoindirizzo •Una parola di memoria e' un insieme di 2, 4, od 8 byte sul quale si puo' operare (leggere o scrivere) come su di un blocco unico
00 00100111
11 11001001
22 00010100
33 10011101
…… …
NN 10100110
00100111
11001001
00010100
10011101
…
10100110
La memoria principale celle
indirizzi
Facoltà di Farmacia - Corso di Informatica 44
La memoria principale
• Quali operazioni si possono compiere sulla memoria?
– lettura del contenuto di una cella– scrittura in una cella
• Per leggere e scrivere in una cella è necessario conoscerne l’indirizzoindirizzo• Specificando l’indirizzo di una cella, la CPU è in grado di leggere e/o modificare il valore del byte memorizzato in quella cella
00 00100111
11 11001001
22 00010100
33 10011101
…… …
NN 10100110
Facoltà di Farmacia - Corso di Informatica 45
La memoria principale
Es.: una RAM di 65536 (216) celle di un byte ciascuna
00 00100111
11 11001001
22 00010100
33 10011101
…… …
65.53565.535 10100110
Quanti bit per esprimere un indirizzo compreso tra 0 e 65535?
16!
Facoltà di Farmacia - Corso di Informatica 46
Dimensioni della memoria
• Lo Spazio di indirizzamentoSpazio di indirizzamento è l’insieme o il numero delle celle indirizzabili direttamente• Il numero di celle indirizzabili è una potenza di 2; con:– 16 bit si indirizzano 216 = 65.536 celle– 32 bit si indirizzano 232 = 4.294.967.296 celle …
• numero di celle indirizzabili = numero di informazioni rappresentabile con un certo numero di bit
Facoltà di Farmacia - Corso di Informatica 47
Dimensioni della memoria
• L’unità di misura della memoria è il byteSi usano dei multipli:
– KilobyteKilobyte (KB) = 1024 byte (210 byte)– MegabyteMegabyte (MB) = 1024 KB (220 byte)– GigabyteGigabyte (GB) = 1024 MB (230 byte)
• Quindi:– con 16 bit si indirizzano 64 KB di memoria– con 32 bit si indirizzano 4 GB di memoria
Facoltà di Farmacia - Corso di Informatica 48
Dimensioni della memoria
• La dimensione tipica della RAM nei Personal Computer è:
–256 MB, 512 MB, 1 GB, 2 GB, 4 GB– una volta gli elaboratori più potenti avevano 64 KB!!! Ad esempio questi
–
–
–• La memoria è espandibile fino a un limite fisico (slot sulla scheda madre per ospitare i chip di memoria) e ha anche un limite massimo dovuto al sistema
Facoltà di Farmacia - Corso di Informatica 49
La RAM
• Random Access Memory (RAM)(RAM): memoria ad accesso casuale• Perché si chiama “ad accesso casuale”?
– Si può accedere direttamente alle varie celle, una volta noto il loro indirizzo– Il tempo necessario per accedere ad una cella è lo stesso, indipendentemente dalla posizione della cella nella sequenza– Il termine “random” (casuale) indica proprio il fatto che non vi sono penalità in termini di tempo se si accede alla memoria in modo casuale anziché sequenziale.
Facoltà di Farmacia - Corso di Informatica 50
La RAM
• La RAM è veloceveloce:
il tempo di lettura/scrittura di una cella è compreso – in media – tra 5 e 30 nanosecondi (miliardesimi di secondo = 10-9 s)
• La RAM è volatilevolatile:
formata da componenti elettronici, se viene tolta l’alimentazione anche per un breve periodo di tempo (frazioni di secondo) tutto ciò che contiene viene perso (e la macchina deve ripartire)
• La RAM è relativamente costosacostosa
Facoltà di Farmacia - Corso di Informatica 51
La ROM
• Read-Only MemoryRead-Only Memory, memoria in sola lettura• NonNon può essere modificata (a meno che non sia di un tipo particolare, EPROM)• NonNon è volatile• Veloce quasi quanto la RAM• Solitamente usata per memorizzare programmi e dati necessari all’avvio dell’elaboratore
– programmi di bootstrap (avvio dell’elaboratore)– configurazione del sistema
Von Neumann bottleneck
La rapidita' con cui sono eseguite le operazioni e' limitata criticamente dal tempo necessario per trasferire le informazioni dalla memoria alla CPU. Si crea cioe' un collo di bottiglia.
Soluzione del problema: sfruttare il principiodi localita'
Principio di localita'
Si sfrutta il principio di localita' inserendo fraLa CPU e la RAM una memoria (relativamente)piccola
Facoltà di Farmacia - Corso di Informatica 54
Memoria cacheMemoria cache: stesse proprietà della RAM, ma:• più veloce (ma più piccola e costosa) della RAM• localizzata tra la CPU e la RAM• memorizza i dati di uso più frequente, evitando alla CPU di doverli recuperare tutte le volte dalla RAM• influisce pesantemente sulle prestazioni e sul costo della CPU
– dimensioni tipiche sono 128 KB, 256 KB, 512 KB
Analogia:
A questo punto non dovrebbe essere difficilerispondere....
Facoltà di Farmacia - Corso di Informatica 56
Analizziamo i vari componenti…
RAMCPU
dispositivi di input/outputmemoria secondaria
Facoltà di Farmacia - Corso di Informatica 57
La CPU• Esegue programmi scritti in linguaggio macchina• Tutti i programmi, anche Word, Excel, … internamente sono codificati in LM• I programmi sono sequenze di istruzioni in LM• Le istruzioni sono comandi elementari, ad esempio:
– somma due numerisomma due numeri– leggi dalla memorialeggi dalla memoria– scrivi in memoriascrivi in memoria– scrivi verso il dispositivo di outputscrivi verso il dispositivo di output– confronta due numericonfronta due numeri– … …
Facoltà di Farmacia - Corso di Informatica 58
CPU: Il set di istruzioni• Ogni tipo di processore è in grado di eseguire un numero limitato (centinaia) di istruzioni
• Le istruzioni si suddividono in
– aritmetiche, logiche
– di salto
– di lettura/scrittura in memoria
– di input/output
• Combinando in modo diverso sequenze anche molto lunghe di istruzioni (i programmi) si possono fare svolgere al computer compiti completamente diversi
Facoltà di Farmacia - Corso di Informatica 59
CPU: Compatibilità tra processori
• Processori diversi comprendono ed eseguono istruzioni diverse• Famiglie di processori: Intel, Motorola, Sun, ...
– in genere processori della stessa famiglia possono eseguire gli stessi programmi (compatibilità, non sempre)– processori di famiglie diverse NON possono eseguire gli stessi programmi (perché le istruzioni che capiscono sono diverse)
• Emulatore: consente l’esecuzione su un processore di programmi scritti per un altro
Facoltà di Farmacia - Corso di Informatica 60
La CPU
ControlUnit
ArithmeticLogicUnit
Registri
…
È formata da:
• Control UnitControl Unit
• Arithmetic Logic UnitArithmetic Logic Unit
• RegistriRegistri
Facoltà di Farmacia - Corso di Informatica 61
La CPU
ControlUnit
ArithmeticLogicUnit
Registri
…
Facoltà di Farmacia - Corso di Informatica 62
CPU: La CONTROL UNIT (CU)
È la parte più importante del processoreFunzioni:• esegue le istruzioni dei programmi• coordina le attività del processore• controlla il flusso delle istruzioni tra il processore e la memoria
NON ha il compito di controllare il risultato delle istruzioni!
Facoltà di Farmacia - Corso di Informatica 63
La CU svolge la sua attività in modo ciclico
Ciclo di fetch-decode-execute fetch-decode-execute (o ciclo della macchina):
1.1. FetchFetch (preleva): preleva dalla memoria principale la prossima istruzione da eseguire
2.2. DecodeDecode (decodifica): decodifica l’istruzione e preleva gli operandi specificati
3.3. ExecuteExecute (esegui): esegue l’istruzione utilizzando la componente opportuna, memorizza i risultati e ricomincia
Ciclo di fetch-decode-execute
Facoltà di Farmacia - Corso di Informatica 64
Ciclo di fetch-decode-execute
Facoltà di Farmacia - Corso di Informatica 65
CPU: La CONTROL UNIT (CU)
L’esecuzione (passo execute) comporta l’invio di comandi opportuni all’unità relativa:
• Calcoli → Arithmetic Logic Unit• Lettura/scrittura dati → memoria• Acquisizione/stampa → dispositivi di I/O
Facoltà di Farmacia - Corso di Informatica 66
CPU: La CONTROL UNIT (CU)
• La frequenza con cui è eseguito il ciclo di fetch-decode-execute è scandita dal clockclock (orologio interno):ad ogni impulso di clock la CU esegue un ciclo• La velocità di elaborazione di una CPU dipende dalla frequenza del suo clock• Es.: 2.8 GHz, cioè 2 miliardi e 800 milioni di cicli al secondo
Facoltà di Farmacia - Corso di Informatica 67
La CPU
ControlUnit
ArithmeticLogicUnit
Registri
…
Facoltà di Farmacia - Corso di Informatica 68
CPU: La ARITHMETIC LOGIC UNIT (ALU)
• Esegue le operazioni di tipo aritmeticoaritmetico (somme,...) e logicologico (confronti,...)• Preleva gli operandi dai registri e deposita il risultato delle operazioni in uno (o più) registri• Può essere affiancata da un coprocessore matematico
Facoltà di Farmacia - Corso di Informatica 69
La CPU
ControlUnit
ArithmeticLogicUnit
Registri
…
Facoltà di Farmacia - Corso di Informatica 70
CPU: I REGISTRI• Piccole celle di memoria (da 16, 32 o 64 bit) con tempi di accesso molto più bassi rispetto alla memoria primaria• Mantengono le informazioni necessarie per eseguire l’istruzione corrente• Sono in numero molto limitato (10, 20, 64 o 128), visto che sono all’interno della CPU• Si dividono in registri:
– generaligenerali– speciali speciali (PC, IR)
Facoltà di Farmacia - Corso di Informatica 71
CPU: I Registri generali• Sono in numero ridotto: 8, 16, 32, 64, 128... in funzione dell’architettura• Sono usati come celle di memoria celle di memoria temporaneatemporanea; contengono gli operandioperandi e i risultati risultati delle istruzioni del programma• In alcune architetture, alcuni registri hanno funzioni privilegiate; ad es. l’accumulatorel’accumulatore in genere contiene il risultato delle operazioni
Facoltà di Farmacia - Corso di Informatica 72
CPU: Il Program Counter (PC)
• È un registro specialespeciale• Contiene l’indirizzol’indirizzo in memoria principale della prossima istruzioneprossima istruzione da eseguire• Quando un programma viene avviato, l’indirizzo della prima istruzioneprima istruzione viene caricato nel Program Counter• All’esecuzione di un’istruzione, il PC viene modificato per contenere l’indirizzo della prossima istruzione da eseguire(non necessariamente quella immediatamente non necessariamente quella immediatamente successivasuccessiva)
Facoltà di Farmacia - Corso di Informatica 73
CPU: L’Instruction Register (IR)
• È un registro specialespeciale• Contiene l’istruzioneistruzione attualmente in esecuzione• La CUCU legge l’istruzione contenuta in IR e la esegue
Altri registri ...
Program Status Register (o program status word):contiene informazioni sullo stato del programma(ad es. se l'ultimo risultato e' negativo o zero oppurese si e' verificato un overflow)
Facoltà di Farmacia - Corso di Informatica 75
• Vediamo come le componenti della CPU interagiscono nell’esecuzione di un programma composto da due istruzioni di esempio:
ADD 3,4, che somma i numeri 3 e 4JUMP 1, che “salta” all’indirizzo 1OUT 3,77, che effettua l’output del
valore 77 verso il dispositivo 3 (per es., una stampante)
CPU: Esempio di ciclo fetch-decode-execute
Facoltà di Farmacia - Corso di Informatica 76
5…
CPU: Esempio di ciclo fetch-decode-execute
ADD 3, 4
RAM
5PC
IR
CPU01234
ControlUnit
ArithmeticLogicUnit
Ogni istruzione viene eseguita in un ciclo di fetch-decode-execute
Accumulatore
Facoltà di Farmacia - Corso di Informatica 77
5…
CPU: Esempio di ciclo fetch-decode-execute
ADD 3, 4
RAM
5PC
IR
CPU01234
ControlUnit
ArithmeticLogicUnit
1. Il registro PC contiene l’indirizzo 5, quindi viene letta da RAM l’istruzione all’indirizzo 5…
Accumulatore
Ciclo 1
Facoltà di Farmacia - Corso di Informatica 78
5…
CPU: Esempio di ciclo fetch-decode-execute
ADD 3, 4
RAM
5PC
ADD 3,4IR
CPU01234
ControlUnit
ArithmeticLogicUnit
2. … e memorizzata nel registro IR
fetch
Accumulatore
79
5…
CPU: Esempio di ciclo fetch-decode-execute
ADD 3, 4
RAM
6PC
ADD 3,4IR
CPU01234
accumulatore
ControlUnit
ArithmeticLogicUnit
3. La Control Unit incrementa l’indirizzo contenuto nel registro PC, in modo da eseguire, in seguito, l’istruzione successiva
fetch
Facoltà di Farmacia - Corso di Informatica 80
5…
CPU: Esempio di ciclo fetch-decode-execute
ADD 3, 4
RAM
6PC
ADD 3,4IR
CPU01234
ControlUnit
ArithmeticLogicUnit
4. La Control Unit decodifica l’istruzione ADD 3,4 …
fetchdecode
Accumulatore
81
5…
CPU: Esempio di ciclo fetch-decode-execute
ADD 3, 4
RAM
6PC
ADD 3,4IR
CPU01234
ControlUnit
ArithmeticLogicUnit
fetchdecode
execute
5. … e, dato che si tratta di un’operazione aritmetica, dà comando alla Arithmetic Logic Unit di eseguire l’istruzione ADD 3,4
Accumulatore
Facoltà di Farmacia - Corso di Informatica 82
5…
CPU: Esempio di ciclo fetch-decode-execute
ADD 3, 4
RAM
6PC
ADD 3,4IR
CPU01234
7Accumulatore
ControlUnit
ArithmeticLogicUnit
fetchdecode
execute
6. La Arithmetic Logic Unit memorizza il risultato nel registro generico Accumulatore
Facoltà di Farmacia - Corso di Informatica 83
5
…
CPU: Esempio di ciclo fetch-decode-execute
ADD 3, 4
RAM
6PC
ADD 3,4IR
CPU01234
7Accumulatore
ControlUnit
ArithmeticLogicUnit
7. Il registro PC contiene l’indirizzo 6, quindi viene letta da RAM l’istruzione all’indirizzo 6…
JUMP 167
Ciclo 2
Facoltà di Farmacia - Corso di Informatica 84
5
…
CPU: Esempio di ciclo fetch-decode-execute
ADD 3, 4
RAM
6PC
JUMP 1IR
CPU01234
7Accumulatore
ControlUnit
ArithmeticLogicUnit
fetch
8. … e memorizzata nel registro IR
JUMP 167
85
5
…
CPU: Esempio di ciclo fetch-decode-execute
ADD 3, 4
RAM
7PC
JUMP 1IR
CPU01234
7Accumulatore
ControlUnit
ArithmeticLogicUnit
fetch
JUMP 167
9. La Control Unit incrementa l’indirizzo contenuto nel registro PC, in modo da eseguire, in seguito, l’istruzione successiva
Facoltà di Farmacia - Corso di Informatica 86
5
…
CPU: Esempio di ciclo fetch-decode-execute
ADD 3, 4
RAM
7PC
JUMP 1IR
CPU01234
7Accumulatore
ControlUnit
ArithmeticLogicUnit
fetchdecode
10. La Control Unit decodifica l’istruzione JUMP 1 …
JUMP 167
87
5
…
CPU: Esempio di ciclo fetch-decode-execute
ADD 3, 4
RAM
1PC
JUMP 1IR
CPU01234
7Accumulatore
ControlUnit
ArithmeticLogicUnit
decode
execute
11. … e, dato che si tratta di un’istruzione di salto, la esegue memorizzando nel registro PC l’indirizzo della prossima istruzione da eseguire
JUMP 167
88
5
…
CPU: Esempio di ciclo fetch-decode-execute
OUT 3,77
ADD 3, 4
RAM
1PC
JUMP 1IR
CPU01234
7Accumulatore
ControlUnit
ArithmeticLogicUnit
12. Il registro PC contiene l’indirizzo 1, quindi viene letta da RAM l’istruzione all’indirizzo 1…
JUMP 167
Ciclo 3
89
5
…
CPU: Esempio di ciclo fetch-decode-execute
OUT 3,77
ADD 3, 4
RAM
1PC
OUT 3,77IR
CPU01234
7Accumulatore
ControlUnit
ArithmeticLogicUnit
13. … e memorizzata nel registro IR
JUMP 167
fetch
90
5
…
CPU: Esempio di ciclo fetch-decode-execute
OUT 3,77
ADD 3, 4
RAM
2PC
OUT 3,77IR
CPU01234
7Accumulatore
ControlUnit
ArithmeticLogicUnit
14. La Control Unit incrementa l’indirizzo contenuto nel registro PC, apprestando la CPU all’esecuzione dell’istruzione seguente
JUMP 167
fetch
91
5
…
CPU: Esempio di ciclo fetch-decode-execute
OUT 3,77
ADD 3, 4
RAM
2PC
OUT 3,77IR
CPU01234
7Accumulatore
ControlUnit
ArithmeticLogicUnit
15. La Control Unit decodifica l’istruzione OUT 3,77 …
JUMP 167
fetch
decode
92
5
…
CPU: Esempio di ciclo fetch-decode-execute
OUT 3,77
ADD 3, 4
RAM
2PC
OUT 3,77IR
CPU01234
7Accumulatore
ControlUnit
ArithmeticLogicUnit
16. … e, dato che si tratta di un’istruzione di output, la esegue dando comando all’unità di output
JUMP 167
fetch
decode
execute
E per finire ...
Facoltà di Farmacia - Corso di Informatica 99
Analizziamo i vari componenti…
RAMCPU
dispositivi di input/output
memoria secondaria
Facoltà di Farmacia - Corso di Informatica 100
La Memoria Secondaria• Limitazioni della RAM: poco capiente, costosa, volatile è necessario usare la memoria secondariamemoria secondaria
• Caratteristiche della memoria secondaria:– capientecapiente– (relativamente) poco costosa(relativamente) poco costosa– non volatilenon volatile– lenta!lenta!
Facoltà di Farmacia - Corso di Informatica 101
La Memoria Secondaria• La CPU può eseguire (ed elaborare) esclusivamente programmi (e dati) che risiedono in memoria principale• I programmi e i dati risiedono in memoria secondaria• Perciò devono essere copiati in memoria principale• Quando si esegue un programma, il sistema operativo lo copia da memoria secondaria (es. hard disk) in RAM; l’operazione si chiama loadingloading o caricamentocaricamento
Facoltà di Farmacia - Corso di Informatica 102
La Memoria SecondariaÈ composta da:• supporti di memorizzazione
componente fisico in cui vengono immagazzinati i dati
Es.: cd
• dispositivi di memorizzazioneleggono/scrivono dati dal/sul supporto di memorizzazione
Es.: lettore cd
Facoltà di Farmacia - Corso di Informatica 103
La Memoria SecondariaTecnologie diverse:• magneticamagnetica
• otticaottica
• magneto-otticamagneto-ottica• flash (o allo stato solido)flash (o allo stato solido)
Facoltà di Farmacia - Corso di Informatica 104
La Memoria Magnetica• Sfrutta il fenomeno fisico della polaritàpolarità• Sul supporto sono presenti particelle che si comportano come dipoli magnetici
• La testina di lettura/scrittura cambia/rileva la polarità delle particelle• Prese due dipoli adiacenti:
– stessa polarità 0– diversa polarità 1
• Usata per floppy disk, hard disk e nastri
Ad esempio.....
s n ns n s
0 1
Oppure....
Facoltà di Farmacia - Corso di Informatica 107
La Memoria ottica
• Tecnologia usata nei Compact Disk e nei DVD
Facoltà di Farmacia - Corso di Informatica 108
La Memoria ottica• Sfrutta la riflessioneriflessione della luce di un laser
Facoltà di Farmacia - Corso di Informatica 109
La Memoria ottica• Sfrutta la riflessioneriflessione della luce di un laser• Sul supporto sono presenti delle minuscole scanalature (pitpit)
Facoltà di Farmacia - Corso di Informatica 110
La Memoria ottica• Sfrutta la riflessioneriflessione della luce di un laser• Sul supporto sono presenti delle minuscole scanalature (pitpit) che formano zone chiare (luce riflessa) e zone scure (luce non riflessa)
Facoltà di Farmacia - Corso di Informatica 111
La Memoria ottica• Sfrutta la riflessioneriflessione della luce di un laser• Sul supporto sono presenti delle minuscole scanalature (pitpit) che formano zone chiare (luce riflessa) e zone scure (luce non riflessa)
Facoltà di Farmacia - Corso di Informatica 112
La Memoria ottica• Sfrutta la riflessioneriflessione della luce di un laser• Sul supporto sono presenti delle minuscole scanalature (pitpit) che formano zone chiare (luce riflessa) e zone scure (luce non riflessa)
– chiaro/scuro o scuro/chiaro 1– chiaro/chiaro o scuro/scuro 0
Facoltà di Farmacia - Corso di Informatica 113
La Memoria ottica• Sfrutta la riflessioneriflessione della luce di un laser• Sul supporto sono presenti delle minuscole scanalature (pitpit) che formano zone chiare (luce riflessa) e zone scure (luce non riflessa)
– chiaro/scuro o scuro/chiaro 1– chiaro/chiaro o scuro/scuro 0
11 11 11 00 11 00 11 00 11 11
Facoltà di Farmacia - Corso di Informatica 114
La Memoria magneto-ottica• Sfrutta la polarità magnetica di particelle
– per scrivere un laserlaser riscalda la superficie fino a una temperatura adatta per modificare la polarità– per leggere usa una testina magneticatestina magnetica
• Usata per dischi rimovibili• Dischi molto capienti, cancellabili e riscrivibili, duraturi e sicuri
Facoltà di Farmacia - Corso di Informatica 115
Memoria flash o allo stato solido• Costituita da chip simili a quelli della RAM ma in grado di registrare in modo permanente• Tempo di accesso ridotto• Leggera e facilmente trasportabile• Usata per dispositivi di piccole dimensioni
– PDA– macchine fotografiche digitali– penne USB– cellulari
Facoltà di Farmacia - Corso di Informatica 116
Caratteristiche della memoria secondaria
Facoltà di Farmacia - Corso di Informatica 117
Accesso diretto o sequenziale
Due modalità possibili di lettura o scrittura• accesso direttodiretto o randomrandom: si accede a qualunque punto del supporto direttamente• accesso sequenzialesequenziale: si accede ad un punto solo dopo aver letto/scritto fino a quel punto
Es.: CD audio vs. musicassette
Facoltà di Farmacia - Corso di Informatica 118
VelocitàQuanto tempotempo occorre per leggere informazioni da un supporto?Dipende da:• tempo di accessotempo di accesso: tempo impiegato per iniziare a leggere i dati• velocità di trasferimentovelocità di trasferimento: velocità con cui i dati vengono effettivamente trasferiti in RAM
In un disco, entrambi dipendono dalla velocità di rotazione velocità di rotazione (numero di rotazioni per minuto; ad es. 7200 rpm)
Facoltà di Farmacia - Corso di Informatica 119
Velocità
Il tempo di accesso e la velocità di trasferimento dipendono dal dispositivo:
Facoltà di Farmacia - Corso di Informatica 120
Capacità di memorizzazione
Capacità di memorizzazione: quantità di dati memorizzarizzabile sul supportoDipende da:• dimensione (lunghezza e/o superficie) del supporto• densità di memorizzazione
Facoltà di Farmacia - Corso di Informatica 121
Memorie di un elaboratore
Registri
Mem. cache
Dischi magneticie/o ottici
Mem. centrale
Nastri magnetici
16 B-64 B
10*millisecondi /secondi
128 KB-512 KB
128 MB-2 GB
660 MB-100 GB
> 10 GB
100 picosecondi
nanosecondi
10*nanosecondi
10*microsecondi / millisecondi
Tem
po
di a
cces
soCap
aci tà
(picosecondi=10-12 s; nanosecondi=10-9 s; microsecondi=10-6 s)
Facoltà di Farmacia - Corso di Informatica 122
Supporti di memorizzazione
Facoltà di Farmacia - Corso di Informatica 123
L’Hard disk
• Tecnologia magnetica• La memoria secondaria più diffusa• Dimensioni piccole, elevate capacità
Formattazione• FormattazioneFormattazione dei supporti
– preparazione della superficie del supporto per la memorizzazione delle informazioni
In particolare nella formattazione del disco rigido(Hard Disk) esso viene diviso in settori cui e' assegnatauna codifica binaria, per permettere di recuperare rapidamente l'informazione.
Formattare l' hard disk significa smagnetizzarlo e rimagnetizzarlo quindi ogni informazione presente e' persa irrevocabilmente .
In genere oggi il disco rigido viene vendutogia' formattato e con programmi applicativi gia' immagazzinati in memoria. Attenzione prima di formattarlo!
Attenzione:
La formattazione suddivide il disco rigido in
1. Settori2. Tracce circolari3. Spazi vuoti tra le tracce (gaps)
Facoltà di Farmacia - Corso di Informatica 127
L’Hard disk
• Tecnologia magnetica• La memoria secondaria più diffusa• Dimensioni piccole, elevate capacità• Struttura:
– pila di dischi
in rotazione– testine mobili– perno centrale
Facoltà di Farmacia - Corso di Informatica 128
I bit sull’Hard disk
Vista dall’alto
Facoltà di Farmacia - Corso di Informatica 129
I bit sull’Hard disk
Facoltà di Farmacia - Corso di Informatica 130
I bit sull’Hard disk
Traccia
Facoltà di Farmacia - Corso di Informatica 131
I bit sull’Hard disk
Traccia
Facoltà di Farmacia - Corso di Informatica 132
I bit sull’Hard disk
Traccia
Settore
Facoltà di Farmacia - Corso di Informatica 133
I bit sull’Hard disk
Traccia
Settore
Blocco
Facoltà di Farmacia - Corso di Informatica 134
I bit sull’Hard disk
Traccia
Settore
Blocco
Facoltà di Farmacia - Corso di Informatica 135
I bit sull’Hard disk
Traccia
Settore
Blocco
Testina L/S
Facoltà di Farmacia - Corso di Informatica 136
I bit sull’Hard disk
Traccia
Settore
Blocco
Testina L/S
Rotazione del disco
Facoltà di Farmacia - Corso di Informatica 137
I bit sull’Hard disk
Traccia
Settore
Blocco
Testina L/S
Rotazione del disco
Spostamento testina
Facoltà di Farmacia - Corso di Informatica 138
I cluster Blocco
I blocchi (o cluster) sono l’unità minima di memorizzazione:
• hanno tutti la stessa capacità (in un dato disco)
• ogni file occupa come minimo un blocco (più di uno se supera la capacità)
• un blocco non può essere occupato da più di un file
Per es.: cluster da 4 KB: quanto spazio occupa un file da 1 KB?
4 KB (cioè un cluster)!
E un file da 5 KB?
8 KB (cioè due cluster)
Facoltà di Farmacia - Corso di Informatica 139
Tempo di accesso in un hard disk
tempo di accessotempo di accesso
Facoltà di Farmacia - Corso di Informatica 140
tempo di accessotempo di accesso
Tempo di accesso in un hard disk
Facoltà di Farmacia - Corso di Informatica 141
• seek timeseek time (tempo di posizionamentotempo di posizionamento): tempo impiegato per localizzare la traccia su cui sono memorizzati i dati
tempo di accessotempo di accesso
Tempo di accesso in un hard disk
Facoltà di Farmacia - Corso di Informatica 142
• seek timeseek time (tempo di posizionamentotempo di posizionamento): tempo impiegato per localizzare la traccia su cui sono memorizzati i dati
tempo di accessotempo di accesso
Tempo di accesso in un hard disk
Facoltà di Farmacia - Corso di Informatica 143
• seek timeseek time (tempo di posizionamentotempo di posizionamento): tempo impiegato per localizzare la traccia su cui sono memorizzati i dati• latenzalatenza: tempo impiegato perché i dati arrivino e scorrano sotto la testina di lettura
tempo di accessotempo di accesso
Tempo di accesso in un hard disk
Facoltà di Farmacia - Corso di Informatica 144
tempo di accesso = tempo di accesso = seek time + latenzaseek time + latenza
• seek timeseek time (tempo di posizionamentotempo di posizionamento): tempo impiegato per localizzare la traccia su cui sono memorizzati i dati
• latenzalatenza: tempo impiegato perché i dati arrivino e scorrano sotto la testina di lettura
Tempo di accesso in un hard disk
Quale figura rappresenta correttamente i concetti di traccia, settore e blocco?
Quindi se ci viene chiesto:
Quale figura rappresenta correttamente i concetti di traccia, settore e blocco?
Correct answer: c
Quindi se ci viene chiesto:
Sappiamo rispondere
E naturalmente sappiamo rispondere anche a queste domande...
Facoltà di Farmacia - Corso di Informatica 151
I Floppy disk
• Tecnologia magnetica• Bassa capacità (1.44 MB)• Trasportabile• Deteriorabile• Sostituibili da dischetti ad alta capacità (anche magneto-ottici) o penne USB
Formattazione
Originariamente occorreva formattare Il floppy disk: oggi, in genere, vengono venduti gia' formattati
Nel corso degli anni sono stati prodottidiversi tipi di floppy disk
Oggi sono sostituiti da dischetti ad alta capacità (anche magneto-ottici) o da penne USB
Facoltà di Farmacia - Corso di Informatica 155
I Dischi ottici
• Lettura/scrittura laser• Buona capacità di memorizzazione• Economici• Evitano la trasmissione di virus (se già non li contengono)• Affidabili e duraturi• Buona velocità di trasferimento
Facoltà di Farmacia - Corso di Informatica 156
I Dischi otticiDiverse categorie:• CD-ROM: simili ai CD musicali
– solo leggibili– capacità fino a 660 Mbyte
• CD-R: CD scrivibili una volta (R = Recordable)• CD-RW: CD scrivibili più volte (~ 1000 volte) (RW = ReWritable)• DVD: come i CD-ROM ma più capienti
– capacità 4.7 GB (può arrivare fino a 17 GB)– DVD-ROM, DVD-R, DVD-RW (e DVD+R, DVD+RW)
Durata dei supporti: • ROM: 50-300 anni, R: 20-250 anni, RW: 25-100 anni• vero problema: obsolescenza tecnologica
Nastri magnetici
● Molto lenti
● Grande capacita' di memoria
I nastri magnetici venivano usati dai centridi calcolo per “salvare” periodicamente i dati (ad es. contenuti negli hard disk) e conservarli al sicuro.Ad esempio i centri di calcolo delle banche ogni giorno salvavano su nastri magnetici i dati di tutte le transazionieseguite. Oggi vengono usate altre tecnologie,ad esempio memorie Eprom.
Facoltà di Farmacia - Corso di Informatica 159
Aumento della memoria• Espansioni della memoria principale• Juke-box
– ospita molti CD– seleziona automaticamente il CD necessario
• Libreria di nastri– insieme di nastri selezionabili da un robot
Alcune importanti operazioni
1) Compressione
2) Back up dei dati (importante)
Facoltà di Farmacia - Corso di Informatica 161
CompressioneCompressione operata da:• Sistema:
– “trasparente” per l’utente– si comprimono file specifici o anche l’intero disco [NB: il libro non è preciso]
• Programmi di utilità: – l’utente crea archivi– si comprimono file specifici o gruppi di file – formati compressi (senza perdita di informazioni): zip, rar, gz– inutile comprimere formati già compressi (jpg, gif, mp3, divx)
Ottimizza l’uso dello spazio– trasferimento in rete più veloce– reperimento più lento
Facoltà di Farmacia - Corso di Informatica 162
Backup dei dati• BackupBackup: CopiaCopia di tutti o di parte dei dati su altri supporti• Operazione costosacostosa in termini di tempo e di spazio, ma necessarianecessaria• Conservazione in luoghi fisicamente luoghi fisicamente distantidistanti
Perche' e' importante il backup dei dati?
I dati possono essere persi! Per:
●Cattiva installazione o uso di un programma
●Cattivo funzionamento dell' hard disk●Mancanza di corrente●Catastrofi naturali●Furto
Facoltà di Farmacia - Corso di Informatica 164
Analizziamo i vari componenti…
RAMCPU
memoria secondaria
dispositivi di input/output
Facoltà di Farmacia - Corso di Informatica 165
Slot di espansione
• Slot di espansioneSlot di espansione: connettoreconnettore presente su una scheda (come la scheda madre) nel quale possono essere inserite nuove schede• Le capacità di un computer possono essere estese inserendo apposite schede negli slot di espansione
– schede grafiche– schede audio– modem/fax– schede di acquisizione video
Facoltà di Farmacia - Corso di Informatica 166
Comunicazione con dispositivi di I/O
• I dispositivi di I/O sono le perifericheperiferiche dell’elaboratore• Sono collegate all’elaboratore attraverso le porteporte, cioè delle prese• Vari tipi di porteVari tipi di porte, che differiscono per l’aspetto fisico, per le caratteristiche elettriche/ottiche, velocità, e più in generale per il protocollo (ad es. il formato dei dati scambiati sulla porta)
167
Tipi di porteIn un PC troviamo questi tipi di porte:•2 o più porte USBUSB (per varie
periferiche, fino a 127 in serie)•1 porta parallelaparallela (per la stampante)•0 o più porte firewirefirewire (IEEE 1394, per
varie periferiche, fino a 63, dotate di larga banda passante, cioè in grado di trasmettere molti bit al secondo)
•0 o più porte SCSISCSI (/'skʌzi/, per dischi esterni, scanner, fino a 16 periferiche)
Facoltà di Farmacia - Corso di Informatica 168
Tipi di porte
SCSI: Small Computer System InterfaceUSB: Universal Serial Bus
Facoltà di Farmacia - Corso di Informatica 169
Dispositivi di Input/Output
Servono a comunicare e interagire con l’elaboratore; non necessariamente con un essere umano
Facoltà di Farmacia - Corso di Informatica 170
Dispositivi di input• Tastiera• Dispositivi di puntamento (mouse, ...)• Microfono (in generale Line In)• Scanner• Fax
La tastiera
La versione standard ha 101 tasti; diverse per nazionalità, infatti...
Tastiere ergonomiche
Tastiere virtuali Il touch screen: basta “premere”lo schermo o toccarlo con una penna ottica
Facoltà di Farmacia - Corso di Informatica 175
Dispositivi di input di immagini
• Scanner– A piano fisso– A tamburo– Manuale
• Macchine fotografiche• Telecamere digitali• Frame grabber per acquisizione da telecamere analogiche
Facoltà di Farmacia - Corso di Informatica 176
Dispositivi di input di puntamento
• Mouse• Trackball• Touch pad• Tavoletta grafica• Joystick• Mouse senza filo
Facoltà di Farmacia - Corso di Informatica 177
Dispositivi di output
• Stampanti• Videoterminali• Videoproiettori• Casse acustiche• Plotter
Facoltà di Farmacia - Corso di Informatica 178
Elementi di output
• PixelPixel: picture element• DotDot:
– elemento di immagine su una pagina stampata
• Bit mappingBit mapping:– ogni pixel ha un indirizzo – la CPU può modificare ogni pixel
Facoltà di Farmacia - Corso di Informatica 179
Elementi di output
• Risoluzione (stampa)Risoluzione (stampa):– indica la qualità di una immagine– si misura in punti per pollice (dpi, dots per inch)– più è elevata, migliore è l’immagine
• Dot pitch Dot pitch dei monitor: – distanza tra i fosfori o le celle LCD (RGB) sullo schermo
Facoltà di Farmacia - Corso di Informatica 180
Elementi di output
• FontFont: tipo di carattere– forma (Courier, Times, ...)– stile (Normale, Grassetto, ...)– dimensione (12, 13, 24, ...)
Facoltà di Farmacia - Corso di Informatica 181
•Font bitmapFont bitmap: caratteri rappresentati come matrice di punti
• Font scalabiliFont scalabili: caratteri rappresentati come serie di formule
Le stampanti
Facoltà di Farmacia - Corso di Informatica 182
Le stampanti
• LaserLaser: qualità di stampa fotografica– risoluzione fino a 1200 dpi– a colori hanno costi ancora elevati
Facoltà di Farmacia - Corso di Informatica 183
Le stampanti
• A matrice di puntiA matrice di punti: le più vecchie– testina ad aghi– bassa risoluzione– stampa su moduli continui
• PlotterPlotter: per stampare disegni tecnici– pennini colorati– alta risoluzione e precisione
Facoltà di Farmacia - Corso di Informatica 184
Le stampanti
• Macchine digitali da stampaMacchine digitali da stampa:– stampano su qualsiasi materiale
• Stampanti fotograficheStampanti fotografiche: stampano foto digitali
• InkjetInkjet: le stampanti a colori più diffuse
– le testine ‘gettano’ gocce di inchiostro colorato sulla carta
Facoltà di Farmacia - Corso di Informatica 185
Come avviene la stampa
La stampa di un documento o immagine è un’operazione complessa, dipende dalla stampante; parte di tale complessità è gestita dal driverdriver della stampante
N.B.: NON solo nelle stampanti laser
Per finire questa parte....
In conclusione
Facoltà di Farmacia - Corso di Informatica 188
Il BUS• BusBus: linea di comunicazione per la trasmissione di informazioni tra i vari componenti del sistema● Fisicamente, è un insieme di collegamenti in rame● Tutti i componenti del sistema sono collegati al bus●La dimensione del bus indica quanti dati possono viaggiare
contemporaneamente:tipicamente 32 o 64 bit.
Il BUS di sistema
l bus di sistema è un gruppo di collegamenti che uniscono la CPU agli altri dispositivi del computer. Comprende: – Linee per trasmettere indirizzi – Linee per trasmettere dati – Linee per i segnali di controllo
Facoltà di Farmacia - Corso di Informatica 190
Architettura dell’elaboratore
Bus di sistema
L’uso del bus ‘standard’ rallenterebbe le operazioni di scambio dei dati tra memoria, CPU (che sono molto frequenti) e scheda video.Esiste quindi un bus dedicato che mette in connessione diretta RAM, CPU e scheda video
Il BUS locale
Facoltà di Farmacia - Corso di Informatica 192
Il BUS locale• Il bus localebus locale è un’evoluzione del bus di sistema, per il collegamento veloce tra CPU, memoria e periferiche veloci (es. riprese video, schede video che mandano il segnale al monitor)
• Metodo molto flessibile: facile aggiungere componenti
E per finire....
Load 3568 R1 Add R1 R2Store R1 3568Jump 1000
25
1000
1001
1002
1003
3568CPU
ALU
30
R1
R2
Al termine delle istruzioni che valore e' contenuto in 3568?
E per finire....
Consideriamo
Load 3568 R1
Add R1 R2
Store R1 3568
Jump 1000
25
1000
1001
1002
1003
3568CPU
ALU
30
R1
R2
Supponiamo che R2 contenga il valore 30e che R1 sia un accumulatore
Al termine delle istruzioni che valore e' contenuto in 3568?
Load 3568 R1 Add R1 R2Store R1 3568Jump 1000
25
1000
1001
1002
1003
3568CPU
ALU
25
30
R1
R2
La prima istruzionememorizza in R1 ilvalore contenuto in 3568
Load 3568 R1
Add R1 R2
Store R1 3568
Jump 1000
25
1000
1001
1002
1003
3568CPU
ALU
55
30
R1
R2
La seconda istruzione somma i valoricontenuti in R1 e R2 memorizza il risultato in R1
Load 3568 R1
Add R1 R2
Store R1 3568
Jump 1000
55
1000
1001
1002
1003
3568CPU
ALU
55
30
R1
R2
La terza istruzione memorizza il contenuto di R1 in 3568
Load 3568 R1 Add R1 R2Store R1 3568Jump 1000
55
1000
1001
1002
1003
3568CPU
ALU
55
30
R1
R2
La quarta istruzionefa saltare il programmaalla memoria 1000 eil processo si ripete
Il valore in 3568 ora e' 55; e la prossima volta?
Top Related