Semiconductor Memories: ROM Explained | Types of ROM | Applications of ROM
Summary
TLDRThis video from the ALL ABOUT ELECTRONICS YouTube channel delves into the world of Read-Only Memory (ROM). It explains the fundamental structure of ROM, highlighting its non-volatile nature and its ability to store data permanently. The video distinguishes between various types of ROM, including Mask ROM, PROM, EPROM, EEPROM, and flash memory, each with unique characteristics like one-time programming or erasability. It also touches on the practical applications of ROM in devices, embedded systems, and computer BIOS, emphasizing its critical role in storing essential instructions and data.
Takeaways
- 📚 ROM stands for Read-Only Memory, a type of non-volatile storage used by CPUs to store permanent data.
- 🔍 Unlike RAM, ROM retains data even when power is lost, making it ideal for storing firmware and critical instructions.
- 🛠️ Traditional ROMs require data to be set during fabrication, with patterns of 1s and 0s established at the manufacturing stage.
- 🏭 Mask ROM is a type of ROM where data is permanently set during the manufacturing process and cannot be altered later.
- 🔧 PROM (Programmable ROM) allows users to program the data after fabrication using special hardware.
- ⚙️ EPROM (Erasable Programmable ROM) can be erased using UV light and reprogrammed multiple times.
- 🔌 EEPROM (Electrically Erasable Programmable ROM) can be erased and reprogrammed electrically, supporting multiple write and erase cycles.
- 💾 Flash memory is a type of EEPROM that allows electrical erasing and reprogramming, with sizes ranging from megabytes to gigabytes.
- 🔥 NAND flash is preferred for large storage capacities due to its cost-effectiveness and better write speed, whereas NOR flash offers faster read speeds.
- 🛠️ ROMs are used in various applications such as embedded systems for program code, configuration parameters, and calibration settings, as well as in computer BIOS and peripheral device firmware.
Q & A
What is ROM and what does it stand for?
-ROM stands for Read-Only Memory. It is a type of non-volatile memory used in computers and other electronic devices for storing permanent data, such as firmware or critical instructions.
How is ROM different from RAM?
-ROM is non-volatile and retains data even when power is turned off, while RAM is volatile and loses data when power is not supplied. Additionally, ROM is typically used for permanent data storage, whereas RAM is used for temporary data storage during operation.
What is the significance of the term 'read-mostly memory' in the context of ROM?
-The term 'read-mostly memory' refers to ROMs that are primarily used for reading data but can also be written to when necessary. This indicates that while ROMs are traditionally read-only, modern ROMs can be written to, albeit with certain limitations or requirements.
Can you explain the basic structure of a ROM?
-A ROM has a structure similar to RAM, where it can be addressed to select a specific word. When enabled, the data at that address is available at the output. The ROM consists of address inputs and data outputs, and the data is determined by the interconnections within the ROM, which are established during fabrication.
What is a Mask ROM and how is it programmed?
-A Mask ROM is a type of ROM where the programming is done during the fabrication process. The data to be stored, in the form of 1s and 0s, is provided by the designer to the manufacturer, and the interconnections within the ROM are made accordingly.
What is a PROM and how does it differ from a Mask ROM?
-A PROM, or Programmable ROM, is user-programmable, unlike a Mask ROM which is programmed during fabrication. PROMs require special programming hardware to write data, and once programmed, the data cannot be altered.
How is an EPROM different from other types of ROMs?
-EPROM, or Erasable Programmable ROM, can be erased and reprogrammed multiple times using special UV light through a transparent window on the chip. This feature allows for reusability, unlike one-time programmable ROMs.
What is EEPROM and how does it erase data?
-EEPROM stands for Electrically Erasable Programmable ROM. It can be erased and reprogrammed electrically, multiple times, without the need for UV light like EPROM. This makes EEPROM more convenient for applications requiring frequent updates.
What are the two types of flash memory commercially available, and how do they differ?
-The two types of flash memory are NAND flash and NOR flash. NAND flash offers faster write speeds but slower read speeds, and is more cost-effective for large storage capacities. NOR flash provides faster read speeds but slower write speeds and is more expensive due to its lower density.
What are the typical applications of ROM?
-ROM is typically used for storing permanent instructions and data critical for device operations, such as firmware in embedded systems, BIOS in computer systems, and configurations in peripheral devices. It can also be used as a programmable logic device for implementing different logic circuits.
Outlines
💾 Introduction to Read-Only Memory (ROM)
This paragraph introduces the concept of Read-Only Memory (ROM), contrasting it with Random Access Memory (RAM). ROM is described as a non-volatile memory type that retains data even when power is off, suitable for permanent data storage. The video will cover the basic construction, types, and applications of ROM. It explains that unlike RAM, ROM is designed for reading data and, in most modern cases, allows for some writing capabilities. The paragraph also sets the stage for a deeper dive into ROM's structure and types, promising to explore its uses in various applications.
🛠️ ROM Structure and Programming
This section delves into the internal structure of ROM, using a 32x8 ROM as an example. It explains how data is stored in ROM through a network of interconnections represented by 'cross-points', which are either connected (logic 1) or not connected (logic 0). The paragraph describes the process of programming ROMs, highlighting different types such as Mask ROM, PROM, EPROM, and EEPROM. Each type has its unique programming and erasing methods, from fixed programming during fabrication in Mask ROMs to user-programmable and erasable options in PROMs, EPROMs, and EEPROMs. The paragraph also touches on the practical aspects of ROM programming, such as the need for special hardware and the permanence of data once programmed.
🔍 Types of ROM and Their Applications
The final paragraph discusses the various types of ROM, including EEPROM and flash memory, emphasizing their erasable and programmable capabilities. It highlights the differences between EEPROM, which allows byte-level operations, and flash memory, which supports block-level erasing. The paragraph also covers the commercial availability and typical use cases of these memory types, such as EEPROMs for small data storage and flash memory for larger storage devices like USB drives and SSDs. Additionally, it touches on the limitations of write operations for these memory types and their applications in embedded systems, computer systems, and peripheral devices. The video concludes by inviting viewers to engage with the content through comments and subscriptions, promising further exploration of ROM's use as a programmable logic device in upcoming videos.
Mindmap
Keywords
💡Read-only Memory (ROM)
💡Volatile vs. Non-volatile Memory
💡Mask ROM
💡Programmable ROM (PROM)
💡Erasable Programmable ROM (EPROM)
💡Electrically Erasable Programmable ROM (EEPROM)
💡Flash Memory
💡BIOS
💡Logic Gates
💡Interconnections
💡Firmware
Highlights
Introduction to Read-only Memory (ROM) and its basic construction.
Explanation of ROM as a non-volatile memory type that retains data even when power is off.
Differentiation between RAM and ROM in terms of data persistence and usage.
Description of ROM as read-mostly memory with optional write capabilities.
Overview of the internal structure of a 32x8 ROM, including its decoder and OR gates.
Detail on how data is stored in ROM during fabrication with 1s and 0s representing interconnections.
Introduction to Mask ROM, where data programming is done during manufacturing.
Explanation of Programmable ROM (PROM) that allows user programming with special hardware.
Description of Erasable Programmable ROM (EPROM) that can be erased with UV light and reprogrammed.
Introduction to Electrically Erasable Programmable ROM (EEPROM) that supports electrical erasure and reprogramming.
Comparison between NAND and NOR flash memories in terms of write speed, read speed, and cost.
Applications of ROM in embedded systems for storing program code and configuration settings.
Use of ROM in computer systems for storing BIOS firmware, now often replaced by NOR flash memory.
Storage of firmware for peripheral devices like printers and keyboards in ROM.
ROM's potential use as a programmable logic device for implementing logic circuits.
Encouragement for viewers to ask questions or provide suggestions in the comment section.
Call to action for viewers to like and subscribe for more educational content on electronics.
Transcripts
Hey friends, welcome to the YouTube channel ALL ABOUT ELECTRONICS.
So in this video, we will learn about the Read-only Memory.
So during the video, we will see the basic construction of this ROM and we will also
see the different types of ROM.
So earlier we have seen that there are two types of memories which CPU requires during the operation.
That is RAM and ROM.
So we have seen that this RAM is a temporary storage device which holds the program and
the OS processes which CPU might require during the operation.
And we have already seen about this RAM in the previous videos.
Then the second type of memory is the ROM.
So this ROM stands for the read-only memory.
And as its name suggests, this CPU can only read the data from the memory,
but it cannot write it.
But nowadays, most of the ROMs that are available commercially are the read-mostly memory.
Meaning that mostly they can be used for reading the data from the memory, but when required,
it is also possible to write the content in this memory.
So later on, we will see the different types of ROMs.
Now unlike the RAM, this ROM is the non-volatile type of memory.
Meaning that even if the power goes down, then also the content of the memory
will remain as it is.
And that is why it is used in the applications where we want to store the data permanently.
So at the end of the video, we will also see the typical applications of the ROM.
But first, let's see the basic structure of this ROM.
So similar to the RAM, if the ROM contains total 2^k words, then with the help of the
k-address lines, it is possible to select any one of the words.
And once the ROM is enabled, then the data at the specific word will be available at
the output.
So if the word length is equal to n bits, then the output data will be of n bits.
That means this 2^k word ROM consists of the k inputs and the n outputs.
So unlike the RAM, in the traditional ROMs, the binary information which we want to store
within the ROM must be specified by the designer during the fabrication.
And during the fabrication of the ROM itself, the pattern of 1s and 0s
is established in the ROM.
So this is the internal structure of this 32x8 ROM.
So this 32x8 ROM consists of 32 words and the word length of each word
is equal to 8 bits.
So here, with the help of the 5 input decoder, it is possible to select any one of the 32 words.
So as you can see, here the output of the decoder are labeled from 0 to 31.
And the each output of the decoder represents the specific memory address.
So here, to read the 8 bits of data from each word, we have total 8 OR gates.
And here, the each OR gate consists of the 32 inputs.
So depending on how the ROM is programmed with 1s and 0s, the each output of the decoder
is connected to these different OR gates.
So in this 32x8 ROM, we have total 256 interconnections. Or in other words, we have total 256 cross-points.
And here, this each cross-point is programmable.
So whenever there is an interconnection between the output of the decoder and the OR gate,
then symbolically, it is represented by the cross symbol.
And if there is no interconnection between them, then that cross-point is left as it is.
So wherever there is a cross, then it represents the logic 1 in the memory.
And wherever there is no interconnection, then it represents the logic 0.
So let's see, based on this interconnection, how to read the data from the ROM.
So let's say, based on the address input, this 5th output of the decoder gets high.
And once it gets high, then wherever there is an interconnection, at those locations,
the output of the OR gate will also become high.
Because at those locations, physically there is an interconnection between the output of
the decoder and the OR gate.
While for the rest of the OR gates, the output of the OR gate will remain 0.
Because as you know, in the decoder, depending on these address inputs, only one of the decoder
output will become high.
And if we see the remaining outputs of the decoder, then it will remain low.
That means in this case, only this 5th output will become high, while the remaining outputs
will remain 0.
And wherever there is an interconnection between the output of the decoder and the OR gate,
at those locations, the output of the OR gate will become high.
So in this case, we can say that the information that is stored at the 5th memory address is
equal to 00100011.
That means if we want to store this information at this 5th memory address, then we need to
make the interconnection only at these 3 different locations.
And similarly, according to the data that we want to store in each word, we can make
the interconnections at the different locations.
So in some types of ROM, the programming of this interconnection is done during the fabrication
itself.
That means the program that we need to store within the ROM, that program we need to provide
to the manufacturer beforehand.
So basically, this program contains the information in the form of 1s and 0s for each word.
And during the manufacturing, according to the data provided by the designer, these interconnections
are programmed in the ROM.
For example, in this 32x8 ROM, if we want to store this data at the different locations,
then these are the corresponding interconnections.
For example, at the first address, suppose if we want to store 10110010, then in the
first row, at the locations where we want the logic 1, at such locations, we need to
make the interconnections.
So as you can see, in the first row, at the D7, D5, D4 and D1, these 4 interconnections
are made.
And that is why, in the first row, you can see the 4 cross symbols at the 4 locations.
That means at these 4 locations, where we can see this cross symbol, represents the
logic 1.
And wherever there is no cross symbol, those locations represent the logic 0.
So likewise, at the remaining locations, by making these interconnections, we can store
the data that is shown in the Truth Table.
So once the data is stored in the ROM, then with the help of these address lines and the
enable input, we can read the data from the ROM.
So whenever we want to read the data from the ROM, then we just need to apply the specific
address to the decoder, and then we just need to enable this decoder.
And as soon as we enable the decoder, then the data stored at the specific location
will be available at the output.
So this type of ROM is known as the Mask ROM.
Because during the fabrication of this ROM itself, based on the user requirement, the
masking has been done for these 1s and 0s, and accordingly, these interconnections are
made at the specific locations.
So in this Mask ROM, the programming of the ROM is done during the fabrication itself.
And once it is fabricated, then the data which is stored in the ROM cannot be altered during
the operation.
So this Mask ROM is the one type of ROM.
But apart from that, we also have the other types of ROM.
So the second type of ROM is the PROM, which is known as the Programmable ROM.
So we have seen that in case of the Mask ROM, we need to program it during the fabrication itself.
But this PROM is the user programmable.
But to program this ROM, the user has to have the special programming hardware.
So in this PROM, initially, all the cross points are interconnected with each other.
That means before programming, if you see the content of this PROM, then it consists
of the all 1s.
But after programming, it is possible to remove some of the interconnections.
That means here, based on the need of the user, user can remove some of the interconnections
by applying a high voltage at the specific pin in the ROM.
So once it is programmed, then wherever there is an interconnection, that point represents
the logic 1.
And wherever there is no interconnection, then that represents the logic 0.
And like I said, using the special programming hardware, it is possible to program these
PROMs.
So once the PROM is programmed, then the fixed bit patterns of 1s and 0s is permanently
established in this PROM.
And once it is established, then it is not possible to alter that.
That means this PROM is the one-time programmable.
But there is another type of ROM, which can be programmed multiple times.
So this third type of ROM is known as the EPROM.
Where this EPROM stands for the Erasable and the Programmable ROM.
So in this type of ROM, once it is programmed, then using the special UV light, it is possible
to erase the content of the ROM.
And then it is possible to reprogram it with the help of the special hardware.
So to erase the content of this ROM, as you can see, on the chip, there is a small transparent
quartz window.
So when this window is exposed with the UV light for a certain duration, then the content
of the ROM will get erased.
And then it is possible to reprogram it with the help of the special hardware.
That means this EPROM is the multiple times programmable.
But to erase it, we need the special kind of UV light.
But there is a fourth type of ROM, which can be erased electrically.
So this ROM is known as the EEPROM.
So this EEPROM stands for the Electrically Erasable Programmable ROM.
So it is similar to the EPROM, but in this case, it is possible to erase the content
of the ROM electrically rather than the UV light.
So the advantage of this ROM is that it can be erased electrically multiple times.
And the typical Erase and Write operations that can be performed on this memory,
varies from 10,000 to 1,00,000.
That means it is possible to erase the content of this EEPROM this many times.
Now if you see the size of this EEPROM, then it varies from few bytes to hundreds of kilobytes.
That means this type of memory is only usable in the applications where we want to store
the small amount of data.
So if you see this EEPROM, then it allows the byte level write and the erase operations.
That means in this EEPROM, at any given time, only one byte of information can be
erased or written in the memory.
Now similar to the EEPROM, there is another type of non-volatile memory which is
often used for the storage.
And this memory is known as the flash memory.
So similar to the EEPROM, this flash memory can also be electrically erased and reprogrammed.
But unlike the EEPROM, this flash memory supports the block level erasing.
That means during the erase operation, instead of erasing a single byte at a time, it erases
the data of the entire block.
Now if you see the size of these memories, then it varies from the megabytes to gigabytes.
And that is why it is used in the storage devices like the USB flash drive and the SSDs.
And similar to the EEPROM, the number of write operations that we can perform on
this memory is limited.
So there are two types of flash memories that is available commercially.
That is the NAND flash and the NOR flash.
So this NAND flash offers the better write speed compared to the NOR flash.
But if you see the read speed, then it is slower than the NOR flash.
On the other hand, if you see the NOR flash, then it provides the good read speed, but
it has a slower write speed compared to the NAND flash.
And because of its lower density, it is more costlier than the NAND flash.
So if you see this NAND flash, then it is more cost effective for the large storage capacities.
And that is why this NAND flash is used in the storage drives.
On the other hand, this NOR flash is used in the microcontrollers and the BIOS chips
to store the program and the configurations.
So basically, it is used in the applications where the write operations are not performed
frequently and we also need the good reading speed.
So these are the different types of ROMs.
And depending on the applications, the different types of ROMs are used at different places.
So in general, since the ROM is a non-vertical memory, so it is used for storing the permanent
instructions and the data, which is critical for the device operations.
Apart from that, in the embedded systems, it is used for storing the program code,
the configuration parameters and the calibration settings.
Moreover, in the computer systems, this BIOS firmware is also stored in these ROMs.
So in the early days, it was stored in the ROM, but nowadays, it is stored in the NOR
type flash memory.
So apart from that, the firmware for the peripheral devices like the printers and the keyboards
is often stored in the ROM.
So these are the few applications of the ROM.
So apart from storing the data, the ROM can also be used as a programmable logic device.
And with the help of it, it is possible to implement the different logic circuits.
So in the next video, we will see that how the ROM can be used as a programmable logic device.
But I hope in this video, you understood the basic structure of the ROM, the different
types of ROMs, as well as the different applications of the ROM.
So if you have any question or suggestion, then do let me know here in the comment section below.
If you like this video, hit the like button and subscribe to the channel for more such videos.
Посмотреть больше похожих видео
CH01_VID04_Memory Essentials
ROM Organization of Microcontroller 8051 | ROM Memory of 8051 | 8051 Memory Organization
Primary Memory : Types and differences from Secondary Storage Memory
How do computers work? CPU, ROM, RAM, address bus, data bus, control bus, address decoding.
CH01_VID06_Buses
Basics of OS (Computer System Operation)
5.0 / 5 (0 votes)