Read Only Memory (ROM) is a kind of memory which forms an integral part of many electronic components including those of computers. The major trait of this memory is the fact that, here, the number of reads are unrestricted while the number of writes are fixed. This means that in a ROM, the user can store the data only once (usually done during fabrication) or sometimes only a couple of times. However this stored data can be read from it how many every times needed. Next, the information so stored in ROMs will not be erased even if the power shuts down. As a result, they are referred to as permanent, non-volatile memory devices.
Internally, ROM comprises of a row-column grid which will be connected by the diodes depending on the programming bit received. This indicates that ROM is a hard-wired memory device. As a consequence, one need not refresh its memory contents on a timely-basis in order to keep-up the data stored, unlike RAM (Random Access Memory) which demands for frequent refresh cycles. The single-write, multiple-read nature of ROM makes it most suitable to store boot-up programs and the firmware applications which require no/very less updates. Calculators, laser printers, washing machines and gaming consoles are a few among the numerous appliances wherein ROM finds its place.
Various kinds of ROMs in existence are
Masked Read Only Memory (MROM)
These were the first set of ROMs developed which are hard-wired and read-only in nature. MROM is programmed by the manufacturer during fabrication after which the contents of the memory can never be changed. This is because, MROMs are fabricated using masks (integrated circuits which have definite opaque and transparent areas) which either allow or block the passage of light (like that of UV) during photolithography. These devices are compact than any other kind of semiconductor memories for a given bit and are preferred when the need is for mass production.
Programmable Read Only Memory (PROM)
PROMs in the market are blank ROMs and contain no pre-recorded instructions like those of MROMs. These allow the user to program it only once, using PROM programmers, after which their contents can never be changed. This is because, a typical PROM with all 1’s in it will be programmed to have 0’s by blowing-off the fuses using high voltage pulses, wherever required. As this is an irreversible process, PROMs are one-time programmables.
Erasable and Programmable Read Only Memory (EPROM)
These devices comprise of an array of transistors characterized by floating-gates, which are programmed one-by-one with the help of high-voltage pulses. However, such a programmed EPROM can be erased by exposing them to strong ultra-violet (UV) light for certain duration, after which they can be programmed once again. Nevertheless, multiple-erase operations cause wearing out of the device due to which they lack the unlimited reprogramming ability. These kind of memory devices are generally used to store firmware programs which demand frequent upgrades.
Electrically Erasable and Programmable Read Only Memory (EEPROM)
EEPROMs can be programmed more than once, as they are capable of being erased electrically. This means that they need not be removed from the system inorder to carry on the process of erasing and programming. However writing into an EEPROM is a slow process when compared to reading from it. Moreover they offer the flexibility of erasing byte-by-byte or selected areas only, instead of entire chip as in the case of EPROMs.
Depending on this ability they can be classified as
Electrically Alterable Read Only Memory (EAROM)
This kind of EEPROM allows bit-wise modification. However writing process is extremely slow and requires higher voltage than that for reading. Thus these are used to store set-up information of the system or for similar applications which require rare and/or partial rewriting.
Flash Read Only Memory (FROM)
These can be erased and reprogrammed much faster than EEPROMs and allow the user to access multiple locations of the memory at the same time.