ściśle, pamięć tylko do odczytu odnosi się do pamięci, która jest podłączona na stałe, takich jak matryca diod i późniejsza pamięć mask ROM. Chociaż układy dyskretne mogą być zmieniane (w zasadzie), Układy scalone (Układy scalone) nie mogą i są bezużyteczne, jeśli dane są złe. Fakt, że taka pamięć nigdy nie może być zmieniona jest dużą wadą; ostatnio, ROM powszechnie odnosi się do pamięci, która jest tylko do odczytu w normalnej pracy, zastrzegając fakt, że jakiś możliwy sposób, aby ją zmienić.,
inne typy pamięci nieulotnych, takie jak erasable programmable read only memory (EPROM) i Electric erasable programmable read-only memory (EEPROM lub Flash ROM) są czasami określane w skrócie jako „pamięć tylko do odczytu” (ROM); chociaż te typy pamięci mogą być kasowane i ponownie zaprogramowane wiele razy, zapis do tej pamięci trwa dłużej i może wymagać innych procedur niż odczyt pamięci., W przypadku użycia w ten mniej precyzyjny sposób, „ROM” wskazuje pamięć Anon-lotną, która służy funkcjom typowo dostarczanym przez Mask ROM, takim jak przechowywanie kodu programu i danych nieulotnych.
Historia
wiele konsol do gier używa wymiennych kartridży ROM, pozwalając jednemu systemowi 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 camemask 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. PROM, wynaleziony w 1956 roku, pozwolił użytkownikom zaprogramować jego zawartość dokładnie raz, fizycznie zmieniając jego strukturę za pomocą impulsów wysokiego napięcia. To rozwiązało problemy 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ą w wygody projektantów., 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. EEPROM, wynaleziony w 1983 roku, przeszedł długą drogę do rozwiązania problemu 4, ponieważ EEPROM może być zaprogramowany 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 Komputer Osobisty za pomocą zwykłego kabla)., Pamięć Flash, wynaleziona w Toshibie w połowie lat 80. i skomercjalizowana we wczesnych latach 90., jest formą EEPROM, która bardzo wydajnie wykorzystuje obszar chipów i może być wymazywana i przeprogramowywana tysiące razy bez uszkodzeń.
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ów
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 PC, „ROM” (lub flash) jest używany do przechowywania podstawowego oprogramowania startowego dla głównego procesora, a także różnych firmware potrzebnych do wewnętrznego sterowania samodzielnymi urządzeniami, takimi jak karty graficzne, dyski twarde, napędy DVD, Ekrany TFT itp., w systemie. Obecnie wiele z tych pamięci „tylko do odczytu” – zwłaszcza BIOS-jest często zastępowanych pamięcią Flash (patrz poniżej), aby umożliwić przeprogramowanie na miejscu w razie potrzeby 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 danych
ponieważ ROM (przynajmniej w postaci maski na twardo) nie może być modyfikowany, tak naprawdę 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 Flash ROM przejął nową rolę jako nośnik pamięci masowej lub wtórnego przechowywania plików.,
typy
pierwszy EPROM, Intel 1702, z matrycą i wiązaniami drucianymi wyraźnie widocznymi przez okno kasowania.
oparte na półprzewodnikach
klasycznie zaprogramowane układy ROM są układami scalonymi, które fizycznie kodują dane, które mają być przechowywane, a więc nie można zmienić ich zawartości po wyprodukowaniu., Inne typy nieulotnych pamięci półprzewodnikowych pozwalają na pewien stopień modyfikacji:
- programowalna pamięć tylko do odczytu (PROM) lub jednorazowa programowalna pamięć ROM (OTP) może być zapisywana lub zaprogramowana za pomocą specjalnego urządzenia zwanego programatorem PROM. Zazwyczaj urządzenie to wykorzystuje wysokie napięcia, aby trwale zniszczyć lub utworzyć wewnętrzne ogniwa (bezpieczniki lub przeciwfusy) w chipie. W związku z tym Bal można zaprogramować tylko raz.,
- Kasowalna programowalna pamięć tylko do odczytu (EPROM) może zostać wymazana przez wystawienie na działanie silnego światła ultrafioletowego (zwykle przez 10 minut lub dłużej), a następnie przepisana za pomocą procesu, który ponownie wymaga zastosowania wyższego niż zwykle napięcia. Wielokrotna ekspozycja na światło UV w końcu zużyje EPROM, ale wytrzymałość większości chipów EPROM przekracza 1000 cykli wymazywania i przeprogramowywania. Pakiety chipów EPROM mogą być często identyfikowane przez wydatne kwarcowe „okno”, które pozwala na wejście światła UV. Po zaprogramowaniu okno jest zazwyczaj pokryte etykietą, aby zapobiec przypadkowemu wymazaniu., Niektóre chipy EPROM są fabrycznie kasowane przed pakowaniem i nie zawierają okna; są to skutecznie PROM.
- elektronicznie Kasowalna programowalna pamięć tylko do odczytu (EEPROM) jest oparta na podobnej strukturze półprzewodnikowej do EPROM, ale pozwala na elektrycznie wymazywanie całej jej zawartości (lub wybranych banków), a następnie przepisywanie jej elektrycznie, tak aby nie musiała być usuwana z komputera (lub aparatu, odtwarzacza MP3 itp.). Zapis lub flashowanie pamięci EEPROM jest znacznie wolniejsze (milisekundy na bit) niż odczyt z pamięci ROM lub zapis do pamięci RAM (nanosekundy w obu przypadkach).,
- elektronicznie zmienialna pamięć tylko do odczytu (EAROM) to rodzaj pamięci EEPROM, która może być modyfikowana jeden bit na raz. Pisanie jest bardzo powolnym procesem i ponownie wymaga wyższego napięcia (zwykle około 12 V) niż jest używane do odczytu. Earms są przeznaczone do zastosowań wymagających rzadkiego i tylko częściowego przepisywania. EAROM może być używany jako nieulotna pamięć masowa do krytycznych informacji o konfiguracji systemu; w wielu aplikacjach EAROM został zastąpiony przez PAMIĘĆ RAM CMOS dostarczaną przez zasilanie sieciowe i wspieraną baterią litową.,
- Pamięć Flash (lub po prostu flash) to nowoczesny typ pamięci EEPROM wynaleziony w 1984 roku. Pamięć Flash może być kasowana i przepisywana szybciej niż zwykły EEPROM, a nowsze konstrukcje charakteryzują się bardzo wysoką wytrzymałością (przekraczającą 1 000 000 cykli). Technologia NAND flash pozwala na efektywne wykorzystanie obszaru chipów silikonowych, w wyniku czego poszczególne układy scalone mają pojemność aż 32 GB od 2007 roku; ta cecha, wraz z wytrzymałością i trwałością fizyczną, pozwoliła NAND flash zastąpić magnetyczne w niektórych aplikacjach (takich jak pamięci flash USB)., Pamięć Flash jest czasami nazywana flash ROM lub flash EEPROM, gdy jest używana jako zamiennik starszych typów pamięci ROM, ale nie w aplikacjach, które korzystają z jej możliwości szybkiego i częstego modyfikowania.
stosując ochronę zapisu, niektóre typy przeprogramowalnych pamięci ROM mogą tymczasowo stać się pamięcią tylko do odczytu.
inne technologie
istnieją inne typy pamięci nieulotnych, które nie są oparte na technologii półprzewodnikowych układów scalonych, w tym:
- optyczne Nośniki pamięci, takie jak CD-ROM, który jest tylko do odczytu (analogicznie do zamaskowanego ROM)., CD-R jest zapisywane raz odczytane wiele (analogicznie do PROM), podczas gdy CD-RW obsługuje cykle erase-rewrite (analogicznie do EEPROM); oba są zaprojektowane do wstecznej kompatybilności z CD-ROM.
przykłady historyczne
Transformer matrix ROM (TROS), z systemu IBM 360/20
- Diode matrix ROM, używany w małych ilościach w wielu komputerach w latach 60.XX wieku, a także elektronicznych kalkulatorach biurkowych i koderach klawiaturowych do terminali., Ten ROM został zaprogramowany przez zainstalowanie dyskretnych diod półprzewodnikowych w wybranych miejscach między macierzą śladów linii słów i śladów linii bitowych na płytce drukowanej.
- rezystor, kondensator lub transformator matrix ROM, używany w wielu komputerach do lat 70. XX wieku. podobnie jak dioda matrix ROM, programowany był przez umieszczanie komponentów w wybranych miejscach pomiędzy macierzą linii słów i linii bitowych. Tabele funkcyjne ENIAC były matrycą rezystorową ROM, programowaną przez ręczne ustawianie przełączników obrotowych., Różne modele IBM System/360 i złożone urządzenia peryferyjne przechowywały swoje mikrokody w kondensatorach (zwanych bcros dla pamięci tylko do odczytu zbalansowanych kondensatorów na 360/50 i 360/65 lub CCROS dla pamięci tylko do odczytu naładowanych kondensatorów na 360/30) lub transformatorach (zwanych Tros dla pamięci tylko do odczytu transformatorów na 360/20, 360/40 i innych).
- Core rope, forma technologii ROM z matrycą transformatora stosowana tam, gdzie rozmiar i waga były krytyczne. Był używany w komputerach kosmicznych Apollo/MIT, komputerach PDP-8 DEC i innych miejscach., Ten typ ROM zostaĹ ' zaprogramowany rÄ ™ cznie przez tkanie „drutăłw linii wyrazăłw” wewnÄ … trz lub na zewnÄ … trz ferrytowych rdzeni transformatora.
- magazyn pierścieni Dimond, w którym przewody są gwintowane przez ciąg dużych pierścieni ferrytowych, które działają tylko jako urządzenia czujnikowe. Były one wykorzystywane w centrach telefonicznych TXE.,
- perforowana metalowa Maska znakowa („szablon”) w lampach Elektronopromieniowych Charactron, która była używana jako ROM do kształtowania szerokiej wiązki elektronów w celu utworzenia wybranego kształtu znaku na ekranie albo do wyświetlania, albo zeskanowanej wiązki elektronów w celu utworzenia wybranego kształtu znaku jako nakładki na sygnał wideo.
Prędkość odczytu
mimo że względna prędkość RAM vs.ROM zmieniała się w czasie, od 2007 r. Duże układy RAM mogą być odczytywane szybciej niż większość ROM., Z tego powodu (i aby umożliwić jednolity dostęp), zawartość ROM jest czasami kopiowana do pamięci RAM lub cieniowana przed pierwszym użyciem, a następnie odczytywana z pamięci RAM.
zapis
w przypadku tych typów pamięci ROM, które można modyfikować elektrycznie, prędkość zapisu jest zawsze znacznie wolniejsza niż prędkość odczytu i może wymagać niezwykle wysokiego napięcia, ruchu wtyczek zworek, aby zastosować sygnały zapisu i specjalne kody komend blokady / odblokowania., Technologia Nand Flash pozwala na zapisywanie dużych bloków pamięci jednocześnie, co pozwala na zapisywanie dużych bloków pamięci jednocześnie.
wytrzymałość i przechowywanie danych
ponieważ są one zapisywane przez wymuszanie elektronów przez warstwę izolacji elektrycznej na pływającej bramce tranzystora, wielokrotnego zapisu ROM może wytrzymać tylko ograniczoną liczbę cykli zapisu i kasowania, zanim izolacja zostanie trwale uszkodzona., W najwcześniejszych Earomach może to nastąpić nawet po 1000 cyklach zapisu, podczas gdy we współczesnych Eepromach Flash trwałość może przekraczać 1 000 000, ale w żadnym wypadku nie jest nieskończona. Ta ograniczona trwałość, a także wyższy koszt na bit, oznacza, że pamięć masowa oparta na pamięci Flash jest mało prawdopodobne, aby całkowicie zastąpić dyski magnetyczne w najbliższej przyszłości.
czas, przez jaki ROM pozostaje dokładnie czytelny, nie jest ograniczony przez cykle zapisu. Przechowywanie danych EPROM, EAROM, EEPROM i Flash może być ograniczone przez wyciek ładunku z ruchomych bramek tranzystorów komórek pamięci., Wyciek jest przyspieszany przez wysokie temperatury lub promieniowanie. Zamaskowany ROM i bezpiecznik / antifuse PROM nie cierpią z tego efektu, ponieważ ich retencja danych zależy od fizycznej, a nie elektrycznej trwałości układu scalonego (chociaż ponowny wzrost bezpiecznika był kiedyś problemem w niektórych systemach).
obrazy treści
zawartość układów ROM w kasetach konsoli gier wideo można wyodrębnić za pomocą specjalnego oprogramowania lub urządzeń sprzętowych. Powstałe pliki zrzutu pamięci są znane jako obrazy ROM i mogą być używane do produkcji duplikatów kaset lub emulatorów konsoli., Termin powstał, gdy większość gier konsolowych były dystrybuowane na kartridżach zawierających układy ROM, ale osiągnął tak szerokie zastosowanie, że jest nadal stosowany do obrazów nowszych gier dystrybuowanych na CD-ROM lub innych nośnikach optycznych.
obrazy ROM komercyjnych gier zazwyczaj zawierają oprogramowanie chronione prawem autorskim. Nieautoryzowane kopiowanie i rozpowszechnianie oprogramowania chronionego prawem autorskim jest zwykle naruszeniem praw autorskich (w niektórych jurysdykcjach powielanie kaset ROM do celów tworzenia kopii zapasowych może być uznane za dozwolony użytek)., Niemniej jednak, istnieje prężnie rozwijająca się społeczność zajmująca się nielegalną dystrybucją i handlem takim oprogramowaniem i abandonware. W takich kręgach termin „ROM images” jest czasami skracany po prostu do „ROM” lub czasami zmieniany na „romz”, aby podkreślić związek z „warezem”.