Read-only memory (ROM), also known as firmware, is an integrated circuit programmed with specific data when it is manufactured. ROM chips are used not only in computers, but in most other electronic items as well. In this section, you will learn about the different types of ROM and how each works.
Read-only memory (ROM) is a type of non-volatile memory used in computers and other electronic devices. Data stored in ROM can only be modified slowly, with difficulty, or not at all, so it is mainly used to store firmware (software that is closely tied to specific hardware and unlikely to need frequent updates) or application software in plug-in cartridges.
1. ROM (Read Only Memory)
Sub : Digital Electronics
SIGMA INSTITUTE OF TECHNOLOGY AND ENGINEERING
COMPUTER ENGG. (B.E)(SEM – 3)
Prepared by :
1.HEMIN PATEL (150500107025)
2.HARSHAL PATEL (150500107024)
3.VANDIT PATEL (150500107029)
Guided by :
HARDIK SOLANKI
2. Read-only memory (ROM), also known as firmware, is an integrated circuit
programmed with specific data when it is manufactured. ROM chips are used
not only in computers, but in most other electronic items as well. In this section,
you will learn about the different types of ROM and how each works.
Read-only memory (ROM) is a type of non-volatile memory used
in computers and other electronic devices. Data stored in ROM can only be
modified slowly, with difficulty, or not at all, so it is mainly used to
store firmware (software that is closely tied to specific hardware and unlikely to
need frequent updates) or application software in plug-in cartridges.
2
3. The simplest type of solid-state ROM is as old as the semiconductor
technology itself. Combinational logic gates can be joined manually to map n-
bit address input onto arbitrary values of m-bit data output (a look-up table). With the
invention of the integrated circuit came mask ROM. Mask ROM consists of a grid
of word lines (the address input) and bit lines (the data output), selectively joined together
with transistor switches, and can represent an arbitrary look-up table with a regular
physical layout and predictable propagation delay.
3
4. Information on the data output line depends only on the information on the address input
lines.
--> Combinational Logic Circuit
m x n ROM
(m=2k)
k address input lines
n data output lines
X0=A’B’ + B’C
X1=A’B’C + A’BC’
X2=BC + AB’C’
X3=A’BC’ + AB’
X4=AB
X0=A’B’C’ + A’B’C + AB’C
X1=A’B’C + A’BC’
X2=A’BC + AB’C’ + ABC
X3=A’BC’ + AB’C’ + AB’C
X4=ABC’ + ABC
Canonical Minterms
Add Output
ABC X0 X1 X2 X3 X4
1 0 0 0 0
1 1 0 0 0
0 1 0 1 0
0 0 1 0 0
0 0 1 1 0
1 0 0 1 0
0 0 0 0 1
0 0 1 0 1
000
001
010
011
100
101
110
111
4
5. Characteristics :
Perform read operation only, write operation is not possible
Information stored in a ROM is made permanent during production, and cannot be
changed
Organization
5
6. Since ROM (at least in hard-wired mask form) cannot be modified, it is
really only suitable for storing data which is not expected to need
modification for the life of the device. To that end, ROM has been used
in many computers to store look-up tables for the evaluation of
mathematical and logical functions. This was especially effective
when CPUs were slow and ROM was cheap compared to RAM.
Notably, the display adapters of early personal computers stored tables
of bitmapped font characters in ROM. This usually meant that the text
display font could not be changed interactively. This was the case for
both the CGA and MDA adapters available with the IBM PC XT.
The use of ROM to store such small amounts of data has disappeared
almost completely in modern general-purpose computers. However,
Flash ROM has taken over a new role as a medium for mass
storage or secondary storage of files.
9. ROM
- Store information (function) during production
- Mask is used in the production process
- Unalterable
- Low cost for large quantity production --> used in the final products
PROM (Programmable ROM)
- Store info electrically using PROM programmer at the user’s site
- Unalterable
- Higher cost than ROM -> used in the system development phase
-> Can be used in small quantity system
9
10. EPROM (Erasable PROM)
- Store info electrically using PROM programmer at the user’s site
- Stored info is erasable (alterable) using UV light (electrically in some devices) and
rewriteable
- Higher cost than PROM but reusable --> used in the system development phase. Not
used in the system production due to eras ability
10
11. Programmable Read Only Memory (PROM) is a read-only memory that can
be programmed directly by the user using a special PROM programmer. It is also
sometimes called a fusible-link PROM.
A programmable read-only memory (PROM) or field programmable read-only
memory (FPROM) or one-time programmable non-volatile memory (OTP NVM) is a form
of digital memory where the setting of each bit is locked by a fuse or antifuse. It is one of
the type of ROM (read-only memory). The data in them is permanent and cannot be
changed. PROMs are used in digital electronic devices to store permanent data, usually
low level programs such as firmware (microcode).
11
12. The key difference from a standard ROM is that the data is written into a ROM during
manufacture, while with a PROM the data is programmed into them after manufacture.
Thus, ROMs tend to be used only for large production runs with well-verified data, while
PROMs are used to allow companies to test on a subset of the devices in an order
before burning data into all of them.
PROMs are manufactured blank and, depending on the technology, can be
programmed at wafer, final test, or in system. Blank PROM chips are programmed by
plugging them into a device called a PROM programmer. The availability of this
technology allows companies to keep a supply of blank PROMs in stock, and program
them at the last minute to avoid large volume commitment
12
13. These types of memories are frequently used in microcontrollers, video game consoles,
mobile phones, radio-frequency identification (RFID) tags, implantable medical devices,
high-definition multimedia interfaces (HDMI) and in many other consumer and automotive
electronics products.
A typical PROM comes with all bits reading as "1". Burning a fuse bit during programming
causes the bit to read as "0". The memory can be programmed just once after
manufacturing by "blowing" the fuses, which is an irreversible process.
13
14. An EPROM (rarely EROM), or erasable programmable read-only memory, is a type of
memory chip that retains its data when its power supply is switched off. Computer
memory that can retrieve stored data after a power supply has been turned off and
back on is called non-volatile. It is an array of floating-gate transistors individually
programmed by an electronic device that supplies higher voltages than those normally
used in digital circuits.
Once programmed, an EPROM can be erased by exposing it to strong ultravioletlight
source (such as from a mercury-vapor light). EPROMs are easily recognizable by the
transparent fused quartz window in the top of the package, through which
the silicon chip is visible, and which permits exposure to ultraviolet light during erasing.
14
15. For large volumes of parts (thousands of pieces or more), mask-programmed ROMs are the
lowest cost devices to produce. However, these require many weeks lead time to make, since
the artwork for an IC mask layer must be altered to store data on the ROMs. Initially, it was
thought that the EPROM would be too expensive for mass production use and that it would be
confined to development only. It was soon found that small-volume production was
economical with EPROM parts, particularly when the advantage of rapid upgrades of
firmware was considered.
Some microcontrollers, from before the era of EEPROMs and flash memory, use an
on-chip EPROM to store their program. Such microcontrollers include some versions
of the Intel 8048, the Freescale 68HC11, and the "C" versions of the PIC
microcontroller. Like EPROM chips, such microcontrollers came in windowed
(expensive) versions that were useful for debugging and program development
15
16. EEPROM (also written E2PROM and pronounced "e-e-prom", "double-e-prom" or "e-
squared-prom") stands for Electrically Erasable Programmable Read-Only Memory and is
a type of non-volatile memory used in computers and other electronic devices to store
relatively small amounts of data but allowing individual bytes to be erased and
reprogrammed.
EEPROMs are organized as arrays of floating-gate transistors. EEPROMs can be
programmed and erased in-circuit, by applying special programming signals. Originally,
EEPROMs were limited to single byte operations which made them slower, but modern
EEPROMs allow multi-byte page operations
16
17. It also has a limited life for erasing and reprogramming, now reaching a million operations
in modern EEPROMs. In an EEPROM that is frequently reprogrammed while the computer is
in use, the life of the EEPROM is an important design consideration.
Unlike most other kinds of non-volatile memory, an EEPROM typically allows bytes to be
read, erased, and re-written individually. EPROMs are erased by exposing a chip to ultra-
violet light to erase its entire contents. Flash EPROMs are electrically erased and
programmed but only as groups of bytes, ranging from tens to tens of thousands of bytes
for different devices.
17
18. Each EEPROM device typically has its own set of OP-Code instructions mapped to different
functions. Common operations on SPIEEPROM devices are:
I. Write Enable (WRENAL)
II. Write Disable (WRDI)
III. Read Status Register (RDSR)
IV. Write Status Register (WRSR)
V. Read Data (READ)
VI. Write Data (WRITE)
Other operations supported by some EEPROM devices are:
I. Program
II. Sector Erase
III. Chip Erase commands
18
19. What is the difference between PROM and EPROM?
• PROM is the older technology while both PROM and EPROM are non-volatile memory
devices.
• PROMs can be programmed only once while EPROMs are reusable and can be
programmed multiple times.
• The process in the programming of PROMS is irreversible; hence the memory is permanent. In
EPROMs memory can be erased by exposure to UV light.
• EPROMs have a fused quartz window in the packaging to allow this. PROMs are enclosed in
complete plastic packaging; therefore UV has no effect on PROMs
• In PROMs data is written/ programmed onto the chip by blowing the fuses at each bit using
much higher voltages than the average voltages used in digital circuits. EPROMS also use high
voltage, but not enough to alter the semiconductor layer permanently.
19
20. What is the difference between EEPROM and EPROM?
• EPROMs have to be erased with exposure to UV light and EEPROMs can be erased
electronically.
• EPROMs have a Quartz window in the package to expose the chip to UV light and
EEPROMs are completely encased in an opaque plastic case.
• EPROM is the older technology.
20
21. A programmable logic device works like a ROM but is a more efficient solution for
implementing sparse output functions. (Not all minterms are decoded.)
There are two types of programmable logic devices:
1) PLA (Programmable Logic Array)
2) PAL (Programmable Array Logic)
We suggested earlier that a ROM had a decoder inside it. You could visualize this as:
21
22. The image above also defines two terms we will use to distinguish between PLA and PAL
devices:
•AND Array - this is the portion of the device that decodes the inputs. The AND array
determines the minterms decoded by the device. A ROM decodes all possible minterms.
•OR Array - this is the portion of the device that combines the minterms for the definition
of a function.
22
23. PLA :
• Now we are ready to define a PLA.
• A PLA is a programmable logic device with a programmable AND array and a programmable
OR array.
• A PLA with n inputs has fewer than 2n AND gates (otherwise there would be no advantage over
a ROM implementation of the same size). A PLA only needs to have enough AND gates to
decode as many unique terms as there are in the functions it will implement.
• Because we can control the AND array and there is a limit to the number of terms that can be
specified in the AND array, it may be more economical to simplify the function before
implementing it with a PLA. If you do simplify the function and intend to implement with a PAL
device you should also keep in mind that product terms can be shared between functions.
(Product sharing is when two functions share a product term decoded by the AND array. For
example, in the image below the product term AB is shared between F0 and F1.)
23
24. Example: Implement the functions F0 F1 we introduced above using a PLA with 2 inputs, 3 product
terms, and 2 outputs.
• The unprogrammed PLA from the manufacture looks like:
• After programming for the two functions F0 F1 the state of the PLA is:
•
• Notice that we only need three AND gates
because there are only three unique minterms in
the functions F0 and F1. Also, notice that since we
have control over the OR array we can share the
minterm AB in the definitions of both functions.
24
25. PAL :
• A PAL is a programmable logic device with a programmable AND array and a fixed OR
array.
• A PAL has a fixed OR array. For example, here is what an unprogrammed PAL might look
like straight from the manufacture:
• A fixed OR array makes the device less expensive to manufacture. On the other hand,
having a fixed OR array means you can't share product terms between functions.
25
26. Example: Implement the functions F0 F1 we introduced above using the PAL given above.
For this implementation we will need to simplify the functions F0 F1 because the PAL we
are given has an output function that can accommodate only one product term. The
simplified form of the functions are:
F0 = A
F1 = A'B' + AB
• After programming for the two functions F0 F1 the state of the PAL is:
So, in summary:
•A PLA device has a programmable AND and programmable OR array
•A PAL device has a programmable AND and fixed OR array
•(You could also say that a ROM has a fixed AND and programmable OR array)
26