Comprender de la esperanza de vida del almacenamiento flash para sistemas LabVIEW Real-Time

Información general

Este documento analiza cómo varios factores afectan la fórmula de resistencia de la unidad cuando se usa para calcular la cantidad de datos que se pueden escribir en un disco en un sistema LabVIEW Real-Time como un PXI/PXIe o cRIO 9803, antes de que deje de ser confiable.

 

A menudo, la selección del dispositivo de almacenamiento basado en flash adecuado para su aplicación exige un compromiso entre coste, capacidad y robustez. Por ejemplo, si bien las unidades basadas en celdas de nivel único (SLC) ofrecen la mayor durabilidad y longevidad, también son más caras por GB que las unidades basadas en celdas de varios niveles (MLC). Sin embargo, las unidades basadas en MLC tienen una vida útil mucho más corta que las unidades SLC, lo que puede ser especialmente problemático cuando se almacenan a temperaturas elevadas. Para ayudar a determinar qué tipo de memoria flash se debe usar, necesitamos comprender la esperanza de vida de cada opción y compararla con los requisitos de la aplicación. Comenzamos haciéndonos las siguientes preguntas:

 

  • ¿Qué arquitectura flash está disponible?
  • ¿Con qué eficiencia se va a usar el almacenamiento flash?
  • ¿Cuál será la temperatura no operativa (almacenamiento)?
  • ¿Cuál es la duración no operativa mínima aceptable (almacenamiento)? 

Contenido

Terminología

  • Unidad de disco duro (HDD): un dispositivo de almacenamiento masivo que utiliza medios físicos magnéticos giratorios para almacenar datos.
  • Unidad de estado sólido (SSD): un dispositivo de almacenamiento masivo que utiliza memoria flash para almacenar datos.
  • Resistencia de la unidad: la cantidad de datos escritos en una unidad antes de que deje de ser fiable.
  • Escrituras de unidad (DW): el número de veces que se puede llenar una unidad antes de que deje de ser fiable.
  • Total de bytes escritos (TBW): la cantidad de datos que se pueden escribir en una unidad antes de que deje de ser fiable.
  • Factor de amplificación de escritura (WAF): una medida de la eficiencia de utilización de flash.  Cuanto más alto sea el WAF, menos eficiente es el uso del flash.
  • Carga de trabajo: un perfil del tipo de transacciones de datos que se esperan para la aplicación.  La carga de trabajo está directamente relacionada con el WAF.
  • Ciclo P/E: el ciclo de programar/borrar (P/E) que tiene lugar cuando se almacenan datos en flash.
  • Celda flash: un transistor que almacena carga que representa datos.
  • Resistencia de la celda flash: el número de ciclos P/E que se pueden escribir en una celda individual antes de que esta deje de ser fiable.
  • Factor de aceleración de temperatura (AT): un ajuste para el impacto de la temperatura de almacenamiento en la resistencia de la unidad.  Se calcula con la ecuación de Arrhenius.
  • Factor de tiempo de almacenamiento (STF): un ajuste para el período de tiempo deseado en almacenamiento durante el que se mantiene la integridad de los datos.  Se calcula como (N/12), donde N es el número de meses en almacenamiento.
  • Retención de datos: la capacidad de flash para mantener la integridad de los datos almacenados a lo largo del tiempo cuando no hay alimentación.
  • SLC NAND: flash de celda de nivel único que almacena un solo bit de datos por celda usando dos niveles de voltaje posibles.
  • MLC NAND: flash de celda de niveles múltiples que almacena dos bits de datos por celda utilizando cuatro niveles de voltaje posibles.
  • eMLC NAND: flash MLC empresarial que almacena un bit de datos en una arquitectura MLC, ofreciendo un punto medio entre SLC y MLC en coste, resistencia y capacidad.  También se puede llamar pSLC (seudo-SLC) o iMLC (MLC de grado industrial).
  • TLC NAND: flash de celda de nivel triple que almacena tres bits de datos por celda representados por ocho niveles de voltaje posibles.
  • Planar NAND: las células están estructuradas en una sola capa de silicio.
  • NAND vertical (V-NAND): las celdas están estructuradas en múltiples capas creando columnas de celdas.  También se puede llamar 3D NAND.

Relación entre resistencia de la unidad, resistencia de la celda de flash, temperatura de almacenamiento, duración de almacenamiento y amplificación de escritura

Resulta extremadamente complicado calcular la cantidad exacta de resistencia que tiene un SSD en diversas condiciones de funcionamiento y almacenamiento e implica muchos factores con propiedades tanto medidas como estadísticas.  
Sin embargo, un buen modelo de resistencia de la unidad esperada puede darse como:

donde
     Resistencia de la unidad = cantidad total de datos que se pueden escribir, en escrituras de unidad.
    Resistencia de la celda de flash = número máximo de ciclos de programar/borrar (P/E) para la arquitectura flash determinada.
     STF = factor de tiempo de almacenamiento que se ajusta durante el periodo de tiempo de almacenamiento.
     AT = factor de aceleración para la temperatura que se ajusta a la temperatura de almacenamiento.
    WAF = factor de amplificación de escritura que se ajusta a la eficiencia con la que se usa el flash.

Diferencias en arquitecturas flash

Las unidades SSD suelen utilizar flash NAND para almacenar datos en celdas compuestas por transistores de puerta flotante.  La cantidad de carga almacenada en cada celda determina el valor de los datos.  Siempre que la carga sea suficiente para determinar el estado de la celda o pueda corregirse mediante el uso de códigos de corrección de errores (ECC), se mantendrá la integridad de los datos.  La estructura utilizada por el dispositivo de memoria flash determina la cantidad de bits de datos almacenados en cada celda, así como el número de veces que se puede escribir en esa celda.

Arquitectura flashCapas de celdasBits por celda Número de estados de voltaje de celdaResistencia de la celda1 (Ciclos P/E)
Planar SLC112~100,000
Planar MLC124~3,000
Planar eMLC / iMLC / pSLC112~20,000
Planar TLC138<1,000
SLC verticalVaría, normalmente 6412TBD2
MLC verticalVaría, normalmente 6424TBD2

1 La resistencia supone más de 1 año de retención de datos a 40 °C de almacenamiento al final de la vida útil de la celda.

2 Se espera que el flash MLC y el SLC vertical sea similar al planar flash en términos de resistencia. 

Resistencia de la celda flash 

La resistencia de la celda se describe como el número de ciclos de programar/borrar (P/E) a los que puede someterse una célula de flash antes de que los datos ya no puedan retenerse lo suficiente y la celda se vuelva poco fiable.  Cada vez que se escribe una celda flash (un ciclo P/E), la capa de óxido de la celda se degrada ligeramente.  A medida que esta capa se debilita por el impacto de los ciclos de P/E, se hace más fácil que se filtre la carga almacenada y se reduce la capacidad de la celda para retener datos.

Retención de datos flash

El nivel de carga en cada celda debe mantenerse dentro de ciertos umbrales para mantener la integridad de los datos.  Sin embargo, la carga se filtra de las células de flash con el tiempo, y si se pierde demasiada carga, los datos almacenados también se perderán.  

Durante el funcionamiento habitual, el firmware de la unidad flash actualiza regularmente las células para restaurar la carga perdida.  Sin embargo, cuando el flash no está encendido, el estado de carga se degradará de manera natural con el tiempo.  La velocidad de la pérdida de carga y la sensibilidad del flash a esa pérdida se ven afectadas por la estructura del flash, la cantidad de desgaste del flash (número de ciclos P/E realizados en la celda) y la temperatura de almacenamiento.  Las especificaciones de Resistencia de la celda flash generalmente suponen una duración mínima de retención de datos de 12 meses al final de la vida útil del disco.  

Para otras duraciones, se puede usar un Factor de tiempo de almacenamiento (STF) para ajustar la ecuación Resistencia de la unidad.   El STF se mide como una relación de tiempo en comparación con los 12 meses estándar.  Por ejemplo, si se desea una duración de almacenamiento de 36 meses, el STF sería 3 (36 meses / 12 meses).  A continuación se enumeran los valores de STF para diversos períodos de almacenamiento:

Duración de almacenamientoSTF
1 mes0.08
3 meses0.25
6 meses0.5
1 año1
3 años3
5 años5
10 años10

Retención de datos y temperatura de almacenamiento

Aunque tanto la temperatura operativa como la temperatura no operativa (almacenamiento) afectan a la retención de datos, la temperatura no operativa tiene un impacto mucho más significativo al calcular la resistencia de la unidad.  

Las temperaturas de almacenamiento más bajas aumentan la duración de la retención de datos, mientras que las temperaturas de almacenamiento más altas la reducen considerablemente.  Por ejemplo, aumentar la temperatura de almacenamiento de 40 °C a 70 °C puede reducir la resistencia de la unidad en más de un orden de magnitud, lo que da como resultado la retención de datos para una unidad al final de su vida útil de solo unas pocas semanas en lugar de un año completo .

El Factor de aceleración para la temperatura se puede utilizar para ajustar la temperatura de almacenamiento.  Esto se deriva de la ecuación de Arrhenius y se puede resumir en la siguiente tabla:

Temperatura de almacenamiento (°C)AT
250.13
300.26
401
556.4
7035
85168

Para obtener más información sobre el impacto de la temperatura en la resistencia de flash y la duración de la retención de datos, y cómo se calcula la AT, consulte Efectos de la temperatura en la resistencia de SSD.

Factor de amplificación de escritura y cargas de trabajo de datos

La memoria flash rara vez se utiliza a la perfección, y suele haber cierta ineficiencia que resulta en una aceleración del desgaste de la unidad.  El factor de amplificación de escritura (WAF) es una representación de la eficacia del flash en la que cuanto mayor es el FEA, menor es la eficacia.  Son varios los factores que intervienen en la determinación del WAF, algunos de los cuales están determinados por la aplicación:

  • Tamaño de los datos escritos (alineación con el tamaño del bloque de flash).
  • Cómo se escriben los datos (escritura aleatoria frente a secuencial).
  • Tipo de algoritmo de nivelación de desgaste utilizado (controlado por el firmware de la unidad).


Por lo general, los escritos secuenciales más grandes son más eficientes que los escritos aleatorios más pequeños.  Si bien no existe una fórmula establecida para configurar un WAF para aplicaciones industriales o integradas, los estándares de carga de trabajo de la aplicación JEDEC se pueden usar como proxy (consulte JEDEC JESD218 y JESD219 para obtener más información).  Enterprise representa una variedad de tamaños de archivo con datos aleatorios, mientras que Client

Además, el WAF se verá afectada por la forma en que el firmware de la unidad gestiona la utilización de la memoria flash mediante la nivelación del desgaste y la gestión inteligente de bloques.  Dado que el WAF depende en gran medida de la carga de trabajo de la aplicación y el firmware de la unidad, a veces también se utiliza una “regla general” de WAF=4.  

Carga de trabajoTipo de accesoWAF típico
Enterprise (JESD219)Datos aleatorios almacenados en SSD.~15
“Regla general”Mezcla de datos aleatorios y secuenciales utilizados como una aproximación de WAF cuando no hay otro modelo disponible.4
Client (JESD219)Típico de los portátiles de consumo, compuesto principalmente por largas escrituras secuenciales (por ejemplo, fotos, música) con algunos accesos aleatorios más pequeños.~2
“100% secuencial”Todas las escrituras se realizan en secuencia con archivos grandes.~1

Se puede hacer una determinación más precisa del WAF a través de la medición directa del rendimiento de la unidad. Un WAF para un caso de uso de flash y aplicación determinado puede calcularse ejecutando una aplicación durante unas horas y midiendo la cantidad real de datos escritos en la unidad y el número de ciclos de P/E llevados a cabo.  Dado el impacto de WAF en la resistencia de la unidad, se recomienda encarecidamente que las aplicaciones se perfilen para determinar su WAF. 

Cálculo de la resistencia de la unidad 

La resistencia de la unidad se puede determinar una vez que se conocen la resistencia de la celda flash, el factor de tiempo de almacenamiento, el factor de amplificación de temperatura y los factores de amplificación de escritura.  

Recuerde la fórmula de resistencia de la unidad:

Ejemplo 1

SLC SSD de 64 GB con una temperatura no operativa (almacenamiento) de 40 °C con registro de datos de transmisión (escrituras secuenciales) con 1 año de retención de datos deseada.  La resistencia de la celda flash SLC es de 100,000 ciclos P/E, STF y AT son ambos 1 (ya que estamos en la línea de base de 1 año a 40 °C), y el WAF es 1 para el modelo “100% secuencial”.

Bytes totales escritos antes del final de la vida útil = 64 GB x 100,000 Escrituras de unidades = 6400 TB

Ejemplo 2

SLC SSD de 64 GB con una temperatura no operativa (almacenamiento) de 55 °C con registro de datos de transmisión (escrituras secuenciales) con 1 año de retención de datos deseada.  La resistencia de la celda flash SLC es de 100,000 ciclos P/E, STF es 1, AT es 6.4 para 55 °C y WAF es 1 para el modelo “100 % secuencial”.

Bytes totales escritos antes del final de la vida útil = 64 GB x 15,614 escrituras de unidades = 1000 TB

Ejemplo 3

eMLC SSD de 128 GB con una temperatura no operativa (almacenamiento) de 55 °C con un perfil de escritura desconocido con 24 meses de retención de datos deseada. La resistencia de la celda flash eMLC es de 20.000 ciclos P/E, STF es 2 (24/12 meses), AT es 6,4 para una temperatura de almacenamiento de 55 °C y el WAF es 4 usando el modelo «Regla general».

Bytes totales escritos antes del final de la vida útil = 128 GB x 390 escrituras de unidades = 50 TB

Ejemplo 4 

MCL SSD de 480 GB con una temperatura no operativa (almacenamiento) de 70 °C con registro de datos de transmisión (escrituras secuenciales) con 3 años de retención de datos deseada.  La resistencia de la celda flash MLC es de 3.000 ciclos P/E, STF es 0.25 (3/12 meses), AT es 35 para 70 °C y WAF es 1 para el modelo “100% secuencial”.

Bytes totales escritos antes del final de la vida útil = 480 GB x 342 escrituras de unidades = 164 TB

Uso de las especificaciones de resistencia de la hoja de especificaciones 

La fórmula de resistencia de la unidad se puede utilizar para ajustar las especificaciones de la unidad para los factores ambientales y de rendimiento de su aplicación.  

Sin embargo, no hay un método constante para especificar la resistencia de la unidad.  Algunas hojas de datos simplemente enumeran la capacidad de la unidad y la tecnología de flash, mientras que otras hojas de datos enumeran las especificaciones de resistencia de la unidad en condiciones de prueba específicas. Estas especificaciones pueden enumerar la temperatura de almacenamiento y la duración de retención de datos utilizada para el cálculo, pero a menudo esta información no se indica explícitamente.  Si no se especifica, se puede suponer un almacenamiento a 40 °C y 1 año de retención de datos.  

Ejemplo

La hoja de especificaciones de la unidad enumera las especificaciones de la siguiente manera:

Tipo de flashSLC
Capacidad de la unidad64 GB
Resistencia: Total de bytes escritos (Enterprise):500 TB
Resistencia: Total de bytes escritos (Client):3855 TB


La aplicación de destino tiene una temperatura de almacenamiento de 55 °C, con 1 año de almacenamiento previsto, y se está utilizando de forma similar a la de un dispositivo de almacenamiento de consumo.  

Podemos analizar la hoja de especificaciones y determinar que con SLC (100,000 ciclos P/E), el WAF efectivo para Enterprise y Client es 12.8 y 1.7, respectivamente.   Dado que la aplicación de destino es similar a un dispositivo de consumo, podemos usar el WAF del cliente de 1,7 y la especificación de resistencia correspondiente de 3855 TB (o 60,000 escrituras de unidad).  

A continuación, debemos ajustar la temperatura de almacenamiento y la duración.  Esto se puede hacer con la siguiente ecuación:

La resistencia especificada es de 3855 TB con un almacenamiento estimado de 40 °C (ATSPEC = 1), 1 año de duración (STFSPEC = 1) y WAF SPEC de 1.7.  La aplicación objetivo es el almacenamiento a 55 °C (ATADJ = 6.4), 1 año de duración (STFADJ = 1) y WAFADJ de 1.7.  Esto nos da nuestra especificación de resistencia de la unidad ajustada de:

Was this information helpful?

Yes

No