Specifications
328 www.xilinx.com Embedded System Tools Guide (EDK 6.2i)
1-800-255-7778 UG111 (v1.4) January 30, 2004
Chapter 23: Interrupt Management
R
Interrupt Handlers
Users are expected to write their own interrupt handlers (or Interrupt Service Routines) for
any peripherals that raise interrupts. These routines can be written in C just like any other
function. The interrupt handler function can have any name with the signature void func
(void *).
Interrupt Routines in MicroBlaze
The following are the interrupts related routines defined in the MicroBlaze Board Support
Package (BSP).
MicroBlaze Enable and Disable Interrupts
The functions microblaze_enable_interrupts and microblaze_disable_interrupts are used to
enable and disable interrupts on MicroBlaze. These functions are part of the MicroBlaze
BSP and are described in Chapter 4, “Standalone Board Support Package,” in the EDK OS
and Libraries Reference Guide.
MicroBlaze Register Handler
The function microblaze_register_handler is used to register an interrupt handler with the
MicroBlaze exception table. This function is a part of the MicroBlaze BSP and is described
in Chapter 4, “Standalone Board Support Package,” in the EDK OS and Libraries Reference
Guide.
PowerPC Interrupt Management
This section describes interrupt management for PowerPC. Interrupt Management
involves writing interrupt handler routines for peripherals and setting up the MHS and
MSS files appropriately. PowerPC has two interrupt ports, critical and non-critical
interrupt ports. An interrupt controller peripheral is required for handling more than one
interrupt signal.
Figure 23-3: PowerPC with critical and non-critcal interrupts connected to interrupt
sources
Figure 23-3 shows PowerPC cconnected to interrupt sources. The interrupt port of the
interrupt sources are connected to the critical and non-critical interrupt porst of PowerPC.
PowerPC
Interrupt Source
Critical INT
Non Critical
INT
interrupt
interrupt
Interrupt Source










