Präzision in Raum und Zeit

Leistungsfähige Rechnersysteme für die Raumfahrt

Rechnersystemen in der Raumfahrt werden grundsätzlich drei Eigenschaften abverlangt: eine geringe Masse, niedriger Stromverbrauch und hohe Zuverlässigkeit über einige Jahre. Soll gleichzeitig eine hohe Rechenleistung zur Verfügung gestellt werden, stoßen herkömmliche, für die Raumfahrt qualifizierte Mikroprozessorsysteme schnell an ihre Grenzen. Als Lösung entwickelt das Steinbeis-Transferzentrum Raumfahrt in Gäufelden Rechnersysteme, die statt mit Mikroprozessoren mit sogenannten Field-Programmable-Gate-Arrays (FPGAs) arbeiten. Diese Technik kommt nun im Projekt ACES der europäischen Raumfahrtbehörde ESA zum Einsatz.

FPGAs sind frei programmierbare Logikbausteine, auf denen Ablaufsteuerungen als logische Schaltungen in Hardware umgesetzt werden. Mit heutigen FPGAs können Systeme realisiert werden, die von der Rechenleistung vergleichbar sind mit modernen Rechnersystemen, diese aber in Spezialanwendungen sogar um ein Vielfaches übertreffen. Dabei erreicht man eine deutliche Reduktion von Masse und Energieverbrauch gegenüber klassischen Mikropozessorsystemen.

Programmiert werden FPGAs üblicherweise in Hardware-Beschreibungssprachen wie VHDL oder Verilog. Diese Sprachen arbeiten auf Registerebene, vergleichbar mit Assembler bei der Programmierung von Mikroprozessoren. Entsprechend aufwendig ist die Implementierung von komplexen Algorithmen. Die Entwickler am Transferzentrum Raumfahrt verwenden für die FPGA Programmierung die Sprache Handel-C, eine Entwicklung der Universität Oxford, die mittlerweile als kommerzielles Produkt verfügbar ist. Handel-C ist eine Hochsprache, die Hardware mit C-Syntax beschreibt. Gegenüber klassischem C stellt sie zusätzliche Sprachkonstrukte zur Verfügung, die auf die besonderen Fähigkeiten der FPGAs abgestimmt sind. Damit können massiv parallele, komplexe Algorithmen ebenso wie dedizierte Verschaltungen auf Gatter-Ebene realisiert werden, ohne auf Softwaretechniken, wie sie bei Hochsprachen heute üblich sind, verzichten zu müssen.

Ein Compiler übersetzt die Algorithmen in eine standardisierte Netzliste, die mit den Werkzeugen der FPGA-Hersteller letztendlich zu der Bitsequenz verarbeitet wird, die in das FPGA geladen wird. Ein FPGA kann im Gegensatz zu Application Specific Integrated Circuits (ASICs) beliebig oft mit neuen Algorithmen überschrieben werden. Das Laden geschieht sehr schnell und kann auch im laufenden Betrieb erfolgen, was Neustart- und Rekonfigurations-Zeiten im Millisekundenbereich möglich macht. Für hardwarebasierte Systeme verkürzt sich durch den Wegfall von Layouts, Masken oder anderen Herstellungsschritten die Zeit von der Produktentwicklung bis zur Marktreife auf wenige Wochen bis Monaten.

Da die Programme im FPGA nicht wie bei Mikroprozessorsystemen in Software, sondern fest verschaltet in Hardware ablaufen, werden alle Algorithmen synchron mit dem Takt des FPGAs abgearbeitet. Dabei können innerhalb eines Taktes komplexe Operationen wie Multiplikationen und Additionen abgearbeitet werden. Der Geschwindigkeitsgewinn gegenüber einem Mikroprozessor liegt bei einem Faktor von 40 bis 100. Dutzende digitaler Ein-und Ausgänge am Chip ermöglichen eine Vielzahl von direkt angebundenen Schnittstellen und Bussen zu anderen Systemen ohne zusätzliche Controller, die ohne Verzögerung gleichzeitig bedient werden können. FPGAs eignen sich daher für rechenintensive Echtzeitsysteme, die flexibel in verschiedenen Hardware-Umgebungen einsetzbar sind. Durch eine Vielzahl von Bibliotheken kann vom FPGA aus externe Hardware wie zum Beispiel DDR RAM, ADC/ DAC, Maus und Tastatur angesteuert werden, selbst der Anschluss einer VGA-Anzeige ist möglich. FPGAs enthalten eingebetteten Block-RAM-Speicher, der auch speicherintensive Anwendungen wie Video-oder Audiocodierung möglich macht.

Im Projekt ACES („Atomic Clock Ensemble in Space“) haben die Steinbeiser in Gäufelden deutlich gemacht, was mit Hochsprachen-Technologie und FPGAs heutzutage möglich ist. ACES ist eine wissenschaftliche Mission der europäischen Raumfahrtbehörde ESA, die auf der Internationalen Raumstation (ISS) auf der externen Experimentalplattform des Columbus-Moduls montiert werden wird. ACES soll ein hochgenaues 100MHz Frequenznormal für wissenschaftliche Experimente zur Verfügung stellen. Dabei wird die Langzeit-Stabilität einer lasergekühlten Cäsium-Uhr (PHARAO) mit der Kurzzeit-Stabilität eines Wasserstoff-Masers (SHM, Space Hydrogen Maser) kombiniert. Durch den Wegfall der Schwerebeschleunigung erreichen diese Uhren im Weltall eine zehnmal höhere Genauigkeit als am Boden. Damit sollen Vergleiche von Frequenzstandards sowohl für Weltraum-Boden als auch Boden-Boden ermöglicht werden.

Im Transferzentrum Raumfahrt wurden für das FCDP-Modul (Frequency Comparison and Distribution Package) innerhalb des Projekts ACES die komplexen Steuer- und Messalgorithmen entwickelt. Im FCDP werden aus den von den Atomuhren gelieferten Signalen Frequenz- und Phasenwerte bestimmt, die zur Vermessung und Regelung der Atomuhren dienen. Eine klassische Lösung mit Mikroprozessor und Software hätte das knappe Massen-und Energiebudget nicht einhalten können, daher überzeugte der Steinbeis-Ansatz mit einer direkten Hardwarelösung. Die Algorithmen berechnen dabei in Echtzeit die Momentanwerte von Phase und Frequenz, sowie über eine FFT das Spektrum des Phasenrauschens. Zusammen mit den Systemtelemetriedaten, die parallel dazu erfasst werden, werden sie für die wissenschaftliche Analyse aufbereitet und über einen Telemetrie- und Telekommandokanal an das Bordrechnersystem der ISS weitergeleitet. Über diese Schnittstelle kann das System auch im laufenden Betrieb nach Vorgabe der Wissenschaftler umkonfiguriert werden.

Durch den Einsatz einer Hochsprache für die FPGA Programmierung konnte ein so komplexes System wie das FCDP-Modul direkt in einem FPGA realisiert werden, ohne dass die Flexibilität einer Softwarelösung verloren ging und gleichzeitig die kritische Massen- und Energiebilanz eingehalten wurde.

Seite teilen