Hlavní navigace

Historie počítačů vyráběných v SSSR

2. 2. 2010
Doba čtení: 10 minut

Sdílet

V dnešním článku o historii výpočetní techniky se opět vrátíme do počítačového pravěku. Popíšeme si významné počítače vyráběné v padesátých a šedesátých letech v SSSR. Jsou sice použitou technologií srovnatelné se svými „západními“ protějšky, ovšem některé jejich vlastnosti jsou zcela unikátní.

Obsah

1. Historie počítačů vyráběných v SSSR

2. Elektronkový počítač Strela

3. Technické parametry počítače Strela

4. Výpočetní rychlost a externí paměťová média

5. Formát čísel zpracovávaných čísel v procesoru počítače Strela

6. Instrukční sada počítače Strela

7. Obsah další části seriálu

8. Odkazy na Internetu

1. Historie počítačů vyráběných v SSSR

V úvodních částech tohoto seriálu jsme si popsali některé počítače vyráběné v padesátých a šedesátých letech minulého století, které se nesmazatelným způsobem zapsaly do historie výpočetní techniky. Jednalo se především o sálové počítače vyráběné firmou IBM (první generace sálových počítačů firmy IBM byla označována tříciferným kódem začínajícím na 7. Celkem se vyrábělo pět typů počítačů této generace – IBM 701, IBM 702, IBM 704, IBM 705 a IBM 709) a počítače PDP (PDP-1 z roku 1959 s použitím vektorového displeje pro historicky první grafickou hru Spacewar!, první verze Unixu vytvořená pro počítače PDP-7 atd.). Ovšem nesmíme zapomenout na to, že různé typy počítačů, ať již se jednalo o sálové počítače, minipočítače či později mikropočítače, vznikaly i v zemích RVHP, samozřejmě včetně SSSR. Tyto počítače měly poměrně velký vliv na úspěchy SSSR v kosmickém programu i jiných vědeckých a průmyslových oblastech.

ibm05

Obrázek 1: Sálový počítač IBM-702 z roku 1953. Jednalo se o jeden z prvních počítačů specializovaných na hromadné zpracování dat, který byl vystavěn s využitím technologie elektronek a katodových (Williamsových) trubic.

V dnešní části seriálu o historii výpočetní techniky si popíšeme důležitou a současně i velmi zajímavou sérii počítačů navržených a vyráběných v SSSR. Jedná se o elektronkové počítače Strela. Nejde ovšem o první typy počítačů, které byly v SSSR vytvořeny. Prvenství patří počítači MESM, který je dokonce mnoha historiky označován za vůbec první programovatelný elektronický počítač v Evropě. Počítač MESM (v azbuce МЭСМ – „Малая Электронно- Счетная Машина“, neboli „malý elektronický počítací stroj“) byl navržený Sergejem Alexejevičem Lebeděvem. Tento počítač, jež pochází z let 1948 až 1951, obsahoval více než 6000 elektronek, dokázal provést až tři tisíce operací za minutu a spotřeboval pro svůj provoz 25 kW energie (a cca stejné množství energie pro jeho chlazení).

sssr02

Obrázek 2: Hlavní moduly počítače MESM včetně jeho řídicího (operátorského) panelu.

2. Elektronkový počítač Strela

Jedním z prvních poměrně úspěšných počítačů navržených a vyráběných v SSSR byly počítače Strela-1, které byly vytvořeny vývojovým týmem vedeným Y. Bazilevským. Jednalo se o první počítač, který byl v SSSR vyráběn sériově (v průběhu let 1953 až 1956), i když celkový počet vyrobených a následně plně zprovozněných počítačů dosahoval pouze několika jednotek, s velkou pravděpodobností 7 až 10 kusů. Dostupné údaje o počtu vyrobených kusů se od sebe liší, pravděpodobně i z toho důvodu, že některé instalace počítačů Strela neobsahovaly všechny moduly, takže například počet vyrobených procesorových jednotek se odlišuje od počtu bubnových pamětí atd. Po technologické stránce se tyto počítače příliš neodlišovaly od jejich západních kolegů – procesorová jednotka i řadič byly vytvořeny z elektronek a polovodičových diod, využívaly se bubnové paměti, Williamsovy (katodové) trubice, magnetické pásky, děrné štítky atd. Bližší technické údaje o těchto počítačích si řekneme v následující kapitole.

sssr03

Obrázek 3: Pohled na počítač Strela, z jehož rozměrů je zřejmé, proč se těmto strojům říkalo „sálové počítače“.

Počítače Strela byly určeny především pro numerické výpočty (simulace, vědeckotechnické aplikace, další vývoj výpočetní techniky), čemuž odpovídá i formát údajů, které bylo možné v procesorové jednotce těchto počítačů zpracovávat – jednalo se o číselné hodnoty reprezentované ve formátu plovoucí řádové čárky, které byly uložené ve slovech i poněkud neobvyklé šířce 43 bitů, jejichž formát si podrobněji popíšeme v páté kapitole. Pokud vám připadá podivné, že tyto počítače nezpracovávaly slova o šířce, jež je celočíselným násobkem osmi (8 bitů, 16 bitů, 32 bitů, 64 bitů), vzpomeňte si například na již popsané počítače PDP-1 (první prototyp 1959, sériová výroba začala v roce 1960) se slovy o šířce 18 bitů, dvanáctibitový PDP-5 (rok výroby 1963, šlo o další generaci počítačů vystavěných s pomocí novějších technologií) či IBM 704 (1954, tj. současník počítače Strela, dokonce i určení tohoto počítače bylo podobné), jež zpracovávaly operandy o šířce 36 bitů. Bitová šířka zpracovávaných operandů na hodnoty obvyklé dnes se ustálila až o cca 10 let později.

ibm07

Obrázek 4: Sálový počítač IBM-704, který byl současníkem dnes popisovaného počítače Strela.

3. Technické parametry počítače Strela

Již v předchozí kapitole jsme si řekli, že při návrhu počítačů Strela se používala technologie, která byla v polovině padesátých let minulého století dostupná (na zhruba stejné úrovni) na obou stranách železné opony. Procesorová jednotka i řadič byly sestaveny z elektronek a polovodičových diod. Celkový počet elektronek (většinou se jednalo o dvojici triod umístěných v jedné baňce, které mohly být společně použity pro implementaci klopného obvodu, logického členu atd.) dosahoval 6200 kusů, počet polovodičových diod dokonce 60000 kusů. Velké množství těchto diod bylo použito pro implementaci násobičky a modulu pro provádění základních maticových operací; pomocí diod byla realizována taktéž paměť ROM. Operační paměť (RAM) byla vytvořena z Williamsových trubic, což je zajímavé a dávno překonané zařízení pracující na principu televizní obrazovky, které bude popsáno v navazující části tohoto seriálu.

sssr05

Obrázek 5: Čtyři bity akumulátoru elektronkového počítače implementované pomocí osmi triod a dalších (pasivních) součástek. Na fotografii můžeme vidět pouze čtyři elektronky, protože každá baňka obsahovala dvojici triod. Uvnitř baněk můžeme vidět dvojici modrošedých „sloupků“, což jsou vlastně katody obklopující mřížky (obdoba báze u tranzistorů), anody a žhavicí vlákna.

Příkon tohoto počítače dosahoval 75 kW, dalších 25 kW spotřebovala nutná klimatizace a 50 kW chlazení. Denně počítač dokázal pracovat cca 15–18 hodin, běh plných 24 hodin denně nebyl možný kvůli nutným opravám a výměnám součástek (samozřejmě především elektronek – nutnost jejich časté výměny se nevyhnula žádným elektronkovým počítačům; nejde přitom o krátkou životnost těchto součástek, jako o jejich velké množství, které samozřejmě snižuje střední dobu bezchybného provozu počítače, neboli MTBF – Mean Time Between Failure).

sssr06

Obrázek 6: Sovětská elektronka GMI-5, azbukou ГМИ-5.

4. Výpočetní rychlost a externí paměťová média

Rychlost počítače Strela byla na dobu vzniku velmi slušná – dosahovala dvou až tří tisíc operací za sekundu. Kromě operační paměti s kapacitou 2048 slov (jedno slovo mělo šířku 43 bitů), byly pozdější modely počítače Strela vybaveny bubnovou pamětí o kapacitě 4096 slov, taktéž o šířce 43 bitů. Rychlost rotace bubnové paměti byla 6000 otáček za minutu. Kromě této paměti byl počítač vybaven jednotkou pro magnetické pásky, přičemž maximální kapacita pásek byla omezena způsobem adresování, který se podobal adresování sektorů na disketách či pevném disku: každá magnetická páska mohla obsahovat maximálně 511 zón a v každé zóně mohlo být uloženo 1 až 2048 číselných hodnot (43bitových). Počet slov v každé zóně byl omezen kvůli používání dvanáctibitového adresování. Kromě magnetických pásek bylo možné používat i děrné štítky, jejichž formát byl opět odvozen z šířky zpracovávaných údajů – na každém děrném štítku bylo binárně zakódováno dvanáct 43bitových slov.

ibm04

Obrázek 7: Bubnová paměť je předchůdcem dnešních pevných disků. Na rozdíl od nich se pro každou stopu využívala samostatná sada čtecích a zápisových hlav, což zjednodušilo konstrukci paměti (nemusel se implementovat mechanismus pro vystavení hlav) a umožnilo paralelní zápis/čtení ze všech stop současně. Kvůli poměrně malému množství stop však byla kapacita bubnové paměti malá, takže se doplňovala dalším typem externí paměti, typicky magnetickou páskou.

5. Formát čísel zpracovávaných v procesoru počítače Strela

Procesorová jednotka elektronkového počítače Strela pracovala, jak jsme si již řekli v předchozích kapitolách, s operandy majícími šířku 43 bitů. Číselné hodnoty mohly být uloženy ve dvou formátech – binárním formátu s pohyblivou řádovou čárkou (FP – floating point) a BCD formátu, taktéž s pohyblivou řádovou čárkou. Největší rozdíl mezi těmito dvěma formáty spočíval v tom, jakým způsobem byly zakódovány číslice mantisy. Buď se jednalo o binární kód: v tomto případě byla mantisa uložena na 35 bitech, což odpovídá 10 až 11 platným desítkovým číslicím. Nebo bylo možné pro uložení mantisy použít kód BCD, což znamenalo, že každá číslice mantisy byla uložena ve čtveřici bitů. Délka mantisy byla v tomto případě rovna 36 bitům, což odpovídá 36/4=9 číslicím. To je sice méně než při použití binárního formátu, ale operace pro vstupy nebo výstupy numerických hodnot se díky použití BCD kódu zjednodušily (ostatně právě z tohoto důvodu se BCD používal i na mnoha kalkulačkách, včetně legendární HP-35). Funkce jednotlivých bitů 43bitových slov zpracovávaných procesorem počítače Strela jsou uvedeny v následující dvojici tabulek:

Binární formát uložení mantisy:

Bity (pozice) Význam
0 znaménko mantisy
1–35 absolutní hodnota mantisy
36 znaménko exponentu
37–42 hodnota exponentu
Přesnost 10–11 desítkových číslic
Rozsah 1.8×10-19 až 1.8×1019

BCD formát uložení mantisy:

Bity (pozice) Význam
0 znaménko mantisy
1–36 mantisa uložená v BCD tvaru – 4 bity na číslici
37 znaménko exponentu
38–42 hodnota exponentu
Přesnost 9 desítkových číslic
Rozsah 1.8×10-19 až 1.8×1019
sssr08

Obrázek 8: Williamsova trubice, jejíž princip si popíšeme v navazující části tohoto seriálu. Tyto součástky byly používány v některých počítačích vyráběných ve čtyřicátých a padesátých letech minulého století pro implementaci operační paměti, jejíž obsah se musel (podobně jako v dnešních DRAM) neustále obnovovat.

6. Instrukční sada počítače Strela

Aritmeticko-logická jednotka elektronkového počítače Strela dokázala provádět základní aritmetické a logické instrukce, například součet, rozdíl, součin, podíl, bitové operace AND, OR a XOR, bitový posun atd. Kromě toho byly podporovány i složitější aritmetické instrukce typu výpočtu druhé odmocniny, logaritmu, goniometrické funkce (sin, arctan), či operace přesunu dat. Podmíněné příkazy a programové smyčky se realizovaly klasickým způsobem využívaným dodnes – podmíněnými skoky. Instrukční sada byla navržena takovým způsobem, že se v mnoha instrukcích (samozřejmě se většinou jednalo o aritmetické a logické instrukce) využíval tříadresový kód, což znamenalo, že se po operačním kódu instrukce uváděly až tři operandy – dva zdrojové operandy a jeden operand cílový. Adresy byly dvanáctibitové, což omezovalo kapacitu operační paměti na 2048 slov (každé slovo uložené v operační paměti mělo samozřejmě šířku 43 bitů, takže maximální kapacita paměti byla rovna 88064 bitům, tj. zhruba deseti kilobajtům). Typický formát instrukcí, jejichž šířka byla shodná se šířkou operandů, je následující:

Bity (pozice) Význam
0–11 adresa prvního operandu (rozsah 0..2047)
12–23 adresa druhého operandu (rozsah 0..2047)
24–35 adresa třetího operandu (rozsah 0..2047)
36 kontrolní znak (detekce jednobitové chyby)
37–42 instrukční kód
sssr09

Obrázek 9: Elektronkový počítač Ural-2, se kterým se seznámíme v následující části tohoto seriálu. Nalevo od řídicího pultu se nachází ultramoderní MacBook, který byl na Ural-2 položen autorem této fotografie :-)

7. Obsah další části seriálu

V následující části seriálu o historii výpočetní techniky budeme pokračovat v popisu počítačů vyráběných ve druhé polovině minulého století v SSSR. Nejprve si popíšeme elektronkové počítače Ural (konkrétně modely Ural-1 až Ural-4) a poté se seznámíme s druhou generací těchto počítačů (jež lze považovat za analogie mainframů firmy IBM), které již nebyly založeny na technologii elektronek, ale na mnohem menších, rychlejších a energeticky úspornějších tranzistorech (jedná se například o některé počítače Ural, konkrétně o modely Ural-11, Ural-14 či Ural-16). Taktéž se seznámíme s minipočítači a dokonce mikropočítači vyráběnými v SSSR, ať již se jednalo o původní výrobky (mikropočítačová řada EC, kterou jsme se již zabývali) či o kopie počítačů vyráběných v okolním světě (jde například o osmibitový počítač Agáta, který vznikl jako kopie oblíbeného osmibitového počítače Apple II).

CS24_early

sssr10

Obrázek 10: Počítač Apple II s původním logem firmy, které vyjadřovalo možnost zobrazení barev na těchto počítačích (mnoho osmibitových počítačů podporovalo pouze monochromatické zobrazení). Paradoxní je, že další úspěšný počítač firmy Apple – Macintosh – používal pouze monochromatickou grafiku. Počítač Apple II se stal inspirací pro tvůrce jeho klonu nazvaného Agáta, který byl vyráběn v SSSR.

8. Odkazy na Internetu

  1. 60's style Soviet computer technology (video – slovensky)
     http://blogs.techrepublic.com.com/classic-tech/?p=163
  2. Soviet Computer URAL2
    http://www.youtube.com/watch?v=LChE-9fg7c8
  3. Tribute to the Soviet Computing – Part I
    http://www.youtube.com/watch?v=1Zx4NEAAt-E&feature=related
  4. Computers – Deception by Control Data Corporation
     http://reformed-theology.org/html/books/best_enemy/chapter_05.htm
  5. Timeline of Computer History
    http://www.computerhistory.org/timeline/
  6. Russian Virtual Computer Museum: Strela Computer
     http://www.computer-museum.ru/english/strela.htm
  7. Russian Virtual Computer Museum: General-Purpose Automatic Digital Computer „Ural-11“
     http://www.computer-museum.ru/english/ural11.htm
  8. The Hidden Side of the Moon
    http://www.mentallandscape.com/L_Luna3.htm
  9. History of computing hardware
    http://en.wikipedia.org/wiki/History_of_computing_hardware
  10. History of computer hardware in Soviet Bloc countries
     http://en.wikipedia.org/wiki/History_of_computer_hardware_in_Soviet_Bloc_countries
  11. Computers – Deception by Control Data Corporation
     http://reformed-theology.org/html/books/best_enemy/chapter_05.htm
  12. Strela computer
    http://en.wikipedia.org/wiki/Strela_computer
  13. Ural (computer)
    http://en.wikipedia.org/wiki/Ural_(computer)
  14. Setun
    http://en.wikipedia.org/wiki/Setun
  15. DSSP AND FORTH. COMPARE ANALYSIS
    http://www.forth.org.ru/~dssp/msdos_e/papers/daf.txt
  16. Bashir Iskanderovich Rameev
    http://www.computer-museum.ru/english/galglory_en/rameev.htm
  17. Architecture and computer code of Strela computer
     http://www.computer-museum.ru/english/strcomm.htm
  18. ‚Ural‘ Universal Automatic Digital Computers
     http://oai.dtic.mil/oai/oai?verb=getRecord&metadataPrefix=html&identifier=AD0756074
  19. URAL
    http://www.bashedu.ru/konkurs/tarhov/english/ural.htm
  20. Algol 68 – Years in the USSR
    http://www.computer-museum.ru/english/algol68.htm
  21. Strela-1, the First Soviet Computer: Political Success and Technological Failure
    http://portal.acm.org/citation.cfm?id=1158833
     http://www.computer.org/portal/web/csdl/doi/10.1109/MAHC.2006.56

Byl pro vás článek přínosný?

Autor článku

Vystudoval VUT FIT a v současné době pracuje na projektech vytvářených v jazycích Python a Go.