De Wikipedia, la enciclopedia libre
Saltar a navegación Saltar a búsqueda

La verificación de paridad de RAM es el almacenamiento de un bit de paridad redundante que representa la paridad (par o impar) de una pequeña cantidad de datos de computadora (típicamente un byte) almacenados en la memoria de acceso aleatorio , y la posterior comparación de la paridad almacenada y calculada con detectar si se ha producido un error de datos .

El bit de paridad se almacenó originalmente en chips de memoria individuales adicionales; con la introducción de módulos enchufables DIMM, SIMM, etc., estuvieron disponibles en versiones sin paridad y con paridad (con un bit extra por byte , almacenando 9 bits por cada 8 bits de datos reales).

Historia [ editar ]

Módulos de memoria SIMM de 30 pines con 9 chips de memoria de un bit de ancho. El noveno chip se utiliza para almacenar la paridad.

Las primeras computadoras a veces requerían el uso de RAM de paridad y la verificación de paridad no se podía deshabilitar. Normalmente, un error de paridad hacía que la máquina se detuviera y se perdieran los datos no guardados; esta suele ser una mejor opción que guardar datos corruptos. La RAM de paridad lógica , también conocida como RAM de paridad falsa, es una RAM sin paridad que se puede utilizar en computadoras que requieren RAM de paridad. La RAM de paridad lógica recalcula un bit de paridad siempre válido cada vez que se lee un byte de la memoria, en lugar de almacenar el bit de paridad cuando se escribe en la memoria; el bit de paridad calculado, que no revelará si los datos se han corrompido (de ahí el nombre "paridad falsa"), se presenta a la lógica de verificación de paridad. Es un medio de usar RAM de 8 bits más barata en un sistema diseñado para usar solo RAM de paridad de 9 bits.

Errores de memoria [ editar ]

En las décadas de 1970 y 1980, la confiabilidad de la RAM era a menudo menos que perfecta; en particular, las DRAM 4116 que fueron un estándar de la industria de 1975 a 1983 tuvieron una tasa de falla considerable ya que usaban voltajes triples (-5, +5 y +12) que resultaban en altas temperaturas de operación. A mediados de la década de 1980, estos habían dado paso a DRAM de voltaje único, como el 4164 y el 41256, con el resultado de una mayor confiabilidad. Sin embargo, RAM no alcanzó los estándares modernos de confiabilidad hasta la década de 1990. Desde entonces, los errores se han vuelto menos visibles ya que la RAM de paridad simple ha dejado de utilizarse; o son invisibles porque no se detectan, o se corrigen de forma invisible con ECC RAM. Se cree, con mucha justificación, que la RAM moderna es confiable, y la RAM de detección de errores ha dejado de usarse en gran medida para aplicaciones no críticas. A mediados de la década de 1990,la mayoría de las DRAM habían abandonado la comprobación de paridad porque los fabricantes confiaban en que ya no era necesaria. Algunas máquinas que admiten paridad o ECC permiten habilitar o deshabilitar la verificación en elBIOS , lo que permite utilizar una RAM sin paridad más barata. Si se utiliza RAM de paridad, el chipset normalmente la utilizará para implementar la corrección de errores, en lugar de detener la máquina ante un error de paridad de un solo bit.

Sin embargo, como se explica en el artículo sobre la memoria ECC , los errores, aunque no son eventos cotidianos, no son insignificantes. Incluso en ausencia de defectos de fabricación, la radiación natural provoca errores aleatorios; Las pruebas en los muchos servidores de Google encontraron que los errores de memoria no eran eventos raros y que la incidencia de errores de memoria y el rango de tasas de error en diferentes DIMM eran mucho más altos de lo que se informó anteriormente. [1]

Corrección de errores [ editar ]

La verificación simple de paridad pasa / no pasa requiere que la memoria tenga bits adicionales y redundantes más allá de los necesarios para almacenar los datos; pero si hay bits adicionales disponibles, se pueden usar para corregir, así como detectar, errores. La memoria anterior, tal como se usaba, por ejemplo, en IBM PC / AT ( memoria FPM y EDO ) estaba disponible en versiones que no admitían verificación o verificación de paridad [2] (en computadoras anteriores que usaban chips RAM individuales en lugar de módulos DIMM o SIMM , se utilizaron chips adicionales para almacenar bits de paridad); si la computadora detectara un error de paridad , mostraría un mensaje a tal efecto y se detendría. La SDRAM yLos módulos DDR que reemplazaron a los tipos anteriores generalmente están disponibles sin verificación de errores o con ECC (corrección completa, no solo paridad). [2]

Un ejemplo de un error de un solo bit que sería ignorado por un sistema sin verificación de errores, detendría una máquina con verificación de paridad o sería corregido de manera invisible por ECC: un solo bit está atascado en 1 debido a un chip defectuoso, o se cambia a 1 debido a la radiación de fondo o cósmica; se carga una hoja de cálculo que almacena números en formato ASCII y el número "8" se almacena en el byte que contiene el bit atascado como su octavo bit; luego se realiza otro cambio en la hoja de cálculo y se almacena. Sin embargo, el "8" (00111000 binario) se ha convertido en un "9" (00111001).

Si la paridad almacenada es diferente de la paridad calculada a partir de los datos almacenados, se debe haber cambiado al menos un bit debido a la corrupción de los datos. Los errores de memoria no detectados pueden tener resultados que van desde indetectables y sin consecuencias, hasta corrupción permanente de los datos almacenados o fallas de la máquina. En el caso de la PC doméstica, donde la integridad de los datos a menudo se percibe como de poca importancia (ciertamente cierto para, digamos, juegos y navegación web, menos para la banca por Internet y las finanzas domésticas), la memoria sin paridad es una opción asequible. Sin embargo, si se requiere integridad de los datos, la memoria de paridad detendrá la computadora y evitará que los datos corruptos afecten los resultados o los datos almacenados, aunque pierdan datos intermedios no almacenados y eviten su uso hasta que se reemplace cualquier RAM defectuosa. A costa de algunos gastos generales de cálculo,de impacto insignificante con las computadoras modernas y rápidas, los errores detectados se pueden corregir; esto es cada vez más importante en las máquinas en red que sirven a muchos usuarios.

RAM tipo ECC [ editar ]

La RAM con ECC o código de corrección de errores puede detectar y corregir errores . Al igual que con la RAM de paridad, es necesario almacenar información adicional y realizar más procesamiento, lo que hace que la RAM ECC sea más cara y un poco más lenta que la RAM sin paridad y con paridad lógica. Este tipo de memoria ECC es especialmente útil para cualquier aplicación en la que el tiempo de actividad sea un problema: los bits que fallan en una palabra de memoria se detectan y corrigen sobre la marcha sin afectar a la aplicación. Normalmente, el sistema operativo registra la aparición del error para que un recurso técnico lo analice. En el caso de que el error persista, se puede programar el tiempo de inactividad del servidor para reemplazar la unidad de memoria defectuosa. Este mecanismo de detección y corrección se conoce comoEEC o corrección de errores ampliada .

Ver también [ editar ]

Referencias [ editar ]

  1. ^ Noticias de Cnet - Google: memoria de computadora más escasa de lo esperado
  2. ^ a b Preguntas frecuentes de crucial.com: ¿ECC y paridad son lo mismo? Si no, ¿cuál es la diferencia? Archivado el 1 de abril de 2012 en la Wayback Machine.
  • SCL Cluster Cookbook sobre memoria (última actualización en 1998)