I have a cache memory simulator with this cache memory shown.
The cache size is 64 bytes and the block size is 8 bytes. What is the decomposition into fields? If block size is 8 bytes, then log(2^3)=3 bits are for block offset to point out a byte within a block. For 64 bytes with 8 bytes per row, it will have 8 rows and hence 3 bits for index bits, one bit is the dirty bit that should flag for dirty data and the rest = 25 bits are for the tag. Is this interpretation correct? Then what is meant by the 31..6..3..2..0 and the white and grey color of the incoming address?