Hi, looking into the 6SoloX, and what is not clear for me is where to execute the application from, and what are the tradeoffs for the different possibilities. So, some possibilities as I understand:
1. External QSPI flash
2. TCL internal memory (64kB)
3. OCRAM (128kB)
4. DDR3
We will have a system with eMMC and DDR3L RAM, running Linux/yocto. So some questions related to the above
1. It seems QSPI flash is frequently preferred, any particular reason for that? Besides not having to move the application from 3rd party storage to the execution location?
2. The full 64kB is always available for the M4?
3. The full 128kB is always available for the M4? Are there drivers on Linux/A9 side or other elements that require allocation of this RAM?
4. DDR3: How do you define the address space available for the M4? What can the address space be / size?
So, in general looking for pros/cons, guidelines and tips. Are there performance tradeoffs that affect the A9 core as well?
Thanks!
Hello Thomas,
Regarding the performance on the Cortex A9, it is never dependent of the M4 since the A9 always use the M4 as a peripheral, you need to boot from the Cortex A9 to get the M4 working. It is prefer to use the QSPI flash, to only flash once the M4 program in the QSPI and keep the M4 execution program from that path. Since the other paths all are RAM which are not really a place to storage the program of the processor.
1. It seems QSPI flash is frequently preferred, any particular reason for that? Besides not having to move the application from 3rd party storage to the execution location? Yes. Always better.
2. The full 64kB is always available for the M4? Nop remember that the M4 it is a peripheral A9 need to release the space for the M4. This needs to be done by software in the A9. Uboot it is able to share that memory space.
3. The full 128kB is always available for the M4? Are there drivers on Linux/A9 side or other elements that require allocation of this RAM?
ANSWER. Yes, we have in the Linux BSP drivers available to allocate, and reserve memory space. you can see the example Ping Pong
Chapter 9 RPMsg PingPong Bare Metal Demo FreeRTOS attached
Demo Guide and Chapter 52 Remote Processor Messaging (RPMsg) Linux Manual.
Demo Image
4. DDR3: How do you define the address space available for the M4? What can the address space be / size?
See the example of the Ping Pong.
https://community.nxp.com/message/816551?commentID=816551#comment-816551
Have a great day,
TIC
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------