I am working with S32E2 and configuring the IPCF framework and here is my setup
- Device: S32E288
- IPCF transport: Shared Memory + MRU notification
- Communication: M33 ↔ R52
- IPCF channel type: Managed channel
- 1 IPCF channel configured
- Interrupt mode (not polling)
- Ping/Pong RTT test implemented
Communication is functioning correctly in both directions.
I use STM to measure the timing ticks between the 2 cores.
Measurement flow:
R52:
timestamp
send PING
M33:
receive PING
immediately send PONG from RX callback
R52:
receive PONG
compute RTT
The values computed for a STM running on 24Mhz are close to 200us RTT(Round trip time). My transport overhead is about 30us but the transfer itself takes up bulk of the time. I have tried various things like increasing MRU IRQ notification but has not improved the timings. Having optimisation in code from -o0 to -o1 helped but -o2 didnt make any difference. The payload itself is 16 bytes.
Questions:
1. what is expected IPCF latency for managed /unmanaged channels.
2. can we acheive a low double digit latency?
If you need any more details, please reply back.