Saltar a contenido

Clasificación de la memoria

La memoria se puede dividir generalmente en cuatro categorías principales: la memoria interna (RAM), la memoria externa (ROM), la memoria intermedia (caché) y las memorias flash.

Memoria RAM

La memoria RAM (Random Access Memory) es una forma de memoria de acceso aleatorio, lo que significa que los datos se pueden leer o escribir de manera no secuencial. Se caracteriza por su velocidad de acceso rápida, pero los datos se pierden en caso de pérdida de energía y tiene una capacidad relativamente limitada. Por lo general, durante la ejecución de un CPU (MCU), se copian programas desde la ROM a la RAM para su ejecución. La RAM se utiliza como memoria interna para el intercambio de datos directo con la CPU (MCU) y también se conoce como memoria principal.

La memoria RAM se divide en varias categorías:

  • SRAM: La SRAM (Static RAM) es una memoria estática de acceso aleatorio que no requiere circuitos de actualización para mantener los datos almacenados. Ofrece un alto rendimiento, pero tiene una baja densidad de integración (ocupando un espacio significativo), alto consumo de energía y alta velocidad. Por lo general, se incorpora una pequeña cantidad de SRAM en un MCU o un SoC para su uso como caché de alta velocidad. La caché actúa como un búfer para el intercambio de datos, lo que permite a un dispositivo buscar datos primero en la caché antes de acceder a la memoria principal. Debido a que la caché es mucho más rápida que la memoria principal, su objetivo es acelerar el rendimiento del sistema.
    • PSRAM: PSRAM (Pseudo-Static RAM) es una variante de SRAM que incluye un mecanismo de actualización interna.
    • SSRAM: La SSRAM (Synchronous Static RAM) tiene una línea de reloj y opera en función de señales de reloj para lectura y escritura.
  • DRAM: La DRAM (Dynamic RAM) es una memoria dinámica de acceso aleatorio que requiere refrescamiento periódico para retener los datos. La memoria DDR utilizada en las computadoras es un tipo de DRAM.
    • DARAM: La DARAM (Dual-Port RAM) permite dos accesos en un solo ciclo de reloj.
    • SDRAM: La SDRAM (Synchronous Dynamic RAM) sincroniza la transmisión de datos con señales de reloj.
      • SDR SDRAM: La SDR SDRAM (Single-Data-Rate SDRAM) utiliza una sola señal de reloj de un solo extremo y toma muestras en el flanco ascendente del reloj.
      • DDR SDRAM: La DDR SDRAM (Double-Data-Rate SDRAM) toma muestras en el flanco ascendente y descendente del reloj, lo que duplica la velocidad de funcionamiento en comparación con la SDR y utiliza señales de reloj diferencial para una mejor resistencia a interferencias. Funciona a 2.5V/2.6V.
      • DDR2 SDRAM: Con una velocidad de memoria de 200 a 533 MHz y un voltaje de funcionamiento de 1.8V.
      • DDR3 SDRAM: Implementa una memoria previa de 8 bits, con una velocidad de memoria de 400 a 1066 MHz y un voltaje de funcionamiento de 1.5V/1.35.
      • DDR4 SDRAM: Utiliza una memoria previa de 16 bits y un voltaje de funcionamiento de 1.2V.
      • DDR5 SDRAM: Funciona con un voltaje de 1.1V.
      • GDDR SDRAM: La GDDR (Graphics DDR) tiene varias versiones, desde GDDR2 hasta GDDR6.
      • LPDDR SDRAM: LPDDR (Low-Power DDR) tiene una velocidad de reloj de 166 MHz, siendo LPDDR2 la variante con un voltaje de funcionamiento de 1.2V y una velocidad de reloj de 100 a 533 MHz.

Comparación de los parámetros de las tres versiones de DDR:

[to_be_replaced[Insert DDR Comparison Table Here]]

| Entrada       | DDR3                    | DDR2                 | DDR                  |
| ------------ | ----------------------- | -------------------- | -------------------- |
| Frecuencia de trabajo | 400/533/667/800 MHz     | 200/266/333/400 MHz  | 100/133/166/200 MHz  |
| Tasa de transferencia de datos | 800/1066/1333/1600 MT/s | 400/533/667/800 MT/s | 200/266/333/400 MT/s |
| Ancho de prefetch | 8 bits                   | 4 bits                | 2 bits                |
| Tipo de reloj de entrada | Reloj diferencial         | Reloj diferencial      | Reloj diferencial      |
| Longitud de ráfaga | 8, 4                    | 4, 8                 | 2, 4, 8              |
| DQS          | Diferencial Data Strobe   | Diferencial Data Strobe | Data Strobe unipolar  |
| Voltaje de alimentación | 1.5V                    | 1.8V                 | 2.5V                 |
| Norma de nivel de datos | SSTL_15                 | SSTL_18              | SSTL_2               |
| CL           | 5, 6, 7, 8, 9 ciclos      | 3, 4, 5 ciclos         | 2, 2.5, 3 ciclos       |
| ODT          | Soportado                | Soportado             | No soportado           |

## Memoria ROM externa

La memoria ROM externa (Read Only Memory) también conocida como almacenamiento auxiliar, no puede intercambiar información directamente con la CPU. Tiene una velocidad de almacenamiento considerablemente más lenta, pero una capacidad relativamente grande. En sistemas simples, a menudo se utiliza en conjunto con la memoria principal para almacenar programas y otros archivos.

Al principio, la ROM era de un solo uso, solo se podía escribir una vez, y luego solo se podía leer; los datos no se perdían en caso de corte de energía. Ejemplos de esto son los CD-ROM y DVD-ROM. Luego surgieron PROM, EPROM y EEPROM, que permiten escritura condicional.

La memoria ROM externa se divide en las siguientes categorías (según la evolución temporal):

- PROM: ROM programable, con fusibles en forma de matriz interna, se puede escribir una vez y si se comete un error, es necesario reemplazarla.
- EPROM: ROM borrable por ultravioleta, requiere pulsos de alto voltaje generados por un programador para escribir.
- OTP-ROM: ROM programable una vez, con el mismo principio de escritura que la EPROM.
- EEPROM: Memoria ROM programable y borrable eléctricamente (Electrically Erasable Programmable), desarrollada a partir de la EPROM. Puede borrarse eléctricamente y se puede operar a nivel de byte, pero tiene una baja integración y es relativamente cara.

## Memoria Flash

La memoria Flash es un tipo de memoria no volátil de larga vida útil (conserva los datos sin alimentación eléctrica), que se considera una forma amplia de EEPROM, ya que también es una ROM borrable eléctricamente. La principal diferencia con la EEPROM es que la Flash solo se puede leer y escribir en sectores (bloques), pero su costo es menor que el de la EEPROM. La Flash se divide en NOR Flash y NAND Flash.

La memoria Flash se divide en las siguientes categorías (según la evolución temporal):
  • NOR Flash: Las líneas de datos y direcciones están separadas, lo que permite la función de búsqueda/lectura aleatoria, similar a la RAM. Esto significa que los programas pueden ejecutarse directamente en NOR Flash sin necesidad de copiarse en la RAM. Sin embargo, su capacidad es limitada y se divide en NOR Flash paralela/serial.
  • Nand Flash: Las líneas de datos y direcciones se comparten, lo que impide la búsqueda aleatoria de direcciones y la ejecución directa de programas. Tiene una mayor capacidad y existe en versiones SLC, MLC, TLC y QLC.
  • MMC: Interfaz MMC, NAND Flash, controlador principal.
  • eMMC Flash: Una solución de almacenamiento incrustado que cuenta con una interfaz MMC (bus de datos paralelo), NAND Flash y un controlador principal.
  • UFS: Bus de datos serial, Nand Flash, controlador principal.

Otra información

  • El estándar más reciente para eMMC teóricamente alcanza una velocidad máxima de 400 MB/s. La principal ventaja de UFS es su capacidad de lectura/escritura bidireccional de doble canal, con un ancho de banda máximo de 23,2 Gbps en la interfaz UFS 3.0, es decir, 2,9 GB/s.
  • La interfaz eléctrica de eMMC es la misma que la de las tarjetas SD; la diferencia radica en que la tarjeta SD se suelda a la PCB y se le añaden conectores y carcasa. eMMC admite buses de datos de 8 bits y 4 bits, mientras que la tarjeta SD utiliza un bus de datos de 4 bits.
  • eMMC consta de dos buses: uno para la entrada y salida de datos de las instrucciones, y otro para el reloj de datos paralelos. Por otro lado, UFS utiliza dos líneas diferenciales para transmitir instrucciones y datos en forma de paquetes.
  • SSD = Controlador principal + Caché DRAM + Nand Flash
  • eMMC = Controlador principal + Nand Flash + Interfaz de paquete estándar

Referencias y agradecimientos

Dirección original del artículo: https://wiki-power.com/ Este artículo está protegido por la licencia CC BY-NC-SA 4.0. Si desea reproducirlo, por favor indique la fuente.

Este post está traducido usando ChatGPT, por favor feedback si hay alguna omisión.