28.10.2014 Views

MMC2107 - Freescale Semiconductor

MMC2107 - Freescale Semiconductor

MMC2107 - Freescale Semiconductor

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Freescale</strong> <strong>Semiconductor</strong>, Inc.<br />

Interrupt Controller Module<br />

Functional Description<br />

7.8.4 Interrupt Configuration<br />

After reset, all interrupts are disabled by default. To properly configure<br />

the system to handle interrupt requests, configuration must be<br />

performed at three levels:<br />

• M•CORE processor<br />

• Interrupt controller<br />

• Local interrupt sources<br />

nc...<br />

<strong>Freescale</strong> <strong>Semiconductor</strong>, I<br />

7.8.4.1 M•CORE Processor Configuration<br />

Configure the M•CORE first, the interrupt controller second, and the<br />

local interrupt sources last.<br />

For fast interrupts, set the FIE[x] bit in FIER in the M•CORE processor.<br />

For normal interrupts, set the NIE[x] bit. Both FIE and NIE are cleared at<br />

reset. To allow long latency, multicycle instructions to be interrupted<br />

before completion, set the IC bit.<br />

VBR in the M•CORE processor defines the base address of the<br />

exception vector table. If autovectors are to be used, then initialize the<br />

INT and FINT autovectors (vector numbers 10 and 11, respectively). If<br />

vectored interrupts are to be used, then initialize the vectored interrupts<br />

(vector numbers 32–63 and/or 64–95). Whether 32 or 64 vectors are<br />

required depends on whether the fast interrupts share vectors with the<br />

normal interrupt sources based on the FVE bit in the interrupt controller<br />

ICR.<br />

For each vector number, create an interrupt service routine to service<br />

the interrupt, clear the local interrupt flag, and return from the interrupt<br />

routine.<br />

7.8.4.2 Interrupt Controller Configuration<br />

By default, each interrupt source to the interrupt controller is assigned a<br />

priority level of 0 and disabled. Each interrupt source can be<br />

programmed to one of 32 priority levels and enabled as either a fast or<br />

normal interrupt source. Also, the FVE and AE bits in ICR can be<br />

programmed to select autovectored/vectored interrupts and also<br />

determine if the fast interrupt vector number is to be separate from the<br />

normal interrupt vector.<br />

<strong>MMC2107</strong> – Rev. 2.0<br />

Technical Data<br />

MOTOROLA Interrupt Controller Module 171<br />

For More Information On This Product,<br />

Go to: www.freescale.com

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!