Term
How do you compute length of bits for tag, index, and offset fields? |
|
Definition
1. "x" bits for offset where cache block size = 2x
2. Cache size = 2x and cache block size = 2y
cache size/(#-way-assoc*cache block size) = (2x/ #*2y)/log(2) = z
"z" = bits for index
3. Remaining bits = Total num of bits - (offset + index) = # of tag bits |
|
|
Term
What is the order of bits within a binary memory address? |
|
Definition
|
|
Term
Explain what the index of an address is used for, and why it does not need to be stored in the cache. |
|
Definition
The index determines for a memory address which set in the cache it is mapped to. It does not need to be stored since it can be derived from the set where the memory is found. |
|
|
Term
What is the function of a translation lookaside buffer (TLB), and why does it need to be performed quickly (e.g., 1-2 clock cycles)
|
|
Definition
The TLB caches a small number of page table entries and is used to quickly determine for a virtual memory address which page in physical memory it is mapped to (if any). It needs to be very fast because it must be applied to ever memory reference. |
|
|