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.

Comparison between 28335 and 28035

Other Parts Discussed in Thread: CONTROLSUITE

Hi, 

I wonder if any one has done computation performance comparison of the two chips (assuming the RAM is sufficient)? The 28335 is 150MIPS but the 28035 has the CLA support. Can I consider the CLA an effective second core thus the MIPS from a 28035 ram can approach 60MIPS x 2? 

  • Yes. I've done a 'limited' benchmarking of of the two µC. Result: 28035 was faster than 28335 in my application (motor control).

     

     

     

     

  • Leong,

    F28335 is floating point and F28035 is fixed point (the main core, the CLA is floating point but assembly only no C compiler support), hence you cannot really compare just computation performance. 

    Between the main core itself 60MIPS of F28335 would be more useful than F28035 60 MIPS because of floating point arithmetic, hence relieving saturation and decimal adjustment operations.

    However some of the peripheral enhancements on F28035 may help you in reducing the cycle burden. 

    -Manish Bhardwaj

  • Thank you both for the insight.

    Is there an FPU instruction benchmark that I can refer to? for example, how many clocks to do a float multiply or a cast from float to int? talking about floating point arithmetic, is there a hardware denormalized number processing mechanism or it relies on software to process denormalized numbers? 

    I mainly use the 28335 as a fixed point processor. I tried to mix a few IQ math functions with floating point functions, it seems the IQ math is still a bit faster.

     

    Regards

     

    Leong

  • Leong,

    The FPU instructions take care of the normalization, please refer to the FPU  primer SPRAAN9A for any further clarification of FPU and also the cycle counts,

    Make sure you are using the latest IQ math library, as we optimized some of the functions in the latest one, refer to revision history of IQmath Library for details (v15c),

    The IQmath library for fixed point is highly optimized hence you would not see significant improvements in cycle count, but you should observe some.

    Also certain applications which need large dynamic range in the control have to use only float only, a black a white answer unfortunately is not possible, you would need to select depending on your applications.

    I need to clarify the IQmath itself can be used to switch between fixed and floating, when using floating please use the fast RTS Lib for highest cycle efficiency of the code.  The good part about using IQmath library is you can switch between fixed and float easily hence evaluating performance using both. 

    A good doc to refer to is the IQmath library documentation found at controlSUITE\libs\math\IQmath\v15c\doc

    Regards

    Manish Bhardwaj

     

  • As mentioned above, it very much depends on your application. There are applications for which the 28335 performs faster and others where the 28035 can actually out perform the 28335 at significantly lower cost.

    The CLA on the '35 operates in parallel with the C28 and can reach 180MIPS peak (due to pipelining). Of course you can get three operations per clock only in very limited circumstances. You can also lose cycles due to pipeline stalls. In fact, CLA programming is mostly about optimization. The CLA is also extremely predictable and can be closely tied to A/D and/or HRPWM with near zero latency. This is useful for signal conditioning or control loops in synchronous systems. If you can handle your basic signal processing on the CLA side, this leaves the entire C28 side for micro-controller like functions. You can also do significant signal processing on the C28 side if necessary. 

    On the other hand the 335 has DMA and is easier to interface to serial DACs. But then again the HRPWM on the 35 can eliminate the need for a DAC's.

    Overall, if you application is high volume and requires low cost, a design based on the '35 can come out way on top. It will, however, require significantly more engineering as well as programming in assembler but these disadvantages are mitigated by the cost savings in high volume. If volumes are smaller and higher costs can be tolerated, then the 335 is likely to be a better choice.

    To definitively answer the question of which is better for your application you would have to look at the best approach to doing your application in each case. The approach might be quite different in the two cases. Generally, more cleverness is required to make the '35 a better choice but clever doesn't always win. As usual, that key engineering parameter called "price" is going to part of the equation.

    Best practice is to look two preliminary designs until you eliminate one or the other on the your evaluation of price, performance, and risk.

     

     

  • You may even want to consider the F28069.

    It's just released and I think the specs can rival (or even beat) the F28335 (depending on your application, of course).

    According to TI website, F28335 is $15.65 to $19.90 in 1K quantities while the F28069 is $7.90 in 1K quantities.

    ---

    I found that the FPU is faster than IQ math especially if you have to use trignometric functions or many other math functions.  (Assuming you use the fast floating-point library).