170 likes | 261 Views
Varhaisten tietokoneiden muistitekniikat. Helsingin Yliopisto Tietojenkäsittelytieteenlaitos Tietojenkäsittelytieteen historia Seminaariesitelmä 1.2.2001 Jussi Iinatti. Eckert ja BINAC muistiyksikkö (Mercury delay line tank). Varhaisten tietokoneiden muistitekniikat. Mekaaninen muisti
E N D
Varhaisten tietokoneiden muistitekniikat Helsingin Yliopisto Tietojenkäsittelytieteenlaitos Tietojenkäsittelytieteen historia Seminaariesitelmä 1.2.2001 Jussi Iinatti Eckert ja BINAC muistiyksikkö (Mercury delay line tank)
Varhaisten tietokoneiden muistitekniikat • Mekaaninen muisti • Tarve paremmalle muistille • ’Nopeita’ muistitekniikoita • Elohopeaviivelinja (Mercury delay line) • Katodisädeputket (Cathod Ray Tubes) • Ferriittirengasmuisti (Magnetic Core)
Mekaaninen muisti • Z1 - 1938 • Vuonna 1938 saksalainen Konrad Zuse sai valmiiksi prototyypin suunnittelemastaan ’tietokoneesta’, jonka alun perin suunnitteli kyllästyttyään lineaarialgebraan • Laite nimettiin myöhemmin Z1:ksi • Laskemisessa käytettiin binäärimatematiikkaa ja laskut syötettiin reikänauhalla • Kone oli täysin mekaaninen • Koneen muisti koostui metallilevyistä, joiden rei’issä olevat neulat osoittivat muistipaikan arvoksi nollan tai ykkösen • Levyjä oli noin tuhat ja ne tallensivat suunnilleen saman määrän bittejä • Zuse rakensi protontyypin pohjalta Z2:n • Z2 käytti laskemiseen puhelinreleitä.
... Mekaaninen muisti • Z3 – 1941 • Vuonna 1941 Zuse sai valmiiksi – ensimmäisenä maailmassa – yleiskäyttöisen laskimen, joka toimi ohjelmallisesti • Laite sai nimekseen Z3 • Koneen muisti oli toteutettu samalla tekniikalla kuin Z1:ssä • Kapasiteetti oli saatu kasvatettua 64 kappaleeseen 22-bittisiä numeroita • Koneen avulla laskettiin etupäässä siipien kestävyyslaskelmia • Z4 – 1944 • Zuse rakensi vielä yhden tietokoneen - Z4:n • Koneen mekaaniseen muistiin pystyi tallettamaan 512 kpl 32-bittisiä numeroita • Liittoutuneiden pommitukset vaikeuttivat Zusen työtä ja tekivät sen lopulta mahdottomaksi
Muisti sähköistyy • 1942 - (ABC Atanasoff-Berry Computer) • 1942 John Atanasoff ja Clifford Berry Iowan yliopistosta saivat valmiiksi tietokoneensa, joka oli ensimmäinen tyhjiöputkia laskemiseen käyttävä laite • Muistina käytettiin kahta pyörivää rumpua, joihin kiinnitettyihin kondensaattoreihin bitit tallennettiin • Yhden rummun tallennuskapasiteetti oli 30 kpl 50 bitin numeroita • Kyseessä oli alkukantainen versio 40-luvun lopulla ja 50-luvun alussa käytetystä rumpumuistista • Kone jäi prototyyppiasteelle lähinnä huonosti toimivan reikäkorttitekniikkansa takia
Vauhti kiihtyy • 1945 – ENIAC • Marraskuussa 1945 J. Eckertin ja Mauchlyn johtama ryhmä sai valmiiksi ENIAC-tietokoneensa • ENIAC oli tuhansia kertoja nopeampi kuin yksikään edeltäjänsä • ENIACin suorittaman ohjelman käskyt annettiin manuaalisesti • Koneen muisti oli toteutukseltaan sekalainen: • Ennen laskentaa tiedossa olevat luvut, samoin kuin laskukaavat ja –funktiot, talletettiin manuaalisesti vivuin ja johtoja yhdistelemällä • Laskennan aikana syntyneet luvut talletettiin työmuistiin, joka oli toteutettu tyhjiöputkilla (accumulators) • Työmuistin kapasiteetti oli 20 10 numeroista desimaalilukua ja jos se ei laskennan aikana riittänyt, voitiin lukuja väliaikaisesti siirtää reikäkorteille • ENIACin mullistava nopeus loi tarpeen muistiin talletettavalle ohjelmalle ja nopealle datan syötölle.
Tarve talletetulle ohjelmalle • Koneen suorituksen ohjaaminen käsin oli hyvin hidasta • Jokaiselle laskentakerralle uusi konfiguraatio • Laskun syöttäminen ENIACiin kesti noin 2 päivää • Väärin kytketyn kaapelin etsiminen vaati käsittämättömästi työtä • ENIACin kankea ohjausmenettely seurausta juuri käyttötarkoituksesta • Lentoratataulujen välillä oli vain pieniä eroja • ENIACin laskennallinen suorituskyky olisi vaatinut nopeampaa käskyjen syöttämistä • ENIACin tyhjiöputkitekniikalla toteutettu laskenta oli mullistavan nopeaa • Kunnollista muistitekniikka ei ollut saatavilla • Tietokonepioneerit joutuivat itse suunnittelemaan lähes kaiken • Ennen kuin ENIAC valmistui, EDVACiin suunniteltiin muistista suoritettavaa ohjelmaa
Ensimmäinen talletettu ohjelma • Tarvittavan muistitekniikan kehittäminen mahdollisti suoritettavan ohjelman tallentamisen tietokoneen muistiin • Ensimmäinen kone jossa suoritettiin muistiin tallennettu ohjelma, oli Manchester Mark I • Mark I:n muistina käytettiin katodisädeputkia • Mark I oli prototyyppi, jonka toimivuus varmisti tietokonekehitystyön jatkumisen Englannissa • Manchester Mark I:n pohjalta luotiin mm. ensimmäinen kaupallinen tietokone Ferranti Mark I • Lukuisten Mark I:n seuraajien vuoksi katodisädeputket (CRT) olivat hyvin yleisiä 50-luvun alun tietokoneissa • CRT-teknologiasta oli useita eri variaatioita • Putket olivat edullisia, koska niitä käytettiin mm. tutkissa ja televisioissa
Viivelinjat (Delay lines) • Akustisen viivelinjan kehittäjä ja keksijä oli William Shockley • Elohopean käyttämiseen välittävänä aineena päätyi John Eckert • Mikä tahansa väliaine, joka aiheuttaa siinä etenevälle signaalille laskettavissa olevan viiveen, on käyttökelpoinen digitaalisen tiedon tallennusväline. • Viivelinja verrattuna katodisädeputkeen • Hitaampi • Suurempi fyysiseltä kooltaan • Kalliimpi • Vaikeampi valmistaa • Suurempi kapasiteetiltaan • Luotettavampi ja kestävämpi • Viivelinjat ja katodisädeputket korvattiin myöhemmin ferriittirengas-muistilla (Magnetic core)
Viivelinjan toiminta • Signaali kiertää linjassa • Jokaisella kierroksella • Signaalin vahvistaminen tai uudelleen muodostus • Signaalin tahdistaminen kellon avulla • Virheiden eliminointi, ’tyhjän syöttäminen’ • Signaalin poistaminen tarvittaessa
Akustinen signaali • Johtimen tallennuskapasiteetti on sitä suurempi, mitä kauemmin signaalilta kuluu sen läpi kulkemiseen • Johtimen pituutta ei käytännön syistä voi jatkaa loputtomiin • Äänen nopeus missä tahansa aineessa on erittäin hidasta verrattuna sähkömagneettisen säteilyn etenemisnopeuteen. • Signaali kuljetetaan johtimessa akustisena energiana
Elohopeatankit • Akustiseen signaaliin perustuvissa linjoissa käytettiin elohopeaa • Kiinteillä väliaineilla jonkinlaisiin tuloksiin päästiin sulatetulla kvartsilla • Sähköinen signaali sai kvartsi-kiteen värähtelemään syötesignaalin taajuudella • Värähtelyt välittyivät elohopeaan ja edelleen vastaanottavaan kiteeseen missä päinvastainen reaktio muutti signaalin sähköiseksi • Signaalin heikkeneminen tapahtui pääasiassa kvartsikiteissä • Heijastuksia pystyi vähentämään tukemalla kiteet akustiseti elohopeaa vastaavalla aineella (esim. elohopea ;) ) • Johtimet olivat yleensä noin 1,5 metriä pitkiä, jolloin saavutettiin yhden millisekunnin viive • Yleensä yhden johtimen tallennuskapasiteetti oli noin 1000 bittiä
Elohopeaviivelinja yksikkö • Kuvassa muisti BINAC-koneesta • Kapasiteetti 512 31 bitin sanaa • Johtimien ’niputtaminen’ • Lisäsi rinnakkaisuutta • Vähensi lämpötilaongelmia • EDSAC, EDVAC, UNIVAC, BINAC • Elohopealinja aikansa luotettavin ’toimiva’ muisti • Elohopealinjan korvasi ferriittirengas-muisti (Magnetic core)
Ferriittirengasmuisti • Katodisädeputket ja viivelinjat korvattin ferriittirengas-muistilla (Magnetic core) • Whirlwind-projekti MIT 1944 • Alkuperäinen tarkoitus luoda reaaliaikainen tietokone laivaston lentosimulaattoriin • Projekti tunnetaan monien tärkeiden uudistusten luojana • Whirlwind-tietokoneessa käytettiin aluksi elektrostaattista muistia • Koostui 32 katodisädeputkesta (CRT) • Yhteenlaskettu tallennuskapasiteetti oli 2048 16 bittistä sanaa • Ongelmana rikkoontuminen • Jay Forrester, Whirlwind-projektin päätutkija, tutki magneettisen Deltamax-materiaalin toimintaa muistina • Materiaalin magneettisuutta säätelemällä pystytään tallentamaan binäääristä tietoa
Ferriittirengasmuisti • Forresterin muisti koostui magneettisesta materiaalista tehdyistä renkaista (cores), jotka oli liitetty lankamatriisiin • Renkailla oli omat koordinaattinsa matriisissa, ja jokaiseen renkaaseen pystyttiin tallentamaan tietyn suuntainen magneettikenttä • Käyttämällä tiettyä X-akselin suuntaista lankaa ja tiettyä Y-akselin suuntaista lankaa, tietokone pystyi lukemaan tai tallettamaan ko. paikassa olevan renkaan magneettikentän suunnan • Menetelmä oli yksinkertainen aikaisempiin verrattuna • Muistipäivityksen myötä Whirlwindin laskentanopeus kaksinkertaistui ja datan syöttönopeus nelinkertaistui • Ferriittirengasmuisti korvasi viivelinjat ja katodisädeputket • Ei lämpötilaherkkä • Varmatoiminen ja nopea
Kehitys • Ferriittirengasmuistin jälkeen muistikehitys siirtyi yhä enemmän magneettisen tallennuksen pariin • IBM kehitti magneettinauhoja ja ’kovalevyjä’