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.

TMS320F280025C: Configuring CMPSS Ramp generation

Part Number: TMS320F280025C
Other Parts Discussed in Thread: C2000WARE, UCC28950

Hi,

I am using peak current mode control in my project,

The slope compensation at the Current transformer output (fed to CMPSS high side comparator pin) need to be 0.107V/us.

Switching frequency is 100kHz. And I have configured the ePWM in up-down count mode with period 500. The ePWM for ramp source is configured to run at 200kHz.

How can I configure the Ramp generation in CMPSS? Need help to understand how to calculate and set the RAMPMAX and RAMPDEC values.

Suppose my max reference value is 4095 (~3.3V), then how the below section of CMPSS Ramp Generation should be configured?

Regards,

Jayant

  • Hi Jayant,

    Thank you for your patience.

    I'll get back to you as soon as I have more information.

    Regards,

    Hadi

  • Jayant,

    The slope is chosen based on two factors: stability and transient response. The empirical value used in the design should make the system stable and also does not sacrifice the transient response. If the slope is too large, it will limit the duty cycle available and will decreases the transient response. If the slope is too small, it will trigger the sub-harmonics oscillation which creates unstable conditions.

    There is a TI design guide explaining how to use slope compensation for PCMC application: https://www.ti.com/lit/ug/tidueo1b/tidueo1b.pdf

    You can find the project in your C2000ware_DigitalPower directory: C2000Ware_DigitalPower_SDK_4_02_00_00\solutions\tidm_02000

    In general, transformer primary current is compared with the peak current reference calculated by the voltage loop using the on-chip comparator. There are background tasks, which are called in a polling fashion.

    The peak current reference command is written to the RAMPMAXREFS which is the starting value of the RAMP used for slope compensation.  The slope is decided by RAMPDACVALS. If you check B2 task, you can find that the slope is updated using function PSFB_UpdateRampSlope().

    Other reference for better understanding the slope compensation : UCC28950 600-W, Phase-Shifted, Full-Bridge Application Report (Literature Number SLUA560)

    Regards,

    Hadi