EasyManuals Logo

Xilinx MicroBlaze Reference Guide

Xilinx MicroBlaze
316 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Page #81 background imageLoading...
Page #81 background image
MicroBlaze Processor Reference Guide 81
UG984 (v2018.2) June 21, 2018 www.xilinx.com
Chapter 2: MicroBlaze Architecture
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:
C_ICACHE_BASEADDR and C_ICACHE_HIGHADDR. All addresses within
this range correspond to the cacheable address segment. All other addresses are non-
cacheable.
The cacheable segment size must be 2
N
, where N is a positive integer. The range specified
by
C_ICACHE_BASEADDR and C_ICACHE_HIGHADDR must comprise a complete power-of-two
range, such that range = 2
N
and the N least significant bits of C_ICACHE_BASEADDR must be
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.
Send Feedback

Table of Contents

Other manuals for Xilinx MicroBlaze

Questions and Answers:

Question and Answer IconNeed help?

Do you have a question about the Xilinx MicroBlaze and is the answer not in the manual?

Xilinx MicroBlaze Specifications

General IconGeneral
Architecture32-bit RISC
CacheConfigurable Instruction and Data Cache
CategorySoft Processor Core
Data Width32-bit
Memory Management Unit (MMU)Optional
Floating Point Unit (FPU)Optional
Interrupt ControllerConfigurable
Memory ManagementOptional MMU
ConfigurabilityHighly Configurable
Pipeline Stages3-stage
FPGA IntegrationXilinx FPGAs
Bus InterfacePLB
Debug InterfaceJTAG
Typical Clock SpeedVaries depending on FPGA and configuration (e.g., 100-400+ MHz)
ImplementationSoft core (synthesized logic)
Maximum PerformanceVaries with FPGA and configuration
Debug SupportIntegrated Debug Module

Related product manuals