###### Software-Engineering

November 11, 2023###### Cache

November 12, 2023# Question 10368 – Cache

A computer system with a word length of 32 bits has a 16 MB byte-addressable main memory and a 64 KB, 4-way set associative cache memory with a block size of 256 bytes. Consider the following four physical addresses represented in hexadecimal notation.

A1 = 0x42C8A4, A2 = 0x546888, A3 = 0x6A289C, A4 = 0x5E4880

Which one of the following is TRUE?

Correct Answer: D

The word length is given as 32 bits and the physical addresses mentioned are all contain 6 hexadecimal digits, so the the physical address is 32 bits long.

Block size is 256 bytes, block offset = 8 bits as it is a byte addressable memory.

Cache size = 64KB

Number of blocks in the cache = 64KB/256B = 256

It is a 4-way set associative cache, so no. of sets in the cache = 256/4 = 64 = 2

^{6}

In the physical address we need 6 bits for the SET number.

TAG bits = 32 – 6 – 8 = 18

So the 32 bits physical address is divided as (18 TAG bits + 6 SET number bits + 8 OFFSET bits)

Since in all the options we are asked about SET numbers of the given addresses, we need to find the SET number of each of the addresses.

A1 = 0x42**C8**A4, here SET number is (00 1000) which includes the last 2 bits of C(1100) and binary representation of 8 (1000).

A2 = 0x54**68**88, here SET number is (10 1000) which includes the last 2 bits of 6(0110) and binary representation of 8 (1000).

A3 = 0x6A**28**9C here SET number is (10 1000) which includes the last 2 bits of 2(0010) and binary representation of 8 (1000).

A4 = 0x5E**48**80 here SET number is (00 1000) which includes the last 2 bits of 4 (0100) and binary representation of 8 (1000).

From the given options option-4 is TRUE as A2, A3 are mapped to the same cache SET.