Space is known as the inhospitable final frontier; challenges to biological organisms — notably, humans — come to mind. However, an often overlooked issue is the immense challenges posed to electronics in space. After all, if electronics can work on Earth, they must be able to operate anywhere. Right? In fact, one of the most challenging areas of interplanetary exploration is ensuring that the electronics in spacecraft and life-support systems are able to operate in an extremely unforgiving environment. Take Curiosity for example. Curiosity, the rover component of the NASA Mars Science Laboratory mission, is one of the most advanced machines to have ever left Earth. Containing over 10 complex scientific instruments ranging from a spectrometer to an evaporative laser, Curiosity is the size of a small car and has to operate on a 4 to 21 minute delay to Earth. The most difficult requirement of Curiosity’s design however, is surviving the nearly constant intense radiation bombardment.
Mars is slightly better at shielding radiation than the vacuum of space, but radiation still far exceeds the extremes of earth, with the martian surface receiving an average of 0.67 millisieverts of radiation exposure a day compared to approximately 1.8 millisieverts per year on Earth. This radiation bombardment is not only bad for humans; it is a terrible operating environment for complex electronics like processors.
SEUs could make fundamental operations such as addition or multiplication do entirely unexpected things.
Single Event Upsets (SEUs) are unanticipated state changes induced in electronics via high-energy particles. This includes bit flips in memory as well as combinational logic circuits. Single Event Upsets are potentially disastrous and incredibly hard to protect against programmatically. Software operates on a pyramid logic structure — where simple constructs are created and are then used to create more complex constructs. Fundamental programmatic operations such as addition, subtraction, and storing and retrieving from memory are used to create fixed program flow. The most reliable software techniques work by accurately predicting and limiting the different execution paths of programs — if every possible input can be taken into account and handled properly, then the software will be reliable. However, SEUs upset this notion. If a single bit in memory is flipped, assumptions throughout the system could be rendered invalid, and entirely new and unforeseen programmatic states could be induced. By influencing logic circuits, SEUs could make fundamental operations such as addition or multiplication do entirely unexpected things. This makes SEUs hard to combat with a high-level programmatic approach. Instead, the hardware needs to have a radiation resistant design.
Interestingly enough, current technological progress tends to make electronics less resistant to radiation and SEUs. The trend of electronics is moving towards smaller and faster. However, smaller circuits or more densely packed memory means that SEUs can affect more states at a time. Therefore, radiation hardening is often an extremely idiosyncratic process — it is not helped by current research and development into Earth-based processors. Part of the process includes increasing circuit size and building additional redundant pathways. In the area of memory, error correcting algorithms are constantly improved on and implemented in order to quickly rid any unanticipated bit flips.
The end result is the processor inside of Curiosity: a RAD750, single-board computer released in 2001 after several years of testing and validation. The processor is functionally identical to the PowerPC 750 processor and is manufactured using a 150nm process, compared to the 14nm process of the newest line of Intel processors. It can process approximately 300 million instructions per second (MIPs), in contrast to over 20,000 MIPs in modern consumer chips. As a result, Curiosity has effectively less computing power than a several-year-old smartphone — yet it has to do everything from guiding a rocket-powered lander to autonomous navigation on an extraterrestrial body while meeting the requirement of having only one significant error (requiring human intervention) per 15 years.
Extreme measures such as increasing circuit size and using ancient but reliable processors are all used to ensure maximum fault-free operation. What happens if a fault manages to occur? Curiosity is naturally programmed to reset — analogous to rebooting a computer — if faults in its system are detected. While such an instance has already occurred, it is prone to its own set of failures. Rebooting not only wastes time — the rover takes several hours to successfully reboot — but always leaves a potential scenario in which the reboot fails or contact is not re-established. However, such resets reliably fix faults by loading basic operating commands from a heavily protected/redundant storage system, thereby preventing Curiosity from becoming an expensive Martian generator if protective measures against SEUs fail.