Je tomu přesně padesát let, co se startovací rampa LC-39 Kennedyho vesmírného střediska silně otřásla v základech a výkonná čerpadla prvního stupně rakety Saturn 5 začala hnát upravený petrolej a kapalný kyslík do pětice obrovských motorů F-1.
O nějakých sto metrů výše seděli v kabině připoutaní Neil Armstrong, Michael Collins a Buzz Aldrin. Hodiny ukazovaly 9:32:00 místního času (15:32:00 SELČ) a mise Apollo 11, která je měla s pomocí velitelského, servisního a lunárního modulu dopravit až na povrch měsíčního Moře klidu, právě odstartovala.
Launch Vehicle Digital Computer
Společně s astronauty, zásobami a hromadou přístrojů letělo k Měsíci i několik počítačů, které se staraly o to, aby vše proběhlo podle plánu. Ten první a vlastně ze všech nejdůležitější se jmenoval Launch Vehicle Digital Computer (LVDC) a vyrobili jej inženýři z IBM.



Raketový počítač LVDC a jeho základní schéma činnosti
Pokud jste o něm doposud neslyšeli, není divu, jeho mise totiž skončila relativně brzy po zažehnutí motorů. Počítač byl společně s telemetrickými a radiokomunikačními systémy Saturnu součástí prstence Instrument Unit (IU), který odděloval tři raketové stupně od horní části s posádkou.

Instrument Unit pro rakety Saturn IB/V (Foto: NASA)
Jak už název napovídá, LVDC se staral o bezproblémový start, takže s pomocí gyroskopů, akcelerometrů, radarů a rádiových instrukcí ze Země řídil vstřikování paliva do spalovacích komor motorů, oddělování jednotlivých stupňů a vše ostatní, co bylo třeba k výstupu na orbitu.
Třicetikilogramový počítač dokázal při taktu 2,048 MHz zpracovat zhruba 12 000 instrukcí za sekundu. Byl tedy řádově zhruba milionkrát pomalejší než současné mašiny, ale zároveň k běhu potřeboval zhruba 137 wattů. Modulární paměť tehdy fungovala ještě trošku jinak než dnes, ale v maximální konfiguraci mohla nabídnout prostor méně než 1 megabit.
Jakmile se od posádky postupně oddělily všechny raketové stupně, splnil svůj úkol i prstenec IU a s ním počítač LVDC, jehož zbytky postupně shořely v atmosféře.

Schéma rakety Saturn V s vyznačením prstence Instrument Unit (Foto: NASA)
Bez Launch Vehicle Digital Computeru by tak komplexní raketa jako Saturn 5 nikdy nedosáhla řízeného letu. V létě 1969 naštěstí fungoval, jak měl, a tak mohla trojice astronautů další dny ve vesmíru používat dnes už slavný palubní počítač Apollo Guidance Computer (AGC).
Co měl AGC za úkol, z čeho se skládal, jak jej astronauti ovládali a v čem byl unikátní? To se dozvíte v dalších kapitolách.
Pokračování 2 / 5
Apollo Guidance Computer
LVDC nebyl žádnou herní mašinou nebo počítačem, jak si jej představujeme dnes. Byl to stroj pro specifické úkoly, k čemuž mu jeho rychlost naprosto dostačovala.
2,048MHz AGC na tom nebyl jinak. Byl mnohokrát pomalejší než současné jednoduché mikrokontrolery na prototypovacích destičkách Arduino, se kterými měl leda podobně velké pamětí ROM a RAM. Po hrubém přepočtu v řádu desítek kB (ROM), respektive v jednotkách kB (RAM).

Třicetikilogramový palubní počítač AGC a jeho ovládací pultík DSKY (DiSplay/KeYboard)
Do této titěrné paměti se musely vejít všechny ovládací programy na lodi. Astronauti si mohli pomocí AGC nejen seřídit vlastní hodinky, ale také zjistit letové informace a další provozní údaje o samotné lodi, nebo provést nejrůznější korekce.
Mise Apollo 11 ke všemu potřebovala rovnou dva kusy. Zatímco jeden AGC byl instalovaný ve velitelském modulu, druhý v tom lunárním, přičemž oba měly pochopitelně i odlišnou softwarovou výbavu. Lunární byl vybavený programem pro bezpečné přistání.

Základní schéma funkce počítače AGC
Mimochodem, tyto řídící programy nebyly jako dnes uložené na pevném disku nebo ve flashovém čipu a astronauti je do počítače nenahrávali ani z žádné pásky nebo pomocí děrných štítků. Inženýři MIT, kteří při vývoji AGC vystřídali IBM, použili z dnešního pohledu naprosto exotické úložiště: core rope memory.
Podívejte se na dobovou reportáž z laboratoří MIT, kde inženýři právě kompletují počítač AGC a všechny jeho části:
Co je to vlastně ta core rope memory? To si vysvětlíme v další kapitole.
Pokračování 3 / 5
Core rope memory
Počítač AGC byl vybavený pamětí ROM s kapacitou 36 864 15bitových slov. Z této paměti se načítal každý program a bylo tedy naprosto klíčové, aby přečkala všechny neduhy letu včetně případného kosmického záření.
Inženýři z MIT proto pro operační paměť RAM zvolili přepisovatelnou feritovou paměť a pro ROM její upravenou nepřepisovatelnou podobu, kterou tvořila hromada transformátorů v podobě maličkých magnetických prstenců (feritových jader) s divoce propojeným primárním a sekundárním vinutím.

Amatérská sedmibitová core rope memory od kutila qrp.gr. Magnetická jádra/transformátory představují jednotlivé bity ukotvené k desce sekundárním vinutím, pomocí kterého čteme stav bitu. Primárním vinutím je v tomto případě horní vodič, který se jednou vine okolo všech sedmi bitů, na kterých způsobí indukci, s výjimkou toho prostředního. Výsledkem tedy bude sekvence bitů 1110111.

Tentokrát tvoří primární vinutí deset různých vodičů, z nichž každý vede jinudy, takže kapacita vzrostla ze 7 b na 70 b, které můžeme postupným zapínáním primárního vinutí sériově přečíst. Tímto způsobem můžeme ušít celý program.
Feritová jádra se pak chovala buď jako logická jednička (díky elektromagnetické indukci), nebo nula a program představoval sled těchto bitů jejich vzájemným pevným propojením pomocí vodiče.
Autoři programů pro palubní počítač AGC tedy museli celý strojový kód přepsat do sekvence 0 a 1 a podle nich pak doslova utkat jednotlivá spojení mezi feritovými jádry. Ručně! Pokud udělali chybu, museli začít znovu. Nutno podotknout, že toto šití prováděly v podstatě vyškolené švadleny.

Rope memory v počítači AGC (Foto: NASA)
Bizarní typ paměti NASA používala nejen v programu Apollo, ale i na mnoha dalších misích prvních kosmických sond třeba k Marsu (Mariner). Její výroba a programování bylo sice komplikované, ale přečkala nehostinné podmínky vesmíru.
Jak fungovala exotická ROM s programy pro palubní počítač, už víme, takže v další kapitole se konečně podíváme, jak s počítačem vlastně pracovali samotní astronauti, když Windows 10 ještě neexistovaly.
Pokračování 4 / 5
DSKY
Ta zkratka už v našem článku zazněla. DSKY, tedy Display/Keyboard bylo hlavní uživatelské rozhraní palubního počítače pro posádku. Skládalo se ze čtrnácti informačních alarmů vlevo nahoře, pětiřádkového segmentového displeje vpravo a konečně číselné klávesnice ve spodní části.



Originální jednotka DSKY zabudovaná v palubní desce lodi a její funkční replika
Plnohodnotnou klávesnici s písmeny byste u počítače AGC hledali marně, ovládal se totiž pomocí několika desítek číselných instrukcí, jejichž význam měli astronauti v rozměrném tištěném manuálu, který si vezli sebou.
Ostatně, práci s DSKY a AGC si můžete sami vyzkoušet, k dispozici je totiž hned několik desktopových emulátorů a na webu ibiblio.org dokonce i kompletní schéma k jeho sestavení. Bez jakékoliv instalace pak můžete vyzkoušet AGC/DSKY v Javascriptu na stránkách svtsim.com.
Webový simulátor
Instrukce se skrze DSKY počítači předávaly pomocí dvou částí VERB (sloveso, tedy hlavní příkaz) a NOUN (podstatné jméno, tedy volitelný parametr).

Výřez z tabulky instrukčních čísel VERB a NOUN pro počítače AGC
Ke zobrazení letového času stačilo nahlédnout do tabulky VERB/NOUN a zjistit, že k zobrazení dekadických čísel slouží VERB 06 a k zobrazení času NOUN 65. Stačilo tedy stisknout postupně každé z těchto tlačítek, zadat jeho číslo a konečně klepnout na ENTR.

Webový simulátor svtsim.com a příkaz k zobrazení letových hodin. Simulátor jsem právě zobrazil, takže čas ukazuje 0 hodin, 0 minut a 20,15 sekund (displej neuměl zobrazit desetinnou čárku).
Ve webovém simulátoru by se vám nyní na segmentovém displeji ve spodní části zobrazily na jednotlivých řádcích postupně hodiny, minuty a sekundy. Kdybychom chtěli, aby se čas hodin sám aktualizoval, zvolíme namísto VERB 06 VERB 16, který má funkci monitoru, jenž bude každých pár sekund údaj aktualizovat. NOUN bude opět 65
Ve webovém simulátoru můžete dále iniciovat start, provést kalibraci a na displeji sledovat další údaje. Třeba rostoucí výšku a polohu lodí kdesi nad Floridou.

Zažehnutí korekčních motorů na orbitě a rychle k Měsíci. Displej nyní na 3. řádku zdola ukazuje výšku v námořních mílích.
Pomocí podobných příkazů mohli astronauti zjišťovat jak údaje o lodi, tak spouštět různé podprogramy palubního počítače včetně iniciace přistávacího programu pro lunární modul.
V čem byl počítač AGC ještě unikátní a kdo mimo jiné psal jeho programy? To se dočtete v poslední kapitole našeho článku.
Pokračování 5 / 5
Počítač s integrovanými obvody a multitaskingem
Palubní mašiny z éry programu Apollo patřily k prvním strojům s integrovanými obvody, které ale byly ve srovnání se současností ještě velmi jednoduché. Čítaly nejvýše pár logických hradel, i tak se ale jednalo o počátek počítačové miniaturizace.
Další specialitou AGC byla podpora zpracovávání vícero úkolů naráz – multitaskingu. Díky tomu mohl počítač v jednom čase sledovat třeba radarová data a zároveň asynchronně zpracovávat instrukce z dalšího programu, přičemž pro různé kritické operace měl také přidělený různý výkon.



Velitelský modul programu Apollo a jeho palubní deska
Tato specialita ale nakonec způsobila problémy při přistávání lunárního modulu. AGC během zpracovávání instrukcí přistávacího programu zobrazil varování o přetížení počítače a mise mohla skončit. Astronautům by pak pomohl záložní počítač Abort Guidance System (AGS), který by se v případě havárie AGC postaral o to, aby se lunární modul dostal zpět na měsíční orbitu a spojil se s velitelským/servisním modulem.
NASA tehdy naštěstí usoudila, že varování není vážné a lunární modul mohl za pár minut bezpečně přistát.
Margaret Hamiltonová
Jednou z klíčových inženýrek, která se podílela na vývoji programů pro palubní počítače AGC včetně unikátního asynchronního zpracovávání instrukcí, byla nadaná matematička Margaret Hamiltonová, která se brzy stala hlavní softwarovou architektkou Apolla 11 a šéfkou vývoje palubního počítače v MIT. Po úspěšném přistání na Měsíci převzala několik cen.



Margaret Hamiltonová s komínem vytištěných zdrojových kódů letových programů Apolla a během vývoje modulů pro posádku
V roce 2003 získala od NASA největší individuální příspěvek v její historii ve výši 37 200 amerických dolarů a v roce 2016 pak převzala z rukou Baracka Obamy nejvyšší americké civilní vyznamenání – Prezidentskou medaili svobody.
Tento článek je součástí balíčku PREMIUM+
Odemkněte si exkluzivní obsah a videa bez reklam na devíti webech.
Chci Premium a Živě.cz bez reklam
Od 41 Kč měsíčně