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.

Use UCD3138 LLC firmware as a reference, have some questions

Other Parts Discussed in Thread: UCD3138OL64EVM-031

I try read LLC firmware(UCD3138LLCEVM-028).

In configuration_functions.c .


I don't understand what pmbus_dcdc_config[0].deal_time_X .

Uint32 dead_time_1_local;
Uint32 dead_time_3_local;
Uint32 dead_time_4_local;
Uint32 clamp_value;

dead_time_1_local = (pmbus_dcdc_config[0].dead_time_1 + 8) >> 4;
dead_time_3_local = (pmbus_dcdc_config[0].dead_time_3 + 8) >> 4;
dead_time_4_local = (pmbus_dcdc_config[0].dead_time_4 + 8) >> 4;
clamp_value = (((Uint64)pmbus_dcdc_config[0].dead_time_2 * ((1 << 23) - 1)) / (pmbus_dcdc_config[0].max_period * 8));


Where can I get pmbus_dcdc_config[0].dead_time_X value?

Please help me thank you all.

My work environment :

CCS6.1.3

UCD3138OL64EVM-031 Rev.A

  • Richard,

    The default data is stored in dflash, and then coppied to ram variable at the begining of main. The pmbus_dcdc_config structure(ram vairable) is coppied after restore_default_all function is executed.

    Please open the pmbus_topology.h or pmbus.h(some of the project use this header file), and find out the macro as show below, that is the default value for those variables. Thanks...

    #define DEADTIME1 ((int)(DT1 / TDPWM + 0.5))
    #define DEADTIME2 ((int)(DT2 / TDPWM + 0.5))
    #define DEADTIME3 ((int)(DT1SR / TDPWM + 0.5))
    #define DEADTIME4 ((int)(DT2SR / TDPWM + 0.5))

    Regards,
    Jack
  • Jack,

    I understand your mean. Here is my biggest problem. I will try again times. , Thank you!!