8.5 Líneas de comunicación

Las memorias eMMC, UFS, y eMCP se comunican con el CPU a través de diferentes líneas o interfaces de comunicación, dependiendo del tipo de memoria y la arquitectura del sistema.


Memoria eMMC

La memoria eMMC utiliza una interfaz basada en el estándar MMC (MultiMediaCard) para comunicarse con el CPU. Las principales líneas de comunicación son:

  1. CMD (Command Line):
    • Línea dedicada para enviar comandos del CPU a la memoria eMMC, basada en una interfaz de un solo bit.
  2. DAT0-DAT7 (Data Lines):
    • Las líneas de datos pueden ser de 1 bit (modo estándar), 4 bits, o 8 bits (modo de alta velocidad). Estas líneas transfieren datos entre el CPU y la memoria. Dependiendo de la configuración, el ancho de banda de las líneas puede variar (por ejemplo, 8 bits en alta velocidad).
  3. CLK (Clock Line):
    • El CPU proporciona una señal de reloj a la memoria a través de esta línea, sincronizando la transferencia de datos y comandos.
  4. RST_n (Reset):
    • Línea de reinicio que permite al CPU reiniciar el módulo eMMC en caso de fallo o para iniciar el arranque.
  5. VCC, VCCQ:
    • Aunque no son líneas de comunicación propiamente dichas, estas alimentaciones permiten que las líneas de I/O y el núcleo de la eMMC funcionen adecuadamente.

Memoria UFS (Universal Flash Storage)

La memoria UFS utiliza una interfaz diferente basada en el estándar MIPI M-PHY y UniPro, que permite velocidades de transferencia mucho mayores en comparación con eMMC. Las principales líneas de comunicación son:

  1. TX/RX Lanes (Líneas de Transmisión y Recepción):
    • UFS utiliza pares diferenciales para la comunicación de alta velocidad. Las líneas TX (transmisión) y RX (recepción) permiten que el CPU y la memoria se comuniquen simultáneamente. Dependiendo de la versión de UFS, puede haber una o más pistas (lanes), con frecuencias que permiten transferencias de varios Gbps.
  2. REF_CLK (Reference Clock):
    • Similar a eMMC, UFS también necesita una señal de reloj para sincronizar las transferencias de datos, aunque en este caso es un reloj diferencial de alta precisión utilizado para la señalización.
  3. RST_n (Reset):
    • Línea de reinicio que permite al CPU reiniciar la memoria UFS.
  4. PWM Mode (Pulse Width Modulation):
    • UFS puede operar en modos de baja velocidad utilizando modulación por ancho de pulso para reducir el consumo de energía en momentos de baja demanda.
  5. VCC, VCCQ, VCCQ2:
    • Aunque no son estrictamente líneas de comunicación, las alimentaciones son necesarias para mantener las interfaces y los controladores funcionando correctamente.

Memoria eMCP (Embedded Multi-Chip Package)

La memoria eMCP combina eMMC o UFS con DRAM, por lo que las líneas de comunicación son una combinación de las líneas de eMMC o UFS junto con las de la DRAM. Esto significa que, además de las líneas descritas para eMMC o UFS, también habrá líneas para la DRAM:

  1. Para la parte de almacenamiento (eMMC/UFS):
    • Usa las mismas líneas de comunicación que su contraparte, dependiendo de si el almacenamiento es eMMC o UFS.
    • CMD, DAT0-DAT7, CLK, y RST_n en eMMC.
    • TX/RX Lanes, REF_CLK, y RST_n en UFS.
  2. Para la parte de DRAM (LPDDR4/LPDDR5):
    • Address/Command Lines: Las líneas de dirección (ADDR) y comando son utilizadas para indicar a la memoria DRAM qué datos leer o escribir.
    • Data Lines (DQ0-DQn): Las líneas de datos se comunican directamente con el CPU para leer o escribir datos de la memoria.
    • Clock Lines (CK/CK#): Señales de reloj que sincronizan las operaciones de la DRAM con el CPU.
    • Control Lines (RAS#, CAS#, WE#): Líneas de control como RAS# (Row Address Strobe), CAS# (Column Address Strobe), y WE# (Write Enable) para gestionar las operaciones de lectura/escritura de la memoria DRAM.