Quiz 3
Quiz 3
1a)
given
64KB = 65,536B
Written in bytes not wordings
number of offset bits = log2(32) = 5
Number of sets = 65,536/32 = 2048
Number of set/index bits = log2(2048) = 11
Number of tag bits = 32 - 5 (offset) - 11 (sets/index) = 16
64kb/32byte = 2^16/2^5 = 2^11 blocks
tag bits = 16
1b)
0000 0000 0010 1100 0000 1100 0101 0100 - Memory Address in Binary
0000 0000 0010 1100 - Tag
0000 0101 0100 - Index
1c)
0x2c0c50, 0x2c0c54, 0x2c0c58, 0x2c0c5c
1d)
size of tag memory = no of tag bits * no of cache blocks
size of tag memory = 16 * 2K bits = 32 k bits
cache = 64kb = 512k bits
total bits = size of cache + size of tag memory = 512k + 32k = 544 k bits
Bits in Cache = (2^index bits ) * (valid bits + tag bits + block size in bits) =
211 * (1 + 16 + (32*8)) = 559,104b
2
code
Initial answer
Offset = log2(4) = 2
index = log2(N/k) = log2(16k/4) = log2(4k) = 12 bits
tag = 32 - 12 - 2 -2 = 16bits
bit memory address, in cache = (2^index bits ) * (Valid bits + Tag bits + block size in bits) =
211 * (1 + 16 + (32*8)) = 559,104b
Revised
Offset = log2(32) = 5
#number of sets = 16384 / 32 = 512
#number of index = log2 (512) = 9
# number of tag bits = 16384 - 9 - 512 - 5 = 15858