Microprocessor 1971 Store Program Separate Read Only Memory Chip

# Store the Program in a Separate Read-Only Memory Chip: Keep Instructions Stable Outside the Processor

## 1. Let the 4004 Select Instructions From a 4001 Program ROM

The Intel 4004 did not contain the program it executed. Its program counter generated an address, while a separate Intel 4001 chip stored 256 eight-bit instruction words in a mask-programmed read-only-memory array. The 4001 also included a four-bit input/output port, but its central role in instruction fetch was to convert the requested address into the next program byte.

Each 4001 stores

$$256\ \text{words}\times8\ \text{bits per word}=2048\ \text{program bits}$$

The twelve-bit program address is sent over the shared four-bit bus during A1, A2, and A3. The low and middle address groups select one of 256 word locations inside a 4001; the high group identifies the ROM chip. The selected 4001 then returns the eight-bit instruction as its upper OPR group during M1 and lower OPA group during M2. This is the address-and-data multiplexing from Step 3 put to a concrete purpose.

The CPU Names an Address; the ROM Returns an Instruction one four-line bus changes direction between address and instruction phases 4004 CPU 12-BIT PROGRAM COUNTERaddress of next instruction 8-BIT INSTRUCTION REG.OPR + OPA 4001 ROM 256 × 8 ARRAYaddress decodermask-programmed words2,048 stored bits 4-BIT I/O PORT D3–D0 SHARED BUS A1 · A2 · A3 — ADDRESS M1 · M2 — INSTRUCTION FETCH CONTRACT CPU supplies location → selected ROM supplies immutable instruction word

## 2. Encode the Program in the ROM Mask Instead of Rebuilding the CPU

In a mask-programmed ROM, the presence or absence of fabricated connections determines the stored bit pattern. The program is therefore fixed when the ROM's manufacturing mask is defined. Normal execution can select and read those bits repeatedly, but the 4004 cannot rewrite the 4001 array in the field.

This separation is the architectural breakthrough introduced in Step 1 made physical. The 4004 supplies a reusable fetch, decode, and execution engine; the 4001 supplies the application-specific instruction sequence. A calculator, controller, or another product can use the same processor design while pairing it with differently programmed ROM. What the system does moves out of the CPU's permanent wiring and into an ordered sequence of stored instruction words.

The separation also makes capacity modular. A twelve-bit program address spans 4,096 byte locations, and its high four-bit group can select among 4001 devices while the lower eight bits select one of 256 words within a chip:

$$2^{12}=4096\ \text{addressable program-byte locations}$$

The system can therefore grow its program store by adding ROM chips without widening the 4004's four-line data bus or redesigning its arithmetic core.

One Processor Becomes Different Products Through Program ROM the execution engine is reused; the mask-programmed instruction sequence changes COMMON 4004 CPU fetch · decode · registers · adder same physical processor design 12-BIT PROGRAM ADDRESS select program 4001 ROM Acalculator instruction wordsmask pattern APRODUCT BEHAVIOR A 4001 ROM Bcontroller instruction wordsmask pattern BPRODUCT BEHAVIOR B 4001 ROM Cinstrument instruction wordsmask pattern CPRODUCT BEHAVIOR C change the stored sequence, not the processor's transistor network

## 3. Distinguish Stable Program ROM From Writable, Refreshing DRAM

The 4001 and the 1968 one-transistor/one-capacitor DRAM cell both preserve information for later use, but they solve different storage problems. A mask ROM bit is embodied by a manufactured connection pattern. It is nonvolatile and requires no periodic refresh, but ordinary system operation cannot change it. A DRAM bit is represented by charge on a capacitor. It is writable at electronic speed, but leakage makes that state temporary, so sensing, restoration, and refresh are essential.

Property4001 mask-programmed ROM1T1C DRAM cell
Stored stateFabricated connection patternCapacitor charge level
Writable during normal useNoYes
Retains state without powerYesNo
Periodic refreshNot requiredRequired
MCS-4 role hereStable program instructionsNot the 4001 program store

This is not a contest in which one memory is universally superior. Program instructions for a shipped calculator benefit from permanence; changing working quantities benefit from writability. The architecture assigns each kind of state to a storage technology whose physical behavior matches its role.

Step 6 completes the fetch path from program counter to external ROM and back to the instruction register. Step 7 will confront the timing consequence: because addresses and instructions share four pins, the processor and memory system require a coordinated multi-phase clock scheme to keep every transfer in order.

Take microprocessor 1971 store program separate read only memory chip further

Ask the copilot about this term, or have our engineers assess it against your process.