Le Memorie 4 ETA Modulo 1 Le memorie Capitolo 1 Struttura di un elaboratore Un elaboratore elettronico è un sistema capace di elaborare dei dati in ingresso seguendo opportune istruzioni e li elabora fornendo un uscita. L'insieme delle istruzioni viene definito programma. La struttura interna di un elaboratore è composta da: • CPU (Central Processing Unit) o microprocessore: è il dispositivo che coordina tutte le funzioni che si svolgono all’interno del computer; • MEMORIA CENTRALE: memorie a semiconduttore in cui risiedono programmi e dati; • MEMORIA DI MASSA: memorie esterne costituite da supporti magnetici, ottici, magneto-ottici, come nastri e dischi magnetici (hard disk e floppy disk), dischi ottici (CD-ROM, DVD); • Unità di ingresso: dispositivi attraverso cui si possono inserire dati e programmi in memoria (mouse, tastiera, scanner); • Unità di uscita: dispositivi atti a presentare i risultati dell’elaborazione svolta (periferiche di output). La memoria centrale presente all'interno del sistema è di tipo elettronico (ovvero costituita con dispositivi elettronici come BJT o MOSFET). Questa memoria è generalmente di due tipi base: 1. RAM, su cui è possibile sia scrivere che leggere i dati; questa memoria è di tipo volatile, ovvero perde i dati con lo spegnimento del sistema. 2. ROM, da cui è possibile solamente leggere i dati; è di tipo non volatile in quanto conserva le informazioni anche con il sistema non alimentato. Si possono raggruppare i sistemi di elaborazione nelle seguenti categorie in base alle possibilità di utilizzazione: • I mainframe sono grossi sistemi di elaborazione; • Le workstation sono sistemi specializzati per particolari funzioni; • I server sono sistemi che operano nell’ambito di un collegamento in rete tra più computer e forniscono servizi specifici ad altri sistemi ad essi collegati (detti client). Accanto ai grossi sistemi di elaborazione dati si sono diffusi in maniera sempre più capillare che sono i cosiddetti personal computer, ovvero dei sistemi che pur essendo di minimo ingombro offrono al singolo utente notevoli possibilità di elaborazione, sicuramente uguali se non addirittura superiori a quelle dei grossi elaboratori delle generazioni precedenti. I.I.S. “F.Tassara-G.Ghislandi” – Sistemi Automatici a.s.2014/2015 | Capitolo 1 Struttura di un elaboratore 1 Le Memorie 4 ETA In un Personal Computer possono distinguersi, in modo sintetico, le seguenti parti: CPU: denominata anche processore o microprocessore; presiede al controllo e allo svolgimento di tutte le operazioni che avvengono all'interno del computer sotto la supervisione di opportuni programmi. Circuiti d'interfaccia: collegano le unità di ingresso ed uscita con il BUS della CPU. Dispositivi d'ingresso e uscita: nei casi più semplici sono costituiti dalla tastiera (input) e dal video (output). Essi trasferiscono i dati dal mondo esterno verso la CPU e dalla CPU verso il mondo esterno. Memoria centrale: in essa sono memorizzati i programmi, i dati intermedi delle elaborazioni e i dati finali. La programmazione delle ROM avviene all'atto della fabbricazione. Spesso le ROM sono sostituite con memorie di tipo EPROM (a sola lettura ma cancellabili con i raggi ultravioletti e riprogrammabili) o anche con memorie di tipo flash (EEPROM cancellabili elettricamente) che possono essere riprogrammate direttamente senza toglierle dal circuito in cui sono inserite. In genere nella ROM è memorizzato il BIOS (Basic Input Output System), ovvero una serie di programmi, scritti nel linguaggio base del processore (detto linguaggio macchina), che interagiscono direttamente con l'hardware del sistema e che permettono l'avvio del computer in fase di accensione. Il BIOS è scritto su ROM (o su EPROM o su memoria EEPROM), perché deve rimanere memorizzato anche quando il computer viene spento. Memoria di massa: costituite da unità con dischi magnetici detti hard disk (disco fisso o rigido), driver per dischi flessibili (floppy disk) e ottici (CD-ROM) di diverso formato e con diversa capacità di memorizzazione. Le memorie di massa vengono normalmente utilizzate per memorizzare i programmi e grossi quantitativi di dati. Alimentatore: fornisce le tensioni necessarie per alimentare tutte le parti presenti all'interno del PC. La CPU comunica con tutti gli altri elementi presenti sulla motherboard, tramite una serie di linee di collegamento che nel loro insieme prendono il nome di BUS. Tali linee, in base ai tipi di segnale che trasferiscono all'interno del PC, vengono suddivise in tre gruppi distinti denominati: BUS dei I.I.S. “F.Tassara-G.Ghislandi” – Sistemi Automatici a.s.2014/2015 | Capitolo 1 Struttura di un elaboratore 2 Le Memorie 4 ETA DATI (DATA BUS), BUS degli INDIRIZZI (ADDRESS BUS), e BUS di CONTROLLO (CONTROL BUS). Ciascun tipo di BUS possiede caratteristiche ben distinte e svolge funzioni particolari. Il BUS DATI, bidirezionale, permette di inviare le informazioni da elaborare dai dispositivi di ingresso e dalla memoria, alla CPU, e viceversa. Sulle linee del BUS DATI viaggiano inoltre i codici delle istruzioni, provenienti dalla memoria, che la CPU deve di volta in volta eseguire. La CPU utilizza il BUS INDIRIZZI per indicare con quale dispositivo o con quale locazione di memoria debbano essere scambiati i dati in un determinato istante. Sul BUS di CONTROLLO invece transitano dei segnali, che la CPU utilizza per trasmettere particolari comandi ai vari dispositivi presenti nel sistema, o che le permettono di conoscere il loro stato. I.I.S. “F.Tassara-G.Ghislandi” – Sistemi Automatici a.s.2014/2015 | Capitolo 1 Struttura di un elaboratore 3 Le Memorie 4 ETA Capitolo 2 La memoria centrale del PC La memoria è la parte del computer destinata a conservare i dati nel tempo. La memorizzazione di informazioni in memoria, e il successivo recupero delle medesime, sono funzioni fondamentali nei processi di elaborazione dati. È una parte essenziale nonché una delle chiavi di successo (assieme alla capacità di processamento e alla riprogrammabilità) del computer grazie alla possibilità di memorizzare, nei moderni sistemi elettronici, grandi quantità di dati. In essa sono memorizzati dati d'archivio dell'utente e le istruzioni dei programmi facenti parte del software di base o applicativo. Una memoria può essere considerata astrattamente come una sequenza finita di celle in cui ogni cella contiene una sequenza finita di bit, normalmente gestiti a gruppi di otto detti byte. Pertanto lo spazio fisico della memoria può essere immaginato come una sequenza di posizioni, ognuna contenente un byte. Ogni posizione è individuata da un preciso indirizzo di memoria, normalmente espresso tramite un numero intero positivo. I.I.S. “F.Tassara-G.Ghislandi” – Sistemi Automatici a.s.2014/2015 | Capitolo 2 La memoria centrale del PC 4 Le Memorie 4 ETA Capitolo 3 Classificazione delle Memorie Le memorie possono essere classificate in base a: 1. modalità di accesso; 2. stabilità dell’informazione memorizzata; 3. tecnologia di realizzazione; 1. Modalità di accesso Le memorie che vengono classificate in base alla modalità di accesso si dividono in: • Casuale: possono essere lette e scritte a qualunque indirizzo, ma con lo stesso tempo di accesso. • Sequenziale: possono essere lette e scritte solamente all'indirizzo immediatamente successivo all'indirizzo a cui è avvenuto l'accesso precedente. I principali esempi di memorie ad accesso sequenziale sono i nastri magnetici. • Misto (diretto): possono essere lette e scritte a qualunque indirizzo, con tempo di accesso variante e dipendente dall'indirizzo di memoria a cui è avvenuto l'accesso precedente. Esempio 1: memoria ad accesso casuale A B C D 0 1 2 3 Il tempo d’accesso ad ogni singola cella è identico per tutte e non dipende dalla disposizione fisica di esse. L’accesso avviene mediante un indirizzo associato singolarmente ad ogni cella. La cella A0, come tutte le altre, ha differenti indirizzi, attraverso i quali la distinzione della cella si fa più semplice. I.I.S. “F.Tassara-G.Ghislandi” – Sistemi Automatici a.s.2014/2015 | Capitolo 2 La memoria centrale del PC 5 Le Memorie 4 ETA Esempio 2: memoria ad accesso sequenziale C1 C2 C3 C4 C5 C6 C7 La lettura avviene in modo sequenziale il che significa che per la lettura della cella numero 3 è necessario leggere prima la cella numero1 e la numero 2. Un esempio può essere una pellicola. Esempio 3: memoria ad accesso misto: un CD musicale. Per leggere la 5° traccia non devo necessariamente leggere le 4 precedenti. Posso passare da una traccia all’ altra senza nessun tipo di ordine preciso. 2. Stabilità dell’informazione memorizzata La memoria si può suddividere in base alla stabilità delle informazioni in: volatile RAM, (Random Access Memory) ovvero memoria ad accesso casuale, è un tipo di memoria caratterizzata dal permettere l'accesso diretto a qualunque indirizzo di memoria con lo stesso tempo di accesso. Questa tipologia di memoria necessita dell’alimentazione elettrica per mantenere memorizzate le informazioni; si distinguono SRAM e DRAM: o RAM STATICA (SRAM): ogni bit e’ memorizzato in un flip-flop e conserva l’informazione fino a quando è alimentata. E’ veloce ma dissipa di più, ha una area per bit maggiore; I.I.S. “F.Tassara-G.Ghislandi” – Sistemi Automatici a.s.2014/2015 | Capitolo 2 La memoria centrale del PC 6 Le Memorie 4 ETA o RAM DINAMICA (DRAM): ogni bit e’ memorizzato come carica immagazzinata in un condensatore. Rispetto alla SRAM ha un area per bit minore ed è più lenta e complessa. non volatile: questa tipologia di memoria è in grado di mantenere le informazioni anche quando non viene alimentata, ROM (Read Only Memory) in cui i dati sono memorizzati tramite collegamenti elettronici fisici e stabili. Il suo contenuto non è modificabile durante il normale funzionamento, ma può esserlo, con diverse tecniche, in fase di costruzione, di progettazione o di prototipazione. A loro volta si divide in: (Prom-eprom-eeprom-earomflash) PROM (Programmable Read Only Memory): è una ROM programmabile dall’utente, mediante un apposito strumento, detto programmatore PROM, si scrive nella memoria bruciando i collegamenti interni delle singole celle con impulsi di tensione. La memoria PROM può essere programmata una sola volta in quanto non è possibile ripristinare i collegamenti bruciati. EPROM (Erasable Programmable Read Only Memory): sono memorie ROM programmabile e cancellabili, tramite l'esposizione ai raggi ultravioletti (UV) di particolare lunghezza d’onda. Possono essere poi riprogrammate con un programmatore che invia gli impulsi di tensione sugli appositi pin del chip. Queste memorie hanno costi contenuti e buona facilità d’impiego. EEPROM (Electrically Erasable Programmable Read Only Memory): queste memorie si cancellano elettricamente, senza dover ricorrere ai raggi UV. Il numero di cicli di cancellazione era inizialmente limitato a 10.000, ma arriva fino a 100.000 nei chip di ultima generazione. FLASH: le memorie flash sono simili alle EEPROM ma hanno tempi di cancellazione e scrittura più rapidi, per le sue prestazioni può anche essere usata come memoria a lettura-scrittura. Anche per le memorie flash i cicli di cancellazione e scrittura non sono illimitati, ma si attestano tra 100.000 e 1.000.000 a seconda delle tipologie di realizzazione, rispettivamente: o FLASH NOR hanno possibilità di cancellazione e scrittura dei singoli byte; o FLASH NAND sono cancellabili e scrivibili solo a blocchi di dati, tali operazioni però sono più veloci. I.I.S. “F.Tassara-G.Ghislandi” – Sistemi Automatici a.s.2014/2015 | Capitolo 2 La memoria centrale del PC 7 Le Memorie 4 ETA 3. Tecnologie di realizzazione Considerando le diverse tecnologie di realizzazione, cioè il supporto fisico con cui sono realizzate. Si distinguono: • Memorie a semiconduttore: sono memorie elettroniche come la RAM e la ROM già viste; • Memorie a supporto magnetico: sono costituite da dischi: rigidi (hard disk) o flessibili (floppy disk) e nastri magnetici; • Memorie a supporto ottico: comprendono CD (CD-R, CD-RW) e DVD. I.I.S. “F.Tassara-G.Ghislandi” – Sistemi Automatici a.s.2014/2015 | Capitolo 2 La memoria centrale del PC 8