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.

"Fast RTS library" for newer Concerto devices

Other Parts Discussed in Thread: CONTROLSUITE

Hi all,

once a time there was the fastRTSlibrary (for the 335, for example).

If i've well understood, it's no more available/suggested for newer devices.

This is correct, or there is some way to speed up computations (expecially trigonometric: sin/cos/atan) on the dsp core of the Concerto, respect the standard Runtime library?

thx

  • Hi Alberto,

    Why don't you try IQMath?

    Regards,
    Gautam
  • Hi Gautam
    thank you for your answer. I'm willing to use floating point (the concerto has an FPU), and the IQmath is a "fixed mantissa" emulation of floats.
    (if I have well understood; or, if compiled for an FPU, the IQ library does something different?).
    But, in any case, it could be an idea.

    Regards,
    Alberto
  • Hi,

    in the meantime i've taken some measurements.

    From the ControlSuite the asm code for the trigonometric functions of fastRTS can be extracted and included in the project (the lib is compiled with an old tool and i'm not sure if it's a good idea to use the lib).

    I took for example the "sin" function, first using the one provided in the standard runtime library, and then using the asm function as explained.

    I've measured the execution time (moving a pin and looking with the scope) in the 2 cases, and it's exactly the same; this makes me wonder if the current version of the standard runtimes already uses optimized code.

  • Alberto Generali said:
    If i've well understood, it's no more available/suggested for newer devices.

    The fastRTS library is still available and recommended.  It can be used on devices with the C28x + 32-bit floating point unit.   You can find the latest version in controlSUITE.

    controlSUITE\libs\math\FPUfastRTS

    Regards

    Lori

  • Alberto Generali said:
    if I have well understood; or, if compiled for an FPU, the IQ library does something different?

    IQMath library behaves the same on a fixed-point or floating-point device for functions like sin, cos, tan.... It is still an emulation of floats.

    Lori 

  • Alberto Generali said:
    the lib is compiled with an old tool and i'm not sure if it's a good idea to use the lib

    There should be no issue using the library as it is.  If you like you can also recompile the lib with the most recent compiler.

    Alberto Generali said:
    I've measured the execution time (moving a pin and looking with the scope) in the 2 cases, and it's exactly the same; this makes me wonder if the current version of the standard runtimes already uses optimized code.

    Please double check the .map file to make sure the code was compiled with the fastRTS or the standard RTS library.  The results should be different. 

    -Lori