1 cache block contains maximum of 64 elements
which means there will be 1 miss in every 64 references
We have Total 2500 (50*50) elements.
Since 1 element = 1 Byte
In first iteration :
Maximum capacity of elements in cache = 32 * 64 = 2048 elements = 2048 references (compulsory miss )
That means 2500-2048=452 elements will be left , when the cache size gets full
these 452 references will again replace 452 elements in the cache. ( conflict miss )
In second iteration :
452 elements will again be replaced as they were the last 452 elements of the array. ( conflict miss )
In between for 1144 elements there will not be any conflict misses
And Finally the last 452 elements will again require the replacement of first 452 elements. ( conflict miss )
So total misses = 2048/64 + ceil(452/64) + ceil(452/64) + ceil(452/64) = 56 misses