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.

OMAP-L138 latency from DSP-ARM through Ring IO

Hi,

I am using dsplink 1.65.03. I am writing data from the DSP to the ARM, and on the DSP I am doing a RingIO_release every 8ms.  I would expect to get this data on the arm every 8ms as well, but sometimes it takes 15ms or longer.  On the ARM I'm doing a RingIO_acquire and if that returns a  RINGIO_EBUFEMPTY I wait on a semaphore that is posted by the function I have set up with RingIO_setNotifier with RINGIO_NOTIFICATION_ONCE and a watermark that is equal to the size I am acquiring on both the DSP and ARM.  I have checked the timing just before I post the semaphore in my notify function and it is slow there.  Is there anything I can configure so I get the notifications closer to when the DSP called RingIO_release?

Thanks,
Scott 

  • Hi Scott,

    I am not aware of a configuration setting for RINGIO to speed up the notifications here.

    Are you operating in a synchronous manner expecting the notifications to get delivered before you can do processing, or is there some form of pipelining that can help you avoid the real-time latency here?

    Best regards,
    Murat 

  • Hi,

    I am operating on 8ms blocks of streaming data.  Sometimes the amount of time between the notifications on the ARM for two blocks of data can be as high as 24ms followed by some that are very close together giving an average of 8ms between blocks.  I can add some buffering after the arm gets the data from the DSP to prevent underruns, but the bigger I make that buffer, the longer it takes data to get through the system.

    Scott