What is ROM?

ROM

ROM, which stands for read only memory, is a memory device or storage medium that stores information permanently. It is also the primary memory unit of a computer along with the random access memory (RAM). It is called read only memory as we can only read the programs and data stored on it but cannot write on it. It is restricted to reading words that are permanently stored within the unit.

The manufacturer of ROM fills the programs into the ROM at the time of manufacturing the ROM. After this, the content of the ROM can't be altered, which means you can't reprogram, rewrite, or erase its content later. However, there are some types of ROM where you can modify the data.

ROM contains special internal electronic fuses that can be programmed for a specific interconnection pattern (information). The binary information stored in the chip is specified by the designer and then embedded in the unit at the time of manufacturing to form the required interconnection pattern (information). Once the pattern (information) is established, it stays within the unit even when the power is turned off. So, it is a non-volatile memory as it holds the information even when the power is turned off, or you shut down your computer.

The information is added to a RAM in the form of bits by a process known as programming the ROM as bits are stored in the hardware configuration of the device. So, ROM is a Programmable Logic Device (PLD).

A simple example of ROM is the cartridge used in video game consoles that allows the system to run many games. The data which is stored permanently on personal computers and other electronic devices like smartphones, tablets, TV, AC, etc. is also an example of ROM.

For example, when you start your computer, the screen does not appear instantly. It takes time to appear as there are startup instructions stored in ROM which are required to start the computer during the booting process. The work of the booting process is to start the computer. It loads the operating system into the main memory (RAM) installed on your computer. The BIOS program, which is also present in the computer memory (ROM) is used by the microprocessor of the computer to start the computer during the booting process. It allows you to open the computer and connects the computer with the operating system.

ROM is also used to store Firmware, which is a software program which remains attached to the hardware or programmed on a hardware device like a keyboard, hard drive, video cards, etc. It is stored in the flash ROM of a hardware device. It provides instructions to the device to communicate and interact with other devices.

Block Diagram of ROM:

ROM

The block of ROM has 'n' input lines and 'm' output lines. Each bit combination of the input variables is known as an address. Each bit combination that comes out through output lines is called a word. The number of bits per word is equal to the number of output lines, m.

The address of a binary number refers to one of the addresses of n variables. So, the number of possible addresses with 'n' input variables is 2n. An output word has a unique address, and as there are 2n distinct addresses in a ROM, there are 2n separate words in the ROM. The words on the output lines at a given time depends on the address value applied to the input lines.

Internal Structure of ROM:

The internal structure comprises two basic components: decoder and OR gates. A decoder is a circuit that decodes an encoded form (such as binary coded decimal, BCD) to a decimal form. So, the input is in binary form, and the output is its decimal equivalent. All the OR gates present in the ROM will have outputs of the decoder as their output. Let us take an example of 64 x 4 ROM. The structure is shown in the following image.

ROM

This Read Only Memory consists of 64 words of 4 bits each. So, there would be four output lines, and one of the 64 words available on the output lines is determined from the six input lines as we have only six inputs because in this ROM we have 26 = 64, so we can specify 64 addresses or minterms. For each address input, there is a unique selected word. For example, if the input address is 000000, word number 0 will be selected and applied to the output lines. If the input address is 111111, word number 63 is selected and applied to the output lines.

Features of ROM:

ROM (Read-Only Memory) possesses several distinct features that make it suitable for various applications. Let's explore some key features of ROM in simple language.

  • Non-Volatile Memory: ROM is a non-volatile memory type; thus, it keeps its data even when the power is switched off. This makes it suitable for storing permanent instructions and data since it guarantees that the recorded information will remain intact and may be accessed whenever necessary.
  • Read-Only Nature: Reading-only memory, or ROM, as its name implies, prevents data from being readily modified or wiped. This characteristic provides stability and prevents accidental alterations, ensuring the integrity and reliability of the stored information.
  • Permanent Storage: ROM offers permanent storage of data and instructions. Once the data is programmed into ROM during manufacturing, it remains fixed and cannot be changed without physically replacing the ROM chip. This permanence guarantees the consistency and stability of the stored information.
  • Firmware Storage: ROM is commonly used for storing firmware containing essential instructions for operating electronic devices. ROM's non-volatile and read-only nature ensures that the firmware remains unchanged, providing reliable and consistent functionality to the device.
  • Booting and Initialization: ROM plays a crucial role in electronic systems' booting and initialization processes. The firmware stored in ROM contains the initial instructions required to start the system, load the operating system, and initiate the hardware components. This ensures a smooth and controlled startup sequence for the device.
  • Data Security: ROM offers inherent data security. Since the data stored in ROM cannot be modified or erased, it protects against unauthorized alterations or tampering. This feature enhances the security and authenticity of the stored information, making ROM suitable for critical instructions and sensitive data.
  • Instant Read Access: ROM provides instant read access to the stored instructions and data. The information can be accessed directly without time-consuming loading, enabling quick retrieval and execution of essential instructions.
  • Compatibility: ROM is compatible with various systems and architectures, allowing seamless integration into different electronic devices and systems. This compatibility ensures that ROM can be utilized in various applications.
  • Reliability: Due to its read-only nature, ROM offers high reliability. The data stored in ROM is not susceptible to accidental modifications or loss, ensuring consistent and predictable performance over time. Such dependability is crucial for important systems where stability and data integrity are of the utmost importance.
  • Cost-Effectiveness: ROM is generally more cost-effective than other memory types, making it an economical choice for many applications. Production costs are cheaper since the manufacturing procedures used to produce ROMs are well-established.

Types of ROM:

1) Masked Read Only Memory (MROM):

ROM

It is the oldest type of read only memory (ROM). It has become obsolete so it is not used anywhere in today's world. It is a hardware memory device in which programs and instructions are stored at the time of manufacturing by the manufacturer. So it is programmed during the manufacturing process and can't be modified, reprogrammed, or erased later.

The MROM chips are made of integrated circuits. Chips send a current through a particular input-output pathway determined by the location of fuses among the rows and columns on the chip. The current has to pass along a fuse-enabled path, so it can return only via the output the manufacturer chooses. This is the reason the rewriting and any other modification is not impossible in this memory.

2) Programmable Read Only Memory (PROM):

ROM

PROM is a blank version of ROM. It is manufactured as blank memory and programmed after manufacturing. We can say that it is kept blank at the time of manufacturing. You can purchase and then program it once using a special tool called a programmer.

In the chip, the current travels through all possible pathways. The programmer can choose one particular path for the current by burning unwanted fuses by sending a high voltage through them. The user has the opportunity to program it or to add data and instructions as per his requirement. Due to this reason, it is also known as the user-programmed ROM as a user can program it.

To write data onto a PROM chip; a device called PROM programmer or PROM burner is used. The process or programming a PROM is known as burning the PROM. Once it is programmed, the data cannot be modified later, so it is also called as one-time programmable device.

Uses: It is used in cell phones, video game consoles, medical devices, RFID tags, and more.

3) Erasable and Programmable Read Only Memory (EPROM):

ROM

EPROM is a type of ROM that can be reprogramed and erased many times. The method to erase the data is very different; it comes with a quartz window through which a specific frequency of ultraviolet light is passed for around 40 minutes to erase the data. So, it retains its content until it is exposed to the ultraviolet light. You need a special device called a PROM programmer or PROM burner to reprogram the EPROM.

Uses: It is used in some micro-controllers to store program, e.g., some versions of Intel 8048 and the Freescale 68HC11.

4) Electrically Erasable and Programmable Read Only Memory (EEPROM):

ROM

ROM is a type of read only memory that can be erased and reprogrammed repeatedly, up to 10000 times. It is also known as Flash EEPROM as it is similar to flash memory. It is erased and reprogrammed electrically without using ultraviolet light. Access time is between 45 and 200 nanoseconds.

The data in this memory is written or erased one byte at a time; byte per byte, whereas, in flash memory data is written and erased in blocks. So, it is faster than EEPROM. It is used for storing a small amount of data in computer and electronic systems and devices such as circuit boards.

Uses: The BIOS of a computer is stored in this memory.

5) FLASH ROM:

ROM

It is an advanced version of EEPROM. It stores information in an arrangement or array of memory cells made from floating-gate transistors. The advantage of using this memory is that you can delete or write blocks of data around 512 bytes at a particular time. Whereas, in EEPROM, you can delete or write only 1 byte of data at a time. So, this memory is faster than EEPROM.

It can be reprogrammed without removing it from the computer. Its access time is very high, around 45 to 90 nanoseconds. It is also highly durable as it can bear high temperature and intense pressure.

Uses: It is used for storage and transferring data between a personal computer and digital devices. It is used in USB flash drives, MP3 players, digital cameras, modems and solid-state drives (SSDs). The BIOS of many modern computers are stored on a flash memory chip, called flash BIOS.

Uses of ROM:

ROM (Read-Only Memory) is used in various electronic devices. Let's explore the numerous ROM apps found in these electronic devices.

Computers:

In computer systems, ROM is essential. The Basic Input/Output System (BIOS) and first startup instructions are stored as part of the computer's firmware. The firmware included in ROM is in charge of initializing the hardware elements, running self-tests, and loading the operating system into memory when you switch on your computer.

Video Games:

ROM is widely used in video games. Game data was previously stored on ROM cartridges in earlier gaming consoles and portable devices. These cartridges carried the game's code, graphics, sound, and other components on ROM chips. A gaming console loads the game when you insert a game cartridge by reading the data from the ROM chip. Using ROM in video games allowed for easy distribution and ensured that the game data remained intact without the risk of accidental modifications.

Smartphones:

ROM is essential in smartphones for storing firmware, such as the operating system and built-in applications. To maintain consistency throughout the device's existence, manufacturers program the firmware into the ROM during the device's construction. The bootloader, which starts the booting process and loads the operating system, is also included in ROM. By utilizing ROM, smartphones can provide stable and reliable performance and protect the firmware from potential corruption or tampering.

Digital Speed Meters:

In the automotive industry, ROM is used in digital speed meters or speedometers. The ROM chip in these devices stores the calibration data and conversion tables needed to measure and display the vehicle's speed accurately. This ensures that the speed meter operates consistently and provides accurate readings. The non-volatile nature of ROM ensures that the calibration data remains intact even if the power is disconnected or the vehicle is turned off.

Programmable Electronics:

ROM is used in programmable electronic devices, microcontrollers, and programmable logic devices (PLDs). Those devices frequently use programmable read-only memory (prom) or erasable programmable read-only memory (EPROM). Users can program these ROM chips to preserve certain information or instructions that the device can access and carry out. This flexibility allows for customization and flexibility in various digital applications, along with robotics, automation, and control systems.

Advantages of ROM:

  1. Data Retention: ROM maintains data even without power, ensuring that crucial data is retained and accessible whenever necessary.
  2. Permanent Storage: ROM's non-modifiable nature assures that the information stored inside stays intact, making it a reliable and consistent source of data and instructions.
  3. Reliable Performance: As ROM is read-only, unintentional modifications are prevented, ensuring that stored data will work reliably and consistently over time.
  4. Non-Volatile Memory: ROM is an option for storing important instructions, firmware, and data that shouldn't be changed since it can preserve data without a constant power source.
  5. Stability: The ROM offers a strong basis for the booting process and overall system function by storing crucial instructions and calibration data, assuring consistent and predictable performance.
  6. Data Security: Read-only memory (ROM) protects against unauthorized alterations, strengthening the security of data held within and preventing unauthorized access.
  7. Instant Accessibility: The ability to instantly access data and instructions stored in ROM reduces the need for time-consuming data loading procedures, allowing for speedier system operation.
  8. Simple Design and Manufacturing: The design of ROM chips makes it simple to integrate them into electrical equipment.
  9. Cost-Effectiveness: ROM is often less expensive than other memory types, making it a cost-effective option for many applications without compromising performance.
  10. Compatibility: ROM may easily be integrated into various electronic systems and devices since it is compatible with various architectures and systems.

Disadvantages of ROM:

  1. Immutability: The main disadvantage of ROM is its inability to be modified or updated. Once data is programmed into ROM, it cannot be changed, limiting its flexibility and adaptability in certain applications.
  2. Limited Flexibility: Unlike writable memory, such as RAM or flash memory, ROM does not allow for dynamic changes or updates to the stored data, restricting its use in situations that require frequent modifications.
  3. Manufacturing Challenges: Manufacturing ROM chips requires special processes, making them less flexible and potentially more expensive to produce than other types of memory.
  4. Design Constraints: The fixed nature of ROM imposes design constraints as the data programmed into it cannot be easily altered or expanded. This can be limiting when system requirements change, or additional functionality is desired.
  5. Time-Consuming Development: Creating and programming ROM requires significant time and effort during the development phase, which may slow down the overall product development cycle.
  6. Higher Costs for Small-Scale Production: The initial costs associated with ROM production, such as mask creation, can be relatively high, making it less cost-effective for small-scale or customized production runs.
  7. Lack of Upgradability: ROM can only be upgraded or replaced with newer versions by physically replacing the entire chip, which can be costly and impractical in many situations.
  8. Storage Inefficiency: ROM is read-only; unused space within the ROM chip cannot be utilized, resulting in potential storage inefficiencies.
  9. Limited Error Correction: Unlike other memory types, ROM does not provide built-in error correction mechanisms, which can disadvantage applications with critical data integrity.
  10. Reduced Versatility: The fixed nature of ROM makes it less versatile for applications that require dynamic storage and frequent changes to the stored data.

Frequently asked questions

How is ROM different from RAM?

A: ROM, or Read-Only Memory, holds permanent data even when the power is off. It is used for storing instructions and data that stay the same. In contrast, RAM, or Random Access Memory, is volatile and stores temporary data quickly accessible by the computer's processor.

Can I store my data in ROM?

A: No, ROM is pre-programmed during manufacturing and cannot be easily modified by users. It is designed to store firmware, system instructions, and data that must remain unchanged.

Is data in ROM secure?

A: Yes, data stored in ROM is secure from unauthorized modifications. Since ROM is read-only, the data cannot be easily altered or tampered with, providing security for critical instructions and data.

How long can data be retained in ROM?

A: Data stored in ROM can be kept for many years, possibly even decades. The data saved in the ROM chip endures for a long time as long as the physical integrity of the chip is preserved.

Can ROM be reprogrammed?

A: Some ROM types, such as PROM (Programmable Read-Only Memory), EPROM (Erasable Programmable Read-Only Memory), and EEPROM (Electrically Erasable Programmable Read-Only Memory), may be reprogrammed using particular techniques and tools. However, compared to changing data in readable memory like RAM or flash memory, reprogramming ROM is more difficult and calls for specialized equipment.