
Foto uit de collectie van de auteur
1. Geschiedenis
Bubbelgeheugen, of geheugen op cilindrische magnetische domeinen, is een energievrij geheugen, ontwikkeld in Bell Labs in 1967 door Andrew Bobeck. Onderzoek heeft aangetoond dat kleine cilindrische magnetische domeinen zich vormen in monokristallijne dunne films van ferrieten en granaten wanneer een sterk magnetisch veld volledig haaks op het oppervlak van de film is gericht. Door het magnetische veld te wijzigen, kunnen deze bubbels worden verplaatst. Deze eigenschappen maken magnetische bubbels een ideaal middel voor het bouwen van sequentiƫle bitopslag, vergelijkbaar met een schuifregister, waarin de aanwezigheid of afwezigheid van een bubbel op een bepaalde positie een waarde van nul of een eenheid vertegenwoordigt. De diameter van de bubbel bedraagt enkele tienden van een micron, ƩƩn chip kan duizenden bits data opslaan. Zo introduceerde Texas Instruments bijvoorbeeld in het voorjaar van 1977 de eerste chip met een capaciteit van 92304 bits op de markt. Dit geheugen is energievrij, waardoor het lijkt op magnetische tape of schijven, maar omdat het solid-state is en geen bewegende delen bevat, heeft het een grotere betrouwbaarheid dan tape of schijven, vereist het geen onderhoud, en heeft het veel kleinere afmetingen en gewicht, waardoor het kan worden gebruikt in draagbare apparaten.
Oorspronkelijk stelde de uitvinder van bubbelsgeheugen, Andrew Bobeck, een 'eendimensionale' versie van het geheugen voor, in de vorm van een draad waarop een dunne strook van ferromagnetisch materiaal is gewikkeld. Dit geheugen heette 'twistor' en werd zelfs in serie geproduceerd, maar werd al snel verdrongen door de 'tweedimensionale' variant.
U kunt de geschiedenis van de ontwikkeling van bubbelsgeheugen bekijken in [1-3].
2. Werking
Hier bied ik mijn excuses aan, ik ben geen fysicus, dus de uitleg zal erg globaal zijn.
Sommige materialen (bijvoorbeeld gadolinium-gallium-granaat) hebben de eigenschap om zich slechts in ƩƩn richting te magnetiseren, en als er een constant magnetisch veld langs deze as wordt toegepast, zullen de gemagnetiseerde gebieden iets als bubbels vormen, zoals in de onderstaande afbeelding wordt weergegeven. Elke bubbel heeft slechts enkele microns in diameter.
Laten we een dunne, ongeveerd 0,001 inch kristallijne film van dit materiaal beschouwen, aangebracht op een niet-magnetische ondergrond, zoals glas.

Het draait allemaal om magische luchtbelletjes. De afbeelding links toont de afwezigheid van een magnetisch veld, terwijl de afbeelding rechts een magnetisch veld toont dat loodrecht op het oppervlak van de film is gericht.
Als we op het oppervlak van de film een patroon van magnetisch materiaal, zoals permalloy, een ijzer-nikkel legering, vormen, zullen de luchtbelletjes zich aan de elementen van dit patroon hechten. Gewoonlijk worden patronen in de vorm van T- of V-vormige elementen gebruikt.
Een enkele luchtbel kan worden gevormd door een magnetisch veld van 100-200 ersted, dat loodrecht op de magnetische film staat en wordt opgewekt door een permanente magneet. Een roterend magnetisch veld, gevormd door twee spoelen in de XY-richting, stelt ons in staat om de luchtbelletjes-domeinen van het ene magnetische "eiland" naar het andere te verplaatsen, zoals weergegeven op de afbeelding. Na vier keer wisselen van de richting van het magnetische veld zal het domein zich van het ene eiland naar het naastgelegen verplaatsen.

Dit maakt het mogelijk om het CMD-apparaat als een shiftregister te beschouwen. Als we luchtbelletjes aan het ene uiteinde van het register vormen en deze aan de andere kant detecteren, kunnen we een bepaald patroon van luchtbelletjes in een cirkel laten bewegen en het systeem gebruiken als een geheugeneenheid door bits op bepaalde momenten in de tijd te lezen en te schrijven.
Hieruit volgen de voordelen en nadelen van het geheugen op basis van CMD: het voordeel is energieonafhankelijkheid (zolang er een loodrecht veld is, opgewekt door permanente magneten, zullen de luchtbelletjes niet verdwijnen of hun posities veranderen), maar het nadeel is de lange toegangstijd, omdat we het hele shiftregister naar de juiste positie moeten draaien om toegang te krijgen tot een willekeurig bit, en hoe langer het register, hoe meer cycli hiervoor nodig zijn.

Het patroon van magnetische elementen op de magnetische film van CMD.
De creatie van een magnetisch domein wordt in het Engels 'nucleation' genoemd, en houdt in dat er een stroom van enkele honderden milliampĆØre gedurende ongeveer 100 ns op de wikkeling wordt aangelegd, waardoor een magnetisch veld wordt gecreĆ«erd dat loodrecht op de film staat en tegengesteld is aan het veld van een permanente magneet. Dit creĆ«ert een magnetische 'bel' ā een cilindrisch magnetisch domein in de film. Helaas is dit proces sterk temperatuurafhankelijk, wat kan leiden tot een onsuccesvolle voltooiing van de schrijfoperatie, waarbij de bel zich niet vormt, of de vorming van meerdere bellen.
Voor het lezen van gegevens van de film worden verschillende technieken gebruikt.
Een manier, niet-destructief lezen, houdt in dat het zwakke magnetische veld van het cilindrische domein wordt gedetecteerd met behulp van een magnetoresistieve sensor.
De tweede methode is destructief lezen. De bel wordt naar een speciale baan voor generatie/detectie geleid, waar de bel wordt vernietigd door het materiaal in de rechte richting te magnetiseren. Als het materiaal in de tegenovergestelde richting was gemagnetiseerd, dat wil zeggen als er een bel aanwezig was, zal dit een grotere stroom in de spoel veroorzaken, wat door de elektronische schakeling wordt gedetecteerd. Daarna moet de bel opnieuw worden gegenereerd op een speciale schrijfspoor.

Echter, als het geheugen wordt georganiseerd als ƩƩn continu array, heeft het twee belangrijke nadelen. Ten eerste zal de toegangstijd zeer hoog zijn. Ten tweede zal een enkel defect in de keten leiden tot de volledige onbruikbaarheid van het hele apparaat. Daarom wordt geheugen georganiseerd als ƩƩn hoofdspoor en vele ondergeschikte sporen, zoals in de afbeelding weergegeven.

Bubble-geheugen met ƩƩn continu spoor

Bubble-geheugen met hoofd/ondergeschikte sporen
Deze geheugconfiguratie maakt niet alleen een aanzienlijke vermindering van de toegangstijd mogelijk, maar stelt ook in staat om geheugensystemen te produceren met een aantal defecte sporen. De geheugencontroller moet ze in overweging nemen en omzeilen tijdens lees- en schrijfoperaties.
In de onderstaande afbeelding is een dwarsdoorsnede van de 'chip' van het bubble-geheugen te zien.

U kunt ook meer lezen over het werkingsprincipe van bubble-geheugen in [4, 5].
3. Intel 7110
Intel 7110 ā een module voor bubbelgeheugen, MBM (magnetic-bubble memory) met een capaciteit van 1 MB (1048576 bits). Dit is wat op de KDPV is afgebeeld. 1 megabit is de opslagcapaciteit voor gebruikersgegevens; met inbegrip van redundante sporen bedraagt de totale capaciteit 1310720 bits. Het apparaat bevat 320 lusvormige sporen (loops) met elk een capaciteit van 4096 bits, maar voor gebruikersgegevens worden er slechts 256 van gebruikt, de rest is reserve voor het vervangen van 'beschadigde' sporen en voor het opslaan van redundante foutcorrectiecode. Het apparaat heeft een architectuur van 'hoofdspoor-subsporen' (major track-minor loop). Informatie over actieve sporen wordt opgeslagen in een apart opstartspoor (bootstrap loop). Op de KDPV kunt u de hexadecimale code zien die rechtstreeks op de module is afgedrukt. Dit is de kaart van de 'beschadigde' sporen, 80 hexadecimale cijfers representeren 320 datastromen, actieve sporen worden weergegeven door een bit van ƩƩn, niet-actieve door een bit van nul.
U kunt de originele documentatie over de module bekijken in [7].
Het apparaat heeft een behuizing met een dubbele rij pinnen en wordt zonder solderen (in een socket) geĆÆnstalleerd.
De structuur van de module is weergegeven in de afbeelding:

De geheugengegevens zijn verdeeld in twee 'halve secties' (half sections), elke sectie is weer verdeeld in twee 'kwarten' (quads), en elke kwart heeft 80 subsporen. De module bevat een plaat van magnetisch materiaal, geplaatst tussen twee orthogonale spoelen die een roterend magnetisch veld creƫren. Hiervoor worden op de spoelen driehoekige stroompulsen aangelegd, verschoven met 90 graden ten opzichte van elkaar. De assemblage van de plaat en de spoelen is geplaatst tussen permanente magneten en in een magnetisch scherm dat de magnetische flux, gegenereerd door de permanente magneten, sluit en het apparaat beschermt tegen externe magnetische velden. De plaat is onder een hoek van 2,5 graden geplaatst, wat een klein verschuivingsveld creƫert dat langs de helling is gericht. Dit veld is verwaarloosbaar in vergelijking met het veld van de spoelen en verstoort de beweging van de bubbels tijdens de werking van het apparaat niet, maar positioneert de bubbels in vaste posities ten opzichte van de permalloy-elementen wanneer het apparaat is uitgeschakeld. De sterke perpendiculaire component van de permanente magneten ondersteunt het bestaan van bubbelmagnetische domeinen.

De module bevat de volgende eenheden:
- Geheugentracks. Dit zijn de tracks van permalloy-elementen die de bubbels vasthouden en richten.
- Replicator generator. Dit zorgt voor de replicatie van de bubbel die voortdurend aanwezig is op de generatieplaats.
- Ingangs track en uitwisselingsknopen. De gegenereerde bubbels bewegen langs de ingangstrack. Bubbel bewegen naar een van de 80 ondergeschikte tracks.
- Uitgangs track en replicatieknop. Bubbels worden uit de datatracks gelezen zonder deze te vernietigen. De bubbel wordt in twee delen gesplitst, waarvan er een naar de uitgangstrack gaat.
- Detector. Bubbels van de uitgangstrack komen in de magnetoresistieve detector.
- Bootstrack. De bootstrack bevat informatie over actieve en inactieve datatracks.
Hieronder bespreken we deze knopen uitgebreider. U kunt ook de beschrijving van deze knopen bekijken in [6].
Generatie van bubbels

Voor de generatie van een bubbel is er aan het begin van de ingangstrack een geleider, gebogen in de vorm van een klein lusje. Hierin wordt een stroomimpuls aangebracht, die in een zeer klein gebied een magnetisch veld creƫert dat sterker is dan dat van permanente magneten. De impuls creƫert een bubbel op deze plek, die voortdurend wordt ondersteund door een permanent magnetisch veld en langs het permalloy-element circuleert onder invloed van een roterend magnetisch veld. Als we een eenheid in het geheugen willen opslaan, geven we een korte impuls aan de geleiderlus, en daardoor ontstaan er twee bubbels (aangeduid op de afbeelding als Bubble split seed). Een van de bubbels beweegt met het roterende veld langs de permalloy track, terwijl de andere op zijn plaats blijft en snel de originele grootte terugkrijgt. Vervolgens beweegt deze naar een van de ondergeschikte tracks en verwisselt van plaats met de bubbel die erin circuleert. Deze bereikt op zijn beurt het einde van de ingangstrack en verdwijnt.
Bubbels uitwisselen

Het uitwisselen van bubbels gebeurt wanneer er een rechthoekige stroomimpuls op de overeenkomstige geleider wordt aangebracht. Hierbij vindt er geen splitsing van de bubbel in twee delen plaats.
Gegevens lezen

Gegevens worden naar de uitgangsspoor gestuurd door ze te repliceren, en blijven circuleren in hun spoor na het lezen. Zo is er een niet-destructieve manier van lezen in dit apparaat gerealiseerd. Voor de replicatie wordt de luchtbel onder een langwerpig permalloy-element geleid, waardoor deze wordt uitgerekt. Boven bevindt zich ook een geleider in de vorm van een lus. Als er een stroomimpuls in de lus wordt aangebracht, splitst de luchtbel zich in twee delen. De stroomimpuls bestaat uit een kort segment met een hoge stroomsterkte om de luchtbel in twee te splitsen en een langer segment met een lagere stroomsterkte om de luchtbel naar het uitgangsspoor te leiden.
Aan het eind van het uitgangsspoor bevindt zich een luchtbel-detector, een magnetoresistieve brug gemaakt van permalloy-elementen die een lange keten vormen. Wanneer de magnetische luchtbel onder het permalloy-element komt, verandert de weerstand, en verschijnt er een potentiaalverschil van enkele millivolts aan de uitgang van de brug. De vorm van de permalloy-elementen is zo ontworpen dat de luchtbel langs hen beweegt, en aan het einde komt deze op een speciale 'veiligheids' bus en verdwijnt.
Redundantie
Het apparaat bevat 320 sporen, elk met 4096 bits. Daarvan zijn er 272 actief, 48 reserve, niet-actief.
Boot Loop
Het apparaat bevat 320 datapaden, waarvan 256 zijn ontworpen voor de opslag van gebruikersgegevens; de overige kunnen defect zijn of kunnen dienen als reserve ter vervanging van defecten. Eén extra spoor bevat informatie over het gebruik van de datasporen, met 12 bits per spoor. Wanneer het systeem van stroom wordt voorzien, moet het worden geïnitialiseerd. Tijdens de initialisatie moet de controller het bootspoor lezen en de informatie ervan in een speciaal register van de formatterings-/stroomdetectie chip schrijven. Dan zal de controller alleen de actieve sporen gebruiken, terwijl de niet-actieve worden genegeerd en er geen gegevens in worden geschreven.
Gegevensopslag - structuur
Vanuit het oogpunt van de gebruiker worden de gegevens opgeslagen in 2048 pagina's van elk 512 bits. 256 bytes aan gegevens, 14 bits foutcorrectiecode en 2 ongebruikte bits worden opgeslagen in elke helft van het apparaat.
Foutcorrectie
Foutdetectie en correctie kan worden uitgevoerd door de stroomdetectorchip, die een 14-bits decodering bevat die enkele fouten tot 5 bits (burst error) in elk blok van 270 bits (inclusief de code zelf) corrigeert. De code wordt aan het einde van elk blok van 256 bits toegevoegd. De correctiecode kan al of niet door de gebruiker worden gebruikt; de controle van de code kan in de controller in- of uitgeschakeld worden. Als de code niet wordt gebruikt, kunnen alle 270 bits voor gebruikersdata worden gebruikt.
Toegangstijd
Het magnetische veld draait met een frequentie van 50 kHz. De gemiddelde toegangstijd tot de eerste bit van de eerste pagina is 41 ms, dit is de helft van de tijd die nodig is voor het voltooien van een volledige cyclus over de track plus de tijd voor het passeren van de uitgangs-track.
320 actieve en reserve tracks zijn verdeeld in vier delen van 80 tracks elk. Deze organisatie verkort de toegangstijd. De kwartstukken worden paargewijs aangesproken: elk paar kwartstukken bevat respectievelijk de even en oneven bits van het woord. Het apparaat bevat vier ingangs-tracks met vier initiƫle bubbels, en vier uitgaande tracks. De uitgaande tracks gebruiken twee detectors, en zijn zo georganiseerd dat nooit twee bubbels van twee tracks tegelijkertijd in dezelfde detector terechtkomen. Op deze manier worden vier stromen bubbels gemultiplexed en omgezet in twee stromen bits en opgeslagen in de registers van de stroomdetectorchip. Daar wordt de inhoud van de registers opnieuw gemultiplexed en via de seriƫle interface naar de controller gestuurd.
In het tweede deel van het artikel zullen we dieper ingaan op de schakelingen van de bubblegeheugencontroller.
4. Literatuurlijst
De auteur heeft in de donkerste hoeken van het internet bruikbare technische informatie over CMD-geheugen, de geschiedenis en andere gerelateerde aspecten verzameld en voor u bewaard:
1. ā Twee geheugens van ingenieur Bobek
2. ā Twee geheugens van ingenieur Bobek (deel 2)
3. ā Bubble geheugen
4. Adaptatie van Magnetisch Bubble Geheugen in een Standaard Microcomputeromgeving
5. ā Texas Instruments TIB 0203 Bubble Geheugen
6. ā Geheugencomponenten Handboek. Intel 1983.
7. 7110 1-Megabit Bubble Geheugen
Bron: habr.com
