- 2072 Asoj · 2+6 marks
Address decoding with PROM decoder
Short answer
Address decoding generates a chip-select from higher address lines so only one device responds. A PROM can act as a programmable decoder: address lines select outputs programmed to assert the required chip-select. Example: 8085 with four 8K devices uses A15-A13 to select ROM1, ROM2, RAM1, RAM2.
What do you understand by address decoding? Explain with example how PROM decoder is used in memory address decoding.
Address decoding is the process of using the higher-order address lines (and control signals) to generate the chip-select signal of a memory or I/O device, so that only one device is active for a given address. The lower-order lines go directly to the device to select a location inside it.
PROM as a decoder
A PROM (programmable read-only memory) can be used as a programmable decoder. The address lines to be decoded are connected to the PROM's address inputs, and its data outputs are the chip-select signals (active low). The PROM contents are programmed so that, for each input combination, only the required output is 0.
Advantages: any memory map, even one with irregular blocks, can be implemented by programming; it needs fewer chips than logic built from gates or a 74LS138; the map can be changed by reprogramming; and it is fast.
Example
8085 system with four 8K devices: ROM1 (0000–1FFFH), ROM2 (2000–3FFFH), RAM1 (4000–5FFFH), RAM2 (6000–7FFFH). A15, A14, A13 go to PROM address inputs A2, A1, A0; outputs O0–O3 (active low) go to the CS' of the four chips. A12–A0 go to the chips directly.
A15 A14 A13 | O3 O2 O1 O0 | Selected
0 0 0 | 1 1 1 0 | ROM1 0000-1FFF
0 0 1 | 1 1 0 1 | ROM2 2000-3FFF
0 1 0 | 1 0 1 1 | RAM1 4000-5FFF
0 1 1 | 0 1 1 1 | RAM2 6000-7FFF
1 x x | 1 1 1 1 | none 8000-FFFF
A15 -->[A2 O0]--> CS' ROM1
A14 -->[A1 PROM O1]--> CS' ROM2
A13 -->[A0 O2]--> CS' RAM1
O3 --> CS' RAM2
For address 4A00H: A15A14A13 = 010, so O2 = 0 and only RAM1 is selected. The stored data (E, D, B, 7 in hex for the low nibble, and F for the unused rows) is written into the PROM once, when it is programmed.
✓ Answer checked by Claude Opus 5.5 (high effort)
Related questions
- Unique/non-unique decoding, memory mapped I/O · Microprocessor, chapter 4
- Address decoding for input and output ports · Microprocessor, chapter 4
- Address decoding for two 8 KB RAM at C000H · Microprocessor, chapter 4
- Address decoding for input port at 8050H · Microprocessor, chapter 4
- Address decoding for 8 LEDs output port · Microprocessor, chapter 4
- Interface two 4K x 8 ROM with 3:8 decoder · Microprocessor, chapter 4
- Full vs partial address decoding for memory · Instrumentation II, chapter 2
- Unique vs non-unique address decoding · Instrumentation II, chapter 2
- Address sequencing for control memory · Computer Organization and Architecture, chapter 3 · asked 7×
- Address sequencing capabilities of control memory · Computer Organization and Architecture, chapter 3