
A szerző fényképe
1. Történet
A buborékos memória, vagyis a hengeres mágneses domainokon alapuló memória energiatároló memória, amelyet 1967-ben Andrew Bobeck fejlesztett ki a Bell Labs-nél. A kutatások kimutatták, hogy kis hengeres mágneses domainek képződnek monokristályos vékony filmekben ferritek és gránátok esetén, amikor egy elegendően erős mágneses mező merőlegesen hat a film felületére. A mágneses mező megváltoztatásával ezeket a buborékokat lehet mozgatni. Ezek a tulajdonságok a mágneses buborékokat ideálissá teszik bites adat sorrendben történő tárolására, hasonlóan a shift regiszterhez, ahol egy buborék jelenléte vagy hiánya egy adott pozícióban nullás vagy egyes bit értéket jelent. A buborék átmérője tized mikron nagyságú, egy chip pedig ezrek bitnyi adatot képes tárolni. Például 1977 tavaszán a Texas Instruments először mutatta be a piacon a 92304 bit kapacitású chipet. Ez a memória energiatároló, ami hasonlóvá teszi a mágneses szalaghöz vagy lemezhez, de mivel szilárdtest és nem tartalmaz mozgó alkatrészeket, megbízhatóbb, mint a szalag vagy lemez, nem igényel karbantartást, és sokkal kisebb méretekkel és súllyal bír, tehát használható hordozható eszközökben.
Eredetileg a buborékos memória feltalálója, Andrew Bobeck, egy «egydimenziós» memória verziót javasolt, amely egy szálba csavart vékony ferromágneses anyagcsík volt. Ezt a memóriát «twistor» néven ismerték, és sorozatgyártották is, de hamarosan kiszorította a «két dimenziós» változat.
Megismerheti a buborékos memória létrejöttének történetét az [1-3] hivatkozáson.
2. Működési elv
Itt szeretném elnézését kérni, nem vagyok fizikus, ezért az előadás nagyon körvonalazott lesz.
Néhány anyag (például gadolínium-gallium gránát) azon tulajdonsággal bír, hogy csak egy irányba tud mágneses mezővel rendelkezni, és ha ezen a tengelyen állandó mágneses teret alkalmazunk, akkor a mágneses területek buborékformákat képeznek, ahogyan az az alábbi ábrán látható. Minden buborék átmérője mindössze néhány mikron.
Tegyük fel, hogy van egy vékony, körülbelül 0,001 hüvelyk vastagságú, kristályos fólia ebből az anyagból, amely egy nem mágneses, például üveg alapanyagra van felhordva.

Minden a varázslatos buborékokról szól. A bal oldali kép — mágneses mező nincs jelen, a jobb oldali kép — a mágneses mező merőlegesen irányul a fólia felületére.
Ha egy ilyen anyagból készült fólia felületén mágneses anyagból, például permalloyból, vörös-nikkel ötvözetből mintázatot alakítunk ki, a buborékok a minta elemeihez tapadnak. Általában T vagy V alakú elemeket használnak mintázatként.
Egyetlen buborék mágneses mező által létrehozható, 100-200 erg/méteres nagyságban, amely merőlegesen hat a mágneses fóliára, és állandó mágnessel hozható létre; a forgó mágneses mező, amelyet két tekercs hoz létre XY irányokban, lehetővé teszi a buborék-dómok egyik mágneses "sziget"-ből a másikba való átmozgását, ahogy az a képen látható. A mágneses mező négyirányú megfordítása után a dóm átköltözik az egyik szigetről a szomszédosra.

Mindez lehetővé teszi a CMD-eszköz shift regiszterként való használatát. Ha buborékokat képezünk a regiszter egyik végén, és észleljük őket a másikon, akkor egy adott buborék mintázatot keringhetünk, és a rendszert memóriaként használhatjuk, bitjeinket meghatározott időpontokban olvasva és írva.
Ebből következik a CMD memóriájának előnyei és hátrányai: előnye az energiafüggetlenség (amíg merőleges mező van jelen, amelyet állandó mágnesek hoznak létre, a buborékok nem tűnnek el, és nem mozdulnak el a helyükből), hátránya az hosszú hozzáférési idő, mivel egy tetszőleges bit eléréséhez az egész shift regisztert a megfelelő pozícióba kell forgatni, és minél hosszabb, annál több ciklusra van szükség ehhez.

Mágneses elemek mintázata a CMD mágneses fóliáján.
A mágneses domain létrehozását angolul "nucleation"-nek hívják, és abban nyilvánul meg, hogy a tekercsre néhány száz milliampere áramot alkalmaznak körülbelül 100 ns időtartamra, ezzel mágneses teret hozva létre, ami merőleges a filmre és ellentétes a permanens mágnes terével. Ekkor egy mágneses "buborék" keletkezik, ami egy hengeres mágneses domain a filmben. A folyamat sajnos nagymértékben függ a hőmérséklettől, ezért előfordulhat, hogy a rögzítési művelet nem sikerül, ami miatt a buborék nem alakul ki, vagy több buborék alakul ki.
Adatok olvasására a filmről több technika használható.
Az egyik módszer, a nem romboló olvasás, abban áll, hogy a hengeres domain gyenge mágneses terét detektálják egy mágneses ellenállású érzékelő segítségével.
A második módszer a romboló olvasás. A buborékot egy speciális generáló/detektáló sávra vezetik, ahol a buborékot elpusztítják a mágneses anyag egyenes irányú mágnesezésével. Ha az anyag ellentétes irányban volt mágnesezve, vagyis a buborék jelen volt, az nagyobb áramot fog előidézni a tekercsben, ami detektálható az elektronikus áramkör által. Ezt követően a buborékot újra kell generálni egy külön rögzítési sávon.

Ha azonban a memória egy folyamatos tömb formájában van szervezve, akkor két nagy hátránya lesz. Először is, a hozzáférési idő nagyon nagy lesz. Másodszor, egyetlen hiba a láncban az egész eszköz teljes működésképtelenségét okozhatja. Ezért a memóriát egy fő sávként és sok alárendelt sávként szervezik, ahogyan az a képen látható.

Buborékos memória egy folyamatos sávval

Buborékos memória fő/alárendelt sávokkal
Ez a memória konfiguráció nemcsak hogy jelentősen csökkenti a hozzáférési időt, hanem lehetővé teszi olyan memória eszközök előállítását is, amelyek tartalmazhatnak néhány hibás sávot. A memória vezérlőnek figyelembe kell vennie ezeket, és kerülnie kell őket az olvasási/írási műveletek során.
Az alábbi képen a buborékos memória "chip" kivágása látható.

Továbbá olvashat a buborékos memória működési elvéről a [4, 5]-ben.
3. Intel 7110
Intel 7110 — buborék memória modulfelépítés, MBM (magnetikus buborék memória) 1 MB (1048576 bit) kapacitással. Ez látható a KDPR-en. 1 megabit a felhasználói adatok tárolásához elegendő kapacitás, figyelembe véve a redundáns nyomvonalakat, a teljes kapacitás 1310720 bit. Az eszköz 320 hurok nyomvonalat tartalmaz, amelyek mindegyike 4096 bit kapacitású, de a felhasználói adatokhoz csak 256-ot használnak, a többi a „hibás” nyomvonalak cseréjére és hibajavító kód tárolására szolgál. Az eszköz „fő nyomvonal-alárendelt nyomvonalak” (major track-minor loop) architektúrával rendelkezik. Az aktív nyomvonalakról információ egy külön induló nyomvonalban (bootstrap loop) található. A KDPR-en látható a hexadecimális kód, amely közvetlenül a modulon van kinyomtatva. Ez a „hibás” nyomvonalak térképe, 80 hexadecimális számjegy 320 adatnyomvonalat reprezentál, az aktívakat 1-es bit, a nem aktívakat 0-ás bit jelzi.
Az eredeti dokumentációval a modulhoz [7] ismerkedhet meg.
Az eszköz kétrészű kimeneti házzal rendelkezik, és forrasztás nélkül szerelhető (socket-en).
A modul struktúrája a következő ábrán látható:

A memória tömböt két „fél szekcióra” (half sections) osztják, amelyek mindegyike két „negyedre” (quads) oszlik, minden negyednek 80 alárendelt nyomvonala van. A modul egy mágneses anyagot tartalmazó táblát tartalmaz, amely két ortogonális tekercs között helyezkedik el, amelyek forgó mágneses teret hoznak létre. Ehhez a tekercsekre háromszög alakú áramjelek érkeznek, amelyek 90 fokkal eltolva állnak egymáshoz képest. A lemez és a tekercsek összeszerelése állandó mágnesek között helyezkedik el, és egy mágneses árnyékolás védelmezi az eszközt a külső mágneses mezőktől. A lemez 2,5 fokos szögben van elhelyezve, ami kis eltérítési teret hoz létre, amely a lejtés mentén irányul. Ez a tér elhanyagolhatóan kicsi a tekercsek mezejéhez képest, és nem zavarja a buborékok mozgását az eszköz működése során, de rögzíti a buborékokat a permalloy elemekhez viszonyítva, amikor az eszköz ki van kapcsolva. Az állandó mágnesek erős merőleges komponense támogatja a buborék mágneses tartományok létezését.

A modul a következő egységeket tartalmazza:
- Memória-sávok. Pontosan azok a sávok a permalloy elemekből, amelyek megtartják és irányítják a buborékokat.
- Replikátor generátor. A buborék replikálására szolgál, amely folyamatosan jelen van a generálási helyen.
- Bemeneti sáv és csere csomópontok. A generált buborékok a bemeneti sáv mentén mozognak. A buborékok az egyik 80 alárendelt sávba mozognak.
- Kimeneti sáv és replikáló csomópont. A buborékokat a adat sávokból olvassák ki anélkül, hogy elpusztítanák őket. A buborék két részre oszlik, és az egyik része a kimeneti sávra irányul.
- Detektor. A buborékok a kimeneti sávból érkeznek a magnetorezisztív detektorhoz.
- Betöltő sáv. A betöltő sáv tartalmazza az aktív és inaktív adat sávok információit.
Az alábbiakban részletesebben megvizsgáljuk ezeket a csomópontokat. Ezen kívül a [6] alatt áttekintheti ezen csomópontok leírását is.
Buborék generálás

A buborék generálásához a bemeneti sáv elején van egy vezető, amely apró hurkot alkot. Ide impulzushullámot vezetünk be, amely egy nagyon kis területen mágneses mezőt teremt, erősebbet, mint a állandó mágneseké. Az impulzus ezen a helyen buborékot hoz létre, amely folyamatosan fennmarad, a állandó mágneses mező által fenntartva, és kering a permalloy elem mentén a forgó mágneses mező hatására. Ha egy számot kell tárolnunk, rövid impulzust adunk a vezető hurokba, és ennek következtében két buborék születik (a képen Bubble split seed-ként jelölve). Az egyik buborék a forgó mezővel halad a permalloy sáv mentén, a másik a helyén marad, és gyorsan visszanyeri eredeti méretét. Ezután az alárendelt sávok egyikéhez mozog, és helyet cserél a benne keringő buborékkal. Ez a buborék eléri a bemeneti sáv végét, és eltűnik.
Buborék csere

A buborék csere akkor történik, amikor a megfelelő vezetőbe téglalap alakú impulzus áramot vezetnek be. Ekkor a buborék nem oszlik két részre.
Adatolvasás

Az adatok egy kimeneti nyomvonalra történő kibővítésével terjednek, és a leolvasás után tovább keringenek a nyomvonalukban. Így ez az eszköz nem destruktív olvasási módszert valósít meg. A replikációhoz a buborék egy hosszúkás permalloy elem alá irányul, alatta kifeszül. Felül is van egy hurok alakú vezető, ha az áram impulzusát a hurokba juttatják, a buborék két részre szakad. Az áram impulzusa egy rövid szakaszból áll, nagy áramerősséggel, hogy a buborék két részre szakadjon, és egy hosszabb szakaszból, kisebb áramerősséggel, hogy a buborékot a kimeneti nyomvonalra irányítsa.
A kimeneti nyomvonal végén található a buborékdetektor, egy mágneses érzékelő híd, amely permalloy elemekből készült, és egy hosszú láncot alkot. Amikor a mágneses buborék a permalloy elem alá kerül, az ellenállása megváltozik, és a híd kimenetén néhány millivoltnyi feszültségkülönbség jelenik meg. A permalloy elemek formája úgy van kiválasztva, hogy a buborék végighaladjon rajtuk, a végén egy speciális „védő” buszra kerül, és eltűnik.
Túlzott redundancia
Az eszköz 320 nyomvonalat tartalmaz, mindegyik 4096 bitből áll. Ebből 272 aktív, 48 tartalék, inaktív.
Indító nyomvonal (Boot Loop)
Az eszköz 320 adat-nyomvonalat tartalmaz, amelyek közül 256 a felhasználói adatok tárolására szolgál, a többi vagy hibás lehet, vagy tartalék gyanánt használható. Egy plusz nyomvonal tartalmaz információt az adat-nyomvonalak használatáról, 12 bitet minden nyomvonalra. Amikor a rendszert áram alatt állítják, azt inicializálni kell. Az inicializálás során az vezérlőnek le kell olvasnia az indító nyomvonalat, és az abban található információt be kell írnia a formázó/áramérzékelő chip speciális regiszterébe. Ekkor a vezérlő csak az aktív nyomvonalakat fogja használni, az inaktívakat figyelmen kívül hagyja, és nem ír adatokat ezekre.
Adattárolás — struktúra
Felhasználói szempontból az adatok 2048 oldalban vannak tárolva, mindegyik 512 bit. Minden félben 256 byte adat, 14 bit hibajavító kód és 2 kihasználatlan bit található.
Hibajavítás
A hibák felfedezése és kijavítása a folyamatban lévő áramérzékelő chip segítségével történhet, amely egy 14 bites kód dekódolót tartalmaz, amely képes egyetlen hibát kijavítani akár 5 bit hosszúságú burst hiba esetén minden 270 bites blokkban (beleértve magát a kódot is). A kódot minden 256 bites blokk végére fűzik. A javító kód használata választható, a kód ellenőrzése a vezérlőben be- vagy kikapcsolható. Ha a kódot nem használják, az összes 270 bit felhasználható felhasználói adatokra.
Hozzáférési idő
A mágneses mező 50 kHz frekvenciával forog. Az első bit első oldalához való hozzáférés átlagos ideje 41 ms, ami a teljes ciklus végigjárásához szükséges idő felét jelenti, plusz a kilépő pálya áthaladási idejét.
320 aktív és tartalék pálya négy részre van osztva, mindegyik 80 pályát tartalmaz. Ez a struktúra csökkenti a hozzáférési időt. A negyedek párban vannak címkézve: minden pár negyed a szó páros és páratlan bitjeit tartalmazza. Az eszköz négy bemeneti pályával rendelkezik, mindegyik négy kezdeti buborékkal, és négy kimeneti pályával. A kimeneti pályák két detektort használnak, amelyek úgy vannak kialakítva, hogy egyetlen detektorba soha nem kerül párhuzamosan buborék a két pályáról. Így a négy buborékáram multiplexálódik és két bitáramra alakítva kerül a tápfeszültség érzékelő chip regisztereibe. Ott a regiszterek tartalma ismét multiplexálódik és szekvenciális interfészen keresztül kerül a vezérlőbe.
A cikk második részében részletesebben megvizsgáljuk a buborékos memória vezérlőjének áramkörét.
4. Irodalomjegyzék
A szerző a legeldugottabb helyekről gyűjtött össze és mentett el Önöknek hasznos technikai információkat a CMD memória történetéről és más kapcsolódó aspektusokról:
1. — Bobeck mérnök két memóriája
2. — Bobeck mérnök két memóriája (2. rész)
3. — Buborék memória
4. A mágneses buborék memória adaptálása egy standard mikro számítógépes környezetben
5. — Texas Instruments TIB 0203 buborék memória
6. — Memóriakomponens kézikönyv. Intel 1983.
7. 7110 1-Megabites buborék memória
Forrás: habr.com
