
The communications hardware in BLUEstreak™ meets the requirements of the SMbus standard.
SMbus is essentially an I²C implementation in which certain parameters have been defined to ensure interoperability between different vendors’ products.
Examples are bus timing and voltage level thresholds, which were not so clearly defined in early I²C implementations such as that used in UNIPOWER’s PowerCassette™ Front-Ends. Bus timeouts were also added so as to eliminate the bus ‘hanging’ when the addressed hardware does not respond within a reasonable time.
The SMbus specification also includes a set of defined command protocols; again, to standardise on the way in which the hardware should respond when sent a specific string.
UNIPOWER’s BLUEstreak implements the PMbus. This is a command structure with defined responses that has been developed by the power supply community along with a number of users as a kind of ‘superset’ that will yield ‘known’ results when implemented fully.
PMbus uses a specific set of SMbus commands that has been defined for use in power supplies, in particular for distributed power applications. It's sort of a superset of commands.
At the lowest level I²C hardware is interrogated by directly addressing a register and reading back its content; but there is no predefined structure to this data, so it then has to be interpreted in software to create a meaningful result.
The SMbus structures they way in which the hardware is interrogated in the form of a series of standardized command types (protocols).
For more information about SMbus we recommend that the reader obtains the “System Management Bus Specification” which is available in PDF format from
www.smbus.org/specs/smbus110.pdf. In particular we draw attention to pages 21-26, where the command protocol is detailed, and to pages 37 and 38, which describe the main differences between basic I²C and SMbus.
With PMbus a set of commands specific to power supplies has been defined along with formatting of the returned data string.
With the exception of a small number of manufacturer specific commands PMbus need only be coded for once, regardless of which hardware is involved.
For more information about PMbus we recommend the reader obtains the current published PMbus specification revision 1.1 (as utilised in BLUEstreak) from
www.pmbus.org/specs.html. In particular, page 21 section 7.1 shows the command format for common output readings such as voltage and current while page 75 shows the structure of two typical status bytes.
In summary:
I²C = 2 wires, clock data, address + data
SMbus = 2 wires, clock data, address + command code + low data byte + high data byte + timeouts
PMbus = SMbus + PSU commands with defined data structure.
Customers who are familiar with basic I²C as well as the SMbus command protocols can communicate with BLUEstreak provided they are using SMbus compliant hardware and can implement SMbus commands in their management system, for example in an aTCA implementation.
This will allow them to obtain readings of voltage, current, temperature and fan speed (as examples) as well as obtaining inventory information from the on-board EEPROM.
They can also send commands to the power supply to change parameters and control its operation.
It should be noted that a basic I²C management system may be able to communicate with the BLUEstreak. This is the case with UNIPOWER’s own DSC1000 power system controller. UNIPOWER cannot make any guarantees that non-SMbus compliant management systems will work.