20/04/2009
Memoria Centrale
Memoria Centrale
Spazio di lavoro del calcolatore: contiene i dati da elaborare e i risultati delle elaborazioni durante il funzionamento del calcolatore. Insieme di celle di dimensione 1 byte, ciascuna delle quali è individuata da un indirizzo, costituito da un numero di lunghezza dipendente dalla lunghezza del Registro Indirizzi all‟interno della CPU. Es. se il Registro Indirizzi è lungo 32 bit posso indirizzare 232 celle diverse. 232 celle = 4 Gcelle -> 4 Gbyte Poiché è possibile indirizzare direttamente ogni singola cella, una memoria di questo tipo si chiama Random Access Memory (RAM), cioè, alla lettera, memoria ad accesso casuale. Il Calcolatore
per farlo l‟elaboratore pone l‟indirizzo della cella desiderata nel registro indirizzi
2
Interazione CPU-memoria centrale
La memoria centrale contiene codici binari interpretabili come dati o istruzioni (che costituiscono i programmi) durante il funzionamento del calcolatore. I dati possono essere modificati durante l‟esecuzione dei programmi (elaborazione dati) come risultato delle istruzioni eseguite.
In
lettura la CPU:
Sulla memoria centrale deve quindi essere possibile fare operazioni di lettura (ad es. delle istruzioni da eseguire o dei dati da elaborare) e scrittura (ad es. dei dati elaborati). Il Calcolatore
E‟ l‟attività con cui l‟elaboratore seleziona una particolare cella di memoria
Il Calcolatore
In
Indirizzamento
1
Memoria Centrale
trasmette sul Bus Indirizzi l‟indirizzo della cella cui vuole accedere con un piccolo ritardo (tempo di accesso) riceve sul Bus Dati il contenuto della cella.
scrittura la CPU:
3
attiva, cioè fissa ad 1 (attraverso l‟unità di controllo), la linea del Bus di Controllo che corrisponde alla lettura
attiva, cioè fissa ad 1 (attraverso l‟unità di controllo), la linea del Bus di Controllo che corrisponde alla scrittura
trasmette sul Bus Indirizzi l‟indirizzo della cella cui vuole accedere
invia sul Bus Dati il dato che deve essere inserito nella cella. Il Calcolatore
4
1
20/04/2009
Tipi di Memoria
Tipi di RAM
RAM (Random Access Memory) Tutte le memorie utilizzate come memoria centrale sono RAM. Tuttavia abitualmente con il termine RAM ci si riferisce ad un particolare tipo (RAM dinamica) che è volatile, cioè perde il proprio contenuto quando non è alimentata. Da questo punto di vista la “RAM” si distingue dalle ROM (Read Only Memory) memorie dal contenuto fisso, non riscrivibili, „scritte‟ una volta per tutte in fase di fabbricazione. PROM
(Programmable ROM) si possono scrivere una sola volta.
EPROM (Erasable PROM) si possono scrivere e cancellare (ma non selettivamente) per essere riutilizzate esponendole ai raggi UV. ROM, PROM, EPROM mantengono il loro contenuto anche a computer spento. Il Calcolatore
5
6
Chip RAM
Tipi di DRAM
SRAM (Static Random Access Memory), è una RAM che non necessita di refresh cioè consente di mantenere le informazioni per un tempo teoricamente infinito (se alimentata), ha tempi di lettura e consumi bassi. La necessità di usare molti componenti per cella la rende però più costosa delle DRAM. DRAM (Dynamic RAM) più lenta della SRAM poiché il suo contenuto deve essere periodicamente sottoposto ad un ciclo di refresh per evitare che i condensatori che memorizzano il valore dei bit si scarichino e non si possa più risalire al dato originario. I tempi di accesso sono dell‟ordine delle decine di nanosecondi. I byte sono organizzati in righe e colonne e quindi il riferimento al byte è inviato al chip in 2 passi successivi (riga e colonna).
FPM RAM (Fast Page Mode RAM) sono più veloci perché possono ricevere in una volta sola, per locazioni di memoria contigue, l‟indirizzo di riga all‟inizio del trasferimento invece che la coppia; EDO (Extended Data Out) e BEDO (Burst Extended Data Out) velocizzano ulteriormente le prestazioni delle FPM. Le EDO le migliorano del 3-5% poiché un accesso può iniziare anche se il precedente non è ancora terminato. La BEDO, realizzata con una particolare tecnologia di pipelining, permette l‟utilizzo di bus più veloci. SDRAM (Synchronous DRAM) il funzionamento di questa memoria viene sincronizzato con il clock di sistema; il tempo di accesso si riduce a 8-10 nanosecondi VRAM (Video RAM) sono le meorie usate a bordo delle schede video. La caratteristica principale è il dual porting cioè la possibilità di avere, contemporaneamente ad un ciclo di refresh, un accesso al microprocessore. 7
Sono installati negli slot della scheda madre e sono montati a gruppi di 8 o 16 su piccole schede stampate dette SIMM (Single Inline Memory Module) se si trovano su un solo lato della scheda o DIMM (Dual Inline Memory Module).
8
2
20/04/2009
Uso delle ROM
Uso delle ROM
Quando il calcolatore viene acceso, la memoria centrale è “vuota”, quindi non contiene istruzioni da eseguire né dati da elaborare che possano essere letti dalla CPU. La CPU deve quindi essere in grado di leggere dati dalla memoria di massa (permanente) per caricare (fase di caricamento o di boot) almeno il sistema operativo, cioè il programma che controlla il funzionamento di tutto il calcolatore. Il Calcolatore
In ogni computer c‟è una ROM che contiene il cosiddetto BIOS (Basic Input/Output System), un insieme di programmi di base per l‟accesso ai dispositivi di I/O.
La ROM non è volatile e quindi la CPU può leggerne i dati anche immediatamente dopo l‟accensione. 10
Il Calcolatore
Memoria Centrale
Caratteristiche fondamentali:
Anche solo per accedere alla memoria di massa è tuttavia necessario un programma.
9
Memoria Centrale
Dimensione o capacità (n. di celle, quindi di byte)
Tempo di accesso (il ritardo dopo l‟invio del comando di lettura con cui il dato diviene effettivamente disponibile per l‟elaborazione)
Tipicamente la dimensione della memoria centrale è dell‟ordine del GByte.
La capacità di una memoria si misura in byte: K (kilo)
210 1000
(1024)
M (mega)
220 1.000.000
(10242)
G (giga)
230 1.000.000.000
(10243)
T (tera)
240 1.000.000.000.000
(10244)
Il tempo di accesso è dell‟ordine delle decine di nanosecondi. (1 ns = 10-9 s = un miliardesimo di secondo) Il Calcolatore
11
Il Calcolatore
12
3
20/04/2009
Memoria Cache
Memoria Cache
Sebbene la RAM sia veloce non lo è abbastanza per i processori moderni (tempo di accesso >> periodo di clock) il processore perciò è costretto ad „aspettare‟ l‟arrivo dei dati dalla RAM Soluzione: inserire tra processore e RAM una memoria particolarmente veloce dove tenere i dati usati più spesso: memoria cache Si fa accesso alla RAM solo quando la cache non contiene già il dato desiderato Il Calcolatore
Costano troppo !!
13
Memorie di massa
Se abbiamo memorie così veloci perché non le usiamo come memoria centrale?
Il Calcolatore
14
Memorie di massa
Memorie permanenti: mantengono il loro contenuto anche dopo lo spegnimento del calcolatore.
Il primo tipo di memoria di massa sono state le schede perforate.
Diverse rispetto alla memoria centrale: il loro funzionamento è basato su fenomeni di tipo ottico o magnetico, non su fenomeni elettrici.
Tipicamente organizzate in dischi, fissi o asportabili.
Erano cartoncini che venivano forati. Ogni scheda codificava un certo numero di byte: un foro in una certa posizione codificava un 1 nel bit corrispondente o particolari codici.
Più economiche rispetto alle memorie RAM/ROM.
Il loro tempo di accesso è tuttavia molto maggiore, cioè, a parità di dati da leggere, il processo di lettura avviene in modo più lento.
Il loro uso era particolarmente disagevole e poco affidabile a causa dell‟ingombro e della facilità con cui potevano danneggiarsi.
Il dispositivo di scrittura era analogo ad una macchina da scrivere, il lettore era di tipo opto-meccanico.
Il Calcolatore
15
Il Calcolatore
16
4
20/04/2009
Memorie di massa
Memorie di massa
Il primo tipo di memoria di massa magnetica sono stati i nastri magnetici
L‟informazione è divisa su 9 tracce, corrispondenti ciascuna ad un bit in una certa posizione (8 bit + 1 bit di parità per controllo degli errori).
L‟accesso ai dati è di tipo sequenziale.
I dati sono divisi in blocchi separati da un gap. Il Calcolatore
Per ottenere una lettura random anziché sequenziale si possono utilizzare supporti magnetici di forma diversa, tipicamente dischi.
Sommando il movimento di rotazione del disco e il movimento radiale della testina è possibile raggiungere rapidamente qualunque punto del disco. In pratica il tempo max per raggiungere una certa posizione è pari al maggiore fra il tempo richiesto per una rotazione e quello necessario alla testina per percorrere il raggio del disco.
17
Memorie di massa
Il Calcolatore
18
Standard di costruzione degli HD
Invece che in blocchi rettangolari come i nastri, i dischi sono suddivisi in settori circolari.
Poiché il disco ruota, lo stesso punto ripassa sotto la testina periodicamente. Quindi è sufficiente predisporre un unico gap come riferimento per ritrovare le altre posizioni sul disco.
La formattazione del disco consiste nella creazione di questi riferimenti, che dipendono da sistema a sistema. Il Calcolatore
19
IDE/ATA (Integrated Drive Electronics/Advanced Technology Attachment): il controllore è integrato nell‟unità in cui è contenuto l‟HD, capacità max 528 MB EIDE (Extended Integrated Drive Electronics) garantisce una velocità di trasferimento superiore, capacità superiore, i controllori possono gestire 4 unità invece delle 2 controllare dagli IDE, si può interfacciare con il CD-ROM
20
5
20/04/2009
Standard di costruzione degli HD
Altri tipi di memoria di massa
SCSI (Small Computer System Interface) definisce una serie di dispositivi anche diversi tra loro (HD, scanner, CD-ROM) concatenati fisicamente tra loro (fino a 16). Lo standard SCSI permette la condivisone di un bus tra le periferiche che possono accedervi contemporaneamente con alte prestazioni (per gli HD fino a 40MB/s di transfer rate)
Hard disk esterni Memorie allo stato solido Floppy disk
RAID (Redundant Array of Inexpensive Disks) usano più dischi poco costosi, offrono sistemi di rilevazione dell‟errore e di backup ridondante, cioè con duplicazione dei dati. SATA Serial ATA
21
Dischi
Dischi Ottici
I dischi si dividono principalmente in 2 tipi:
Sono i dischi che offrono la massima densità di memorizzazione (byte/cm2).
Vengono scritti e letti con un laser. La superficie (normalmente riflettente) viene forata o alterata (in modo che non rifletta) in corrispondenza di un 1.
Nei CD-ROM il processo di scrittura è irreversibile.
Nei CD-RW è reversibile (è possibile riscrivere un certo numero di volte il disco).
Nei DVD-ROM il disco è composto da più strati: il raggio laser può essere selettivamente focalizzato su uno di questi: è come avere più CD “impilati” uno sull‟altro.
Dischi Magnetici • floppy disk (portatili, estraibili, bassa capacità) • hard disk (generalmente fissi, pesanti, alta capacità) • altri formati proprietari (Zip, Jaz, ecc.)
22
Dischi Ottici (tipicamente portatili) • • • • •
CD-ROM (capacità media, non riscrivibile) CD-RW (come CD ma riscrivibile) DVD-ROM (come CD ma capacità più elevata) DVD-RW (come DVD-ROM ma riscrivibile) altri formati proprietari Il Calcolatore
23
Il Calcolatore
24
6
20/04/2009
Parametri Caratteristici
Gerarchia di memorie
Capacità (Mb, Gb)
Floppy Disk 1.44 Mb (360 kB, 1.2 MB, 720 kB)
Hard Disk da 80 GB in su
CD-ROM, CD-RW 700 MB
DVD-ROM, DVD-RW circa 5 GB o circa 10 GB
Dispositivi Più piccoli Più veloci Più costosi
L0: registri L1: L2:
Tempo di accesso (ms)
Floppy Disk centinaia di millisecondi
Hard Disk
alcuni millisecondi
CD/DVD
decine di millisecondi
Dispositivi più grandi più lenti L4: meno costosi
Transfer Rate (kB/s)
L5:
quantità di dati che può essere trasferita da disco a memoria nell‟unità di tempo. Il Calcolatore
25
L3:
I registri della CPU contengono le Word reperite dalla memoria cache L1
on-chip L1 Cache (SRAM) off-chip L2 Cache (SRAM) Memoria centrale (DRAM)
Memoria secondaria locale (dischi locali)
La memoria cache L1 contiene le linee reperite dalla memoria cache L2 La memoria cache L2 contiene le linee reperite dalla memoria centrale La memoria centrale contiene i blocchi di disco reperiti dai dischi locali
Memoria secondaria remota (sistemi di meorizzazione distribuiti, server WEB)
I dischi locali contengono i file reperiti dai dischi su server remoti
26
7