Other Parts Discussed in Thread: OMAP3530
Hi,
I am facing an issue to measure the time on DSP for some applications running on OMAP3530 (Mistral EVM). Details follow:
- The application is running on both ARM and DSP. DSP/Link communications (MPCS-based) take place during the execution to exchange data between ARM and DSP.
- We use the 64-bit cycle counter (TSCL/TSCH) to do some time measurement on DSP for a portion of the code, basically
get_tsc();
// some code here
get_tsc();
- After looking into the results, we found out that the time measured (delta from the code snippet above) seems less than the real elasped time. That is, (delta) cycles/freq < real elapsed time.
I am guessing now: is it true that during the execution of the some code in between, the DSP stalls and thus the TSC couter does not increase? The code does some exchaning data between DSP and ARM (using MPCS-based shared buffer) - it is likely that the data is not available (so we do TSK_yield). Any comments from TI or other users? Thanks a lot.
PS: if the post is more suitable for DSP forums, could moderator re-post there? Thanks!