Field Programmable Gate Arrays (FPGAs) have a number of advantages which make them particularly suitable for space applications. While operating on a spacecraft, FPGAs are susceptible to different kinds of failures. Since it is virtually impossible to replace spacecraft components in-situ, there is a clear opportunity for fault-tolerant FPGA circuits. Evolutionary algorithm (EA) methods hold promise in their ability to search across the space of FPGA configurations for those that can function in the presence of certain types of faults. EAs are search algorithms that coarsely model Darwinian evolution and genetics to find solutions to optimization and design problems. Real-time fault repair first became possible with the introduction of SRAM-based FPGA devices. In SRAM-based chips the number of programming cycles is unlimited. Therefore it becomes possible to restore the functionality through the repair of the compromised FPGA, a property which our algorithm explores. Some of the main tasks space vehicles perform commonly involve Digital Signal Processing. Our motivation for evolving a multiplier circuit sterns from its importance in DSP applications. Other groups in the evolvable hardware community have also recognized the importance of FIR filters and multipliers. Despite the large amount of research conducted in the field of fault tolerance and fault repair, only a few groups have studied evolution performed in physical hardware. Evolving circuits in physical hardware is a crucial step for testing fault-repair algorithms. In our project, we focused on evolving a 3×3-bit multiplier from scratch. On an actual mission, our method would assume a dual-redundant FPGA system whereby the faulty FPGA undergoes evolution to recover its functionality while the redundant FPGA maintains proper functionality during evolution on the faulty FPGA. Thus after a fault is detected, redundancy is lost for a short period of time and then restored.
展开▼