Estoy tratando de entender cómo funciona el hardware de SDRAM si también tiene capacidad ECC.
Si un sistema de memoria tiene capacidad ECC, podrá corregir un solo error de bit en un bloque de memoria y detectar, pero no corregir, un error de múltiples bits. La forma en que lo entiendo es que cuando se lee el bloque de memoria, también se lee el Código de corrección de errores para ese bloque, y si se invierte un solo bit de lo que se escribió originalmente, el controlador de memoria lo corrige automáticamente. / p>
Ahora SDRAM, por su naturaleza, debe actualizar los datos que contiene o se corromperán con el tiempo. Por lo tanto, necesita leer sus celdas de memoria y luego volver a escribir los datos de manera regular. Por lo que he leído, esta lectura de actualización es ligeramente diferente de una lectura de memoria regular, ya que en realidad no tiene que enviar datos a través del bus a la CPU, por lo que la actualización se realiza en todo un banco a la vez y simplemente lee y escribe datos de nuevo en las mismas celdas sin tocar el bus.
Mi pregunta es si el proceso de ECC entra en juego durante las lecturas de actualización regulares de SDRAM, o se pasa por alto el proceso para que las actualizaciones se realicen lo más rápido posible para que no bloqueen el sistema de memoria e impidan el funcionamiento regular. accesos de memoria? Si tengo ECC SDRAM, ¿los errores de un solo bit se corrigen automáticamente en cada ciclo de actualización o el controlador de memoria espera hasta que la memoria oficial acceda para detectar y corregir los errores de un solo bit?
Quizás la respuesta podría depender del controlador de memoria en particular. Estoy leyendo la hoja de datos de un concentrador de controlador de gráficos y memoria Intel 855GM / 855GME para ver si ese controlador en particular hace lo que estoy describiendo, pero aún no he encontrado una respuesta.