Obsah
1. Superpočítačová firma Control Data Corporation
2. Od společnosti ERA k firmě CDC
3. Stručná historie firem ERA, EMCC, Remington Rand, Sperry Corporation a CDC
4. CDC Little Character – prototyp počítače navržený Seymourem Crayem
5. První komerčně dostupný mainframe od CDC: CDC 1604
6. Procesorová jednotka mainframu CDC 1604
7. Aplikační oblasti mainframu CDC 1604
8. Další vývoj mainframů a superpočítačů firmy CDC
1. Superpočítačová firma Control Data Corporation
V předchozích částech seriálu o historii vývoje výpočetní techniky jsme si již řekli základní informace o čtyřech společnostech vyrábějících sálové počítače (mainframy), které byly souhrnně a možná i poněkud posměšně označovány jako „sedm trpaslíků“. Jednalo se o společnosti EMCC (později sloučena se Sperry Rand s divizí UNIVAC), Burroughs, Honeywell a General Electric (GE). Tyto firmy sice zdánlivě byly v porovnání s obří společností IBM trpaslíky, ovšem ve skutečnosti právě v těchto firmách vznikly některé technologie, které dosti zásadním způsobem ovlivnily další vývoj výpočetní techniky. Pátým trpaslíkem z celé skupiny je společnost CDC neboli Control Data Corporation. Tato firma se proslavila především konstrukcí superpočítačů, tj. počítačů, u nichž byl prvotním cílem vysoký výpočetní výkon a více než typické je, že u zrodu většiny těchto superpočítačů stál Seymour Cray, s jehož prací jsme se již částečně taktéž v tomto seriálu seznámili.
Obrázek 1: Výměna jednoho modulu počítače Atlas.
Kořeny společnosti CDC musíme hledat již v období druhé světové války ve skupině odborníků v námořnictvu USA, kteří se soustředili na konstrukce specializovaných strojů určených pro luštění německých a japonských šifer. Po válce se někteří z těchto specialistů stali zaměstnanci nebo spoluvlastníky nově vzniklé společnosti ERA (Engineering Research Associates), v níž se zabývali mnoha různými a mnohdy vzájemně nesouvisejícími projekty, které však byly většinou zadávány námořnictvem USA nebo přímo vládou (nejednalo se tedy o klasické komerční projekty). Jedním z částečně úspěšných projektů byl počítač Demon specializovaný na luštění některých sovětských šifer. Tento velmi úzce specializovaný stroj se však v roce 1949 stal nepoužitelný, protože SSSR změnilo své šifry a kvůli tomu, že mnoho operací bylo v Demonu zadrátováno, nebylo ho možné žádným rozumným způsobem přeprogramovat. Námořnictvo USA tedy zadalo společnosti ERA novou zakázku na vytvoření programovatelného počítače, v němž by byl program uložený v operační paměti.
Obrázek 2: Při celkovém pohledu na počítač ERA 1101 je zřejmé, proč se těmto strojům říkalo sálové počítače.
2. Od společnosti ERA k firmě CDC
Výsledkem snahy o vytvoření programovatelného počítače (ostatně jednoho z prvních počítačů tohoto typu na světě) byla konstrukce stroje Atlas, jehož upravená verze začala být firmou ERA později nabízena pod názvem ERA 1101. Tento počítač byl následovaný dalšími modely, především 36bitovým strojem ERA 1103. Poměrně slibný vývoj na poli programovatelných počítačů však byl posléze pozastaven, a to především kvůli problémům s financováním dalšího vývoje těchto strojů ze strany námořnictva. Později dokonce došlo k prodeji firmy ERA společnosti Remington Rand. Aby to nebylo tak jednoduché, tak se po relativně krátkém čase firma Remington Rand spojila se společností Sperry Corporation a vzniklá nová firma byla pojmenována Sperry Rand. Toto sloučení dvou již relativně velkých firem mj. znamenalo i to, že se původní zaměstnanci ERA stali zaměstnanci divize UNIVAC (což byla současně i značka zde navrhovaných počítačů).
Obrázek 3: Pohled na jeden z modelů bubnové paměti navržené inženýry ze společnosti ERA.
Ovšem někteří zakladatelé ERA, zejména Bill Norris, nebyli v nové velké, hierarchicky řízené a taktéž již poněkud těžkopádné společnosti spokojeni, takže Sperry Rand následně opustili a vytvořili novou společnost nazvanou Control Data Corporation (CDC). Jedním z klíčových lidí, kteří Sperry Rand opustili a přešli do CDC, byl i Seymour Cray, jenž se zabýval návrhem architektur nových typů počítačů. Nově vzniklá poměrně malá a agilní společnost CDC v první polovině padesátých let minulého století však ještě nenavrhovala ani nevyráběla vlastní počítače. Namísto toho se soustředila na dodávky různých počítačových subsystémů a počítačových periferií pro další výrobce; zejména se jednalo o výrobu bubnových pamětí, jejichž princip práce jsme si již v tomto seriálu vysvětlili. To se ovšem změnilo právě díky činnosti Seymoura Craye, který navrhl a posléze se i podílel na konstrukci většiny mainframů a superpočítačů, které ve firmě CDC vznikly.
Obrázek 4: Část původního schématu počítače ERA 1101/UNIVAC 1101 (pravděpodobně se jedná o obvod řídicí bubnovou paměť).
3. Stručná historie firem ERA, EMCC, Remington Rand, Sperry Corporation a CDC
Historie vzájemného slučování a naopak rozdělování firem, které se v padesátých letech minulého století zabývaly konstrukcí mainframů, je poměrně složitá a vzájemně propletená. Z tohoto důvodu jsem se v následujícím grafu pokusil shrnout vztahy mezi čtyřmi původními společnostmi ERA, EMCC, Remington Rand a Sperry Corporation, které se v průběhu zhruba sedmi let spojily do jediné velké společnosti Sperry Rand. Ovšem posléze došlo k odchodu některých klíčových zaměstnanců a zakladatelů firmy ERA do nové společnosti Control Data Corporation (CDC), z níž později (opět) odešli klíčoví zaměstnanci, kteří založili společnost Cray Research. Ještě si připomeňme, že jedna divize firmy Remington Rand se jmenovala UNIVAC – právě zde byly navrhovány a konstruovány známé počítače téhož jména. Následuje slíbený graf (pokud se tedy ASCII obrázek dá nazývat grafem :-):
EMCC: Eckert-Mauchly Computer Corporation ERA: Engineering Research Associates CDC: Control Data Corporation ERA EMCC Remington Rand Sperry Corporation (194?) (1946) (1927) (1933) | | | | | | | | | | prodej v | | +-----------> (1950) | | | | | prodej společnosti v | +--------------------> (1952) | | | | prodej/sloučení v +----------------> Sperry Rand (1955) | odchod zaměstnanců | +-------------------+ | z původní ERA | CDC | (1957) | | | +----------------+ | | | | Cray Research | | (1972) | v | | Unisys v v (1984)
Obrázek 5: Elektronický počítač BINAC navržený ve firmě Eckert-Mauchly Computer Corporation (EMCC), což je jedna z firem, která se stala součástí společnosti Sperry Rand.
4. CDC Little Character – prototyp počítače navržený Seymourem Crayem
Ihned poté, co Seymour Cray přešel ze společnosti Sperry Rand do nově vzniklé firmy Control Data Corporation, začal se zabývat konstrukcí nových typů počítačů. Nejprve navrhl relativně malý počítač (malý byl samozřejmě v kontextu doby v porovnání s ostatními mainframy), jenž byl interně nazývaný CDC Little Character. Tento počítač byl již plně založen na technologii polovodičových tranzistorů a dokázal zpracovávat slova o šířce šesti bitů. Kapacita jeho operační paměti se pohybovala v řádech desítek bajtů a počítač neobsahoval žádná periferní zařízení (kromě řídicího panelu). I z těchto údajů je zřejmé, že se nejednalo o počítač, který by byl určený pro prodej koncovým zákazníkům (z tohoto důvodu byl také vyroben pouze jeden jediný prototyp), ale o stroj, na němž si Seymour Cray odzkoušel některé postupy a technologie, které následně zužitkoval při konstrukci mnohem složitějších, výkonnějších a samozřejmě taktéž dražších mainframů.
Obrázek 6: Superpočítač CDC 6600, na jehož vývoji se v polovině šedesátých let minulého století významnou měrou podílel i Seymour Cray.
Z technologií navržených Seymourem Crayem, které byly využité v počítači CDC Little Character, se musíme zmínit především o jeho modulové architektuře, s níž Cray slavil později velké úspěchy i na poli superpočítačů, použití pouze omezeného množství unifikovaných typů plošných spojů osazených tranzistory a pasivními součástkami, které navíc obsahovaly i konektory pro vzájemné propojení a v neposlední řadě taktéž o strukturu vlastní sítě, kterou mezi sebou byly tyto moduly propojeny. Právě díky omezenému množství unifikovaných plošných spojů bylo možné stavět mainframy a posléze i minipočítače poměrně levně, protože se zjednodušila jak jejich výroba, tak i následné oživování počítače spojené s testováním jednotlivých modulů. Fotografii zachovaného prototypu počítače CDC Little Character lze najít na adrese http://www.computerhistory.org/VirtualVisibleStorage/popup_image.php?base_name=DSC03096.
Obrázek 7: Seymour Cray na fotografii se svým superpočítačem Cray-1 z roku 1977.
5. První komerčně dostupný mainframe od CDC: CDC 1604
Postupy navržené Seymourem Crayem se osvědčily a zdálo se, že budou použitelné i pro mnohem větší stroje, než jakým byl CDC Little Character. Z tohoto důvodu firma CDC přistoupila k tomu, aby se starší, ale poměrně populární mainframe 1103 přestavěl s využitím v té době relativně nové technologie polovodičových tranzistorů a modularizovaných plošných spojů. Výsledkem této přestavby byl sálový počítač nazvaný CDC 1604; v roce 1959 se dokonce jednalo o první komerčně úspěšný tranzistorový počítač. Tento stroj zpracovával slova o šířce 48 bitů, přičemž i strojové instrukce byly ukládány do slov o této šířce: v každém 48bitovém slovu byly umístěny dvě instrukce, přičemž šířka obou instrukcí byla konstantní, tj. 24 bitů. Samotný instrukční kód v několika ohledech připomínal pozdější procesory s architekturou RISC (Load & Store architektura), protože každá instrukce obsahovala šestibitový operační kód, tři bity pro výběr indexového registru nebo podmínky skoku a následně patnáctibitovou adresu.
Obrázek 8: Superpočítač CDC 7600 má se svým předkem CDC 1604 společnou především modulovou architekturu.
Ostatně všechny adresy byly v případě sálového počítače CDC 1604 omezeny pouze na patnáct bitů, protože operační paměť složená z feritových jader měla strukturu 32768×48 bitů, což odpovídá kapacitě 192 kB při použití současných jednotek. Celá paměť byla fyzicky rozdělena na dva stejně velké bloky o struktuře 16384×48 bitů, přičemž v prvním bloku byla uložena slova se sudou adresou a v bloku druhém naopak slova s adresou lichou. Tento způsob konstrukce operační paměti urychlil přístup k datům, protože čtení z druhého bloku bylo oproti čtení dat z bloku prvního opožděno přesně o polovinu cyklu (namísto 6,4 mikrosekund se jednalo o 3,2 mikrosekund). Průměrná doba přístupu k datům a instrukcím uloženým v operační paměti tedy byla rovna 4,8 mikrosekundám, protože se vždy pracovalo s celými 48 bitovými slovy čtenými většinou sekvenčně. Rychlost provádění operací dosahovala 100000 operací za sekundu, ovšem sám Cray prohlašoval, že jeho další počítač bude padesátkrát rychlejší než CDC 1604.
Obrázek 9: První superpočítač na světě: CDC 6600.
6. Procesorová jednotka mainframu CDC 1604
Vlastní procesorová jednotka sálového počítače CDC 1604 byla relativně jednoduchá, a to i v porovnání s ostatními mainframy, které vznikly na přelomu padesátých a šedesátých let minulého století. Procesor obsahoval jediný akumulátor označovaný symbolem A, programový čítač P, maskovací registr Q (použitelný i jako druhý pracovní registr, ovšem jen pro některé typy instrukcí) a šestici indexových registrů pojmenovaných I1 až I6. Zatímco akumulátor i maskovací registr měly shodně šířku 48 bitů (tj. stejnou šířku, jakou měly slova uložená v operační paměti), byla velikost programového čítače a všech indexových registrů snížena na patnáct bitů kvůli výše uvedeným omezením v maximální adresovatelné kapacitě operační paměti. Všechny celočíselné hodnoty byly v pracovních registrech i v buňkách operační paměti reprezentovány ve formátu jedničkového doplňku, na rozdíl od dvojkového doplňku používaného v současnosti na prakticky všech typech procesorů.
Obrázek 10: Detailní pohled na konzoli superpočítače CDC 6600.
Kromě celočíselných hodnot bylo možné na sálovém počítači CDC 1604 pracovat i s čísly reprezentovanými ve formátu plovoucí řádové čárky (floating point). V tomto případě se pracovalo s 64bitovými dvojslovy, přičemž 32 bitů bylo rezervováno pro mantisu, jeden bit pro znaménko mantisy a 15 bitů pro exponent (resp. pro offset exponentu), takže se z 64 bitů ve skutečnosti využívala pouze podmnožina 48 bitů. Teprve u dalších sálových počítačů firmy Control Data Corporation, například CDC 3600, se využíval plnohodnotný formát čísel s plovoucí řádovou čárkou s dvojitou přesností, který byl o zhruba patnáct let později ještě jednou poupraven v souvislosti s vývoji superpočítačů Cray. Ani jeden z popisovaných FP formátů neodpovídal standardu IEEE 754 a původní formát počítače CDC 1604 nebyl navržen takovým způsobem, aby dokázal reprezentovat například nekonečno či NaN (not a number).
Obrázek 11: CDC 160A byla zjednodušená varianta počítače CDC 1604.
7. Aplikační oblasti mainframu CDC 1604
Sálové počítače CDC 1604 se v praxi používaly v několika značně odlišných oblastech, například i pro první poměrně nesmělé pokusy o text mining (získávání rozličných metainformací z nestrukturovaných textů). Ovšem pravděpodobně nejzajímavější aplikací těchto počítačů bylo jejich využití pro navádění mezikontinentálních střel LGM-30A Minuteman.
Obrázek 12: Mezikontinentální balistická raketa Minuteman I.
Samozřejmě to neznamená, že by sálový počítač byl přímo zabudován do relativně malé střely (o váze necelých 30 tun) – to nebylo možné hned z několika důvodů – ale dvojice vzájemně zálohovaných strojů CDC 1604 se používala pro přepočítání parametrů letu na základě zadaného cíle a taktéž počasí panujícího v oblastech, kterými střela prolétala v „atmosférické“ části své trajektorie. Po přepočítání parametrů letu se výsledky nahrály do inerciálního naváděcího systému umístěného ve střele (výrobek firmy Rockwell Internacional). Nejednalo se sice o ideální řešení, protože se na výpočet muselo čekat, což snižovalo možnosti změn cílů v případě odvetného útoku, ale vylepšené navádění střel bylo implementováno až o několik let později.
Obrázek 13: Mezikontinentální balistická raketa Minuteman II.
8. Další vývoj mainframů a superpočítačů firmy CDC
Otázka jednoho manažera z IBM:
„How is it that this tiny company (myšleno CDC) of 34 people – including the janitor – can be beating us when we have thousands of people?“
Odpověď Seymoura Craye:
„You just answered your own question“
Úspěšný návrh a následný komerční úspěch sálového počítače CDC 1604 měly pro společnost Control Data Corporation velký význam. Později se tato firma začala více orientovat na vývoj superpočítačů, kde byla jedním z konkurentů i firma IBM – viz též výrok uvedený na začátku této kapitoly. V následující tabulce jsou pro zajímavost vypsány další počítače a superpočítače sestrojené ve společnosti CDC (některé si ještě v tomto seriálu popíšeme):
Rok | Modely počítačů |
---|---|
1957 | založení společnosti CDC |
1959 | 1604 |
1960 | 1604-B |
1961 | 160 |
1962 | 924 |
1963 | 160A, 1604-A, 3400, 6600 |
1964 | 160-G, 3100, 3200, 3600, 6400 |
1965 | 1604-C, 1700, 3300, 3500, 8050, 8090 |
1966 | 3800, 6200, 6500, STATION 6000 |
1968 | 7600 |
1969 | 6700 |
1970 | STAR-100 |
1971 | CYBER 71, CYBER 72, CYBER 73, CYBER 74, CYBER 76 |
1972 | 5600, 8600 |
1973 | CYBER 170, CYBER 172, CYBER 173, CYBER 174, CYBER 175, SYSTEM 17 |
1976 | CYBER 18 |
1977 | CYBER 171, CYBER 176, OMEGA/480 |
1979 | CYBER 203, CYBER 720, CYBER 730, CYBER 740, CYBER 750, CYBER 760 |
1980 | CYBER 205 |
1982 | CYBER 815, CYBER 825, CYBER 835, CYBER 845, CYBER 855, CYBER 865, CYBER 875 |
1983 | ETA10 |
1984 | CYBER 810, CYBER 830, CYBER 840, CYBER 850, CYBER 860, CYBER 990, CYBERPLUS |
1987 | CYBER 910, CYBER 930, CYBER 995 |
1988 | CYBER 960 |
1989 | CYBER 920, CYBER 2000 |
Obrázek 14: Superpočítač ETA10.
9. Odkazy na Internetu
- BUNCH
http://en.wikipedia.org/wiki/BUNCH - Mainframe computer
http://en.wikipedia.org/wiki/Mainframe_computer - John Mauchly
http://en.wikipedia.org/wiki/John_Mauchly - J. Presper Eckert
http://en.wikipedia.org/wiki/J._Presper_Eckert - BINAC
http://en.wikipedia.org/wiki/BINAC - Description of the BINAC
http://www.palosverdes.com/lasthurrah/binac-description.html - UNIVersal Automatic Computer
http://www.thocp.net/hardware/univac.htm - Control Data Corporation (CDC) 6600: 1966–1977
http://www.cisl.ucar.edu/computers/gallery/cdc/6600.jsp - Control Data Corporation (CDC) 7600: 1971–1983
http://www.cisl.ucar.edu/computers/gallery/cdc/7600.jsp - Cray History
http://www.cray.com/About/History.aspx?404;http://www.cray.com:80/about_cray/history.html - Cray Historical Timeline
http://www.cray.com/Assets/PDF/about/CrayTimeline.pdf - Company: Cray Research, Inc. (Computer History)
http://www.computerhistory.org/brochures/companies.php?alpha=a-c&company=com-42b9d5d68b216 - General Electric GE-400
http://www.feb-patrimoine.com/PROJET/ge400/ge-400.htm - GE-400 Time-sharing information systems:
http://www.computerhistory.org/collections/accession/102646147 - GE 225 vs. IBM 1401
http://ed-thelen.org/GE225-IBM1401.html - A GE-225 is found
http://ed-thelen.org/comp-hist/GE225.html - G.E. 200 Series Computers
http://www.smecc.org/g_e__200_series_computers.htm - GE-200 series (Wikipedia)
http://en.wikipedia.org/wiki/GE-200_series - GE-400 series (Wikipedia)
http://en.wikipedia.org/wiki/GE-400_series - GE-600 series (Wikipedia)
http://en.wikipedia.org/wiki/GE-600_series - Mainframe – Introduction
http://www.thocp.net/hardware/mainframe.htm - Honeywell 800 (1958)
http://www.cs.clemson.edu/~mark/h800.html - Real Machines with 24-bit and 48-bit words
http://www.quadibloc.com/comp/cp0303.htm - Honeywell ARGUS
http://en.wikipedia.org/wiki/Honeywell_ARGUS - Honeywell Datamatic 1000
http://www.smecc.org/honeywell_datamatic_1000.htm - Honeywell
http://en.wikipedia.org/wiki/Honeywell - Whatever Happened to IBM and the Seven Dwarfs? Dwarf Four: Honeywell
http://www.dvorak.org/blog/ibm-and-the-seven-dwarfs-dwarf-four-honeywell/ - Datamatic 1000 by DATAmatic Corporation (1955)
http://www.computermuseum.li/Testpage/Datamatic-1000.html - Burroughs – Third Generation Computers
https://wiki.cc.gatech.edu/folklore/index.php/Burroughs_Third-Generation_Computers - Burroughs B5000, B5500 and B5700 (original) documentation
http://www.bitsavers.org/pdf/burroughs/B5000_5500_5700/ - Burroughs B6500 and B6700 (original) documentation
http://www.bitsavers.org/pdf/burroughs/B6500_6700/ - Burroughs B8500 (original) documentation
http://www.bitsavers.org/pdf/burroughs/B8500/ - ERA 1101 Documents
http://ed-thelen.org/comp-hist/ERA-1101-documents.html - Ukázkový program pro UNIVAC 1101/ERA 1101
https://wiki.cc.gatech.edu/folklore/index.php/Engineering_Research_Associates_and_the_Atlas_Computer_(UNIVAC_1101) - UNIVAC I Computer System
http://univac1.0catch.com/ - UNIVAC I Computer System
http://univac1.0catch.com/yellowpage.htm - UNIVAC (Wikipedia)
http://en.wikipedia.org/wiki/Univac - UNIVAC I (Wikipedia)
http://en.wikipedia.org/wiki/UNIVAC_I - UNIVAC II – Universal Automatic Computer Model II
http://ed-thelen.org/comp-hist/BRL61-u4.html - UNIVAC II (Wikipedia)
http://en.wikipedia.org/wiki/UNIVAC_II - UNIVAC III (Wikipedia)
http://en.wikipedia.org/wiki/UNIVAC_III - UNIVAC 1101 (Wikipedia)
http://en.wikipedia.org/wiki/UNIVAC_1101 - UNISYS History Newsletter
https://wiki.cc.gatech.edu/folklore/index.php/Main_Page - UNIVAC Solid State (Wikipedia)
http://en.wikipedia.org/wiki/UNIVAC_Solid_State - Bi-quinary coded decimal (Wikipedia)
http://en.wikipedia.org/wiki/Bi-quinary_coded_decimal - UNIVAC III Data Processing System
http://ed-thelen.org/comp-hist/BRL61-u4.html#UNIVAC-III - The UNIVAC III Computer
https://wiki.cc.gatech.edu/folklore/index.php/The_UNIVAC_III_Computer - UNIVAC III Photos
http://jwstephens.com/univac3/page01.htm - A History of Unisys Computers (kniha)
http://www.lulu.com/product/hardcover/a-history-of-unisys-computers/4627477 - UNIVAC III Instructions Reference Card
http://www.bitsavers.org/pdf/univac/univac3/UT-2455_UNIVACIII_RefCd61.pdf