Contents

Digital Electronics
Number Systems
Logic Gates
Boolean Algebra
Combinational Circuits
Sequential Circuits
Memory & PLDs
Digital System Design
Other Topics
Other Subjects
Section Progress17%

2 of 12 articles

PROM

Programmable ROM, fusible links, one-time programming.

Darshan N
Updated: 7 April 2026
5 min read

Before EPROM existed, engineers who needed field-programmable firmware used PROM — a one-time programmable ROM that ships blank and gets its data burned in by the end user. PROM programming stations were standard equipment in every embedded systems lab through the 1980s.

PROM — Fusible Link Cell Structure & ProgrammingBefore Programming(all fuses intact = all 1s)WL0WL1BL0BL1BL2fusefusefusefusefusefuseAll cells read as logic 1(fuse intact = connection to VCC)Programming: apply 12V–21V pulseto selected cell to blow fuse → 0After Programming(blown fuses = 0, intact = 1)WL0WL1BL0BL1BL2blown=0111blown=01W0: 0,1,1 → stored patternW1: 1,0,1 → stored patternOTP — cannot be undoneBipolar PROM (74S287/74S472): programming voltage 10.5V–12V pulse, 10–50 µs
Figure 1: PROM fusible link structure. Intact fuse = logic 1. Blown fuse = logic 0. Programming is irreversible.

Core Concept

A Programmable ROM (PROM) is a one-time programmable device. It leaves the factory with all bits set to 1 (all fuses intact). Programming selectively blows specific fuses by applying a high-voltage pulse (typically 12V to 21V depending on technology) through a PROM programmer device. A blown fuse disconnects the bitline from the wordline at that cell, causing it to read as 0. Intact fuses read as 1. The process is irreversible — once blown, a fuse cannot be restored.

Bipolar PROMs like the 74S287 (512×4) and 74S472 (512×8) use Schottky transistors and nickel-chromium fusible links. They are fast (access time 35–70 ns) but consume significant power. CMOS PROMs use MOSFET-based anti-fuse structures where programming creates a conductive link rather than blowing one. The 82S123 (256×4) is another classic bipolar PROM still referenced in textbooks.

PROM was largely replaced by EPROM and EEPROM in development environments, but OTP (one-time programmable) variants of Flash memory serve the same purpose in modern embedded systems at much higher densities. Microcontrollers like the PIC16F84 have internal OTP program memory in early versions. PROM remains important as an architectural concept because it introduced field-programmability to ROM-based systems.

Boolean Expression

Like mask ROM, a PROM implements any combinational Boolean function. For a PROM with n address inputs and m outputs: capacity = 2ⁿ × m bits. The user programs the truth table directly into the device. The 74S472 has 9 address lines and 8 data lines: capacity = 2⁹ × 8 = 4096 bits = 512 bytes. Unblown cells default to 1, so programming writes 0s — the programmer only needs to blow fuses for cells that should be 0.

Example
Given:
Program a PROM to implement a 2-bit priority encoder
Inputs: I3, I2, I1, I0  (4 inputs, one-hot)
Outputs: Y1, Y0 (encoded output, 2 bits)
PROM size needed: 2^4 × 2 = 32 bits (16 locations × 2 bits)

Formula / Rule:
Priority: I3 highest, I0 lowest
Output = binary code of highest-priority active input

Step by step — PROM contents (address = I3I2I1I0):
Addr 0001 (I0 only): Y1Y0 = 00
Addr 0010 (I1 only): Y1Y0 = 01
Addr 0100 (I2 only): Y1Y0 = 10
Addr 1000 (I3 only): Y1Y0 = 11
Addr 1010 (I3,I1):   Y1Y0 = 11  (I3 has priority)
Addr 1111 (all):     Y1Y0 = 11  (I3 has priority)
(all other addresses: Y1Y0 = 00 for no valid input)

Programming action:
Blow fuses at cells that must output 0
Leave intact cells that must output 1

Final Answer:
PROM programmed with 16-entry truth table implements
complete priority encoder — no gates required
Exam Tip: GATE distinguishes PROM, EPROM, and EEPROM primarily by erasability. PROM = one-time programmable (fuse-based, irreversible). EPROM = erasable by UV light (entire chip at once). EEPROM = electrically erasable (byte or page at a time). Also remember that all unblown cells in a PROM read as 1, not 0 — so a blank PROM reads all 1s. A common mistake is assuming a blank PROM reads all 0s.

Key Properties

  • One-time programmable: fuse blow is irreversible — cannot be erased or reprogrammed
  • Blank state: all bits = 1 (all fuses intact); programming blows fuses to write 0s
  • 74S287: 512×4 bits, bipolar, tACC = 50 ns, VCC = 5V, programming voltage ≈ 10.5V
  • 74S472: 512×8 bits, bipolar PROM, tACC = 35–70 ns, uses nickel-chromium fusible links
  • 82S123: 256×4, popular in older textbook examples, 45 ns access time
  • Power: bipolar PROM dissipates 300–600 mW standby — much more than CMOS-based ROM
  • Modern equivalent: OTP Flash in microcontrollers (PIC, AVR OTP variants) — much higher density

Quick Revision

  • PROM = Programmable ROM = one-time programmable, factory-blank, user-programmed
  • Fusible link technology: intact = 1, blown = 0; programming is irreversible
  • Programming requires high-voltage pulse (10.5–21V) through a PROM programmer
  • Blank PROM reads all 1s — do not confuse with blank EPROM (also all 1s after erase)
  • 74S287 (512×4) and 74S472 (512×8) are the standard bipolar PROM ICs in textbooks
  • PROM implements any combinational function of its address inputs
  • Replaced by EPROM in development; OTP Flash replaces it in modern production
  • Exam trap: assuming a blank PROM reads all 0s — it reads all 1s because all fuses are intact

PROM Practice Quiz

Test your understanding of Programmable ROM and fusible link technology.

Question 1 of 3

Q1.In a PROM, what is the initial state of all fusible links before programming?