Elektrycznie kasowalna programowalna pamięć tylko do odczytu ( EEPROM ):
Jeśli korzysta z pamięci tylko do odczytu ( ROM ), to w jaki sposób mogę do niej pisać ?
Elektrycznie kasowalna programowalna pamięć tylko do odczytu ( EEPROM ):
Jeśli korzysta z pamięci tylko do odczytu ( ROM ), to w jaki sposób mogę do niej pisać ?
Odpowiedzi:
Akronim pamięci EEPROM ma pewną historię, która wynika z rozwoju technologii.
ROM : pamięć tylko do odczytu. Napisane w fabryce.
PROM : Programowalna pamięć tylko do odczytu, ale programowalna (raz) przez użytkownika. Naprawdę jednorazowa, programowalna, zawsze czytelna pamięć. Źle to zrobisz i zrzucisz chip.
EPROM : kasowalna programowalna pamięć tylko do odczytu. Zwykle usuwany za pomocą światła UV przez okienko kwarcowe nad mikroukładem. Trochę kłopotów, ale bardzo przydatne.
EEPROM : Elektrycznie kasowalna programowalna pamięć tylko do odczytu. Można usunąć lub ponownie napisać pod kontrolą programu.
Rysunek 1. Intel 1702A EPROM, jeden z najwcześniejszych typów EPROM, 256 na 8 bitów. Małe okno kwarcowe przepuszcza światło UV w celu skasowania. Źródło: Wikipedia EPROM .
Więc słyszę, jak mówisz, dlaczego nazywają to eepROm, gdy można to zapisać? Podejrzewam, że odpowiedź na to pytanie jest taka, że w przeciwieństwie do RAM ( pamięci o dostępie swobodnym) zachowuje swoją zawartość podczas cyklu zasilania i dlatego zachowuje się bardziej jak ROM .
RAM
przechowywania danych poza cyklem zasilania i znalazłem ten mały klejnot , który może Cię zainteresować.
Zaskakuje mnie, ilu komentatorów uważa, że termin ROM jest wyłącznie chwytem marketingowym lub odnosi się tylko do utraty danych po wyłączeniu zasilania.
PROM jest bardzo „tylko do odczytu”, w kwalifikowanym sensie, że pisanie do niego w taki sam sposób i kontekst, jak w przypadku „równoważnej” pamięci RAM jest niemożliwe. Wynika to z faktu, że E / EPROM wymaga:
... wszystko to oznacza, że zapis w takiej pamięci jest powolny, nie można go skutecznie przeplatać operacjami odczytu, aktywnie zużywa układ itp.
PROM należy do zupełnie innej ligi niż pamięć RAM z równoważnymi specyfikacjami odczytu. Dlatego nie był sprzedawany jako jakakolwiek forma pamięci RAM. Luz byłby kolosalny!
Moglibyśmy więc nazwać to pamięcią głównie do odczytu lub, dla pedałów, EWRPROM: w końcu zapisywalna, pamięć wykonawcza praktycznie tylko do odczytu ... ale w praktyce ROM jest strzałem w dziesiątkę.
Wcześniej programowalne urządzenia pamięci miały być zapisywane po podłączeniu do jednego urządzenia, a następnie czytane po podłączeniu do innego. Podczas gdy urządzenia można ogólnie odczytać w urządzeniu do programowania (więc urządzenie do programowania może potwierdzić, że zostały poprawnie zapisane), programowanie urządzeń często wymagałoby zastosowania nietypowych napięć, które nie byłyby dostępne w większości urządzeń, które musiały je odczytać. Ponadto operacje zapisu były o rząd wielkości wolniejsze niż operacje odczytu. Późniejsze urządzenia zostały ulepszone w celu wyeliminowania takich wymagań, umożliwiając ich programowanie w urządzeniu, w którym będzie używane po programowaniu, ale różnica między prędkościami odczytu i zapisu pozostaje.
Można go wymazywać elektrycznie, więc możesz do niego pisać.
Nie ma sensu rozszerzanie pamięci ROM na słowa. Ale rozumiem, że EPROM został tak nazwany przez jego wynalazcę, Intela, jako zachęta marketingowa, która oznaczała „Tak jak ROM - ale możesz to zmienić samodzielnie”. Działo się to w świecie z 1972 roku, w którym ROM oznaczał kilka tysięcy za zmianę maski.
EEPROM wynika z tego precedensu.
Podczas pisania pytania odkryłem potencjalną odpowiedź
Patrząc na ten artykuł ROM na Wikipedii , wygląda na to, że niektóre ROM pozwolą na pisanie, ale jeśli tak, to prędkość zapisu będzie wolna lub pisanie ogólnie będzie trudne, jeśli to możliwe.
Kolejną fascynującą ciekawostką jest to, że pamięć EEPROM ma ograniczoną liczbę przypadków, w których można ją zapisać. W artykule wspomniano, że pamięć EEPROM można czyścić i zapisywać tysiące razy, ale nadal!
EEPROM, a nawet pamięci Flash wykorzystują ewolucję tej samej technologii (pływająca brama), z której korzystają EPROMy, a nie technologii, która byłaby używana w urządzeniach SRAM lub DRAM.
EEPROM są silnie asymetryczne w zachowaniu odczytu względem zapisu: cykle odczytu są praktycznie nieograniczone, szybkie (dziesiątki lub setki nanosekund) i zawsze możliwe tylko przy zastosowaniu głównych napięć roboczych. Cykle zapisu są znacznie wolniejsze i czasami wymagają zastosowania dodatkowych napięć (EEPROM równoległy 2816 będzie wymagał dodatkowego zasilania 12V dla niektórych operacji programowania i będzie miał czas zapisu w setkach mikrosekund lub nawet wolniejszy, w zależności od dokładnej marki i modelu, oraz mają ograniczone cykle zapisu).
Pamięci flash nie mają losowego dostępu do pisania (nadpisanie słowa wymaga usunięcia więcej niż słowa), niektóre typy (NAND) nie mają nawet losowego dostępu do czytania.
Zauważ, że niektóre (nie wszystkie!) Urządzenia sprzedawane jako PROM lub ROM były wewnętrznie OTP (bez okien) EPROM.
To tylko ROM w porównaniu do Volatile RAM (pamięć o dostępie swobodnym, która straci swój stan po utracie zasilania). Dawne nazewnictwo, które nie ma już sensu po dziesięcioleciach.
EPROM / PROM ODCZYTA SIĘ TYLKO w RUNTIME. Po uruchomieniu zamierzonej aplikacji (komputer, wbudowany kontroler itp.) Nie można jej zapisać w uruchomionym programie. Musisz go wyjąć i wprowadzić do specjalnego aparatu do pisania, w którym zapisujesz całą zawartość na raz.
Jak wskazano mi w komentarzach, pamięć EEPROM może być skonfigurowana do zapisywania w czasie wykonywania, ponieważ jest zapisywalna elektronicznie. Ale w codziennym użyciu nie można go zapisać, architektura zwykle temu uniemożliwia. Zwykle używasz specjalnego narzędzia „flash” dostarczonego przez producenta, aby uzyskać do niego dostęp i pisać, i zwykle jest zapisywane naraz, a nie w trybie losowego dostępu. Ktoś w powyższej odpowiedzi wymyślił duży akronim, który miałby zastosowanie.
Pamięć RAM, w tym NVRAM, może być zapisywana w czasie wykonywania przez urządzenie hosta.
Chociaż cała pamięć ROM jest nieulotna, a MOST RAM jest lotna, NVRAM jest nieulotny, więc nie jest to jedyna dostrzegalna różnica między nimi.