Skip to content

GATE CS 2023 Q32 — Memory Hierarchy: Cache, Main Memory and Secondary Storage

Explain with AI

A 44 kilobyte (KB)\text{(KB)} byte-addressable memory is realized using four 1 KB1 \mathrm{~KB} memory blocks. Two input address lines (IA4 and IA3)\text{(IA4 and IA3)} are connected to the chip select (CS)\text{(CS)} port of these memory blocks through a decoder as shown in the figure. The remaining ten input address lines from IA11-IA0\text{IA11-IA0} are connected to the address port of these blocks. The chip select (CS)\text{(CS)} is active high.

The input memory addresses (IA11-IA0),\text{(IA11-IA0)}, in decimal, for the starting locations (Addr = 0)\text{(Addr = 0)} of each block (indicated as X1, X2, X3, X4\text{X1, X2, X3, X4} in the figure) are among the options given below. Which one of the following options is CORRECT?\text{CORRECT}?

Choose one option
View worked solution

Answer: C

The system has a total of 12 address lines, IA11\text{IA11} to IA0\text{IA0}. Out of these, two address lines IA4\text{IA4} and IA3\text{IA3} are used as inputs to the 2×42 \times 4 decoder to select one of the four 1 KB1\text{ KB} memory blocks (X1,X2,X3,X4X_1, X_2, X_3, X_4).

The remaining 10 address lines (IA11-IA5\text{IA11-IA5} and IA2-IA0\text{IA2-IA0}) are connected to the address ports of the memory blocks. For the starting location (Addr=0\text{Addr} = 0) of any block, all these 10 internal address lines must be set to 00:

IA11=IA10=IA9=IA8=IA7=IA6=IA5=IA2=IA1=IA0=0\text{IA11} = \text{IA10} = \text{IA9} = \text{IA8} = \text{IA7} = \text{IA6} = \text{IA5} = \text{IA2} = \text{IA1} = \text{IA0} = 0

The starting address of each block is determined solely by the selection lines (IA4,IA3)(\text{IA4}, \text{IA3}):

  • Block X1X_1 (IA4 IA3=002)(\text{IA4}\ \text{IA3} = 00_2): Address =0000000000002=0= 000000000000_2 = 0
  • Block X2X_2 (IA4 IA3=012)(\text{IA4}\ \text{IA3} = 01_2): Address =0000000010002=8= 000000001000_2 = 8
  • Block X3X_3 (IA4 IA3=102)(\text{IA4}\ \text{IA3} = 10_2): Address =0000000100002=16= 000000010000_2 = 16
  • Block X4X_4 (IA4 IA3=112)(\text{IA4}\ \text{IA3} = 11_2): Address =0000000110002=24= 000000011000_2 = 24

Thus, the starting decimal addresses of the blocks are (0,8,16,24)(0, 8, 16, 24).

Free practice · Your answers on this page are not saved.

Published
Report a correction
Keep exploringMore Memory Hierarchy: Cache, Main Memory and Secondary Storage questions