Dívat se do vesmíru, to je jako hledět přímo do minulosti.

Ono to platí doslova – světlo hvězd, které vidíme dnes, je desítky, stovky, tisíce let staré, světlo těch nejvzdálenějších k nám letělo miliardy let, takže nevidíme to, jak ty hvězdy vypadají „právě teď“, ale jak vypadaly tehdy. (Vzhledem k absolutní rychlosti světla je celá koncepce „současnosti“ o něco zamotanější, ale do toho nechci zabředávat, já to mám jen jako přirovnání na úvod.)

Totéž se dá říct o kosmické technologii, kterou vypouštíme do vesmíru: když se na ni díváme, vidíme stav techniky před zhruba čtvrtstoletím. Podívejme se na Rosettu a její kometární misi – jistě jste zachytili.

Rosetta byla vypuštěna v roce 2004, v roce 2011 proletěla okolo Jupitera, program ji přepnul do „sleep mode“ kvůli šetření energií a letos v lednu se zase probudila a ohlásila z blízkosti komety. Centrální procesor Rosetty je Dynex MAS31750 na 25 MHz – šestnáctibitový procesor se zvýšenou odolností proti radiaci, který implementuje standard MIL-STD-1750A. Byl použit v několika různých sondách.

Procesor není žádný nováček, ale má to jednoduché vysvětlení: Rosetta byla vypuštěna před deseti lety, v roce 2004. Deset let ji sestavovali, tedy od roku 1994. Návrh pochází zhruba z roku 1990, 1991… No a v té době už museli vybrat vyzkoušený a ověřený procesor, který bude schopen něco takového ustát. Představte si sami sebe tehdy – dali byste tam x86? Ne, je tam procesor standardu 1750A, který v té době splňoval výše uvedené požadavky. Jeho architektura je navíc otevřená, takže ji může implementovat libovolný výrobce a máte tedy k dispozici dostatečný počet „druhých zdrojů“.

Pro zajímavost – v současnosti se používají čipy jako je RAD750 a RAD6000, založené na architektuře PowerPC. Nezapomínejme na to, že návrh takové kosmické sondy zabere mnoho let, takže logicky neobsahují při startu ty nejnovější technologie, nehledě na to, že musí fungovat mnoho dalších let v podmínkách vysoké radiace, ve vakuu a v teplotách blízkých absolutní nule, což diskvalifikuje právě ty nejnovější procesory, které nejsou dostatečně vyzkoušené. Zjednodušeně řečeno: „Na Word dobrý, ale sondu za miliony dolarů tomu nesvěřím!“ ESA v současnosti navrhuje nový procesor pro kosmické sondy, založený na architektuře SPARC-V8 a pojmenovaný LEON.

Procesory x86 se ale přesto v některých kosmických zařízeních používají. Především tam, kde je hodně energie a kde se dají v případě potřeby vyměnit. Tedy například na ISS nebo v Hubbleově teleskopu.

A teď k té kometě. Rosetta nesla modul Philae, který se před pár dny od mateřské sondy oddělil a přistál na kometě. Nebylo to úplně ideální, ale to nechme stranou a stesky nad tím, jak se „všechno pokazilo“, nechť si píšou novináři v Technetu. Philae má samozřejmě taky vlastní procesor, lépe řečeno dva. Jsou to šestnáctibitové zásobníkové procesory typu Harris RTX2010, taktované na 8 MHz (datasheet RTX2010 zde).

Architektura RTX2000 je z roku 1988 a je to vylepšený procesor Novix N4000, což je dvouzásobníkový procesor, určený pro běh jazyka FORTH, navržený autorem Forthu Chuckem Moorem (a nebyl jediný, viz článek From FORTH to Stack Processors and Beyond). Jeho architektura je rovněž otevřená, a kdybyste si chtěli takový procesor implementovat ve svém FPGA, tak můžete.

Procesory jsou v sondě dva ne proto, aby zvýšily výkon, ale jsou zapojené ve dvou redundantních systémech, z nichž jeden funguje jako primární a druhý jako kontrolní, připravený v případě nějakých problémů převzít řízení. Samozřejmě, že u takové techniky nelze rozsvítit červenou LED a čekat, až to někdo zrestartuje, ale všechny chyby musí být ošetřeny tak, aby se sonda dokázala za všech podmínek znovu probrat a uvést do rozumného stavu.

Redundance znamená dvojnásobnou zátěž pro napájení, a i proto byl vybrán takový procesor, který má velmi nízký odběr a přitom dostatečný výkon. V modulu jsou navíc i různé vědecké přístroje, které (podle CPUshack) rovněž používají RTX2010 (takže jich je na palubě celkem 10). Kromě nich modul obsahuje i ADSP-21020, pár jednočipů 80C3x a několik FPGA.