Pamięć na cylindrycznych domenach magnetycznych. Część 1. Jak to działa

Pamięć na cylindrycznych domenach magnetycznych. Część 1. Jak to działa
Zdjęcie ze zbiorów autora

1. Historia

Pamięć bąbelkowa lub cylindryczna pamięć z domeną magnetyczną to pamięć nieulotna opracowana w Bell Labs w 1967 roku przez Andrew Bobecka. Badania wykazały, że małe cylindryczne domeny magnetyczne tworzą się w cienkich warstwach monokrystalicznych ferrytów i granatów, gdy odpowiednio silne pole magnetyczne jest skierowane prostopadle do powierzchni warstwy. Zmieniając pole magnetyczne, te bąbelki można przesuwać. Takie właściwości sprawiają, że bańki magnetyczne idealnie nadają się do budowy szeregowych pamięci bitowych, takich jak rejestr przesuwny, w którym obecność lub brak bańki w określonej pozycji wskazuje na zero lub jedną wartość bitową. Bańka ma średnicę dziesiątych części mikrona, a pojedynczy chip może przechowywać tysiące bitów danych. Na przykład wiosną 1977 roku firma Texas Instruments po raz pierwszy wprowadziła na rynek chip o pojemności 92304 bitów. Ta pamięć jest nieulotna, co upodabnia ją do taśmy magnetycznej lub dysku, ale ponieważ jest półprzewodnikowa i nie ma ruchomych części, jest bardziej niezawodna niż taśma lub dysk, nie wymaga konserwacji oraz jest znacznie mniejsza i lżejsza. może być używany w urządzeniach przenośnych.

Początkowo wynalazca pamięci bąbelkowej, Andrzej Bobek, zaproponował „jednowymiarową” wersję pamięci, w postaci nici, wokół której nawinięty jest cienki pasek materiału ferromagnetycznego. Taka pamięć była nazywana pamięcią „twistorową” i była nawet produkowana masowo, ale wkrótce została wyparta przez wersję „dwuwymiarową”.

O historii powstania pamięci bąbelkowej można przeczytać w [1-3].

2. Zasada działania

Tutaj proszę o wybaczenie, nie jestem fizykiem, więc prezentacja będzie bardzo przybliżona.

Niektóre materiały (takie jak granat gadolinowo-galowy) mają właściwość magnesowania tylko w jednym kierunku, a jeśli wzdłuż tej osi zostanie przyłożone stałe pole magnetyczne, namagnesowane obszary utworzą coś w rodzaju bąbelków, jak pokazano na poniższym rysunku. Każda bańka ma zaledwie kilka mikronów średnicy.

Załóżmy, że mamy cienką, rzędu 0,001 cala, warstwę krystaliczną takiego materiału osadzonego na podłożu niemagnetycznym, takim jak szkło.

Pamięć na cylindrycznych domenach magnetycznych. Część 1. Jak to działa
Chodzi o magiczne bańki. Zdjęcie po lewej - nie ma pola magnetycznego, zdjęcie po prawej - pole magnetyczne jest skierowane prostopadle do powierzchni filmu.

Jeśli na powierzchni folii z takiego materiału utworzy się wzór z materiału magnetycznego, na przykład permalloy, stopu żelazowo-niklowego, wówczas bąbelki zostaną namagnesowane na elementy tego wzoru. Zazwyczaj stosuje się wzory w postaci elementów w kształcie litery T lub V.

Pojedyncza bańka może być utworzona przez pole magnetyczne o natężeniu 100-200 oerstedów, które jest przyłożone prostopadle do folii magnetycznej i jest wytwarzane przez magnes trwały, a wirujące pole magnetyczne utworzone przez dwie cewki w kierunkach XY umożliwia poruszanie się domeny bąbelkowe z jednej „wyspy” magnetycznej na drugą, jak pokazano na rysunku. Po czterokrotnej zmianie kierunku pola magnetycznego domena przesunie się z jednej wyspy na drugą.

Pamięć na cylindrycznych domenach magnetycznych. Część 1. Jak to działa

Wszystko to pozwala nam uznać urządzenie CMD za rejestr przesuwny. Jeśli utworzymy bąbelki na jednym końcu rejestru i wykryjemy je na drugim, wtedy możemy wydmuchać określony wzór bąbelków dookoła i użyć systemu jako urządzenia pamięci, odczytując i zapisując bity w określonych momentach.

Stąd zalety i wady pamięci CMD: zaletą jest niezależność energetyczna (o ile przyłożone jest prostopadłe pole wytwarzane przez magnesy trwałe, bąbelki nigdzie nie znikają i nie przemieszczają się ze swoich pozycji), a wadą jest długi czas dostępu, ponieważ aby uzyskać dostęp do dowolnego bitu, musisz przewinąć cały rejestr przesuwny do żądanej pozycji, a im dłużej, tym więcej cykli będzie to wymagało.

Pamięć na cylindrycznych domenach magnetycznych. Część 1. Jak to działa
Wzór elementów magnetycznych na folii magnetycznej CMD.

Tworzenie domeny magnetycznej nazywane jest po angielsku „nukleacją” i polega na tym, że przez czas około 100 ns przykłada się do uzwojenia prąd o natężeniu kilkuset miliamperów i powstaje pole magnetyczne prostopadłe do filmu i przeciwnie do pola magnesu trwałego. Tworzy to magnetyczną „bańkę” - cylindryczną domenę magnetyczną w filmie. Proces ten jest niestety w dużym stopniu zależny od temperatury, możliwe jest, że operacja zapisu zakończy się niepowodzeniem bez utworzenia bąbelka lub powstanie wielu bąbelków.

Do odczytu danych z filmu stosuje się kilka technik.

Jednym ze sposobów, nieniszczącego odczytu, jest wykrycie słabego pola magnetycznego domeny cylindrycznej za pomocą czujnika magnetorezystancyjnego.

Drugi sposób to czytanie destrukcyjne. Pęcherzyk kierowany jest na specjalny tor generowania/detekcji, gdzie bąbelek jest niszczony przez namagnesowanie materiału w przód. Gdyby materiał był namagnesowany odwrotnie, tj. obecny był pęcherzyk, spowodowałoby to zwiększenie prądu w cewce, co zostałoby wykryte przez obwód elektroniczny. Następnie bańka musi zostać ponownie wygenerowana na specjalnej ścieżce do nagrywania.
Pamięć na cylindrycznych domenach magnetycznych. Część 1. Jak to działa

Jeśli jednak pamięć jest zorganizowana jako jedna ciągła tablica, będzie miała dwie duże wady. Po pierwsze, czas dostępu będzie bardzo długi. Po drugie, pojedyncza wada w łańcuchu doprowadzi do całkowitej niesprawności całego urządzenia. Tworzą więc pamięć zorganizowaną w postaci jednej ścieżki głównej i wielu ścieżek podrzędnych, jak pokazano na rysunku.

Pamięć na cylindrycznych domenach magnetycznych. Część 1. Jak to działa
Pamięć bąbelkowa z jedną ciągłą ścieżką

Pamięć na cylindrycznych domenach magnetycznych. Część 1. Jak to działa
Pamięć bąbelkowa ze ścieżkami master/slave

Taka konfiguracja pamięci pozwala nie tylko znacznie skrócić czas dostępu, ale także umożliwia produkcję nośników pamięci zawierających określoną liczbę wadliwych ścieżek. Kontroler pamięci musi je uwzględniać i omijać podczas operacji odczytu/zapisu.

Poniższy rysunek przedstawia przekrój „chipu” pamięci bąbelkowej.

Pamięć na cylindrycznych domenach magnetycznych. Część 1. Jak to działa

O zasadzie pamięci bąbelkowej można również przeczytać w [4, 5].

3. Intel 7110

Intel 7110 - moduł pamięci bąbelkowej, MBM (magnetic-bubble memory) o pojemności 1 MB (1048576 bitów). To on jest przedstawiony na KDPV. 1 megabit to pojemność do przechowywania danych użytkownika, z uwzględnieniem redundantnych ścieżek, łączna pojemność to 1310720 bitów. Urządzenie zawiera 320 zapętlonych ścieżek (pętli) o pojemności 4096 bitów każda, ale tylko 256 z nich jest wykorzystywanych na dane użytkownika, reszta to rezerwa na wymianę „zepsutych” ścieżek i przechowywanie nadmiarowego kodu korekcji błędów. Urządzenie ma architekturę głównej pętli podrzędnej. Informacje o aktywnych ścieżkach są zawarte w oddzielnej ścieżce rozruchowej (pętla ładowania początkowego). Na KDPV możesz zobaczyć kod szesnastkowy wydrukowany bezpośrednio na module. To jest mapa „zepsutych” ścieżek, 80 cyfr szesnastkowych reprezentuje 320 ścieżek danych, aktywne są reprezentowane przez pojedynczy bit, nieaktywne przez zero.

Oryginalną dokumentację modułu można przeczytać w [7].

Urządzenie posiada obudowę z dwurzędowym układem pinów i jest montowane bez lutowania (w gnieździe).

Strukturę modułu pokazano na rysunku:

Pamięć na cylindrycznych domenach magnetycznych. Część 1. Jak to działa

Macierz pamięci jest podzielona na dwie „półsekcje” (półsekcje), z których każda jest podzielona na dwie „ćwiartki” (quady), każda ćwiartka ma 80 ścieżek podrzędnych. Moduł zawiera płytkę z materiałem magnetycznym umieszczoną wewnątrz dwóch ortogonalnych uzwojeń, które wytwarzają wirujące pole magnetyczne. Aby to zrobić, do uzwojeń przykładane są sygnały prądowe o kształcie trójkąta, przesunięte względem siebie o 90 stopni. Zespół płytki i uzwojeń umieszcza się pomiędzy magnesami trwałymi i umieszcza w osłonie magnetycznej, która zamyka strumień magnetyczny generowany przez magnesy trwałe i osłania urządzenie przed zewnętrznymi polami magnetycznymi. Płyta jest umieszczona pod kątem 2,5 stopnia, co tworzy małe pole przemieszczeń wzdłuż zbocza. Pole to jest znikome w porównaniu z polem cewek i nie zakłóca ruchu pęcherzyków podczas pracy urządzenia, ale przesuwa pęcherzyki do stałych pozycji względem elementów permallojowych, gdy urządzenie jest wyłączone. Silna prostopadła składowa magnesów trwałych potwierdza istnienie bąbelkowych domen magnetycznych.

Pamięć na cylindrycznych domenach magnetycznych. Część 1. Jak to działa

Moduł zawiera następujące węzły:

  1. Ślady pamięci. Bezpośrednio te ślady elementów permallojowych, które utrzymują i prowadzą bąbelki.
  2. generator replikacji. Służy do replikacji bańki, która jest stale obecna w miejscu generacji.
  3. Wprowadź ścieżkę i wymień węzły. Wygenerowane bąbelki poruszają się po ścieżce wejściowej. Bąbelki są przenoszone na jedną z 80 ścieżek niewolników.
  4. Węzeł ścieżki wyjściowej i replikacji. Bąbelki są usuwane ze ścieżek danych bez ich niszczenia. Bańka dzieli się na dwie części, z których jedna trafia na tor wyjściowy.
  5. Detektor. Pęcherzyki z toru wyjściowego wchodzą do detektora magnetorezystancyjnego.
  6. Ładowanie ścieżki. Ścieżka startowa zawiera informacje o aktywnych i nieaktywnych ścieżkach danych.

Poniżej przyjrzymy się tym węzłom bardziej szczegółowo. Możesz także przeczytać opis tych węzłów w [6].

generacja bąbelków

Pamięć na cylindrycznych domenach magnetycznych. Część 1. Jak to działa

Aby wygenerować bańkę, na samym początku toru wejściowego znajduje się przewodnik zagięty w postaci maleńkiej pętli. Przykładany jest do niego impuls prądu, który wytwarza pole magnetyczne na bardzo małym obszarze silniejsze niż pole magnesów trwałych. Impuls tworzy w tym miejscu bańkę, która pozostaje stale utrzymywana przez stałe pole magnetyczne i krąży wzdłuż elementu permalojowego pod działaniem wirującego pola magnetycznego. Jeśli musimy zapisać jednostkę w pamięci, przykładamy krótki impuls do pętli przewodzącej, w wyniku czego powstają dwa bąbelki (oznaczone na rysunku jako ziarno rozszczepione bąbelkiem). Jeden z bąbelków jest pędzony przez wirujące pole wzdłuż permalojowego toru, drugi pozostaje na swoim miejscu i szybko uzyskuje swój pierwotny rozmiar. Następnie przesuwa się na jeden z torów niewolników i zamienia się miejscami z krążącym w nim bąbelkiem. To z kolei dochodzi do końca ścieżki wejściowej i znika.

wymiana bąbelków

Pamięć na cylindrycznych domenach magnetycznych. Część 1. Jak to działa

Wymiana pęcherzyków występuje, gdy prostokątny impuls prądu jest przykładany do odpowiedniego przewodnika. W tym przypadku bańka nie dzieli się na dwie części.

Czytanie danych

Pamięć na cylindrycznych domenach magnetycznych. Część 1. Jak to działa

Dane są wysyłane na ścieżkę wyjściową przez replikację i krążą na swojej ścieżce po odczytaniu. Urządzenie to realizuje więc nieniszczącą metodę odczytu. W celu replikacji bańka jest prowadzona pod wydłużonym elementem z permaloju, pod którym jest rozciągana. Powyżej znajduje się również przewodnik w postaci pętli, jeśli do pętli zostanie przyłożony impuls prądu, bańka zostanie podzielona na dwie części. Impuls prądowy składa się z krótkiego odcinka z dużym prądem, który dzieli bańkę na dwie części, oraz dłuższej sekcji z mniejszym prądem, która kieruje bańkę na tor wyjściowy.

Na końcu toru wyjściowego znajduje się Bubble Detector, magnetorezystancyjny mostek wykonany z elementów permallojowych tworzących długi obwód. Kiedy bańka magnetyczna wpada pod element permallojowy, zmienia się jej rezystancja, a na wyjściu mostka pojawia się różnica potencjałów rzędu kilku miliwoltów. Kształt elementów z permalloyu dobierany jest tak, aby bąbel poruszał się wzdłuż nich, na końcu uderza w specjalną „strażniczą” oponę i znika.

Nadmierność

Urządzenie zawiera 320 ścieżek, każda po 4096 bitów. Spośród nich 272 jest aktywnych, 48 jest zapasowych, nieaktywnych.

Ścieżka rozruchowa (pętla rozruchowa)

Urządzenie zawiera 320 ścieżek danych, z czego 256 jest przeznaczonych do przechowywania danych użytkownika, pozostałe mogą być uszkodzone lub mogą służyć jako zapasowe do zastąpienia uszkodzonych. Jedna dodatkowa ścieżka zawiera informacje o wykorzystaniu ścieżek danych, 12 bitów na ścieżkę. Po uruchomieniu systemu należy go zainicjować. Podczas procesu inicjalizacji kontroler musi odczytać ścieżkę rozruchową i zapisać z niej informacje do specjalnego rejestru układu formatującego / czujnika prądu. Wtedy sterownik będzie używał tylko aktywnych ścieżek, a nieaktywne będą ignorowane i nie będą do nich zapisywane.

Hurtownia Danych - Struktura

Z punktu widzenia użytkownika dane są przechowywane na 2048 stronach po 512 bitów każda. W każdej połowie urządzenia przechowywanych jest 256 bajtów danych, 14 bitów kodu korekcji błędów i 2 nieużywane bity.

Korekcja błędów

Wykrywanie i korekcja błędów może być przeprowadzana przez chip czujnika prądu, który zawiera 14-bitowy dekoder kodu, który koryguje pojedynczy błąd o długości do 5 bitów (błąd serii) w każdym bloku 270 bitów (w tym sam kod). Kod jest dołączany na końcu każdego 256-bitowego bloku. Kod korekcji można wykorzystać lub nie, na życzenie użytkownika weryfikację kodu można włączyć lub wyłączyć w sterowniku. Jeśli nie jest używany żaden kod, wszystkie 270 bitów można wykorzystać do danych użytkownika.

Czas dostępu

Pole magnetyczne wiruje z częstotliwością 50 kHz. Średni czas dostępu do pierwszego bitu pierwszej strony wynosi 41 ms, co stanowi połowę czasu potrzebnego na ukończenie pełnego cyklu przez ścieżkę plus czas potrzebny na przejście przez ścieżkę wyjściową.

320 aktywnych i zapasowych torów jest podzielonych na cztery części po 80 torów każda. Taka organizacja skraca czas dostępu. Ćwiartki są adresowane parami: każda para ćwiartek zawiera odpowiednio parzyste i nieparzyste bity słowa. Urządzenie zawiera cztery ścieżki wejściowe z czterema początkowymi bąbelkami i cztery ścieżki wyjściowe. Tory wyjściowe wykorzystują dwa detektory, są one zorganizowane w taki sposób, aby dwa bąbelki z dwóch torów nigdy nie trafiły na jeden detektor w tym samym czasie. W ten sposób cztery strumienie bąbelków są multipleksowane i przekształcane w dwa strumienie bitów i przechowywane w rejestrach chipa czujnika prądu. Tam zawartość rejestrów jest ponownie multipleksowana i przesyłana interfejsem szeregowym do sterownika.

W drugiej części artykułu przyjrzymy się bliżej obwodom kontrolera pamięci bąbelkowej.

4. Referencje

Autor znalazł w najciemniejszych zakamarkach sieci i zapisał dla Was wiele przydatnych informacji technicznych na temat pamięci na CMD, jej historii i innych powiązanych aspektów:

1. https://old.computerra.ru/vision/621983/ — Dwa wspomnienia inżyniera Bobka
2. https://old.computerra.ru/vision/622225/ - Dwa wspomnienia inżyniera Bobka (część 2)
3. http://www.wikiwand.com/en/Bubble_memory — Pamięć bąbelkowa
4. https://cloud.mail.ru/public/3qNi/33LMQg8Fn Adaptacja magnetycznej pamięci bąbelkowej w standardowym środowisku mikrokomputerowym
5. https://cloud.mail.ru/public/4YgN/ujdGWtAXf — Pamięć bąbelkowa Texas Instruments TIB 0203
6. https://cloud.mail.ru/public/4PRV/5qC4vyjLa — Podręcznik elementów pamięci. Inteligo 1983.
7. https://cloud.mail.ru/public/4Mjv/41Xrp4Rii 7110 1-megabitowa pamięć bąbelkowa

Źródło: www.habr.com

Dodaj komentarz