Read Only Memory | ROM

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

  1. 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.
  2. 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.
  3. 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.
  4. 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
    1. 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.
    2. 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.

Closely Related Articles Latches and Flip FlopsS R Flip Flop S R LatchActive Low S R Latch and Flip FlopGated S R Latches or Clocked S R Flip FlopsD Flip Flop or D LatchJ K Flip FlopMaster Slave Flip FlopProgrammable Logic DevicesProgrammable Array LogicApplication of Flip FlopsShift RegistersBuffer Register and Controlled Buffer RegisterData Transfer in Shift RegistersSerial In Serial Out (SISO) Shift RegisterSerial in Parallel Out (SIPO) Shift RegisterParallel in Serial Out (PISO) Shift RegisterParallel in Parallel Out (PIPO) Shift RegisterUniversal Shift RegistersBidirectional Shift RegisterDynamic Shift RegisterUninterruptible Power Supply | UPSConversion of Flip FlopsMore Related Articles Digital ElectronicsBoolean Algebra Theorems and Laws of Boolean AlgebraDe Morgan Theorem and Demorgans LawsTruth Tables for Digital LogicBinary Arithmetic Binary AdditionBinary SubtractionSimplifying Boolean Expression using K MapBinary DivisionExcess 3 Code Addition and SubtractionK Map or Karnaugh MapSwitching Algebra or Boolean AlgebraBinary MultiplicationParallel SubtractorBinary Adder Half and Full AdderBinary SubstractorSeven Segment DisplayBinary to Gray Code Converter and Grey to Binary Code ConverterBinary to BCD Code ConverterAnalog to Digital ConverterDigital Encoder or Binary EncoderBinary DecoderBasic Digital CounterDigital ComparatorBCD to Seven Segment DecoderParallel AdderParallel Adder or SubtractorMultiplexerDemultiplexerOR Operation | Logical OR OperationAND Operation | Logical AND OperationLogical OR GateLogical AND GateNOT GateUniversal Gate | NAND and NOR Gate as Universal GateNAND GateDiode and Transistor NAND Gate or DTL NAND Gate and NAND Gate ICsX OR Gate and X NOR GateTransistor Transistor Logic or TTLNOR GateFan out of Logic GatesINHIBIT GateNMOS Logic and PMOS LogicSchmitt GatesLogic Families Significance and Types of Logic FamiliesBinary Number System | Binary to Decimal and Decimal to Binary ConversionBinary to Decimal and Decimal to Binary ConversionBCD or Binary Coded Decimal | BCD Conversion Addition SubtractionBinary to Octal and Octal to Binary ConversionOctal to Decimal and Decimal to Octal ConversionBinary to Hexadecimal and Hex to Binary ConversionHexadecimal to Decimal and Decimal to Hexadecimal ConversionGray Code | Binary to Gray Code and that to Binary ConversionOctal Number SystemDigital Logic Gates2′s Complement1′s ComplementASCII CodeHamming Code2s Complement ArithmeticError Detection and Correction Codes9s complement and 10s complement | SubtractionSome Common Applications of Logic GatesKeyboard EncoderAlphanumeric codes | ASCII code | EBCDIC code | UNICODENew Articles Voltage SensorFlow MeasurementVoltage in ParallelVoltage in SeriesVoltage Regulator 7805How to Use a Digital Multimeter?