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.

TMS320F28069: CPU load for Non-isolated Buck converter, 4-phase, 200kHz

Part Number: TMS320F28069
Other Parts Discussed in Thread: TIDM-DC-DC-BUCK, CONTROLSUITE, TIDA-00558

Hello,
Could you please advise if F28069 is good for my customer application in the point of CPU load ratio?

Part#: TMS320F28069
Application: Non-isolated Buck converter, 4-phase, 200kHz


My customer words were like "An estimation of the contol loop time." We would also welcome your reply in this expression.


My findings:

  • TIDM-DC-DC-BUCK: Firmware not found in the controlSUITE.
  • TIDA-00558: Firmweare not available.
  • TIDA-00951: F28035, fSW=100kHz. Not easy to expect my case.
  • TIDA-BIDIR-400-12: fSW=100kHz. Also not easy to expect my case.

  • Taking a 'worst case' scenario in which all the processing is done on the CPU in four separate ISRs.  Based on the C macro benchmarks in the DP library you should expect about this for each ISR:

    ADC single channel read = 5 cycles

    2P2Z controller = 36 Cycles

    PWM driver = 10 cycles

    Total for 1 loop = 51 cycles

    Allowing a generous 40 cycles for context protection and some background processing, let's say 90 cycles per loop.  This device runs at 90 MHz, so four 200 kHz loops have 112 cycles available and you are within budget, although the CPU is 80% loaded.

    The situation can be improved if you run a single ISR for all four loops: in that case the loading would be reduced to 100*(51*4 + 40)/450 = 54.2%.

    It's better still if you exploit the CLA to handle one or more of the loops.  In principle the entire control processing could be off-loaded to the CLA, leaving the main CPU free for other tasks.

    From a control perspective, this is comfortably within reach of F28069.

    Regards,

    Richard

  • Richard,
    Thank you. Very kind, very clear.
    By the way, can I ask the source of the cycle #s? I would be glad if I can do it by myself next time.
  • You are very welcome.

    I took these numbers from the digital power library documentation in controlSUITE. If you have installed that at the default location, the document (DPlib.pdf) is at:
    C:\ti\controlSUITE\libs\app_libs\digital_power\f2806x_v3.5\Doc

    The cycle count benchmarks are on pages 16 & 17. I could not find cycle benchmakrs in the newer SDK documentation, for some reason, but anyway these numbers give us an approximate idea.  Glad it helps.

    Regards,

    Richard

  • Richard,
    I'm reading DPlib.pdf. Thank you very much.