Step 1: Determine total address size.
Main memory size is 232 bytes, so the number of address bits required is:
Address bits = 32
Step 2: Analyze cache parameters.
Cache size = 32 KB = 32 × 1024 bytes = 215 bytes
Block size = 64 bytes = 26 bytes
Step 3: Calculate offset and index bits.
Offset bits = log2(block size) = 6
Number of cache blocks = 215 / 26 = 29
Index bits = log2(number of blocks) = 9
Step 4: Compute tag bits.
Tag bits = Total address bits − (Index bits + Offset bits)
Tag bits = 32 − (9 + 6) = 17
Final Answer:
17
