Der Apollo Guidance Computer (AGC) war der bei den Apollo-Raumflügen eingesetzte Navigationscomputer. Er wurde benutzt, um in Echtzeit Fluginformationen zu sammeln und zur Verfügung zu stellen, sowie alle Navigationsfunktionen des Apollo-Raumfahrzeugs automatisch zu steuern. Er war damit das erste erkennbar moderne eingebettete System.
Er wurde ab 1961 für das Apollo-Programm unter der Leitung von Charles Stark Draper am MIT Instrumentation Laboratory entwickelt. Die bei den Flügen benutzte Hardware wurde von Raytheon hergestellt.
Inhaltsverzeichnis |
Bei jedem Mondflug wurden jeweils zwei AGC eingesetzt. Einer im Kommandomodul (CM) des Apollo-Raumfahrzeugs und einer in der Mondlandefähre. Beide Systeme waren baugleich aber mit unterschiedlicher Software ausgestattet. Der AGC war Bestandteil des sogenannten Primary Guidance, Navigation and Control System (PGNCS, ausgesprochen: pings), dem unabhängigen inertialen Navigationssystem der Apollo-Raumfahrzeuge.
Darüber hinaus wurden bei den Mondmissionen zwei weitere Computer eingesetzt:
Der AGC bildete 1972 die Basis für ein experimentelles Fly-by-wire-System, welches in einer Vought F-8 „Crusader“ installiert wurde, um die Machbarkeit und die Vorzüge eines rechnergestützten Fly-by-wire-System zu demonstrieren. Dabei wurde der AGC nur in der ersten Phase dieses Projekts eingesetzt, und in einer zweiten Phase durch einen anderen Rechner ersetzt. Die hierauf folgende Forschung führte zum Fly-by-wire-System des Space Shuttle und indirekt zu den Fly-by-wire-Systemen moderner Luftfahrzeuge.
Der Apollo-Flugcomputer war der erste, bei dem integrierte Schaltkreise (IC) eingesetzt wurden. Die bis 1966 benutzte Block-I-Version des AGC war aus 4100 ICs aufgebaut. Jedes dieser ICs beinhaltete ein einzelnes NOR-Gatter mit drei Eingängen. Bei der ab Apollo 7 eingesetzten Block-II-Version des AGC waren jeweils zwei NOR-Gatter mit drei Eingängen in einem IC mit Flat-Pack-Gehäuse untergebracht. Es wurden hier annähernd 5600 Gatter benutzt. Die in Widerstands-Transistor-Logik aufgebauten Gatter wurden von Fairchild Semiconductor hergestellt. Die Verdrahtung der ICs war mittels Wickelverbindung aufgebaut und in Epoxidharz eingegossen. Der Prozessor arbeitete mit 16-Bit-Datenworten (14 Bit Daten, 1 Überlaufbit und 1 Vorzeichenbit (Einerkomplement)).
Der Schreib-Lese-Speicher (RAM) des AGC war als Ringkernspeicher und der Festwertspeicher (ROM) als Core Rope Memory aufgebaut.
Die Block-I-Version des AGC verfügte über ein RAM mit einer Kapazität von 1K Datenworten und ein ROM mit einer Kapazität von 12K Datenworten, die später auf 24K erweitert wurde. Die Block-II-Version des AGC verfügte über ein RAM mit einer Kapazität von 4K Datenworten und ein ROM mit einer Kapazität von 32K Datenworten.
Beide Speicher hatten eine Taktzeit von 12 μs. Die Datenworte hatten eine Länge von 16 Bit (15 Bit Daten und 1 Paritätsbit (Gerade Parität)).
Als Taktgeber wurde beim AGC ein Schwingquarz mit einer Taktfrequenz von 2,048 MHz benutzt. Dieses Taktsignal wurde durch 2 dividiert, um ein Taktsignal mit einer Taktfrequenz von 1,024 MHz zu erzeugen. Mit diesem Takt wurden die internen Operationen des AGC abgearbeitet. Das 1,024 MHz-Taktsignal wurde wiederum durch 2 dividiert, um ein Taktsignal mit einer Taktfrequenz von 512 kHz zu erzeugen. Dieser MASTER FREQUENCY genannte Takt diente zur Synchronisation der externen Systeme des Apollo-Raumfahrzeugs.
Die Software des AGC war in der AGC-Assemblersprache geschrieben. Es gab ein einfaches EXEX genanntes Echtzeitbetriebssystem. EXEX konnte bis zu acht Prozesse gleichzeitig in einem nichtpräemptiven Multitasking-Verfahren bearbeiten (jeder Prozess musste dabei periodisch die Kontrolle an EXEC zurückgeben).
Darüber hinaus gab es eine unterbrechungsgesteuerte Komponente, die WAITLIST genannt wurde.
Die Benutzerschnittstelle des AGC wurde DSKY (Display/Keyboard) genannt und bestand aus einer Reihe von Ziffernanzeigen und einer Tastatur, die an einen Taschenrechner erinnert. Befehle wurden numerisch als zweistellige Zahlen eingegeben.
Das Kommandomodul verfügte über zwei DSKY. Eines auf der Hauptinstrumententafel und eines im unteren Geräteraum in der Nähe des Sextanten zur Ausrichtung des inertialen Navigationssystems. Beide DSKY wurden durch den gleichen AGC betrieben. Die Mondlandefähre verfügte über nur ein DSKY für sein AGC.