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.

200 MMAC?

Hello,

Have anyone verified C5535 has actually 200 MMAC at max ?

I could only get 5 MMAC at most.

What do I need with my program beside specifying optimization options for the compiler.

I appreciate your help.

  • Hi,

    The 200 MMAC is the max performance that can be achieved given the C55x architecture. Since the C55x has a single-cycle dual multiply-and-accumulate (MAC) ALU, the C5535 running at a maximum of 100 MHz can get 100 x 2 = 200MMACs per second. However certain conditions have to be met to enable the architecture to reach this level of performance.

    If you are using C code to perform filtering, the code has to be constructed appropriately with relevant PRAGMA directives and compile options to let the C compiler understand that it can use dual MACs. Data buffers have to be in DARAM.You can also use C intrinsics to force the compiler to use dual MACs.

    Please see section 2.3.1, 5.44, 6.5.4 of the 'TMS320C55x Optimizing C/C++ Compiler User’s Guide'  (spru281f.pdf).

     

    Regards,

    Sunil Kamath

  • Many thanks for your reply.

    Yes, I'm programming in C language, and I'm using the most of the compiler ability with my best knowledge, but still I can get 5-6 MMACs at most.

    My experience with DM355 has been successful.  I could easily get approx. 100 MMACs using C language, i.e.  60 taps FIR filters at 500Ksps.

    I now understood C55x is a totally different architecture with no comparison with others.