Hello,
I wrote a program in which a variable is shared between ARM and DSP using C6RUN_MEM_malloc( ) (The DSP part is built with C6runLib).
The variable is allocate on the ARM side and passed as a function parameter ( a pointer ) to DSP side. In the same time the DSP function using this variable is running, another thread, executed on the ARM side, is able to modify his value at any time. The issue is that the the DSP side is not affected by this change and I have to recall the DSP function to make the change effective.
This leads me to some questions:
- Do the DSP make a copy of the shared variable?
- Is there any improvment to do concerning competitive access to the variable? ( Semaphore ...)
- How to fix this issue with a quick access to data from DSP side and without restarting the function.
Thanks in advance.