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.

The ".bss" section

Other Parts Discussed in Thread: OMAP3530

Hello,

I'm currently using the OMAP3530 with CCSv4.1.2 and Code Generation tools TI v6.1.9.  I'm currently running an algorithm consisting of FFTs, IFFTs and matrix manipulation operations.  My global and static arrays consisting of FFT twiddle factors and signal inputs are in IRAM but not in the ".bss" section.  I tried moving them into the ".bss" section to take advantage of using the DP to access the arrays.  I was hoping for a huge increase in performance but I was disappointed when I saw no improvement.  BTW, my compiler is set for optimization level 3 and optimize for code size 1.  So can you explain why there was no performance improvment?  Is there some compiler setting that's needed to take advantage of data access using the DP? 

Thanks,

Len     

 

 

 

  • See here for a part of a Wiki article which compares different kinds of memory access.  It is not exactly tailored to your situation.  The key is to realize that, while "global_variable" is directly accessed using DP relative addressing, "global_array[i]" is not.  And any DSP loop uses array addressing, or some pointer based variant.

    Thanks and regards,

    -George

  •  

    George,

    Thanks for the quick response. Also, I read through the Wiki article you provided.  Currently my FFT twiddle factor and signal input vectors as well as FFT code are resident in IRAM.  I realize the input data is aggregate and not scalar so, according to the article, direct addressing won't apply.  That of course epxlains why I didn't notice any performance improvement.  I was just wondering if there's something else to try which might lead to a speed improvement.  Perhaps a different compiler setting?  Is there a way to force ggregate data operands to be accessed using direct addressing?

     

    Thanks,

    Len    

  • There is no way to force aggregate data to be accessed using direct addressing.  

    For general tips on speeding up DSP loops, try this article.

    Thanks and regards,

    -George