ITI OMAR Novara Memorie a stato solido Memorie a stato solido Le memorie dette “a stato solido” attualmente utilizzate nei sistemi di elaborazione dati sono essenzialmente di tre tipi: magnetiche, ottiche o a semiconduttore. 1 - Memorie magnetiche Le memorie magnetiche - quali ad esempio le musicassette e le videocassette – memorizzano i dati sotto forma di differenti intensità di magnetizzazione dei micro-granuli di polvere di materiale ferromagnetico (generalmente ossido di ferro o di cromo) annegati all’interno del nastro di materiale plastico che fa da supporto. La magnetizzazione (scrittura) e la lettura del nastro avvengono mediante un trasduttore magnetico costituito da un avvolgimento di sottili fili di rame attorno ad un materiale magnetico dolce (testine). La scrittura delle tracce deve avvenire dopo la completa cancellazione della precedente magnetizzazione mediante un’apposita testina. Le memorie magnetiche quali le musicassette e le videocassette sono però di tipo “analogico”, ovvero permettono di memorizzare i brani musicali P. De Vittor pag. 1 ITI OMAR Novara Memorie a stato solido direttamente tramite differenti intensità di magnetizzazione del supporto. Le memorie magnetiche utilizzate nei sistemi di elaborazione dati sono invece di tipo “digitale”, ovvero necessitano di memorizzare solamente due livelli logici, realizzati da due differenti direzioni di magnetizzazione dei micro-granuli di materiale ferromagnetico. Infatti, per i primi personal computer (si ricordi i “gloriosi” VIC20 o i Commodore 64), si utilizzarono le cassette a nastro, impiegate proprio in modalità digitale per la memorizzazione dei programmi. Attualmente, invece, i supporti utilizzati per le memorie magnetiche di tipo digitale sono esclusivamente a disco, come ad esempio i floppy-disc (i primi erano da 8 pollici di diametro, i successivi da 5” e i più recenti da 3,5”), i dischi “Zip” da 3½” e i dischi rigidi (hard disk) inizialmente da 8”, poi da 5” e oggi anche da 2½” per i PC portatili. Nei dischi floppy il supporto è costituito da un disco di materiale plastico morbido (da cui la denominazione di “floppy”) in cui è annegata una sottile polvere di materiale ferromagnetico, mentre negli hard-disk il materiale ferromagnetico è depositato sotto forma di sottilissimo strato sulla superficie di un disco metallico. In un hard-disk – proprio per consentire elevate capacità di memorizzazione – si utilizzano non solo entrambe le facce del disco, ma anche più dischi sullo stesso asse, ciascuno con due testine. Il progressivo miglioramento della tecnologia costruttiva ha infatti permesso di passare dal megabyte di capacità dei primi HD degli anni ’80 alle varie decine di gigabyte degli attuali hard-disk. Nei sistemi di elaborazione, se si volevano memorizzare in maniera permanente piccole quantità di dati o parametri di configurazione da modificare solo periodicamente evitando il ricorso agli hard-disk (costosi, ingombranti, avidi di corrente e sensibili alle vibrazioni) si potevano utilizzare le memorie a nuclei di ferrite, che utilizzavano delle minuscole “perline” (toroidi) di materiale ferromagnetico attraversate da fili di rame per la scrittura e la lettura dei dati. Con questa tecnica si raggiungevano però densità limitate (al massimo qualche Kilobit, ovvero poche centinaia di byte) e veniva richiesta un’ampia area di circuito stampato. Si avevano però alcuni vantaggi derivati dal fatto di avere una memoria permanente esente da parti meccaniche in movimento, e quindi ad elevata velocità di accesso (non vi è da attendere il posizionamento della testina magnetica né la rotazione del disco), non soggetta ad usura a lungo termine nonché insensibile alle vibrazioni e agli urti: in altri termini più affidabile e decisamente più veloce. P. De Vittor pag. 2 ITI OMAR Novara Memorie a stato solido 2 – Memorie ottiche Le memorie ottiche (Compact-Disk o CD e Digital Versatile Disk o DVD) sono quelle introdotte più recentemente sul mercato (anni ’90) e si sono potute imporre solo grazie all’impiego del laser (la “luce” che viene impiegata per la lettura e la scrittura del supporto) e delle tecniche di “digitalizzazione” del suono. In altri termini, mentre le memorie di tipo magnetico possono esser di tipo sia analogico che digitale, le memorie ottiche sono esclusivamente di tipo digitale. Nelle memorie a disco ottico la memorizzazione avviene effettuando dei piccolissimi “fori” sulla superficie di un sottile strato di alluminio annegato all’interno di un materiale plastico che fa da supporto del disco stesso. I minuscoli fori vengono realizzati vaporizzando l’alluminio tramite impulsi di luce laser all’infrarosso, generata dalla testina di scrittura del “masterizzatore”, che è il nome del drive in grado di scrivere i CD. 3 – Memorie a semiconduttore Mentre le memorie magnetiche e ottiche sono tutte di tipo permanente, le memorie a semiconduttore (che possono essere realizzate sotto forma di circuiti integrati) possono essere permanenti oppure temporanee. Sono infatti temporanee se sono in grado di mantenere i dati memorizzati solo fino a quando sono alimentate, mentre non appena viene tolta la tensione di alimentazione esse perdono totalmente il loro contenuto; memorie a semiconduttore in questo caso si usa dire che si tratta di memorie “volatili” (la volatilità è riferita al contenuto), mentre quelle memorie memorie permanenti sono dette anche non-volatili volatili memorie “non volatili”. (ROM) (RAM) Quelle di tipo non-volatile sono in grado di perdono i dati vengono comunemente classificate mantenere i dati memorizzati se viene memorizzati in tolta la tensione di come memorie ROM, ovvero Readmaniera permanente alimentazione Only Memory (memorie a sola P. De Vittor pag. 3 ITI OMAR Novara Memorie a stato solido lettura), mentre quelle di tipo temporaneo (memorie volatili) vengono classificate come memorie RAM, ovvero Random-Access Memory. Si noti che – contrariamente alle ROM - il nome di RAM (letteralmente “memoria ad accesso casuale”) non ha alcun riferimento con la permanenza o meno dei dati, bensì con la modalità di accesso ai dati presenti in memoria; infatti, mentre nelle memorie a nastro l’accesso ai dati è necessariamente di tipo sequenziale (prima di raggiungere un certo dato devo “far scorrere” i dati precedenti fino a raggiungere la posizione voluta), nelle memorie a semiconduttore è invece possibile raggiungere direttamente i dati richiesti semplicemente impostandone l’indirizzo (di riga e di colonna) in maniera immediata, consentendo in tal modo che l’accesso ai dati possa avvenire in maniera “casuale” anziché “sequenziale”. 3.1 – Memorie non-volatili Nelle memorie a sola lettura di tipo ROM i dati non devono rimanere memorizzati in maniera permanente, e devono essere mantenuti anche in assenza di alimentazione. Le ROM possono essere di due tipi, a seconda che vengano “scritte” dal costruttore oppure dall’utente. Nel primo caso l’utente invia al costruttore la struttura dei dati da memorizzare per mezzo di un idoneo supporto (ad memorie ROM esempio un CD) e la società di semiconduttori provvederà a “scrivere” l’array di memoria. Nel secondo caso programmate programmabili le memorie vengono programmate “in in fabbrica dall’utente casa” dall’utente che le acquista (mask-ROM) (fuse-PROM) “vergini”. Nel primo caso si parla di il costruttore con un apposito ROM vere e proprie, mentre nel personalizza un array programmatore secondo di PROM, ovvero prediffuso tramite vengono bruciati dei Programmable ROM. Anche se è metallizzazione mini-fusibili indubbiamente più comodo “scrivere” le ROM in casa, il ricorso al costruttore è conveniente nel caso di grossi volumi produttivi. Le ROM posseggono una struttura interna abbastanza semplice, riconducibile allo schema di principio riportato nella figura a lato. In una ROM, infatti, gli “zeri” e gli “uno” logici vengono ottenuti cortocircuitando alcuni “incroci” fra le righe e le colonne di un array di connessioni interne. Per fornire l’indirizzo della linea desiderata si applica un livello logico alto (5 Volt) alla riga R selezionata, per cui fluirà corrente attraverso uno o più resistori alla base delle colonne a seconda della posizione dei nodi che sono stati programmati. P. De Vittor pag. 4 ITI OMAR Novara Memorie a stato solido In fabbrica i nodi vengono ottenuti tramite “metallizzazione”, ovvero interconnettendo opportunamente tramite sottilissime piste di alluminio (vedi figura a lato) una matrice di connessioni preesistenti. Le memorie di questo tipo vengono anche dette “mask-ROM”, poiché la personalizzazione delle interconnessioni viene realizzata tramite “mascheratura”, con un processo di tipo fotolitografico. Nel caso invece delle PROM (che possono venir programmate dall’utente) l’operazione di personalizzazione deve essere fatta attraverso un apparato chiamato “PROM-programmer” il quale, partendo da una memoria PROM “vergine” memorizza la mappa di zeri e di uno tramite la bruciatura di mini-fusibili interni, da cui il nome di “fusePROM” per questo tipo di memorie. La struttura interna è simile a quella delle maskROM, con la differenza che - quando vengono vendute - tutti i nodi di interconnessione rigacolonna dell’array di memoria sono attivi, e con l’azione di bruciatura di alcuni fusibili si interrompono le connessioni indesiderate e si lasciano quelle che riproducono la struttura dei dati richiesta. Si tenga conto del fatto che i fusibili a seconda che rimangano integri o vengano interrotti provocano l’interdizione o la saturazione di altrettanti transistor, il cui stato logico verrà poi letto e interpretato da un apposito circuito che in tal modo decodificherà la “mappa” (e quindi il contenuto) della memoria. Curiosamente, uno degli ambiti applicativi in cui si è registrato il maggior impiego di memorie ROM è stato il settore dei videogiochi, che ha richiesto memorie mask-ROM di ampia capacità (svariati megabyte). Il principale impiego delle ROM e delle PROM ha riguardato comunque la memorizzazione dei programmi per le schede a microcontroller in settori quali il le comunicazioni, il controllo industriale e la strumentazione elettronica. P. De Vittor pag. 5 ITI OMAR Novara Memorie a stato solido Nel caso in cui però l’utente abbia la necessità di modificare i dati memorizzati sorge la necessità di sostituire il chip di memoria, senza la possibilità di modificarne il contenuto. Ecco allora l’esigenza di far sì che le PROM divengano non solo programmabili dall’utente, ma anche modificabili successivamente. Nacquero così le EPROM, ovvero le ElectricallyProgrammable ROM. La tecnica per rendere cancellabili e nuovamente riprogrammabili le EPROM dovette però far ricorso ad una tecnologia differente: non più fusibili bensì porzioni di conduttore elettricamente isolati in grado di trattenere gli elettroni. In poche parole la tecnica è la seguente (si veda qui a lato la sezione della cella di memoria): si utilizza uno strato di materiale conduttore (tipicamente alluminio, silicio policristallino o un siliciuro) “annegato” entro un isolante, ovvero racchiuso entro due strati di ossido di silicio, uno più spesso ed uno, sottostante, molto sottile; lo strato conduttore annegato nell’ossido viene detto “floating gate” (gate flottante). Per “scrivere” il bit da memorizzare nella cella si fornisce tensione al transistor Mosfet di tipo sottostante (ovvero si applicano +5V fra drain e source) dopodiché si polarizza l’elettrodo di gate con una tensione Vgs sufficientemente elevata (anche qualche decina di Volt) da costringere gli elettroni che transitano nel canale fra drain e source a “perforare” per effetto tunnel la sottile barriera di ossido isolante e raggiungere lo strato di gate flottante. Gli elettroni, raggiunto questo strato, vi rimangono confinati in quanto non sono in grado di proseguire verso il gate sovrastante a causa del maggior spessore dell’ossido. Una volta tolta la tensione di programmazione, gli elettroni rimarranno intrappolati all’interno del gate flottante grazie all’elevatissima resistività dell’ossido, che è in grado di garantire una “data retention” di molte decine di anni. La lettura del contenuto della cella viene effettuato polarizzando normalmente il transistor, applicando una tensione di 5V fra gate e source e leggendo la tensione in uscita: se il gate flottante non contiene elettroni il Mosfet sarà in conduzione, mentre se lo strato di conduttore annegato nell’ossido contiene elettroni il Mosfet risulterà interdetto, a causa della maggiore tensione di soglia di gate necessaria per la conduzione. La cancellazione di questo tipo di memorie può essere fatta rendendo conduttivo l’ossido di silicio, ciò che si ottiene illuminando la superficie del semiconduttore con raggi ultravioletti sufficientemente penetranti (a corta lunghezza d’onda) per una durata di una decina di minuti. L’azione dei fotoni ultravioletti riduce l’energia di soglia della barriera di potenziale esistente fra polisilicio e ossido, consentendo la dispersione degli elettroni anche P. De Vittor pag. 6 ITI OMAR Novara Memorie a stato solido senza sottoporre a tensione la cella di memoria. Tale tecnica di cancellazione richiede però che il chip di memoria sia accessibile esternamente tramite un’apposita finestra di materiale trasparente (normalmente quarzo), per cui l’aspetto di tali memorie è quello visibile nella figura a lato. La successiva riprogrammazione della memoria avviene tramite impulsi elettrici forniti da un comune PROM-programmer, del tipo di quelli utilizzati per le memorie PROM. Proprio per il particolare metodo di cancellazione a ultravioletti, queste memorie vengono anche dette UV-EPROM. Successivamente sono state sviluppate delle memorie il cui spessore dell’ossido era tale da permettere non solo una programmazione, ma anche una cancellazione di tipo elettrico, denominate EEPROM, da Electrically-Erasable PROM o anche E2PROM. Versioni più recenti e più economiche (in quanto modificabili solo in blocchi o “pagine” e inoltre più lente) sono le FLASH, oggi largamente utilizzate in prodotti quali i telefoni cellulari, le fotocamere digitali, le Pen-Flash, i lettori di MP3 e prodotti analoghi. 3.2 – Memorie volatili Molto spesso, nei sistemi di elaborazione dati, non è necessario utilizzare memorie non-volatili, che richiedono appositi circuiti di programmazione, ma è sufficiente disporre di memorie “transitorie” in cui immagazzinare i dati solo temporaneamente, come ad esempio la memoria video, ovvero i dati che debbono essere visualizzati dal monitor, che debbono essere disponibili solo quando il sistema è in funzione. Queste memorie debbono inoltre essere di elevata densità e disporre di tempi di lettura e scrittura sufficientemente brevi da poter gestire con adeguata efficienza i dati necessari all’unità centrale di elaborazione. Ecco quindi il motivo per cui sono state sviluppate le memorie “volatili”, appartenenti al gruppo delle RAM. Le memorie RAM possono essere di due tipi: statiche o dinamiche. In quelle di tipo statico i bit 0 e 1 (zero e uno, che corrispondono a due livelli logici, a tensione differente) vengono memorizzati saturando o interdicendo (ovvero mandando in conduzione o bloccando) i transistor interni, in maniera analoga a quanto succede nei circuiti logici denominati “flip-flop” o “latch”. Nelle RAM di tipo dinamico, invece, l’uno logico viene ottenuto caricando un minuscolo condensatore integrato (in realtà la capacità parassita di un transistor Mosfet in P. De Vittor pag. 7 ITI OMAR Novara Memorie a stato solido cui il dielettrico è costituito da ossido di silicio e le armature da alluminio), mentre lo zero logico viene fornito dal condensatore scarico. Vi è però un inconveniente: questi minuscoli condensatori tendono a scaricarsi in breve tempo, e ciò poiché hanno capacità bassissime, dell’ordine dei femtofarad (ovvero 10-15 Farad) al fine di massimizzare la densità di memorizzazione). Per evitare la perdita dei dati memorizzati occorre quindi provvedere a “riscrivere” periodicamente i dati, ovvero a ricaricare i condensatori a intervalli regolari, ciò che richiede un “clock” ed un apposito circuito di ricarica che provvede a fornire i necessari cicli detti di “refresh”. Per questo motivo queste memorie vengono dette “dinamiche”, poiché se cessano i cicli di rinfresco i dati memorizzati vengono cancellati. P. De Vittor pag. 8