Team,
A customer of mine considers F2838xD for a safety related application. It's important to have both CPU cores independent from each other. There should be no interference and latency should be deterministic.
For shared memories, the documentation is relatively clear as it states the presence of fixed and round robin arbitration.
For peripherals however, it’s not 100% clear. Is the following understanding of my customer correct?
- Peripherals that can be assigned to CPU1 or CPU2 and have common selectable secondary masters
[Possible interference] I believe that here concurrent access can occur between the CPU1 (or CPU2) and the selected secondary master. However, the CPU which has not been assigned doesn’t have access to these peripherals so no CPU1/CPU2 interference. - Peripherals that can be assigned to CPU1 or CPU2 subsystems
[Possible interference] Same as #1. - Peripherals and Device Configuration Registers only on CPU1 subsystem
[Possible interference] Possible concurrent accesses between CPUx, CLAx and DMAx. - Accessible by only one CPU at a time by Semaphore
[No interference] Only CPU have accesses and only one a time. - Peripherals and Registers with Unique Copies of Registers for each CPU and CLA Master
[No interference] Each CPU and CLA master sees the registers on its own bus and concurrent access can be performed without interference.
However, for #1 to #3 with a smart assignment interferences could be avoided (eg. ensuring through SW scheduling that concurrent accesses can’t occur).
If there is anything wrong in this assumptions, please let me know!
Thanks & best regards,
Robert