SMBus Controls CPU Voltage Regulators without VID Pins

SMBus Controls CPU Voltage Regulators without VID Pins

Author's Contact Information


Mark Gurries


The LTC1699 allows a variety of non-VID equipped voltage regulators to be programmed to VID voltages via the SMBus. Many microprocessors require core voltage changes when switching from one clock frequency to another. These voltages are specified in 5-bit VID (voltage identification) tables. The LTC1699 is a precision, digitally programmed resistor divider that provides output voltage feedback to PWM controllers that have a reference voltage of 0.8V, such as the LTC1702, LTC1628, LTC1735 and the new LTC1778. It uses the SMBus to determine the two output voltages that can be selected by the SEL pin. A Power Good signal is provided to tell the system that CPU voltage is in regulation. An enhanced version of the part, the LTC1699EGN, expands the power sequencing to coordinate multiple DC/DC converters that manage other CPU system voltages such as the I/O and clock supplies. There are three versions of the LTC1699 to support three unique voltage tables for different Intel processors based on their 5-bit VID codes. The LTC1699-80 covers mobile processors, whereas desktop standards are covered by LTC1699-81 for VRM8.4 and LTC1699-82 for VRM9.0. Selection of the LTC1699’s voltage is accomplished in one of two ways. The first is through an input signal called the select (SEL) line. The other is through a 2-wire serial interface called the SMBus. Programming the preset voltages can only be accomplished over a 2-wire serial bus called the SMBus. Either of the two preset voltages may be selected either via the SMBus or the LTC1699’s select (SEL) pin.

Why the SMBus?

SMBus stands for System Management Bus. The SMBus was developed as a standard low power 2-wire serial interface to consolidate many different but important system support, control and monitoring functions that have nothing to do with the CPU directly. Although it was developed for portable computers with intelligent rechargeable batteries, most portable computers today use the SMBus for more than just battery control. It has evolved as the standard method of power flow control, system temperature monitoring and cooling control. It now supported by popular operating systems and specified as part of current PC design standards. Controlling the CPU voltage with SMBus follows this direction of system design and is a natural next step in eliminating more proprietary control interfaces.

Reliable Programming is the Key

The SMBus does have some problems. With the SMBus version 1.0 standard, there is no protocol error checking during communication process. Data corruption can occur and the incorrect VID voltage value could be programmed into the LTC1699. To address those issues, SMBus standard version 1.1 introduced an optional error-check capability. However, implementing the error checking protocol results in increased complexity of both the communication software and any hardware device on the bus wishing to use it. ICs supporting error checking would be more expensive, since more complex logic circuitry is needed. Thus far, very few systems have implemented the error checking protocol since most functions under SMBus control are error tolerant or the system easily recovers from such errors.

Unfortunately critical components such as the CPU are unforgiving and cannot tolerate errors in setup and operation. To solve this problem, Linear Technology has developed a special protocol that uses standard SMBus 1.0 commands that do not involve error checking.


The LTC1699 eliminates errors in many ways. First, the part allows the host to write and read the preprogrammed voltage values as often as needed to verify the value. Second, the ability to activate the programmed value requires simply comparing two duplicate SMBus “ON” or “OFF” commands sent on the bus one right after the other to see if every bit is identical. If any bit is out of place, the command is rejected. Next, the LTC1699 has special lockout procedures such as ignoring “ON” commands if the registers have not been set up. When two valid “ON” command sequences are received, the VID registers are locked out to prevent changes while the power supplies are operating. Finally, the LTC1699 implements the new SMBus V1.1 logic levels for improved signaling integrity. Together, these protection mechanisms offer robust and safe control of the CPU without chance of error while using the popular SMBus.

Desktop/Portable VID DC/DC converter

Figure 1 shows an LTC1699 controlling the core voltage of a microprocessor powered by an LTC1778. Because all functions of the LTC1699 are integrated, no additional passive components are required to provide full SMBus control of the LTC1778.

Figure 1. Typical application: an LTC1699 controls the output voltage of an LTC1778 step-down regulator circuit.


The LTC1699 is an easy, fully integrated solution for applications where control of CPU power via the SMBus is desired. It provides SMBus control of standard voltage regulator ICs wherever output voltages from the VID tables are needed.