Pamięć tylko do odczytu
Romedit z komponentem dyskretnym
IBM używał pamięci tylko do odczytu kondensatorów (Cros) i pamięci tylko do odczytu transformatorów (TROS) do przechowywania mikrokodu dla mniejszych modeli System/360, 360/85 i dwóch pierwszych modeli System/370 (370/155 i 370/165). W niektórych modelach dostępny był również zapisywalny magazyn kontrolny (WCS) dla dodatkowej diagnostyki i obsługi emulacji. Komputer naprowadzający Apollo wykorzystywał pamięć Lin rdzeniowych, programowaną przez gwintowanie przewodów przez rdzenie magnetyczne.,
Solid-state ROMEdit
wiele konsol do gier używa wymiennych kartridży ROM, dzięki czemu jeden system może grać w wiele gier.
najprostszy typ pamięci półprzewodnikowej ROM jest tak stary, jak sama technologia półprzewodnikowa. Kombinacyjne bramki logiczne mogą być łączone ręcznie, aby mapować N-bitowy adres wejściowy na dowolne wartości m-bitowego wyjścia danych (tabela wyszukiwania). Wraz z wynalezieniem układu scalonego przyszedł Maska ROM., Mask ROM składa się z siatki linii słów (wejście adresu) i linii bitowych (wyjście danych), selektywnie połączonych ze sobą przełącznikami tranzystorowymi i może reprezentować dowolną tabelę z regularnym fizycznym układem i przewidywalnym opóźnieniem propagacji.
w pamięci mask ROM dane są fizycznie zakodowane w obwodzie, więc można je zaprogramować tylko podczas produkcji. Prowadzi to do wielu poważnych wad:
- opłacalne jest kupowanie maski ROM w dużych ilościach, ponieważ użytkownicy muszą zawrzeć umowę z odlewnią, aby wyprodukować niestandardowy projekt.,
- czas realizacji między ukończeniem projektu pamięci ROM maski a otrzymaniem gotowego produktu jest długi, z tego samego powodu.
- Maska ROM jest niepraktyczna dla R&D działa, ponieważ projektanci często muszą modyfikować zawartość pamięci podczas udoskonalania projektu.
- jeśli produkt jest dostarczany z wadliwą pamięcią ROM maski, jedynym sposobem na jej naprawienie jest wycofanie produktu i fizyczna wymiana pamięci ROM w każdej wysyłanej jednostce.
kolejne zmiany rozwiązały te niedociągnięcia., Programowalna pamięć tylko do odczytu (PROM), wynaleziona przez Wen Tsing Chow w 1956 roku, pozwoliła użytkownikom zaprogramować jej zawartość dokładnie raz, fizycznie zmieniając jej strukturę za pomocą impulsów wysokiego napięcia. Dotyczy to problemów 1 i 2 powyżej, ponieważ firma może po prostu zamówić dużą partię świeżych żetonów PROM i zaprogramować je z pożądaną zawartością na wygodę projektantów.,
pojawienie się tranzystora MOSFET (metal–oxide–semiconductor field effect transistor), wynalezionego w Bell Labs w 1959 roku, umożliwiło praktyczne zastosowanie tranzystorów metal–oxide–semiconductor (MOS) jako elementów pamięci komórkowej w pamięci półprzewodnikowej, funkcji wcześniej obsługiwanej przez rdzenie magnetyczne w pamięci komputera. W 1967 roku Dawon Kahng i Simon Sze z Bell Labs zaproponowali, że pływające wrota urządzenia półprzewodnikowego Mos mogą być wykorzystane do komórki przeprogramowywalnego ROM, co doprowadziło Dov Frohman z Intela wynalezienie erasable programmable read-only memory (EPROM) w 1971 roku., 1971 wynalazek EPROM zasadniczo rozwiązał problem 3, ponieważ EPROM (w przeciwieństwie do PROM) może być wielokrotnie resetowany do stanu nieprogramowanego przez ekspozycję na silne światło ultrafioletowe.
elektronicznie Kasowalna programowalna pamięć tylko do odczytu (EEPROM), opracowana przez Yasuo Tarui, Yutakę Hayashiego i Kiyoko Nagę w laboratorium elektrotechnicznym w 1972 roku, przeszła długą drogę do rozwiązania problemu 4, ponieważ pamięć EEPROM może być zaprogramowana na miejscu, jeśli urządzenie zawierające urządzenie zapewnia środki do odbioru zawartości programu z zewnętrznego źródła (na przykład komputera osobistego za pomocą kabla szeregowego)., Pamięć Flash, wynaleziona przez Fujio Masuoka w firmie Toshiba na początku lat 80. i skomercjalizowana pod koniec lat 80., jest formą pamięci EEPROM, która bardzo wydajnie wykorzystuje obszar chipów i może być wymazywana i przeprogramowywana tysiące razy bez uszkodzeń. Pozwala na kasowanie i programowanie tylko określonej części urządzenia, a nie całego urządzenia. Można to zrobić z dużą prędkością, stąd nazwa „flash”.
wszystkie te technologie poprawiły elastyczność pamięci ROM, ale przy znacznym koszcie na chip, tak że w dużych ilościach pamięć ROM pozostawałaby ekonomicznym wyborem przez wiele lat., (Zmniejszenie kosztów przeprogramowalnych urządzeń prawie wyeliminowało rynek Mask ROM do roku 2000.) Technologie nadające się do wielokrotnego zapisu były przewidywane jako zamienniki pamięci ROM.
najnowszym rozwinięciem jest NAND flash, również wynaleziony w firmie Toshiba. Jego projektanci wyraźnie zerwali z wcześniejszą praktyką, stwierdzając wyraźnie, że” celem NAND flash jest zastąpienie dysków twardych”, a nie tradycyjnego wykorzystania pamięci ROM jako formy nieulotnej podstawowej pamięci masowej., Od 2007 r. NAND częściowo osiągnęło ten cel, oferując przepustowość porównywalną z dyskami twardymi, wyższą tolerancję wstrząsów fizycznych, ekstremalną miniaturyzację (np. w postaci dysków flash USB i małych kart pamięci microSD)i znacznie niższe zużycie energii.,
Użyj do przechowywania programówedytuj
każdy komputer przechowujący program może używać nieulotnej pamięci masowej (tj. pamięci, która zachowuje swoje dane po usunięciu zasilania) do przechowywania początkowego programu, który działa, gdy komputer jest włączony lub w inny sposób rozpoczyna wykonywanie (proces znany jako bootstrapping, często w skrócie „booting” lub „booting up”). Podobnie, każdy nietrywialny komputer potrzebuje jakiejś formy mutowalnej pamięci, aby rejestrować zmiany w swoim stanie podczas wykonywania.,
formy pamięci tylko do odczytu były używane jako nieulotna pamięć dla programów w większości wczesnych komputerów z zapisanymi programami, takich jak ENIAC po 1948 roku. (Do tego czasu nie byĹ 'to komputer zaprogramowany, poniewaĺľ kaĺľdy program musiaĹ' byÄ ‡ rÄ ™ cznie podłączony do maszyny, co mogĹ ' o potrwaÄ ‡ dni do tygodni.) Pamięć tylko do odczytu była prostsza do zaimplementowania, ponieważ potrzebowała jedynie mechanizmu do odczytu zapisanych wartości, a nie do zmiany ich na miejscu, a więc mogła być zaimplementowana przy użyciu bardzo prymitywnych urządzeń elektromechanicznych (patrz przykłady historyczne poniżej)., Wraz z pojawieniem się układów scalonych w latach sześćdziesiątych, zarówno ROM, jak i jego zmienny odpowiednik statyczna PAMIĘĆ RAM zostały zaimplementowane jako tablice tranzystorów w układach krzemowych; jednak komórka pamięci ROM może być zaimplementowana przy użyciu mniejszej liczby tranzystorów niż komórka pamięci SRAM, ponieważ ta ostatnia potrzebuje zatrzasku (zawierającego 5-20 tranzystorów), aby zachować swoją zawartość, podczas gdy komórka ROM może składać się z braku (logiczne 0) lub obecności (logiczne 1) jednego tranzystora łączącego linię bitową z linią słowa. W związku z tym ROM może być zaimplementowany po niższych kosztach NA bit niż RAM przez wiele lat.,
większość komputerów domowych z lat 80.przechowywała podstawowy interpreter lub system operacyjny w pamięci ROM, ponieważ inne formy nieulotnej pamięci masowej, takie jak dyski magnetyczne, były zbyt kosztowne. Na przykład Commodore 64 zawierał 64 KB pamięci RAM, a 20 KB pamięci ROM zawierał podstawowy interpreter i „KERNAL” swojego systemu operacyjnego., Późniejsze komputery domowe lub biurowe, takie jak IBM PC XT, często zawierały dyski magnetyczne i większe ilości pamięci RAM, umożliwiając im Ładowanie systemów operacyjnych z dysku DO PAMIĘCI RAM, z minimalnym rdzeniem inicjalizacji sprzętu i bootloaderem pozostałym w pamięci ROM (znanym jako BIOS w komputerach kompatybilnych z IBM). Układ ten pozwolił na bardziej złożony i łatwy do rozbudowy system operacyjny.,
w nowoczesnych komputerach „ROM” jest używany do przechowywania podstawowego oprogramowania startowego procesora, a także różnych firmware potrzebnych do wewnętrznego sterowania urządzeniami samowystarczalnymi, takimi jak karty graficzne, dyski twarde, dyski półprzewodnikowe, napędy dysków optycznych, Ekrany TFT itp., w systemie. Obecnie wiele z tych pamięci „tylko do odczytu” – zwłaszcza BIOS/UEFI-jest często zastępowanych przez EEPROM lub Pamięć Flash (patrz poniżej), aby umożliwić przeprogramowanie w miejscu, Jeśli pojawi się potrzeba aktualizacji oprogramowania układowego., Jednak proste i dojrzałe podsystemy (takie jak klawiatura lub niektóre kontrolery komunikacyjne w układach scalonych na płycie głównej, na przykład) mogą stosować Mask ROM lub OTP (programowalny jednorazowo).
ROM i kolejne technologie, takie jak flash, są powszechne w systemach wbudowanych. Znajdują się one we wszystkim, od robotów przemysłowych po Sprzęt AGD i elektronikę użytkową (Odtwarzacze MP3, Dekodery itp.), z których wszystkie są przeznaczone do określonych funkcji, ale są oparte na mikroprocesorach ogólnego przeznaczenia., W przypadku oprogramowania zwykle ściśle powiązanego ze sprzętem, zmiany programowe rzadko są potrzebne w takich urządzeniach (które zazwyczaj nie mają dysków twardych ze względu na koszty, rozmiar lub zużycie energii). Od 2008 roku większość produktów używa pamięci Flash zamiast maski ROM, a wiele z nich zapewnia pewne sposoby łączenia się z komputerem w celu aktualizacji oprogramowania układowego; na przykład cyfrowy odtwarzacz audio może zostać zaktualizowany, aby obsługiwać nowy format plików., Niektórzy hobbyści wykorzystali tę elastyczność do przeprogramowania produktów konsumenckich do nowych celów; na przykład projekty Ipodlinux i OpenWrt umożliwiły użytkownikom uruchamianie w pełni funkcjonalnych dystrybucji Linuksa odpowiednio na odtwarzaczach MP3 i routerach bezprzewodowych.
ROM jest również przydatny do binarnego przechowywania danych kryptograficznych, ponieważ utrudnia ich wymianę, co może być pożądane w celu zwiększenia bezpieczeństwa informacji.,
Użyj do przechowywania dataEdit
ponieważ ROM (przynajmniej w postaci maski na twardo) nie może być modyfikowany, nadaje się tylko do przechowywania danych, które nie wymagają modyfikacji przez cały okres eksploatacji urządzenia. W tym celu ROM był używany w wielu komputerach do przechowywania tabel wyszukiwania do oceny funkcji matematycznych i logicznych (na przykład jednostka zmiennoprzecinkowa może tabulować funkcję sinusa w celu ułatwienia szybszych obliczeń). Było to szczególnie skuteczne, gdy procesory były powolne, a ROM był tani w porównaniu do pamięci RAM.,
Adaptery wyświetlaczy wczesnych komputerów osobistych przechowywały tabele bitmapowych znaków czcionek w pamięci ROM. Zazwyczaj oznaczało to, że czcionka wyświetlacza tekstowego nie mogła być zmieniana interaktywnie. Tak było zarówno w przypadku adapterów CGA, jak i MDA dostępnych z IBM PC XT.
wykorzystanie pamięci ROM do przechowywania tak małych ilości danych zniknęło prawie całkowicie we współczesnych komputerach ogólnego przeznaczenia. Jednak NAND Flash przejął nową rolę jako nośnik pamięci masowej lub wtórnego przechowywania plików.