As you can guess, hardwired computer systems are much faster than general-purpose ones because they are designed to do a single task. But when they fail, they need to be totally reconfigured. This can be just a costly problem in a lab on Earth, but it can be vital in space. This is why a University of Arizona (UA) team is working with NASA to design self-healing computer systems for spacecraft. The UA engineers are working on hybrid hardware/software systems using Field Programmable Gate Arrays (FPGAs) to develop these reconfigurable processing systems. As said the lead researcher, ËœOur objective is to go beyond predicting a fault to using a self-healing system to fix the predicted fault before it occurs.â„¢ But read moreÂ¦ Reconfigurable FPGA systems for NASA This research work has been led by Ali Akoglu, an assistant professor in UAâ„¢s Electrical and Computer Engineering Department, and his students in the Reconfigurable Computing Laboratory (RCL). You can see above three of these students, Kevin Carr, Adarsha Sreeramareddy and Jeff Josiah, showing the FPGA circuits theyâ„¢re working on. (Credit: UA) Youâ„¢ll find more details about this project â€ and a larger version of the above picture â€ on this page describing the project dubbed SCARS (for Self-Configurable Architecture for Reusable Space Systems), which is being carried out in collaboration with NASAâ„¢s Jet Propulsion Laboratory. Now, what is the UA team working on? Currently, they are testing five hardware units that are linked together wirelessly. The units could represent a combination of five landers and rovers on Mars, for instance. ËœWhen we create a test malfunction, we try to recover in two ways,â„¢ explained Akoglu. ËœFirst, the unit tries to heal itself at the node level by reprogramming the problem circuits.â„¢ But what happens if this doesnâ„¢t work? If that fails, the second step is for the unit to try to recover by employing redundant circuitry. But if the unitâ„¢s onboard resources canâ„¢t fix the problem, the network-level intelligence is alerted. In this case, another unit takes over the functions that were carried out by the broken unit. ËœThe second unit reconfigures itself so it can carry out both its own tasks and the critical tasks from the broken unit,â„¢ Akoglu explained. If two units go down and canâ„¢t fix themselves, the three remaining units split up the tasks. All of this is done autonomously without human aid.