Computing & Software Codexery

Read-only memory

Non-volatile memory that cannot be electronically modified after manufacture.

Read-only memory

Read-only memory (ROM) is a type of non-volatile storage found in computers and electronics. Once a memory device is manufactured, the data on it cannot be changed electronically. This makes ROM ideal for firmware—software that stays the same for most of a system's life. For programmable devices, software like video games can be sold on plug-in cartridges that contain ROM.

In the strictest sense, ROM refers to hard-wired memory, such as diode matrices or mask ROM integrated circuits (ICs), which cannot be altered electronically after production. While discrete circuits can theoretically be modified by adding bodge wires or swapping components, ICs cannot. Fixing errors or updating software requires building and installing entirely new devices.

Floating-gate ROM semiconductors—like erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), and flash memory—can be erased and reprogrammed. However, this process is usually slow, may need special equipment, and is typically limited to a certain number of cycles.

The term "ROM" is also used to refer to a device containing specific software, or to a file holding software meant for a writable ROM device. For instance, people modifying the Android operating system call files with a modified or replacement OS "custom ROMs," named after the type of storage the file was originally written to. They often distinguish between ROM (where software and data live, usually flash memory) and RAM.

ROM and RAM are both essential computer components with different jobs. RAM (random access memory) is temporary and volatile—it loses data when the power is off. ROM, being non-volatile, keeps its data even after shutdown.

**History**

**Discrete-component ROM** IBM used capacitor read-only storage (CROS) and transformer read-only storage (TROS) to store microcode for smaller System/360 models, the 360/85, and the first two System/370 models (370/155 and 370/165). Some models also had a writable control store (WCS) for extra diagnostics and emulation. The Apollo Guidance Computer used core rope memory, which was programmed by threading wires through magnetic cores.

**Solid-state ROM** The simplest solid-state ROM is as old as semiconductor technology itself. Combinational logic gates can be manually wired to map an n-bit address input to any m-bit data output (a look-up table). With the integrated circuit came mask ROM. It uses a grid of word lines (address input) and bit lines (data output), selectively connected by transistor switches, to create a look-up table with a regular layout and predictable delay. Mask ROM is programmed during semiconductor manufacturing using photomasks in photolithography. The mask defines physical features that are either added or removed in the ROM chips; their presence or absence represents a 1 or 0 bit, depending on the design. Because the data is defined by these physical structures, it cannot be changed electronically. For every software program—even revisions of the same one—the entire mask must be changed, which is costly.

Since mask ROM data is physically encoded in the circuit, it can only be programmed during fabrication. This has several serious drawbacks: - It is only economical in large quantities, because users must contract with a foundry to produce a custom design for each piece or revision of software. - The turnaround time from design completion to receiving the finished product is long. - Mask ROM is impractical for R&D, as designers often need to quickly change memory contents while refining a design. - If a product ships with faulty mask ROM, the only fix is to recall the product and physically replace the ROM in every unit.

Later developments addressed these issues. Programmable read-only memory (PROM), invented by Wen Tsing Chow in 1956, lets users program its contents exactly once by physically altering its structure with high-voltage pulses. This solved the first two problems, since a company could order a large batch of blank PROM chips and program them with the desired contents at its convenience.

The invention of the metal–oxide–semiconductor field-effect transistor (MOSFET) at Bell Labs in 1959 enabled MOS transistors to serve as memory cell storage elements in semiconductor memory, a role previously filled by magnetic cores. In 1967, Dawon Kahng and Simon Sze of Bell Labs proposed using the floating gate of a MOS device for a reprogrammable ROM cell. This led Dov Frohman at Intel to invent erasable programmable read-only memory (EPROM) in 1971. EPROM essentially solved the third problem, because it can be repeatedly reset to its unprogrammed state by exposure to strong ultraviolet light.

Electrically erasable programmable read-only memory (EEPROM), developed by Yasuo Tarui, Yutaka Hayashi, and Kiyoko Naga at the Electrotechnical Laboratory in 1972, largely solved the fourth problem. An EEPROM can be programmed in-place if the device containing it can receive program contents from an external source, such as a personal computer.

field
Computer memory technology
known_for
Non-volatile storage of firmware and boot programs
types
Mask ROM, PROM, EPROM, EEPROM, flash memory

Lore & Background

The simplest solid-state ROM is as old as semiconductor technology itself, using combinational logic gates to map address input to data output. With the integrated circuit came mask ROM, programmed with photomasks during semiconductor manufacturing, where data is physically encoded in the circuit. Mask ROM is economical only in large quantities and has long turnaround times, making it impractical for R&D. The invention of the MOSFET enabled MOS transistors as memory cell storage elements. Flash memory, invented in the early 1980s and commercialized in the late 1980s, is a form of EEPROM that permits high-speed erasure and programming of specific parts of the device.

Reader's Guide

Read-only memory has been fundamental to computing, providing non-volatile storage for firmware and boot programs. Early stored-program computers used forms of ROM, such as IBM's capacitor read-only storage (CROS) and transformer read-only storage (TROS), and the Apollo Guidance Computer's core rope memory. ROM was simpler to implement than mutable memory, needing only a mechanism to read stored values. With integrated circuits, ROM memory cells could use fewer transistors than SRAM cells, offering lower cost-per-bit for many years. The evolution from mask ROM to PROM, EPROM, EEPROM, and flash memory progressively addressed disadvantages: mask ROM required costly custom fabrication for each software revision and could not be corrected after shipment; PROM allowed one-time user programming; EPROM enabled erasure and reprogramming; EEPROM allowed in-place electrical reprogramming; and flash memory provided high-speed, partial erasure and reprogramming. By the year 2000, decreasing cost of reprogrammable devices had nearly eliminated the market for mask ROM. The most recent development, NAND flash, aimed to replace hard disks, offering higher throughput, lower latency, greater shock tolerance, miniaturization, and lower power consumption. ROM and RAM remain essential components, with ROM preserving data when power is off, while RAM is volatile.

Did You Know?

Frequently Asked Questions

What is Read-only memory (ROM)?

ROM is a non-volatile memory chip whose stored data is permanently fixed at the time of manufacture and cannot be altered electronically afterward. It acts as a fixed repository for the low-level code a system needs every time it powers on.

What types of ROM exist?

The principal variants are Mask ROM (data etched during fabrication), PROM (programmable once by the user), EPROM (erasable with ultraviolet light), EEPROM (electrically erasable), and flash memory (the modern successor found in USB sticks and phones).

Why is ROM important in computing history?

ROM gave early stored-program computers a reliable, fixed location for their bootstrap code, removing the need to manually load instructions at every startup. It went on to anchor firmware storage across decades of consumer and industrial electronics.

How does ROM differ from ordinary RAM?

Unlike RAM, which is volatile and freely readable and writable during operation, ROM keeps its contents without power and resists any electronic modification once it leaves the factory. This makes it well suited for code that must survive power cycles and tampering.

Where is ROM (or its descendants) used in everyday devices?

You'll find it in the boot firmware of smartphones, the BIOS/UEFI chip on a motherboard, and the embedded controllers inside appliances and car ECUs. In each case it holds the low-level instructions that bring the device to life before any user software runs.

More in Computing & Software 1-22

Spotted an error? Know more?

This is a living reference — every entry is fact-audited, and reader corrections feed straight into our audit queue. Suggest an edit · See this site's audit record

Comments

Loading…
Open in the interactive codex →