Che materia stai cercando?

Anteprima

ESTRATTO DOCUMENTO

Con le memorie MLC le operazioni di lettura sono sempre basate sulle tensioni di soglia della

cella. In questo caso si effettua una ricerca dicotomica del valore con due passaggi. Prima si

impone una tensione di soglia centrale di 4V e si valuta se il mosfet conduce (dobbiamo

guardare i dati a destra) o meno (dobbiamo guardare i dati a sinistra). A questo punto si

impone una tensione di soglia nuovamente centrale ma nell´intervallo prescelto e si valuta il

risultato.

In quanto alle operazioni di scrittura è necessario effettuare prima una cancellazione delle

celle di un blocco e poi riscrivere l´intero blocco con il nuovo dato. Nel caso delle memorie SLC

la cancellazione e scrittura di una singola cella non comporta problemi particolari, mentre con

le memorie MLC occorrono diversi passaggi:

1)Scrittura del dato 11 nella cella.

2)Verifica del dato 11.

3)Scrittura del valore desiderato.

4)Verifica del valore desiderato.

Mettiamo dunque a confronto diretto le caratteristiche delle memorie SLC con quelle delle

memorie MLC e cerchiamo di coglierne vantaggi e svantaggi.

Densità di memorizzazione

Considerando lo stesso processo produttivo e le stesse dimensioni del chip, le memorie MLC a

due bit offrono una capacità doppia rispetto a quelle SLC.

Prestazioni

Sempre nelle stesse condizioni del punto precedente, le memorie MLC richiedono tempi da due

a tre volte superiori nella scrittura rispetto alle memorie SLC. I tempi - dunque le prestazioni -

in lettura sono invece molto simili grazie all´utilizzo di un comparatore di tensione nella

rilevazione dei livelli di soglia che esegue il controllo praticamente all´istante.

Potenza assorbita

Non ci sono grosse differenze circuitali fra memorie flash MLC ed SLC dunque anche i

consumi sono all´incirca gli stessi. 6

Vita media

Le memorie flash MLC hanno una valore di vita media di almeno un ordine di grandezza

inferiore se comparato con quello delle memorie SLC: il degrado del silicio dovuto al

surriscaldamento ed alle correnti di dispersione fa sì che venga man mano ridotta la

differenziazione fra i livelli riducendo così la sicurezza nella rilevazione del dato. Si consideri

comunque che 10.000 cicli corrispondono - se consideriamo un disco da 64GB - a scrivere 40

TB di dati in un periodo di 5 anni di vita, ovvero 22 GB di nuovi dati al giorno. Con un disco da

128 GB i valori raddoppiano. Se però volessimo utilizzare dischi SSD con sistemi che scrivono

continuamente sul disco come server o personal video recorder (PVR), allora la scelta deve

necessariamente cadere su dischi che utilizzano memorie flash SLC.

Correzione dell´errore

Allo stesso modo in cui un hard disk tradizionale può avere qualche settore rovinato, le

memorie NAND flash prevedono una mappa gestita dal controller che tiene conto di eventuali

aree di memoria difettose ed una logica di error correction (ECC) è utilizzata per correggere

tali bit. Dette funzionalità sono integrate nei memory controller oggi disponibili in commercio i

quali aggiungono anche altre features necessarie alla gestione delle celle di memoria flash.

Per quanto visto sinora, le memorie Flash SLC sono utilizzate principalmente in applicazioni

industriali che richiedono elevate prestazioni ed affidabilità a lungo termine inclusi modelli di

schede Compact Flash e dischi SSD. Le memorie Flash MLC sono invece maggiormente

indicate in applicazioni consumer che non richiedono un´affidabilità di lunga durata come in

USB drives e media player portatili. 7

La struttura di un SSD

Da quanto visto sinora sembrerebbero non esserci grossi problemi a carico della tecnologia

SSD ma solo vantaggi. Nell´utilizzo reale di questi dispositivi occorre tenere in conto numerose

variabili che purtroppo minano le loro prestazioni, a volte anche in modo considerevole.

La struttura di un SSD prevede un´organizzazione gerarchica delle celle di memoria: 32

singole celle formano una bitline, 32 bitlines (1024 celle) formano una pagina, 128 pagine

formano un blocco e 1.024 blocchi formano un piano. In questa struttura l´elemento cui siamo

maggiormente interessati è la pagina di memoria. Essa ha una dimensione di 4kB e

rappresenta l´atomo, ovvero il più piccolo elemento modificabile non solo dal controller del

disco ma anche dal sistema operativo stesso. Quando al disco sarà impartita una richiesta di

lettura oppure di scrittura, esso dovrà per forza di cose caricare l´intera pagina e poi

individuare al suo interno il dato (la singola cella) attivando le giuste bitline e wordline.

Organizzazione Interna

di una Memoria Flash

Nel caso di un´operazione di lettura tutto questo procedimento non comporta alcun problema

specifico o meglio, i problemi sono esattamente gli stessi di quello di un tradizionale disco

rigido. Ma quando vogliamo scrivere un dato su una delle celle della pagina la situazione

cambia radicalmente. La scrittura di un dato viene fatta all´interno di una cella che risulta

essere libera e si badi bene, abbiamo detto non cancellata. Il file system, infatti, tiene

libera

traccia di tutte le celle di memoria e sa quali sono state liberate e quali invece ancora occupate:

quando cancelliamo un dato dal disco non avviene una rimozione fisica dello stesso ma la cella

nella quale era contenuto viene marcata come disponibile.

Con i dischi rigidi tradizionali, questo implica che nel momento in cui la cella dovesse servire a

memorizzare un nuovo dato, la testina andrà fisicamente a sovrascrivere ciò che c´era prima e

sarà ricreato un giusto indice nel file system.

Con i dischi SSD, non è possibile effettuare semplicemente una sovrascrittura della cella. Se

ricordate bene infatti, l´informazione nella cella è identificata dalla carica elettronica presente

nel Floating Gate ed è importante che questa sia fissata a determinati valori in modo che

l´operazione di lettura dia un risultato certo. Perciò, prima di effettuare la scrittura su una

cella viene eseguita una cancellazione che solitamente significa impostare il valore della cella

ad 1 logico con Floating Gate svuotato di elettroni e marcare tale cella come disponibile. 8

I problemi non finiscono qui, in quanto nelle memorie flash non è possibile cancellare una

singola cella e nemmeno una singola pagina ma occorre agire a livello di blocco: pensate che

quando vogliamo scrivere anche un solo byte dobbiamo prima cancellare un blocco da 512

KB, ben 128 pagine. Questa scelta è dovuta ad una limitazione principalmente di tipo fisico ed

avviene ponendo tutti i bit del blocco a 1.

I passi da compiere per di una memoria flash sono dunque nell´ordine:

scrivere su una pagina

1)Leggere il contenuto dalla memoria flash dell´intero blocco da 128 pagine e spostarlo in una

memoria cache di tipo SDRAM.

2)Scrivere i dati nella memoria cache.

3)Cancellare il blocco nella memoria flash.

4)Scrivere il blocco intero dalla memoria cache alla memoria flash. Struttura di un SSD

Hard disk tradizionali vs. SSD

Prima di procedere oltre vogliamo chiarire quali sono le differenze fra un disco rigido

tradizionale ed un SSD.

Gli hard disk tradizionali sono basati su uno o più piatti che ruotano attorno ad un asse ed una

o più testine che si spostano sopra di esso per leggere il dato. Il meccanismo è molto simile a

quello di un giradischi dove abbiamo un braccio che termina con una testina ed una puntina ed

un piatto sul quale va poggiato il disco in vinile. Quest´ultimo dispone di diverse tracce ed a

seconda di dove posizioniamo la testina ascolteremo un diverso brano inciso su di esso.

Il braccio del giradischi compreso di testina e puntina può essere assimilato alla testina di un

hard disk che si muove lungo il raggio del piatto. Il posizionamento viene effettuato per mezzo

di una particolare elettronica che comanda un servomotore: lo scopo è quello di avvicinare la

testina alla traccia dove si trova il dato che deve essere letto oppure alla traccia che contiene la

posizione libera dove il sistema ha deciso di scrivere un dato. Tale piatto, in rotazione

continua, dispone di tracce sulle quali sono registrati i dati sfruttando i principi

dell´elettromagnetismo.

Nel caso degli SSD non vi è invece alcuna parte in movimento e i dati sono scritti e letti solo

utilizzando segnali elettrici. Gli SSD possono essere comparati alle tradizionali chiavette

USB. D´altro canto essi utilizzano dei chip di memoria flash per memorizzare il dato, anche se

aggiungono una grossa parte di elettronica di controllo per far sì che le prestazioni siano

elevate ed il comportamento sia aderente a quello di un normale disco rigido.

Occorre infatti dire che per il sistema sul quale dovesse essere montato un disco SSD non

cambia nulla in termini di interfaccia o del modo di gestire i dati. L´utente potrà integrare nel

proprio PC indifferentemente un hard disk o un SSD a patto che essi abbiano un´interfaccia di

collegamento, generalmente SATA 2, compatibile con la scheda madre.

La sezione di memoria dei dischi SSD è realizzata attraverso celle di memoria NAND Flash

organizzate in maniera matriciale molto rigida. 9

Ogni cella presente nel reticolato è individuata da due coordinate, una di riga ed una di

colonna, come in battaglia navale. In questo caso i dati vengono letti e scritti attivando la cella

che corrisponde a determinate coordinate e iniettando oppure estraendo da essa elettroni.

Capite bene che l´arma vincente dei dischi SSD potrebbe essere non tanto nella banda dati

disponibile quanto nei tempi di accesso alle informazioni che non risentono in alcun modo

dell´inerzia di componenti meccanici. Stante la situazione attuale, infatti, la banda dati

sarebbe comunque limitata dall´interfaccia di connessione SATA 2 (3Gigabit/s pari a 384

Megabyte/s) che, per i dischi SSD costituisce certamente un limite. I tempi di accesso degli

SSD non dovendo spostare nulla di fisico ma utilizzando la sola corrente elettrica per rilevare

un dato, sono di circa 3 ordini di grandezza inferiori a quelli di un disco rigido.

Confronto con le unità tradizionali

Vantaggi

La totale assenza di parti meccaniche in movimento porta diversi vantaggi, di cui i principali

sono:

-Rumorosità non essendo presente alcun motore di rotazione, al contrario degli Hard

assente,

Disk tradizionali.

-Minore gli SSD hanno mediamente un tasso di rottura inferiore a quelli

possibilità di rottura:

degli Hard Disk. Questo tasso oscilla tra lo 0.5% fino al 3% mentre negli Hard Disk può

raggiungere il 10%.

-Minori consumi durante le operazioni di lettura e scrittura;

-Tempo si lavora nell’ordine dei decimi di millisecondo; il tempo di accesso

di accesso ridotto:

dei dischi magnetici è oltre 50 volte maggiore, attestandosi invece tra i 5 e i 10 millisecondi;

-Maggiore alcuni produttori dichiararano resistenze a shock di 1500 g;

resistenza agli urti:

-Minore produzione di calore;

Svantaggi

A fronte di una maggiore resistenza agli urti e a un minor consumo, le unità SSD hanno due

svantaggi:

-Maggiore prezzo per bit;

-Minore dovuto al limite di riscritture delle memorie flash.

durata dell’unità,

Entrambi i problemi sembrano destinati a risolversi.

Le nuove tecnologie stanno portando a memorie flash in grado di garantire durate pari o

superiore a quella di un Hard Disk e attualmente i produttori dichiarano 140 anni di vita con 50

GB di riscritture al giorno. Il tutto grazie all’introduzione di particolari tecniche, come quella

dell’uso di nanotubi di carbonio. Il costo di questa tecnologia sta scendendo, facendo

presagire una futura sostituzione dei dischi tradizionali con unità a stato solido. 10

Prestazioni in lettura e scrittura

Un elemento che viene immediatamente alla luce analizzando le prestazioni di un SSD è la

minore velocità in scrittura rispetto a quella in lettura e la sua forte variabilità in dipendenza

della dimensione dei file che si vogliono scrivere.

Ciò dipende dal fatto che i File System dei Sistemi Operativi utilizzano blocchi di celle dalla

dimensione di 4 KB, nei SSD la dimensione dei blocchi è molto superiore. Questo comporta che

per scrivere una cella dobbiamo leggere prima tutto il blocco, quindi scriverci sopra la cella

desiderata lasciando le altre inalterate e infine salvarlo.

Ne deriva, che se dobbiamo scrivere più celle le prestazioni migliorano, perché a fronte della

lettura e poi del salvataggio di un blocco, possiamo scriverci dentro contemporaneamente

tante celle quanto sono quelle libere disponibili.

Un modo per migliorare le prestazioni è quello di conoscere i blocchi liberi; per ottenere ciò i

sistemi operativi di ultima generazione mettono a disposizione il comando TRIM, che

comunica al controller del SSD quali blocchi sono inutilizzati e cancellando le celle

direttamente in fase di cancellazione dei file, migliorando le prestazioni.

La frammentazione di un SSD non influisce sulle sue prestazioni, poiché il tempo di accesso a

qualunque cella è identico; i moderni sistemi operativi pertanto disattivano la

deframmentazione del disco, in quanto risulta inutile.

Benchmark di un Hard Disk (sinistra) e un SSD (destra) 11


ACQUISTATO

1 volte

PAGINE

14

PESO

12.71 MB

PUBBLICATO

+1 anno fa


DETTAGLI
Corso di laurea: Corso di laurea in ingegneria informatica e dell'automazione
SSD:

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher sgorbius90 di informazioni apprese con la frequenza delle lezioni di Calcolatori elettronici e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Politecnico delle Marche - Univpm o del prof Pirani Massimiliano.

Acquista con carta o conto PayPal

Scarica il file tutte le volte che vuoi

Paga con un conto PayPal per usufruire della garanzia Soddisfatto o rimborsato

Recensioni
Ti è piaciuto questo appunto? Valutalo!

Altri appunti di Corso di laurea in ingegneria informatica e dell'automazione

TAR, Tecnologie per l'Automazione e la Robotica
Appunto
Esercizi svolti prova scritta Fluidodinamica
Esercitazione
Appunti completi acustica e illuminotecnica perfetti
Appunto
appunti lezione
Appunto