Instruction Cache
Overview
MicroBlaze can be used with an optional instruction cache for improved performance when
executing code that resides outside the LMB address range.
The instruction cache has the following features:
•
Direct mapped (1-way associative)
•
User selectable cacheable memory address range
•
Configurable cache and tag size
•
Caching over AXI4 interface (M_AXI_IC)
•
Option to use 4, 8 or 16 word cache-line
•
Cache on and off controlled using a bit in the MSR
•
Optional WIC instruction to invalidate instruction cache lines
•
Optional stream buffers to improve performance by speculatively prefetching
instructions
•
Optional victim cache to improve performance by saving evicted cache lines
•
Optional parity protection that invalidates cache lines if a Block RAM bit error is
detected
•
Optional data width selection to either use 32 bits, an entire cache line, or 512 bits
General Instruction Cache Functionality
When the instruction cache is used, the memory address space is split into two segments:
a cacheable segment and a non-cacheable segment. The cacheable segment is determined
by two parameters:
range correspond to the cacheable address segment. All other addresses are non-
cacheable.
The cacheable segment size must be 2
by
C_ICACHE_BASEADDR
range, such that range = 2
zero.
The cacheable instruction address consists of two parts: the cache address, and the tag
address. The MicroBlaze instruction cache can be configured from 64 bytes to 64 kB. This
corresponds to a cache address of between 6 and 16 bits. The tag address together with the
cache address should match the full address of cacheable memory. When selecting cache
MicroBlaze Processor Reference Guide
UG984 (v2016.2) June 8, 2016
UG984 (v2016.1) April 6, 2016
and
C_ICACHE_BASEADDR
N
, where N is a positive integer. The range specified
and
C_ICACHE_HIGHADDR
N
and the N least significant bits of
www.xilinx.com
Chapter 2: MicroBlaze Architecture
. All addresses within this
C_ICACHE_HIGHADDR
must comprise a complete power-of-two
C_ICACHE_BASEADDR
must be
74
Send Feedback
Need help?
Do you have a question about the MicroBlaze and is the answer not in the manual?
Questions and answers