F29H859TU-Q1: How to realize synchronization after customer enable XCMP?

Part Number: F29H859TU-Q1

Hi team

I ask this for my customer.

  1. In TRM, it says it should disable synchronization after it enable the XCMP, how to realize EPWM module's synchronization after customer use XCMP feature? Is TBPHS load support to realize the variable frequency control?

sys.png

2. Is it realize the XLINK function through EPWMXLINKXLOAD? which register support XLINK(such as TBCTR, XCMP1...) after enable XCMP?

XLINK.png

3. Is it limit global load event to below two event(CNT_ZERO and force load)? which register support global load(such as TBCTR, XCMP1...) after enable XCMP?

global load.png

BRs

Shuqing

  • Hi,

    When XCMP mode is enabled sync to load TBPHS is not supported as shown in TRM. You can use the PWM to generate SYNCout pulse to sync other PWM's.

    Yes using XLINKXLOAD register you can link XLOAD registers for multiple PWM's.

    You can additionally use XCMPXLINK base addr to xlink any register write

    Please refer to below section to know more about type-5 XLINK features enhancements

    s it limit global load event to below two event(CNT_ZERO and force load)? which register support global load(such as TBCTR, XCMP1...) after enable XCMP?

    global load.png

    The shadow sets are as shown in xcmp registers. They are all loaded by load strobe generated from above diagram. Please read below : 

    Shadow buffers can also be repeated more than once. Shadow buffer repeat counters are:

    • Users can optionally repeat each shadow buffer multiple times. This option sets the repeat count for SHDWn buffers before the pointer moves to the SHDW(n-1) buffer. SHDW1 buffer by default repeats until the next load is initiated by the software and hence there is no configurable repeat option for SHDW1 buffer.

    • Repeat counter option of the shadow buffers is applicable in LOADMULTIPLE mode. In the LOADONCE mode, user can manually keep track of the repeat counts and move to the SHDW pointer buffer.

    • Each shadow buffer has a 3-bit counter. Each buffer can be set to repeat up to 8 times before moving the pointer to the next buffer.

    • XLOADCTL[RPTBUF2PRD] and XLOADCTL[RPTBUF3PRD] are used to control the repeat period for each SHDW buffer. No shadowing can be set by setting the XLOADCTL[SHDWLEVEL] to '0'. In this case, the ACTIVE registers are available for use (XCMP1_ACTIVE, XCMP2_ACTIVE, and so on).

    Thanks 

  • Hi Prarthan, 

    thanks for your reply.

    1. In my understanding, syncout just sync the EPWM module clock. TBPHS is sync the TBCTR, this is the different function. How to realize the EPWM TBCTR synchronization when we enable the XCMP?

    You can use the PWM to generate SYNCout pulse to sync other PWM's.

    2. I want to check if TBPRD or TBPHS support XLINK when XCMP enabled. 

    3. Is  EPWM_XCMP_REGS register support global load when XCMP enable?

    BRs

    Shuqing

  • Hi,

    The sync-in for the module that has XCMP enabled is not be to be enabled, that is limitation from hardware perspective. However the module that has XCMP enabled can generate SYNCOUT based on its time base. That can synchronize other modules but not take the sync-in to load TBPHS itself.

    k if TBPRD or TBPHS support XLINK when XCMP enabled. 

    Yes, it is possible with XLINK information I shared in thread above

    EPWM_XCMP_REGS register support global load when XCMP enable?

    The shadow sets 1,2,3 can be programmed and shdw ptr buffer can be changed for global loading.

    Thanks