A ROM can implement combinational logic by treating the input bits as an address and storing the desired output bits at that address. Each stored word is one truth-table row. This is a general method for implementing several output functions of the same input variables.

Worked example

Implement a full adder with inputs A, B and Cin as a three-bit address. Store two output bits, carry and sum, in eight words. Address 111 corresponds to 1 + 1 + 1 = 3, so its stored word is 11. Address 010 stores 01.

What to watch for

This is a logical lookup-table model. Actual memory access latency and interface timing determine when an output is valid; not every physical ROM has an asynchronous combinational interface.

Try it yourself

How many rows are required for a four-input function stored in a ROM?

Answer: Sixteen. Use four address bits and store each row's output word at the matching address.

How to study this topic

Separate the ideal logical model from the physical device interface. Write units beside capacities, voltages and timing values. The architecture explains the idea; the chosen part's documentation supplies the operating limits.

Explore related programmes

These recorded programmes are upcoming. This article is general educational content, not a syllabus or course sample.

Digital Electronics