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.

TMS320F280025: Use math lib to optimize multiplication calculations

Part Number: TMS320F280025


Hi team,

My customer met a F280025 multiplication problem related to floating-point operations.

test_xxx1 = 1345.0f *2222.0f;  

which spend 8 cycle times based on rts2800_fpu32_fast_supplement_eabi

So, customer want to identify if we have some library can reduce the running time of floating-point multiplication operations.

Btw, could you please help to check customer's project if they use the lib correctly (i think the Disassembly is correct based on rts2800_fpu32_fast_supplement_eabi ) ?

  • Hi,

    The number of cycles highly depend on the compiler settings and optimisation level. Can you try by optimising for speed at the highest level? The usage of the library and project settings look fine to me.

    -Shantanu

  • Hi Shanty,

    I found that the rts2800_fpu32 .lib doesn't have multiplication operations optimization as below shows:

    And in customer's code, how could they speed up the multiplication operations cycle?

    or is it means that the multiplication operations cycle can't optimize anymore?

    thx

  • Chen,

    The FASTRTS library provides libraries for trig, exp, swrt and log functions. However, MPY32 is a C28x+FPU32 floating point multiplication instruction, which you will see when you compile the project with the --fpu32 option enabled (which you have). The multiplication instruction is a two pipeline cycle instruction. The number of cycles taken for this instruction depends on the optimization settings in the project. Beyond optimizations, the instructions cannot be optimized further.

    -Shantanu