¿Qué es la memoria ECC?

Para servidores en empresas y centros de datos, es fundamental minimizar los errores de datos, y ese es el objetivo de la  memoria ECC (código de corrección de errores).

ECC es un método para detectar y luego corregir errores de memoria de un solo bit. Un error de memoria de un solo bit es un error de datos en la producción o producción del servidor, y la presencia de errores puede tener un gran impacto en el rendimiento del servidor.

Hay dos tipos de errores de memoria de un solo bit: errores graves y errores suaves. Los errores graves son causados por factores físicos, como la variación excesiva de temperatura, el esfuerzo eléctrico o el esfuerzo físico que se produce en los bits de memoria.

Los errores suaves ocurren cuando los datos se escriben o se leen de forma diferente a la originalmente prevista, como las variaciones en el voltaje en la placa base, rayos cósmicos o desintegración radiactiva que pueden hacer que los bits en la memoria cambien. Como los bits retienen su valor programado en forma de una carga eléctrica, este tipo de interferencia puede alterar la carga de bits de memoria, causando un error. En los servidores, hay varios lugares donde pueden ocurrir errores: en la unidad de almacenamiento, en el núcleo de la CPU, a través de una conexión de red y en varios tipos de memoria.

En estaciones de trabajo y servidores donde los errores, la corrupción de datos o los fallos del sistema deben evitarse a toda costa, como en el sector financiero, la memoria ECC suele ser la opción elegida.

Así es como funciona la memoria ECC. En informática, los datos se reciben y transmiten a través de bits (la unidad más pequeña de datos en un ordenador) que se expresan en código binario utilizando uno o cero.

Cuando los bits se agrupan, crean código binario o “palabras”, que son unidades de datos que se direccionan y se mueven entre la memoria y la CPU. Por ejemplo, un código binario de 8 bits es 10110001.

Con la memoria ECC, existe un bit ECC adicional, que se conoce como bit de paridad. Este bit de paridad adicional hace que el código binario se lea 101100010, donde el último cero es el bit de paridad y se usa para identificar errores de memoria. Si la suma de todos los 1 en una línea de código es un número par (sin incluir el bit de paridad), entonces la línea de código se llama paridad par. El código sin errores siempre tiene paridad par. Sin embargo, la paridad tiene dos limitaciones: solo puede detectar números impares de errores (1, 3, 5, etc.) y permite que pasen números pares de errores (2, 4, 6, etc.). La paridad tampoco puede corregir errores, solo puede detectarlos. Ahí es donde entra en juego la memoria ECC.

La memoria ECC utiliza bits de paridad para almacenar un código cifrado al escribir datos en la memoria, y el código ECC se almacena al mismo tiempo. Cuando se leen los datos, el código ECC almacenado se compara con el código ECC que se generó cuando se leyeron los datos. Si el código que se leyó no coincide con el código almacenado, se descifra mediante los bits de paridad para determinar qué bit contenía un error, entonces este bit se corrige inmediatamente. Las tablas de síndromes son una forma matemática de identificar estos errores de bit y luego corregirlos.

A medida que se procesan los datos, la memoria ECC está constantemente analizando código con un algoritmo especial para detectar y corregir errores de memoria de un solo bit.

En las industrias críticas, como el sector financiero, la memoria ECC puede marcar una gran diferencia. Imagine que está editando la información de una cuenta confidencial de un cliente y luego intercambiando esta información con otras instituciones financieras. Cuando envía los datos, digamos que un dígito binario cambia por algún tipo de interferencia eléctrica.

El código binario que la otra institución financiera recibiría podría ser 100100011, lo que comunica información diferente a la que originalmente se pretendía; es un error. El tercer dígito ha cambiado de un 1 a un 0 debido a la interferencia eléctrica. Entonces, la suma de los primeros ocho bits ahora es 3, que no es paridad, lo que significa que los datos confidenciales que usted envía corren el riesgo de corromperse (o su sistema corre el riesgo de fallar). Sin embargo, si está instalada la memoria ECC, podrá detectar el error y corregirlo volviendo a cambiar el tercer dígito binario a un 1 (el código original).

Al detectar y corregir errores de un solo bit, la memoria del servidor ECC ayuda a preservar la integridad de sus datos, evitar la corrupción de datos y prevenir fallos y bloqueos del sistema.

Use la memoria Crucial ECC en servidores y estaciones de trabajo críticos.