Hard Processor System Technical Reference Manual: Agilex™ 5 SoCs

ID 814346
Date 4/01/2024
Public
Document Table of Contents

3.7.3.2.1. Cache Allocation Policy

The L3 cache data allocation policy changes depending on the pattern of data usage. Exclusive allocation is used when data is allocated in only one core. Inclusive allocation is used when data is shared between cores.

For example, an initial request from core 0 allocates data in the L1 or L2 caches but is not allocated in the L3 cache. When data is evicted from core 0, the evicted data is allocated in the L3 cache. The allocation policy of this cache line is still exclusive. If core 0 re-fetches the line, it is allocated in the L1 or L2 caches of core 0 and removed from the L3 cache, keeping the line exclusive. If core 1 then accesses the line for reading, it remains cached in core 0 and is also allocated in both core 1 and L3 caches. In this case, the line has inclusive allocation.