
Mitigación de errores de software producidos por
la radiación del ambiente espacial
Mitigation of software errors produced by radiation from the space environment
Germán Castro
Laboratorio de Sistemas Embebidos
Facultad de Ingeniería - UBA
Buenos Aires, Argentina
gcastro@fi.uba.ar
Resumen—En este trabajo se presenta el desarrollo e
implementación de una técnica de mitigación de errores de
software con el objetivo de proteger funciones a ser utilizadas
en misiones espaciales. Se analiza la técnica Preemptive
Control Signature para mitigar los errores del tipo Single
Event Upset sobre la arquitectura ARMv7E-M y poder así
extender el tiempo de disponibilidad de los dispositivos
espaciales aumentando la tolerancia a dichos errores. La
técnica implementada logró detectar el 79.5 % de los errores.
Palabras clave: CFI; CMOS; ISA; PECOS; SEU.
Abstract—This paper presents the development and
implementation of a software error mitigation technique with
the aim of protecting functions to be used in space missions.
The Preemptive Control Signature technique is analyzed to
mitigate Single Event Upset type errors on the ARMv7E-M
architecture and thus be able to extend the availability time
of spatial devices by increasing tolerance to such errors.
Implemented technique detected 79.5 % of the errors.
Keywords: CFI; CMOS; ISA; PECOS; SEU.
I. INTRODUCTION
Dado lo agresivo del ambiente espacial y el elevado
costo de los lanzamientos y de las misiones espaciales,
los componentes electrónicos utilizados son sometidos a
un largo y costoso proceso de diseño y calificación. Como
consecuencia de ello los dispositivos, tales como los CMOS,
adolecen de un pronunciado retraso tecnológico.
Al diseñar aplicaciones en entornos de radiación hostiles,
como el espacial, se deben considerar los efectos que puede
producir el impacto de partículas cargadas, tales como
los iones pesados o los protones, sobre los dispositivos
electrónicos. Mientras estas partículas cargadas atraviesan
un dispositivo CMOS (ver figura 1), pueden alterar los
estados lógicos o cualquier elemento de memoria estática
al depositar (perder) energía e inducir carga (pares electrón-
laguna) a lo largo de su camino, generando perturbaciones.
La mayoría de los pares inducidos se recombinan inme-
diatamente, mientras que una pequeña fracción puede ser
recolectada por el campo eléctrico del dispositivo. Estas
perturbaciones, al alterar celdas lógicas, pueden inducir
errores en el software (SE) que, dependiendo la aplicación,
pueden generar fallas críticas en el sistema.
Para aprovechar el uso de tecnologías modernas en la
industria espacial, surgió una nueva iniciativa dentro del uso
Figura 1: Partícula ionizante atravesando un dispositivo
CMOS.
comercial del espacio denominada New Space, impulsada
por emprendimientos privados [1]. La iniciativa New Space
tiene como objetivo replantear radicalmente la metodología
tradicional de desarrollo de proyectos espaciales. Dentro de
las áreas de estudio a replantear se encuentran las técnicas
alternativas de evaluación y mitigación de vulnerabilidades
de software producidas por la radiación del ambiente espa-
cial [2]. El presente trabajo intenta contribuir a dicha área
de estudio al permitir medir y garantizar la capacidad de
mitigación de SE en los sistemas de vuelo de los satélites,
así como también evaluar el rendimiento de las herramientas
de inyección de SE ya existentes.
I-A. Errores de flujo de control
Este documento se concentra en CFEs, que son errores
que causan la divergencia de la secuencia de valores del
PC respecto de su secuencia durante la ejecución libre de
errores de la aplicación [3]. Los CFEs pueden generar la
corrupción de datos, fallas de programa o propagación de
errores [4]. Estudios indican que un tercio de los errores
producidos en el código de una aplicación de uso de datos
no intensivo conducen a CFEs [5]. Se propone una técnica
de verificación preventiva y generación de firmas de flujo
de control denominada PECOS. Que la verificación sea
preventiva significa que la técnica de detección es activada
antes que un error cause la ejecución de un camino de flujo
de control incorrecto [6].
Revista elektron, Vol. 7, No. 1, pp. 28-33 (2023)
Recibido: 09/04/23; Aceptado: 01/05/23
Creative Commons License - Attribution-NonCommercial-
NoDerivatives 4.0 International (CC BY-NC-ND 4.0)
https://doi.org/10.37537/rev.elektron.7.1.178.2023
Original Article