prof.ing.s.cavalieri1 memorie interne ram, rom e cache misura della memoria classificazione della...
TRANSCRIPT
Prof.Ing.S.Cavalieri 1
Memorie InterneRAM, ROM e Cache
Misura della Memoria Classificazione della Memoria:
Interna ed Esterna Memoria Interna: Caratteristiche Generali RAM Statica RAM Dinamica ROM, PROM, EPROM, EEPROM, Flash
Memory Memoria Cache
Prof.Ing.S.Cavalieri 2
Misura della Memoria
Informazione di base = bitRaggruppamenti utilizzati:
1 byte = 8 bit1 word = N byte
Multipli (bit/byte)K (Kilo) = 210 (=1024) circa 103M (Mega) = 220
(=1024*1024=1.048.576) circa 106G (Giga) = 230 circa 109T (Tera) = 240 circa 1012 P (Peta) = 250 circa 1015
Prof.Ing.S.Cavalieri 3
Alcuni Valori da Ricordare
24 = 16
28 = 256
216 = 65536 = 64 K (65536/1024)
Prof.Ing.S.Cavalieri 4
Memoria Interna o Centralememorizza programmi e dati su cui lavora la CPU a
cui è collegata tramite il bus principale:si accede al singolo bit/byte/word
tempi di accesso bassi (<70 ns);
dimensioni tipiche sono 256Mbytes/512Mbytes
realizzata con circuiti elettronici
Prof.Ing.S.Cavalieri 5
Memoria Esterna o di Massa
memorizza dati e programmi sotto forma di file. Per l’elaborazione, si devono trasferire programmi e dati in memoria centrale: Si accede a blocchi (cluster/settori) tempi di accesso elevati (msec) capacità elevate (decine/centinaia di Gbytes) Può essere:
Memoria di Massa on-line, normalmente realizzata con dischi magnetici fissi
Memoria di Massa off-line, normalmente realizzata con supporti (magnetici/ottici/elettronici) rimovibili
Prof.Ing.S.Cavalieri 6
Memoria Interna: Caratteristiche Generali
1 bit
bus dei dati
bus degli indirizzin fili
bus di controlloread/write (strobe)
01
m-1
2
Prof.Ing.S.Cavalieri 7
Indirizzi e valori: Con n bit di indirizzo si
possono selezionare 2n celle (m=2n).
Strobe: sono segnali generalmente impulsivi che
vengono inviati dopo il posizionamento dell’indirizzo per
discriminare tra operazione di letture e scrittura
Memoria Interna: Caratteristiche Generali
Prof.Ing.S.Cavalieri 8
Tempi di servizio: accesso, ciclo. Accesso. E' il tempo necessario affinché la memoria ponga in
uscita il valore richiesto (o possa registrare il valore in ingresso),
dopo aver posizionato l'indirizzo e lo strobe. Ciclo. E' il tempo minimo che deve intercorrere tra due
posizionamenti validi dell’indirizzo e dello strobe.
Modificabilità: Memoria a Sola Lettura/Riscrivibile. Qualsiasi memoria deve essere scritta almeno una volta. Le memorie che non possono essere riscritte si dicono a sola
lettura; altrimenti sono riscrivibili.
Memoria Interna: Caratteristiche Generali
Prof.Ing.S.Cavalieri 9
Persistenza: permanenti/volatili. Sono permanenti le memorie che
mantengono i dati senza bisogno di alimentazione elettrica; altrimenti
si dicono volatili. Accessibilità: casuale /sequenziale. Se non esiste alcun vincolo
sulla sequenza degli indirizzamenti effettuati, si parla di memoria ad
accesso casuale; quando invece il successivo indirizzo è l’attuale
incrementato di uno si parla di memorie ad accesso sequenziale. Il supporto: Il più comune per le memorie interne è il silicio drogato
(a stato solido)
Memoria Interna: Caratteristiche Generali
Prof.Ing.S.Cavalieri 10
bus dei dati
bus degli indirizzin fili
bus di controlloread/write
1 bit
Memoria Interna: Caratteristiche Generali
Prof.Ing.S.Cavalieri 11
Possiamo identificare diversi livelli funzionali di memoria:Random Access Memory (RAM)Read Only Memory (ROM)Memoria Cache
Memoria Interna: Caratteristiche Generali
Prof.Ing.S.Cavalieri 12
RAM - Random Access Memory
Il termine RAM deriva da Random Access Memory.
Attualmente assumono valori tipici di centinaia di MBytes.
La caratteristica principale delle RAM è il fatto che l'informazione in esse contenute rimane solo quando esse vengono alimentate. La mancanza di tensione provoca la perdita di tutte le
informazioni contenute. In presenza di tensione, ciascuna informazione
memorizzata rimane fino alla successiva scrittura.
Prof.Ing.S.Cavalieri 13
RAM - Random Access Memory
La RAM vengono utilizzate per i seguenti scopi: memorizzare il Sistema Operativo (ad esempio
Windows). memorizzare i programmi utenti prima della loro
esecuzione. memorizzare i dati utenti provenienti dalle
periferiche o quelli intermedi. Dal punto di vista implementativo, le memorie RAM si
dividono in due grosse famiglie: RAM dinamiche RAM statiche.
Prof.Ing.S.Cavalieri 14
RAM DINAMICHE (DRAM)
La DRAM usa delle capacità interne per memorizzare i dati. Le capacità perdono la loro carica dopo un certo intervallo di
tempo. Queste capacità necessitano di un costante rinfresco per mantenere inalterata l'informazione memorizzata.
Il risultato finale è che tra due accessi consecutivi alla memoria, una carica elettrica viene mandata a rinfrescare la capacità del chip di memoria affinché il dato venga mantenuto nello stato logico corretto.
Durante il rinfresco della memoria non è possibile accedere ad essa, rallentando, dunque, le sue prestazioni in termini di accessi in lettura/scrittura.
Le DRAM sono caratterizzate da tempi di accesso (tempi di lettura/scrittura) che vanno dai 10ns ai 70 ns.
Prof.Ing.S.Cavalieri 15
Utilizzano un condensatore per memorizzare 1 Bit
Necessitano di un circuito di Refresh Consumano poco Sono abbastanza veloci (da 10 a 70 ns) Sono utilizzate per le memorie centrali
Tipi di DRAM obsolete: FP DRAM (fast page) EDRAM (DRAM Evoluta) EDO RAM (extended data output RAM).
RAM DINAMICHE (DRAM)
Prof.Ing.S.Cavalieri 16
SDRAM. Quando sono apparsi i Bus con clock a 100 MHZ, si sono affermate le memorie dinamiche di tipo sincrono SDRAM. La Intel ha definito le specifiche PC100 (PC 133).
RAM BUS (o RDRAM) hanno un canale da 16 bit a 800 Mhz
Le DDR (double data rate) sono un tipo di SDRAM che lavorano sui due fronti del clock. Sono chiamate: DDR 300 (riferendosi al doppio del clock
effettivo, 150 MHz) PC 2400 (riferendosi alla banda 8 byte * 2 *
150 MHz) o PC 2100 (8*2*133 Mhz)
RAM DINAMICHE (DRAM)
Prof.Ing.S.Cavalieri 17
Sono montate su moduli (schedine): SIMM (30 pin) single in line module; hanno una
doppia fila di contatti ma connessi a coppie, quindi è come se avessero la metà dei contatti attivi; ogni modulo ha parallelismo 1 byte (un 486 usa 4 banchi)
SIMM (72 PIN); i pin sono sempre organizzati a coppie; ogni modulo supporta 4 byte (il 486 usa un solo banco); montano le EDO RAM
DIMM (168 PIN) Dual Inline Memory Module; tutti i pin sono indipendenti; gestisce 8 byte (un P6 usa un banco); Montano le SDRAM
DIMM (184 PIN); montano le DDR; sono uguali come geometria alle DIMM 168 PIN, ma si differenziano per il fatto di avere una sola tacca
DIMM con dissipatore per RDRAM
RAM DINAMICHE (DRAM)
Prof.Ing.S.Cavalieri 18
DDR in commercioModulo Frequenza
di lavoroBandwidth
massima teorica
DDR200PC1600
100 Mhz 1,6 Gbytes/sec
DDR266PC2100
133 Mhz 2,1 Gbytes/sec
DDR300PC2400
150 Mhz 2,4 Gbytes/sec
DDR333PC2700
166 Mhz 2,7 Gbytes/sec
DDR375PC3000
187,5 Mhz 3 Gbytes/sec
DDR400PC3200
200 Mhz 3,2 Gbytes/sec
DDR433PC3500
217,5 Mhz 3,5 Gbytes/sec
Prof.Ing.S.Cavalieri 19
Parametri Prestazionali
Non è solo la frequenza di lavoro, e di conseguenza il tempo d'accesso, a determinare le prestazioni velocistiche di un modulo memoria;
Esistono alcuni parametri di funzionamento, tipicamente raccolti sotto il nome di timings, che influenzano le prestazioni velocistiche in modo marcato.
E' possibile intervenire manualmente a variare i timings di accesso, così da ottenere prestazioni velocistiche superiori;
Prof.Ing.S.Cavalieri 20
I Bios delle schede madri mettono a disposizione settaggi di accesso differenti a seconda sia del modello di chipset, sia delle scelte del produttore della scheda madre.
Tra i vari timings, il CL è tra le sigle che più di frequente vengono ricordate:
• CAS (Column Address Strobe) Latency (CL): indica il numero di cicli di clock richiesti dalla memoria per processare una richiesta.
A valori inferiori della latenza corrispondono prestazioni superiori.
Parametri Prestazionali
Prof.Ing.S.Cavalieri 21
Oltre a frequenza di lavoro e timings, vi è un altro elemento: rapporto tra frequenza di bus e frequenza di lavoro
della memoria. Più questo rapporto è vicino ad 1, più saranno
elevate le prestazioni velocistiche. Questo spiega perché, ad esempio, con molte
applicazioni la memoria DDR333 permetta di ottenere prestazioni velocistiche superiori a quella DDR400, con frequenza di bus di 166 Mhz
Parametri Prestazionali
Prof.Ing.S.Cavalieri 22
Ulcune DDR in Commercio
Infineon 256 MB DDR266 CL2 PC2100
Chip di Memoria DDR 32 MB Monta solo 8 chip di memoria DDR, 4 per lato;
dunque ogni chip avrà una densità di memoria pari a 32 MB. Frequenza della memorie pari a 133 MHz CAS Latency 2 DDR266.
Prof.Ing.S.Cavalieri 23
RAM STATICHE (SRAM) La RAM statica o SRAM è la memoria più veloce
disponibile attualmente
Sono caratterizzate da tempi di accesso dell'ordine delle decine di nanosecondi (da 6 ns a 25 ns).
Le SRAM sono costose e possono memorizzare solo 1/4 dei dati rispetto le DRAM.
A differenza delle DRAM, nelle SRAM non occorre il rinfresco periodico.
Prof.Ing.S.Cavalieri 24
Utilizzano per ogni bit un flip flop.
Il singolo bit occupa molto spazio (8 transistors).
Consuma molta energia. E’ molto veloce (< 10 ns). Ha un elevato costo per bit. Si usa nella cache, nei
convertitori video a/d.
RAM STATICHE (SRAM)
Prof.Ing.S.Cavalieri 25
ROM - Read Only Memory
Il termine ROM significa Read Only Memory. Indicava originariamente il fatto che l'unico tipo di accesso in
queste memorie è la lettura (ovviamente la prima scrittura deve essere possibile).
Esistono particolari ROM che possono essere anche riscritte.
In ogni caso tutte le ROM sono caratterizzate dal fatto che l'informazione in esse contenute rimane anche quando manca la corrente.
Nelle ROM che possono essere riscritte, l'informazione rimane fino alla successiva scrittura.
Prof.Ing.S.Cavalieri 26
ROM - Read Only Memory
Le ROM vengono in genere utilizzate per memorizzare programmi e dati di configurazione essenziali per il funzionamento del computer che devono essere memorizzati anche quando il computer è spento.
Esistono differenti tipi di ROM:ROM non programmabiliPROM. ROM ProgrammabiliEPROM. Erasable Programmable ROMEEPROM. Electrical Erasable Programmable ROMFlash Memory
Prof.Ing.S.Cavalieri 27
ROM, PROM, EPROM
ROM: sono delle reti combinatorie già predisposte in
fabbrica (tramite il processo di mascheratura). Hanno
alte capacità bassi costi.
PROM: sono delle reti combinatorie programmabili
con un dispositivo da laboratorio. Molto utili per
prototipi, possono essere programmate una sola volta.
EPROM: sono programmabili con un dispositivo da
laboratorio. Hanno una finestra di quarzo tramite cui
è possibile esporre il chip ai raggi U.V. e “cancellare
“ il contenuto.
Prof.Ing.S.Cavalieri 28
EEPROM – FLASH MEMORY
EEPROM: come le EPROM, ma cancellabili con particolari cicli di segnalazione senza togliere dalla piastra il chip. I tempi di cancellazione sono di norma molto più lunghi di quelli di lettura.
Flash Memory: come le EPROM, ma la scrittura avviene per blocchi e non per byte, molto velocemente. Non può essere usata come RAM per via della
scrittura a blocchi Si chiama flash perché il microchip è
organizzato in sezioni di celle cancellabili in un colpo solo (flash).
Prof.Ing.S.Cavalieri 29
Memoria Cache Lo scopo della memoria cache è quello di reperire informazioni
utilizzate recentemente senza doverle nuovamente prelevare dalla RAM.
La memoria cache è generalmente gestita direttamente dalla CPU tramite bus privati.
L'utilizzo della memoria cache rispetto la RAM è più vantaggioso perché: il bus di indirizzi e dati è locale e non deve essere utilizzato
quello comune, che potrebbe essere occupato da altri dispositivi (ad esempio DMA), ritardando l'accesso alla RAM
il tempo di accesso alla cache per lettura/scrittura è molto più basso di quello della RAM (generalmente il tempo di accesso medio alla RAM è 50-70ns, mentre si può arrivare a valori inferiori a 10ns per accedere alla memoria cache).
Prof.Ing.S.Cavalieri 30
Memoria Cache
L'uso della memoria cache prevede, però, opportuni accorgimenti dovuti al fatto che la dimensione di una cache è notevolmente inferiore a quella di una RAM la dimensione tipica della RAM è di centinaia di MBytes,
mentre la cache ha dimensioni dell'ordine di alcune centinaia di KBytes.
è impensabile poter memorizzare nella cache tutti i dati letti dalla RAM, ma sarà necessario sovrascrivere alcuni dati contenuti nella cache, per far spazio a nuovi dati da memorizzare.
In particolare, si adotta la politica di sovrascrivere i dati più vecchi, ossia quelli non utilizzati da più tempo.
Prof.Ing.S.Cavalieri 31
Memoria Cache La gestione della cache, può essere formalizzata nella seguente
maniera: la CPU necessita di un particolare dato la CPU ricerca in dato nella cache se lo trova, lo legge e lo utilizza se non lo trova, lo reperisce nella RAM e lo trasferisce nella
cache nella locazione più "vecchia", ossia da più tempo non utilizzata.
Generalmente le memorie cache sono realizzate da memorie RAM statiche, che, come detto, sono quelle caratterizzate da più bassi tempi di accesso.
Prof.Ing.S.Cavalieri 32
Attualmente le memorie cache hanno dimensioni medie di 256Kbyte, con picchi di 512Kbyte fino ad arrivare a valori di 2048Kbytes.
Potrebbe sembrare che quanto più grande è la cache, tanto più conveniente sia per le prestazioni della CPU.
Questa affermazione è vera relativamente, in quanto, aumentando la cache oltre certi limiti, il rapporto prezzo/prestazioni diventa non conveniente.
Memoria Cache
Prof.Ing.S.Cavalieri 33
Per aumentare ulteriormente le prestazioni, si può: Frammentare la cache Trasferire una parte della cache all'interno della CPU
Sono definibili due tipi di cache dette: L1, di dimensioni minori (8KB...64KB): è in genere contenuta
all'interno del Core del processore e opera alla frequenza di clock; L2 (nelle CPU correnti compresa tra 128KB e 1MB): a seconda del
tipo di architettura è posta o all'interno del Core del processore oppure sulla motherboard; opera a frequenze differenti a seconda del tipo di architettura, variabili tra la frequenza di bus e quella di clock.
L3: generalmente è un'estensione della L2 (2 MB nel Pentium IV Extreme Edition 3.2 GHz)
Il processore cerca prima nella cache interna L1 e poi in quella esterna L2.
Memoria Cache
Prof.Ing.S.Cavalieri 34
BIOS
Il nome BIOS significa Basic Input Output System, ossia sistema di base per ingressi e uscite.
Il BIOS è essenzialmente un "software", ossia un programma. Esso é contenuto in un chip di memoria non volatile
EEPROM o le Flash Memory. Le funzioni svolte dal BIOS sono essenzialmente tre:
1. Funzione di Avvio del Computer, all'interno della quale viene eseguito il POST (Power-On Self Test).
2. Funzione di Memorizzazione di Configurazione Hardware e di Parametri del ChipSet.
3. Interfaccia del Sistema Operativo.
Prof.Ing.S.Cavalieri 35
BIOSAvvio del Computer
Quando si accende il PC, si inizializza l'alimentatore interno. Non appena la tensione si stabilizza il chipset invia un comando di reset del processore.
Il comando reset richiede alla CPU di eseguire l'istruzione posta sempre in una locazione fissa prestabilita nella ROM del BIOS e denominata indirizzo di jump.
La CPU esegue l'istruzione, che copia in memoria i programmi del BIOS e inizia l'esecuzione del BIOS.
Prof.Ing.S.Cavalieri 36
La prima azione eseguita dal programma di BIOS è il POST (Power-On Self-Test): Il processo POST verifica e controlla la configurazione hardware
memorizzata nelle informazioni di configurazione del BIOS. Nel caso in cui dovesse rilevare un problema invia indicazioni
acustiche per mezzo di uno o più beep o beep code, attraverso l'altoparlante del sistema, per indicare la natura del problema o visualizzare un messaggio d'errore e il processo di boot si arresta.
Se il POST non incontra problemi, il processo di boot continua. Il BIOS cerca il BIOS dell'adattatore video e lo attiva. Quasi tutti i
dispositivi periferici di un PC dispongono di un proprio BIOS. Le informazioni sulla scheda video sono visualizzate sullo schermo del monitor. informazioni della scheda video, BIOS della scheda video,
produttore e versione.
BIOSAvvio del Computer
Prof.Ing.S.Cavalieri 37
Vengono inizializzate la routine del BIOS delle periferiche presenti, oltre la scheda video.
Il BIOS effettua poi una serie di test nel sistema, inclusa la dimensione della memoria rilevata. Un contatore progressivo visualizza nello schermo la memoria
rilevata e verificata. Il BIOS verifica che i dispositivi elencati nei dati di configurazione
siano presenti e funzionanti. viene visualizzato un messaggio che comunica che il dispositivo è
stato trovato, configurato e verificato. Se il BIOS supporta la tecnologia PnP (Plug and Play), qualsiasi
dispositivo PnP rilevato sarà configurato. vengono visualizzate sullo schermo tutte le informazioni dei
dispositivi, tuttavia scorrono in modo troppo veloce per poter essere lette.
BIOSAvvio del Computer
Prof.Ing.S.Cavalieri 38
BIOSAvvio del Computer
Alla fine della sequenza di test e configurazione, il BIOS visualizzerà una schermata che riassume i dettagli del PC verificati dal BIOS, per indicare che il sistema è pronto per l'uso.
Il BIOS dovrà trovare il sistema operativo ed essere in grado di accedervi, per poterlo attivare. I dati di configurazione memorizzati nel BIOS contengono un
parametro che indica le unità disco (floppy, hard disk o CD-ROM) e l'ordine di accesso per il caricamento del sistema operativo.
Se il programma di boot non viene trovato nel primo dispositivo elencato, verrà ricercato nel dispositivo successivo e così via;
se non si trova alcun dispositivo di boot la relativa sequenza si arresta e viene visualizzato un messaggio di errore: "Non è disponibile alcun dispositivo di boot".
Prof.Ing.S.Cavalieri 39
BIOSMemorizzazione Configurazione
Il BIOS memorizza la configurazione hardware del computer (periferiche non plug&play) e i parametri del chipset e ne permette all’utente la modifica.
Programma di Configurazione: tasto DEL all'avvio In genere ogni versione di BIOS permette di intervenire su taluni parametri
del chipset ma non su altri. Esempio: alla voce Chipset Features Setup (o Advanced Chipset Setup)
e possibile intervenire sui tempi di accesso alla memoria e su altri parametri del chipset, così da migliorare anche sensibilmente le prestazioni del computer;
C'è il rischio di impostare alcuni parametri troppo performanti per l'hardware installato e il sistema si bloccherà durante il funzionamento: basterà rientrare nel Setup del BIOS (premendo, in genere, il tasto DEL
all'avvio) e reimpostare i valori precedentemente usati.
Prof.Ing.S.Cavalieri 40
L'hardware, cioè la parte elettronica del PC, può presentare notevoli differenza da costruttore a costruttore o da modello a modello.
Se il S.O. deve ad esempio recuperare un file dal disco rigido, esegue tale lettura "chiedendo" al BIOS di leggere il file, senza occuparsene direttamente.
Il BIOS contiene programmi usati dal sistema operativo e software applicativo per interagire con l'hardware.
Visto che il BIOS è strettamente legato all’hardware, è facile comprendere è che ogni diverso computer possiede un diverso BIOS.
Non è possibile cioè utilizzare il BIOS del computer modello xyz nel computer modello hkw.
BIOSInterfaccia Sistema Operativo
Prof.Ing.S.Cavalieri 41
Produttori di BIOS
Award, AMI (America Megatrends, Inc.) e Phoenix producono i BIOS più noti.
Come la maggior parte dei produttori, forniscono le ROM del BIOS in licenza d'uso alle case costruttrici di schede madri, mentre il servizio di supporto del BIOS compete generalmente a produttori delle schede.
In passato AMI era l'unico BIOS per Intel, il principale produttore di processori e schede madri.
Attualmente, oltre l'60% delle schede madri sono Intel e adottano il BIOS Phoenix.
Nel 1998 Phoenix ha acquistato Award e, pertanto, il BIOS Award viene distribuito con marchio Phoenix.