stringtranslate.com

Controlador de memoria

Un controlador de memoria , también conocido como controlador de chip de memoria ( MCC ) o unidad controladora de memoria ( MCU ), es un circuito digital que gestiona el flujo de datos que van hacia y desde la memoria principal de una computadora . [1] [2] Cuando un controlador de memoria está integrado en otro chip, como una parte integral de un microprocesador , generalmente se le llama controlador de memoria integrado ( IMC ).

Los controladores de memoria contienen la lógica necesaria para leer y escribir en la memoria dinámica de acceso aleatorio (DRAM) y para proporcionar la actualización de la memoria crítica y otras funciones. La lectura y escritura en la DRAM se realiza seleccionando las direcciones de datos de fila y columna de la DRAM como entradas al circuito multiplexor , donde el demultiplexor de la DRAM utiliza las entradas convertidas para seleccionar la ubicación de memoria correcta y devolver los datos, que luego son pasa a través de un multiplexor para consolidar los datos con el fin de reducir el ancho de bus requerido para la operación. Los anchos de bus de los controladores de memoria varían desde 8 bits en sistemas anteriores hasta 512 bits en sistemas más complicados, donde normalmente se implementan como cuatro controladores de memoria simultáneos de 64 bits que funcionan en paralelo, aunque algunos funcionan con dos controladores de memoria de 64 bits. se utiliza para acceder a un dispositivo de memoria de 128 bits .

Algunos controladores de memoria, como el integrado en los procesadores PowerQUICC II, incluyen hardware de detección y corrección de errores . [3] Una forma común de controlador de memoria es la unidad de administración de memoria (MMU), que en muchos sistemas operativos implementa direccionamiento virtual .

Historia

Las computadoras más antiguas basadas en Intel y PowerPC tienen chips controladores de memoria que están separados del procesador principal. A menudo, estos están integrados en el puente norte de la computadora, también llamado a veces concentrador controlador de memoria.

La mayoría de los microprocesadores de escritorio o estaciones de trabajo modernos utilizan un controlador de memoria integrado ( IMC ), incluidos los microprocesadores de Intel , AMD y los construidos en torno a la arquitectura ARM . Antes de K8 (alrededor de 2003), los microprocesadores AMD tenían un controlador de memoria implementado en el puente norte de su placa base . En K8 y posteriores, AMD empleó un controlador de memoria integrado. [4] Asimismo, hasta Nehalem (alrededor de 2008), los microprocesadores Intel utilizaban controladores de memoria implementados en el puente norte de la placa base. Nehalem y luego cambió a un controlador de memoria integrado. [5] Otros ejemplos de arquitecturas de microprocesadores que utilizan controladores de memoria integrados incluyen Fermi de NVIDIA , POWER5 de IBM y UltraSPARC T1 de Sun Microsystems .

Si bien un controlador de memoria integrado tiene el potencial de aumentar el rendimiento del sistema, por ejemplo reduciendo la latencia de la memoria , bloquea el microprocesador en un tipo (o tipos) de memoria específicos, lo que obliga a un rediseño para admitir tecnologías de memoria más nuevas. Cuando se introdujo la SDRAM DDR2 , AMD lanzó nuevas CPU Athlon 64 . Estos nuevos modelos, con controlador DDR2, utilizan un socket físico diferente (conocido como Socket AM2 ), por lo que sólo encajarán en placas base diseñadas para el nuevo tipo de RAM. Cuando el controlador de memoria no está integrado, se puede instalar la misma CPU en una placa base nueva, con un puente norte actualizado para usar memoria más nueva.

Algunos microprocesadores de la década de 1990, como el DEC Alpha 21066 y el HP PA-7300LC , tenían controladores de memoria integrados; sin embargo, en lugar de mejorar el rendimiento, esto se implementó para reducir el costo de los sistemas al eliminar la necesidad de un controlador de memoria externo. [ cita necesaria ]

Algunas CPU están diseñadas para tener sus controladores de memoria como componentes externos dedicados que no forman parte del chipset. Un ejemplo es IBM POWER8 , que utiliza chips Centaur externos que se montan en módulos DIMM y actúan como buffers de memoria, chips de caché L4 y como controladores de memoria reales. La primera versión del chip Centaur usaba memoria DDR3, pero luego se lanzó una versión actualizada que puede usar DDR4. [6]

Seguridad

Algunos controladores de memoria experimentales contienen un segundo nivel de traducción de direcciones, además del primer nivel de traducción de direcciones realizado por la unidad de administración de memoria de la CPU para mejorar el rendimiento del bus y la caché. [7]

Los controladores de memoria integrados en ciertos procesadores Intel Core proporcionan codificación de memoria como una característica que convierte los datos del usuario escritos en la memoria principal en patrones pseudoaleatorios . [8] [9] Se supone que la codificación de memoria previene el análisis forense y de ingeniería inversa basado en la remanencia de datos DRAM al hacer ineficaces varios tipos de ataques de arranque en frío . En la práctica actual esto no se ha logrado; La codificación de memoria solo ha sido diseñada para solucionar problemas eléctricos relacionados con la DRAM. Los estándares de codificación de memoria de finales de la década de 2010 no solucionan ni previenen problemas de seguridad y no son criptográficamente seguros, ni necesariamente son de código abierto ni están abiertos a revisión o análisis públicos. [10]

ASUS e Intel tienen sus propios estándares de codificación de memoria. Actualmente, las placas base ASUS permiten al usuario elegir qué estándares de codificación de memoria utilizar (ASUS o Intel) o desactivar la función por completo.

Variantes

Memoria de doble velocidad de datos

Los controladores de memoria de doble velocidad de datos (DDR) se utilizan para controlar la SDRAM DDR , donde los datos se transfieren en los flancos ascendente y descendente del reloj de memoria del sistema. Los controladores de memoria DDR son significativamente más complicados en comparación con los controladores de velocidad de datos únicos [ cita necesaria ] , pero permiten transferir el doble de datos sin aumentar la velocidad del reloj de la celda de memoria o el ancho del bus.

Memoria multicanal

Los controladores de memoria multicanal son controladores de memoria en los que los dispositivos DRAM se separan en varios buses diferentes para permitir que los controladores de memoria accedan a ellos en paralelo. Esto aumenta la cantidad teórica de ancho de banda del bus por un factor del número de canales. Si bien un canal para cada celda DRAM sería la solución ideal, agregar más canales es muy difícil debido al número de cables, la capacitancia de las líneas y la necesidad de que las líneas de acceso paralelas tengan longitudes idénticas.

Memoria totalmente almacenada

Los sistemas de memoria con buffer completo colocan un dispositivo de memoria buffer en cada módulo de memoria (llamado FB-DIMM cuando se usa RAM con buffer completo), que a diferencia de los dispositivos controladores de memoria tradicionales, usa un enlace de datos en serie al controlador de memoria en lugar del enlace paralelo usado en diseños de RAM anteriores. Esto reduce el número de cables necesarios para colocar los dispositivos de memoria en una placa base (lo que permite utilizar un número menor de capas, lo que significa que se pueden colocar más dispositivos de memoria en una sola placa), a expensas de aumentar la latencia (el tiempo necesario para acceder a una ubicación de memoria). Este aumento se debe al tiempo necesario para convertir la información paralela leída de la celda DRAM al formato serie utilizado por el controlador FB-DIMM y nuevamente a un formato paralelo en el controlador de memoria de la placa base.

En teoría, el dispositivo de memoria intermedia del FB-DIMM podría construirse para acceder a cualquier celda DRAM, permitiendo el diseño de un controlador de memoria independiente de la celda de memoria, pero esto no se ha demostrado, ya que la tecnología está en su infancia.

Controlador de memoria flash

Muchos dispositivos de memoria flash , como unidades flash USB y unidades de estado sólido , incluyen un controlador de memoria flash . La memoria flash es inherentemente más lenta de acceder que la RAM y, a menudo, queda inutilizable después de unos pocos millones de ciclos de escritura, lo que generalmente la hace inadecuada para aplicaciones RAM.

Ver también

Referencias

  1. ^ Guía de examen de certificación Comptia A+, séptima edición, por Mike Meyers, en el glosario, parte inferior de la página 1278: "Chip que maneja las solicitudes de memoria de la CPU".
  2. ^ Limpio, Adam G. (4 de diciembre de 2003). Maximizando el rendimiento y la escalabilidad con IBM WebSphere. Presione. ISBN 9781590591307. Consultado el 6 de febrero de 2015 .
  3. ^ "Controlador de memoria"
  4. ^ Vries, Hans de. "Chip Architect: arquitectura de microprocesador de próxima generación de AMD". www.chip-architect.com . Consultado el 17 de marzo de 2018 .
  5. ^ Torres, Gabriel (26 de agosto de 2008). "Dentro de la microarquitectura Intel Nehalem". Secretos de hardware . pag. 2 . Consultado el 7 de septiembre de 2017 .
  6. ^ Prickett Morgan, Timothy (17 de octubre de 2016). "IBM incorpora la memoria DDR4 a los sistemas de energía". Selva de TI . pag. 1 . Consultado el 7 de septiembre de 2017 .
  7. ^ John Carter, Wilson Hsieh, Leigh Stoller, Mark Swansony, Lixin Zhang y otros. "Impulso: creación de un controlador de memoria más inteligente".
  8. ^ "Escritorio de la familia de procesadores Intel Core de segunda generación, escritorio de la familia de procesadores Intel Pentium y escritorio de la familia de procesadores Intel Celeron" (PDF) . Junio ​​de 2013. p. 23 . Consultado el 3 de noviembre de 2015 .
  9. ^ "Familia de procesadores Intel Core de segunda generación móvil y familia de procesadores Intel Celeron móvil" (PDF) . Septiembre de 2012. p. 24 . Consultado el 3 de noviembre de 2015 .
  10. ^ Igor Skochinsky (12 de marzo de 2014). "Secreto de Intel Management Engine". Compartir diapositivas . págs. 26-29 . Consultado el 13 de julio de 2014 .

enlaces externos