Inter-Processor Communications
11 - 8 TMS320F2837xD Microcontroller Workshop - Dual-Core Inter-Processor Communications
IPC Software Solutions Summary
Basic Option
No software drivers needed
Uses IPC registers only (simple message passing)
IPC-Lite Software API Driver
Uses IPC registers only (no memory used)
Limited to 1 IPC interrupt at a time
Limited to 1 command/message at a time
CPU1 can use IPC-Lite to communicate with CPU2
boot ROM
Main IPC Software API Driver
Uses circular buffers message RAMs
Can queue up to 4 messages prior to processing
(configurable)
Can use multiple IPC ISRs at a time
Requires additional setup in application code prior
to use
There are three options to use the IPC on the device.
Basic option: A very simple option that does not require any drivers. This option only requires
IPC registers to implement very simple flagging of messages passed between processors.
Driver options: If the application code needs a set of basic IPC driver functions for reading or
writing data, setting/clearing bits, and function calls, then there are 2 IPC software driver solutions
provided by TI.
IPC-Lite:
• Only uses the IPC registers. No additional memory such as message RAM or shared
RAM is needed.
• Only one IPC ISR can be used at a time.
• Can only process one message at a time.
• CPU1 can use IPC lite to communicate with the CPU2 boot ROM. The CPU2 boot ROM
processes basic IPC read, write, bit manipulation, function call, and branch commands.
Main IPC Software API Driver: (This is a more feature filled IPC solution)
• Utilizes circular buffers in C2toC1 and C1toC2 message RAM’s.
• Allows application to queue up to 4 messages prior to processing (configurable).
• Allows application to use multiple IPC ISR’s at a time.
• Requires additional setup in application code prior to use.
In addition to the above, SYS/BIOS 6 will provide a new transport module to work with the shared
memory and IPC resources on the F2837x.