ILLIAC IV - ILLIAC IV

ILLIAC IV paralelní počítače CU

ILLIAC IV byl první masivně paralelní počítače . Systém byl původně navržen tak, aby měl 256 64bitových jednotek s plovoucí desetinnou čárkou (FPU) a čtyři centrální procesorové jednotky (CPU) schopné zpracovat 1 miliardu operací za sekundu. Kvůli rozpočtovým omezením byl postaven pouze jeden „kvadrant“ se 64 FPU a jedním CPU. Vzhledem k tomu, FPUs všichni museli zpracovat stejné instrukce - ADD, SUBatd. - v moderní terminologii by se návrh považuje za jediné instrukce, více dat , nebo SIMD.

Koncept stavby počítače pomocí řady procesorů přišel Danielovi Slotnickovi během práce programátora na stroji IAS v roce 1952. Formální návrh začal až v roce 1960, kdy Slotnick pracoval ve společnosti Westinghouse Electric a zařídil financování vývoje v USA. Smlouva letectva . Když toto financování v roce 1964 skončilo, Slotnick se přestěhoval na University of Illinois a připojil se k týmu Illinois Automatic Computer (ILLIAC). S financováním od Advanced Research Projects Agency (ARPA) zahájili návrh novějšího konceptu s 256 64bitovými procesory místo původního konceptu s 1024 1bitovými procesory.

V době, kdy se stroj stavěl v Burroughs , začala univerzita stavět nové zařízení, ve kterém by mohl být umístěn . Politické napětí kolem financování z amerického ministerstva obrany vedlo k tomu, že se ARPA a univerzita obávaly o bezpečnost stroje. Když byl v roce 1972 dokončen první 64procesorový kvadrant stroje, byl odeslán do výzkumného centra NASA Ames v Kalifornii. Po třech letech důkladných úprav k odstranění různých nedostatků byl ILLIAC IV v listopadu 1975 připojen k distribuovanému použití s ARPANetem a stal se prvním superpočítačem dostupným v síti, který porazil Cray-1 téměř o 12 měsíců.

Jednokkvadrantový ILLIAC IV, který běžel na poloviční rychlost, dosáhl 50 špiček MFLOP, což z něj činí v té době nejrychlejší počítač na světě. Je také připočítán jako první velký počítač využívající polovodičovou paměť , stejně jako dosud nejkomplexnější počítač s více než 1 milionem bran. Obecně považovaný za neúspěch kvůli masivnímu překročení rozpočtu, návrh pomohl při vývoji nových technik a systémů pro programování paralelních systémů. V 80. letech bylo úspěšně dodáno několik strojů založených na konceptech ILLIAC IV.

Dějiny

Původy

V červnu 1952 začal Daniel Slotnick pracovat na stroji IAS v Institutu pro pokročilé studium (IAS) na Princetonské univerzitě . Stroj IAS představoval bitově paralelní matematickou jednotku, která pracovala na 40bitových slovech . Původně vybaven pamětí trubice Williams , později byl přidán magnetický buben od Engineering Research Associates . Tento buben měl 80 skladeb, takže bylo možné číst dvě slova najednou a každá stopa ukládala 1024 bitů.

Když uvažoval o mechanismu bubnu, Slotnik začal přemýšlet, jestli je to správný způsob, jak postavit počítač. Pokud by byly bity slova zapsány sériově do jedné stopy, namísto paralelně přes 40 skladeb, pak by data mohla být přiváděna do bitového sériového počítače přímo z bubnu bit-by-bit. Buben by měl stále více stop a hlav, ale místo toho, aby shromáždili slovo a odeslali jej do jedné ALU, v tomto konceptu by data na každé stopě byla čtena po troškách a odesílána do paralelních ALU. To by byl počítač paralelní se slovy, bitový seriál.

Slotnick vznesl tuto myšlenku na IAS, ale John von Neumann ji odmítl jako požadavek „příliš mnoho elektronek“. Slotnick odešel z IAS v únoru 1954, aby se vrátil do školy na doktorát, a tato záležitost byla zapomenuta.

SOLOMON

Poté, co dokončil doktorát a několik postdoktorandských prací, Slotnick skončil v IBM . Do této doby, alespoň pro vědecké výpočty, byly elektronky a bicí nahrazeny tranzistory a základní pamětí . Myšlenka paralelních procesorů pracujících na různých tocích dat z bubnu již neměla stejnou zjevnou přitažlivost. Další úvahy nicméně ukázaly, že paralelní stroje mohou v některých aplikacích stále nabízet značný výkon; Slotnick a jeho kolega John Cocke napsali v roce 1958 dokument o tomto konceptu.

Po krátké době v IBM a poté další v Aeronca Aircraft skončil Slotnick v divizi Air Arm společnosti Westinghouse , která pracovala na radarech a podobných systémech. Na základě smlouvy od US Air Force ‚s RADC , Slotnik byl schopen vybudovat tým navrhnout systém s 1024 bit-sériový Alus, známý jako‚elementy zpracování‘nebo PE je. Tento design dostal jméno SOLOMON podle krále Šalamouna , který byl velmi moudrý a měl 1 000 manželek.

PE by dostávali instrukce z jediné hlavní centrální procesorové jednotky (CPU), „řídicí jednotky“ nebo CU. CK SOLOMONU by přečetla pokyny z paměti, dekódovala je a poté je předala PE ke zpracování. Každý PE měl svou vlastní paměť pro uchovávání operandů a výsledků, modul paměti PE nebo PEM. CU mohla přistupovat k celé paměti prostřednictvím vyhrazené paměťové sběrnice , zatímco PE mohly přistupovat pouze k jejich vlastnímu PEM. Aby bylo možné použít výsledky z jednoho PE jako vstupů v jiném, připojila každý PE k osmi nejbližším sousedům samostatná síť.

Bylo zkonstruováno několik testovacích systémů, včetně systému 3 x 3 (9 PE) a modelu 10 x 10 se zjednodušenými PE. Během tohoto období byla věnována určitá pozornost komplexnějším návrhům PE, čímž se stal 24bitovým paralelním systémem, který by byl organizován v uspořádání 256 na 32. Jediný PE využívající tento design byl postaven v roce 1963. Jak projekční práce pokračovaly, primární sponzor amerického ministerstva obrany byl zabit při nehodě a žádné další financování se nedostavovalo.

Slotnik hledal pokračování vývoje a oslovil Livermora, který v té době stál v čele nákupů superpočítačů. Velmi se zajímali o design, ale přesvědčili ho, aby upgradoval matematické jednotky s pevným bodem současného designu na skutečnou plovoucí desetinnou čárku , což vedlo k návrhu SOLOMON.2.

Livermore nebude financovat vývoj, místo toho nabídli smlouvu, ve které by stroj pronajali, jakmile bude dokončen. Vedení Westinghouse to považovalo za příliš riskantní a tým ukončilo činnost. Slotnik opustil Westinghouse a pokoušel se najít rizikový kapitál pro pokračování projektu, ale neuspěl. Livermore by později pro tuto roli vybral CDC STAR-100 , protože CDC byla ochotna nést náklady na vývoj.

ILLIAC IV

Když SOLOMON skončil, Slotnick se připojil k týmu Illinois Automatic Computer design (ILLIAC) na University of Illinois v Urbana-Champaign. Illinois navrhoval a stavěl velké počítače pro americké ministerstvo obrany a Agenturu pokročilých výzkumných projektů (ARPA) od roku 1949. V roce 1964 univerzita podepsala smlouvu s ARPA na financování úsilí, které se stalo známým jako ILLIAC IV, protože čtvrtý počítač navržený a vytvořený na univerzitě. Vývoj byl zahájen v roce 1965 a návrh prvního průchodu byl dokončen v roce 1966.

Na rozdíl od konceptu SOLOMON s bitovým sériovým přenosem byly v ILLIAC IV upgradovány PE na plné 64bitové (bitově paralelní) procesory s použitím 12 000 bran a 2048 slov tenkovrstvé paměti . PE měly pět 64bitových registrů, každý se zvláštním účelem. Jeden z nich, RGR, byl použit pro komunikaci dat sousedním PE, pohybující se jedním „hopem“ za hodinový cyklus. Další registr, RGD, indikoval, zda je PE aktuálně aktivní. „Neaktivní“ PE neměly přístup k paměti, ale předávaly výsledky sousedním PE pomocí RGR. PE byly navrženy tak, aby fungovaly jako jeden 64bitový FPU, dva 32bitové poloviční přesnosti FPU nebo osm 8bitových procesorů s pevným bodem.

Namísto 1 024 PE a jediné CU měl nový design celkem 256 PE uspořádaných do čtyř 64-PE „kvadrantů“, každý s vlastní CU. Jednotky CU byly také 64bitové, se šedesáti čtyřmi 64bitovými registry a dalšími čtyřmi 64bitovými akumulátory. Systém mohl běžet jako čtyři samostatné stroje 64-PE, dva stroje 128-PE nebo jeden stroj 256-PE. To umožnilo systému pracovat na různých problémech, když byla data příliš malá na to, aby vyžadovala celé pole 256-PE.

Na základě hodin 25 MHz se všemi 256-PE běžícími na jednom programu byl stroj navržen tak, aby poskytoval 1 miliardu operací s pohyblivou řádovou čárkou za sekundu, nebo v dnešní terminologii 1  GFLOPS . Díky tomu byl mnohem rychlejší než jakýkoli stroj na světě; současný CDC 7600 měl hodinový cyklus 27,5 nanosekund nebo 36 MIPS, ačkoli z různých důvodů obecně nabízel výkon blíže 10 MIPS.

Na podporu stroje byla postavena přístavba budov Digital Computer Laboratory. Ukázková práce na univerzitě byla primárně zaměřena na způsoby, jak efektivně naplnit PE s daty, a tak provést první „zátěžový test“ ve vývoji počítačů. Aby to bylo co nejjednodušší, bylo vytvořeno několik nových počítačových jazyků ; IVTRAN a klidný byly rovnoběžnosti verze FORTRAN a Glypnir byla podobná konverze ALGOLu . Tyto jazyky obecně poskytovaly podporu pro načítání polí dat „napříč“ PE, které mají být prováděny paralelně, a některé dokonce podporovaly odvíjení smyček do operací pole.

Konstrukce, problémy

Na začátku roku 1966 byla univerzitou rozeslána Žádost o návrhy, která hledala průmyslové partnery, kteří se zajímali o stavbu designu. V červenci bylo obdrženo sedmnáct odpovědí, sedm odpovědělo a z těchto tří byli vybráni. Několik odpovědí, včetně Control Data , se místo toho pokusilo zaujmout je návrhem vektorového procesoru , ale protože tyto již byly navrženy, tým neměl zájem stavět další. V srpnu 1966 byly nabídnuty osmiměsíční smlouvy společnostem RCA , Burroughs a Univac, aby se ucházely o stavbu stroje.

Burroughs nakonec získal zakázku poté, co se spojil s Texas Instruments (TI). Oba nabídli nový technický pokrok, díky kterému byla jejich nabídka nejzajímavější. Burroughs nabízel vybudovat novou a mnohem rychlejší verzi tenkovrstvé paměti, která by zlepšila výkon. Společnost TI nabízela vybudování integrovaných obvodů (ICL) s 64 piny s logikou emitorem (ECL), každý s 20 logickými hradly . V té době většina integrovaných obvodů používala 16pinové balíčky a měla mezi 4 a 7 branami. Použitím integrovaných obvodů TI by byl systém mnohem menší.

Burroughs také dodal specializované diskové jednotky , které představovaly samostatnou stacionární hlavu pro každou stopu a mohly nabídnout rychlosti až 500 Mbit/s a ukládat asi 80 MB na 36 "disk. Mohly by také poskytnout sálový počítač Burroughs B6500, který bude fungovat jako přední -řadič konce, načítání dat ze sekundárního úložiště a provádění dalších úkolů v domácnosti. K B6500 bylo připojeno laserové optické záznamové médium třetí strany, systém pro jednorázový zápis, který ukládal až 1  Tbit na tenký kovový film potažený pásem polyesterového listu nesený rotujícím bubnem. Konstrukce nového designu začala v Burroughs's Great Valley Lab. V té době se odhadovalo, že stroj bude dodán na začátku roku 1970.

Po roce práce na integrovaných obvodech společnost TI oznámila, že se jim nepodařilo vytvořit 64pinové designy. Složitější vnitřní zapojení způsobovalo přeslechy v obvodech a požádali o další rok na vyřešení problémů. Místo toho se tým ILLIAC rozhodl přepracovat počítač na základě dostupných 16kolíkových integrovaných obvodů. To vyžadovalo, aby systém běžel pomaleji a používal hodiny 16 MHz namísto původních 25 MHz. Změna ze 64 pinů na 16 pinů stála projekt zhruba dva roky a miliony dolarů. TI dokázal po 64 letech pracovat s 64kolíkovým designem a začal je nabízet na trhu ještě před dokončením ILLIAC.

V důsledku této změny narostly jednotlivé desky PC zhruba o 2,5 cm na čtverec a přibližně o 15 x 25 cm. To Burroughsovo úsilí odsoudit k výrobě tenkovrstvé paměti pro tento stroj odsoudilo k záhubě, protože nyní již nebylo dost místa, aby se paměť vešla do skříní návrhu. Pokusy o zvětšení skříněk, aby se vytvořil prostor pro paměť, způsobily vážné problémy s šířením signálu. Slotnick prozkoumal potenciální náhrady a vybral polovodičovou paměť od Fairchild Semiconductor , což bylo rozhodnutí, které bylo tak protivné Burroughsem, že následovala úplná kontrola ARPA.

V roce 1969 vedly tyto problémy v kombinaci s výslednými překročeními nákladů v důsledku zpoždění k rozhodnutí postavit pouze jeden kvadrant 64 PE, což omezilo rychlost stroje na přibližně 200 MFLOPS. Dohromady tyto změny stály projekt tři roky a 6 milionů dolarů. V roce 1969 projekt utrácel 1 milion dolarů měsíčně a musel být vyčleněn z původního týmu ILLIAC, který byl stále hlasitější ve své opozici vůči projektu.

Přesunout se do Ames

V roce 1970 byl stroj konečně postaven za rozumnou cenu a byl připraven k dodání přibližně za rok. Dne 6. ledna 1970, The Daily Illini , studentské noviny, tvrdil, že počítač bude použit pro konstrukci jaderných zbraní. V květnu došlo ke střelbě v Kentském státě a v univerzitních areálech vypuklo protiválečné násilí.

Slotnick začal být proti používání stroje na utajovaný výzkum a oznámil, že dokud bude na univerzitní půdě zveřejněno veškeré zpracování, které na stroji proběhlo. Stále více se také obával, že by stroj mohl být napaden radikálnějšími skupinami studentů. pozice, která vypadala moudře poté, co se místní studenti připojili k celonárodní stávce studentů 9. května 1970 vyhlášením „dne Illiaction“, a zejména k 24. srpnu bombardování budovy matematiky na University of Wisconsin – Madison .

S pomocí Hanse Marka , ředitele výzkumného centra NASA Ames v oblasti, která se stala křemíkovým údolím , bylo v lednu 1971 rozhodnuto doručit stroj spíše Amesovi než univerzitě. Umístění na aktivní základně amerického námořnictva a chráněné americkou námořní pěchotou , bezpečnost už nebude starostí. Stroj byl nakonec dodán společnosti Ames v dubnu 1972 a nainstalován v centrálním počítačovém zařízení v budově N-233. V tomto okamžiku už bylo několik let pozdě a výrazně přesáhl rozpočet za celkovou cenu 31 milionů dolarů, což je téměř čtyřnásobek původního odhadu 8 milionů dolarů na kompletní stroj 256-PE.

NASA se také rozhodla vyměnit přední stroj B6500 za PDP-10 , které byly v Amesu běžně používané a značně by usnadnily připojení k ARPAnet. To vyžadovalo vývoj nového softwaru, zejména kompilátorů, na PDP-10. To způsobilo další zpoždění při uvádění stroje do režimu online.

Illiac IV byl smluvně spravován společností ACTS Computing Corporation se sídlem v Southfieldu, MI, společnost Timesharing and Remote Job Entry (RJE), kterou nedávno získal konglomerát Lear Siegler Corporation. DoD uzavřelo smlouvu s ACTS za cenu plus 10% smlouvu. Toto neobvyklé uspořádání bylo způsobeno omezením, že žádný vládní zaměstnanec nemůže být placen více než osoba z Kongresu a mnoho zaměstnanců Illiac IV dosáhlo více než tento limit. Dr. Mel Pirtle s pozadím z University of Berkley a Berkley Computer Corporation (BCC) byl zaměstnán jako ředitel Illiac IV.

Aby to fungovalo

ILLIAC IV Processing Unit na displeji v Computer History Museum .

Když stroj poprvé dorazil, nemohl být uveden do provozu. Trpěl všemi druhy problémů od praskání desek plošných spojů, přes špatné rezistory , až po balení obvodů TI, které bylo vysoce citlivé na vlhkost. Tyto problémy se pomalu řešily a v létě 1973 bylo možné v systému spustit první programy, i když výsledky byly velmi diskutabilní. Počínaje červnem 1975 začalo soustředěné čtyřměsíční úsilí, které mimo jiné vyžadovalo výměnu 110 000 odporů, přepojení součástí k opravě problémů se zpožděním šíření, zlepšení filtrování napájecích zdrojů a další snížení rychlosti hodin na 13 MHz. Na konci tohoto procesu systém konečně fungoval správně.

Od té doby systém běžel od pondělí dopoledne do pátku odpoledne a poskytoval uživatelům 60 hodin provozního času, ale vyžadoval 44 hodin plánovaných prostojů. Přesto byl stále více používán, protože programátoři NASA se naučili způsoby, jak dostat výkon z komplexního systému. Zpočátku byl výkon tristní, většina programů běžela asi na 15 MFLOPS, což je zhruba trojnásobek průměru CDC 7600 . Časem se to zlepšilo, zejména poté, co programátoři Ames napsali vlastní verzi FORTRAN , CFD a naučili se paralelně I/O do omezených PEM. Pokud jde o problémy, které by mohly být paralelizovány, stroj byl stále nejrychlejší na světě, dvakrát až šestkrát překonal CDC 7600 a až do roku 1981 je obecně považován za nejrychlejší stroj na světě.

Dne 7. září 1981, po téměř 10 letech provozu, byl ILLIAC IV vypnut. Stroj byl oficiálně vyřazen z provozu v roce 1982 a pokročilá výpočetní divize NASA s ním skončila. Jedna řídicí jednotka a jeden podvozek zpracovatelského prvku ze stroje je nyní vystaven v Computer History Museum v Mountain View, necelou míli od jeho provozního místa.

Následky

ILLIAC byl velmi pozdě, velmi drahý a nikdy nesplnil svůj cíl produkovat 1 GFLOP. To bylo široce považováno za selhání i těmi, kteří na tom pracovali; jeden jednoduše uvedl, že „každý nestranný pozorovatel musí Illiac IV považovat za selhání v technickém smyslu“. Pokud jde o projektové řízení, je široce považováno za selhání, které čtyřikrát překročilo odhady nákladů a vyžaduje roky úsilí o nápravu, aby fungovalo. Jak později uvedl sám Slotnik:

Jsem hořce zklamaný a velmi potěšen ... potěšen a zděšen. Je potěšeno, že celkové cíle nakonec dobře dopadly. Domnívá se, že to stálo příliš mnoho, trvalo to příliš dlouho, nedělá to dost a málo lidí to používá.

Pozdější analýzy však poznamenávají, že projekt měl několik dlouhodobých účinků na počítačový trh jako celek, záměrně i neúmyslně.

Mezi nepřímé efekty patřila rychlá aktualizace polovodičové paměti po projektu ILLIAC. Slotnick obdržel hodně kritiky, když si vybral Fairchild Semiconductor k výrobě paměťových integrovaných obvodů, protože v té době byla výrobní linka prázdná místnost a design existoval pouze na papíře. Nicméně, po třech měsících intenzivního úsilí, Fairchild měl pracovní konstrukce vyrábí masově . Jak později uvedl Slotnick: „Fairchild odvedl skvělou práci při vytahování našich kaštanů z ohně. Vzpomínky na Fairchild byly vynikající a jejich spolehlivost je dodnes neuvěřitelně dobrá.“ Má se za to, že ILLIAC zasadil smrtelnou ránu jádrové paměti a souvisejícím systémům, jako je tenký film.

Další nepřímý efekt byl způsoben složitostí desek plošných spojů (PCB) neboli modulů. Při původní konstrukční rychlosti 25 MHz se impedance v zemním vedení ukázala jako vážný problém a vyžadovala, aby desky plošných spojů byly co nejmenší. Jak jejich složitost rostla, PCB musely přidávat další a další vrstvy, aby se vyhnuly zvětšování. Nakonec dosáhli hloubky 15 vrstev, což se ukázalo být daleko za hranicemi schopností kreslířů. Návrh byl nakonec dokončen pomocí nových automatizovaných návrhových nástrojů poskytovaných subdodavatelem a kompletní návrh vyžadoval dva roky počítačového času na sálovém počítači Burroughs. To byl velký krok vpřed v počítačově podporovaném designu a v polovině 70. let byly takové nástroje běžné.

ILLIAC také vedl k velkému výzkumu na téma paralelního zpracování, které mělo rozsáhlé efekty. Během osmdesátých let, kdy cena mikroprocesorů klesala podle Moorova zákona, řada společností vytvořila MIMD (Multiple Instruction, Multiple Data), aby stavěla ještě více paralelních strojů s kompilátory, které by mohly paralelismus lépe využít. Thinking Machines CM-5 je vynikajícím příkladem konceptu MIMD. Bylo to lepší porozumění paralelismu na ILLIAC, které vedlo k vylepšeným kompilátorům a programům, které by mohly využít těchto návrhů. Jak řekl jeden programátor ILLIAC: „Pokud někdo postaví rychlý počítač z mnoha mikroprocesorů, Illiac IV udělá v širokém schématu věcí své.“

Většina superpočítačů té doby zvolila jiný přístup k vyššímu výkonu pomocí jediného velmi rychlého vektorového procesoru . Podobně jako ILLIAC v některých ohledech tyto designy procesorů nahrály mnoho datových prvků do jednoho vlastního procesoru místo velkého počtu specializovaných. Klasickým příkladem tohoto designu je Cray-1 , který měl výkon podobný ILLIAC. V důsledku toho došlo k více než malému „odporu“ proti designu ILLIAC a nějakou dobu se trh superpočítačů díval na masivně paralelní návrhy s opovržením, i když byly úspěšné. Jak skvěle říkal Seymour Cray : „Kdybys oral pole, co bys raději použil? Dva silné voly nebo 1024 kuřat?“

Popis

Fyzické uspořádání

Každý kvadrant stroje byl 3 metry vysoký, 2,4 metru hluboký a 15 metrů dlouhý. Vedle kvadrantu byl uspořádán jeho systém vstupu/výstupu (I/O), jehož diskový systém ukládal 2,5  GiB a dokázal číst a zapisovat data rychlostí 1 miliardy  bitů za sekundu , spolu s počítačem B6700, který se připojil k počítači stejným 1024- bit-wide interface jako diskový systém.

Stroj sestával z řady podvozkových nosičů, které pojaly několik malých modulů. Většina z nich byly procesní jednotky (PU), které obsahovaly moduly pro jeden PE, jeho PEM a paměťovou logickou jednotku, která zpracovávala překlad adres a I/O. PU byly identické, takže je bylo možné podle potřeby vyměnit nebo doobjednat.

Podrobnosti o procesoru

Každá CU měla asi 30 až 40 000 bran. CU měla šestnáct 64bitových registrů a samostatný šedesát čtyři slotový 64bitový „scratchpad“, LDB. Byly tam čtyři akumulátory, AC0 až AC3, programový čítač ILR a různé řídicí registry. Systém měl krátký instrukční kanál a implementované instrukce hleděly dopředu .

PE měli asi 12 000 bran. Obsahuje čtyři 64bitové registry využívající akumulátor A, vyrovnávací paměť operandu B a sekundární stírací lopatku S. Čtvrtý, R, byl použit k vysílání nebo příjmu dat z ostatních PE. PE používaly sčítací hlavici , přední detektor pro booleovské operace a hlaveň . 64bitové přírůstky trvaly přibližně 200 ns a násobení přibližně 400 ns. PE byly připojeny k soukromé paměti, PEM, která obsahovala 2048 64bitových slov. Přístupová doba byla řádově 250 ns. PE používali architekturu load/store .

Instrukční sada (ISA) obsahoval dvě samostatné sady instrukcí, jeden pro CU (nebo jednotky v něm, ADVAST) a jiný pro PES. Pokyny pro PE nebyly dekódovány a místo toho byly odeslány přímo do FINST registru, aby byly odeslány PE ke zpracování. Instrukce ADVAST byly dekódovány a vstoupily do kanálu zpracování CU.

Logické uspořádání

Každý kvadrant obsahoval 64 PE a jednu CU. CU měla přístup k celé I/O sběrnici a mohla adresovat veškerou paměť stroje. PE měli přístup pouze ke svému místnímu obchodu, PEM, s 2 048 64bitovými slovy. Jak PE, tak CU mohly pro přístup k diskovému systému používat operace načítání a ukládání.

Skříně byly tak velké, že k přenosu signálů z jednoho konce na druhý bylo zapotřebí 240  ns . Z tohoto důvodu nemohla být CU použita ke koordinaci akcí, místo toho byl celý systém hodinově synchronní se všemi operacemi v PE zaručených zabrat stejnou dobu bez ohledu na to, jaké byly operandy. CU si tak mohla být jistá, že operace byla dokončena, aniž by musela čekat na výsledky nebo stavové kódy.

Aby se zlepšil výkon operací, které vyžadovaly, aby výstup z výsledků jednoho PE byl použit jako vstup do jiného PE, PE byly připojeny přímo k jejich sousedům, stejně jako k těm vzdáleným osm kroků - například PE1 byl přímo připojen na PE0 a PE2, stejně jako PE9 a PE45. Osm vzdálená připojení umožňovala rychlejší přenos, když data potřebovala cestovat mezi vzdálenějšími PE. Každý posun dat posunul 64 slov v jediném 125 ns taktovacím cyklu.

Systém používal formát s jednou adresou, ve kterém instrukce obsahovaly adresu jednoho z operandů a druhý operand byl v akumulátoru PE (registr A). Adresa byla odeslána PE přes samostatnou "vysílací" sběrnici. V závislosti na instrukci může hodnota na sběrnici odkazovat na paměťové místo v PEM PE, hodnotu v jednom z registrů PE nebo číselnou konstantu.

Protože každý PE měl svou vlastní paměť, zatímco formát instrukcí a CU viděli celý adresní prostor, systém obsahoval indexový registr (X) pro kompenzaci základní adresy. To například umožnilo stejnému toku instrukcí pracovat na datech, která nebyla zarovnána na stejná místa v různých PE. Běžným příkladem by byla řada dat, která byla načtena do různých umístění v PEM, která by pak mohla být sjednocena nastavením indexu v různých PE.

Pobočky

V tradičních návrzích počítačů jsou instrukce načítány do CPU jeden po druhém, jak jsou čteny z paměti. Normálně, když CPU dokončí zpracování instrukce, čítač programu (PC) se zvýší o jedno slovo a přečte se další instrukce. Tento proces je přerušen větvemi , což způsobí, že počítač přeskočí na jedno ze dvou umístění v závislosti na testu, například zda daná adresa paměti obsahuje nenulovou hodnotu. V návrhu ILLIAC by každý PE používal tento test na jiné hodnoty, a měl by tedy různé výsledky. Vzhledem k tomu, že tyto hodnoty jsou pro PE soukromé, bude nutné načíst následující pokyny na základě hodnoty, kterou znal pouze PE.

Aby se předešlo zpoždění, které by způsobilo opětovné načítání instrukcí PE, ILLIAC načíst PEM s instrukcemi na obou stranách větve. Logické testy nezměnily PC, místo toho nastavily „mode bits“, které řekly PE, zda má nebo nemá spustit další aritmetickou instrukci. Pro použití tohoto systému by byl program napsán tak, aby po testu následoval jeden ze dvou možných proudů instrukcí a skončil instrukcí pro invertování bitů. Poté by následoval kód pro druhou větev, končící instrukcí pro nastavení všech bitů na 1.

Pokud test vybere „první“ větev, bude PE pokračovat normálně. Když dosáhne konce tohoto kódu, instrukce provozovatele režimu převrátí bity režimu a od té doby bude PE ignorovat další pokyny. To by pokračovalo, dokud by to nedosáhlo konce kódu pro druhou větev, kde by instrukce pro reset režimu znovu zapnula PE. Pokud by konkrétní test PE vedl k odebrání druhé větve, místo toho by nastavilo režimové bity tak, aby ignorovaly další pokyny, dokud nedosáhly konce první větve, kde by provozovatel režimu převrátil bity a způsobil, že druhá větev začne zpracovávat , znovu je všechny zapnul na konci té větve.

Protože PE mohou pracovat v 64-, 32- a 8bitových režimech, příznaky režimu měly více bitů, takže jednotlivá slova bylo možné zapnout nebo vypnout. Například v případě, kdy PE fungoval v 32bitovém režimu, na jedné „straně“ PE mohl být test splněn, zatímco druhá strana byla nepravdivá.

Terminologie

  • CU: řídicí jednotka
  • CPU: centrální procesorová jednotka
  • ISA: architektura sady instrukcí
  • MAC: násobit a akumulovat
  • PC: programový čítač
  • PE: prvek zpracování
  • PEM: paměťový modul zpracovávajícího prvku
  • PU: jednotka zpracování

Viz také

Poznámky

Reference

Citace

Bibliografie

Další čtení

externí odkazy