SWAC (lyhenne sanoista englannin [National Bureau of] Standards's Western Automatic Computer , Western Automatic Computer of the Bureau of Standards) on toinen elektroninen digitaalinen tietokone , joka luotiin vuonna 1950 Yhdysvaltain kansallisessa standardointitoimistossa (NBS) Los Angelesissa (USA) . Suunnittelija Harry Husky . Ensimmäinen NBS-tietokone oli SEAC , joka asennettiin Washington DC :hen .
Vuonna 1945 NBS perusti National Laboratories of Applied Mathematics -jaoston tarjoamaan laskentapalveluja muille valtion organisaatioille ja NBS:n soveltavan matematiikan hallintoneuvoston. Alun perin laboratoriot suunnittelivat ostavansa tietokoneita yhdeltä yksityiseltä yritykseltä (vuoden 1948 alusta lähtien neuvottelut olivat käynnissä Echert-Mauchly Computer Corporationin ja Raytheonin kanssa), mutta johtuen siitä, että nämä yritykset kehittivät elektronisia tietokoneita. viivästyi, toukokuussa 1948 sovelletun matematiikan hallintoneuvosto päätti rakentaa oman tietokoneen Washingtoniin (tuleva SEAC ). Samanaikaisesti päätettiin ostaa Echert-Mouchly Computer Corporationilta kolme UNIVAC -tietokonetta (jotka olivat tuolloin kehitteillä), jotka oli tarkoitus asentaa Census Bureau -keskukseen, Ilmavoimien logistiikkakeskukseen (Air Materiel Command). ) ja Numerical Analysis -instituutissa ( Institute of Numerical Analysis , INA), joka oli osa Applied Mathematics -laboratorioita. Tietokoneiden osto oli tarkoitus maksaa sotilasbudjetista, mutta useista byrokraattisista syistä tämä osoittautui mahdottomaksi, joten lokakuussa 1948 johtokunta päätti rakentaa toisen tietokoneen Numeerisen analyysin instituuttiin, joka sijaitsi Kalifornian yliopiston kampuksella Los Angelesissa (UCLA).
Harry Douglas Huskey , joka oli aiemmin osallistunut ENIAC- , EDVAC- ja Pilot ACE -tietokoneiden kehittämiseen, kutsuttiin johtamaan projektia . Työ alkoi tammikuussa 1949. Ryhmä koostui kolmesta muistin parissa työskentelevästä ongelmaryhmästä (B.F. Ambrosio (BFAmbrosio), Harry Larson (Harry Larson) ja Bill Gunning (Bill Gunning) Rand Corporationista), aritmeettisesta yksiköstä (johti Edward Lacey) ja ohjausyksiköstä (johti David Ruthland).
Aluksi EDVAC -projektin kehittämän suunnittelun pohjalta elohopeaviivelinjamuistilla, projektia sponsoroinut armeija vaati NBS:n rakentamaan tietokoneita, jotka poikkesivat suunnittelultaan muista julkisesti rahoitetuista projekteista. Siksi Husky kääntyi professori F.K. Williams Manchesterin yliopistosta katodisädeputkien (CRT) käytöstä muistilaitteina, joita kutsuttiin Williams-putkiksi . Tämä kokemus oli sitäkin mielenkiintoisempi, koska se lupasi nopeamman muistin käytön ja siten nopeamman tietokoneen suorituskyvyn. CRT-muistin hyödyn maksimoimiseksi päätettiin, että tietokoneessa tulisi olla bitin rinnakkainen aritmeettinen yksikkö ja rinnakkaiset dataväylät. Hanketta kehitettäessä kiinnitettiin suurta huomiota myös luotavan tietokoneen taloudellisuuteen ja luotettavuuteen. Tätä tarkoitusta varten kehittäjät yrittivät käyttää vain massatuotettuja, kaupallisesti saatavilla olevia komponentteja - lamppuja, katodisädeputkia - mikä alensi sekä hintaa että helpotti tulevan tietokoneen toimintaa. Huollon helpottamiseksi he yrittivät rakentaa tietokoneen vakiolohkoista, jotka epäonnistuessa voidaan helposti korvata varaosilla. Lähes 80 % tietokoneesta koostui tällaisista lohkoista. Yhdessä tietokoneen kanssa kehitettiin diagnostiikkatelineet, jotka mahdollistivat itsenäisen diagnosoinnin ja viallisten yksiköiden korjaamisen samalla, kun tietokone jatkoi päätehtäviensä ratkaisemista. Tietokone rakennettiin von Neumannin arkkitehtuurin mukaan muistiin tallennetulla ohjelmalla. Numerokapasiteetti oli 36 bittiä lisäbitillä etumerkille - konesanassa yhteensä 37 bittiä. Merkittyjä numeroita esitettiin moduulilla ja etumerkillä, ts. nollalla voi olla sekä positiivinen että negatiivinen merkki. Numerot esitettiin kiinteällä pisteellä käyttämällä "vasemman" pisteen esitystä, joka oli suosittu tuolloin, jolloin uskottiin, että kaikki luvut olivat murtolukuja ja vaihtelivat välillä -1+2 -36 ja 1-2 -36 . RAM tehtiin 37 katodisädeputkelle, joista jokainen vastasi "omien" sanojensa tallentamisesta. Jokainen CRT tarjosi 256 bitin kapasiteetin, joten muistin kokonaiskapasiteetti oli 256 sanaa ja 37 bittiä. Vaihtosykli muistin kanssa oli 16 μs. Pienen RAM-muistin vuoksi tietokone oli varustettu lisämuistilla magneettirummulla, jonka kapasiteetti on 4096 sanaa. Vaihto rummun kanssa tehtiin 8, 16 tai 32 sanan lohkoissa, vaihtoaika oli 17 ms. Tietokone toteutti 4-osoitteen käskyjärjestelmän , jossa jokainen käsky (paitsi tulo- ja lähtökomentoja) sisälsi kahden argumentin osoitteet, tuloksen osoitteen ja seuraavan käskyn osoitteen. Käskyjärjestelmä sisälsi seuraavat ohjeet: yhteenlasku, vähennyslasku, pyöristetty kertolasku (37-bittisellä tuloksella), kertominen täydellä tuloksella (74 bittiä), vertailu, bittien erottaminen maskin avulla, tulo ja tulos. Osana aritmeettista logiikkayksikköä (ALU) toteutettiin kolme rekisteriä - puskuri muistista lukemista varten, akku ja R-rekisteri - akun laajennus kertoimen ja tuotteen laajennetun osan tallentamiseen. Syöttö-/tulostuslaitteina käytettiin teletypewriter (Flexowriter) ja rei'itetyn nauhan lukija . Myöhemmin tietokone varustettiin reikäkortinlukijalla (IBM 077) ja reikäkortin tulostuslaitteella (IBM 513).
SWAC asennettiin kolmeen mittatilaustyönä valmistettuun kaappiin, ja se oli aikaansa nähden erittäin kompakti. Se sisälsi 37 CRT:tä, 2 600 lamppua ja 3 700 puolijohdediodia. Käytön aikana se kulutti sähköä 30 kW.
SWAC:n kokoonpano valmistui heinäkuussa 1950 ja 17.-19. elokuuta tapahtui sen virallinen hyväksyminen, jonka aikana pidettiin pieni tietotekniikan symposiumi ja tietokoneesittely. Hyväksymishetkellä SWAC osoittautui maailman nopeimmaksi tietokoneeksi. Se suoritti kaikki käskyt kertomista, jakoa ja I/O:ta lukuun ottamatta 64 µs:ssa (15'625 ops/s). Kerto- ja jakolasku suoritettiin 384 µs:ssa ja I/O-komennot suoritettiin vastaavien laitteiden nopeuden mukaisesti. Tämä ennätys säilyi pitkään - Whirlwind-tietokoneen ilmestymiseen asti ja ennen kuin se varustettiin ferriittimuistilla , mikä tapahtui vasta vuonna 1953. Tietokoneella ratkaistiin erilaisia numeerisen analyysin ongelmia, erityisesti etsittiin Mersennen alkulukuja (lukuja muotoa 2 p −1, jossa p on alkuluku). SWAC:n avulla matemaatikko Raphael Robinson onnistui löytämään 5 suurinta tällaista lukua, joista jälkimmäisen p-arvo oli 2297. SWAC tutki myös Maan ilmakehän kiertokulkua. Tämän ongelman ratkaisemisen aikana käsiteltiin 750 000 syöttöarvoa ja saatiin vertailukelpoinen määrä tuloksia. Ratkaisuaika oli 325 tuntia. SWAC osoittautui varsin luotettavaksi käytössä. Keskimääräinen tuottava työaika oli 53 tuntia viikossa eli 70 % koko tietokoneajasta.
Suurin ongelma tietokoneen toiminnassa oli Williams-putkiin perustuvan muistin epäluotettavuus. Vaikka kehitystiimi pienensi tallennustiheyttä alun perin suunnitellusta, muisti epäonnistui kahdesta ongelmasta johtuen. Ensimmäinen johtui siitä, että halpojen CRT-laitteiden loisteaine oli saastunut puuvillakuiduilla, jotka hiiltyivät elektronisuihkujen vaikutuksesta ja joista tuli johtimia. Tästä johtuen jopa 1-2 % kaikkien CRT-laitteiden pinnasta oli viallisia ja niissä ei ollut varausta. Tämän ilmiön torjumiseksi valittiin putket, niihin merkittiin vialliset paikat ja yritettiin säätää ohjauspiirejä siten, että putken rasteri ei ylittänyt viallisia vyöhykkeitä. Toinen ongelma oli varauksen leviäminen solujen välillä - liian usein yhteen muistiosoitteeseen pääsyn yhteydessä tallennuksen aikana muodostunut sekundaaristen elektronien pilvi asettui kunkin putken vierekkäisiin soluihin, mikä johti tietojen pyyhkimiseen näistä soluista. Ohjelmoijat joutuivat ohjelmia kirjoittaessaan varmistamaan, että kutakin muistipaikkaa ei käytetä liian usein ohjelmassa.
Teoksen alussa SWAC:n luojat antoivat sille työnimen ZEPHYR - lempeän länsituulen nimen mukaan. Tällä nimellä hän esiintyi pitkään erilaisissa asiakirjoissa. Sille annettiin sitten proosallisempi nimi "Numeerisen analyysin instituutin tietokone". Työn loppua kohti NBS:n johto vaati, että NBS on läsnä molempien kehitteillä olevien tietokoneiden nimissä. Näin syntyivät nimet National Bureau of Standards' Eastern/Western Automatic Computer ja niihin perustuvat lyhenteet SEAC ja SWAC.
Vuodesta 1950 vuoteen 1954 SWAC toimi Numeerisen analyysin instituutissa. Vuonna 1954 INA poistettiin NBS:stä ja tietokone siirrettiin Kalifornian yliopistoon (UCLA). Se toimi siellä käytöstä poistamiseensa joulukuussa 1967. Valitut SWAC:n säilyneet osat ovat tällä hetkellä esillä Los Angelesin tiede- ja teollisuusmuseossa ja muissa Yhdysvaltain museoissa.