Ferriitmälu

Ferriitmälu (ingl. magnetic-core memory) on suvapöördusega säilmälu, kus info salvestamiseks kasutatakse väikeseid ferriitrõngakesi – südamikke, millest igaüks talletab ühte bitti. Südamik võib olla magnetiseeritud kas päripäeva või vastupäeva, need olekud määravad talletatud biti väärtuse (traditsiooniliselt 0 ja 1). Südamikest on läbi punutud traadid, mille abil on võimalik lugeda või muuta iga südamiku magneetumissuunda. Ferriitmälu ei vaja info säilitamiseks toidet, kuid lugemise käigus sinna salvestatud info kustub – toimub hävitav lugemine.

Ajalugu
Aastal 1947 patenteeris Frederic Viehe ferriitmälu, mille ta oli loonud oma kodulaboris. 1956 ostis IBM tema patendi.
Viehest sõltumatult leiutasid 1947. aastal ferriitmälu ka Hiina päritolu Ameerika teadlased An Wang ja Way-Dong Woo Harvardi ülikoolis. 1950. aastal tegi sama ka Jan Rajchman. 1951 patenteeris Jay Forrester andmesalvestusseadme, mis kasutas kolmemõõtmelisse struktuuri paigutatud südamikke. See oli esimene digitaalarvutis kasutatud ferriitmälu.

Esimene ferriitmälu kasutav arvuti oli 1951. aastal MIT-is valminud Whirlwind, mis oli ühtlasi esimene reaalajas töötav arvuti. Algselt kasutati selles elektronkiiretorudel põhinevat mälu, mis oli aga aeglane ja ebausaldusväärne. Seepärast püüdis Jay Forrester leida kiiremat ja stabiilsemat alternatiivi, mille ta 1951. aastal ferriitmälu näol leidis. 1953. aastal asendati Whirlwindi kogu mälu ferriitmäluga. Ferriitmälul olid elektronkiiretorude ees mitmed eelised. See oli töökindlam ning seeläbi vähenes Whirlwind arvutis hoolduseks kuluv aeg märgatavalt. Samuti oli ferriitmälu pöördusaeg lühem (ferriitmälul ~9 ms, elektronkiiretoru ~25 ms), mis suurendas arvuti kiirust.

Ferriitmälu kasutati digitaalarvutites 1950. aastate keskpaigast kuni 1970. aastate keskpaigani. 1970. aastatel tõrjus odavnenud pooljuhttehnoloogia ferriitmälu välja, kuid selle kasutamist jätkati siiski arvutites, kus töökindlus oli esmatähtis. Näiteks kasutati ferriitmälu Apollo navigatsiooniarvutis ning ka Space Shuttle'i juhtarvutites.

Ehitus
Südamik
Südamikuks nimetatakse ferriidist rõngast, mida on võimalik püsivalt magnetiseerida kahes eri suunas: päri- ja vastupäeva. Nende seisundite seadmine vastavusse väärtustega 0 ja 1 võimaldab rõngasse salvestada ühe biti infot, mis säilib seal ka elektrivoolu puudumisel.

Südamiku materjal peab olema suure jääkmagneetumusega, et magneetumus oleks pärast kirjutamist võimalikult suur. Samas peab materjal olema kergesti ümber magneeditav (väikese koertsiivsusega), et ümbermagneetimisele kuluks vähe energiat.

Mälu kiht
Ferriitmälu koosneb tavaliselt kihtidest, kus adresseerimiseks mõeldud X- ja Y-liinid moodustavad kahemõõtmelise võrgustiku, mille ristumispunktides asuvad südamikud. Ühe lugemise/kirjutamise tsükli jooksul on kihis võimalik adresseerida vaid ühte bitti. Lisaks läbib kõiki kihi südamikke diagonaalne tagasisidetraat, mida kasutatakse südamiku magnetvälja muutumisest tekkinud pingeimpulsi lugemiseks. See traat on aadressiliinidega 45-kraadise nurga all ning ületab neid kord ühte, kord teistpidi, et vähendada elektromagnetilise induktsiooni mõju lugemile.

Mälukihtide virn
Korraga mällu rohkem kui ühe biti kirjutamiseks on võimalik mälukihid üksteise peale virna laduda ning kirjutada neisse paralleelselt. Ühe baidi kirjutamiseks tuleb kasutada kaheksakihilist mälu.

Tööpõhimõte
 Lugemine 
pisi|Südamiku hüstereesisilmus ning sellel liikumine lugemisoperatsiooni käigus. Olenevalt südamiku algsest magneetumissuunast, lugemise käigus tekib või ei teki vooluimpulssi tagasiside traadil
Südamikul asuva info lugemiseks püütakse see seada asendisse 0.
 Kui loetav südamik oli juba asendis 0, siis südamiku magneetumissuund ei muutu;
 kui loetav südamik oli asendis 1, siis südamiku magneetumissuund pöördub ja põhjustab sellega tagasisidetraadil pingeimpulsi.
Kuna lugemise käigus südamikel olev info kustub, tuleb selle säilimiseks loetud info uuesti tagasi kirjutada. Selle eest hoolitseb arvuti mälu haldav elektroonika.

 Kirjutamine 
Südamikule kirjutamiseks (selle magneetumise suuna seadmiseks) tuleb südamikust juhtida läbi piisavalt suur vool. Seda tehakse X- ja Y-aadressiliinidega. Kummastki liinist juhitakse läbi vool, mis üksi ei ole südamiku ümbermagneetimiseks piisav, kuid mille summa on selleks piisav. Seeläbi muudab magneetumise suunda ainult see südamik, mida läbivad mõlemad liinid. Mõlemad voolud peavad sisenema südamikku samalt poolt, muidu need tühistavad teineteist ja kirjutamist ei toimu. Vastavalt sellele, kas mõlemad voolud sisenesid südamikku paremalt või vasakult, on südamik nüüd magneeditud päri- või vastupäeva.

Eelised
Ferriitmälus püsib info ilma vooluta lõpmatult kaua;
Ferriitmälu oli oma aja alternatiividega võrreldes väga stabiilne ja töökindel mälu tüüp;
Ferriitmälu ei mõjuta ioniseeriv kiirgus.

Nende omaduste tõttu oli ferriitmälu väga sobilik kasutamiseks kosmoses ja sõjanduses.

Probleemid
Südamiku hüstereesisilmus sõltub temperatuurist, mistõttu tuleb eri temperatuuridel kasutada kirjutamiseks ja lugemiseks erinevat voolutugevust. Kasutamise käigus aga südamikud soojenevad. Probleem tõuseb esile eriti siis, kui ühte südamikku adresseeritakse mitu korda lühikese aja jooksul. Üheks lahenduseks on termistoride kasutamine, mille abil mõõdetakse südamike temperatuuri ja korrigeeritakse vastavalt voolutugevusi. Teine lahendus on kogu mälu hoidmine püsival temperatuuril. Selleks soojendatakse mälu ruumi temperatuurist kõrgemale ja hoitakse stabiilsena, näiteks õlivanni abil. Ferriitmälu kasutamisel on tähtis vaid temperatuuri püsivus. Püsiva temperatuuri hoidmine soojendamise teel on palju lihtsam kui jahutamise teel.

Ferriitmälude valmistamine oli keerukas ja tolleaegsete masinatega võimatu, mistõttu valmistati neid käsitsi. Töölised kasutasid peenikeste traatide läbi südamike viimiseks stereomikroskoope.

Omadused
1950. aastate alguses olid südamikud ~2 mm suurused, kuid 1970. aastate lõpuks oli need vähenenud suuruseni ~0,4 mm. Sama aja jooksul tõusis taktsagedus 200 kHz-st üle 1 MHz-ni, mälu maht aga paisus kuni 2 miljoni südamikuni.

 Viited 

Kategooria:Arvuti mälu