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.

Query about the fixed and floating C66x DSP Instruction set

Hi,

We are using TDA2x Vayu board and Vision_SDK_02_07 for our application.


We have gone through "spry147.pdf". It is mentioned that "On the C66x CPU, customers can choose to execute fixed or floating point on an instruction by nstruction basis as the fixed- and floating point capability is fully integrated".

1. How do we configure instruction by instruction as float ?

2. We have a floating point version of our algorithm which is ported in the TDA2x platform. How can we know which instuction set(either fixed or float or       combination) is getting used ?

3. Is there any compiler option to be added/changed for choosing floating point instruction set for a particular module or function ?

Thanks in advance.

Regards,

Niranjana A

  • Welcome to the TI E2E forum. I hope you will find many good answers here and in the TI.com documents and in the TI Wiki Pages (for processor issues). Be sure to search those for helpful information and to browse for the questions others may have asked on similar topics (e2e.ti.com). Please read all the links below my signature.

     2. We have a floating point version of our algorithm which is ported in the TDA2x platform. How can we know which instuction set(either fixed or float or       combination) is getting used ?

    Please post TDA2x platform queries on Automotive forum for appropriate and faster response. Thank you.

  • Hi Niranjana

    One of the big advantage of the C66 core is that the functional units can do floating point and fixed point arithmetic per instruction.  So if you use assembly (and you should not use assembly) there are different instructions for example to add fixed point numbers or to add floating point numbers. The same is true for intrinsic - there are floating point instructions and fixed point instructions.

    But the C compiler is smart enough.  If your variable is defined as float, floating point operations will be used. If it is int or long or short fixed point will be assigned. If casting is needed, the code will follow the C convention.

    So no need for compiler directive.  It is done automatically by the compiler

    Does it answer your questions?

    Ran

  • Hi Ran,

    Thank you for the response.

    Was little confused earlier. Now got cleared with the doubt. :)


    Regards,
    Niranjana