Sunday, September 5, 2021

Fully Associative Cache Memory

 

What is Cache Memory?

Small section of SRAM added between processor and main memory to speed up execution process is known as cache memory. Cache memory is a special high-speed memory. It is buffer between CPU and Main Memory.

It helps to increase the processing speed of CPU to provide data of program which is currently in execution mode. A cache memory system includes a small amount of fast memory (SRAM) and a large amount of slow memory (DRAM).

Fully Associative Cache Memory

The diagram shows that fully associative-mapping technique. In this technique, a main memory block can be placed into any cache block position. As there is no fix block, the memory address has only two fields: word and tag. This technique is also referred to as fully-associative cache.

 

Figure: Fully Associative Cache Memory

The tag bits are required to identify a memory block when it is resident in the cache. The higher-order 12-bits of an address received from the CPU are compared to the tag bits of each block of the cache to see if the desired block is present. Once the desired block is present the word is used to identify the necessary word from the cache. The technique gives complete freedom in choosing the cache location in which to place the memory block. Thus, the memory space in the cache can be used to more efficiently. A new block that has to be loaded into the cache has to replace (remove) an existing block only if the cache is full.

Drawback: In this technique, it is necessary to compare the higher-order bits of address of the main memory with all 128-tag corresponding to each block to determine whether a given block is in the cache.

Click here to watch video of Fully Associative Cache Memory


Watch more videos click here.

No comments:

Post a Comment