Read Only Memory (ROM)
- A read-only memory (ROM) is essentially a memory device in which permanent binary information is stored.
- Once the pattern established, it stays within the unit when the power is turned off and on again.
- ROMs used to store information which is of a fixed type, such as tables for various functions, fixed data, and instructions.
The advantages of using a ROM as a PLD are the following:
- Ease of design since no simplification or minimization of the logic function is required.
- Designs can change, modified rapidly.
- It is usually faster than discrete MSI/SSI circuit.
- Cost reduced.
There are a few disadvantages also of ROM based circuits, such as:
Non-utilization of complete circuit
Increased power requirement
Enormous increase in size with increase in the number of input variables making it impractical
- A block diagram of a ROM shown in the figure. It consists of k inputs and n outputs.
- The inputs provide the address for the memory and the outputs give the data bits of the stored word which selected by the address.
- The number of words in a ROM determined from the fact that k address input lines needed to specify 2k words.
- Consider, for example, a 32 x 8 ROM. The unit consists of 32 words of 8 bits each.
There five input lines that form the binary numbers from 0 through 31 for the address.
Also, The five inputs decoded into 32 distinct outputs by means of a 5 x 32 decoder.
ROM is basically a decoder with k inputs and 2k output lines followed by a bank of OR gates.
So, Each output of the decoder represents a memory address.
The 32 outputs of the decoder connected to each of the 8 OR gates.
Moreover, Each OR gate must consider as having 32 inputs.
Since each OR gate has 32 input connections and there are 8 OR gates, the ROM contains 32 x 8 = 256 internal connections.
In general, a 2k x n ROM will have an internal k x 2k decoder and n OR gates.
Moreover, Each OR gate has 2k inputs, which connected to each of the outputs of the decoder.