![]() |
![]() |
"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..
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.
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.
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.
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.
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:
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.