Reconfigurable Fault Tolerance for FPGAs
- Created on Sunday, 01 August 2010
FPGAs can be reconfigured to provide higher capacity or fault-tolerant redundancy.
The invention allows a field-programmable gate array (FPGA) or similar device to be efficiently reconfigured in whole or in part to provide higher capacity, non-redundant operation. The redundant device consists of functional units such as adders or multipliers, configuration memory for the functional units, a programmable routing method, configuration memory for the routing method, and various other features such as block RAM, I/O (random access memory, input/output) capability, dedicated carry logic, etc. The redundant device has three identical sets of functional units and routing resources and majority voters that correct errors. The configuration memory may or may not be redundant, depending on need. For example, SRAM-based FPGAs will need some type of radiation-tolerant configuration memory, or they will need triple-redundant configuration memory. Flash or anti-fuse devices will generally not need redundant configuration memory. Some means of loading and verifying the configuration memory is also required. These are all components of the pre-existing redundant FPGA.
For fault tolerance, it is assumed that only one fault will occur within a voting group within one voting cycle, and thus, the fault can be eliminated by majority voting. Three voters are often used, providing three values to the next voting group, and so on, with the entire device triplicated. The only connection between the three sections of the device is the voters. By changing the operation of the voters, the sections can operate independently. A system of triple-redundant voted configuration data (if needed, according to the configuration memory type) can be used to provide routing connections to allow communication between the sections. The ability to use hardware-based redundancy where needed in high-capacity applications may help avoid high development costs, difficult maintenance, and complex failure of firmware redundancy schemes.
This work was done by Robert Shuler, Jr. of Johnson Space Center. For more information, download the Technical Support Package (free white paper) at www.techbriefs.com/tsp under the Electronics/Computers category.
This invention is owned by NASA, and a patent application has been filed. Inquiries concerning nonexclusive or exclusive license for its commercial development should be addressed to the Patent Counsel, Johnson Space Center, (281) 483-1003. Refer to MSC-24464-1.