JUICE
Jan G. Oblonsky, en av de første studentene i Svoboda og utvikleren av EPOS-1, husker det på denne måten (Eloge: Antonin Svoboda, 1907-l980, IEEE Annals of the History of Computing Vol. 2. No. 4, October 1980):
Den opprinnelige ideen ble fremmet av Svoboda på hans datamaskinutviklingskurs i 1950, da han forklarte teorien om å bygge multiplikatorer, la merke til at i den analoge verden er det ingen strukturell forskjell mellom en adder og en multiplikator (den eneste forskjellen er i å bruke de riktige skalaene ved inngang og utgang), mens mens deres digitale implementeringer er helt forskjellige strukturer. Han inviterte elevene til å prøve å finne en digital krets som ville utføre multiplikasjon og tillegg med tilsvarende letthet. En tid senere henvendte en av studentene, Miroslav Valach, seg til Svoboda med ideen om koding, som ble kjent som det resterende klassesystemet.
For å forstå arbeidet, må du huske hva inndeling av naturlige tall er. Åpenbart kan vi ved å bruke naturlige tall ikke representere brøk, men vi kan utføre divisjon med resten. Det er lett å se at når man deler forskjellige tall med det samme gitte m, kan man få den samme resten, i så fall sier de at de opprinnelige tallene er sammenlignbare modulo m. Tydeligvis kan det være nøyaktig 10 rester - fra null til ni. Matematikere la raskt merke til at det er mulig å lage et tallsystem der det i stedet for tradisjonelle tall er restene av divisjon som vil vises, siden de kan legges til, trekkes og multipliseres på samme måte. Som et resultat kan et hvilket som helst tall representeres av et sett med ikke tall i ordets vanlige betydning, men et sett med slike rester.
Hvorfor slike perversjoner, gjør de virkelig noe enklere? Faktisk, hvordan blir det når det gjelder å utføre matematiske operasjoner. Som det viste seg, er det mye lettere for maskinen å utføre operasjoner ikke med tall, men med rester, og her er hvorfor. I systemet med restklasser er hvert tall, flersifret og veldig langt i det vanlige posisjonssystemet, representert som en tupel av ett-sifrede tall, som er resten av å dele det opprinnelige tallet med basen til RNS (a tuppel kopirettnummer).
Hvordan vil arbeidet akselerere under en slik overgang? I et konvensjonelt posisjonssystem utføres aritmetiske operasjoner sekvensielt bit for bit. I dette tilfellet dannes overføringer til den neste mest betydningsfulle biten, som krever komplekse maskinvaremekanismer for behandlingen, de fungerer som regel sakte og sekvensielt (det er forskjellige akselerasjonsmetoder, matrisemultiplikatorer, etc., men dette, i i alle fall er ikke-trivielle og tungvint kretsløp).
RNS har nå muligheten til å parallellisere denne prosessen: alle operasjoner på rester for hver base utføres separat, uavhengig og i en klokkesyklus. Tydeligvis fremskynder dette alle beregninger mange ganger, i tillegg er resten en bit per definisjon, og som et resultat kan du beregne resultatene av deres tillegg, multiplikasjon, etc. det er ikke nødvendig, det er nok å blinke dem inn i minnet på operasjonstabellen og lese derfra. Som et resultat er operasjoner på tall i RNS hundrevis av ganger raskere enn den tradisjonelle tilnærmingen! Hvorfor ble ikke dette systemet implementert umiddelbart og overalt? Som vanlig skjer det bare jevnt i teorien - virkelige beregninger kan løpe inn i en slik plage som overløp (når det endelige tallet er for stort til å settes inn i et register), er avrunding i RNS også veldig utrivelig, samt sammenligning av tall (strengt tatt er RNS ikke posisjonssystemet, og begrepene "mer eller mindre" har ingen betydning der i det hele tatt). Det var på løsningen av disse problemene Valakh og Svoboda fokuserte, fordi fordelene SOC lovet allerede var veldig store.
For å mestre prinsippene for drift av SOC -maskiner, kan du vurdere et eksempel (de som ikke er interessert i matematikk kan utelate det):
Den omvendte oversettelsen, det vil si gjenopprettelsen av posisjonsverdien til tallet fra restene, er mer plagsom. Problemet er at vi faktisk trenger å løse et system med n sammenligninger, noe som fører til lange beregninger. Hovedoppgaven til mange studier innen RNS er å optimalisere denne prosessen, fordi den ligger til grunn for et stort antall algoritmer, der kunnskap om tallenes posisjon på tallinjen i en eller annen form er nødvendig. I tallteori har metoden for å løse det angitte sammenligningssystemet vært kjent i svært lang tid og består i en konsekvens av den allerede nevnte kinesiske restsetningen. Overgangsformelen er ganske tungvint, og vi vil ikke gi den her, vi merker bare at i de fleste tilfeller er det ønskelig å unngå denne oversettelsen, og optimalisere algoritmene på en slik måte at de holder seg innenfor RNS til slutten.
En ekstra fordel med dette systemet er at du i tabellform og også i en syklus i RNS kan utføre ikke bare operasjoner på tall, men også på vilkårlig komplekse funksjoner representert i form av et polynom (hvis selvfølgelig resultatet går ikke utover representasjonsområdet). Til slutt har SOC en annen viktig fordel. Vi kan introdusere flere grunner og derved oppnå redundansen som er nødvendig for feilkontroll, på en naturlig og enkel måte, uten å rote systemet med trippel redundans.
Videre lar RNS kontrollen utføres allerede i selve beregningen, og ikke bare når resultatet skrives inn i minnet (slik feilkorrigeringskodene gjør i det konvensjonelle tallsystemet). Generelt er dette vanligvis den eneste måten å kontrollere ALU i løpet av arbeidet, og ikke det endelige resultatet i RAM. På 1960 -tallet okkuperte en prosessor et eller flere kabinetter, inneholdt mange tusen individuelle elementer, loddede og avtagbare kontakter, samt kilometerleder - en garantert kilde til forskjellige forstyrrelser, feil og feil og ukontrollerte. Overgangen til SOC gjorde det mulig å øke stabiliteten til systemet til feil med hundrevis av ganger.
Som et resultat hadde SOK -maskinen kolossale fordeler.
- Høyest mulig feiltoleranse "out of the box" med automatisk innebygd kontroll av korrektheten i hver operasjon i hvert trinn - fra lesing av tall til regning og skriving til RAM. Jeg tror det er unødvendig å forklare at for missilforsvarssystemer er dette kanskje den viktigste kvaliteten.
-
Maksimal teoretisk parallellitet av operasjoner (i prinsippet absolutt alle aritmetiske operasjoner i RNS kan utføres i en syklus, uten å ta hensyn til bitdybden til de originale tallene i det hele tatt) og beregningshastigheten som ikke kan oppnås med noen annen metode. Igjen, det er ikke nødvendig å forklare hvorfor missilforsvarsdatamaskiner skulle være så effektive som mulig.
Således ba SOK-maskiner ganske enkelt om deres bruk som en anti-missilforsvarscomputer, det kunne ikke være noe bedre enn dem til dette formålet i disse årene, men slike maskiner måtte fortsatt bygges i praksis og alle tekniske vanskeligheter måtte omgås. Tsjekkerne taklet dette glimrende.
Resultatet av fem års forskning var Wallachs artikkel "Kodeens opprinnelse og tallsystem for restklasser", utgitt i 1955 i samlingen "Stroje Na Zpracovani Informaci", bind. 3, Nakl. CSAV, i Praha. Alt var klart for utviklingen av datamaskinen. I tillegg til Wallach tiltrukket Svoboda flere flere talentfulle studenter og doktorgradsstudenter til prosessen, og arbeidet begynte. Fra 1958 til 1961 var omtrent 65% av komponentene i maskinen, kalt EPOS I (fra tsjekkisk elektronkovy počitač středni - middels datamaskin), klare. Datamaskinen skulle produseres ved anleggene på ARITMA -anlegget, men som med SAPO var introduksjonen av EPOS I ikke uten vanskeligheter, spesielt innen produksjon av elementbasen.
Mangel på ferritter til minneenheten, dårlig kvalitet på dioder, mangel på måleutstyr - dette er bare en ufullstendig liste over vanskeligheter som Svoboda og hans elever måtte stå overfor. Den maksimale søken var å få en så elementær ting som et magnetbånd, historien om oppkjøpet bygger også på en liten industriell roman. For det første var det fraværende i Tsjekkoslovakia som en klasse; det ble rett og slett ikke produsert, siden de ikke hadde noe utstyr til dette i det hele tatt. For det andre var situasjonen i CMEA -landene lik - på den tiden var det bare Sovjetunionen som på en eller annen måte laget båndet. Det var ikke bare en fryktinngytende kvalitet (generelt har problemet med periferiutstyret og spesielt med det forbannede båndet fra datamaskinen til kompakte kassetter hjemsøkt Sovjet til det siste, alle som hadde lykke til å jobbe med sovjetbånd har en enorm antall historier om hvordan den ble revet, hellet osv.), så de tsjekkiske kommunistene av en eller annen grunn ikke ventet på hjelp fra sine sovjetiske kolleger, og ingen ga dem et bånd.
Som et resultat bevilget minister for ingeniøringeniør Karel Poláček et tilskudd på 1,7 millioner kroner for utvinning av tape i Vesten, men på grunn av byråkratiske hindringer viste det seg at utenlandsk valuta for dette beløpet ikke kunne frigjøres innenfor grensen fra departementet for generell ingeniørfag for importteknologi. Mens vi håndterte dette problemet, savnet vi bestillingsfristen for 1962 og måtte vente hele 1963. Til slutt, bare under den internasjonale messen i Brno i 1964, som et resultat av forhandlinger mellom statskommisjonen for utvikling og koordinering av vitenskap og teknologi og statskommisjonen for ledelse og organisasjon, var det mulig å oppnå import av kassettminne sammen med ZUSE 23 -datamaskinen (de nektet å selge båndet fra Tsjekkoslovakia separat på grunn av embargo, jeg måtte kjøpe en hel datamaskin fra den nøytrale sveitseren og fjerne magnetstasjonene fra den).
EPOS 1
EPOS I var en modulær unicast -rørdatamaskin. Til tross for at det teknisk sett tilhørte den første generasjonen maskiner, var noen av ideene og teknologiene som ble brukt i den svært avanserte og ble massivt implementert bare noen få år senere i andre generasjons maskiner. EPOS I besto av 15 000 germaniumtransistorer, 56 000 germaniumdioder og 7 800 vakuumrør, avhengig av konfigurasjonen hadde den en hastighet på 5–20 kIPS, noe som ikke var dårlig den gangen. Bilen var utstyrt med tsjekkiske og slovakiske tastaturer. Programmeringsspråk - autokode EPOS I og ALGOL 60.
Maskinens registre ble samlet på de mest avanserte magnetostriktive forsinkelseslinjene i nikkel-stål for disse årene. Det var mye kulere enn Strela kvikksølvrør og ble brukt i mange vestlige design fram til slutten av 1960 -tallet, siden slikt minne var billig og relativt raskt, ble det brukt av LEO I, forskjellige Ferranti -maskiner, IBM 2848 Display Control og mange andre tidlige videoterminaler (en ledning lagret vanligvis 4 tegnstrenger = 960 bits). Den ble også vellykket brukt i tidlige stasjonære elektroniske kalkulatorer, inkludert Friden EC-130 (1964) og EC-132, programmerbare kalkulatoren Olivetti Programma 101 (1965) og programmerbare kalkulatorer fra Litton Monroe Epic 2000 og 3000 (1967).
Generelt var Tsjekkoslovakia i denne forbindelse et fantastisk sted - noe mellom Sovjetunionen og fullverdig Vest -Europa. På den ene siden, på midten av 1950 -tallet var det problemer selv med lamper (husk at de også var i Sovjetunionen, men ikke så neglisjert), og Svoboda bygde de første maskinene på den uhyggelig utdaterte teknologien på 1930 -tallet - reléer, derimot, på begynnelsen av 1960-tallet, ble ganske moderne nikkelforsinkelseslinjer tilgjengelig for tsjekkiske ingeniører, som begynte å bli brukt i innenlands utvikling 5-10 år senere (da de ble forældet i Vesten, for for eksempel den innenlandske Iskra-11 ", 1970 og" Electronics-155 ", 1973, og sistnevnte ble ansett som så avansert at han allerede mottok en sølvmedalje på utstillingen for økonomiske prestasjoner).
EPOS I, som du kanskje gjetter, var desimal og hadde rike eksterne enheter, i tillegg ga Svoboda flere unike maskinvareløsninger i datamaskinen som var godt i forkant av sin tid. I / O -operasjoner i en datamaskin er alltid mye tregere enn å jobbe med RAM og ALU. Det ble besluttet å bruke ledig tid til prosessoren, mens programmet den utførte, åpnet sakte eksterne stasjoner for å starte et annet uavhengig program - totalt, på denne måten var det mulig å kjøre opptil 5 programmer parallelt! Det var verdens første implementering av multiprogrammering ved hjelp av maskinvareavbrudd. Videre ble det innført ekstern (parallell lansering av programmer som arbeider med forskjellige uavhengige maskinemoduler) og interne (rørledning for divisjonsoperasjonen, den mest arbeidskrevende) tidsdeling, noe som gjorde det mulig å øke produktiviteten mange ganger.
Denne innovative løsningen anses med rette som det arkitektoniske mesterverket til frihet og ble massivt brukt i industrielle datamaskiner i Vesten bare noen få år senere. EPOS I multiprogrammerende datamaskinstyring ble utviklet da selve ideen om tidsdeling fortsatt var i sin spede begynnelse, selv i den profesjonelle elektriske litteraturen fra andre halvdel av 1970 -årene omtales den fortsatt som svært avansert.
Datamaskinen var utstyrt med et praktisk informasjonspanel, der det var mulig å overvåke fremdriften i prosesser i sanntid. Designet antok i utgangspunktet at påliteligheten til hovedkomponentene ikke var ideell, så EPOS I kunne rette individuelle feil uten å avbryte den nåværende beregningen. En annen viktig funksjon var muligheten til å bytte komponenter, samt koble til forskjellige I / O -enheter og øke antall trommel- eller magnetiske lagringsenheter. På grunn av sin modulære struktur har EPOS I et bredt spekter av applikasjoner: fra massedatabehandling og automatisering av administrativt arbeid til vitenskapelige, tekniske eller økonomiske beregninger. I tillegg var han grasiøs og ganske kjekk, tsjekkerne, i motsetning til Sovjetunionen, tenkte ikke bare på ytelse, men også på utformingen og bekvemmeligheten til bilene sine.
Til tross for presserende forespørsler fra regjeringen og økonomiske nødstilskudd, klarte ikke departementet for generell maskinbygging å skaffe nødvendig produksjonskapasitet ved VHJ ZJŠ Brno -anlegget, der EPOS I skulle produseres. I utgangspunktet ble det antatt at maskiner av denne serien ville dekke behovene til den nasjonale økonomien til rundt 1970. Til slutt ble alt mye mer trist, problemene med komponenter forsvant ikke, i tillegg grep den kraftige TESLA -bekymringen inn i spillet, som var fryktelig ulønnsomt å produsere tsjekkiske biler.
Våren 1965, i nærvær av sovjetiske spesialister, ble det utført vellykkede statstester av EPOS I, der den logiske strukturen, hvis kvalitet tilsvarte verdensnivået, ble spesielt verdsatt. Dessverre har datamaskinen blitt gjenstand for ubegrunnet kritikk fra noen data "eksperter" som prøvde å presse gjennom beslutningen om å importere datamaskiner, for eksempel skrev formannen for den slovakiske automatiseringskommisjonen Jaroslav Michalica (Dovážet, nebo vyrábět samočinné počítače? In: Rudé právo, 13.ubna 1966, s. 3.):
Bortsett fra prototyper ble det ikke produsert en eneste datamaskin i Tsjekkoslovakia. Sett fra verdens utvikling er det tekniske nivået på datamaskinene våre veldig lavt. For eksempel er energiforbruket til EPOS I veldig høyt og utgjør 160-230 kW. En annen ulempe er at den bare har programvare i maskinkode og ikke er utstyrt med det nødvendige antallet programmer. Konstruksjonen av en datamaskin for innendørs installasjon krever en stor konstruksjonsinvestering. I tillegg har vi ikke fullt ut sikret import fra utlandet av magnetbånd, uten hvilken EPOS I er helt ubrukelig.
Det var støtende og ubegrunnet kritikk, siden ingen av de angitte manglene var direkte knyttet til EPOS - strømforbruket var bare avhengig av elementbasen og for en lampemaskin var ganske tilstrekkelig, problemene med båndet var generelt mer politiske enn tekniske, og installasjonen av en hvilken som helst hovedramme i rommet og er nå forbundet med grundig forberedelse og er ganske vanskelig. Programvaren hadde ikke en sjanse til å dukke opp ut av luften - den trengte produksjonsbiler. Ingeniør Vratislav Gregor protesterte mot dette:
EPOS I -prototypen fungerte perfekt i 4 år under utilpassede forhold i tre skift uten klimaanlegg. Denne første prototypen på maskinen vår løser oppgaver som er vanskelige å løse på andre datamaskiner i Tsjekkoslovakia … for eksempel overvåking av ungdomskriminalitet, analyse av fonetiske data, i tillegg til mindre oppgaver innen vitenskapelige og økonomiske beregninger som har betydelig praktisk anvendelse. Når det gjelder programmeringsverktøy, er EPOS I utstyrt med ALGOL … For den tredje EPOS I har omtrent 500 I / O -programmer, tester, etc. blitt utviklet. Ingen andre brukere av en importert datamaskin har noen gang hatt programmer tilgjengelig for oss så raskt og i så stor mengde.
Da utviklingen og aksept av EPOS I var fullført, var den dessverre veldig utdatert, og VÚMS begynte parallelt å bygge sin fullt transistoriserte versjon uten å kaste bort tid.
EPOS 2
EPOS 2 har vært under utvikling siden 1960 og representerte toppen av verdens andre generasjons datamaskiner. Den modulære designen tillot brukere å tilpasse datamaskinen, i likhet med den første versjonen, til den spesifikke typen oppgaver som skal løses. Gjennomsnittlig driftshastighet var 38,6 kIPS. Til sammenligning: den kraftige bankkontoren Burroughs B5500 - 60 kIPS, 1964; CDC 1604A, den legendariske Seymour Cray -maskinen, som også ble brukt i Dubna i sovjetiske atomprosjekter, hadde en effekt på 81 kIPS, til og med gjennomsnittet i linjen IBM 360/40, hvorav en serie senere ble klonet i Sovjetunionen, utviklet i 1965, i vitenskapelige problemer ga ut bare 40 kIPS! Etter standardene på begynnelsen av 1960-tallet var EPOS 2 en bil i toppklasse med de beste vestlige modellene.
Tidsfordelingen i EPOS 2 ble fremdeles kontrollert ikke av programvare, som på mange utenlandske datamaskiner, men av maskinvare. Som alltid var det en plugg med det forbannede båndet, men de ble enige om å importere det fra Frankrike, og senere mestret TESLA Pardubice produksjonen. For datamaskinen ble det utviklet sitt eget operativsystem, ZOS, og det ble blinket inn i ROM. ZOS -koden var målspråket for FORTRAN, COBOL og RPG. Tester av EPOS 2 -prototypen i 1962 var vellykkede, men innen utgangen av året var datamaskinen ikke ferdig av de samme grunnene som EPOS 1. Som et resultat ble produksjonen utsatt til 1967. Siden 1968 har ZPA Čakovice produsert EPOS 2 i serie under betegnelsen ZPA 600, og siden 1971 - i en forbedret versjon av ZPA 601. Seriell produksjon av begge datamaskinene ble avsluttet i 1973. ZPA 601 var delvis programvarekompatibel med MINSK 22 -serien av sovjetiske maskiner. Totalt ble det produsert 38 ZPA -modeller, som var et av de mest pålitelige systemene i verden. De ble brukt til 1978. Også i 1969 ble det laget en prototype av den lille ZPA 200 -datamaskinen, men gikk ikke i produksjon.
Når vi går tilbake til TESLA, bør det bemerkes at deres ledelse virkelig saboterte EPOS -prosjektet med all sin kraft og av en enkel grunn. I 1966 presset de til sentralkomiteen i Tsjekkoslovakia tildelinger på 1, 1 milliard kroner for kjøp av fransk-amerikanske hovedrammer Bull-GE og trengte ikke en enkel, praktisk og billig innenlandsk datamaskin i det hele tatt. Presset gjennom sentralkomiteen førte til det faktum at det ikke bare ble lansert en kampanje for å diskreditere verkene til Svoboda og dets institutt (du har allerede sett et sitat av denne typen, og det ble ikke publisert noen steder, men i hovedpressorganet til Kommunistpartiet i Tsjekkoslovakia Rudé právo), men også til slutt ble departementet for generell maskinbygging beordret til å begrense produksjonen av to EPOS I, totalt, sammen med prototypen, ble det til slutt laget 3 stykker.
EPOS 2 fikk også et treff, TESLA -selskapet gjorde sitt beste for å vise at denne maskinen var ubrukelig, og gjennom ledelsen av GD ZPA (Instrument and Automation Factories, som VÚMS tilhørte) presset ideen om en åpen konkurranse mellom utvikling av Liberty og den nyeste hovedrammen TESLA 200. Fransk datamaskinprodusent BULL var I 1964, sammen med den italienske produsenten Olivetti, kjøpte amerikanerne General Electric, de startet utviklingen av en ny mainframe BULL Gamma 140. Imidlertid lanserte den for amerikaneren markedet ble kansellert, ettersom Yankees bestemte at det skulle konkurrere internt med sin egen General Electric GE 400. Som et resultat hang prosjektet i luften, men da dukket vel representanter for TESLA opp, og for 7 millioner dollar kjøpte de en prototype og rettighetene til produksjonen (som et resultat produserte TESLA ikke bare rundt 100 slike datamaskiner, men klarte også å selge flere i Sovjetunionen!). Det var denne tredje generasjons bilen som heter TESLA 200 som skulle slå den uheldige EPOS.
TESLA hadde en fullstendig seriell feilsøket datamaskin med et komplett sett med tester og programvare, VÚMS hadde bare en prototype med et ufullstendig sett med eksterne enheter, et uferdig operativsystem og stasjoner med en bussfrekvens 4 ganger mindre enn de som er installert på den franske hovedrammen. Etter en foreløpig kjøring var EPOS -resultatene som forventet skuffende, men den geniale programmereren Jan Sokol endret betydelig den vanlige sorteringsalgoritmen, de ansatte, som jobbet døgnet rundt, fikk tankene på maskinvaren, fikk tak i et par raske stasjoner ligner på TESLA, og som et resultat vant EPOS 2 en mye kraftigere fransk mainframe!
Under evalueringen av resultatene fra den første runden, snakket Sokol, under en diskusjon med ZPA, om de ugunstige forholdene i konkurransen, enig med ledelsen. Imidlertid ble klagen hans avvist med ordene "etter kampen er hver soldat en general." Dessverre påvirket EPOS seier ikke hans skjebne i stor grad, hovedsakelig på grunn av den uheldige tiden - det var 1968, sovjetiske stridsvogner kjørte gjennom Praha, undertrykte Praha -våren, og VÚMS, alltid kjent for sin ekstreme liberalisme (hvorfra dessuten, nylig flyktet med Svoboda) halvparten av de beste ingeniørene til Vesten) ble mildt sagt ikke høyt respektert av myndighetene.
Men så begynner den mest interessante delen av historien vår - hvordan den tsjekkiske utviklingen dannet grunnlaget for de første sovjetiske missilforsvarskjøretøyene og hvilken grusom slutt som ventet dem til slutt, men vi skal snakke om dette neste gang.