Programming notes, External interrupt service, Programming notes -87 – Motorola MVME2300 Series User Manual

Page 157: External interrupt service -87

Advertising
background image

Raven Interrupt Controller

http://www.motorola.com/computer/literature

2-87

2

processing for the highest-priority interrupt currently in
service by the associated processor. The write operation
will update the In-Service register by retiring the highest-
priority interrupt. Reading this register returns zeros.

Programming Notes

This section includes a number of items of information that should prove
helpful in programming your MVME2300 series board for a variety of
applications.

External Interrupt Service

The following summarizes how an external interrupt is serviced:

1. An external interrupt occurs.

2. The processor state is saved in the machine status save/restore

registers. A new value is loaded into the Machine State register
(MSR). The External Interrupt Enable bit in the new MSR (MSRee)
is set to zero. Control is transferred to the O/S external interrupt
handler.

3. The external interrupt handler calculates the address of the Interrupt

Acknowledge register for this processor (RavenMPIC Base Address
+ 0x200A00 + (processor ID shifted left 12 bits)).

4. The external interrupt handler issues an Interrupt Acknowledge

request to read the interrupt vector from the RavenMPIC. If the
interrupt vector indicates the interrupt source is the 8259, the
interrupt handler issues a second Interrupt Acknowledge request to
read the interrupt vector from the 8259. The RavenMPIC does not
interact with the vector fetch from the 8259.

5. The interrupt handler saves the processor state and other interrupt-

specific information in system memory and re-enables for external
interrupts (the MSRee bit is set to 1). The RavenMPIC blocks
interrupts from sources with equal or lower priority until an End-of-
Interrupt is received for that interrupt source. Interrupts from
higher-priority interrupt sources continue to be enabled. If the

Advertising