¿La memoria Flash más confiable para un sistema Linux incorporado?

5

¿Cuál sería el hardware de memoria Flash más confiable para usar en un sistema Linux incorporado? Es decir. ¿Una que tiene la menor posibilidad de perder datos o corromperse cuando se corta la energía? El Flash sería para un sistema Linux, por lo que debería tener al menos 2 GB de tamaño. La velocidad no es super importante. El costo es algo importante, pero no tan importante como la confiabilidad. Las partes candidatas serían Compact Flash, NAND Flash sin formato, eMMC o algún otro tipo que no conozco.

Actualmente usamos tarjetas micro SD, pero no me gustan, parecen muy poco confiables y he tenido varias corrompidas o simplemente mueren por completo. Otro aspecto que no me gusta es que no obtiene ninguna visibilidad de lo que hace la tarjeta en los niveles inferiores, por ejemplo. cuántos errores de ECC se están produciendo, cuántos bloques de repuesto quedan, etc.

Tenemos una renovación de diseño por venir, así que quería ver cuáles serían las mejores opciones de hardware.

    
pregunta fred basset

1 respuesta

7

Si desea ver lo que se hace dentro, ya ha respondido su pregunta: no puede usar el flash administrado, su única solución es el flash NAND sin formato.

Como quiere confiabilidad, no puede tener 2 páginas dañadas cuando falla una escritura, esto excluye el flash MLC y TLC. Opte por el flash SLC NAND de 2 GB (BeNAND no se ajusta a sus requisitos). Es caro, pero es su requisito.

Pero seamos un poco más pragmáticos, necesita que su sistema arranque y evitar que se corrompa por una repentina pérdida de energía. Esto excluye las tarjetas SD, pero permite que se especifiquen eMMC: eMMC para entornos integrados. Fabricantes como Micron y Toshiba ofrecen eMMC que puede usar parcialmente como pseudo-SLC para aumentar la confiabilidad de su partición de arranque, que usa el almacenamiento en búfer para reducir la pérdida de datos y evitar la corrupción del sistema de archivos, sin manejar toda la corrección de ECC / reubicación de página / mal manejo de bloques / desgaste - Nivelar las cosas por su cuenta y, con JEDEC eMMC standard , puede obtener información sobre el número de los bloques disponibles, la media / edad máxima de sus bloques, y tiene comandos dedicados para detener las operaciones en segundo plano, lo que le permite realizar un apagado limpio en aproximadamente 20 ms, en lugar de un tiempo indeterminado con la tarjeta SD. Y esto no requiere un controlador NAND con grandes capacidades de ECC.

    
respondido por el Jacen

Lea otras preguntas en las etiquetas