Current Sensing with PMBus Digital Power System Managers—Part 2


Part 2 of this article series describes how to measure current on high voltage or negative supply rails and how to set configuration registers for the IMON sensing method. This article covers the accuracy considerations of measuring current and provides instructions on programming devices using LTpowerPlay®. In Part 1, we covered the general concepts of current sensing including the various methods and circuit topologies.

Beyond the Limits

The LTC297x devices have limits to the voltage applied to the sense pins, both VSENSE and ISENSE. The limit is 6 V. For much of the following, we will be discussing most of the LTC297x family, the exception to this being the LTC2971, which has limits to ±60 V. For supply rails that are greater than 6 V or for a negative supply, an indirect method of sensing voltage across an inductor or sense resistor must be devised.

Resistor Divider

For supply voltages that are higher than the maximum voltage rating of ISENSE pins, one may be tempted to use two voltage dividers. This seems like a reasonable idea until you calculate the error of the divided down “signal.” A voltage divider is placed on each side of the sense element. The “output” is taken from each of the dividers and fed into the LTC297x sense pins. If the top-to-bottom resistor ratios match each other, the goal of accurately dividing down the HV signals is achieved. The rail voltage is divided enough to keep the LTC297x inputs within their limits, and the divided output develops a proportional voltage that may be measured by the LTC297x. However, the required resistor tolerance makes this approach impractical. Moreover, the more the voltage is divided, the greater the error will be. For example, if just one of the resistors has an error of 0.1%, the result is a fixed offset error. The gain error contributes very little, and the offset error dominates.

For example, assume you need to measure the output current of a 12 V supply. The supply is capable of 2 A, and a 10 mΩ shunt resistor (RSNS) is placed in the output path. The shunt will produce a 20 mV signal at full load. A divide-by-3 circuit is an appropriate choice, and the top and bottom resistors are chosen to be 2 kΩ and 1 kΩ, respectively. This places the common-mode voltage of the ISENSE pins at 4 V. The use of relatively low values is meant to keep the source impedance low, as seen by the LTC297x device to reduce leakage current induced errors from the Thevenin equivalent resistance of the divider.

Figure 1. A resistor divider for current sense produces a large error.

Assume a no-load condition and all resistors are perfect. Each divider midpoint will be 4.00 V and the delta V will be zero. Therefore, the LTC297x will have a READ_IOUT value of 0.000 A. However, if the resistance of one of the 2 kΩ components is 0.1% high (2002 Ω), the delta V will be 2.665 mV. But remember that full scale is 20 mV/3 or 6.667 mV, as seen by the ISENSE pins. The 2.665 mV reading translates to an output current of 0.4 A. This is 40% of the expected full-scale reading! As mentioned earlier, the error introduced is an offset error, not a gain error. It is a large error, nonetheless. This approach is too sensitive to resistor tolerance, and we must look for another solution.

High-Side Sense Amplifier

Since the LTC2972/LTC2974/LTC2975 have a 6 V limit to the ISENSE pins, the solution to this problem is to use a high-side current sense amplifier (CSA) for level translation. The LT6100/LTC6101 are popular for fixed/user-selectable gain. The accuracy is much better than with divider resistors.

Figure 2. A current sense amplifier used as a level translator.

Here are the relevant equations and conditions:

VOUT of CSA = ILOAD × RSNS × (R2 / R1)

Set IOUT_CAL_GAIN = RSNS × (R2 / R1)

Keep VISENSEP < ±170 mV

LTC2971 for Current Sensing on High Voltage Rails

For high voltage rails, use an LTC2971 (2-channel DPSM) to directly sense current and voltages up to 60 V. The LTC2971 is available in four different ordering options. The LTC2971-1 supports 60 V sensing on one channel and –60 V on the other channel. The LTC2971-2 supports –60 V on both channels, and the LTC2971-3 option supports 60 V and 1.8 V. The LTC2971 supports 60 V sensing on both channels. The direct connection to the IOUT_SNS pins avoids external CSAs, which would increase cost, add board space, and introduce error. The LTC2971 current measurement accuracy is 0.6% of the READ_IOUT reading.

Table 1. LTC2971 Ordering Options
Option CH0 CH1
LTC2971 0 V to 60 V 0 V to 60 V
LTC2971-1 0 V to 60 V 0 V to –60 V
LTC2971-2 0 V to –60 V 0 V to –60 V
LTC2971-3 0 V to 60 V 0 V to 1.8 V

Low-Side Current Sense

Low-side current sensing may be an option in some cases. A sense resistor can be placed on the low side of the load and the ISENSE pins tied across the resistor. This allows the ISENSE pins to have a common-mode voltage near GND. For supply voltages greater than 6 V, it may suit your application well. This is a good solution for measuring current on virtually any power supply rail, including high voltage rails. Selecting the RSENSE value is a compromise between obtaining a large enough signal for good accuracy vs. a low enough resistance that does not produce a significant IR drop, causing the output voltage to drop as seen by the load—that is, poor load regulation. Figure 3 shows the feedback resistors and the Kelvin sense connections for VSENSE. Kelvin sense is a term used to describe the connections made to the sense element, which do not include voltage drops.

Care should be taken to establish a return current path for the sense resistor. Many high density boards are designed with many layers of ground pour, thus allowing return current to flow through multiple paths. The use of a shunt resistor gives you the ability to force the return current through this element, thereby allowing Kelvin sense connections across the element and tied back to the ISENSE pins of the PSM device.

Figure 3. Low-side sensing solves high voltage current sensing but has drawbacks.

Current Sense on a Negative Rail

There are a few different ways to monitor the output current of a negative supply. The simplest solution is to use a low-side CSA, such as the LTC6105. Figure 4 shows the inputs tied across a shunt, and the CSA is powered from VDD33 of the PSM and the low side of the negative rail itself. The output is a single-ended signal that can be wired either to the ISENSE or VSENSE pins of the PSM.

If the CSA is wired to the ISENSE pins, then set IOUT_CAL_GAIN to RSNS × GAINCSA. For example, if the shunt resistance is 10 mΩ and the CSA gain is 10, then set IOUT_CAL_GAIN to 100. The IOUT_CAL_GAIN units are milliohms.

Figure 4. Sensing current with a CSA (LTC6105).

Using the LTC2971-1 or LTC2971-2 is the simplest solution for monitoring output current on a negative supply. These are 2-channel devices, and both channels of the LTC2971-2 can natively sense current on rails to –60 V. The LTC2971-1 is capable of sensing current on negative rails on Channel 1 only.

Figure 5. Sensing current on a negative rail without external components.

Note: The LTC2971’s READ_VOUT value is L16 format and is unsigned. The value displayed in the GUI for the negative rail voltages is inverted.


Figure 6. The LTpowerPlay setup tab for LTC2971-1 Channel 1 and both LTC2971-2 channels.
Figure 6. The LTpowerPlay setup tab for LTC2971-1 Channel 1 and both LTC2971-2 channels.


IMON Examples

Current-driven IMON pins allow the user to choose a resistor value that sets the current sensing gain and maximum voltage. The PSM device measures the voltage difference between the ISENSEP and ISENSEM pins, and sensing gain needs to be set using MFR_IOUT_CAL_GAIN, which is similar to shunt sensing.

The LT3081 LDO regulator has an IMON pin that can used as an example. The LT3081 IMON current is the load current divided by 5000. Suppose a 2 kΩ resistor is used. The IMON pin voltage per amp of load current is:

VIMON = (ILOAD / 5000) × 2000 Ω = 0.4 V/A

Figure 7. Using the LT3081 IMON pin.

If the load current is 2 A, the IMON voltage will be 0.8 V. From this equation, we can see that the IMON voltage can be made more sensitive to load current by simply increasing the IMON resistor value. If we do so, the maximum voltage (full load) may well be >1 V. The PSM device’s ISENSE pins need to accommodate this large excursion. For the LTC2974/LTC2975, this violates the differential voltage, which is limited to ±170 mV. Fortunately, the LTC2971 and LTC2972 have a configuration bit that, when imon_sense is set, places the current sense circuits into a mode that allows sensing single-ended voltages up to 6 V.

Figure 8. MFR_CONFIG imon_sense bit.

The configuration commands must be set according to the hardware we’ve selected. In this example, IOUT_CAL_GAIN should be set to 400 (0.4 V/A). The units are milliohms. The other current-related commands may have default values if there is no temperature coefficient or thermal time constant that may affect the READ_IOUT value. The default values for MFR_IOUT_CAL_GAIN_TC, MFR_IOUT_CAL_GAIN_TAU_ INV, and MFR_IOUT_CAL_GAIN_THETA are set to zero.

The IMON pin of the LT7101 buck regulator is an example of a pin with a voltage-driven output. The output also has an offset voltage. That is, under no load conditions, the IMON pin sits at 0.4 V. At first this may seem problematic since the differential voltage limit is ±170 mV. However, the LTC2972/LTC2971 PSM devices can sense this type of IMON pin and allow a much larger differential signal on the ISENSE pins. Let’s work through a real example.

Figure 9. Using the LT7101 IMON pin.

An LTC2971/LTC2972 can be connected to a LT7101 by connecting the LTC297x ISENSEM pin to ground and connecting the ISENSEP pin to the IMON pin. The command values can be calculated as follows:

Start with the READ_IOUT equation,

Equation 1

Rewrite the equation solving for IOUT_CAL_GAIN:

Equation 2

assuming TCORRECTION = 1.

The LT7101 data sheet provides IMON voltage levels for 1 A and 0.25 A load currents, 1.21 V and 0.603 V respectively. Therefore, the IOUT_CAL_GAIN value is:

Equation 3


Equation 4

The IOUT_CAL_OFFSET is a negative value because we need to reduce the READ_IOUT value. You may find that the calculated register values need to be changed to better correlate the measured load current with the READ_IOUT readings. This involves adding a calibration step. Force a known load current, compare the READ_IOUT value against the expected value, and write the adjusted value to IOUT_CAL_GAIN and/or IOUT_CAL_OFFSET. In general, IMON accuracy on many regulators is not as precise as sense resistors for current measurements, but calibrating the current measurement will greatly improve the accuracy.


A current measurement is only as accurate as the sum of its parts. In most systems, accuracy is important in the mid to high end of the load current range. Some demand good accuracy under light load conditions, which means the signal in the sensing chain is very small. We can break down the accuracy parts into four categories: the sense element, board layout, the amplifier, and the sense measuring circuit.

Before covering accuracy in more detail, the term TUE needs to be defined. The total unadjusted error or TUE is a specification listed in every LTC297x data sheet. There are TUE specs for voltage and current measurements. The TUE is the combined error contributed by the PSM device’s internal reference, gain, and offset errors in the buffers and amplifiers in the path from the VSENSE or ISENSE pins to the digital portion of the chip. The TUE is the worst-case error as a percentage of the READ_IOUT or READ_VOUT reading across all process variation and temperature. This removes the burden of calculating the individual contributors from the chip, such as VREF error and ADC errors. External components—CSAs and associated resistors, shunt resistors, inductor DCR, IMON current—contribute their own error and must be considered in the overall error budget.

As stated earlier, the best accuracy comes from a resistive sense element that is placed in the output path. The RSENSE tolerance is commonly specified as 1%. These are inexpensive and easy to find. Values typically range from 0.5 mΩ to tens of mΩ. To determine the value, one must consider the current range of interest and the accuracy desired at each end of the range. As current flows through the RSENSE, a small voltage is developed across the element, a delta V. It is this signal that needs to be measured and converted via Ohm’s Law into a current. One would like to obtain a large enough signal for good accuracy under light load conditions; however, a large IR drop will occur under heavy loads and could have a negative effect on the performance of the supply. We are assuming that the regulator’s feedback is taken from the load itself, that the sense points are wired across the load. This accounts for any voltage drop in the output path, both high side and GND return path. The RSENSE is located inside the regulator’s feedback loop. Any PCB copper in the layout that contributes to IR loss is included.

The following is an example that covers accuracy. Suppose a power supply is capable of 10 A max, and we need good accuracy down to 100 mA. At full load, it is recommended to keep the IR drop to <50 mV. If the sense resistor is placed within the feedback loop, you can afford to create a larger sense voltage. The downside to a large signal is the power loss in the sense element. This is the basic trade-off in selecting a resistor value. The RSENSE value is calculated from the voltage sense at full load current—for this example, 50 mV/10 A or 5 mΩ. Suppose we choose a 5 mΩ sense resistor that has a tolerance of 1%.

The accuracy achieved will be 1% (resistor tolerance) + 0.3% (TUE from the data sheet) or 1.3%, for LTC2972/LTC2974/LTC2975 input sense voltages >20 mV, which translates to load currents greater than 4 A. For sense levels <20 mV, the TUE is specified as ±60 µV. For a load current of 100 mA, the signal produced is 0.1 A × 0.005 Ω or 500 µV. The error is much larger under light load conditions at ±12% (60 µV/500 µV), which is dominated by the TUE, and the resistor tolerance has little influence over the accuracy. In absolute terms, it amounts to only ±12 mA of error. TUE accounts for internal reference and ADC errors. Choosing a tighter tolerance sense resistor yields much better accuracy.

Table 2. Example ISENSE Accuracy Calculations
Load Current Sense Voltage LTC2972/LTC2974/LTC2975 TUE Resistor Tolerance READ_IOUT Accuracy READ_IOUT Accuracy
100 mA 500 µV 60 µV 1.0% ±13% ±13 mA
100 mA 500 µV 60 µV 0.1% ±12.1% ±12 mA
10 A 50 mV 0.3% 1.0% ±1.3% ±130 mA
10 A 50 mV 0.3% 0.1% ±0.4% ±40 mA

The previous discussion applies to most of the LTC297x family for supply rails <6 V, where the LTC2972/LTC2974/LTC2975 ISENSE pins can be tied directly across the sense element, avoiding the need for an external CSA. If the supply rail is >6 V, a CSA is necessary for most of the PSM manager family. The LTC2971 is the exception and allows the direct connection of ISENSE pins up to ±60 V. The LTC2971’s TUE is 0.6%, double that of the LTC2972/LTC2974/LTC2975; however, the IOUT_SNS pins may be connected directly to sense resistors on supply voltages up to ±60 V.

When using the LTC2977/LTC2979/LTC2980/LTM2987 to measure output current on a supply voltage >6 V, it is possible to use a CSA single-ended output to drive the VSENSE pins. Any channel may be used, and the adc_hires bit should remain at its default setting of 0. The output current measurement is read from the READ_VOUT register and must be translated from volts to amps. It is important to realize that you have larger dynamic range at the VSENSE pin than the 170 mV limitation on the ISENSE pins of the LTC2974/LTC2975. This allows the CSA gain to be set higher to generate a larger sense voltage since the VSENSEP pin can be driven to 6 V. The parameter to be considered is the CSA’s input offset voltage VOS. It is the VOS that is multiplied by the gain that sets the output error of the CSA. If the VOS is 85 µV (LTC6101) and the gain set to 100, the output error could be as much as 8.5 mV. The TUE of the VSENSE pins <1 V is 2.5 mV and >1 V is 0.25%. The CSA gain should be set low in order to minimize the output error, yet large enough to take advantage of the large signal range of the VSENSE pin. The error contributed by the CSA is fixed mV error for a given gain setting. The error in the translated output current value is shown in the last column. Table 8 illustrates an example. The RSENSE is 5 mΩ.

Table 3. LTC2977/LTC2979/LTC2980/LTM2987 Accuracy Calculations for adc_hires = 0 with an External CSA
Load Current Sense Voltage CSA Gain VSENSE LTC297x TUE CSA Error READ_VOUT Error Translated Output Current
100 mA 500 µV 20 10 mV 25% 17% ±42% ±42 mA
100 mA 500 µV 100 50 mV 5% 17% ±22% ±22 mA
10 A 50 mV 20 1 V 0.25% 0.17% ±0.42% ±42 mA
10 A 50 mV 100 5 V 0.25% 0.17% ±0.42% ±42 mA

This illustrates that external CSAs provide reasonably good accuracy for large sense voltages but introduce more error under low sense level conditions.

An accurate current measurement is made possible by creating enough sense voltage or signal. It is the delta V from the sense element that needs to be large enough to overcome any noise and errors that are introduced by the chip and other sources such as layout. Make an estimate of the signal-to-noise ratio (SNR) by first deciding how important light load accuracy is to you. One can calculate an optimum value by considering the lowest sense voltage that produces an acceptable accuracy divided by the lowest value of current in the range to be measured.

To achieve the highest accuracy, it is best to create the largest signal and minimize component/layout errors. That is, use a large RSENSE value and use tight tolerance resistors. You also may consider calibrating the current readback value. Apply a known load current and observe the READ_IOUT value. Adjust the IOUT_CAL_GAIN value to minimize the error in the readback value. Store any changed values to the chip’s EEPROM by issuing a STORE_USER_ALL command.

Shunt Resistor Sensing Accuracy

The upside of the shunt resistor method is that it is more accurate than the inductor DCR method because a shunt resistor value is typically accurate to 1% or better. The temperature coefficient is quite low compared to inductor DCR. However, even though you can purchase very tight tolerance resistors, this may be overridden by layout and solder issues.

The downside to the shunt resistor method is that it is lossy due to IR drop. This generates heat and creates a voltage drop in the output path. As mentioned before, the IR drop is largely mitigated by placing the sense resistor inside the feedback loop, which allows the regulator’s loop to reduce the voltage drop to a negligible level.

The Rcm resistors need to be the same value due to LTC297x differential input current that will cause a differential error voltage. Mismatched Rcm resistors introduce an error solely due to filter component tolerances. Generally, keep these resistor values less than 1 kΩ.

Figure 10. ISENSE pin current. 


Whether you plan to use a discrete sense resistor or inductor DCR to measure current, the layout becomes important under high load conditions. This has the most potential for IR drop in the solder connection and sensing connections can be impactful. It is best to avoid sense connections that are made to a pad that include an IR drop between the sensing points. If you compare the layouts in Figure 11, the example that shows connections to the inside of the pads will have little or no IR drop since those areas of the pad experience little or no current flow. The layout labeled “fair” suffers from IR drops due to the location of the sense point (side of pad), which is partially in the current path.

Figure 11. Layout proposals for shunt resistors.

There are 4-terminal sense resistors available on the market. They offer two terminals for the main current path and two terminals for the Kelvin sense connections. For applications requiring good accuracy for currents greater than 20 A or so, there are 4-terminal metal alloy sense resistors that have values down to 100 µΩ. Some manufacturers specify the higher value resistors with tighter tolerance than the low value resistors, so you have a basic trade-off here—use 1 mΩ at 0.1% vs. 400 µΩ at 0.5%.

Figure 12. A 4-terminal shunt resistor.

Please refer to “Optimize High-Current Sensing Accuracy by Improving Pad Layout of Low-Value Shunt Resistors” for more specifics on accuracy when laying out sense resistors.

Using the LTC2977/LTC2979/LTC2980/LTM2987 to Measure Output Current

The LTC2977/LTC2979/LTC2980/LTM2987 devices have a limited ability to measure current. They can be configured to measure current on odd-numbered channels: channels 1, 3, 5, and 7. To configure for current measurement, the channel must be set to hi-res mode (MFR_CONFIG_LTC2977, bit9). This allows the VSENSEM pin to be tied to a common-mode voltage up to 6 V. The VSENSEP and VSENSEM pins may be connected across an inductor (DCR) or resistive sense (RSNS) element.

Figure 13. MFR_CONFIG adc_hires bit.

Even-numbered channels do not support this feature, and the VSENSEM pin (channels 0, 2, 4, and 6) must remain within ±100 mV of GND.

In this mode, the only function that this channel provides is telemetry readback of the current. Setting the adc_hires bit disables the VOUT_EN pin and disables all fault responses. Essentially it forces the channel to the “off” state as far as the LTC2977 is concerned, and it only reads back the voltage in mV across the sense element.

The LTC2977/LTC2979/LTC2980/LTM2987 devices do not have a convenient READ_IOUT register or a register to store the DCR or RSNS value. Instead, you use the READ_VOUT command to get raw differential voltage readings. The system host needs to calculate the current based on this reading divided by the sense resistor value. Note that these values are given in L11 format, not L16 format. The units are millivolts. If a system host or FPGA/CPU is used to read current, it must perform the math to convert a millivolt value to a value in milliamps or amps. The application note AN135 covers example code to convert L11 hex to a floating-point value.

Figure 14. VSENSE pins used for differential current sensing.

LTpowerPlay has a feature that conveniently translates this mV reading to a current readback value in mA. There is a scale factor that can be used to generate an adjusted value in the READ_VOUT register. This is accessed by clicking the Setup tab in the Config window.

The value entered into the VOUT Display Scaling box should be equal to 1/RSNS. If an external CSA is used, one needs to set the scale factor to 1/(GAINCSA/RSNS). There is a Display Units field that can be changed from volts to amps by replacing V with A. These changes allow the readout to display a computed current that is consistent with the actual current based on the sense resistance in the circuit. For example, if the RSNS is 10 mΩ (0.01 Ω), the VOUT Display Scaling is 100. The READ_VOUT register will now report a value in mA that reflects 100 mA for every mV that is measured by the chip. In this example, a 592 mA load was applied to a supply rail with RSNS of 10 mΩ, and the chip was measuring 5.92 mV. Note: the scaling/offset values under Setup are not saved to the device’s NVM, but they are saved to the .proj file.

Figure 15. VOUT Display Scaling in the Setup tab.

Figure 16. READ_VOUT telemetry shows scaled value and units in mA.
Figure 16. READ_VOUT telemetry shows scaled value and units in mA.

Since the differential voltage (VSENSEPn – VSENSEMn) is limited to ±170 mV, the sense element must be chosen so that the IR drop does not exceed this limit. The common-mode voltage of these pins is allowed up to 6 V. For example, if the current is expected to be in the 3 A range, a sense resistor of 50 mΩ provides 150 mV of voltage to the ADC and allows excursions to 3.4 A. This is great for the accuracy because you have a large signal, but 150 mV is a fairly large IR drop in the output path. This is a basic trade-off to be made when deciding between current measurement accuracy and IR drop in the output. One should always close the feedback loop at the load. This allows the regulator/servo to adjust to the proper output voltage. Refer to the LTC2977 data sheet for further details.

As an example, one of the odd-numbered channels has been allocated to measure output current. Channel 7 measures the IOUT of Channel 6, a 3.0 V supply.

Figure 17. READ_VOUT translated to mA (Channel 7).

When odd-numbered channels are configured to ADC hi-res mode, the VOUT_EN pin cannot be used and the supervisor function is disabled; hence, there is no possibility to quickly detect an overcurrent condition. However, it is possible to supervise current on any channel (in ADC low-res mode) if you use a CSA and output a single-ended signal to the VSENSEP pin. This dedicates a voltage channel to supervising the output of a CSA. The propagation delay will be determined by the sum of the delay through the CSA, the delay introduced by the PSM device, and any delays that passive components (that is, RC) may introduce. The PSM delay depends on the configuration, whether the fault response is set to immediate off or deglitched off and delay count setting.

OC/UC Fault Supervision

Protecting loads from an overcurrent condition may be desirable on rails that power high value loads. Output current supervisors are built into the LTC2974/LTC2975. The dedicated hardware allows the user to configure a channel to shut down if the supervisor detects an overcurrent or undercurrent condition. These devices have both voltage and current supervision, which means that the channel will be shut down if the output voltage or output current goes outside the user-defined limits. The voltage supervisor and current supervisor are combined into the VOUT_EN logic internally. Table 1 in Part 1 of this article summarizes this feature for all PSM managers.

Figure 18. IOUT OC/UC fault/warn limits.

The fault supervisors are sampled comparators that have a user-adjustable threshold. The comparator is sampled every 12.1 µs and allows the user to deglitch output noise based on user-defined settings. The supervisor will trip only when the fault condition has been present for a consecutive number of times, or what is called the delay_count. This is essentially a time-based filter. The delay_count can be set up to 7, which provides an 84 µs deglitch response to an OC event. This allows a narrow glitch to go undetected while declaring a fault for wider pulses. Any RC filters that are inserted between the load and manager add an additional delay. The filter reduces the amplitude of any glitches but adds a delay to the response time of the supervisor. The data sheet suggests a time constant that is a tenth of the switching frequency yet not so long that the delay through the filter is much longer than the supervisor response time. For quiet supplies that need a fast OC response, one may choose 200 Ω/10 nF or 2 µs delay. For noisy supplies, an RC of 1 kΩ/0.1 µF yields a delay of 100 µs. While this may seem like a lot of delay, it is much faster than an ADC reading, which could be ~100 ms.

Undercurrent supervision will detect a low current or reverse current condition in the output. A low current condition is typical of light loads, and a UC fault might not be desirable. However, the measured output current value includes negative values. While undercurrent supervision is not typically used, it may be used to detect reverse current conditions by setting IOUT_UC_FAULT_LIMIT to a negative value. To disable UC fault detection, set the IOUT_UC_FAULT_RESPONSE to ignore and set the IOUT_UC_FAULT_LIMIT to a large negative value. The default setting is –1 A.

While the LTC2971/LTC2972 do not have OC fault detection, the devices have an OC warning feature that will pull ALERTB low based on the ADC output current measurement. Warnings will pull ALERTB low and update the STATUS_IOUT register. The ADC-based reading will result in a slower response and is meant to be used as status indicators via a hardware pin and PMBus® register. It is possible to tie ALERTB to a CONTROL pin to shut down the channel. Or a microcontroller can respond to ALERTB by declaring an interrupt and drive a CONTROL pin or issue a PMBus command to shut off the channel. The downside to tying ALERTB to CONTROL is that any warning or fault will shut down the channel.

When using TSENSE pins on the LTC2971/LTC2972/LTC2974/LTC2975 for compensating inductor DCR, the temperature may be used to shut down channels, which is another form of supervision. The overtemperature fault, warning limits, and fault response may be adjusted to suit the application on a channel-by-channel basis. That is, it can be used to shut down an individual channel and is not a global (entire chip) setting.

Current Readback L11 Format

The hex value being read back from the PSM device is formatted as L11. Whether you are reading the READ_VOUT register on an LTC2977 (ADC hi-res mode) or reading the READ_IOUT register on an LTC2975/LTC2974/LTC2972/LTC2971, the L11 format is a signed value that has a 5-bit exponent and 11-bit mantissa.

The L11 format supports polarity of the current measurement. Because it is a signed format, this allows the READ_IIN and READ_IOUT registers to provide this information to the system host about the direction of the current flow. The LTC2974/LTC2975 have undercurrent thresholds for the output current. A negative value could be useful to shut down a channel that sinks too much current, a reverse current.

There is a particular point to make about the L11 format, and that is the granularity. The LTC2971/LTC2972/LTC2974/LTC2975 data sheets show a table that lists the granularity of the READ_IOUT value across a wide range of currents. There is an inherent granularity that is due to the L11 hex format and is not the device’s ADC or any other hardware limitations. The table also lists MFR_READ_IOUT granularity for comparison. The MFR_READ_IOUT value is a custom format and provides improved resolution with 2.5 mA granularity above 2 A. It is limited to ±81.92 A. If the board’s host CPU/FPGA need to convert L11 to floating point, it can issue reads to either register. The READ_IOUT register has better resolution for currents below 2 A and does not have the 81.92 A limit, but the MFR_READ_IOUT values will resolve to the nearest 2.5 mA value.

Programming PSM Devices and LTpowerPlay

As with the entire family of LTC297x devices, programming the PSM device and successfully powering your hardware for the first time can be very rewarding. The use of LTpowerPlay is your easiest path. LTpowerPlay is a free download and runs on Windows®. The software has a built-in programming utility that takes the configuration data you have saved and writes it to the device’s EEPROM. After power cycling, the chip automatically loads its RAM from the EEPROM and is ready to run autonomously.

Whether you’re new to LTpowerPlay or already a power user, learn how to configure, design, evaluate, diagnose, and debug using the LTpowerPlay Software-Based Power Supply Configuration and Debug Tool. If you do not plan to use LTpowerPlay for programming or to provide telemetry, downloading Linduino C code examples is an alternative solution. The code examples are provided in the LTSketchbook zip file.

Figure 19. LTpowerPlay is a powerful, Windows-based development environment supporting Analog Devices’ digital power system management (PSM) products.

Checklist to create .proj file:

Ensure each PSM device has a unique address on PMBus (hardware strapping).

  • Set IOUT_CAL_GAIN on each output channel.

    • This is the RSENSE, inductor DCR, or calculated IMON value.
  • Set IIN_CAL_GAIN on each device that measures input supply current (LTC2971/LTC2972/LTC2975).
  • Set temperature-related configuration (for example, MFR_IOUT_CAL_GAIN_TC, MFR_IOUT_CAL_GAIN_TAU_INV, MFR_IOUT_CAL_GAIN_THETA).
  • Tip: Use the Configuration Wizard in LTpowerPlay to ease file generation.


ADI’s DPSM LTC297x devices are mixed-signal PMBus ICs that can measure and supervise power supply currents. Various sensing methods have been presented—resistor shunt, inductor DCR, and IMON are among them. The current measurement capabilities add to the feature set of the family by providing another level of protection in the form of OC/UC fault supervision. These devices bring to any power supply the ability to monitor, supervise, and measure voltages and currents. These features are very desirable for supply rails of high value. The LTC297x offers the ability to configure the device’s PMBus registers, which adds flexibility to make changes to your board design at any point in the design phase, even after the board is deployed in the field.


Michael Peters

Michael Peters

Michael Peters is a senior applications engineer for power system management devices at Analog Devices. He has more than 30 years of experience in analog and digital circuits, including working on memory devices at previous companies. He received his B.S.E.E. degree from the University of Michigan, Ann Arbor, Michigan.