¿Qué tipo de FLASH (NAND o NOR) se usa en el microcontrolador? [cerrado]

Estoy haciendo un estudio sobre sistemas de archivos para mcirocontollers (MCU), usando solo flash interno. Me encuentro haciéndome estas preguntas: ¿Qué tipo de memoria FLASH se usa más comúnmente en MCU? ¿NAND o NOR?

Esto puede ser útil cuando se diseña o selecciona un sistema de archivos.

He estado mirando la hoja de datos de varias MCU (STM32, MSP430, Atmel), pero no pude encontrar esta información. Solo dice "memoria FLASH". ¿Alguien sabe lo que se usa generalmente?

(Sé que algunos usan FRAM, pero solo pregunto sobre la tecnología de memoria FLASH)

Flash se refiere al hecho de que está escrito en fragmentos. Esto hace que borrar/escribir sea más rápido. No sé si esto todavía se aplica aunque. La mayoría usa tecnología de puerta flotante, si la memoria no me falla. en.wikipedia.org/wiki/Floating-gate_MOSFET No sé de memoria si nand o nor es mejor, pero sé que uno es generalmente superior en términos de ciclos de vida.
Por lo general, los microcontroladores pueden ejecutar código desde su flash interno, este es NOR flash porque permite accesos aleatorios, mientras que NAND es solo de bloque. Este código FLASH puede no ser parcialmente borrable o muy limitado en el número de ciclos de escritura/borrado. Algunos microcontroladores tienen varios tipos de memoria no volátil, algunos tienen celdas EEPROM (donde cada byte se puede reescribir individualmente). Esto realmente depende del chip.
Se puede inferir de la hoja de datos al ver si se puede borrar en bytes o en bloques. No todas las MCU en realidad le permiten sobrescribir el flash desde el interior.
@pjc50: Entonces, si la hoja de datos dice que se puede borrar en bloque (que es el caso de todas las hojas de datos que he estado mirando), ¿entonces Flash es...?
Bloquear-borrable implica NAND.
@ pjc50 ¿No implica borrado de bytes EEPROM, y no parpadea en absoluto? Tanto NAND como NOR se pueden borrar en bloque. ¿Quiso decir lectura de bytes por casualidad?

Respuestas (1)

Sin duda, para la memoria de programa, la memoria de elección es NOR Flash. NAND flash tiene varios problemas que lo hacen inadecuado para el almacenamiento de programas (se debe acceder a NAND en bloques y tiene la mala costumbre de corromper algunos de sus datos, por lo que se necesita un sistema de gestión para realizar un seguimiento del uso de bloques y de registros incorrectos. Usted no quiere poner su programa en un medio poco confiable).

¿Está seguro? NAND tiene que escribirse en bloques, pero puede leerse aleatoriamente y, una vez escrito con éxito, tiende a quedarse allí. La memoria de programa en las unidades de producción generalmente solo se escribe una pequeña cantidad de veces.
NAND y NOR son igualmente fiables a la misma densidad . Sin embargo, NAND es más fácil de reducir.
@ pjc50: sí, estoy seguro, una de las diferencias más importantes entre NOR y NAND es que NOR es de acceso aleatorio mientras que NAND no lo es
@CL: en absoluto, las memorias flash NI NO necesitan un administrador de sector defectuoso, mientras que las memorias NAND SÍ.
Puedo escribir Kinetis flash word a la vez (4 bytes), así que supongo que usa NOR.
@ClaudioAviChami ¿Estás hablando de memorias flash NOR y NAND con la misma densidad ?
Secundo a Claudio Avi Chami. Dado el mismo nodo tecnológico, las memorias flash NAND son menos fiables que las NOR. Esto se debe a que el propósito principal de la memoria flash NAND no es la confiabilidad. Es para almacenar tanta información como puedas. El óxido del túnel suele ser más pequeño y eso es un gran problema en términos de confiabilidad: un solo defecto puede descargar toda la compuerta flotante.
Aquí hay una descripción sobre NOR y NAND de la documentación de OpenOCD : " La memoria flash NOR generalmente admite instrucciones directas de CPU y acceso al bus de datos, mientras que los datos de una memoria flash NAND deben copiarse en la memoria antes de poder usarse". Entonces debería ser NOR .