FPGA-based reconfigurable on-board computing systems for space applications

The purpose of the thesis is to conceptualize an application method of ground-based reconfigurable FPGA (Field Programmable Gate Array) technologies for space systems and to apply the method to the on-board computer of the small satellite Flying Laptop for the on-orbit demonstration. The Flying Laptop satellite is the first small satellite within the Stuttgart small satellite program'' in which several small satellites are developed by the Institute of Space Systems at the Universitat Stuttgart. The main mission of the Flying Laptop is to demonstrate the space use of reconfigurable FPGAs for the reconfigurable computing'' on an central on-board computer aboard a spacecraft. Due to their radiation vulnerabilities reconfigurable FPGAs have not yet been employed in practical space applications with high reliability requirements. The Flying Laptop project aims to achieve the world's first orbit demonstration of a purely FPGA-based central on-board computer. Within this research firstly, application methods of reconfigurable FPGAs for space systems were investigated, which are not limited to small satellites but for general space systems. The investigation is based on thorough experimental data survey and analysis of radiation effects on existing FPGA devices. Main radiation effects of single event effects and total ionizing dose effects were extensively investigated. Based on the data obtained, a combinational use of SRAM-FPGAs (multi-chip redundant) and Flash-FPGAs (voting element) for mitigating radiation effects was conceptualized. A mathematical system reliability analysis of repairable multi-redundant systems has been. The analysis illustrates that a multi-redundant system based on SRAM-FPGAs together with a Flash-FPGA based voter provides a sufficiently high reliability for Low Earth Orbit (LEO) missions against radiation effects. After the conceptualization of application methods of reconfigurable FPGAs for the space environment, it is applied to the on-board computer of the small satellite Flying Laptop. Flying Laptop is a cubic, 3-axis stabilized satellite with the edge lengths of about 600mm x 700mm x 800mm and a mass of about 120kg, which shall be launched into sun-synchronous LEO in an altitude of around 600km. A system architecture with four SRAM-FPGA based central processing nodes and one Flash-FPGA based voter was applied for the on-board computer of the Flying Laptop. This on-board computer is the central computing system aboard the satellite and shall be capable of controlling all satellite peripheral electronics. First of all, the system design of the whole satellite has been conducted within the scope of the thesis in order to allow the design of the on-board computer. Based on the established system requirements, the on-board computer of the Flying Laptop was designed and the breadboard model and partly the engineering model of its components are developed. The hardware logic (control algorithm) which shall be implemented into FPGAs can be designed by means of hardware description languages. However, it is no longer software engineering but hardware engineering for generating real hardware logics inside FPGAs which are executed in parallel in real-time. The satellite main functions are designed, developed, and implemented in FPGAs by means of the hardware description languages Handel-C and VHDL. The thesis provides development methods of the control algorithms. In addition to this, a control algorithm development facility has been established for the further design activities. Finally, the developed control algorithms are verified in a simulation and verification environment in order to prove the validities of the above described developments. First of all, an FPGA hardware-in-the-loop real-time simulation environment has been established based on the Model-based Development and Verification Environment (MDVE). MDVE was established at the Institute of Space Systems supported by EADS Astrium. The communication interface between the MDVE and FPGAs are developed, including the required hardware components and the serialization algorithms of communication lines inside an FPGA. Using this simulation and verification environment, extensive simulations have been conducted and the design of the on-board computer, as well as the system design of the whole satellite are validated. At the end, an extended investigation has been conducted on formal verification methods of the hardware-logic in order to provide the way of strict design verifications. This thesis establishes the basis of principle application methods of reconfigurable FPGA technologies for reconfigurable computing'' on space systems which provides innovative solutions for high computational demands of future space applications. Das Ziel dieser Dissertation ist der Entwurf eines Verfahrens zum Einsatz von herkommlichen FPGA (Field Programmable Gate Array) Technologien fur die Raumfahrt und die Demonstration dieses Verfahrens als Bordrechner des Kleinsatelliten Flying Laptop. Der Flying Laptop ist der erste von mehreren Kleinsatelliten, der im Rahmen des Stuttgarter Kleinsatellitenprogrammes,'' am Institut fur Raumfahrtsysteme der Universitat Stuttgart entwickelt wird. Der Haupteinsatz des Flying Laptop ist die Demonstration von rekonfigurierbaren FPGAs im Weltraum zum Reconfigurable Computing'' auf einem zentralen Bordrechner eines Raumfahrzeugs. Dies wurde wegen der Strahlungsanfalligkeit dieser Bauteile bisher nicht in Raumfahrtsystemen mit hoher Zuverlassigkeitsanforderung verwendet. Der Flying Laptop wird als weltweit erstes Raumfahrzeug einen reinen FPGA-basierten Bordrechner verwenden. Im Rahmen dieser Arbeit wurden zuerst die Anwendungsverfahren der rekonfigurierbaren FPGAs fur Raumfahrtsysteme erforscht, die nicht nur fur Kleinsatelliten, sondern auch fur allgemeine Raumfahrtsysteme gelten. Die Forschung basiert auf einer vollstandigen Recherche uber experimentelle Daten und Analysen der Strahlungsanfalligkeit vorhandener FPGA-Bauteile. Die Hauptauswirkungen von Single Event Effects'' und Total Ionizing Dose'' wurden ausfuhrlich untersucht. Ausgehend von den erhaltenen Daten wurde ein kombinierter Einsatz der SRAM-FPGAs (multi-chip redundant) und Flash-FPGAs (voting elemente) entworfen, um die Strahlungsanfalligkeit zu reduzieren. Eine mathematische Systemzuverlassigkeitsanalyse der wiederherstellbaren Multi-Redundantsystemen wurde durchgefuhrt. Diese Analysen stellen dar, dass ein Multi-Redundantsystem mit SRAM-FPGAs zusammen mit einem Flash-FPGA basierten Voter trotz Strahlungsanfalligkeit in einer niedrigen Erdumlaufbahn eine hinreichende Zuverlassigkeit gewahrleistet. Dieses Implementierungsverfahren der rekonfigurierbaren FPGAs fur die Weltraumumgebung wurde nach dem Entwurf fur den Bordrechner des Kleinsatelliten Flying Laptop angewendet. Der Flying Laptop ist ein wurfelformiger dreiachsenstabilisierter Satellit mit den Kantenlangen von etwa 600mm x 700mm x 800mm und einer Masse von etwa 120kg, der in einer sonnensynchronen niedrigen Erdumlaufbahn mit einer Hohe von etwa 600km eingesetzt werden soll. Eine Systemarchitektur mit vier SRAM-FPGA basierten Central Processing Nodes'' und einem Flash-FPGA basierten Voter wurde fur den Bordrechner des Flying Laptop festgelegt. Dieser Bordrechner ist das zentrale Rechensystem auf dem Satelliten, das alle Satellitenkomponenten steuern soll. Als Erstes wurde im Rahmen der Dissertation das Systemdesign des ganzen Satellitensystems durchgefuhrt, um das Design des Bordrechners zu ermoglichen. Basierend auf den festgestellten Systemanforderungen wurde der Bordrechner des Flying Laptop ausgelegt. Auserdem wurden ein Breadboard-Modell des Bordrechners und teilweise die Engineering-Modelle seiner Komponenten entwickelt. Die Hardwarelogik (Steuerungsalgorithmen), die in den FPGAs implementiert werden sollen, konnen mit Hardwarebeschreibungssprachen entwickelt werden. Es handelt sich hierbei also nicht mehr um Softwareentwicklung, sondern um Hardwareentwicklung. Dabei wird die echte Hardwarelogik in den FPGAs produziert, die parallel in Echtzeit abgearbeitet wird. Die Hauptfunktionen des Satelliten wurden mit den Hardwarebeschreibungssprachen Handel-C und VHDL ausgelegt, entwickelt, und in die FPGAs implementiert. Die Dissertation stellt die Entwicklungsstrategie fur die Steuerungsalgorithmen bereit. Zusatzlich wurde die Infrastruktur fur weitere Designaktivitaten aufgebaut. Schlieslich wurden die Steuerungsalgorithmen in einer Simulations- und Verifikationsumgebung gepruft. Dafur wurde zunachst eine Hardware-in-the-Loop''-Simulationsumgebung aufgebaut, die auf einer Modell-basierten Entwicklungs- und Verifikationsumgebung (Model-based Development and Verifikation Environment (MDVE)) basiert. Die MDVE wurde mit Unterstutzung von EADS Astrium am Institut fur Raumfahrtsysteme zur Verfugung gestellt. Die Kommunikationsschnittstelle zwischen MDVE und FPGAs wurde entwickelt, einschlieslich der benotigten Hardwarekomponenten und des Algorithmus, welcher die Kommunikationskanale innerhalb einem FPGA in serielle Reihenfolge bringt. Mittels dieser Simulations- und Verifikationsumgebung wurden ausfuhrliche Simulationen durchgefuhrt. Daraus resultierend wurde die Gultigkeit des Bordrechnerdesigns sowie das Systemdesigns fur den gesamten Satelliten validiert. Schlussendlich wurde eine erweiterte Untersuchung uber formale Verifikationsverfahren der Steuerungsalgorithmen durchgefuhrt, um eine strikte Designverifikation zu ermoglichen. Diese Dissertation legt die Basis fur ein Anwendungsverfahren von rekonfigurierbaren FPGA-Technologien auf Raumfahrzeugen. Dieses Verfahren stellt eine innovative Losung fur erhohte Rechenanforderungen von zukunftigen Raumfahrtanwendungen dar.

[1]  C. Carmichael,et al.  Single Event Upsets in Xilinx Virtex-4 FPGA Devices , 2006, 2006 IEEE Radiation Effects Data Workshop.

[2]  Gary Swift,et al.  VIRTEX-4 VQ static SEU Characterization Summary , 2008 .

[3]  A. Visconti,et al.  Total Ionizing Dose Effects in NOR and NAND Flash Memories , 2007, IEEE Transactions on Nuclear Science.

[4]  E. Fuller,et al.  RADIATION CHARACTERIZATION, AND SEU MITIGATION, OF THE VIRTEX FPGA FOR SPACE-BASED RECONFIGURABLE COMPUTING , 2000 .

[5]  W. Shedd,et al.  Dose Rate Upset Investigations on the Xilinx Virtex IV Field Programmable Gate Arrays , 2007, 2007 IEEE Radiation Effects Data Workshop.

[6]  I. Xilinx,et al.  Virtex-II Pro and Virtex-II Pro X Platform FPGAs: Complete data sheet , 2004 .

[7]  Martin Sweeting,et al.  Very-Small-Satellite Design for Distributed Space Missions , 2007 .

[8]  Oliver Montenbruck,et al.  GPS Based Attitude Determination for the Flying Laptop Satellite , 2008 .

[9]  M.A. McMahan,et al.  Neutron Soft Errors in Xilinx FPGAs at Lawrence Berkeley National Laboratory , 2008, 2008 IEEE Radiation Effects Data Workshop.

[10]  Jim Woodcock,et al.  A "Hardware Compiler" Semantics for Handel-C , 2006, MFCSIT.

[11]  Felix Huber,et al.  Challenges and innovative technologies for a low cost lunar mission , 2003 .

[12]  Fabio Santoni,et al.  Analysis of the UNISAT-3 Solar Array In-Orbit Performance , 2008 .

[13]  Jim Woodcock,et al.  prialt in Handel-C: an operational semantics , 2004, International Journal on Software Tools for Technology Transfer.

[14]  Mike Sandoe,et al.  Field programmable gate arrays: Evaluation report for space-flight application , 1992 .

[15]  Jim Woodcock,et al.  An Operational Semantics for Handel-C , 2003, FMICS.

[16]  J. J. Wang,et al.  Radiation effects in FPGAs , 2003 .

[17]  Andrew William Roscoe,et al.  The Theory and Practice of Concurrency , 1997 .

[18]  Rodney A. Brooks,et al.  A Robust Layered Control Syste For A Mobile Robot , 2022 .

[19]  Rodney A. Brooks,et al.  Fast, Cheap and Out of Control: a Robot Invasion of the Solar System , 1989 .

[20]  P. Adell Assessing and Mitigating Radiation Effects in Xilinx FPGAs , 2008 .

[21]  R. Crane Electromagnetic Wave Propagation Through Rain , 1996 .

[22]  Chuck Lurk EVALUATION OF LITHIUM ION CELLS FOR SPACE APPLICATIONS , 1996 .

[23]  Hans-Peter Roeser,et al.  Preliminary System Simulation Environment of the University Micro-Satellite Flying Laptop , 2008 .

[24]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[25]  O. Montenbruck,et al.  Onboard autonomy and fault protection concept of the BIRD satellite , 2003, International Conference on Recent Advances in Space Technologies, 2003. RAST '03. Proceedings of.

[26]  S. Rezgui,et al.  New Reprogrammable and Non-Volatile Radiation Tolerant FPGA: RTA3P , 2008, 2008 IEEE Aerospace Conference.

[27]  T. A. Dellin,et al.  Radiation response of floating gate EEPROM memory cells , 1989 .

[28]  Jens Eickhoff,et al.  FPGA-based operational concept and payload data processing for the Flying Laptop satellite , 2009 .

[29]  Elaine Baxter,et al.  TopSat: Lessons Learned from a Small Satellite Mission , 2008 .

[30]  Jim Woodcock,et al.  Slotted-circus: a UTP-family of reactive theories , 2007 .

[31]  Anwar S. Dawood,et al.  An adaptive instrument module (AIM) for satellite systems , 1999, ISSPA '99. Proceedings of the Fifth International Symposium on Signal Processing and its Applications (IEEE Cat. No.99EX359).

[32]  N. J. Buchanan,et al.  Total ionizing dose effects in a SRAM-based FPGA , 1999, 1999 IEEE Radiation Effects Data Workshop. Workshop Record. Held in conjunction with IEEE Nuclear and Space Radiation Effects Conference (Cat. No.99TH8463).

[33]  Mark M. Hart,et al.  Radiation in the Environment , 2005 .

[34]  H.S. Kim,et al.  TID and SEE Response of an Advanced Samsung 4Gb NAND Flash Memory , 2007, 2007 IEEE Radiation Effects Data Workshop.

[35]  Hans-Peter Röser,et al.  Effective Project Management of Small Satellite Projects from the System Engineer's Point of View, An Example of the Small Satellite Flying Laptop Project , 2009 .

[36]  Louis J. Ippolito,et al.  Attenuation by Atmospheric Gases , 1986 .

[37]  Joe Brewer,et al.  Nonvolatile memory technologies with emphasis on flash , 2007 .

[38]  Neil W. Bergmann,et al.  Adaptive Instrument Module - A Reconfigurable Processor for Spacecraft Applications , 2000 .

[39]  Felix Huber,et al.  Development of an FPGA Based Attitude Control System for a Micro-Satellite , 2006 .

[40]  M.D. Berg,et al.  TID and SEE Response of Advanced 4G NAND Flash Memories , 2008, 2008 IEEE Radiation Effects Data Workshop.

[41]  Andrew Butterfield,et al.  A denotational semantics for Handel-C , 2011, Formal Aspects of Computing.

[42]  Anthony Salazar,et al.  Radiation Test Results of the Virtex FPGA and ZBT SRAM for Space Based Reconfigurable Computing , 1999 .

[43]  C. Carmichael,et al.  Comparison of Xilinx Virtex-II FPGA SEE sensitivities to protons and heavy ions , 2004, IEEE Transactions on Nuclear Science.

[44]  J.J. Wang,et al.  Total ionizing dose effects on flash-based field programmable gate array , 2004, IEEE Transactions on Nuclear Science.

[45]  Erkki Salonen,et al.  Predictions of radiowave attenuations due to a melting layer of precipitation , 1994 .

[46]  Michael Fritz,et al.  A commercial procedure execution engine completing the command chain of a university satellite simulation infrastructure , 2010 .

[47]  F.. Smith,et al.  Total Ionizing Dose Mitigation by Means of Reconfigurable FPGA Computing , 2007, IEEE Transactions on Nuclear Science.

[48]  C. Carmichael,et al.  SEU mitigation testing of Xilinx Virtex II FPGAs , 2003, 2003 IEEE Radiation Effects Data Workshop.

[49]  Muli Kifle,et al.  A Reconfigurable Communications System for Small Spacecraft , 2004 .

[50]  M. F. Bowen Handel-c language reference manual , 1998 .

[51]  Norman F. Schneidewind Reliability Modeling , 2010, Encyclopedia of Software Engineering.

[52]  S. Rezgui,et al.  New Methodologies for SET Characterization and Mitigation in Flash-Based FPGAs , 2007, IEEE Transactions on Nuclear Science.

[53]  Jih-Jong Wang,et al.  SRAM based re-programmable FPGA for space applications , 1999 .

[54]  M. Caffrey,et al.  Static Proton and Heavy Ion Testing of the Xilinx Virtex-5 Device , 2007, 2007 IEEE Radiation Effects Data Workshop.

[55]  Rodney A. Brooks PLANNING IS JUST A WAY OF AVOIDING FIGURING OUT WHAT TO DO NEXT , 1987 .

[56]  F. Chayab,et al.  Single Event Upset Characterization of the Virtex-4 Field Programmable Gate Array Using Proton Irradiation , 2006, 2006 IEEE Radiation Effects Data Workshop.

[57]  F. Irom,et al.  Extension of a Proton SEU Cross Section Model to Include 14 MeV Neutrons , 2008, IEEE Transactions on Nuclear Science.

[58]  Andrew S. Tanenbaum,et al.  Structured Computer Organization , 1976 .

[59]  L. Ippolito Radiowave Propagation in Satellite Communications , 1986 .

[60]  C. Poivey,et al.  Compendium of Current Total Ionizing Dose Results and Displacement Damage Results for Candidate Spacecraft Electronics for NASA , 2007, 2007 IEEE Radiation Effects Data Workshop.

[61]  Georg Grillmayer,et al.  Use of New Developments of Attitude Control Sensors for the Micro-Satellite Flying Laptop , 2006 .

[62]  M. Shea,et al.  CREME96: A Revision of the Cosmic Ray Effects on Micro-Electronics Code , 1997 .