ADM1028
–8– REV. PrD
Preliminary Technical Data
PRELIMINARY
TECHNICAL
DATA
FUNCTIONAL DESCRIPTION
GENERAL DESCRIPTION
The ADM1028 is a low-cost temperature monitor and
fan controller for microprocessor-based systems. The
temperature of a remote sensor diode may be measured,
allowing monitoring of processor temperature in a single-
processor system. An on-chip temperature sensor allows
monitoring of system ambient temperature.
Measured values can be read out via the serial System
Management Bus, and values for limit comparisons can be
programmed in over the same serial bus.
The ADM1028 also contains a DAC for fan speed con-
trol. An automatic hardware temperature trip point is
provided for fault tolerant fan control and the fan will be
driven to full speed if this is exceeded. Two interrupt
outputs are provided, which will be asserted if the software
or hardware limits are exceeded.
Finally, the chip has remote reset and shutdown
capabilities.
INTERNAL REGISTERS OF THE ADM1028
A brief description of the ADM1028's principal internal
registers is given below. More detailed information on the
function of each register is given in Tables 4 to 10.
Configuration Register: Provides control and configuration.
Address Pointer Register: This register contains the address
that selects one of the other internal registers. When writing to
the ADM1028, the first byte of data is always a register ad-
dress, which is written to the Address Pointer Register.
Interrupt (INT) Status Register: This register provides
status of each Interrupt event.
Interrupt (INT) Mask Register: Allows masking of indi-
vidual interrupt sources.
Value and Limit Registers: The results of temperature
measurements are stored in these registers, along with
their limit values.
Analog Output Register: The code controlling the analog
output DAC is stored in this register.
Alert Status Register: Indicates the status of the THERM
signal and GPI pin.
Remote Function Register: This register allows control of
the R_RST and R_OFF outputs.
SERIAL BUS INTERFACE
Control of the ADM1028 is carried out via the serial bus.
The ADM1028 is connected to this bus as a slave device,
under the control of a master device, e.g. the 810 chipset.
The ADM1028 has a 7-bit serial bus address. When the
device is powered up, it will do so with a default serial bus
address. The SMBus address for the ADM1028 is
0101110 binary.
The serial bus protocol operates as follows:
1. The master initiates data transfer by establishing a
START condition, defined as a high to low transition
on the serial data line SDA whilst the serial clock line
SCL remains high. This indicates that an address/data
stream will follow. All slave peripherals connected to
the serial bus respond to the START condition, and
shift in the next 8 bits, consisting of a 7-bit address
(MSB first) plus a R/W bit, which determines the direc-
tion of the data transfer, i.e. whether data will be writ-
ten to or read from the slave device.
The peripheral whose address corresponds to the trans-
mitted address responds by pulling the data line low
during the low period before the ninth clock pulse,
known as the Acknowledge Bit. All other devices on the
bus now remain idle whilst the selected device waits for
data to be read from or written to it. If the R/W bit is a
0 then the master will write to the slave device. If the
R/W bit is a 1 the master will read from the slave de-
vice.
2. Data is sent over the serial bus in sequences of 9 clock
pulses, 8 bits of data followed by an Acknowledge Bit
from the slave device.Transitions on the data line must
occur during the low period of the clock signal and
remain stable during the high period, as a low to high
transition when the clock is high may be interpreted as
a STOP signal. The number of data bytes that can be
transmitted over the serial bus in a single READ or
WRITE operation is limited only by what the master
and slave devices can handle.
3. When all data bytes have been read or written, stop
conditions are established. In WRITE mode, the master
will pull the data line high during the 10th clock pulse
to assert a STOP condition. In READ mode, the mas-
ter device will override the acknowledge bit by pulling
the data line high during the low period before the 9th
clock pulse. This is known as No Acknowledge. The
master will then take the data line low during the low
period before the 10th clock pulse, then high during the
10th clock pulse to assert a STOP condition.
Any number of bytes of data may be transferred over the
serial bus in one operation, but it is not possible to mix
read and write in one operation, because the type of opera-
tion is determined at the beginning and cannot subse-
quently be changed without starting a new operation.
In the case of the ADM1028, write operations contain
either one or two bytes, and read operations contain one
byte, and perform the following functions:
To write data to one of the device data registers or read
data from it, the Address Pointer Register must be set so
that the correct data register is addressed, then data can be
written into that register or read from it. The first byte of
a write operation always contains an address that is stored
in the Address Pointer Register. If data is to be written to
the device, then the write operation contains a second data
byte that is written to the register selected by the address
pointer register.
This is illustrated in figure 11a. The device address is sent
over the bus followed by R/W set to 0. This is followed by
two data bytes.The first data byte is the address of the
internal data register to be written to, which is stored in
the Address Pointer Register. The second data byte is the
data to be written to the internal data register.
When reading data from a register there is only one
possibility: