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.

[FAQ] TPS546D24A: What are the differences between the TPS546D24A and the TPS546B24A? Can I swap my design for less than 20A between the two?

Part Number: TPS546D24A
Other Parts Discussed in Thread: TPS546B24A

What are the differences between the TPS546D24A and TPS546B24A? 

Can I use one in place of the other for applications with less than 20A of load current?

If I completed my design using one of the parts, what else do I need to change if I want to use the other part?

The TPS546D24A and TPS546B24A are extremely similar devices.  They are direct pin to pin compatible, and provide the same PMBus commands, but they are not direct "drop in" replacements.

1) MOSFETS

The TPS546D24A and TPS546B24A use different power FETs in their design.  The TPS546D24A uses larger, lower Rdson Power FET to support 40A per phase load currents while the TPS546B24A uses higher Rdson Power FETs to better meet the needs of 20A  and less application currents.  In addition, the TPS546D24A uses a lower Vds voltage rated low-side (SW to PGND) power FET, leading to it's lower recommended PVIN voltage rating and lower SW to PGND absolute maximum voltage rating.  Both devices uses a higher Vds voltage rated high-side (PVIN to SW) power FET.

Due to the changes in the MOSFETs, in most applications the TPS546D24A will offer greater efficiency at load currents greater than 12A while the TPS546B24A will offer greater efficiency at less than 12A, though the exact  intersection of efficiency depends on the Input Voltage, Output Voltage and Switching Frequency.

2) Current Sense Gain

The TPS546D24A and TPS546B24A's different power FETs also give the devices different current sense gain and VSHARE to ISW transconductance factors.

The TPS546D24A has a current sense gain of 6.155mV/A and forward transconductance of 162 Siemens

The TPS546B24A has a current sense gain of 12.31mV/A and forward transconductance of 81 Siemens

Due to this change in current sense gain, when using the same switching frequency, inductor, and output capacitor, the TPS546D24A requires twice the current loop compensation gain (ILOOP) and half the voltage loop compensation gain (VLOOP) in order to obtain the same loop performance as the TPS546B24A.

3) Programmable Current Limit Range

The TPS546D24A's current limit can be programmed over the range from 5A to 62A

The TPS546B24A's current limit can be programmed over the range from 5A to 31A

4) Negative Current Limit

The TPS546D24A's negative current limit, which limits the negative current in the inductor during the low-side FET on-time, is -20A

The TPS546B24A's negative current limit is -10A

Can I switch between the TPS546D24A and the TPS546B24A?  What else do I need to change?

In many applications for load current less than 20A, both the TPS546D24A and TPS546B24A can be used, though you will need to change some other components or PMBus settings.

1) Current Limit Programming via MSEL2

The first adjustment you will likely need to make when switching between the TPS546D24A and TPS546B24A is changing the MSEL2 resistor value to select a different current limit.

If starting with a TPS546B24A design and using a TPS546D24A, the current limit selected with a given MSEL2 resistor will approximately double (2x).  Changing the MSEL2 resistor can set the current limit closer to the expected maximum application current for the best protection.

If starting with the TPS546D24A design and using a TPS546B24A, the current limit selected with a given MSEL2 resistor sill be approximately 1/2.  Failure to also change the MSEL2 resistor could result in a low current limit and inability to meet the full load requirements of the application.

2) Inductor or ILOOP

Due to the differences in the current sense feedback gain between the TPS546D24A and the TPS546B24A, maintaining the the same current loop bandwidth requires changing either the ILOOP mid-band gain (GMI x RVI) or the inductor.

If starting with a TPS546B24A design and using a TPS546D24A, the ILOOP mid-band gain factor (GMI x RVI) must be 2x higher  OR the inductor must be 1/2 the value.  Due to the limitations of the ILOOP values provided by the MSEL1 pin programming options, 2x higher ILOOP may not be available through pin programming.

If using custom programming of COMPENSATION_CONFIG rather than pin-programming, it is generally easiest to double GMI, leave RVI the same and select the closest available CZI value with the updated GMI.  Due to the internal CZI multiplier, the same CZI value may not be available with an increased GMI.  If GMI can not be increased, RVI can be increased, but both CZI and CPI should be decreased by 1/2 to keep the current loop zero and pole frequencies the same.

if starting with a TPS546D24A design and using a TPS546B24A, the ILOOP mid-band gain factor (GMI x RVI) must be 1/2 OR the inductor must be 2x the value.  Due to the limitations of the ILOOP values provided by the MSEL1 pin programming operation, 1/2 ILOOP may not be available through pin programming.

If using custom programming of COMPENSATION_CONFIG rather than pin-programming, it is generally easiest to reduce GMI by 1/2 and leave RVI the same.  Except in extreme cases, the same CZI value should be available with the updated GMI.  If GMI can not be decreased, RVI can be decreased, but both CZI and CPI should be increased by 2x to keep the current loop zero and pole frequency the same.

3) VLOOP

Due to the differences in the forward VSHARE to ISW transconductance, maintaining the same loop bandwidth, transient response, and stability requires changing the VLOOP mid-band gain (GMV x RVV).

If starting with a TPS546B24A design and using a TPS546D24A, the VLOOP mid-band gain (GMV x RVV) should be reduced by 1/2 to maintain the same bandwidth and prevent loop instability.  The VLOOP options from MSEL1 programming are scaled in factors of 2, so unless the VLOOP = 0.5 option was used, the new VLOOP value should be available.

If using custom programming of COMPENSATION_CONFIG rather than pin-programming , it is generally easiest to reduce GMV by 1/2 and leave RVV the same.  Except in extreme cases, the same CZV value should be available with the updated GMI.  If GMI can not be decreased, RVV can be decreases, but both CZI and CPI should be increased by 2x keep the voltage loop zero and pole frequency the same.

If starting with a TPS546D24A design and using a TPS546B24A, the VLOOP mid-band gain (GMV x RVV) should be increased by 2x to maintain the same bandwidth and transient performance.  The VLOOP options from the MSEL1 programming are scaled in factors of 2, so unless the VLOOP = 8 option was used, the new VLOOP value should be available.

If using custom programming of COMPENATION_CONFIG rather than pin-programming, it is generally easiest to increased GMV by 2x and leave RVV the same. Due to the integral CZV multiplier, the same CZV value may not be available with the increased GMV.  If GMV can not be increased, RVV can be increased by 2x, but CZV and CPV should be decreased by 1/2 to maintain the same zero and pole frequencies in the voltage loop.

NOTE:  If changing from pin programming of Current Limit or COMPENSATION_CONFIG in the original design to PMBus programming with the alternate part, you will need to update the COMPENSATION_CONFIG and IOC bits in PIN_DETECT_OVERRIDE (command code EEh) as well as the COMPENSATION CONFIG  (Command Code B1h) IOUT_OC_FAULT_LIMIT (Command Code 46h) and IOUT_OC_WARN_LIMIT (Command Code 4Ah) before storing the changes to NVM to prevent the pin programming from overriding the changes on the next power cycle or RESTORE_USER_ALL command.

NOTE:  COMPENSATION_CONFIG does not support live updates to the compensation while the output is enabled.  The output should be disabled prior to making COMPENSATION_CONFIG updates, or the updated values should be stored to NVM, the COMPENSATION_CONFIG bit in PIN_DETECT_OVERRIDE set to 0 (restore from NVM) and either cycle AVIN below 2.4V or use the RESTORE_USER_ALL (Command Code 16h) PMBus COMMAND.