Descripción general de la tecnología flash

Clasificación flash

El nombre completo de Flash es memoria flash, que generalmente se denomina "memoria flash". A menudo se utiliza en campos integrados, como teléfonos móviles, plataformas, placas base de computadoras, etc. La mayoría de los dispositivos de almacenamiento móviles, como unidades flash USB, tarjetas SD, tarjetas MMC y tarjetas TF, también utilizan Flash como medio de almacenamiento.

La memoria Flash se puede dividir principalmente en varios tipos: NOR Flash, NAND Flash, eMMC y UFS.

  • NOR flash admite la ejecución en el chip y puede ejecutar código directamente en él. El controlador de software es más simple que NAND. Generalmente se utiliza el tipo NOR de pequeña capacidad porque el NOR de pequeña capacidad tiene una velocidad de lectura rápida. NOR Flash tarda mucho en borrarse, pero proporciona un bus de datos y direccionamiento completo y permite el acceso aleatorio a cualquier área de la memoria, lo que lo hace muy adecuado para reemplazar chips ROM antiguos. En ese momento, los chips ROM se usaban principalmente para almacenar código que rara vez necesitaba ser actualizado, como el BIOS de la computadora o el firmware del decodificador (Set-top Box). NOR Flash puede soportar entre 10.000 y 1 millón de ciclos de borrado y escritura y es la base de los primeros medios de almacenamiento flash extraíbles.

  • NAND Flash : tipo NAND Flash que Toshiba anunció en el Simposio Internacional de Circuitos de Estado Sólido (ISSCC) en 1989. Para leer y escribir datos en Nand Flash, se requiere control maestro externo y diseño de circuito. . NAND Flash tiene un tiempo de borrado más rápido y el área de cada celda de memoria también es más pequeña, lo que permite que NAND Flash tenga una mayor densidad de almacenamiento y un menor costo por bit que NOR Flash. Al mismo tiempo, su borrabilidad es diez veces mayor que la de NOR Flash. Sin embargo, la interfaz de E/S de NAND Flash no tiene un bus de direcciones externo de acceso aleatorio. Debe leerse en forma de bloque. El tamaño de bloque típico de NAND Flash es de cientos a miles de bits.
    Debido a que la mayoría de los microprocesadores y microcontroladores requieren acceso aleatorio a nivel de bytes, NAND Flash no es adecuado para reemplazar la ROM utilizada para cargar programas. Desde esta perspectiva, NAND Flash se parece más a dispositivos de almacenamiento secundarios, como discos ópticos y discos duros. NAND Flash es muy adecuado para su uso en dispositivos de almacenamiento masivo como tarjetas de memoria. El primer medio de almacenamiento extraíble basado en NAND Flash fue SmartMedia. Desde entonces, muchos medios de almacenamiento también han adoptado NAND Flash, incluidas las tarjetas MultiMediaCard, Secure Digital, Memory Stick y xD.

  • eMMC MMC (Tarjeta multimedia integrada) es establecida por la Asociación MMC. eMMC es equivalente a NandFlash+control principal IC. El protocolo de interfaz externa es el mismo que el de las tarjetas SD y TF. Es principalmente una especificación estándar para la memoria integrada en productos como como teléfonos móviles o tabletas. . Una ventaja obvia de eMMC es que se integra un controlador en el paquete, que proporciona una interfaz estándar y administra la memoria flash, lo que permite a los fabricantes de teléfonos móviles centrarse en otras partes del desarrollo de productos y acortar el tiempo de comercialización de los productos. Estas características son igualmente importantes para los proveedores de NAND que esperan reducir el tamaño y el costo de la litografía. eMMC consta de una solución de almacenamiento integrada con una interfaz MMC (tarjeta multimedia), un dispositivo de memoria flash (Nand Flash) y un controlador de host, todo en un pequeño paquete BGA. Con velocidades de interfaz de hasta 52 MBytes por segundo, eMMC tiene un rendimiento rápido y escalable. Al mismo tiempo, el voltaje de su interfaz puede ser de 1,8 v o 3,3 v.

  • UFS (Universal Flash Storage), hablando de UFS, hay que hablar de su antecesor eMMC. eMMC es una tarjeta multimedia integrada y una memoria no volátil integrada especificada por la Asociación JEDEC. Utiliza tecnología de transmisión paralela y la lectura y escritura deben realizarse por separado. Aunque solo proporciona funciones de lectura y escritura de un solo canal, aún tiene las ventajas de tamaño pequeño, alta integración y baja complejidad. El último estándar eMMC 5.1 tiene una velocidad de lectura continua de aproximadamente 250 MB/s.
    UFS fue lanzado por primera vez por JEDEC en 2011. Utiliza una nueva tecnología de transmisión en serie y puede leer y escribir operaciones simultáneamente. La primera generación de UFS no se popularizó mucho debido a la pequeña diferencia de velocidad con respecto al estándar eMMC en ese momento y al costo relativamente alto. No fue hasta la llegada del estándar UFS 2.0 en 2014, con una velocidad de lectura continua de aproximadamente 800 MB/s, que UFS se convirtió en la configuración estándar adoptada gradualmente por los teléfonos insignia de Android. El último estándar UFS 3.1 actual tiene una velocidad de lectura continua de aproximadamente 1700 MB/s. En este momento, la velocidad de transmisión de UFS está muy por delante de la de eMMC.

FTL

FTL, anteriormente conocido como "Capa de traducción Flash", funciona entre el flash simple (como nand flash, nor flash, spi flash, etc.) y el sistema de archivos. Simula el flash simple como un dispositivo de bloque ordinario. El sistema de archivos está montado Lo mismo que el disco duro, por lo que no hay necesidad de preocuparse por la capa subyacente: qué medio de hardware es. Por lo tanto, FTL generalmente integra gestión de bloques defectuosos, algoritmos de equilibrio dinámico, mapeo de direcciones lineales y otros algoritmos. FTL generalmente se ejecuta en el lado de la CPU como software. Por ejemplo, los sistemas de archivos yaffs y ubifs implementan funciones FTL. Para las memorias de tipo eMMC y UFS, ellos mismos implementan funciones FTL.

MTD

Memory Technology Device es una tecnología diseñada y desarrollada por el kernel de Linux para administrar uniformemente el flash desnudo. Resume las operaciones flash mencionadas anteriormente y proporciona interfaces estándar para sistemas de archivos de capa superior como jiffs, yaffs, yaffs2 y ubifs. MTD es equivalente a la tecnología de partición de disco en la PC: un bloque completo de flash se particiona de acuerdo con la configuración (como la tabla de particiones en el archivo dts del kernel) y luego se formatea el sistema de archivos en cada partición, de modo que esta partición puede alojar Los archivos o imágenes correspondientes, como BootLoader y kernel, están disponibles. Cabe señalar que MTD no puede administrar dispositivos como eMMC y UFS.

Sistema de archivos

Para diferentes flash, se deben seleccionar diferentes sistemas de archivos. Para flash simple como NOR flash y NAND flash, no existe FEL en sí y el sistema de archivos debe implementar funciones relacionadas con FEL, como jiffs, yaffs y ubifs
.

Para flash como mmc emmc ufs SD, el dispositivo de almacenamiento de hardware integra el algoritmo FTL, por lo que el sistema operativo puede montar directamente sistemas de archivos de PC como ext4 ext3 FAT32.

Supongo que te gusta

Origin blog.csdn.net/linux_embedded/article/details/129736045
Recomendado
Clasificación