a. the address format can be computed in two format:
i. for memory addresses
solution
8GB = 1GW (64 bit word = 8 bytes/word), which requires 30 bits (log 2 1G=30). The memory address is divided into line number and word number. With 16 words per line,
we need 4 bits for the line number leaving 26 bits of the line number: 26 –4.
ii. for catch address
refill lines = 128 blocks x 8 bits ( 1 byte) = 1024 direct-mapped cache refill lines
The direct-mapped cache has 1024 refill lines so requires 10 bits for the line number,
leaving 26 – 10 = 16 bits for the tag: 16 – 10 – 4
b. The 4-way set associative cache would have 256 lines in each of 4 sets, so we need 8 bits
for the line number leaving 19 bits for the tag: 18 – 8 – 4.
Explanation: