¿Por qué la RAM no es compatible con versiones anteriores?

Como que respondiste tu propia pregunta … es la marcha de la tecnología. Sí, tal vez pueda hackear una CPU LGA771 en un zócalo LGA775. Pero no puede piratear una CPU LGA771 o LGA775 en un zócalo LGA1156, LGA1356 o LGA2011. Los requisitos para avanzar superaron la necesidad de seguir siendo compatibles con versiones anteriores.

Digamos que tenemos un diseño DDR3 y queríamos colocar dispositivos DDR2 en él. Ni siquiera estoy hablando de DIMM, solo de dispositivos sin formato. Simplemente no va a funcionar, y no por una sola razón. Un chip DDR3 estándar funciona a 1.5V, DDR2 a 1.8V. En realidad, está construyendo su controlador DDR3 para el voltaje más bajo … algunos podrían soportar ambos, otros no. DDR3 admite configuraciones de diseño que fallarían para los chips DDR2 … la idea aquí era hacer que los buses de memoria DDR3 fueran más fáciles o más flexibles de diseñar, particularmente importante ya que los sistemas informáticos se ampliaban y aumentaban los buses DRAM.

Y desde un punto de vista de nuevo diseño, si puedo tener DDR3, ¿por qué querría DDR2? Sí, eso es un PITA si está construyendo su propia PC y quiere ahorrar dinero, actualizar la placa base y guardar la RAM. Pero nadie está construyendo chips de controlador de memoria para el 0.0001% de la población que compra PC que considera que esto es algo importante. Los están construyendo para personas como yo, diseñando sistemas informáticos y, en última instancia, para más consumidores, ya que algunas de las reglas de diseño de DDR3 facilitaron la entrega de un bus de memoria más rápido y más compatible en todo el rango de restricciones de chip y PCB que DDR2 .

DDR4 es aún más diferente, ya que utiliza algunos modos de direccionamiento nuevos que no existían en los tipos de memoria anteriores. Simplemente no hay forma de conectar un tipo de memoria anterior a un controlador DDR4.

PCI Express es un caso simple porque es un prototipo simple. Para cada enlace, tiene cuatro cables, dos que van en una dirección, en la otra, siempre entre dos dispositivos solamente. No bus Y cada enlace es independiente del otro … todo lo que tengo que hacer en el diseño es hacer coincidir cada par de cables dentro de aproximadamente 5mil en la ruta. No 15 direcciones, 8 controles y 64 señales de datos en 4–8 chips como lo haría con los chips DDR3. Un front-end PCI Express es lo suficientemente pequeño como para que si necesitaran usar un tipo diferente de controlador o receptor en el chip, aún pudieran mantener el antiguo abierto para compatibilidad con versiones anteriores. No es realmente práctico para un gran bus DRAM.

Y, por supuesto, PCI Express, USB, etc. son buses periféricos. Espera colocar cualquier generación de tarjeta en cualquier PC nueva. La DRAM rara vez es algo modificado por los consumidores, e idealmente, está más acoplado y optimizado para la CPU que cualquier enlace PCIe.

Este problema fue considerado hace algunos años con el FB-DIMM. FB significa “completamente protegido”, pero lo que realmente tiene aquí es un controlador de memoria que comunica un protocolo independiente de DRAM a un chip “Advanced Memory Buffer” en el módulo DIMM real. Esto consistía en 14 carriles en serie (un poco como PCIe) que van desde el módulo de memoria al controlador de memoria y 10 carriles en serie que van desde el controlador de memoria al módulo de memoria. Esos enlaces seriales, como PCIe, se actualizan mucho más fácilmente entre arquitecturas de memoria.

El problema con FB-DRAM es la latencia. Su CPU genera una dirección y la envía al controlador AMB, que la convierte al protocolo AMB. Eso es recibido por el controlador AMD en el módulo de memoria, y solo ahora, por ejemplo, comienza un ciclo de memoria DDR2 real. El enlace agregado no es más lento que una interfaz de bus DDR, pero la latencia es mucho mayor.

Y sí, también hay latencia en PCIe y USB 3.1. Pero esos, como se mencionó, son principalmente para un dispositivo de E / S. Entonces, para un dispositivo de E / S, toma esa latencia, envía su comando de lectura y lee 10 MB de datos … la latencia en sí misma no es importante. Pero para DRAM, tomas la latencia, lees en una línea de caché de 32 o 64 palabras, luego tu CPU da un salto y no estás dirigiendo una parte completamente diferente de la memoria. DRAM es el último lugar donde desea una mayor latencia. Eso es lo que mató a FB-DIMM.

Y, por supuesto, ese chip AMB adicional los hizo más caros. Por lo tanto, tampoco es una gran solución para los consumidores. FB-DIMM se extinguió antes de que las versiones DDR3 de un controlador AMB estuvieran disponibles.

Principalmente, esperaría, porque no hay mucha demanda del mercado para ello. Ram no es algo que te muevas mucho. Se espera que los dispositivos USB se intercambien regularmente, y plug-and-play es una gran parte del conjunto de características de USB. Lo mismo no es cierto para Ram.

Sin embargo, Ram está más cerca de la CPU que cualquier otra parte del sistema y, por lo tanto, cualquier reducción en el rendimiento afecta más el rendimiento del sistema. Es probable que cualquier operación bimodal (como esperar que DDR4 admita DDR3) introduzca un retraso adicional que impactará el rendimiento en cada operación de la computadora todo el tiempo. (Y esperar que la memoria DDR3 sea compatible con DDR4 antes de que se inventara DDR4 es ridículo),

La compatibilidad del procesador que describe es un evento muy raro. ¿Cuántos zócalos de CPU diferentes e incompatibles han existido desde que DDR1 se inventó, aparentemente, en 2000? Creo que solo cuatro estándares en aproximadamente ocho iteraciones de la ley de Moore son bastante buenos.

Dave Haynie tiene una excelente (y detallada) respuesta. Me gustaría simplificarlo un poco:

Cualquier componente de PC será compatible con todos los demás dentro de “aproximadamente” un período de tres años. Más allá de ese punto, es un tiro de mierda. Aquí hay un ejemplo más antiguo de MBoard de la transición de PCI a PCIe:

Entonces, sus viejas tarjetas PCI funcionarán. AGP? ¡Ido! Use una tarjeta gráfica PCIe.

¿Hoy? Obtenga un buen tablero grande y exhiba sus tarjetas antiguas como arte de pared.

¿O para la RAM del portátil?

¡Salud!

A menos que la cantidad de pines en un DIMM haya cambiado de una especificación a otra, generalmente es posible colocar RAM más rápido en una ranura más lenta y de esa manera la RAM es “compatible con versiones anteriores” con computadoras más antiguas y lentas (por ejemplo, he puesto PC- 133 SIMMs en ranuras PC-100 en placas base y eso funcionó), pero uno aún debe tener cuidado con otras especificaciones (por ejemplo, con búfer versus sin búfer, ECC versus no).

La organización de estándares involucrada son los estándares de memoria JEDEC.