¿Qué son las volteretas de bits y cómo se protegen las naves espaciales de ellas?

Los cambios de bits son cambios involuntarios de bits (0 y 1) causados ​​por hardware, software o factores externos. Las naves espaciales utilizan software de corrección de errores y redundancia de hardware para protegerse contra cambios de bits.

¿Recuerda la temida pantalla azul de la muerte en su antiguo sistema Windows XP? No hay nada más molesto que tener tu sistema inactivo inexplicablemente en medio de una racha de bajas en una partida de Counter Strike en línea. La mayoría de las veces, sin embargo, reiniciar el sistema es suficiente para que su sistema vuelva a estar en línea.

moderno-pantalla-azul-muerte-sistema-bsod

Los rayos cósmicos golpean la tierra desde todas las direcciones 24 horas al día, 7 días a la semana. Por lo tanto, existe una probabilidad significativa de que sean responsables de algunos de los BSOD que encuentre. (Crédito de la foto: Alexandr III / Shutterstock)

Sin embargo, ¿qué provocó que el sistema se bloqueara en su PC? Las computadoras se emplean en todas partes hoy en día, y en algunas áreas críticas, como una nave espacial, el colapso del sistema podría tener consecuencias bastante desagradables, ¡especialmente si sucede inexplicablemente!

Hay muchos fenómenos que pueden hacer que los sistemas colapsen, uno de los cuales es un Bit-Flip. Las naves espaciales deben estar protegidas de ellos para operar de manera segura. Leamos más sobre Bit-Flips antes de leer sobre las medidas de protección empleadas por las naves espaciales para evitar calamidades.

Bit-Flip: el nombre cuenta la historia

Los datos digitales se almacenan como una secuencia de 0 y 1. Cada 0 o 1 se llama bit. Un cambio de bit es un cambio inadvertido de estado de un bit que es diferente de su estado inicial. Por ejemplo, si un bit cambia de 0 a 1 o viceversa accidentalmente, el evento se llama bit-flip.

La forma más común de almacenar bits es utilizando transistores de puerta flotante, donde la presencia o ausencia de voltaje entre dos terminales indica el estado del bit (1 o 0).

Hay muchos tipos de bit-flips. Para causar un cambio de bits, debe haber un flujo accidental de electrones dentro de las puertas del transistor, lo que cambiaría el voltaje entre la fuente y el sumidero. Esto puede ocurrir a través de altas temperaturas, problemas de hardware y radiación cósmica, entre otros.

En el caso de las naves espaciales, la temperatura y el hardware están sujetos a pruebas rigurosas antes de su implementación, lo que elimina la posibilidad de volteos de bits causados ​​internamente. Esto deja solo a los pequeños giros cósmicos como posibles alborotadores.

Bit-Flip cósmico

El campo magnético del planeta Tierra contra el viento solar del Sol (Elementos de esta imagen proporcionados por la NASA)

El viento solar contribuye a la radiación cósmica al disparar corrientes energéticas de protones y partículas alfa hacia la tierra (Crédito de la foto: koya979 / Shutterstock)

Una vez más, como sugiere el nombre, los cambios de bits cósmicos son cambios involuntarios de bits con causas de origen cósmico.

Los rayos cósmicos son corrientes de partículas subatómicas que se mueven casi a la velocidad de la luz. Estos están compuestos principalmente por átomos a los que se les han despojado de sus electrones. El hidrógeno y el helio son los elementos más abundantes del universo. Por lo tanto, los rayos cósmicos consisten principalmente en protones (átomos de hidrógeno sin un electrón) y partículas alfa (átomos de helio sin electrones) y están cargados positivamente. Dado que están cargados y se mueven a velocidades extremadamente altas, producen sus propios campos magnéticos, que interactúan con el campo magnético de la tierra.

Cuando los rayos cósmicos llegan a la tierra, algunos de ellos son desviados por el campo magnético del planeta. El resto, que logra entrar en la atmósfera terrestre, choca con moléculas de aire y provoca una cascada de rayos cósmicos.

Cascada de rayos cósmicos

PartículaCascada

Ilustración de cascada de rayos cósmicos. (Crédito de la foto: Theturnipmaster / Wikimedia commons)

Este es un efecto en cascada donde los rayos cósmicos golpean la atmósfera superior, pierden energía y se descomponen en otras partículas con menor energía, que golpean el aire más abajo en la atmósfera, creando partículas aún más elementales con menor energía. El resultado final es una cascada de partículas (muones, partículas alfa, protones, etc.) que golpean el suelo. Cuando estas partículas chocan contra los transistores, pueden causar volteos de bits.

Interferir con la electrónica

SEUBitFlip

Rastro de partículas a la izquierda en un FGMOS.

En los dispositivos electrónicos modernos, los transistores semiconductores de óxido metálico de puerta flotante (FGMOS) se utilizan para almacenar datos. Una puerta flotante (FG) es un terminal aislado eléctricamente que almacena electrones. Cuando los electrones están presentes en el FG, crean un pequeño campo eléctrico que afecta el flujo de electrones en el transistor. Se puede medir la presencia de electrones en FG y se puede inferir el estado del bit (1 o 0). Cuando las partículas cargadas chocan contra FGMOS, interactúan con los electrones en FG, provocando el flujo involuntario de electrones hacia y desde FG, lo que resulta en la pérdida o ganancia involuntaria de electrones en FG, lo que provoca un cambio de bits.

Protección de naves espaciales contra volteretas cósmicas

Redundancia modular

Si se debe leer una entrada de un sistema, tres subsistemas físicos proporcionan la entrada. Si dos están de acuerdo y el tercero no, entonces el tercero se ignora y se toma el valor concordante de los otros dos. Esto se llama redundancia de 3 vías. Se puede emplear más redundancia, como en el programa Shuttle, que usa redundancia de 5 vías, donde se pueden anular hasta dos subsistemas defectuosos.

Códigos de corrección de errores (ECC)

El software se utiliza para detectar y corregir errores. Los datos (una secuencia de 0 y 1) se dividen en bloques que son potencias exponenciales de 2. Se agregan bits de redundancia, lo que garantiza que el número (de paridad) de 0 o 1 sigue siendo par o impar (determinado por el remitente). Por ejemplo, si el remitente determina que la paridad de 1 debería ser impar, entonces el receptor cuenta el número de unos en el mensaje, y si el número de unos no sigue siendo impar, se detecta un error. Con este método, solo se pueden detectar errores de 1 bit. La adición de más bits de paridad se utiliza para detectar errores de más de 1 bit.

Ejemplo de Hamming (11,7) 0110101 error de bit 11

Los códigos de Hamming se utilizan como códigos de corrección de errores, entre otros. (Crédito de la foto: Cburnett / Wikimedia commons)

Un resumen rápido

Por lo tanto, hemos visto que los cambios de bits son cambios accidentales en los datos que pueden deberse a una variedad de factores. Cuando la causa del cambio de bits son los rayos cósmicos, se denomina cambio de bits cósmico. Las naves espaciales deben protegerse de los cambios de bits cósmicos, ya que tales errores pueden poner en peligro los objetivos de la misión y la seguridad de la tripulación.

El remedio más utilizado es emplear redundancia de hardware y códigos de corrección de errores de software. La redundancia de hardware garantiza que varios subsistemas alimenten la entrada de un solo sistema y tomen solo la entrada que coincida con la mayoría. Los ECC de software emplean algoritmos para detectar cambios en bits individuales manteniendo un recuento de la paridad de 0 o 1 en los lados del emisor y del receptor.