Komputer pokładowy w programie Apollo

Komputer zastosowany w module dowodzenia i w module księżycowym
18 bajtów zawartych w każdym sektorze 5 cm × 7.5 cm, utkanych ręcznie w pierścieniach ferrytowych

Komputery pokładowe programu Apollo ang. Apollo Guidance Computers (AGC) służyły do kierowania Modułem Dowodzenia/Serwisowym ang. Command/Service Module (CSM) i modułem księżycowym ang. Lunar Module (LM). Głównym zadaniem komputerów programu Apollo była realizacja programów zgromadzonych w pamięciach komputerów. Programy były napisane w języku maszynowym i nazywały się Instrukcje Podstawowe. Najmniejszą jednostką adresowalną w AGC było słowo maszynowe o długości 16 bitów. Instrukcje podstawowe mogły być słowami maszynowymi przenoszącymi instrukcje lub słowami maszynowymi przenoszącymi dane.

Chociaż firma IBM wprowadziła pojęcie bajt w latach sześćdziesiątych, to w podręczniku NASA opisującym komputer modułu księżycowego i w podręczniku NASA opisującym komputer modułu dowodzenia, pojęcie bajt się nie pojawia. Dla porównania z pojemnością dzisiejszych twardych dysków i RAM-u, pamięci komputerów programu Apollo można podać w bajtach. W komputerach PC, w zależności od architektury, dla procesora słowem jest przynajmniej[a] 2-bajtowy (16-bitowy) element danych. W każdej misji programu Apollo używano dwóch identycznych komputerów, jeden ang. Command Module Computer (CMC) na pokładzie modułu dowodzenia, drugi ang. Lunar Guidance Computer (LGC) na pokładzie modułu księżycowego.

AGC, które w programie Apollo służyły do kierowania CSM i kierowania LM podczas lądowania na powierzchni Księżyca, nie posiadały żadnego nośnika pamięci masowej używanego obecnie. W celu realizacji oprogramowania komputery posiadały po 74 kB informacji zgromadzonej w toroidalnych rdzeniach ferrytowych.

Odpowiedzialnymi za program komputerowy dla modułu księżycowego byli Peter Adler i Don Eyles z pracowni MIT Instrumentation Laboratory.

Skład komputera

Komputery modułu księżycowego i modułu dowodzenia zawierały:

Zegar

Zegar generował wszystkie impulsy synchronizujące konieczne do zapewnienia przepływu danych z jednego obszaru komputera do innego. Zegar również generował inne przebiegi, które były wykorzystywane przez obwody ostrzegawcze komputera i inne obszary statku kosmicznego. Był głównym źródłem czasowych sygnałów produkowanych dla wszystkich podsystemów.

Częstotliwość zegara głównego, generowana przez generator, była podawana do dzielnika czasu zbudowanego na układach logicznych. Logiczny dzielnik czasu, dzielił częstotliwość zegara głównego na impulsy, będące podstawowymi jednostkami czasu komputera. Podstawowa szybkość taktowania zegara wynosiła 1,024 kpps ang. kilo packets per second (kpps). Następnie częstotliwość taktowania zegara była podawana do skalera i do generatora impulsów czasu. Skaler dokonywał dalszego podziału impulsów z wyjścia układu logicznego na impulsy i sygnały które były użyte do bramkowania[b] i do generowania wyjść sygnału tempa taktowania i naliczania czasu. Generator impulsu czasu produkował zestaw powtarzających się impulsów czasu, które określały specyficzne cykle pamięci podczas których, następował dostęp do pamięci i przepływ danych wewnątrz komputera[1].

Licznik czasu rzeczywistego

W liczniku pamięci czasu głównego był utrzymywany czas rzeczywisty, który był używany w rozwiązywaniu problemów kierowania i nawigacji CSM, CM i LM. Licznik czasu głównego zapewniał 745,65 godzin (w przybliżeniu 31 dni). Przyrostowe impulsy generowane przez zegar były wysyłane do sekcji kontroli priorytetu w celu zwiększania przyrostów głównego licznika czasu. Czas AGC był synchronizowany z upływającym ziemskim czasem ang. Ground Elapsed Time (GET) który zaczynał się, „czas 0”, podczas startu statku kosmicznego. Czas AGC był transmitowany do Centrum Łączności Kierowania Załogowymi Lotami Kosmicznymi (ang.) Manned Space Flight Network (MSFN) raz na sekundę w celu porównania[2].

Generator sekwencji

Generator sekwencji wykonywał instrukcje zgromadzone w pamięci. Przetwarzał kody instrukcji i generował impulsy kontrolne regulujące odpływ danych z komputera. W skład generatora sekwencji wchodziły generatory:

  1. generator kodu kolejności
  2. generator poleceń
  3. generator impulsów kontrolnych

Generator sekwencji odbierał sygnały kodu kolejności od centralnego procesora i od kontroli priorytetów. Sygnały te były zakodowane przez procesor kodu kolejności i dostarczane do generatora poleceń. Inny zestaw impulsów sterujących był używany do bramkowania sygnałów kodu kolejności do generatora sekwencji na koniec każdej instrukcji. Generator poleceń dekodował impulsy wejściowe i generował instrukcje poleceń, które były dostarczane do generatora impulsów kontrolnych[3].

Procesor centralny

Procesor centralny:

  • wykonywał operacje arytmetyczne
  • przechowywał informacje wychodzące i przychodzące do pamięci
  • poprzez kontrolę parzystości wykrywał przekłamania w słowach maszynowych przychodzących z pamięci
  • generował bit parzystości w słowach maszynowych zapisywanych do pamięci

Procesor centralny składał się z:

  • rejestrów realizowanych poprzez dwustanowe przerzutniki
    • zapisujące
    • kasujące
  • wzmacniaczy zapisu
  • rejestrów buforów pamięci
  • rejestrów adresów pamięci
  • dekodera
  • logiki parzystości

Generalnie procesor centralny wykonywał operacje dyktowane przez Instrukcje Podstawowe programu zawartego w pamięci stałej. Komunikacja wewnątrz centralnego procesora była realizowana poprzez wzmacniacze zapisu. Dane przepływały do, lub z pamięci do rejestrów, pomiędzy indywidualnymi rejestrami, lub do centralnego procesora z zewnętrznych źródeł. Dane umieszczone na liniach zapisu były kierowane do określonego rejestru lub innej części centralnego procesora do zapisu, kasowania lub odczytu[4].

Pamięci

Pamięć stała komputerów pokładowych programu Apollo
RAM w Apollo

Każdy komputer posiadał dwa typy pamięci, kasowalną i stałą. Pamięć kasowalna mogła być zapisywana i odczytywana. Pamięć stała służyła tylko do odczytu ang. Read Only Memory (ROM). Zawierała programy użytkowe, wartości stałe, współrzędne selenograficzne i astronomiczne, używała 36 864 terminów lub słów, każdy o długości 16 bitów[c]. W sumie pamięć stała była zawarta w 74 kB. Pamięć kasowalna była pamięcią ferrytową, o dostępie swobodnym ang. Random access memory (RAM) i o destrukcyjnym odczycie. Pamięć kasowalna była użyteczna w gromadzeniu wartości zmiennych, w obliczeniach, lub w rejestrach do operacji logicznych i posiadała tylko 2 048 16 bitowych słów, czyli 4 kB. Dane zgromadzone w pamięci kasowalnej mogły być zmieniane lub aktualizowane. To, co zdecydowanie różni pamięć kasowalną od dzisiaj stosowanej pamięci RAM to fakt, że dane zawarte w pamięci RAM giną po wyłączeniu komputera, a giną, ponieważ informacje w niej zawarte, są stanami układów logicznych, które istnieją dopóki podawane jest napięcie zasilania.

Pamięć stała była wykonana z toroidalnych rdzeni ferrytowych. Elementy programów użytkowych były zakodowane w rdzeniach ferrytowych utkanych ręcznie zgodnie ze wzorem splotu. Pamięć stała była niezniszczalna w zależności od istnienia lub nie, napięcia zasilania. Odczyt danych z tej pamięci nie miał wpływu na jej zawartość[5].

Pamięć kasowalna była zbudowana z podobnych materiałów, lecz inaczej skonstruowana. Dla pamięci kasowalnej gęstość zapisu w zależności od ilości rdzeni ferrytowych do tego wykorzystanych, wynosiła jedno słowo na 16 rdzeni ferrytowych; dla pamięci stałej ten wskaźnik wynosił 8 rdzeni ferrytowych na jedno słowo maszynowe. Informacje zawarte w pamięci kasowalnej nie znikały po odłączeniu napięcia zasilania.

Obydwie pamięci były rdzeniami magnetycznymi służącymi do przechowywania informacji, jednakże rdzenie magnetyczne były wykorzystane różnie w obydwu typach pamięci. Dalszy opis wymaga od czytelnika znajomości podstawowych właściwości ferrytowych rdzeni magnetycznych opisanych przez krzywą pętli histerezy. Rdzeń jest statycznym urządzeniem przechowującym pamięć, posiadającym dwa stany stabilne. Może on być namagnesowany w jednym lub drugim kierunku, prądem o adekwatnym natężeniu przepływającym przez przewód przechodzącym przez rdzeń. Kierunek przepływu prądu definiował kierunek namagnesowania rdzenia. Rdzenie zachowywały namagnesowanie aż do momentu kiedy prąd o przeciwnym kierunku przełączył kierunek namagnesowania. Prądy płynące różnymi przewodami przez ten sam rdzeń powodowały skutki stosowne do prądu będącego ich algebraiczną sumą. Przewody odczytu przechodzące przez przełączany rdzeń[d] indukowały impuls[6].

Każde słowo maszynowe było umiejscowione stosownie do swojego adresu. Adresy pamięci stałej były przypisane do słów maszynowych jako wskazówka kolejności w jakiej były one realizowane; bloki adresów były rezerwowane dla danych takich jak wielkości stałe i tabele. Informacja w pamięci stałej była umiejscowiona na zawsze poprzez utkanie jej według określonego wzoru w magnetycznych rdzeniach. W pamięci kasowalnej informacje były umieszczane poprzez klawiaturę urządzenia DSKY, poprzez sekcję wejścia, lub z programów użytkowych[7][8].

W pamięci słowo maszynowe składało się z jednego bitu parzystości, 14 bitów przenoszących znaczenie, 1 bitu przenoszącego znak. Binarnie 1 w bicie znaku wskazywało liczbę ujemną, a binarnie 0 w bicie znaku wskazywało liczbę dodatnią. Słowa maszynowe przenoszące instrukcje zawierały 12 bitowy kod adresu i 3 bitowy kod polecenia. Normalnie kod adresu przedstawiał lokalizację słowa w pamięci lub w centralnym procesorze. Kod polecenia definiował przepływ danych wewnątrz komputera, a kod adresu wybierał dane, które były użyte do obliczeń.

Kod polecenia reprezentował operację, która była realizowana na danych, których lokalizację reprezentował kod adresu. Kod polecenia każdej instrukcji był wprowadzany do generatora sekwencji, który sterował przepływem danych i wytwarzał różne sekwencje impulsów kontrolnych dla każdej instrukcji. Każda instrukcja była poprzedzona inną instrukcją. Do określenia kolejności, według której instrukcje miały być realizowane normalnie były przechowywane w kolejnych lokalizacjach pamięci. Adres instrukcji, która miała być realizowana jako następna wywodził się od adresu instrukcji aktualnie realizowanej poprzez dodanie do adresu wartości jeden. Zakończenie realizacji instrukcji następowało wtedy, gdy kod realizacji następnej instrukcji został przesłany do generatora sekwencji, a stosowny adres został przesłany do centralnego procesora.

Komputery działały w środowiskach, w których wiele parametrów i warunków zmieniało się w czasie w sposób ciągły. Komputery działały operując nad jednym tylko elementem w tym samym czasie. Dlatego do przetwarzania parametrów, czas przydzielony do określonego sprzętu komputerowego, był dzielony. Przydział czasu był realizowany poprzez wyznaczenie priorytetów dla poszczególnych funkcji procedur każdego komputera[9].

DSKY

Monitor i klawiatura komputera Apollo

Do współpracy z komputerem astronauci używali urządzenia będącego połączeniem wyświetlacza ang. display i klawiatury ang. keyboard, i z liter tych dwóch pojęć powstała wspólna nazwa DSKY. Klawiatura DSKY nie była typu QWERTY, lecz klawiaturą numeryczną z kilkoma klawiszami funkcyjnymi. W celu wprowadzenia polecenia użytkownik musiał nacisnąć klawisz „Verb”, poprzedzony liczbą, która korespondowała z określonym zadaniem, które miał wykonać komputer lub urządzenie peryferyjne komputera. W celu wprowadzenia danych użytkownik naciskał klawisz „Noun” z odpowiednią liczbą.

System operacyjny

Zespół TIM opracował wielozadaniowy system operacyjny działający w czasie rzeczywistym. System wykorzystywał przerwania, realizował zadania zaplanowane w czasie, takie jak, punktualne włączenie silnika opadania modułu księżycowego, jak również komputer określał pierwszeństwo wykonania operacji, dla sytuacji gdy zadania kumulowały się w małym przedziale czasowym. Każde zaplanowane zadanie miało pewną ilość przydzielonej pamięci kasowalnej do wykorzystania wtedy gdy nastąpiła taka potrzeba. System został tak zaprojektowany, aby zachowywał najważniejsze informacje potrzebne do restartu komputera, co pozwoliło przetwarzać ważne informacje, nawet po restarcie komputera, po uprzednim zawieszeniu się komputera.

Przy małej ilości dostępnej pamięci kasowalnej, informatycy zmuszeni byli planować użycie tego samego adresu pamięci do różnych celów, w różnych czasach. Przykładowo dane zawierające wysokość nad powierzchnią księżyca w fazie lądowania, mogły być nadpisane na koordynatach obiektów astronomicznych ustalonych przez Optyczny Teleskop Astronomiczny ang. Alignment Optical Telescope (AOT) niezbędnych do zorientowania platformy bezwładnościowej IMU, ponieważ dane te (koordynaty), zostały już wykorzystane, a następna obserwacja gwiazd i orientacja IMU miały się odbyć przed startem członu wznoszenia z powierzchni Księżyca.

Komputer i system operacyjny były tak opracowane, aby trzymały się krytycznych zadań, przykładowo takich jak prowadzenie cyfrowego autopilota, nawet jeśli inne części oprogramowania powodowały problemy. W dniu 20 lipca 1969 r. Neil Armstrong i Buzz Aldrin schodzili modułem księżycowym na powierzchnię srebrnego globu. Byli około 1800 metrów (6000 stóp) nad jego powierzchnią, gdy na wyświetlaczu komputera pojawiło się ostrzeżenie: Błąd nr 1202. Co ten błąd oznaczał astronautów powiadomiła naziemna kontrola lotu, a oznaczał on przeciążenie pamięci. Odpowiedzialność za podejmowanie decyzji, czy błąd był istotny, czy też nie[e], spadał na 26-letniego wówczas geniusza komputerowego Steve'a Balesa, eksperta systemów informacyjnych kierowania lotem modułu księżycowego. Błąd był spowodowany nieoczekiwanym napływem informacji od radaru lądowania i informacje te, jako drugorzędne, można było zignorować, ale nie wynikało to wprost z komunikatu: Błąd nr 1202. W ciągu następnych minut błąd powtórzył się kilka razy, ale nie wstrzymało to lądowania, ani nie zmieniło decyzji Steve'a Balesa. Za podjęcie decyzji o kontynuacji, Bales i trzech astronautów misji Apollo 11 otrzymali Medal Wolności USA[8].

Komputer w LM

Wnętrze symulatora modułu księżycowego i widok DSKY na pierwszym planie

Modułem LM wykonującym przelot od CSM do powierzchni Księżyca i z powrotem, nawigował i kierował komputer modułu księżycowego ang. LM Guidance Computer (LGC). LGC był centralnym urządzeniem przetwarzania danych, Systemu Kierowania, Nawigacji i Podsystemu Sterowania ang. Guidance, Navigation and Control Subsystem (GN&CS). LGC przetwarzał dane, wydawał komendy i sygnały dla wielu podsystemów. Przechowywał istotne dane do odtworzenia trajektorii lotu podczas opadania na powierzchnię Księżyca, lądowania, podczas startu i wznoszenia z powierzchni Księżyca.

Klawiatura i zestaw wyświetlaczy komputera LM znajdował się na panelu 4 w urządzeniu DSKY. Komputer kierowania LM:

  • odbierał dane z sekcji optycznej i na ich podstawie obliczał i ustawiał stabilny człon platformy bezwładnościowej modułu księżycowego ang. Inertial Measurement Unit (IMU).
  • wydawał komendy silnikom członu wznoszenia i członu zniżania
  • wydawał komendy silnikom sterowania reakcyjnego ang. Reaction Control System (RCS)
  • wydawał komendy sterowania radiolokacyjną anteną lądowania ang. Landing Radar (LR)
  • wydawał komendy sterowania siłownikom radiolokacyjnej anteny śledzenia CSM ang. Rendezvous Radar (RR)
  • przesyłał sygnały do wysterowania wskaźników w kabinie LM[10]

Komputer w CSM

Wyświetlacz i klawiatura komputera modułu dowodzenia zamontowane na panelu głównym

System komputerowy modułu dowodzenia składał się z:

  • komputera modułu dowodzenia ang. Command Module Computer (CMC)
  • dwóch urządzeń będących połączeniem wyświetlacza z klawiaturą (DSKY)

CMC wraz z jednym DSKY znajdowało się na panelu głównym, a drugie DSKY znajdowało się w dolnej wnęce modułu dowodzenia.

CMC wykonywał następujące operacje:

  • orientował stabilny człon platformy bezwładnościowej modułu dowodzenia (IMU).
  • pozycjonował ustawienia sekstantu
  • rozwiązywał zagadnienia związane z kierowaniem CSM lub CM
  • gromadził dane związane z profilem lotu konieczne do zakończenia misji
  • wydawał głównemu silnikowi modułu CSM komendy odnośnie do jego włączania i wyłączania oraz kierunku ciągu
  • wydawał komendy silnikom RCS odnośnie do ich włączania i wyłączania
  • zbierał dane od przyśpieszeniomierzy systemu bezwładnościowego i dostarczał zmiany prędkości do CMC w celu oszacowania prędkości całkowitej[11]

Komputer w C-8 Crusader

AGC w samolocie C-8 Crusader

Komputer pokładowy programu Apollo był użyty w pierwszej fazie eksperymentalnego programu wdrażania techniki cyfrowego fly-by-wire przeprowadzanego na samolocie F-8 Crusader, komputer był centralnym elementem nowych technologii użytych w tym programie. Komputer AGC przepracował ponad 2000 godzin bez uszkodzeń. Kłopoty, które występowały w pierwszych lotach, zostały naprawione poprzez wymianę pamięci kasowalnej[12][13].

Uwagi

  1. W szerszym rozwinięciu: W komputerach PC, w zależności od architektury, dla procesora słowem jest 2-bajtowy (16-bitowy), 4-bajtowy (32-bitowy) lub 8-bajtowy (64-bitowy) element danych
  2. Bramkowanie - cyfrowa realizacja dowolnej funkcji logicznej
  3. Każde słowo maszynowe zawierało 2 bajty informacji
  4. Wzbudzanie wybranego rdzenia było dokonywane przez jednoczesne wzbudzenie dwoma prostopadłymi przewodami adresowymi
  5. Problem polegał na szybkim podjęciu decyzji czy przerwać misję, czy kontynuować

Przypisy

  1. LM 10 Handbook and Subsequent Volume 1 (ang.). W: Central procesor/Timer [on-line]. National Aeronautics and Space Administration Apollo Project Office, 15.12.1968 - 01.04.1971. s. 68. [dostęp 2012-04-18].
  2. LM 10 Handbook and Subsequent Volume 1 (ang.). W: Central procesor [on-line]. National Aeronautics and Space Administration Apollo Project Office, 15.12.1968 - 01.04.1971. s. 69. [dostęp 2012-04-18].
  3. LM 10 Handbook and Subsequent Volume 1 (ang.). W: Sequence generator [on-line]. National Aeronautics and Space Administration Apollo Project Office, 15.12.1968 - 01.04.1971. s. 68. [dostęp 2012-04-18].
  4. LM 10 Handbook and Subsequent Volume 1 (ang.). W: Central processor [on-line]. National Aeronautics and Space Administration Apollo Project Office, 15.12.1968 - 01.04.1971. s. 68. [dostęp 2012-04-18].
  5. LM 10 Handbook and Subsequent Volume 1 (ang.). W: 2.1.4.3.1. LM Guidance Computer [on-line]. National Aeronautics and Space Administration. s. 113. [dostęp 2012-05-29].
  6. Apollo Operations Handbook Blok II Spacecraft (ang.). W: Command Module Computer/ Memory [on-line]. National Aeronautics and Space Administration, 15-04-1969. s. 79. [dostęp 2012-06-01].
  7. LM 10 Handbook and Subsequent Volume 1 (ang.). W: Memory [on-line]. National Aeronautics and Space Administration. s. 120. [dostęp 2012-05-28].
  8. a b The Lunar Module Computer (ang.). Apollo Lunar Surface Journal, 1999. [dostęp 2012-05-20].
  9. LM10 (ang.). W: LM Guidance Computer [on-line]. NASA. s. 113. [dostęp 2012-05-30].
  10. LM 10 Handbook and Subsequent Volume 1 (ang.). W: LM Guidance Computer [on-line]. National Aeronautics and Space Administration Apollo Project Office, 15.12.1968 - 01.04.1971. s. 60. [dostęp 2012-04-18].
  11. Apollo Operations Handbook Blok II Spacecraft (ang.). W: Computer Subsystem [on-line]. National Aeronautics and Space Administration, 15-04-1969. s. 75. [dostęp 2012-06-01].
  12. Apollo display and keyboard unit (DSKY) used on F-8 DFBW (ang.). Dryden Flight Research Center, 5 lutego, 1996. [dostęp 2012-06-15]. [zarchiwizowane z tego adresu (2013-02-27)].
  13. B. A. Peterson, G. E. Krier i C. R. Jarvis: DEVELOPMENT AND FLIGHT TEST OF A DIGITAL FLY-BY-WIRE F8. (ang.). Dryden Flight Research Center, Styczeń 1973. [dostęp 2012-06-21].

Media użyte na tej stronie

Lunar Module Simulator.jpg
Autor: Stuart Seeger from College Station, Texas, USA, Licencja: CC BY 2.0
Symulator modułu księżycowego na wystawie w Centrum Lotów Kosmicznym im. Johnsona w Houston. Zdjęcie posiada objaśnienia i jeżeli one się nie wyświetlają należy nacisnąć odsyłacz: włącz objaśnienia
LSAMlaunch.jpg
CEV astronauts leave The Moon in the LSAM ascent stage.
Agc rope.jpg
Pamięć stała, spełniająca rolę pamięci masowej, wykonana z toroidalnych rdzeni ferrytowych stosowana w komputerach pokładowych programu Apollo
Fly by wire.jpg
Samolot F-8 Crusader wyposażony w system fly-by-wire (kolor zielony). Oryginalna uwaga NASA: “Sprzęt programu Apollo upchany w awionikę samolotu F-8C”. Komputer jest częściowo widoczny we wnęce w górnej części kadłuba z tyłu kokpitu. Zauważ wyświetlacz i klawiaturę komputera (DSKY) we wnęce na uzbrojenie. Aby zmieścić komputer i inne wyposażenie, zespół pracujący na eksperymentem digital fly-by-wire usunął z samolotu działko i magazynki z amunicją. Więcej na stronie Past Projects - F-8 Digital Fly-By-Wire. Plik posiada adnotacje i jeżeli się wyświetlają nacisnij odnośnik: wyświetl adnotacje.
Dsky.jpg
  • Die DSKY-Einheit des Apollo Guidance Computers (AGC) in der Armaturentafel des Kommandomoduls
  • The DSKY-Unit of the Apollo Guidance Computer (AGC) mounted on the control panel of the command module (CM).
  • Klawiatura i wyświetlacz (DSKY) komputera modułu dowodzenia ang. Command Module Computer (CMC) zamontowany na panelu głównym.
Apollo 1024 bit core memory module.jpg
Autor: Jonathan H. Ward, Licencja: CC BY-SA 3.0
Pamięć ferrytowa zastosowana w komputerach modułu księżycowego i modułu dowodzenia programu Apollo. W jednym 1024 bitowym module znajdowało się tyleż magnetycznych rdzeni toroidalnych i przez każdy z nich przechodzily 3 przewody. Bit pamięci był ustawiony, lub odczytany, poprzez przepływ prądu według określonych prodedur przez przewody przechodzące przez rdzeń. Zdjęcie przedstawia jeden moduł widziany z dwóch stron. W jednym komputerze były cztery takie moduły i tworzyły pamięć kasowalną, będącą odpowiednikiem współczesnego RAM-u. Moduły były w kształcie kwadratu o boku około 7,5 cm.
Apollo display and keyboard unit (DSKY) used on F-8 DFBW DVIDS683588.jpg
The display and keyboard (DSKY) unit used on the F-8 Digital Fly-By-Wire (DFBW) aircraft during Phase I of the fly-by-wire program. Warning lights are in the upper left section, displays in the upper right, and the keyboard is in the lower section. The Apollo flight-control system used in Phase I of the DFBW program had been used previously on the Lunar Module and was incredibly reliable. The DSKY was one element of the system. Also part of the fly-by-wire control system was the inertial platform. Both the computer and the inertial platform required a cooling system that used liquid nitrogen to keep the system within temperature limits. Should the primary flight control system fail, a backup system using three analog computers would automatically take over. The F-8 DFBW had no manual backup. The F-8 Digital Fly-By-Wire (DFBW) flight research project validated the principal concepts of all-electric flight control systems now used on nearly all modern high-performance aircraft and on military and civilian transports. The first flight of the 13-year project was on May 25, 1972, with research pilot Gary E. Krier at the controls of a modified F-8C Crusader that served as the testbed for the fly-by-wire technologies. The project was a joint effort between the NASA Flight Research Center, Edwards, California, (now the Dryden Flight Research Center) and Langley Research Center. It included a total of 211 flights. The last flight was December 16, 1985, with Dryden research pilot Ed Schneider at the controls. The F-8 DFBW system was the forerunner of current fly-by-wire systems used in the space shuttles and on today's military and civil aircraft to make them safer, more maneuverable, and more efficient. Electronic fly-by-wire systems replaced older hydraulic control systems, freeing designers to design aircraft with reduced in-flight stability. Fly-by-wire systems are safer because of their redundancies. They are more maneuverable because computers can command more frequent adjustments than a human pilot can. For airliners, computerized control ensures a smoother ride than a human pilot alone can provide. Digital-fly-by-wire is more efficient because it is lighter and takes up less space than the hydraulic systems it replaced. This either reduces the fuel required to fly or increases the number of passengers or pounds of cargo the aircraft can carry. Digital fly-by-wire is currently used in a variety of aircraft ranging from F/A-18 fighters to the Boeing 777. The DFBW research program is considered one of the most significant and most successful NASA aeronautical programs since the inception of the agency. F-8 aircraft were built originally for the U.S. Navy by LTV Aerospace of Dallas, Texas. The aircraft had a wingspan of 35 feet, 2 inches; was 54 feet, 6 inches long; and was powered by a Pratt & Whitney J57 turbojet engine.
Primitive Magnetic Memory.jpg
Autor: Steve Jurvetson from Menlo Park, USA, Licencja: CC BY 2.0
Pamięć wykonana z rdzeni ferrytowych pochodząca z kolekcji hanging in our office... będąca standardem na rynku pamięci komputerowych w latach sześćdziesiątych XX wieku. Widać tutaj 18 bajtów zawartych w każdym sektorze 5 cm × 7.5 cm, utkanych ręcznie w pierścieniach ferrytowych, indywidualnie namagnesowanych, lub nie, co w dwójkowym systemie liczbowym stanowi 1 lub 0.

Dopóki nie zobaczyłem tego powiększenia, nie zauważyłem niezwykłego okablowania rdzeni po lewej stronie. Okablowanie po prawej stronie jest typowe dla macierzy pamięci ferrytowej (do odczytu i zapisu bitu magnetycznego w rdzeniu ferrytowym znajdującym się na przecięciu danego wiersza i linii adresowej).

W celu wykrywania błędów tablice pamięci ferrytowych często miały dla każdego wiersza danych bit parzystości .