This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DM6437 HPI and semaphores

Hello:

It is my understanding that the reads and writes from a linux host will not be an atomic operation over the DM6437's HPI.    In this case, how do we protect the memory that is shared by both the host and the dsp from both processors simultaneously updating the memory.  

In general, how can I set-up a fool-proof semaphore between the linux host and the DSP.    Does the DSP hardware have any mechanisms to help, i.e., registers etc. 

Regards,

--b

  • I don't know of any existing methods for doing something like this.

    Best advice would be to cook up a homegrown messaging scheme to 'lock' certain areas of memory. Sorry I cannot be of more help, but maybe someone else can chime in with better advice.

  • As Tim suggests there is not an out of the box solution for this type of protection in hardware, so you would probably have to put together some software to manage accesses to the memory. I could see this being possible with a shared GPIO to determine ownership of a segment of memory, or though a special location in memory that the host or the DSP write to to claim the memory and clear when they are done, either way it is something that would have to be implemented and is not really available out of the box.