ARM PrimeCelL PL320 Technical Reference Manual page 23

Inter-processor communications module
Table of Contents

Advertisement

2.2.2
Channel ID
ARM DDI 0306B
Arrow.com.
Arrow.com.
Arrow.com.
Arrow.com.
Arrow.com.
Arrow.com.
Arrow.com.
Arrow.com.
Arrow.com.
Arrow.com.
Arrow.com.
Arrow.com.
Arrow.com.
Arrow.com.
Arrow.com.
Arrow.com.
Arrow.com.
Arrow.com.
Arrow.com.
Arrow.com.
Arrow.com.
Arrow.com.
Arrow.com.
Downloaded from
Downloaded from
Downloaded from
Downloaded from
Downloaded from
Downloaded from
Downloaded from
Downloaded from
Downloaded from
Downloaded from
Downloaded from
Downloaded from
Downloaded from
Downloaded from
Downloaded from
Downloaded from
Downloaded from
Downloaded from
Downloaded from
Downloaded from
Downloaded from
Downloaded from
Downloaded from
Interrupt
controller0
AHB
IPCMINT[0]
The IPCM operates as follows:
1.
Core0 has a message to send to Core1. Core0 claims the mailbox by setting bit 0
in the Mailbox Source Register. Core0 then sets bit 1 in the Mailbox Destination
Register, enables the interrupts and programs the message into the Mailbox Data
Registers. Finally, Core0 sends the message by writing 01 to the Mailbox Send
Register. This asserts the interrupt to Core1.
2.
When Core1 is interrupted, it reads the Masked Interrupt Status Register for
IPCMINT[1] to determine which mailbox contains the message. Core1 reads the
message in that mailbox, then clears the interrupt and asserts the acknowledge
interrupt by writing 10 to the Mailbox Send Register.
3.
Core0 is interrupted with the acknowledge message, completing the operation.
Core0 then decides whether to retain the mailbox to send another message or
release the mailbox, freeing it up for other cores in the system to use it.
The Channel ID is defined as the one-hot encoded value that corresponds to a specific
interrupt output from the IPCM. An IPCM configured to have 32 interrupt outputs has
32 corresponding Channel IDs. The Channel ID programs the Mailbox Source, Mailbox
Destination, and Mailbox Mask Registers.
Copyright © 2003, 2004. ARM Limited. All rights reserved.
Core0
Core1
IPCM
IPCMINT[1]
Figure 2-3 Basic operation
Functional Overview
Interrupt
controller1
2-5

Advertisement

Table of Contents
loading

Table of Contents