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 #72 background imageLoading...
Page #72 background image
MicroBlaze Processor Reference Guide 72
UG984 (v2018.2) June 21, 2018 www.xilinx.com
Chapter 2: MicroBlaze Architecture
Reset, Interrupts, Exceptions, and Break
MicroBlaze supports reset, interrupt, user exception, break, and hardware exceptions. The
following section describes the execution flow associated with each of these events.
The relative priority starting with the highest is:
1. Reset
2. Hardware Exception
3. Non-maskable Break
4. Break
5. Interrupt
6. User Vector (Exception)
Table 2-39 defines the memory address locations of the associated vectors and the
hardware enforced register file locations for return addresses. Each vector allocates two
addresses to allow full address range branching (requires an
IMM followed by a BRAI
instruction). Normally the vectors start at address 0x00000000, but the parameter
C_BASE_VECTORS can be used to locate them anywhere in memory.
The address range 0x28 to 0x4F is reserved for future software support by Xilinx. Allocating
these addresses for user applications is likely to conflict with future releases of SDK support
software.
All of these events will clear the reservation bit, used together with the LWX and SWX
instructions to implement mutual exclusion, such as semaphores and spinlocks.
Table 2-39: Vectors and Return Address Register File Location
Event Vector Address
Register File
Return Address
Reset
C_BASE_VECTORS + 0x00000000 -
C_BASE_VECTORS + 0x00000004
-
User Vector (Exception)
C_BASE_VECTORS + 0x00000008 -
C_BASE_VECTORS + 0x0000000C
Rx
Interrupt
1
C_BASE_VECTORS + 0x00000010 -
C_BASE_VECTORS + 0x00000014
R14
Break: Non-maskable
hardware
C_BASE_VECTORS + 0x00000018 -
C_BASE_VECTORS + 0x0000001C
R16
Break: Hardware
Break: Software
Hardware Exception
C_BASE_VECTORS + 0x00000020 -
C_BASE_VECTORS + 0x00000024
R17 or BTR
Reserved by Xilinx for future
use
C_BASE_VECTORS + 0x00000028 -
C_BASE_VECTORS + 0x0000004F
-
1. With low-latency interrupt mode, the vector address is supplied by the Interrupt Controller.
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