Managing power supply sequencing and supervision, part 2

Nathan Enger

February 13, 2017

Nathan EngerFebruary 13, 2017

Read Part 1 here.

The LTpowerPlay GUI

Overview

LTpowerPlay is the best way to interface with the LTC2937 over the I2C bus. It provides an intuitive, flexible, and complete view of the configuration and status registers inside of many different Linear Technology parts, including the LTC2937, and provides help documentation, configuration files, and support for the part on your MS Windows PC. Figure 7 shows the LTpowerPlay tool connected to the device.

Click here to enlarge

 

Figure 7: LTpowerPlay

 

Use LTpowerPlay to:

•   Program all of the registers in the LTC2937.

•   Save and restore register settings in a project file, preserving configuration settings.

•   Program the non-volatile EEPROM memory of the device.

•   Read status information and graphically visualize what the sequencer is doing in real time.

•   Debug faults and single-step the sequencer through its up or down sequence.

•   Read and write configuration registers.                                                                    

•   Get help from online documents, videos, or a live support person.

The LTpowerPlay GUI organizes the configuration registers in groups by channel and by function (timing, voltage, etc.) Each register in the Config window pane is selectable and editable. Clicking the PCRAM button in the button bar at the top writes changes to the LTC2937 RAM. Status registers are displayed in real time in the telemetry pane. A condensed form of status information is also available in the Chip Dashboard in the upper right corner.

More information, including FAQs, documentation, and videos, are available in the Help menu.

More Circuit Enhancements

No two designs are alike, and each one calls for some customization of the basic arrangement. There are tricks that adjust the LTC2937 for a wide variety of environments with a few simple adjustments. Following are some examples.

I2C/SMBus Addresses

There are two different ways to express an I2C bus address. The address is expressed in one 8-bit byte, sent on the serial bus most-significant bit first, but the LSB in the address byte is always the read/write bit. This means that adjacent 8-bit addresses (odd/even) are the same address: even number for WRITE, and odd number for READ. For this reason the least-significant bit is often neglected in documentation, and only the most-significant 7-bits are given. This is called a 7-bit address. For example:

 

 

All addresses in this document are given in 7-bit format.

The LTC2937 can answer to a programmable address on the I2C bus. If there are other devices on the bus, it is important to consider which addresses the LTC2937 uses. There are three different kinds of addresses:


 


The ASEL0,1,2 pins set the slave I2C address for each LTC2937. The address can be selected from one of 27 possibilities by pulling each pin to VDD or GND, or by leaving it floating. A good approach for flexibility is to place both a pull-up and a pull-down resistor on each ASELn pin, then only populate these as necessary to set the address.

I2C Bus Buffers

Often there are multiple I2C bus voltage levels in a system. If an existing I2C bus master operates on a 2.5V or 1.8V domain, it should not be connected to the 3.3V I2C bus levels at the LTC2937 pins. The part may be damaged, or may not accept the same logic levels. Additionally, there are cases where a bus segment may be un-powered, pulling down the SCL and SDA lines, while the remaining bus segments must continue to operate. The solution is a bus buffer such as the LTC4313 (Figure 8).

 

Figure 8: LTC4313 I2C Bus Buffer

 

This allows the scenario where a DC1613 dongle can communicate with the LTC2937 while the microprocessor or FPGA that normally serves as bus master is unpowered.

Better On/Off Control

We have already seen a poor-man’s solution to sequencing control using one of the LTC2937’s supervisor channels to monitor the 12V input voltage. This is not an ideal solution because it does not permit a proper down sequence. It simply detects a voltage fault and shuts down everything all at once. A more robust approach uses the LTC2955 to drive the LTC2937 ON pin high or low in response to defined 12V voltage levels. This solution has the added advantage of a pushbutton for manual control. Also notice in Figure 9 that VPWR has a 10µF hold-up capacitor to power the LTC2937 while the sequencer is sequencing down. The diode prevents the hold-up capacitor from bleeding charge into the falling 12V supply.

 

Figure 9: LTC2955 On/Off Circuit

This ON/OFF circuit can also be used with the dongle power circuit in Figure 4. It will try to hold the ON pin low as long as the 12V power supply is low.

More Channels, More LTC2937s

A single LTC2937 can sequence and supervise six channels. In a system with more than six supplies, adding more devices simplifies sequencing because the sequencers communicate timing, sequence, and fault information and respond together.

 

Figure 10: Connecting Multiple LTC2937s Together in a System

Figure 10 shows the connections between LTC2937s. The following rules should be applied.

•   Connect SHARE_CLK to all LTC2937s in the system. One 3.3kΩ to one VDD is sufficient. All of the LTC2937s will take timing cues from the shared clock line. Do not connect SHARE_CLK to any other points in the system.

•   Connect SPCLK to all LTC2937s. No pull-up is needed. All LTC2937s will take sequencing cues from the shared line. Do not connect SPCLK to any other points in the system.

•   Connect FAULTB to all LTC2937s in the system. No pull-up is necessary, since each LTC2937 pulls up to its own VDD. Each device can be programmed to respond to the FAULTB line going low.

•   Connect all ON pins to all LTC2937s in the system. No pull-up is necessary, since each device pulls up to its own VDD. Connecting them together helps maintain consistent state across multiple sequencers. Control this pin to command up and down sequencing.

•   Each LTC2937 in the system requires a unique I2C slave address for communicating on the bus. Connect ASEL1,2,3 lines to GND or VDD (local to the chip), or leave floating to select unique addresses. Note that every LTC2937 responds to the global 7-bit address 0x36, and to the SMBus ARA 0x0C, regardless of ASEL setting.

Continue to page two on Embedded's sister site, EDN: "A Step-by-Step guide to power supply sequencing and supervision, part 2."

 

Loading comments...