StorageReview.com

SSD Flash

La memoria Flash a stato solido è disponibile utilizzando la tecnologia NAND e NOR. La tecnologia NOR consente l'indirizzamento casuale diretto e il flusso di dati allo stesso modo di un normale chip di memoria RAM, consentendone l'utilizzo per la memorizzazione e l'esecuzione di programmi all'interno di un sistema di elaborazione. I chip NOR Flash sono più lenti, meno densi e hanno una capacità di resistenza alla riscrittura limitata che li rende inferiori alle soluzioni basate su NAND se utilizzati come alternativa a un disco rotante.   

La tecnologia NAND Flash è una memoria seriale proprio come un'unità disco. I dati vengono indirizzati e memorizzati in blocchi anziché come singoli bit o byte indirizzabili. Le unità a stato solido basate su NAND Flash sono progettate per imitare un disco magnetico rotante dal punto di vista del sistema, offrendo tempi di accesso più rapidi e velocità di throughput dei dati comparabili. Lo svantaggio principale di un SSD rispetto al disco magnetico è la densità dei dati e il costo per megabyte.

Componenti istantanei
 
Per il bene di questa sezione, ci concentreremo sui componenti NAND poiché dominano le offerte SSD. I componenti NAND Flash hanno densità da 1 Gb (gigabit) a 64 Gb per chip. Esistono anche configurazioni Single Level Cell (SLC) e Multi-Level Cell (MLC), con SLC in grado di memorizzare un singolo bit per cella e MLC in grado di memorizzare più di 1 bit per cella.  
 
Similmente ai settori e alle tracce di un'unità magnetica, i componenti NAND Flash hanno strutture chiamate pagine e blocchi. Le pagine sono settori e i blocchi sono analoghi alle tracce e, proprio come su un disco, esiste un codice di correzione degli errori (ECC) associato a ciascun settore. Una configurazione comune del componente NAND Flash è di 128 pagine di 4,096+128 byte ciascuna per una dimensione di blocco di 512 KB. I dati vengono letti e scritti in sequenza, proprio come un disco.
 
NAND Flash presenta anche difetti cellulari intrinseci, proprio come i difetti superficiali su un disco. Per questo motivo, nel dispositivo vengono forniti blocchi di dati di riserva e una tabella di rimappatura per consentire al software di sistema di mascherare i blocchi di dati difettosi non appena vengono rilevati. 
 
A differenza di un disco magnetico, la NAND Flash ha una resistenza di riscrittura limitata a circa 1,000,000 di volte per blocco. Non puoi semplicemente scrivere sugli stessi blocchi indefinitamente. Per questo motivo, viene utilizzato uno schema di livellamento dell'usura per spostare periodicamente le aree a cui si accede più comunemente, come una directory. Il livellamento dell'usura è simile alla deframmentazione di un disco rigido, tuttavia nel caso di NAND Flash è necessario che avvenga altrimenti i dati potrebbero andare persi.
 
Alcuni chip Flash supportano il livellamento dell'usura, sebbene questa funzione venga eseguita principalmente dal controller o dal livello software di sistema. Viene fatto un grande sforzo per nascondere l'attività di livellamento dell'usura in modo che non interferisca con le normali prestazioni del dispositivo.
 
Il gruppo Open NAND Flash Interface (ONFI) ha sviluppato uno standard per i componenti NAND Flash che è stato ampiamente adottato dall'industria. Questo standard fornisce un I/O comune e un set di comandi e standardizza efficacemente un'architettura comune per i componenti conformi a ONFI. Questa architettura include i seguenti elementi comuni:
 
  • Interfaccia dati: di solito 8 bit, a volte 16 bit nelle parti più dense
  • Controller I/O – Multiplexizza tipi di parole di dati, comando e stato. Decodifica i comandi
  • Logica di controllo: gestisce l'handshake delle transazioni I/O con il controller Flash
  • Registro indirizzi: identifica il blocco a cui accedere in lettura o scrittura
  • Registro dati/cache: un registro statico a parola singola per bufferizzare i dati tra I/O e l'array
  • Registro di stato: segnala gli errori nelle transazioni e nel flusso di dati
  • Decodifica riga/colonna: suddivide il valore dell'indirizzo nei valori della pagina
  • Flash Array: celle Flash disposte in righe e colonne

 

parti flash
Tipico diagramma a blocchi del componente Flash SSD
 
La tabella seguente descrive ciascuna delle linee di I/O e di controllo in modo più dettagliato per le parti ONFI NAND Flash standard. 
 
Linea di controllo
Descrizione
Impiego
MA
Ingresso
Abilitazione blocco indirizzo: durante il tempo in cui ALE è ALTA, le informazioni sull'indirizzo lo sono
trasferito da I/O[7:0] nel registro degli indirizzi su chip. Da BASSO ad ALTO
transizione su WE#, quando le informazioni sull'indirizzo non vengono caricate, i segnali ALE
dovrebbe essere guidato BASSO.
CE#
Ingresso
Abilitazione chip: trasferisce i gate tra il sistema host e il dispositivo Flash NAND.
Dopo che il dispositivo diventa occupato o avvia un'operazione PROGRAMMA o CANCELLAZIONE, CE# può essere
de-affermato. Vedere “Funzionamento del bus” a pagina 16 per ulteriori dettagli operativi.
CLE
Ingresso
Abilitazione blocco comandi: quando CLE è ALTO, le informazioni vengono trasferite da
I/O [7:0] al registro di comando su chip sul fronte di salita di WE#. Quando
le informazioni sul comando non vengono caricate, i segnali CLE dovrebbero essere impostati su BASSO.
BLOCCO
Ingresso
Quando BLOCCO è ALTO durante l'accensione, la funzione BLOCCO BLOCCO è abilitata.
Per disabilitare BLOCK LOCK, collegare LOCK a VSS durante l'accensione o lasciarlo
non connesso (pull-down interno).
RIF#
Ingresso
Abilitazione alla lettura: i gate vengono trasferiti dal dispositivo NAND Flash al sistema host.
NOI#
Ingresso
Abilitazione alla scrittura: i gate vengono trasferiti dal sistema host al dispositivo NAND Flash.
WP#
Ingresso
Protezione da scrittura: protegge da operazioni involontarie di PROGRAMMA e CANCELLAZIONE. Tutto
Le operazioni PROGRAMMA e CANCELLAZIONE sono disabilitate quando WP# è BASSO.
I/O[7:0] (x8)
I/O[15:0] (x16)
I / O
Ingressi/uscite dati: segnali I/O bidirezionali trasferiscono indirizzo, dati e istruzioni
informazione. I dati vengono emessi solo durante le operazioni READ; altre volte l'I/O
i segnali sono input.
R/B#
Uscita
Pronto/occupato: il segnale pronto/occupato è un'uscita a drain aperto, attiva-BASSA, che utilizza un
resistenza pull-up esterna. Il segnale viene utilizzato per indicare quando il chip sta elaborando a
Operazione PROGRAMMA o CANCELLAZIONE. Il segnale viene utilizzato anche durante le operazioni READ to
indicano quando i dati vengono trasferiti dall'array al registro dati seriale.
Una volta completate queste operazioni, il segnale di pronto/occupato ritorna ad alta impedenza
stato.
VCC
Alimentazione
VCC: la sfera VCC è l'alimentatore.
VSS
Alimentazione
VSS: la sfera VSS è il collegamento a terra.
 
Alcune delle caratteristiche di questo standard includono:
 
  • Discovery: consente al controller Flash di determinare le caratteristiche del componente Flash
  • Indirizzamento LUN: consente al controller di attivare le operazioni sui componenti Flash in modo indipendente
  • Interleaving: consente al controller di sincronizzare le operazioni su un insieme di componenti Flash
  • Caching: consente il flusso dei dati da/verso il controller indipendentemente dalle operazioni dell'array Flash
  • Copyback: consente al componente Flash di spostare i dati da un blocco a un altro senza il coinvolgimento diretto del controller
 
I principali fornitori di componenti Flash SSD presenti sul mercato all'inizio del 2010 includono:
 
  • Hynix
  • Intel
  • Micron
  • SanDisk
  • Toshiba
  • Numonyx (ST Micro)
  • Samsung
 
Ogni fornitore offre una varietà di capacità, velocità e funzionalità per distinguersi dalla concorrenza.
I progettisti di sistema eseguono una serie di compromessi quando selezionano un fornitore e un particolare componente Flash per il prodotto SSD e il mercato di destinazione.  
 
I compromessi includono:
 
  • Media Buying programmatico – costo, pianificazione, supporto, garanzia e disponibilità.
  • Consulenza – prestazioni, potenza, opzioni del pacchetto, funzionalità, scalabilità e flessibilità.
  • Altro – comunanza, compatibilità, documentazione, supporto allo sviluppo, test e reputazione.
 
Nel processo di selezione dei componenti Flash, il progettista del sistema esegue la stessa analisi anche per il controller Flash e altre parti necessarie nella progettazione dell'SSD. È un processo iterativo per trovare la giusta combinazione di fornitori e componenti per soddisfare al meglio i requisiti di un particolare prodotto.   
 
Evoluzione tecnologica
 
La prossima generazione di componenti Flash sta integrando più funzionalità nel componente di base e offrendo un'interfaccia intelligente anziché un bus di memoria Flash standard di tipo ONFI utilizzato oggi dagli SSD.
 
Inizialmente questo approccio consentirà di avvicinare i componenti NAND Flash al bus del processore host per prodotti come i dispositivi mobili, offrendo un'ampia capacità di archiviazione e supporto per lo streaming e la registrazione di dati ad alta definizione. 
 
Per il PC attualmente non esiste uno standard “DIMM” per NAND Flash nel PC. È necessario. Ciò includerebbe dimensioni del modulo, connettore, tipo di bus, gestione degli errori e driver. 
 
Guide correlate: