5 prefetch abort mode, 6 data abort mode, 7 user/system mode – NXP Semiconductors LPC24XX UM10237 User Manual

Page 752: 8 fiq mode, 9 handling exceptions

Advertising
background image

UM10237_4

© NXP B.V. 2009. All rights reserved.

User manual

Rev. 04 — 26 August 2009

752 of 792

NXP Semiconductors

UM10237

Chapter 35: LPC24XX RealMonitor

4.5 Prefetch Abort mode

RealMonitor uses four words on entry to its Prefetch abort interrupt handler.

4.6 Data Abort mode

RealMonitor uses four words on entry to its data abort interrupt handler.

4.7 User/System mode

RealMonitor makes no use of this stack.

4.8 FIQ mode

RealMonitor makes no use of this stack.

4.9 Handling exceptions

This section describes the importance of sharing exception handlers between
RealMonitor and user application.

4.9.1 RealMonitor exception handling

To function properly, RealMonitor must be able to intercept certain interrupts and
exceptions.

Figure 35–151

illustrates how exceptions can be claimed by RealMonitor

itself, or shared between RealMonitor and application. If user application requires the
exception sharing, they must provide function (such as app_IRQDispatch ()). Depending
on the nature of the exception, this handler can either:

Pass control to the RealMonitor processing routine, such as rm_irqhandler2().

Claim the exception for the application itself, such as app_IRQHandler ().

In a simple case where an application has no exception handlers of its own, the
application can install the RealMonitor low-level exception handlers directly into the vector
table of the processor. Although the irq handler must get the address of the Vectored
Interrupt Controller. The easiest way to do this is to write a branch instruction (<address>)
into the vector table, where the target of the branch is the start address of the relevant
RealMonitor exception handler.

Advertising