P3-D AMSAT-DL

No RISC, No Fun!

Peter Gülzow, DB2OS
 
English version is also available, click here

"Ohne RISC, kein Spaß" - So lautet das neue Leitwort von Chuck Green (N0ADI), Peter Gülzow (DB2OS), Lyle Johnson (WA7GXD), Karl Meinzer (DJ4ZC) und James Miller (G3RUH), die innerhalb kürzester Zeit einen neuen Hochleistungs-Bordcomputer für künftige Satellitenanwendungen entwickelt haben. Wenn alles klappt, dann soll dieser neue Bordrechner bereits auf dem AMSAT-P3D Satelliten seine erste Feuertaufe bestehen und dabei auch seine Leistungsfähigkeit unter Beweis stellen.

Bereits bei der Entwicklung des P3D-Satelliten war klar, daß der alte Bordrechner (Integrated Housekeeping Unit, kurz IHU) kaum noch eine Zukunft für spätere Projekte hat. Allerdings gab es auch keine zuverlässige Alternative und immerhin wurde die IHU ja bereits in den 80'er Jahren auf OSCAR-10 und OSCAR-13 erfolgreich geflogen.  Als wichtigstes Herzstück des P3D-Satelliten, kann man sich hier jedoch kein Risiko leisten. Ein permanenter Ausfall des Bordrechners hätte den kompletten Verlust der Mission zur Folge, daher setzte man hier lieber auf die altbewährte Technik.

Die alte IHU basiert auf der COSMAC 1802 Technologie aus den 70'er Jahren. Die 8-Bit CPU wird noch immer von HARRIS hergestellt und vertrieben. Wir verwenden jedoch eine strahlungsgehärtete Variante von Sandia, die noch aus Restbeständen zur Verfügung stand. Die CPU wird mit einem Takt von 1.6 MHz betrieben und liefert so etwas 100.000 Instruktionen pro Sekunde.  Für heutige Verhältnisse mag das sehr wenig sein, aber im Weltraum geht halt alles sehr langsam und so dreht sich die Software sowie meistens nur in Warteschleifen.

Für P3D wurden einige Verbesserungen an der IHU vorgenommen, da man u.a. mehr Telemetrie- und Steuerkanäle benötigte. Im groben Design hat sich aber gegenüber OSCAR-10 und OSCAR-13 an der IHU nichts wesentliches verändert.

Schon seit längere Zeit haben wir über alternative Prozessoren nachgedacht. Auf dem Markt gibt es eine ganze Reihe von sehr interessanten Prozessoren für den sogenannten "embedded" Bereich, bis hin zu den Pentium- CPU's.  Viele dieser CPU's fielen aber bei kurzer Betrachtung schon sehr schnell durch, da sie oft eine viel zu hohe Verlustleistung haben oder durch ihren Design nicht weltraumtauglich sind. Für uns kamen nur CPU's in voll- statischer CMOS Technologie in Frage, bei möglichst geringer Stromaufnahme bzw. Verlustleistung! Moderne PENTIUM-Prozessoren mit über 5A Stromaufnahme sind hier nur als abschreckendes Beispiel genannt, jeder User kennt ja wohl die störenden Lüftergeräusche aus seinem Computer.
Neben der Strahlungsfestigkeit, ist gerade die Verlustleistung für die Wahl des Prozessors entscheidend. Im Vaccuum lassen sich nur etwa 15-20 mW/cm2 von einer ideal schwarzen Oberfläche abstrahlen. Zusätzliche Kühlungsmaßnahmen sind aber mechanisch oft nicht ganz einfach. Auf der anderen Seite führt jede Erhöhung der Temperatur um 10 Grad Celsius zu einer Halbierung der Lebensdauer.

Noch wichtiger als die CPU sind jedoch die Entwicklungswerkzeuge. Da eine neue IHU ebenfalls wieder mit IPS als Betriebssystem arbeiten sollte, sind reichlich verfügbare Assembler und "C"-Compiler nicht von besonders großem Nutzen. Für die alte IHU wurde viele Jahre der ATARI 800 mit IPS als Entwicklungswerkzeug und auch für die Bodensoftware bei den Kommandostationen genutzt. Seit geraumer Zeit stehen vergleichbare Programme für den PC unter WIN95 zur Verfügung, allerdings fehlt hier das IPS- Werkzeug um neue IPS-Programme entwickeln und testen zu können. James Miller G3RUH benutzt seit längerer Zeit den in England sehr verbreiteten ACORN RiscPC und hat, neben sämtlicher Software für den Kommandobetrieb, auch das IPS-System portiert.  Mit dem ATARI ST (68000 CPU) gab es zwischenzeitlich einmal eine weitere Alternative für die Softwareentwicklung. Jedoch wurde dieses Projekt eingestellt, nachdem ATARI aus dem Computer-Geschäft ausgestiegen war. Mit dem ACORN RiscPC steht damit nun wieder ein System zur Verfügung, mit dem man z.B. den kompletten IPS- Code für die IHU neue übersetzen kann!  Dieses Cross- Entwicklungswerkzeug ist natürlich sehr wichtig, da bei der IHU doch eine ganze Reihe von Softwareänderungen und Erweiterungen nötig sind, z.B. wegen der 3-Achsenstabilisierung usw..  Andererseits möchte man auch auf den Komfort heutiger Rechner nicht mehr verzichten, denn als Speichermedium stand beim ATARI 800 nur ein Kassettenrecorder zur Verfügung.

Der ACORN RiscPC verwendet den SA-110 StrongARM von DIGITAL Semiconductor (DEC), der mit einem Takt von 233 MHz  betrieben wird. Trotzdem bleibt der RISC- Prozessor dabei ziemlich "cool", da er weniger als 300mW Verlustleistung hat.

Ende 1997 kündigte DIGITAL eine Verbesserung des SA-110 an, den StrongARM SA-1100 mit 133 MHz und 200 MHz Takt.  Der SA-1100 ist ein 32-Bit RISC- Prozessor mit einem Instruktionscache von 16 KB und 8 KB Datencache. Er unterscheidet sich vom SA-110 im ACORN RiscPC hauptsächlich dadurch, daß er zusätzlich eine MMU und ganze Palette von Peripheriefunktionen auf dem Chip integriert hat. Dies sind u.a. 4 verschiedene serielle Multifunktionsschnittstellen, parallele Schnittstellen, DMA, PCMCIA und LCD- Treiber, Echtzeituhr, Timer und Clock-Erzeugung, sowie Funktionen für das Powermanagment. Zielgebiet dieser CPU ist der Bereich tragbare Computer, wie z.B. PDA's, Notebooks, Organizer, usw..

Blockschaltbild des StrongARM SA-1100 von DIGITAL
 

Schnell erkannten wir, daß der SA-1100 ein idealer Prozessor für eine neue IHU sein würde. Natürlich ist er voll-statisch und hat mit 200mW bei 133 MHz bzw. 250mW bei 200 MHz eine ausgesprochen niedrige Verlustleistung!  Seine Leistungsfähigkeit wird bei 200 MHz mit 230 MIPS (Dhrystone 2.1) angeben: Damit ist er mit Abstand der leistunsstärkste Prozessor der Welt, wenn man seine MIPS pro Watt betrachtet!!

Am 17. Mai 1998 wurde der gesamte Bereich StrongARM, PCI-Brücken und Netzwerkkomponenten von DIGITAL Semiconductor, zusammen mit der Chip-Fabrik in  Hudson/Massachusetts,  an die Firma INTEL transferiert. INTEL wird die Entwicklung und Herstellung des SA-1100 und neuer Produkte weiterführen. DIGITAL wird künftig nur noch den DEC ALPHA Mikroprozessor und Systeme weiterentwicklen. Somit fällt P3D nun wohl auch unter den Begriff "Intel Inside"..
Wer sich übrigens näher für den StrongARM interessiert, der findet im Internet auf der Homepage von INTEL reichlich Informationsmaterial. Die URL lautet:   http://developer.intel.com/design/strong/
 
Leider liegen bisher keine Erfahrungen oder Daten über die Strahlungsfestigkeit vor. Dynamische Speicher und Prozessoren verwenden üblicherweise CMOS-Differenzverstärker mit Schaltspannungen im Bereich von 100mV. Diese Bauteile fallen jedoch meist schon bei geringen Strahlungsmengen um 1 kRad aus und werden unbrauchbar. Voll-statische CMOS Komponenten haben jedoch eine deutlich höhere "natürliche" Strahlungsfestigkeit, die um mindestens eine Größenordnung, oft sogar um 2-3 Größenordnungen höher liegt. Zwar kann man bestimmte Komponenten bestrahlen lassen, aber letztendlich würde nur der erfolgreiche Einsatz im Weltraum für Klarheit sorgen.

Was liegt also näher, als den StrongARM SA-1100 auf AMSAT P3-D zu fliegen?

Fasziniert von den Möglichkeiten einer neuen IHU auf Basis des StrongARM SA-1100, hat sich schnell eine Arbeitsgruppe
formiert. Unser P3D-Projektleiter Karl Meinzer, DJ4ZC offerierte auch kurzfristig eine Mitfluggelegenheit auf P3D, vorausgesetzt, daß das Experiment rechtzeitig zur Verfügung steht und das es keine Massenprobleme gibt. Ein freier Platz für das Modul war auch schnell im Satelliten gefunden.  Selbstverständlich soll der bisherige IHU-Bordrechner dabei nicht ersetzt werden. Außerdem beschloß AMSAT-DL das Projekt finanziell zu unterstützen, da es für künftige Satellitenprojekte eine große Wichtigkeit hat.

Im Dezember lud AMSAT-DL dann zu einem 3-tägigen Design-Meeting nach Marburg ein, damit der neue Bordrechner möglichst schnell realisiert werden kann. Bereits im Vorfeld wurden die wichtigsten technischen Details diskutiert und dann festgelegt, ebenso wie die mechanischen Abmessungen, Gewicht und Stromverbrauch.  Außerdem musste untersucht werden, wie das neue Modul mit geringstmöglichen Aufwand und Änderungen am Kabelbaum in den P3D eingebaut werden konnte. Da der ursprünglich geplante 10m-Broadcast Sender nicht rechtzeitig realisiert werden konnte, hat der neue Bordcomputer nun dessen Platz eingenommen. Die erforderlichen Änderungen am Kabelbaum sind daher eher minimal.

Ein interner Name für das Projekt war bei einem Glas Bier auch schnell gefunden:  YAHU, was soviel wie "Yet Another Housekeeping Unit" heissen soll.

Ein Pflichtenheft wurde erstellt und alle Mitarbeiter der Arbeitsgruppe konnten viele neue Ideen in die Entwicklung der YAHU bzw. IHU-2 einbringen. Lyle Johnson hatte auch bereits einen Großteil des Schaltungsentwurfes und der FPGA- Logik erstellt und jede Baugruppe für sich wurde einzeln durchgesprochen. Übrigens würde Lyle Johnson von der Gruppe auch als Projektleiter für die neue IHU-2 eingesetzt.

Obwohl die YAHU erheblich komplexer als die alte IHU ist, konnte der Aufwand und Platzbedarf an einzelnen Bauelementen durch den Einsatz von sogenannten FPGA's erheblich reduziert werden. Die verwendeten CMOS Logik-Arrays arbeiten nach der sogenanten "Anti-Fuse" Technik und sind dadurch besonders gut für den Einsatz im Weltraum geeignet. Man rechnet mit mindestens 50K bis 100KRad (Si) Strahlungsfestigkeit. Insgesamt kommen drei FPGA-Bausteine zum Einsatz, welche die gesamte Bootlogik, Kommandodekoder, Speicherlogik, EDAC, usw. enthalten.

Werner Haas DJ5KQ, Peter Gülzow DB2OS und Chuck 
Green N0ADI mit der YAHU
Werner Haas, Peter Gülzow und Chuck Green mit dem YAHU-Prototypen
(Photo: W.Gladisch, AMSAT-DL)

März 1998: Chuck Green (siehe Bild oben) präsentiert während der Integrationsarbeiten in Orlando den ersten YAHU-Prototypen, den er dort vor Ort bestückt und zusammengelötet hatte. Die YAHU besteht zum größten Teil aus SMD-Bauteilen!!  Anschließend wurde der Prototyp per Eilboten gleich nach Tucson/Arizona weitergeschickt, denn dort wartete Lyle Johnson bereits neugierig darauf die YAHU in Betrieb zu nehmen. Chuck Green ist übrigens für das gesamte Platinenlayout und die Herstellung zuständig. Er hat seine ausgezeichnete handwerkliche Arbeit auch bereits bei der IHU, RUDAK und anderen Leiterplatten unter Beweis gestellt.

Noch ein Geschwindigkeitsvergleich:  Die 32-Bit IPS-Version wird bei 200 MHz Takt auf dem SA-110 etwa 5000 (!) mal schneller sein, als auf der alten COSMAC 1802 IHU. IPS-32 kann hier aufgrund der vertikalen Struktur und des kompakten Codes fast vollständig in den beiden Cache-Speichern ablaufen. Allerdings wurde der Datencache beim neueren SA-1100 leider von 16 kB auf 8 kB reduziert. Trotzdem ist der Geschwindigkeitsvorsprung enorm.

Damit nun die neue YAHU auf P3D nicht nur einem reinem Selbstzweck dient und ansonsten in Warteschleifen läuft, ist die Funktionalität weit über die eines normalen Bordcomputers ausgedehnt worden.  So erhält die YAHU u.a. ein Modem-Interface auf 10,7 MHz ZF-Ebene mit A/D- und D/A-Wandlern (I/Q). Die Aufgaben eines DSP's übernimmt hier natürlich der StrongARM.  Damit können neben höheren Datenraten, auch Modulations- und Kodierverfahren erprobt werden, wie sie z.B. für eine "Deep Space" Mission zum MARS erforderlich wären. Aber nicht nur das, die YAHU bekommt auch ein eigenes Auge: In den letzten 12 Monaten haben sich interessante Neuentwicklungen auf dem Gebiet der Kamera- und CCD-Chips ergeben. Eine neuartige Technologie, die neuen sogenannten "CMOS APS" Sensoren ermöglichen dabei einfachste Integration in digitale Schaltungen. Im Gegensatz zu den bisherigen CCD-Sensoren, können diese Bildsensoren wie ein EPROM ausgelesen werden. Man legt lediglich eine X- und Y-Adresse an und erhält dann ein 8-Bit Wort mit der Bildinformation des ausgewählten Pixels. Das komplizierte Timing und Digitalisieren der Bilddaten entfällt hier vollständig.  Hinzu kommen hervorragende Bildeigenschaften, wie z.B. ein sehr großer logarithmischen Dynamikbereich von etwa 120 dB (6 Lichtdekaden) im Vergleich zu einem normalen CCD-Sensor mit etwa 60 bis 70 dB. Auch die bekannten "Blooming"-Effekte von übersteuerten CCD-Sensoren gibt es nicht.  Die von Peter Gülzow vorgeschlagene Kamera wird eine Auflösung von 512 x 512 Bildpunkten haben, bei 8-Bit Auflösung für die Helligkeitsinformation (schwarz/weiß).  Der Hardwareaufwand ist minimal, wie auch das Interface an die YAHU. Ausgesprochen günstig ist die Strahlenfestigkeit der CMOS APS Sensoren, die mit etwa 1 Mrad angegeben wird. Übliche CCD-Sensorgen haben im Vergleich dazu nur etwa 10 Krad Strahlungsfestigkeit.

CMOS APS Kamera im Größenvergleich
CMOS APS Kamera im Größenvergleich
 
Bild aufgenommen mit dem YACE Prototypen
Extreme Lichtunterschiede, aufgenommen mit dem YACE-Prototypen
(Photo: Peter Gülzow)

Ursprünglich war geplant zwei dieser Kameras am Satelliten anzubringen. Eine Kamera auf der Oberseite, die andere auf der Unterseite. Die Idee war, daß man mit YACE ("Yet Another Camera Experiment") die Abtrennung von P3D nach dem Start filmen und dokumentieren kann.  Vergleichbar spektakuläre Bilder lieferte bereits der mit ARIANE 502 gestartete TEAMSAT, der, wie sich später herausstellte, die selbe Kamera-Technologie verwendete. Aus Platzgründen haben wir dann aber beschlossen nur eine Kamera auf der Oberseite zu montieren.  Nach der Abtrennung soll sie auch weiterhin Bilder von der Erde liefern und auch als Navigationsinstrument durch den YAHU genutzt werden, z.B. um die Ausrichtung des Satelliten zur Erde genau zu bestimmen und mit den Drallrädern zu korrigieren.  Ein späterer Einsatz wäre auch als Sternensensor zur Fluglageermittlung möglich, eine Aufgabe die der StrongARM mit "links" erledigen dürfte.  Die Bilder der YACE-Kamera sollen zunächst im 8 MByte Speicher der YAHU abgelegt werden. Unkomprimiert könnten so etwa maximal 32 Bilder gespeichert werden. Bei entsprechender JPEG-Komprimierung liessen sich natürlich noch mehr Bilder, sozusagen als Film, speichern.  Die YACE- Kamera soll und kann übrigens nicht als Konkurenz zu dem SCOPE-Experiment auftreten.

MAQSAT-H und SPELTRA, 19 Sekunden nach der 
Abtrennung von AR502
Abtrennung von MAQSAT-H und SPELTRA,
15 Sekunden  nach dem ARIANE 502 Start.
(aufgenommen mit dem VTS-System von TEAMSAT)

Aber zurück zur YAHU. Das Kommandosystem ist kompatibel mit der alten IHU und es kann sogar die
gleiche Kommando-Uplink verwendet werden. Die Downlink und Telemetrie erfolgt ebenfalls mit 400 Bit/s, dafür ist jetzt aber die bisherige Mittel-Bake (MB) vorgesehen. Ursprünglich war die MB nur für den 2m-Sender geplant, da aufgrund der geringeren Bandbreite des Transponders dort keine Engineering-Bake (EB) und General-Bake (GB) abgestrahlt werden konnte.  Die MB wird in der Transponder-Matrix erzeugt und dort direkt in die ZF eingespeist. Diesem Umstand ist es jetzt zu Verdanken, dass wir diese Bake jetzt ohne große Änderungen auch für die YAHU nutzen können. Es musste lediglich eine zusätzliche Leitung von der MATRIX zur YAHU im Kabelbaum gelegt werden. Sobald die YAHU per Kommando (über die IHU) eingeschaltet wird, übernimmt sie die Modulation der Mittel-Bake! Interessierte Benutzer können mit einem vorhandenen Demodulator und der Software für die 400 Bit/s Telemetrie der P3-Satelliten dann auch die YAHU Telemetrie empfangen.
Wie seine Vorgänger, besitzt auch die YAHU kein ROM und sämtliche Software kann vom Boden aus geladen bzw. ausgetauscht werden. Für das IPS- Betriebssystem und die operationelle Software steht ein 128K x 32 x 3 Bit EDAC- Speicherblock zur Verfügung. Die Logik für den hardwaremäßigen Bootloader ist in einem FPGA-Baustein realisiert.  Zusätzlich gibt es aber auch ein 128 KByte großes FLASH-EPROM, welches softwaremäßig beschrieben und gelöscht werden kann.  Es ist geplant, dass eine Kopie des IPS-Betriebssystems und der operationellen Software in diesen FLASH-Speicher abgelegt wird. Um strahlungsbedingte Fehler zu vermeiden, wird der Inhalt des FLASH regelmäßig kontrolliert bzw. neu geschrieben. Sollte es einmal zu einem Absturz des Computers kommen, dann kann die Kommandostation über einen Steuerbefehl den Computer entweder aus dem FLASH-Speicher sofort neu starten, oder sie muß die komplette Software vom Boden aus neu laden. Bei schlechten Linkstrecken, könnte sich dieses Verfahren eventuell als sehr hilfreich erweisen. Weiterhin stehen rund 8 MByte ungeschützer SRAM- Speicher zur Verfügung, der z.B. für die Bilder der YACE-Kamera und andere Experimente genutzt werden kann. Wie bereits bei RUDAK und verschiedenen anderen Experimenten realisiert, bekommt auch die YAHU ein CAN-Bus Interface. Damit ist über das 800 KBit/s lokale Netzwerk ein Datenaustausch mit den anderen Experimenten im P3D-Satelliten möglich. Beispielsweise sollen darüber die Bilder der YACE-Kamera auch in die allgemein zugängliche RUDAK-Mailbox transferiert werden.

Der erste Telemetrie-Block der neuen IHU-2
Die erste Telemetriesendung der YAHU (Photo: Lyle Johnson)
 

Wie eingangs schon erwähnt, ist die Software für die neue YAHU auch ein wichtiger Punkt bei der Inbetriebnahme der Hardware. James Miller, der als langjähriger ACORN-User natürlich mit dem ARM-Assembler bestens vertraut ist, übernahm die Entwicklung geeigneter Testsoftware für die Erstinbetriebnahme des Prototypen und arbeitet auch an den wichtigen Softwareschnittstellen für das künftige 32-Bit IPS. Schritt für Schritt konnten so die verschiedenen Funktionen der YAHU geprüft und in Betrieb genommen werden. In der Zwischenzeit hat James Miller bereits ein funktionsfähiges 16-Bit IPS für die ARM Architektur portiert und es läuft bereits auch erfogreich auf der neuen IHU-2. ARM Entwicklungswerkzeuge sind auch für andere Plattformen verfügbar, insbesondere IBM-PC's und Sun Workstations. Die Entwicklungsumgebung für IPS ist derzeit jedoch nur für den Acorn Risc Computer verfügbar. Siehe: http://www.jrmiller.demon.co.uk/IPS
Anfang April 1998 war es dann endlich soweit, als die YAHU zum ersten Mal ein Lebenszeichen in Form eines Telemetrieblocks von sich gab.  Aber es war insbesondere für Lyle Johnson noch sehr viel Debugging-Arbeit an der Hardware nötig. Es verhielten sich gerade moderne Bauteile manchmal nicht ganz so wie im Datenblatt angegeben und oftmals war ein Gespräch mit den Herstellern von Nöten, um die letzten Probleme zu beseitigen.  Ende April 1998 wurden Lyle Johnson und Chuck Green durch James Miller stark unterstützt, der weitere Softwaretest und Änderungen direkt vor Ort in Tucson vornehmen konnte. Dadurch wurde sehr viel Zeit beim Debugging eingespart, aber die Nächte waren wohl auch oftmals sehr lang und ermüdend, wie das folgende Bild beweist:

James Miller und Chuck Green
James Miller und Chuck Green bei der Inbetriebnahme der YAHU in Tucson/Arizona
(Photo: Lyle Johnson)
Lyle Johnson mit dem YAH Prototyp #1 (Photo: 
Heather Johnson)
Lyle Johnson mit dem YAHU Prototyp #1 (Photo: Heather Johnson)

Sobald der YAHU-Prototyp einwandfrei funktioniert, gilt es dann einen "fit check" im Satelliten vorzunehmen und die Flight-Hardware aufzubauen.  Danach beginnt auch für Karl Meinzer die große Stunde, denn er ist von der Entwicklung der YAHU und den Möglichkeiten des StrongARM SA-1100 so begeistert, daß er sich bereit erklärt hat, speziell für diesen Risk-Prozessor ein sehr leistungsfähiges 32-Bit IPS zu schreiben.  Dies soll uns dann zukünftig in die Lage versetzen, auch komplexere mathematische Rechenvorgänge im Satelliten durchführen zu lassen, wie sie z.B. für eine autonome Fluglageregelung und Überwachung mittles der Drallräder, Kamera, sowieso Sonnen- und Erdsensoren möglich sein soll. Kurzum, IPS-32 wird die Rechenleistung des StrongARM optimal ausnutzen und künftige Satellitenprojekte der AMSAT damit in das nächste Jahrtausend katapultieren.  Bis dahin gibt es aber noch einiges zutun und wir werden darüber hoffentlich bald an dieser Stelle weiter berichten können.

 


Übersicht | P3-D Übersicht | Glossar